light-mode-image
Learn
MATTR VII PlatformAuthentication provider

Update an Authentication Provider

Updates an existing Authentication Provider by providing its ID.

Analytics Events

USER_AUTHENTICATION_PROVIDER_UPDATE_STARTUSER_AUTHENTICATION_PROVIDER_UPDATE_SUCCESSUSER_AUTHENTICATION_PROVIDER_UPDATE_FAIL

Roles

adminissuer
PUT/v1/users/authentication-providers/{id}
AuthorizationBearer <token>

In: header

Path Parameters

idstring

Authentication Provider ID

Formatuuid

Update an Authentication Provider

scope?array<string>

OpenID scopes to use during authentication. Each scope returns a set of user attributes which are called claims. Be sure to test that right scopes are added to get all the information you need. If no scopes are provided, [openid,profile,email] are added by default. If any scopes are provided, openid must also be included in the array.

Default["openid","profile","email"]
clientIdstring

The client ID of the application client created on your IdP.

clientSecret?unknown

The client secret of the application client created on your IdP.

tokenEndpointAuthMethod?string

Authentication method for your IdP token endpoint:

  • client_secret_post: Your credentials are passed as parameters in the request body.
  • client_secret_basic (default): Your credentials are passed as a base 64 encoded token.
Default"client_secret_basic"
Value in"client_secret_basic" | "client_secret_post"
staticRequestParameters?object

Additional parameters (maximum 1000 entries allowed) that will be included in the request to your IdP. These parameters are identical for every request as defined in your configuration. An example would be setting the prompt to be login to let your IdP know it should show the login page every time. Keys must be strings. Values of top-level object keys must stringify to less than 1000 characters.

Propertiesproperties <= 1000

Empty Object

forwardedRequestParameters?array<string>

In contrast to staticRequestParameters, you can provide dynamic parameters that are fetched uniquely for each request to make the user journey more seamless. You can forward params to your IdP like login_hint which will pass the email of the user starting the flow. Values are limited to 1000 characters each, and cannot override any core Authorize Parameters.

Default[]
claimsToPersist?array<string>

List of claims to persist from your IdP to MATTR VII. If you have attributes from the ID token (e.g. email, picture, etc.) that you would like persisted on MATTR VII, add them to this array. By default this array is empty, meaning no claims are persisted on MATTR VII.

Default[]

Response Body

curl -X PUT "https://example.vii.au01.mattr.global/v1/users/authentication-providers/41458e5a-9092-40b7-9a26-d4eb43c5792f" \  -H "Content-Type: application/json" \  -d '{    "clientId": "vJ0SCKchr4XjC0xHNE8DkH6Pmlg2lkCN"  }'
{
  "id": "983c0a86-204f-4431-9371-f5a22e506599",
  "redirectUrl": "https://tenant.vii.mattr.global/v1/oauth/authentication/callback",
  "url": "http://example.com",
  "scope": [
    "openid",
    "profile",
    "email",
    "address",
    "phone"
  ],
  "clientId": "vJ0SCKchr4XjC0xHNE8DkH6Pmlg2lkCN",
  "clientSecret": "***********************************************************6-OjH",
  "tokenEndpointAuthMethod": "client_secret_post",
  "staticRequestParameters": {
    "prompt": "login",
    "max_age": 10000
  },
  "forwardedRequestParameters": [
    "login_hint"
  ],
  "claimsToPersist": [
    "first_name",
    "last_name",
    "email"
  ]
}
{
  "code": "string",
  "message": "string",
  "details": [
    {
      "value": "string",
      "msg": "Invalid value",
      "param": "id",
      "location": "body"
    }
  ]
}
{
  "code": "string",
  "message": "string",
  "details": [
    {
      "value": "string",
      "msg": "Invalid value",
      "param": "id",
      "location": "body"
    }
  ]
}

How would you rate this page?