| title | Create customAuthenticationExtension |
|---|---|
| description | Create a new customAuthenticationExtension object. |
| author | soneff |
| ms.localizationpriority | medium |
| ms.subservice | entra-sign-in |
| doc_type | apiPageType |
| ms.date | 10/17/2024 |
Namespace: microsoft.graph
Create a new customAuthenticationExtension object. The following derived types are currently supported.
- onTokenIssuanceStartCustomExtension resource type.
[!INCLUDE national-cloud-support]
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.
[!INCLUDE permissions-table]
[!INCLUDE rbac-custom-auth-ext-apis-write]
POST /identity/customAuthenticationExtensions| Name | Description |
|---|---|
| Authorization | Bearer {token}. Required. Learn more about authentication and authorization. |
| Content-Type | application/json. Required. |
In the request body, supply a JSON representation of the customAuthenticationExtension object.
You can specify the following properties when creating a customAuthenticationExtension. You must specify the @odata.type property with a value of the customAuthenticationExtension object type that you want to create. For example, to create an onTokenIssuanceStartCustomExtension object, set @odata.type to #microsoft.graph.onTokenIssuanceStartCustomExtension.
| Property | Type | Description |
|---|---|---|
| authenticationConfiguration | customExtensionAuthenticationConfiguration | The authentication configuration for this custom extension. Required. |
| claimsForTokenConfiguration | onTokenIssuanceStartReturnClaim collection | Collection of claims to be returned by the API called by this custom authentication extension. Can be set for onTokenIssuanceStartCustomExtension object only. Used to populate claims mapping experience in Microsoft Entra admin center. Optional. |
| clientConfiguration | customExtensionClientConfiguration | The connection settings for the custom extension. Optional. |
| description | String | Description for the custom extension. Optional. |
| displayName | String | Display name for the custom extension. Required. |
| endpointConfiguration | customExtensionEndpointConfiguration | Configuration for the API endpoint that the custom extension will call. Required. |
If successful, this method returns a 201 Created response code and a customAuthenticationExtension object in the response body.
The following example shows a request.
POST https://graph.microsoft.com/v1.0/identity/customAuthenticationExtensions
Content-Type: application/json
Content-length: 468
{
"@odata.type": "#microsoft.graph.onTokenIssuanceStartCustomExtension",
"displayName": "onTokenIssuanceStartCustomExtension",
"description": "Fetch additional claims from custom user store",
"endpointConfiguration": {
"@odata.type": "#microsoft.graph.httpRequestEndpoint",
"targetUrl": "https://authenticationeventsAPI.contoso.com"
},
"authenticationConfiguration": {
"@odata.type": "#microsoft.graph.azureAdTokenAuthentication",
"resourceId": "api://authenticationeventsAPI.contoso.com/a13d0fc1-04ab-4ede-b215-63de0174cbb4"
},
"clientConfiguration": {
"timeoutInMilliseconds": 2000,
"maximumRetries": 1
},
"claimsForTokenConfiguration": [
{
"claimIdInApiResponse": "DateOfBirth"
},
{
"claimIdInApiResponse": "CustomRoles"
}
]
}[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
[!INCLUDE sample-code] [!INCLUDE sdk-documentation]
The following example shows the response.
Note: The response object shown here might be shortened for readability.
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#identity/customAuthenticationExtensions/$entity",
"@odata.type": "#microsoft.graph.onTokenIssuanceStartCustomExtension",
"id": "6fc5012e-7665-43d6-9708-4370863f4e6e",
"displayName": "onTokenIssuanceStartCustomExtension",
"description": "Fetch additional claims from custom user store",
"clientConfiguration": null,
"authenticationConfiguration": {
"@odata.type": "#microsoft.graph.azureAdTokenAuthentication",
"resourceId": "api://authenticationeventsAPI.contoso.com/a13d0fc1-04ab-4ede-b215-63de0174cbb4"
},
"clientConfiguration": {
"timeoutInMilliseconds": 2000,
"maximumRetries": 1
},
"endpointConfiguration": {
"@odata.type": "#microsoft.graph.httpRequestEndpoint",
"targetUrl": "https://authenticationeventsAPI.contoso.com"
},
"claimsForTokenConfiguration": [
{
"claimIdInApiResponse": "DateOfBirth"
},
{
"claimIdInApiResponse": "CustomRoles"
}
]
}