Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Create, Update, and Delete IdentityProvider Identity Provider configuration data.

Client Object Reference

...

URI: /api/configuration/editor

Headers

Name

Type

Description

X-SurePassID-Api-Key

string

An API Key with 'Editor' role.

Post Data

There are three Three objects that can be included as needed Create, Update and Delete. The Create and Update obects objects can contain the Clients, IdentityResources, and ApiResources object lists as needed. The Delete object can contain ClientIdList, IdentityResourceNameList, and ApiResourceNameList string arrays as needed.

The Client Object's Properties dictionary is used for client and client-tenant specific configuration data.

Name

Type

Description

AllowOtpDefault

boolean string

This is the client’s default setting for determining if the user can use an OTP for authentication. This value is optional. If this value is not set and the tenant_allow_otp.# is not set, the Identity Provider server configuration is used. If this value is set, it overrides the Identity Provider server configuration setting but can be overridden by setting tenant_allow_otp.#.

(Optional)

MfaButtonsDefault

string

This is the client’s default setting for the list of MFA Buttons that are shown and the order they are displayed.

See MFA Button Enumeration table for a list of valid values for the comma-delimited list of buttons to be displayed.

(Optional)

TenantDomain.#

string

The tenant’s domain name. (Required)

TenantId.#

string

The tenant's name. (Required)

TenantKey.#

string

The tenant’s name. (Required)

TenantAllowOtp.#

boolean string

The tenant’s setting for determining if the user can use an OTP for MFA.

TenantMfaButtons.#

string

The tenant’s setting for the list of MFA Buttons that are shown and the order to be displayed.

See MFA Button Enumeration table for a list of valid values for the comma-delimited list of buttons to be displayed.

MFA Button Enumeration

PushApp

IvrQuestion

SmsQuestion

SmsOtp

(cannot be used if allow_otp is false)

EmailOtp

(cannot be used if allow_otp is false)

CallWithOtp

(cannot be used if allow_otp is false)

The Update object uses the Client.ClientId, IdentityResource.Name, and ApiResource.Name proerties properties as keys to determine which object to performe perform the update operation on. Those proerty on, and their values cannot be updatedmodified.

Name

Type

Description

Create

object

Can contain the Clients, IdentityResources, and ApiResources lists to create as needed.

Update

object

Can contain the Clients, IdentityResources, and ApiResources lists update as needed.

Delete

object

Can contain ClientIdList, IdentityResourceNameList, and ApiResourceNameList string arrays as needed

ClientIdList

array of strings

As an optional Child of the Delete object, it contains a list of Client IDs to be deleted.

IdentityResourceNameList

array of strings

As an optional Child of the Delete object, it contains a list of Identity Resource Names to be deleted.

ApiResourceNameList

array of strings

As an optional Child of the Delete object, it contains a list of API Resource Names to be deleted.

Post Data Example
Code Block
languagejson
{
	"Create": {
		"Clients": [
			<ARRAY OF CLIENT OBJECTS TO CREATE>
		],
		"IdentityResources": [
			<ARRAY OF IDENTITY RESOURCE OBJECTS TO CREATE>
		],
		"ApiResources": [
			<ARRAY OF API RESOURCE OBJECTS TO CREATE>
		]
	},
	"Update": {
		"Clients": [
			<ARRAY OF CLIENT OBJECTS TO UPDATE>
		],
		"IdentityResources": [
			<ARRAY OF IDENTITY RESOURCE OBJECTS TO UPDATE>
		],
		"ApiResources": [
			<ARRAY OF API RESOURCE OBJECTS TO UPDATE>
		]
	},
	"Delete": {
		"ClientIdList": [
			"client-id"
		],
		"IdentityResourceNameList": [
			"identity-resource-name"
		],
		"ApiResourceNameList":  [
			"api-resource-name"
		]
	}
}

...

Code Block
languagejson
{
    "UpdateClients": [
        {
            "Key": "postman-client",
            "Message": "Client successfully updated.",
            "Successful": true
        }
    ],
    "UpdateApiResources": [
        {
            "Key": "postman-api-resource",
            "Message": "ApiResource successfully updated.",
            "Successful": true
        }
    ],
    "UpdateIdentityResources": [
        {
            "Key": "postman-identity-resource",
            "Message": "IdentityResource successfully updated.",
            "Successful": true
        }
    ]
}

Delete Success

Status: 200 OK

Code Block
languagejson
{
    "DeleteClients": [
        {
            "Key": "postman-client",
            "Message": "Client deletion successful.",
            "Successful": true
        }
    ],
    "DeleteApiResources": [
        {
            "Key": "postman-api-resource",
            "Message": "ApiResource deletion successful.",
            "Successful": true
        }
    ],
    "DeleteIdentityResources": [
        {
            "Key": "postman-identity-resource",
            "Message": "IdentityResource deletion successful.",
            "Successful": true
        }
    ]
}

...