Create identityProvider (deprecated)

Namespace: microsoft.graph

Caution

This identity provider API is deprecated and will stop returning data after March, 2023. Please use the new identity provider API.

Create a new identityProvider by specifying display name, identityProvider type, client ID, and client secret.

This API is available in the following national cloud deployments.

Global service US Government L4 US Government L5 (DOD) China operated by 21Vianet

Permissions

Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.

Permission type Least privileged permissions Higher privileged permissions
Delegated (work or school account) IdentityProvider.ReadWrite.All Not available.
Delegated (personal Microsoft account) Not supported. Not supported.
Application IdentityProvider.ReadWrite.All Not available.

In delegated scenarios with work or school accounts, the signed-in user must be assigned a supported Microsoft Entra role or a custom role with a supported role permission. External Identity Provider Administrator is the least privileged role supported for this operation.

HTTP request

POST /identityProviders

Request headers

Name Description
Authorization Bearer {token}. Required. Learn more about authentication and authorization.
Content-Type application/json. Required.

Request body

In the request body, provide a JSON representation of identityProvider object. All the properties listed in the following table are required.

Property Type Description
clientId String The client ID for the application. This is the client ID obtained when registering the application with the identity provider.
clientSecret String The client secret for the application. This is the client secret obtained when registering the application with the identity provider.
name String The display name of the identity provider.
type String The identity provider type. It must be one of the following values for B2C Scenarios:
  • Microsoft
  • Google
  • Amazon
  • LinkedIn
  • Facebook
  • GitHub
  • Twitter
  • Weibo
  • QQ
  • WeChat
For B2B it can only be Google

Response

If successful, this method returns 201 Created response code and identityProvider object in the response body. If unsuccessful, a 4xx error will be returned with specific details.

Example

The following example creates an identityProvider.

Request
POST https://graph.microsoft.com/v1.0/identityProviders
Content-type: application/json

{
    "name": "Login with Amazon",
    "type": "Amazon",
    "clientId": "56433757-cadd-4135-8431-2c9e3fd68ae8",
    "clientSecret": "000000000000"
}
Response
HTTP/1.1 201 Created
Content-type: application/json

{
    "id": "Amazon-OAUTH",
    "name": "Login with Amazon",
    "type": "Amazon",
    "clientId": "56433757-cadd-4135-8431-2c9e3fd68ae8",
    "clientSecret": "*****"
}