See api-docs Menu

Add an Access Token Claim

Add a custom claim to the Access Tokens that get generated by the Authorization Server.










Resource URL

https://<api-domain>/api/2/api_authorizations/:id/claims

Header Parameters

Authorization

required

string

Set to bearer <access_token>.

Set <access_token> to the access token you generated using the Generate Token API.

The access token must have been generated using an API credential pair created using the scope required to call this API. This API can be called using any one of the following scopes: Manage All.

Content-Type

required

string

Set to application/json.

Resource Parameters

id

required

integer

The id of the authorization server.

Request Parameters

name

required

string

The attribute name for the claim when its returned in an Access Token

user_attribute_mappings

string

A user attribute to map values from

For custom attributes prefix the name of the attribute with `custom_attribute_`.

e.g. To get the value for custom attribute `employee_id` use `custom_attribute_employee_id`.

user_attribute_macros

string

When `user_attribute_mappings` is set to `_macro_` this macro will be used to assign the parameter value.

Sample Request Body

{
    "name": "email_address",
    "user_attribute_mappings": "email"
}

Mapping roles to a claim

You can map a users assigned roles in OneLogin to a claim by using the following payload.

{
    "name": "roles",
    "user_attribute_mappings": "roles",
    "attributes_transformations": "semicolon_separated_list"
}

Sample Responses

{
    "id": 323005
}

Typically, this error means that your access token value is invalid.

{
    "message": "Unauthorized",
    "statusCode": 401,
    "name": "UnauthorizedError"
}

Invalid API Authorization Server ID

{
    "message": "The resource with the given id could not be found",
    "statusCode": 404,
    "name": "NotFoundError"
}

A claim with this name already exists

{
    "message": "Validation failed: Name has already been taken",
    "statusCode": 422,
    "name": "UnprocessableEntityError"
}

Response Elements

id Unique ID for the Claim

Postman Collection

Replace sample variables indicated by {{ }} with your actual values.

Run in Postman

    Clicking Run in Postman button navigates to the page where you can fork the collection to your workspace. Forking the collection into your workspace will enable you to contribute to the source collection using pull requests. You can also view the collection in a public workspace if you like and even import a copy of the collection using the links present on the screen.

Sample Code

cURL

Replace sample values indicated by < > with your actual values.

Add an Access Token Claim

curl 'https://<api-domain>/api/2/api_authorizations/:id/claims' \
-X POST \
-H "Authorization: bearer <access_token>" \ -d '{
  "user_attribute_mappings": "email",
  "label": "email_address2",
  "name": "email_address2"
}'

Have a Question?

Found a bug? Submit a support ticket.

Have a product idea or request? Share it with us in our Ideas Portal.