Skip to main content
POST
/
identity-providers
TypeScript
import { MyOrganizationClient } from "github.com/auth0/myorganization-js";

async function main() {
    const client = new MyOrganizationClient({
        token: "<token>",
    });
    await client.organization.identityProviders.create({
        name: "oidcIdp",
        strategy: "oidc",
        domains: [
            "mydomain.com",
        ],
        displayName: "OIDC IdP",
        showAsButton: true,
        assignMembershipOnLogin: false,
        isEnabled: true,
        options: {},
    });
}
main();
{
  "id": "con_zW1UHutvkVWSWdCC",
  "name": "oidcIdp",
  "display_name": "OIDC IdP",
  "strategy": "oidc",
  "show_as_button": true,
  "assign_membership_on_login": false,
  "access_level": "full",
  "domains": [
    "mydomain.com"
  ],
  "is_enabled": true,
  "options": {
    "type": "front_channel",
    "client_id": "client_a8f3b2e7-5d1c-4f9a-8b0d-2e1c3a5b6f7did",
    "discovery_url": "https://{yourDomain}/.well-known/openid-configuration"
  },
  "attributes": [
    {
      "sso_field": [
        "userName"
      ],
      "user_attribute": "preferred_username",
      "description": "Preferred Username",
      "label": "Preferred username",
      "is_required": true,
      "is_extra": false,
      "is_missing": false
    },
    {
      "sso_field": [
        "externalId"
      ],
      "user_attribute": "external_id",
      "is_required": true,
      "is_extra": true,
      "is_missing": false
    }
  ]
}

Release Lifecycle

Beta

Scopes

Scopes define permissions and access levels for API requests and authentication tokens.
create:my_org:identity_providers

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Body

application/json

Identity provider specific options.

name
string
required

The name of the identity provider

Required string length: 1 - 128
strategy
enum<string>
required

The type of the identity provider

Available options:
adfs,
google-apps,
oidc,
okta,
pingfederate,
samlp,
waad
Allowed value: "adfs"
options
adfs_server · object
required

Identity provider specific options.

domains
string[]

List of domains for Home Realm Discovery (HRD)

display_name
string

Identity provider name used on the login screen.

Required string length: 1 - 128
show_as_button
boolean

Enables showing a button for the connection in the login page (new experience only). If false, it will be usable only by Home Realm Discovery (HRD).

assign_membership_on_login
boolean

If true, the user will be made a member of the organization upon login.

is_enabled
boolean

True if the identity provider is enabled for the organization.

Response

Identity provider successfully created.

Identity provider specific options.

strategy
enum<string>
required

The type of the identity provider

Available options:
adfs,
google-apps,
oidc,
okta,
pingfederate,
samlp,
waad
Allowed value: "adfs"
options
adfs_server · object
required

Identity provider specific options.

id
string

Identity provider identifier.

Pattern: ^con_[A-Za-z0-9]{16}$
name
string | null

The name of the identity provider

Maximum string length: 128
domains
string[]

List of domains for Home Realm Discovery (HRD)

display_name
string

Identity provider name used on the login screen.

Required string length: 1 - 128
show_as_button
boolean

Enables showing a button for the connection in the login page (new experience only). If false, it will be usable only by Home Realm Discovery (HRD).

assign_membership_on_login
boolean

If true, the user will be made a member of the organization upon login.

is_enabled
boolean

True if the identity provider is enabled for the organization.

access_level
enum<string>
Available options:
none,
readonly,
limited,
full