Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Current »

Create, Update, and Delete Identity Provider configuration data.

Client Object Reference

IdentityResource Object Reference

ApiResource Object Reference

Request

Method: POST

URI: /api/configuration/editor

Headers

Name

Type

Description

X-SurePassID-Api-Key

string

An API Key with 'Editor' role.

Post Data

Three objects can be included as needed Create, Update and Delete. The Create and Update 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 MFA. 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 to be 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 properties as keys to determine which object to perform the update on, and their values cannot be modified.

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
{
	"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"
		]
	}
}

Response

Create Success

Status: 200 OK

{
    "CreateClients": [
        {
            "Key": "postman-client",
            "Message": "Client creation successful.",
            "Successful": true
        }
    ],
    "CreateApiResources": [
        {
            "Key": "postman-api-resource",
            "Message": "ApiResource creation successful.",
            "Successful": true
        }
    ],
    "CreateIdentityResources": [
        {
            "Key": "postman-identity-resource",
            "Message": "IdentityResource creation successful.",
            "Successful": true
        }
    ]
}

Update Success

Status: 200 OK

{
    "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

{
    "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
        }
    ]
}

  • No labels