Overview

Version information

Version : 1.0.0

URI scheme

Host : cloudentity.dev.cloudentity.com
BasePath : /api
Schemes : HTTPS

Consumes

  • application/json

Produces

  • application/json

Paths

GET /config/kba

Description

Returns the default system KBA configuration.

Responses

HTTP Code Description Schema

200

KBA configuration was retrieved.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

404

Response details:

  • Code : Message

  • KbaConfig.NotFound: The KBA config does not exist.

Tags

  • kba

POST /developer/activate

Description

Activates developer account for current user (self service). This service grants the SELF_MANAGE_APPLICATIONS entitlement. Returns success if the SELF_MANAGE_APPLICATIONS is already granted to a user.

Responses

HTTP Code Description Schema

201

Developer account successfully activated.

No Content

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /sla/config/kba

Description

Returns the default system KBA configuration.

Responses

HTTP Code Description Schema

200

KBA configuration was retrieved.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

404

Response details:

  • Code : Message

  • KbaConfig.NotFound: The KBA config does not exist.

Tags

  • kba

POST /sla/developer/activate

Description

Activates developer account for current user (self service). This service grants the SELF_MANAGE_APPLICATIONS entitlement. Returns success if the SELF_MANAGE_APPLICATIONS is already granted to a user.

Responses

HTTP Code Description Schema

201

Developer account successfully activated.

No Content

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /sla/hmac/user

Description

Get a user’s record from the user store using HMAC authentication.

The ADMIN_GET_SESSION_USER_VIA_HMAC entitlement is required.

This API uses the same request authorization headers as POST /apiKey/entitlement/validate (Validate Entitlements using API Key). See documentation for that API for details about authorization header inputs.

Parameters

Type Name Description Schema

Header

token
optional

SSO token of the current user

string

Header

x-orchis-authorization
optional

string

Header

x-orchis-date
optional

string

Header

x-orchis-request
optional

string

Responses

HTTP Code Description Schema

200

Current user session details

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.RequestOutdated: The request was outdated. It failed to reach the server within 15 minutes of being sent - calculation is based on the x-orchis-date header and the hmac hashed request.

  • Authentication.Mismatch: Provided hmac request does not match the original request.

  • Authentication.InactiveUser: User account is inactive.

  • Authentication.InactiveCustomer: Customer account is inactive.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

Tags

  • hmac

  • user

Example HTTP response

Response 200
{
  "authLevel" : 30,
  "customer" : "default",
  "customerAlias" : "Default Customer",
  "entitlementGroups" : [ "USER_GROUP" ],
  "entitlements" : [ "CAN_ACCESS_PROFILE", "CAN_EDIT_PROFILE" ],
  "firstName" : "Joe",
  "googleAuthSecretAccepted" : "true",
  "lastName" : "Doe",
  "locale" : "en-US",
  "mfaMethod" : "GOOGLE_AUTHENTICATION",
  "uid" : "joedoe",
  "uuid" : "123432-43242344-12343245-432432432",
  "deviceUuid" : "e09b98e2-c021-41d5-b4a0-4c22f8065817",
  "authenticationIdentifier" : "joedoe"
}

GET /sla/hmac/users/{identifier}

Description

Internal API to get a user’s record from the user store using HMAC or JWT authentication.

For HMAC, the ADMIN_GET_USER_VIA_HMAC entitlement is required.

For JWT, valid jwt is required without specified payload.

Unlike the ordinary Get User API, the users visible through this API are not constrained to the current session customer.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

200

User was retrieved.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

POST /sla/user

Description

Register user (self service).

If uid is provided, it may not be email or mobile formatted; otherwise, a User.ValidationError will be returned.

If the provided uid, email or mobile is among another user’s identifiers, a User.Duplicate error will be returned.

If no customer CID is supplied, the user will be registered under the default customer. If the resolved customer does not exist, a Customer.NotFound error will be returned.

If allowPublicRegistration is set to false then a Customer.NotFound error will be returned.

A set of (case-insensitive) responses to KBA questions may optionally be supplied and stored with the created user record. The supplied response set will be validated according to the following rules: - No duplicate question identifers may be supplied - Question identifiers must be among the available, system-configured KBA questions - The system-configured kbaMinQuestionsPerUser sets the lower bound of the questions which must be answered for each user; no fewer than this number of questions must be answered. - The system-configured kbaMaxQuestionsPerUser sets the upper bound of the questions which may be answered for each user; no more than this number of questions must be answered. If any of these rules is violated, a User.ValidationError will be returned with a description of which rule was violated.

Parameters

Type Name Description Schema

Query

customer
optional

CID of the customer to which this user is assigned

string

Query

realm
optional

User’s realm. If not sent, default realm is used.

string

Body

body
required

Register User Object

Responses

HTTP Code Description Schema

201

User successfully registered.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

404

Response details:

  • Code: Message

  • Customer.NotFound: Customer with the given ID does not exist.

No Content

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

GET /sla/user

Description

Get the current user’s record.

The current user is identified by the session token.

This service requires the SELF_GET_USER entitlement.

Responses

HTTP Code Description Schema

200

The self view of the user record is returned.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /sla/user

Description

Update the current user’s record.

The current user is identified by the session token.

If defaultEmail or defaultMobile is provided but is not among the this user’s verified or identifier emails or mobiles, a User.EmailNotFound or User.MobileNotFound error will be returned, respectively.

This service requires the SELF_UPDATE_USER entitlement.

Parameters

Type Name Description Schema

Body

body
required

Self Update User object

Responses

HTTP Code Description Schema

200

User is updated, the self view of the user record is returned.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

  • User.EmailNotFound: The requested address was not found among this user’s emails.

  • User.MobileNotFound: The requested address was not found among this user’s mobiles.

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/activate

Description

Confirm password reset using received code.

Upon success, the user is activated.

If the activation code corresponds to an MFA user who has confirmed his or her googleAuthSecret, then a valid Google Authentication pin (googlekey) is required. For such a user, if no googlekey is supplied or its value is incorrect, an Authentication.InvalidMFA error will be returned.

Parameters

Type Name Description Schema

Body

body
required

Password Reset

Responses

HTTP Code Description Schema

204

Password was re-set successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidMFA: MFA auth used with the login was incorrect.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

POST /sla/user/activation/email

Description

Activates user account using a verification code sent to a user’s email address.

Upon success, the user will be activated and any existing sessions will be invalidated. If password is provided and forcePwdReset is true, password is updated. If configuration attribute withSession is true and body parameter issueSession is true, API will return session token

Additionally, the email address to which the activation link was sent will be upgraded from unverified to verified, and set as the default email if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the email will be added to the user’s identifier emails.

The user must be inactive. If the supplied code corresponds to an active user, a User.Active error will be returned.

A User.VerificationCodeInvalid error may be generated by any of the following conditions: - The supplied verification code is malformed - A new verification code has been sent, superseding the current code

A Request.Gone error may be generated by any of the following conditions: - No code has been generated for this user - The code has expired - The code has been removed because the maximum number of failed attempts has been exceeded

A Request.Invalid error may be generated by any of the following conditions: - forcePwdReset is false and password is provided - forcePwdReset is true and password is not provided

Parameters

Type Name Description Schema

Body

body
required

Activate account by email

Responses

HTTP Code Description Schema

200

Account activated successfully and session was created

204

Account activated successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.Active: User account is active.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

Example HTTP response

Response 200
{
  "token" : "1323123-3424324324-4234324324-123123432"
}

POST /sla/user/activation/send

Description

Generates and sends an activation link to an inactive user’s unverified email (via SMTP), or a one-time password ("OTP") to a user’s unverified mobile (via SMS).

The destination address is based on the destination and deliveryMode request parameters, as well as the user’s existing unverified emails and mobiles and the otpMethod attribute: - If destination is specified and corresponds to one of the user’s unverified emails or mobiles, the message is sent to this destination. - If deliveryMode is specified, the message is sent to the user’s first unverified email ('E') or mobile ('M' or 'V') - If neither is specified, the message is sent to the user’s first unverified email or mobile based on the user’s otpMethod - If neither is specified and the user’s otpMethod is not set, the user’s first unverified email will be used.

A Request.Invalid error will be returned in any of the following scenarios: - The user is not found - The user is already active - The destination parameter is specified but the user has no such unverified email or mobile - The destination type resolves to email or mobile but the user has no unverified address of that type

Parameters

Type Name Description Schema

Body

body
required

Body of self send activation message request

Responses

HTTP Code Description Schema

204

An activation message was successfully generated and sent to the user’s email or mobile.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

POST /sla/user/authn/otp/send

Description

Generates and sends a one-time password ("OTP") to the authenticated user’s verified or identifier email (via SMTP) or mobile (via SMS).

The destination address is based on the destination and deliveryMode request parameters, as well as the user’s existing verified emails and mobiles, and the otpMethod and otpMfaDestination attributes: - If destination and deliveryMode are specified and corresponds to one of the user’s verified or identifier emails or mobiles, the OTP is sent to this destination according to the specified deliveryMode. - If maskIdentifierKey and deliveryMode are specified, the OTP is sent to the resolved destination according to the specified deliveryMode. The "Get Masked Identifiers" API must have been called prior to using this mode; the maskIdentifierKey references one of the identifier references returned by that API. - If neither is specified, the OTP is sent to the user’s otpMfaDestination, according to the delivery mode in the user’s otpMethod.

If the destination or maskIdentifierKey parameters are specified but the user has no corresponding verified or identifier email or mobile, a User.AddressNotFound error will be returned.

If the deliveryMode is not valid for the destination identified, a User.OtpDeliveryModeInvalid error will be returned, with details describing the invalid combination.

Parameters

Type Name Description Schema

Body

body
required

Body of send authentication OTP request

Responses

HTTP Code Description Schema

202

An OTP was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.OtpDeliveryModeInvalid: Invalid OTP delivery mode for the specified destination

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

404

Response details:

  • Code: Message

  • User.EmailNotFound: The requested address was not found among this user’s emails.

  • User.MobileNotFound: The requested address was not found among this user’s mobiles.

  • User.AddressNotFound: The requested address was not found among this user’s emails or mobiles.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /sla/user/authsecret

Description

View the current user’s Google auth secret.

The auth secret can only be viewed if it has not been previously confirmed by the user.

This service requires the SELF_GET_AUTH_SECRET entitlement.

Responses

HTTP Code Description Schema

200

The user’s current auth secret is returned.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

  • User.AuthSecretAlreadyAccepted: The auth secret has already been accepted.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /sla/user/authsecret

Description

Reset the current user’s Google auth secret.

A new authSecret is generated and stored for the current user, and the googleAuthSecretAccepted is set to false, enabling the user to view the new authSecret.

This service requires the SELF_RESET_AUTH_SECRET entitlement.

Responses

HTTP Code Description Schema

204

The new auth secret for the user is generated.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/authsecret/confirm

Description

Confirms the current user’s Google auth secret by validating a Google one-time key.

This api invalidates all sessions of a user.

This service requires the SELF_CONFIRM_AUTH_SECRET entitlement.

Parameters

Type Name Description Schema

Body

body
required

Google auth one-time key

Responses

HTTP Code Description Schema

204

The user’s auth secret was successfully confirmed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

  • Authentication.InvalidMFA: MFA auth used with the login was incorrect.

No Content

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

  • User.AuthSecretAlreadyAccepted: The auth secret has already been accepted.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /sla/user/devices

Description

Get the current user’s devices.

This service requires the SELF_LIST_DEVICES entitlement.

Responses

HTTP Code Description Schema

200

User devices is returned

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

Tags

  • device

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/eula

Description

The user accepts the EULA (End User License Agreement) to gain access to the website. This api invalidates all sessions of a user excluding current session.

The SELF_ACCEPT_USER_EULA entitlement is required.

The following user attributes are set automatically - eulaApproval = true - eulaRevision = customer.eulaRevision

Responses

HTTP Code Description Schema

204

User EULA has been accepted.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/identifier

Description

Add an unverified email or mobile to the current user.

Only one new address (email or mobile) can be added per request. If both email and mobile are supplied in the same request, a User.ValidationError will be returned.

If the new address is already among this user’s unverified or verified emails or mobiles, a User.ValidationError will be returned with details indicating which field(s) contain the address.

If the system configuration areVerifiedAddressesIdentifiers is set to true, and the new address is already among another user’s identifier addresses, a User.Duplicate error will be returned.

The "SELF_ADD_EMAIL_OR_MOBILE" entitlement is required.

Parameters

Type Name Description Schema

Body

body
required

Body of self add email or mobile request

Responses

HTTP Code Description Schema

204

The unverified identifier was successfully added to this user.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/identifier/verification/confirm

Description

Verifies a user’s email or mobile based on a one-time password (OTP) or encrypted code sent to the address.

If the request code param is an OTP, the identifier param must also be supplied in order to identify the user.

Upon success, if the identifier was unverified, it will be upgraded from unverified to verified, and set as the default email or mobile if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles. No change occurs if the identifier was already verified.

An Authentication.InvalidCredentials error may be generated by any of the following conditions: - The user is not found by the supplied identifier or encrypted code - The supplied verification code is incorrect

A Request.Gone error may be generated by any of the following conditions: - No verification code has been generated for this user - The verification code has expired - The verification code has been removed because the maximum number of failed attempts has been exceeded

If the encrypted verification code is malformed, a User.VerificationCodeInvalid error will be generated.

Parameters

Type Name Description Schema

Body

body
required

Verify an identifier

Responses

HTTP Code Description Schema

204

The identifier was successfully verified.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

POST /sla/user/identifier/verification/send

Description

Generates and sends a verification code to a user’s unverified or verified email or mobile.

If the destination resolves to an email, and the codeType request parameter is "E" (encrypted code), an encrypted verification code will be sent to the specified email. Otherwise, a plaintext OTP will be sent to the email or mobile. Note that if the destination is a mobile address, the code type will always be plaintext OTP.

If the destination is not among this user’s unverified or verified emails or mobiles, a User.AddressNotFound error will be returned.

The deliveryMode parameter must be supplied to specify which delivery mode to use. Allowable combinations are: - For email address: E (SMTP) - For mobile address: M (SMS) - For mobile address: V (VOICE)

If the deliveryMode is not valid for the destination identified, a User.OtpDeliveryModeInvalid error will be returned, with details describing the invalid combination.

The SELF_SEND_VERIFICATION_CODE entitlement is required.

Parameters

Type Name Description Schema

Body

body
required

Body of send verification code request

Responses

HTTP Code Description Schema

202

A verification code was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.OtpDeliveryModeInvalid: Invalid OTP delivery mode for the specified destination

404

Response details:

  • Code: Message

  • User.AddressNotFound: The requested address was not found among this user’s emails or mobiles.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/identifier/verification/session/confirm

Description

Verifies a user’s email or mobile based on a one-time password (OTP) sent to the address.

The user is identified by the session token provided.

Upon success, if the identifier was unverified, it will be upgraded from unverified to verified, and set as the default email or mobile if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles. No change occurs if the identifier was already verified.

If the supplied OTP code is incorrect, an Authentication.InvalidCredentials error will be generated.

If the supplied code is in the form of an encrypted code (used in other APIS), a Request.Invalid error will be generated.

A Request.Gone error may be generated by any of the following conditions: - No OTP has been generated for this user - The OTP has expired - The OTP has been removed because the maximum number of failed attempts has been exceeded

Parameters

Type Name Description Schema

Body

body
required

Verify an identifier with token to identify the user

Responses

HTTP Code Description Schema

204

The identifier was successfully verified.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/identifier/verify

Description

Verifies a user’s email or mobile based on a one-time password (OTP) or encrypted code sent to the address.

If the request code param is an OTP, the identifier param must also be supplied in order to identify the user.

Upon success, if the identifier was unverified, it will be upgraded from unverified to verified, and set as the default email or mobile if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles. No change occurs if the identifier was already verified. A Request.Invalid error may be generated by any of the following conditions:

  • forcePwdReset is false and password is provided

  • forcePwdReset is true and password is not provided

If configuration attribute withSession is true and body parameter issueSession is true, API will return a session token

An Authentication.InvalidCredentials error may be generated by any of the following conditions: - The user is not found by the supplied identifier or encrypted code - The supplied verification code is incorrect

A Request.Gone error may be generated by any of the following conditions: - No verification code has been generated for this user - The verification code has expired - The verification code has been removed because the maximum number of failed attempts has been exceeded

If the encrypted verification code is malformed, a User.VerificationCodeInvalid error will be generated.

Parameters

Type Name Description Schema

Body

body
required

Verify an identifier and conditionally issue session

Responses

HTTP Code Description Schema

200

The identifier was successfully verified and session token created.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

Example HTTP response

Response 200
{
  "token" : "1323123-3424324324-4234324324-123123432"
}

GET /sla/user/identifiers/masked

Description

Returns an obfuscated view of a user’s verified and unverified emails and mobiles.

For each masked identifier, a randomly generated key is returned. This string may be used to reference the corresponding email or mobile as a destination, for requests to various "sending" APIs.

Responses

HTTP Code Description Schema

200

An obfuscated view of the user’s emails and mobiles is returned.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/identifiers/remove

Description

Removes requested identifiers or addresses from a user. Any valid identifier values supplied in the identifiers list in the request will be removed.

Any identifier from the following categories may be removed: - UID - verified emails - verified mobiles - identifier emails - identifier mobiles

Note: It is not possible to remove a user’s UUID.

If all of the supplied identifiers are found in the user record, 204 NO CONTENT will be returned. If at least one identifier is not found or is not removable, 200 OK will be returned; successfully removed identifiers are returned in the successful list of the response body, and unsuccessfully removed identifiers are returned in the unsuccessful list.

If a removed identifier corresponds to the user’s current default email or mobile, the default email or mobile will be adjusted to the first available verified email or mobile, respectively. If no verified emails or mobiles remain after removal, the default email or mobile will be removed as well.

If a removed identifier corresponds to the user’s current otpMfaDestination, the otpMfaDestination will be removed and otpSetupComplete attribute will be set to false.

Warning: It is possible to remove all of a user’s human-recognizable (non-UUID) identifiers. This could prevent future authentications and administrative actions unless the UUID is known to the user or acting admin.

A User.ValidationError will be thrown if the requested identifiers list meets any of the following conditions: - The list is empty - The list contains empty elements - The list contains duplicate elements - The list contains more than 10 elements

This service requires the SELF_REMOVE_IDENTIFIERS entitlement.

Parameters

Type Name Description Schema

Body

body
required

List of identifiers

Responses

HTTP Code Description Schema

200

Some requested identifiers could not be removed

204

All requested identifiers were successfully removed

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/kba

Description

Allows a user to set or change his or her KBA responses. Responses are case-insensitive.

The supplied response set will be validated according to the following rules: - No duplicate question identifers may be supplied - Question identifiers must be among the available, system-configured KBA questions - The system-configured kbaMinQuestionsPerUser sets the lower bound of the questions which must be answered for each user; no fewer than this number of questions must be answered. - The system-configured kbaMaxQuestionsPerUser sets the upper bound of the questions which may be answered for each user; no more than this number of questions must be answered. If any of these rules is violated, a User.ValidationError will be returned with a description of which rule was violated.

Upon success, the user’s response answers are hashed and stored.

A user’s KBA response set may be changed by simply supplying a new, complete set of KBA responses.

This service requires the SELF_SET_USER_KBA_RESPONSES entitlement.

Parameters

Type Name Description Schema

Body

body
required

KBA responses to be stored for this user

Responses

HTTP Code Description Schema

204

The KBA responses for the user are set.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • kba

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /sla/user/kba/challenge

Description

Generates and returns a new set of KBA challenge questions for the user identified by the provided session token.

The selected set of questions is a subset of the questions to which a user has supplied responses during KBA setup. If the central KBA config allows a user to respond to more more questions than the minimum required, the minimum number will be randomly chosen from among the user’s responses; in this case, this API must be called prior to each KBA authentication. Otherwise, the challenge set will be equal to the full set of questions to which the user has supplied responses.

If a challenge set has already been generated for this user without a successful authentication, subsequent calls to this API will return the same set of questions; this forces a user to respond correctly to any pending challenge.

If the user has not previously stored responses to KBA questions, a User.KbaNotAccepted error will be thrown.

No entitlement is required to call this API.

Responses

HTTP Code Description Schema

200

KBA challenge questions have been set for the user.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

  • User.KbaNotAccepted: KBA responses have not been set for this user.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • kba

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/mfa/reset/verify

Description

Verifies an encrypted code or one-time password (OTP) to faciliate an MFA-reset flow. Upon success a session token is returned.

If the request code param is a plaintext OTP, the identifier and mfaMethod params must also be supplied in order to identify the user and MFA type.

If the email destination was unverified, the new session’s authenticationIdentifier will be set to the first available identifier of the user: uid, identifierEmail, identifierMobile.

An Authentication.InvalidCredentials error may be generated by any of the following conditions: - The user is not found by the supplied identifier or encrypted code - The supplied verification code is incorrect

A Request.Gone error may be generated by any of the following conditions: - No verification code has been generated for this user - The verification code has expired - The verification code has been removed because the maximum number of failed attempts has been exceeded

If the encrypted verification code is malformed, a User.VerificationCodeInvalid error will be generated.

If the provided code does not correspond to an allowable OTP action type for this API (e.g. a code intended for user activation was provided), an Authentication.InvalidMFA error will be returned.

Parameters

Type Name Description Schema

Body

body
required

MFA Reset

Responses

HTTP Code Description Schema

200

Code was successfully verified, a session token is returned in the response.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

  • Authentication.InvalidMFA: MFA auth used with the login was incorrect.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

PUT /sla/user/mfamethod

Description

Allows a user to set his or her MFA method.

The MFA method must be chosen among the following values: - NONE - GOOGLE_AUTHENTICATION - OTP - KBA - DUO_AUTHN

This service requires the SELF_SET_MFA_METHOD entitlement.

Parameters

Type Name Description Schema

Body

body
required

MFA Method

Responses

HTTP Code Description Schema

204

User Mfa Method has been updated.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/otpmfa/change

Description

Changes a user’s otpMfaDestination and otpMethod.

The user must have completed MFA enrollment to make this request. The provided OTP code must be plain text and have been generated from the Send Verification Code API. The provided destination must be one of this user’s unverified/verified addresses. The provided otpMethod is allowable in combinations with destination if it is: - an email address: E (SMTP) - a mobile address: M (SMS) or V (VOICE)

Upon success, the otpMfaDestination and otpMethod are changed.

If the provided address is an email and no defaultEmail is set, it is promoted to defaultEmail. If it was a mobile and no defaultMobile is set, then it becomes defaultMobile.

If the address was unverified, it will be upgraded from unverified to verified, but no change occurs if the address was already verified.

If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles.

A Request.Gone error may be generated by any of the following conditions: - The verification code has expired - The OTP was generated from other action. - The verification code has been removed because the maximum number of failed attempts has been exceeded

An Authorization.Unauthorized error may be generated if this API was somehow triggered by a user who has not completed MFA setup.

A Request.Invalid error may be generated if: - The provided OTP MFA Change destination did not match the identifier issued by the OTP code.

A User.OtpDeliveryModeInvalid error may be generated if: - The otpMethod is not among the allowable combinations described above.

A User.NotFound error may be generated if the OTP generated address is not included in user data.

Parameters

Type Name Description Schema

Body

body
required

Body of Self Change Otp MFA destination request

Responses

HTTP Code Description Schema

204

OTP MFA destination change was successfully completed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.OtpDeliveryModeInvalid: Invalid OTP delivery mode for the specified destination

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/otpmfa/confirm

Description

Confirms a user’s email or mobile based on a one-time password (OTP) sent to the address.

The provided OTP code must have been generated and matched with the user’s otpMfaDestination.

Upon success, the otpSetupComplete flag is set to true.

If the address is an email and no defaultEmail is set, it is promoted to defaultEmail. If it was a mobile and no defaultMobile is set, then it becomes defaultMobile.

If the address was unverified, it will be upgraded from unverified to verified, but no change occurs if the address was already verified.

If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles.

A Request.Gone error may be generated by any of the following conditions: - The verification code has expired - The OTP was generated from other action. - The verification code has been removed because the maximum number of failed attempts has been exceeded

A Request.Invalid error may be generated if otpMfaDestination was not set or not matched with provided OTP address.

A User.NotFound error may be generated if the address to which the OTP had been sent is not included in user data.

Parameters

Type Name Description Schema

Body

body
required

Body of Self Confirm OTP MFA Setup request

Responses

HTTP Code Description Schema

204

OTP MFA setup was successfully completed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/otpmfa/setup

Description

Begins OTP authentication setup process for a user.

This API operates in three modes, based on attributes present in the request: - Mode 1: destination, destinationType and otpMethod are required. Upon success, the user’s OTP destination and method attributes are set. An OTP is sent to the requested destination, according to the otpMethod requested. If the destination does not already exist among the user’s addresses, it will be added to the user’s unverified emails or mobiles, according to the destinationType requested. - Mode 2: otpMethod and maskIdentifierKey are required. The "Get Masked Identifiers" API must have been called prior to using this mode; the maskIdentifierKey references one of the identifier references returned by that API. An OTP is generated and sent to the referenced destination, according to the otpMethod requested. If the requested key does not match any stored destination, an Address.NotFound error is returned. - Mode 3: No inputs are allowed. An OTP is generated and sent to the user’s stored OTP destination, according to the stored otpMethod. If no OTP destination and method are found, a Request.Invalid error is returned with details identifying the missing attribute.

In all cases, upon success any previously set otpSetupComplete flag is set to false.

Parameters

Type Name Description Schema

Body

body
required

Body of Self Setup OTP MFA request

Responses

HTTP Code Description Schema

202

An OTP was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /sla/user/password

Description

Changes a user’s password, using a session and the old password for verification.

This service requires the SELF_CHANGE_PASSWORD entitlement.

Parameters

Type Name Schema

Body

body
required

Responses

HTTP Code Description Schema

204

The user’s password was successfully changed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

422

Response details:

  • Code : Message

  • User.InvalidOldPassword: Old password is invalid.

  • User.InvalidNewPassword: New password is invalid (new password is the same as old one or does not match password policy rules)

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/password/reset/confirm

Description

Confirm password reset using received code. Upon success: - The user is activated - The user’s password is set - All existing sessions of the user are invalidated - The email to which the code was sent will be upgraded from unverified to verified - The email to which the code was sent will be set as the default email if none already exists - If the system configuration areVerifiedAddressesIdentifiers is set to true, the email will be added to the user’s identifier emails.

If the system configuration allowResetViaUnverifiedAddress is set to false and the email to which the code was sent was unverified, a User.ValidationError will be returned.

A User.VerificationCodeInvalid error will be returned in any of the following scenarios: - The supplied code is malformed - The supplied code corresponds to a missing or deleted user - A new code has been sent, superseding the supplied code

A Request.Gone error will be returned in any of the following scenarios: - No code has been generated for this user - The code has expired - The code has been removed because the maximum number of failed attempts has been exceeded

Parameters

Type Name Description Schema

Body

body
required

Password Reset

Responses

HTTP Code Description Schema

200

Password was re-set successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

POST /sla/user/password/reset/request

Description

Requests a password reset process start (sending an email with reset link).

Only the user’s UID will be accepted as an identifier. Once the user is identified, their defaultEmail address will be used as the destination of the password-reset email.

For security purposes, a success status will be returned for all valid requests, even if the identifier does not correspond to an existing user’s UID.

The identified user’s current mfaMethod will also be included in the password-reset link to facilitate multi-factor authentication during the confirmation step.

Parameters

Type Name Schema

Body

body
required

Responses

HTTP Code Description Schema

202

Accepted; an email should arrive in the provided email’s inbox soon.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

Tags

  • user

PUT /sla/user/session/customer

Description

Set the user’s customer for the current user session (session.customer).

This service requires the SELF_UPDATE_USER_CUSTOMER_IN_SESSION entitlement.

The specified customer must be in the customers list associated with this user, unless the ADMIN_ALL_CUSTOMERS entitlement is owned.

Process Outline - If user does not have the SELF_UPDATE_USER_CUSTOMER_IN_SESSION entitlement - Return Authorization.Unauthorized - If the user does not have the ADMIN_ALL_CUSTOMERS entitlement - Get the user record.customers - If the requested customer is not in the record.customers list - Return Authorization.Unauthorized - Replace the user session.customer attribute with the requested customer

Parameters

Type Name Description Schema

Body

body
required

Customer identifier (CID)

Responses

HTTP Code Description Schema

204

User session is updated.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code: Message

  • Customer.NotFound: Customer with the given ID does not exist.

No Content

Tags

  • customer

  • session

Security

Type Name

apiKey

PUT /sla/user/uid

Description

Changes a user’s UID. If successful, the user’s sessions will be invalidated.

The UID may not be email or mobile formatted; otherwise, a User.ValidationError will be returned.

If the provided UID already exists among this or another user’s identifiers, a User.Duplicate error will be returned.

This service requires the SELF_CHANGE_UID entitlement.

Parameters

Type Name Schema

Body

body
required

Responses

HTTP Code Description Schema

204

The user’s UID was successfully changed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/user/verificationcode/inspect

Description

Returns information about an encrypted verification code which was generated for a user.

The verification code is not consumed when this API is called, and may be reused for future API calls.

A User.VerificationCodeInvalid error will be returned in any of the following scenarios: - The supplied code is malformed - The supplied code corresponds to a missing or deleted user - A new code has been sent, superseding the supplied code

A Request.Gone error will be returned in any of the following scenarios: - No code has been generated for this user - The code has expired - The code has been removed because the maximum number of failed attempts has been exceeded - The code corresponds to an action which is not recognized by this API

Parameters

Type Name Description Schema

Body

body
required

Body of Inspect Verification Code request

Responses

HTTP Code Description Schema

200

The verification code is valid.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

GET /sla/user/{identifier}/entitlementgroups

Description

Get the list of entitlement groups assigned to the user identified by {identifier}

The ADMIN_GET_USER_ENTITLEMENT_GROUPS entitlement is required

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

200

The requested user list of entitlementgroups is returned

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • entitlement

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /sla/user/{identifier}/entitlements

Description

Get the list of entitlements assigned to the user identified by {identifier}

The ADMIN_GET_USER_ENTITLEMENTS entitlement is required

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

200

The requested user list of entitlements is returned

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • entitlement

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/users

Description

Create a new user

If uid is provided, it may not be email or mobile formatted; otherwise, a User.ValidationError will be returned. If uuid is provided, and application configuration flag allowUserUuid is set on true it is possible to set it instead of default random. Setting uuid in this way is not recommended and was introduced as client requirement.

If configured, an activation code may be generated and sent to the new user, based on any unverifiedEmails and unverifiedMobiles provided: - If email addresses are provided but no mobiles, an activation link will be emailed to the user’s first unverifiedEmail - If mobile numbers are provided but no emails, an activation OTP will be sent to the user’s first unverifiedMobile via SMS - If mobile numbers are provided and otpMethod = 'V' is also provided, an activation OTP will be sent to the user’s first unverifiedMobile via voice message - If email and mobile addresses are provided, the otpMethod will be used to determine the destination and delivery method ('E' = email, 'M' = SMS, 'V' = voice message).

This service requires the ADMIN_CREATE_USER entitlement.

Apart from uid, either unverifiedMobiles or unverifiedEmails is required.

Parameters

Type Name Description Schema

Body

body
required

Create User object

Responses

HTTP Code Description Schema

201

User was created, user object is returned in response.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /sla/users

Description

Return a list of users whom the current user can see using filter / paging.

Parameters

Type Name Description Schema

Query

filter
optional

Filter the results by the given field’s value.

The format of the filter field is defined as follows:

FIELD_NAME:FIELD_VALUE,FIELD_NAME2:FIELD_VALUE_2

For example: firstName:Joe,lastName:*ski searches for a user with first name Joe, whose last name has a ski suffix.

Asterisks are supported for substring searches.

string

Query

limit
optional

Limits the number of returned items (value 20 by default).

integer

Query

offset
optional

When an offset n is used, items starting from the n-th are returned (value 0 by default).

integer

Query

sort
optional

Sort the results by the given field.

If an ascending sort is required, specify the attribute name (e.g. firstName).

If a descending sort is required, specify the attribute name with a - prefix (e.g. -firstName).

If a multiple column sort is required, add a comma separator between the attribute names (e.g. lastName,firstName).

Example: lastName,firstName

string

Responses

HTTP Code Description Schema

200

The results for a user search matching the search criteria.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /sla/users/{identifier}

Description

Get a user’s record from the user store

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

200

User was retrieved.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /sla/users/{identifier}

Description

Updates user’s attributes

If uid is provided, it may not be email or mobile formatted; otherwise, a User.ValidationError will be returned.

If uid is updated successfully, the target user’s sessions will be invalidated. If an attempt to update uid is made but already exists among this or another user’s identifiers, a User.Duplicate error will be returned.

If defaultEmail or defaultMobile is provided but is not among the this user’s verified or identifier emails or mobiles, a User.EmailNotFound or User.MobileNotFound error will be returned, respectively.

This service requires the ADMIN_UPDATE_USER entitlement.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Update User object

Responses

HTTP Code Description Schema

200

User was updated, user object returned in response.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

  • User.EmailNotFound: The requested address was not found among this user’s emails.

  • User.MobileNotFound: The requested address was not found among this user’s mobiles.

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /sla/users/{identifier}

Description

Invalidates all sessions of a user and removes him/her from the datastore.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

Invalidated all sessions and deleted user from datastore.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/users/{identifier}/activation

Description

Activate the user identified by identifier directly, allowing him/her to authenticate.

The ADMIN_ACTIVATE_USER entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

User activated successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /sla/users/{identifier}/activation

Description

Deactivate the user account. This invalidates all sessions of a user and prevents the user from authenticating.

The ADMIN_DEACTIVATE_USER entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

Invalidate all sessions and Overlay tokens of a user and prevent the user from authenticating.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/users/{identifier}/activation/mobile

Description

Activates user account using an OTP sent to a mobile device.

Upon success, the user will be activated. If password is provided and forcePwdReset is true, password is updated. If configuration attribute withSession is true and body parameter issueSession is true, API will return session token

Additionally, the mobile number to which the OTP was sent will be upgraded from unverified to verified, and set as the default mobile if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the mobile will be added to the user’s identifier mobiles as well.

An Authentication.InvalidCredentials error may be generated by any of the following conditions: - The user is not found by the supplied identifier - The supplied OTP is incorrect - The user is already active

A Request.Gone error may be generated by any of the following conditions: - No OTP has been generated for this user - The OTP has expired - The OTP has been removed because the maximum number of failed attempts has been exceeded

A Request.Invalid error may be generated by any of the following conditions: - forcePwdReset is false and password is provided - forcePwdReset is true and password is not provided

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Activate account by mobile

Responses

HTTP Code Description Schema

200

Account activated successfully and session was created

204

Account activated successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

Tags

  • user

Example HTTP response

Response 200
{
  "token" : "1323123-3424324324-4234324324-123123432"
}

POST /sla/users/{identifier}/activation/send

Description

Generates and sends an activation link to an inactive user’s unverified email (via SMTP), or a one-time password ("OTP") to a user’s unverified mobile (via SMS).

The destination address is based on the destination and deliveryMode request parameters, as well as the user’s existing unverified emails and mobiles and the otpMethod attribute: - If destination is specified and corresponds to one of the user’s unverified emails or mobiles, the message is sent to this destination. - If deliveryMode is specified, the message is sent to the user’s first unverified email ('E') or mobile ('M' or 'V') - If neither is specified, the message is sent to the user’s first unverified email or mobile based on the user’s otpMethod - If neither is specified and the user’s otpMethod is not set, the user’s first unverified email will be used.

If the user is not found or belongs to a different customer than the current admin’s current session customer, a User.NotFound error will be returned.

If the user is already active, a User.Active error will be returned.

If the destination parameter is specified but the user has no such unverified email or mobile, a User.AddressNotFound error will be returned.

If the destination type resolves to email or mobile but the user has no unverified address of that type, a User.EmailNotFound or User.MobileNotFound error will be returned, respectively.

The ADMIN_SEND_ACTIVATION_MESSAGE entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Body of send activation message request

Responses

HTTP Code Description Schema

202

An activation message was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.Active: User account is active.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code: Message

  • User.NotFound: User with the given ID does not exist

  • User.EmailNotFound: The requested address was not found among this user’s emails.

  • User.MobileNotFound: The requested address was not found among this user’s mobiles.

  • User.AddressNotFound: The requested address was not found among this user’s emails or mobiles.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /sla/users/{identifier}/apiKey

Description

Reset the current user’s API key

  • If admin does not have entitlement ADMIN_RESET_USER_API_KEY

  • Return Authorization.Unauthorized

  • Get user record

  • If admin customer does match user customer

  • Return User.NotFound

  • Reset user API key

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

200

The user’s API key was successfully reset.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /sla/users/{identifier}/authsecret

Description

Resets the Google auth secret of the user identified by identifier.

A new authSecret is generated and stored for the target user, and the googleAuthSecretAccepted is set to false, enabling the user to view the new authSecret.

This service requires the ADMIN_RESET_AUTH_SECRET entitlement.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

The new auth secret for the user is generated.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /sla/users/{identifier}/eula

Description

Admin resets a user acceptance of the EULA (End User License Agreement). This will be required when the EULA is updated and needs to be accepted again by the user.

The ADMIN_RESET_USER_EULA entitlement is required.

The following user attribute is set automatically - eulaApproval = false

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

User EULA has been reset to not accepted.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /sla/users/{identifier}/getviahmac

Description

Get a user’s record from the user store using HMAC authentication.

The ADMIN_GET_USER_VIA_HMAC entitlement is required.

This API uses the same request authorization headers as POST /apiKey/entitlement/validate (Validate Entitlements using API Key). See documentation for that API for details about authorization header inputs.

Unlike the ordinary Get User API, the users visible through this API are not constrained to the current session customer.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

200

User was retrieved.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.RequestOutdated: The request was outdated. It failed to reach the server within 15 minutes of being sent - calculation is based on the x-orchis-date header and the hmac hashed request.

  • Authentication.Mismatch: Provided hmac request does not match the original request.

  • Authentication.InactiveUser: User account is inactive.

  • Authentication.InactiveCustomer: Customer account is inactive.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

POST /sla/users/{identifier}/identifier

Description

Add an unverified email or mobile to a user record.

Only one new address (email or mobile) can be added per request. If both email and mobile are supplied in the same request, a User.ValidationError will be returned.

If the new address is already among the target user’s unverified or verified emails or mobiles, a User.ValidationError will be returned with details indicating which field(s) contain the address.

If the isIdentifier parameter is true, this address will be added as an identifier email or mobile.

If the system configuration areVerifiedAddressesIdentifiers is set to true or the isIdentifier request parameter is true, and the new address is already among another user’s identifier addresses, a User.Duplicate error will be returned.

The "ADMIN_ADD_EMAIL_OR_MOBILE" entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Body of add email or mobile request

Responses

HTTP Code Description Schema

204

The unverified identifier was successfully added to the specified user.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/users/{identifier}/identifiers/remove

Description

Removes requested identifiers or addresses from the identified user. Any valid identifier values supplied in the identifiers list in the request will be removed.

Any identifier from the following categories may be removed: - UID - verified emails - verified mobiles - identifier emails - identifier mobiles

Note: It is not possible to remove a user’s UUID.

If all of the supplied identifiers are found in the user record, 204 NO CONTENT will be returned. If at least one identifier is not found or is not removable, 200 OK will be returned; successfully removed identifiers are returned in the successful list of the response body, and unsuccessfully removed identifiers are returned in the unsuccessful list.

If a removed identifier corresponds to the user’s current default email or mobile, the default email or mobile will be adjusted to the first available verified email or mobile, respectively. If no verified emails or mobiles remain after removal, the default email or mobile will be removed as well.

If a removed identifier corresponds to the user’s current otpMfaDestination, the otpMfaDestination will be removed and otpSetupComplete attribute will be set to false.

Warning: It is possible to remove all of a user’s human-recognizable (non-UUID) identifiers. This could prevent future authentications and administrative actions unless the UUID is known to the user or acting admin.

A User.ValidationError will be thrown if the requested identifiers list meets any of the following conditions: - The list is empty - The list contains empty elements - The list contains duplicate elements - The list contains more than 10 elements

The target user must belong to the admin’s current customer. Otherwise, a User.NotFound error will be returned.

This service requires the ADMIN_REMOVE_IDENTIFIERS entitlement.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

List of identifiers

Responses

HTTP Code Description Schema

200

Some requested identifiers could not be removed

204

All requested identifiers were successfully removed

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /sla/users/{identifier}/kba

Description

Resets the KBA responses of the user identified by identifier.

In addition, the user’s KBA acceptance status is reset to false, and any pending questions to be answered for authentication are cleared.

This service requires the ADMIN_RESET_USER_KBA entitlement.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

The KBA responses for the user are cleared.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • kba

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/users/{identifier}/mfa/reset

Description

Generates and sends an MFA-reset code to the identified user’s unverified or verified email (via SMTP) or mobile (via SMS or VOICE). The code is only valid for the specified mfaMethod.

If the destination resolves to an email, and the codeType request parameter is "E" (encrypted code), an encrypted verification code will be sent to the specified email. Otherwise, a plaintext OTP will be sent to the address. Note that if the destination is a mobile address, the code type will always be plaintext OTP.

If the destination is not among this user’s unverified or verified emails or mobiles, a User.AddressNotFound error will be returned.

The deliveryMode parameter must be supplied to specify which delivery mode to use. Allowable combinations are: - For email address: E (SMTP) - For mobile address: M (SMS) - For mobile address: V (VOICE)

If the deliveryMode is not valid for the destination identified, a User.OtpDeliveryModeInvalid error will be returned, with details describing the invalid combination.

If the mfaMethod does not correspond to one of the available system MFA types, a User.ValidationError will be returned.

The ADMIN_REQUEST_RESET_MFA_CREDENTIALS entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Request reset code for a user’s credentials of a particular MFA type

Responses

HTTP Code Description Schema

202

An MFA-reset code was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code: Message

  • User.AddressNotFound: The requested address was not found among this user’s emails or mobiles.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /sla/users/{identifier}/otpmfa/reset

Description

Admin resets a user’s OTP MFA status

The ADMIN_RESET_OTP_MFA_ENROLLMENT entitlement is required.

The following user attributes are set automatically - otpSetupComplete = false - otpMfaDestination is removed - otpMethod is removed

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

User’s OTP MFA Enrollment has been reset.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/users/{identifier}/password/reset

Description

Requests a password reset process start (sending an email with reset link) for a given user.

The email will be sent to a user’s defaultEmail. If none exists, a Request.Invalid error will be returned.

This service requires the ADMIN_REQUEST_RESET_PASSWORD entitlement.

The identified user’s current mfaMethod will also be included in the password-reset link to facilitate multi-factor authentication during the confirmation step.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Responses

HTTP Code Description Schema

202

Accepted; an email should arrive in the provided email’s inbox soon.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

423

Response details:

  • Code: Message

  • ResetPassword.Locked: The maximum number of reset password attempts has been reached.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /sla/users/{identifier}/password/resetfromalternate

Description

Requests a password reset process start (sending an email with reset link).

The destination email is specified in the request body. The user to be activated is specified by the identifier path parameter.

This service requires the ADMIN_REQUEST_RESET_PASSWORD_FROM_ALTERNATE entitlement.

Upon success, the user is deactivated, forcing password reset (or administrative reactivation) before the user can login again.

The identified user’s current mfaMethod will also be included in the password-reset link to facilitate multi-factor authentication during the confirmation step.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Request Reset Password with Alternate Email object

Responses

HTTP Code Description Schema

202

Accepted; an email should arrive in the provided email’s inbox soon.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code: Message

  • Customer.NotFound: Customer with the given ID does not exist.

No Content

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

oauth2

oauth2

oauth2

apiKey

POST /user

Description

Register user (self service).

If uid is provided, it may not be email or mobile formatted; otherwise, a User.ValidationError will be returned.

If the provided uid, email or mobile is among another user’s identifiers, a User.Duplicate error will be returned.

If no customer CID is supplied, the user will be registered under the default customer. If the resolved customer does not exist, a Customer.NotFound error will be returned.

If allowPublicRegistration is set to false then a Customer.NotFound error will be returned.

A set of (case-insensitive) responses to KBA questions may optionally be supplied and stored with the created user record. The supplied response set will be validated according to the following rules: - No duplicate question identifers may be supplied - Question identifiers must be among the available, system-configured KBA questions - The system-configured kbaMinQuestionsPerUser sets the lower bound of the questions which must be answered for each user; no fewer than this number of questions must be answered. - The system-configured kbaMaxQuestionsPerUser sets the upper bound of the questions which may be answered for each user; no more than this number of questions must be answered. If any of these rules is violated, a User.ValidationError will be returned with a description of which rule was violated.

Parameters

Type Name Description Schema

Query

customer
optional

CID of the customer to which this user is assigned

string

Query

realm
optional

User’s realm. If not sent, default realm is used.

string

Body

body
required

Register User Object

Responses

HTTP Code Description Schema

201

User successfully registered.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

404

Response details:

  • Code: Message

  • Customer.NotFound: Customer with the given ID does not exist.

No Content

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

GET /user

Description

Get the current user’s record.

The current user is identified by the session token.

This service requires the SELF_GET_USER entitlement.

Responses

HTTP Code Description Schema

200

The self view of the user record is returned.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /user

Description

Update the current user’s record.

The current user is identified by the session token.

If defaultEmail or defaultMobile is provided but is not among the this user’s verified or identifier emails or mobiles, a User.EmailNotFound or User.MobileNotFound error will be returned, respectively.

This service requires the SELF_UPDATE_USER entitlement.

Parameters

Type Name Description Schema

Body

body
required

Self Update User object

Responses

HTTP Code Description Schema

200

User is updated, the self view of the user record is returned.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

  • User.EmailNotFound: The requested address was not found among this user’s emails.

  • User.MobileNotFound: The requested address was not found among this user’s mobiles.

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/activate

Description

Confirm password reset using received code.

Upon success, the user is activated.

If the activation code corresponds to an MFA user who has confirmed his or her googleAuthSecret, then a valid Google Authentication pin (googlekey) is required. For such a user, if no googlekey is supplied or its value is incorrect, an Authentication.InvalidMFA error will be returned.

Parameters

Type Name Description Schema

Body

body
required

Password Reset

Responses

HTTP Code Description Schema

204

Password was re-set successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidMFA: MFA auth used with the login was incorrect.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

POST /user/activation/email

Description

Activates user account using a verification code sent to a user’s email address.

Upon success, the user will be activated and any existing sessions will be invalidated. If password is provided and forcePwdReset is true, password is updated. If configuration attribute withSession is true and body parameter issueSession is true, API will return session token

Additionally, the email address to which the activation link was sent will be upgraded from unverified to verified, and set as the default email if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the email will be added to the user’s identifier emails.

The user must be inactive. If the supplied code corresponds to an active user, a User.Active error will be returned.

A User.VerificationCodeInvalid error may be generated by any of the following conditions: - The supplied verification code is malformed - A new verification code has been sent, superseding the current code

A Request.Gone error may be generated by any of the following conditions: - No code has been generated for this user - The code has expired - The code has been removed because the maximum number of failed attempts has been exceeded

A Request.Invalid error may be generated by any of the following conditions: - forcePwdReset is false and password is provided - forcePwdReset is true and password is not provided

Parameters

Type Name Description Schema

Body

body
required

Activate account by email

Responses

HTTP Code Description Schema

200

Account activated successfully and session was created

204

Account activated successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.Active: User account is active.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

Example HTTP response

Response 200
{
  "token" : "1323123-3424324324-4234324324-123123432"
}

POST /user/activation/send

Description

Generates and sends an activation link to an inactive user’s unverified email (via SMTP), or a one-time password ("OTP") to a user’s unverified mobile (via SMS).

The destination address is based on the destination and deliveryMode request parameters, as well as the user’s existing unverified emails and mobiles and the otpMethod attribute: - If destination is specified and corresponds to one of the user’s unverified emails or mobiles, the message is sent to this destination. - If deliveryMode is specified, the message is sent to the user’s first unverified email ('E') or mobile ('M' or 'V') - If neither is specified, the message is sent to the user’s first unverified email or mobile based on the user’s otpMethod - If neither is specified and the user’s otpMethod is not set, the user’s first unverified email will be used.

A Request.Invalid error will be returned in any of the following scenarios: - The user is not found - The user is already active - The destination parameter is specified but the user has no such unverified email or mobile - The destination type resolves to email or mobile but the user has no unverified address of that type

Parameters

Type Name Description Schema

Body

body
required

Body of self send activation message request

Responses

HTTP Code Description Schema

204

An activation message was successfully generated and sent to the user’s email or mobile.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

POST /user/authn/otp/send

Description

Generates and sends a one-time password ("OTP") to the authenticated user’s verified or identifier email (via SMTP) or mobile (via SMS).

The destination address is based on the destination and deliveryMode request parameters, as well as the user’s existing verified emails and mobiles, and the otpMethod and otpMfaDestination attributes: - If destination and deliveryMode are specified and corresponds to one of the user’s verified or identifier emails or mobiles, the OTP is sent to this destination according to the specified deliveryMode. - If maskIdentifierKey and deliveryMode are specified, the OTP is sent to the resolved destination according to the specified deliveryMode. The "Get Masked Identifiers" API must have been called prior to using this mode; the maskIdentifierKey references one of the identifier references returned by that API. - If neither is specified, the OTP is sent to the user’s otpMfaDestination, according to the delivery mode in the user’s otpMethod.

If the destination or maskIdentifierKey parameters are specified but the user has no corresponding verified or identifier email or mobile, a User.AddressNotFound error will be returned.

If the deliveryMode is not valid for the destination identified, a User.OtpDeliveryModeInvalid error will be returned, with details describing the invalid combination.

Parameters

Type Name Description Schema

Body

body
required

Body of send authentication OTP request

Responses

HTTP Code Description Schema

202

An OTP was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.OtpDeliveryModeInvalid: Invalid OTP delivery mode for the specified destination

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

404

Response details:

  • Code: Message

  • User.EmailNotFound: The requested address was not found among this user’s emails.

  • User.MobileNotFound: The requested address was not found among this user’s mobiles.

  • User.AddressNotFound: The requested address was not found among this user’s emails or mobiles.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /user/authsecret

Description

View the current user’s Google auth secret.

The auth secret can only be viewed if it has not been previously confirmed by the user.

This service requires the SELF_GET_AUTH_SECRET entitlement.

Responses

HTTP Code Description Schema

200

The user’s current auth secret is returned.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

  • User.AuthSecretAlreadyAccepted: The auth secret has already been accepted.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /user/authsecret

Description

Reset the current user’s Google auth secret.

A new authSecret is generated and stored for the current user, and the googleAuthSecretAccepted is set to false, enabling the user to view the new authSecret.

This service requires the SELF_RESET_AUTH_SECRET entitlement.

Responses

HTTP Code Description Schema

204

The new auth secret for the user is generated.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/authsecret/confirm

Description

Confirms the current user’s Google auth secret by validating a Google one-time key.

This api invalidates all sessions of a user.

This service requires the SELF_CONFIRM_AUTH_SECRET entitlement.

Parameters

Type Name Description Schema

Body

body
required

Google auth one-time key

Responses

HTTP Code Description Schema

204

The user’s auth secret was successfully confirmed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

  • Authentication.InvalidMFA: MFA auth used with the login was incorrect.

No Content

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

  • User.AuthSecretAlreadyAccepted: The auth secret has already been accepted.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /user/devices

Description

Get the current user’s devices.

This service requires the SELF_LIST_DEVICES entitlement.

Responses

HTTP Code Description Schema

200

User devices is returned

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

Tags

  • device

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/eula

Description

The user accepts the EULA (End User License Agreement) to gain access to the website. This api invalidates all sessions of a user excluding current session.

The SELF_ACCEPT_USER_EULA entitlement is required.

The following user attributes are set automatically - eulaApproval = true - eulaRevision = customer.eulaRevision

Responses

HTTP Code Description Schema

204

User EULA has been accepted.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/identifier

Description

Add an unverified email or mobile to the current user.

Only one new address (email or mobile) can be added per request. If both email and mobile are supplied in the same request, a User.ValidationError will be returned.

If the new address is already among this user’s unverified or verified emails or mobiles, a User.ValidationError will be returned with details indicating which field(s) contain the address.

If the system configuration areVerifiedAddressesIdentifiers is set to true, and the new address is already among another user’s identifier addresses, a User.Duplicate error will be returned.

The "SELF_ADD_EMAIL_OR_MOBILE" entitlement is required.

Parameters

Type Name Description Schema

Body

body
required

Body of self add email or mobile request

Responses

HTTP Code Description Schema

204

The unverified identifier was successfully added to this user.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/identifier/verification/confirm

Description

Verifies a user’s email or mobile based on a one-time password (OTP) or encrypted code sent to the address.

If the request code param is an OTP, the identifier param must also be supplied in order to identify the user.

Upon success, if the identifier was unverified, it will be upgraded from unverified to verified, and set as the default email or mobile if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles. No change occurs if the identifier was already verified.

An Authentication.InvalidCredentials error may be generated by any of the following conditions: - The user is not found by the supplied identifier or encrypted code - The supplied verification code is incorrect

A Request.Gone error may be generated by any of the following conditions: - No verification code has been generated for this user - The verification code has expired - The verification code has been removed because the maximum number of failed attempts has been exceeded

If the encrypted verification code is malformed, a User.VerificationCodeInvalid error will be generated.

Parameters

Type Name Description Schema

Body

body
required

Verify an identifier

Responses

HTTP Code Description Schema

204

The identifier was successfully verified.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

POST /user/identifier/verification/send

Description

Generates and sends a verification code to a user’s unverified or verified email or mobile.

If the destination resolves to an email, and the codeType request parameter is "E" (encrypted code), an encrypted verification code will be sent to the specified email. Otherwise, a plaintext OTP will be sent to the email or mobile. Note that if the destination is a mobile address, the code type will always be plaintext OTP.

If the destination is not among this user’s unverified or verified emails or mobiles, a User.AddressNotFound error will be returned.

The deliveryMode parameter must be supplied to specify which delivery mode to use. Allowable combinations are: - For email address: E (SMTP) - For mobile address: M (SMS) - For mobile address: V (VOICE)

If the deliveryMode is not valid for the destination identified, a User.OtpDeliveryModeInvalid error will be returned, with details describing the invalid combination.

The SELF_SEND_VERIFICATION_CODE entitlement is required.

Parameters

Type Name Description Schema

Body

body
required

Body of send verification code request

Responses

HTTP Code Description Schema

202

A verification code was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.OtpDeliveryModeInvalid: Invalid OTP delivery mode for the specified destination

404

Response details:

  • Code: Message

  • User.AddressNotFound: The requested address was not found among this user’s emails or mobiles.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/identifier/verification/session/confirm

Description

Verifies a user’s email or mobile based on a one-time password (OTP) sent to the address.

The user is identified by the session token provided.

Upon success, if the identifier was unverified, it will be upgraded from unverified to verified, and set as the default email or mobile if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles. No change occurs if the identifier was already verified.

If the supplied OTP code is incorrect, an Authentication.InvalidCredentials error will be generated.

If the supplied code is in the form of an encrypted code (used in other APIS), a Request.Invalid error will be generated.

A Request.Gone error may be generated by any of the following conditions: - No OTP has been generated for this user - The OTP has expired - The OTP has been removed because the maximum number of failed attempts has been exceeded

Parameters

Type Name Description Schema

Body

body
required

Verify an identifier with token to identify the user

Responses

HTTP Code Description Schema

204

The identifier was successfully verified.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/identifier/verify

Description

Verifies a user’s email or mobile based on a one-time password (OTP) or encrypted code sent to the address.

If the request code param is an OTP, the identifier param must also be supplied in order to identify the user.

Upon success, if the identifier was unverified, it will be upgraded from unverified to verified, and set as the default email or mobile if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles. No change occurs if the identifier was already verified. A Request.Invalid error may be generated by any of the following conditions:

  • forcePwdReset is false and password is provided

  • forcePwdReset is true and password is not provided

If configuration attribute withSession is true and body parameter issueSession is true, API will return a session token

An Authentication.InvalidCredentials error may be generated by any of the following conditions: - The user is not found by the supplied identifier or encrypted code - The supplied verification code is incorrect

A Request.Gone error may be generated by any of the following conditions: - No verification code has been generated for this user - The verification code has expired - The verification code has been removed because the maximum number of failed attempts has been exceeded

If the encrypted verification code is malformed, a User.VerificationCodeInvalid error will be generated.

Parameters

Type Name Description Schema

Body

body
required

Verify an identifier and conditionally issue session

Responses

HTTP Code Description Schema

200

The identifier was successfully verified and session token created.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

Example HTTP response

Response 200
{
  "token" : "1323123-3424324324-4234324324-123123432"
}

GET /user/identifiers/masked

Description

Returns an obfuscated view of a user’s verified and unverified emails and mobiles.

For each masked identifier, a randomly generated key is returned. This string may be used to reference the corresponding email or mobile as a destination, for requests to various "sending" APIs.

Responses

HTTP Code Description Schema

200

An obfuscated view of the user’s emails and mobiles is returned.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/identifiers/remove

Description

Removes requested identifiers or addresses from a user. Any valid identifier values supplied in the identifiers list in the request will be removed.

Any identifier from the following categories may be removed: - UID - verified emails - verified mobiles - identifier emails - identifier mobiles

Note: It is not possible to remove a user’s UUID.

If all of the supplied identifiers are found in the user record, 204 NO CONTENT will be returned. If at least one identifier is not found or is not removable, 200 OK will be returned; successfully removed identifiers are returned in the successful list of the response body, and unsuccessfully removed identifiers are returned in the unsuccessful list.

If a removed identifier corresponds to the user’s current default email or mobile, the default email or mobile will be adjusted to the first available verified email or mobile, respectively. If no verified emails or mobiles remain after removal, the default email or mobile will be removed as well.

If a removed identifier corresponds to the user’s current otpMfaDestination, the otpMfaDestination will be removed and otpSetupComplete attribute will be set to false.

Warning: It is possible to remove all of a user’s human-recognizable (non-UUID) identifiers. This could prevent future authentications and administrative actions unless the UUID is known to the user or acting admin.

A User.ValidationError will be thrown if the requested identifiers list meets any of the following conditions: - The list is empty - The list contains empty elements - The list contains duplicate elements - The list contains more than 10 elements

This service requires the SELF_REMOVE_IDENTIFIERS entitlement.

Parameters

Type Name Description Schema

Body

body
required

List of identifiers

Responses

HTTP Code Description Schema

200

Some requested identifiers could not be removed

204

All requested identifiers were successfully removed

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/kba

Description

Allows a user to set or change his or her KBA responses. Responses are case-insensitive.

The supplied response set will be validated according to the following rules: - No duplicate question identifers may be supplied - Question identifiers must be among the available, system-configured KBA questions - The system-configured kbaMinQuestionsPerUser sets the lower bound of the questions which must be answered for each user; no fewer than this number of questions must be answered. - The system-configured kbaMaxQuestionsPerUser sets the upper bound of the questions which may be answered for each user; no more than this number of questions must be answered. If any of these rules is violated, a User.ValidationError will be returned with a description of which rule was violated.

Upon success, the user’s response answers are hashed and stored.

A user’s KBA response set may be changed by simply supplying a new, complete set of KBA responses.

This service requires the SELF_SET_USER_KBA_RESPONSES entitlement.

Parameters

Type Name Description Schema

Body

body
required

KBA responses to be stored for this user

Responses

HTTP Code Description Schema

204

The KBA responses for the user are set.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • kba

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /user/kba/challenge

Description

Generates and returns a new set of KBA challenge questions for the user identified by the provided session token.

The selected set of questions is a subset of the questions to which a user has supplied responses during KBA setup. If the central KBA config allows a user to respond to more more questions than the minimum required, the minimum number will be randomly chosen from among the user’s responses; in this case, this API must be called prior to each KBA authentication. Otherwise, the challenge set will be equal to the full set of questions to which the user has supplied responses.

If a challenge set has already been generated for this user without a successful authentication, subsequent calls to this API will return the same set of questions; this forces a user to respond correctly to any pending challenge.

If the user has not previously stored responses to KBA questions, a User.KbaNotAccepted error will be thrown.

No entitlement is required to call this API.

Responses

HTTP Code Description Schema

200

KBA challenge questions have been set for the user.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

  • User.KbaNotAccepted: KBA responses have not been set for this user.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • kba

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/mfa/reset/verify

Description

Verifies an encrypted code or one-time password (OTP) to faciliate an MFA-reset flow. Upon success a session token is returned.

If the request code param is a plaintext OTP, the identifier and mfaMethod params must also be supplied in order to identify the user and MFA type.

If the email destination was unverified, the new session’s authenticationIdentifier will be set to the first available identifier of the user: uid, identifierEmail, identifierMobile.

An Authentication.InvalidCredentials error may be generated by any of the following conditions: - The user is not found by the supplied identifier or encrypted code - The supplied verification code is incorrect

A Request.Gone error may be generated by any of the following conditions: - No verification code has been generated for this user - The verification code has expired - The verification code has been removed because the maximum number of failed attempts has been exceeded

If the encrypted verification code is malformed, a User.VerificationCodeInvalid error will be generated.

If the provided code does not correspond to an allowable OTP action type for this API (e.g. a code intended for user activation was provided), an Authentication.InvalidMFA error will be returned.

Parameters

Type Name Description Schema

Body

body
required

MFA Reset

Responses

HTTP Code Description Schema

200

Code was successfully verified, a session token is returned in the response.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

  • Authentication.InvalidMFA: MFA auth used with the login was incorrect.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

PUT /user/mfamethod

Description

Allows a user to set his or her MFA method.

The MFA method must be chosen among the following values: - NONE - GOOGLE_AUTHENTICATION - OTP - KBA - DUO_AUTHN

This service requires the SELF_SET_MFA_METHOD entitlement.

Parameters

Type Name Description Schema

Body

body
required

MFA Method

Responses

HTTP Code Description Schema

204

User Mfa Method has been updated.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/otpmfa/change

Description

Changes a user’s otpMfaDestination and otpMethod.

The user must have completed MFA enrollment to make this request. The provided OTP code must be plain text and have been generated from the Send Verification Code API. The provided destination must be one of this user’s unverified/verified addresses. The provided otpMethod is allowable in combinations with destination if it is: - an email address: E (SMTP) - a mobile address: M (SMS) or V (VOICE)

Upon success, the otpMfaDestination and otpMethod are changed.

If the provided address is an email and no defaultEmail is set, it is promoted to defaultEmail. If it was a mobile and no defaultMobile is set, then it becomes defaultMobile.

If the address was unverified, it will be upgraded from unverified to verified, but no change occurs if the address was already verified.

If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles.

A Request.Gone error may be generated by any of the following conditions: - The verification code has expired - The OTP was generated from other action. - The verification code has been removed because the maximum number of failed attempts has been exceeded

An Authorization.Unauthorized error may be generated if this API was somehow triggered by a user who has not completed MFA setup.

A Request.Invalid error may be generated if: - The provided OTP MFA Change destination did not match the identifier issued by the OTP code.

A User.OtpDeliveryModeInvalid error may be generated if: - The otpMethod is not among the allowable combinations described above.

A User.NotFound error may be generated if the OTP generated address is not included in user data.

Parameters

Type Name Description Schema

Body

body
required

Body of Self Change Otp MFA destination request

Responses

HTTP Code Description Schema

204

OTP MFA destination change was successfully completed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.OtpDeliveryModeInvalid: Invalid OTP delivery mode for the specified destination

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/otpmfa/confirm

Description

Confirms a user’s email or mobile based on a one-time password (OTP) sent to the address.

The provided OTP code must have been generated and matched with the user’s otpMfaDestination.

Upon success, the otpSetupComplete flag is set to true.

If the address is an email and no defaultEmail is set, it is promoted to defaultEmail. If it was a mobile and no defaultMobile is set, then it becomes defaultMobile.

If the address was unverified, it will be upgraded from unverified to verified, but no change occurs if the address was already verified.

If the system configuration areVerifiedAddressesIdentifiers is set to true, the email or mobile will also be added to the user’s identifier emails or mobiles.

A Request.Gone error may be generated by any of the following conditions: - The verification code has expired - The OTP was generated from other action. - The verification code has been removed because the maximum number of failed attempts has been exceeded

A Request.Invalid error may be generated if otpMfaDestination was not set or not matched with provided OTP address.

A User.NotFound error may be generated if the address to which the OTP had been sent is not included in user data.

Parameters

Type Name Description Schema

Body

body
required

Body of Self Confirm OTP MFA Setup request

Responses

HTTP Code Description Schema

204

OTP MFA setup was successfully completed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Provided code is not a valid verification code.

Response details:

  • Code : Message

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/otpmfa/setup

Description

Begins OTP authentication setup process for a user.

This API operates in three modes, based on attributes present in the request: - Mode 1: destination, destinationType and otpMethod are required. Upon success, the user’s OTP destination and method attributes are set. An OTP is sent to the requested destination, according to the otpMethod requested. If the destination does not already exist among the user’s addresses, it will be added to the user’s unverified emails or mobiles, according to the destinationType requested. - Mode 2: otpMethod and maskIdentifierKey are required. The "Get Masked Identifiers" API must have been called prior to using this mode; the maskIdentifierKey references one of the identifier references returned by that API. An OTP is generated and sent to the referenced destination, according to the otpMethod requested. If the requested key does not match any stored destination, an Address.NotFound error is returned. - Mode 3: No inputs are allowed. An OTP is generated and sent to the user’s stored OTP destination, according to the stored otpMethod. If no OTP destination and method are found, a Request.Invalid error is returned with details identifying the missing attribute.

In all cases, upon success any previously set otpSetupComplete flag is set to false.

Parameters

Type Name Description Schema

Body

body
required

Body of Self Setup OTP MFA request

Responses

HTTP Code Description Schema

202

An OTP was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /user/password

Description

Changes a user’s password, using a session and the old password for verification.

This service requires the SELF_CHANGE_PASSWORD entitlement.

Parameters

Type Name Schema

Body

body
required

Responses

HTTP Code Description Schema

204

The user’s password was successfully changed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

422

Response details:

  • Code : Message

  • User.InvalidOldPassword: Old password is invalid.

  • User.InvalidNewPassword: New password is invalid (new password is the same as old one or does not match password policy rules)

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/password/reset/confirm

Description

Confirm password reset using received code. Upon success: - The user is activated - The user’s password is set - All existing sessions of the user are invalidated - The email to which the code was sent will be upgraded from unverified to verified - The email to which the code was sent will be set as the default email if none already exists - If the system configuration areVerifiedAddressesIdentifiers is set to true, the email will be added to the user’s identifier emails.

If the system configuration allowResetViaUnverifiedAddress is set to false and the email to which the code was sent was unverified, a User.ValidationError will be returned.

A User.VerificationCodeInvalid error will be returned in any of the following scenarios: - The supplied code is malformed - The supplied code corresponds to a missing or deleted user - A new code has been sent, superseding the supplied code

A Request.Gone error will be returned in any of the following scenarios: - No code has been generated for this user - The code has expired - The code has been removed because the maximum number of failed attempts has been exceeded

Parameters

Type Name Description Schema

Body

body
required

Password Reset

Responses

HTTP Code Description Schema

200

Password was re-set successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

POST /user/password/reset/request

Description

Requests a password reset process start (sending an email with reset link).

Only the user’s UID will be accepted as an identifier. Once the user is identified, their defaultEmail address will be used as the destination of the password-reset email.

For security purposes, a success status will be returned for all valid requests, even if the identifier does not correspond to an existing user’s UID.

The identified user’s current mfaMethod will also be included in the password-reset link to facilitate multi-factor authentication during the confirmation step.

Parameters

Type Name Schema

Body

body
required

Responses

HTTP Code Description Schema

202

Accepted; an email should arrive in the provided email’s inbox soon.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

Tags

  • user

PUT /user/session/customer

Description

Set the user’s customer for the current user session (session.customer).

This service requires the SELF_UPDATE_USER_CUSTOMER_IN_SESSION entitlement.

The specified customer must be in the customers list associated with this user, unless the ADMIN_ALL_CUSTOMERS entitlement is owned.

Process Outline - If user does not have the SELF_UPDATE_USER_CUSTOMER_IN_SESSION entitlement - Return Authorization.Unauthorized - If the user does not have the ADMIN_ALL_CUSTOMERS entitlement - Get the user record.customers - If the requested customer is not in the record.customers list - Return Authorization.Unauthorized - Replace the user session.customer attribute with the requested customer

Parameters

Type Name Description Schema

Body

body
required

Customer identifier (CID)

Responses

HTTP Code Description Schema

204

User session is updated.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code: Message

  • Customer.NotFound: Customer with the given ID does not exist.

No Content

Tags

  • customer

  • session

Security

Type Name

apiKey

PUT /user/uid

Description

Changes a user’s UID. If successful, the user’s sessions will be invalidated.

The UID may not be email or mobile formatted; otherwise, a User.ValidationError will be returned.

If the provided UID already exists among this or another user’s identifiers, a User.Duplicate error will be returned.

This service requires the SELF_CHANGE_UID entitlement.

Parameters

Type Name Schema

Body

body
required

Responses

HTTP Code Description Schema

204

The user’s UID was successfully changed.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /user/verificationcode/inspect

Description

Returns information about an encrypted verification code which was generated for a user.

The verification code is not consumed when this API is called, and may be reused for future API calls.

A User.VerificationCodeInvalid error will be returned in any of the following scenarios: - The supplied code is malformed - The supplied code corresponds to a missing or deleted user - A new code has been sent, superseding the supplied code

A Request.Gone error will be returned in any of the following scenarios: - No code has been generated for this user - The code has expired - The code has been removed because the maximum number of failed attempts has been exceeded - The code corresponds to an action which is not recognized by this API

Parameters

Type Name Description Schema

Body

body
required

Body of Inspect Verification Code request

Responses

HTTP Code Description Schema

200

The verification code is valid.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

422

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • User.VerificationCodeInvalid: Verification code is not valid

Tags

  • user

POST /users

Description

Create a new user

If uid is provided, it may not be email or mobile formatted; otherwise, a User.ValidationError will be returned. If uuid is provided, and application configuration flag allowUserUuid is set on true it is possible to set it instead of default random. Setting uuid in this way is not recommended and was introduced as client requirement.

If configured, an activation code may be generated and sent to the new user, based on any unverifiedEmails and unverifiedMobiles provided: - If email addresses are provided but no mobiles, an activation link will be emailed to the user’s first unverifiedEmail - If mobile numbers are provided but no emails, an activation OTP will be sent to the user’s first unverifiedMobile via SMS - If mobile numbers are provided and otpMethod = 'V' is also provided, an activation OTP will be sent to the user’s first unverifiedMobile via voice message - If email and mobile addresses are provided, the otpMethod will be used to determine the destination and delivery method ('E' = email, 'M' = SMS, 'V' = voice message).

This service requires the ADMIN_CREATE_USER entitlement.

Apart from uid, either unverifiedMobiles or unverifiedEmails is required.

Parameters

Type Name Description Schema

Body

body
required

Create User object

Responses

HTTP Code Description Schema

201

User was created, user object is returned in response.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /users

Description

Return a list of users whom the current user can see using filter / paging.

Parameters

Type Name Description Schema

Query

filter
optional

Filter the results by the given field’s value.

The format of the filter field is defined as follows:

FIELD_NAME:FIELD_VALUE,FIELD_NAME2:FIELD_VALUE_2

For example: firstName:Joe,lastName:*ski searches for a user with first name Joe, whose last name has a ski suffix.

Asterisks are supported for substring searches.

string

Query

limit
optional

Limits the number of returned items (value 20 by default).

integer

Query

offset
optional

When an offset n is used, items starting from the n-th are returned (value 0 by default).

integer

Query

sort
optional

Sort the results by the given field.

If an ascending sort is required, specify the attribute name (e.g. firstName).

If a descending sort is required, specify the attribute name with a - prefix (e.g. -firstName).

If a multiple column sort is required, add a comma separator between the attribute names (e.g. lastName,firstName).

Example: lastName,firstName

string

Responses

HTTP Code Description Schema

200

The results for a user search matching the search criteria.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

GET /users/{identifier}

Description

Get a user’s record from the user store

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

200

User was retrieved.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /users/{identifier}

Description

Updates user’s attributes

If uid is provided, it may not be email or mobile formatted; otherwise, a User.ValidationError will be returned.

If uid is updated successfully, the target user’s sessions will be invalidated. If an attempt to update uid is made but already exists among this or another user’s identifiers, a User.Duplicate error will be returned.

If defaultEmail or defaultMobile is provided but is not among the this user’s verified or identifier emails or mobiles, a User.EmailNotFound or User.MobileNotFound error will be returned, respectively.

This service requires the ADMIN_UPDATE_USER entitlement.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Update User object

Responses

HTTP Code Description Schema

200

User was updated, user object returned in response.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

  • User.EmailNotFound: The requested address was not found among this user’s emails.

  • User.MobileNotFound: The requested address was not found among this user’s mobiles.

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /users/{identifier}

Description

Invalidates all sessions of a user and removes him/her from the datastore.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

Invalidated all sessions and deleted user from datastore.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /users/{identifier}/activation

Description

Activate the user identified by identifier directly, allowing him/her to authenticate.

The ADMIN_ACTIVATE_USER entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

User activated successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /users/{identifier}/activation

Description

Deactivate the user account. This invalidates all sessions of a user and prevents the user from authenticating.

The ADMIN_DEACTIVATE_USER entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

Invalidate all sessions and Overlay tokens of a user and prevent the user from authenticating.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /users/{identifier}/activation/mobile

Description

Activates user account using an OTP sent to a mobile device.

Upon success, the user will be activated. If password is provided and forcePwdReset is true, password is updated. If configuration attribute withSession is true and body parameter issueSession is true, API will return session token

Additionally, the mobile number to which the OTP was sent will be upgraded from unverified to verified, and set as the default mobile if none already exists. If the system configuration areVerifiedAddressesIdentifiers is set to true, the mobile will be added to the user’s identifier mobiles as well.

An Authentication.InvalidCredentials error may be generated by any of the following conditions: - The user is not found by the supplied identifier - The supplied OTP is incorrect - The user is already active

A Request.Gone error may be generated by any of the following conditions: - No OTP has been generated for this user - The OTP has expired - The OTP has been removed because the maximum number of failed attempts has been exceeded

A Request.Invalid error may be generated by any of the following conditions: - forcePwdReset is false and password is provided - forcePwdReset is true and password is not provided

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Activate account by mobile

Responses

HTTP Code Description Schema

200

Account activated successfully and session was created

204

Account activated successfully.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.InvalidCredentials: Invalid credentials.

410

Response details:

  • Code: Message

  • Request.Gone: Link expired and is no longer available at this location.

Tags

  • user

Example HTTP response

Response 200
{
  "token" : "1323123-3424324324-4234324324-123123432"
}

POST /users/{identifier}/activation/send

Description

Generates and sends an activation link to an inactive user’s unverified email (via SMTP), or a one-time password ("OTP") to a user’s unverified mobile (via SMS).

The destination address is based on the destination and deliveryMode request parameters, as well as the user’s existing unverified emails and mobiles and the otpMethod attribute: - If destination is specified and corresponds to one of the user’s unverified emails or mobiles, the message is sent to this destination. - If deliveryMode is specified, the message is sent to the user’s first unverified email ('E') or mobile ('M' or 'V') - If neither is specified, the message is sent to the user’s first unverified email or mobile based on the user’s otpMethod - If neither is specified and the user’s otpMethod is not set, the user’s first unverified email will be used.

If the user is not found or belongs to a different customer than the current admin’s current session customer, a User.NotFound error will be returned.

If the user is already active, a User.Active error will be returned.

If the destination parameter is specified but the user has no such unverified email or mobile, a User.AddressNotFound error will be returned.

If the destination type resolves to email or mobile but the user has no unverified address of that type, a User.EmailNotFound or User.MobileNotFound error will be returned, respectively.

The ADMIN_SEND_ACTIVATION_MESSAGE entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Body of send activation message request

Responses

HTTP Code Description Schema

202

An activation message was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

  • User.Active: User account is active.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code: Message

  • User.NotFound: User with the given ID does not exist

  • User.EmailNotFound: The requested address was not found among this user’s emails.

  • User.MobileNotFound: The requested address was not found among this user’s mobiles.

  • User.AddressNotFound: The requested address was not found among this user’s emails or mobiles.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /users/{identifier}/apiKey

Description

Reset the current user’s API key

  • If admin does not have entitlement ADMIN_RESET_USER_API_KEY

  • Return Authorization.Unauthorized

  • Get user record

  • If admin customer does match user customer

  • Return User.NotFound

  • Reset user API key

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

200

The user’s API key was successfully reset.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

PUT /users/{identifier}/authsecret

Description

Resets the Google auth secret of the user identified by identifier.

A new authSecret is generated and stored for the target user, and the googleAuthSecretAccepted is set to false, enabling the user to view the new authSecret.

This service requires the ADMIN_RESET_AUTH_SECRET entitlement.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

The new auth secret for the user is generated.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /users/{identifier}/eula

Description

Admin resets a user acceptance of the EULA (End User License Agreement). This will be required when the EULA is updated and needs to be accepted again by the user.

The ADMIN_RESET_USER_EULA entitlement is required.

The following user attribute is set automatically - eulaApproval = false

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

User EULA has been reset to not accepted.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /users/{identifier}/identifier

Description

Add an unverified email or mobile to a user record.

Only one new address (email or mobile) can be added per request. If both email and mobile are supplied in the same request, a User.ValidationError will be returned.

If the new address is already among the target user’s unverified or verified emails or mobiles, a User.ValidationError will be returned with details indicating which field(s) contain the address.

If the isIdentifier parameter is true, this address will be added as an identifier email or mobile.

If the system configuration areVerifiedAddressesIdentifiers is set to true or the isIdentifier request parameter is true, and the new address is already among another user’s identifier addresses, a User.Duplicate error will be returned.

The "ADMIN_ADD_EMAIL_OR_MOBILE" entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Body of add email or mobile request

Responses

HTTP Code Description Schema

204

The unverified identifier was successfully added to the specified user.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

409

Response details:

  • Code : Message

  • User.Duplicate: At least one of the provided user identifiers is not unique.

  • Details:

  • duplicateIdentifiers field consists of list of fields which should be unique, but there was already a user with that identifier

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /users/{identifier}/identifiers/remove

Description

Removes requested identifiers or addresses from the identified user. Any valid identifier values supplied in the identifiers list in the request will be removed.

Any identifier from the following categories may be removed: - UID - verified emails - verified mobiles - identifier emails - identifier mobiles

Note: It is not possible to remove a user’s UUID.

If all of the supplied identifiers are found in the user record, 204 NO CONTENT will be returned. If at least one identifier is not found or is not removable, 200 OK will be returned; successfully removed identifiers are returned in the successful list of the response body, and unsuccessfully removed identifiers are returned in the unsuccessful list.

If a removed identifier corresponds to the user’s current default email or mobile, the default email or mobile will be adjusted to the first available verified email or mobile, respectively. If no verified emails or mobiles remain after removal, the default email or mobile will be removed as well.

If a removed identifier corresponds to the user’s current otpMfaDestination, the otpMfaDestination will be removed and otpSetupComplete attribute will be set to false.

Warning: It is possible to remove all of a user’s human-recognizable (non-UUID) identifiers. This could prevent future authentications and administrative actions unless the UUID is known to the user or acting admin.

A User.ValidationError will be thrown if the requested identifiers list meets any of the following conditions: - The list is empty - The list contains empty elements - The list contains duplicate elements - The list contains more than 10 elements

The target user must belong to the admin’s current customer. Otherwise, a User.NotFound error will be returned.

This service requires the ADMIN_REMOVE_IDENTIFIERS entitlement.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

List of identifiers

Responses

HTTP Code Description Schema

200

Some requested identifiers could not be removed

204

All requested identifiers were successfully removed

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /users/{identifier}/kba

Description

Resets the KBA responses of the user identified by identifier.

In addition, the user’s KBA acceptance status is reset to false, and any pending questions to be answered for authentication are cleared.

This service requires the ADMIN_RESET_USER_KBA entitlement.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

The KBA responses for the user are cleared.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • kba

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /users/{identifier}/mfa/reset

Description

Generates and sends an MFA-reset code to the identified user’s unverified or verified email (via SMTP) or mobile (via SMS or VOICE). The code is only valid for the specified mfaMethod.

If the destination resolves to an email, and the codeType request parameter is "E" (encrypted code), an encrypted verification code will be sent to the specified email. Otherwise, a plaintext OTP will be sent to the address. Note that if the destination is a mobile address, the code type will always be plaintext OTP.

If the destination is not among this user’s unverified or verified emails or mobiles, a User.AddressNotFound error will be returned.

The deliveryMode parameter must be supplied to specify which delivery mode to use. Allowable combinations are: - For email address: E (SMTP) - For mobile address: M (SMS) - For mobile address: V (VOICE)

If the deliveryMode is not valid for the destination identified, a User.OtpDeliveryModeInvalid error will be returned, with details describing the invalid combination.

If the mfaMethod does not correspond to one of the available system MFA types, a User.ValidationError will be returned.

The ADMIN_REQUEST_RESET_MFA_CREDENTIALS entitlement is required.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Request reset code for a user’s credentials of a particular MFA type

Responses

HTTP Code Description Schema

202

An MFA-reset code was successfully generated and sent to the user’s email or mobile.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code: Message

  • User.AddressNotFound: The requested address was not found among this user’s emails or mobiles.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

DELETE /users/{identifier}/otpmfa/reset

Description

Admin resets a user’s OTP MFA status

The ADMIN_RESET_OTP_MFA_ENROLLMENT entitlement is required.

The following user attributes are set automatically - otpSetupComplete = false - otpMfaDestination is removed - otpMethod is removed

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Responses

HTTP Code Description Schema

204

User’s OTP MFA Enrollment has been reset.

No Content

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code : Message

  • User.NotFound: User with the given ID does not exist

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /users/{identifier}/password/reset

Description

Requests a password reset process start (sending an email with reset link) for a given user.

The email will be sent to a user’s defaultEmail. If none exists, a Request.Invalid error will be returned.

This service requires the ADMIN_REQUEST_RESET_PASSWORD entitlement.

The identified user’s current mfaMethod will also be included in the password-reset link to facilitate multi-factor authentication during the confirmation step.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Responses

HTTP Code Description Schema

202

Accepted; an email should arrive in the provided email’s inbox soon.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

423

Response details:

  • Code: Message

  • ResetPassword.Locked: The maximum number of reset password attempts has been reached.

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

POST /users/{identifier}/password/resetfromalternate

Description

Requests a password reset process start (sending an email with reset link).

The destination email is specified in the request body. The user to be activated is specified by the identifier path parameter.

This service requires the ADMIN_REQUEST_RESET_PASSWORD_FROM_ALTERNATE entitlement.

Upon success, the user is deactivated, forcing password reset (or administrative reactivation) before the user can login again.

The identified user’s current mfaMethod will also be included in the password-reset link to facilitate multi-factor authentication during the confirmation step.

Parameters

Type Name Description Schema

Path

identifier
required

Unique identifier of a user.

UUID is used by default. However, if the identifier is prefixed by a valid identifier attribute with a trailing :: the system will use it to search for a user with that matching attribute.

Examples: * 34324-213123-21343243 will search by UUID * email::joe@doe.com will search by the provided email. * uid::joedoe will search by the provided uid. * mobile::1-222-333-444 will search by the provided mobile. * any::joedoe will search by any of the above identifiers.

You are recommended to use UUID whenever possible.

string

Body

body
required

Request Reset Password with Alternate Email object

Responses

HTTP Code Description Schema

202

Accepted; an email should arrive in the provided email’s inbox soon.

400

Response details:

  • Code : Message

  • Request.Invalid: The request could not be understood by the server due to malformed syntax.

401

Response details:

  • Code : Message

  • Authentication.Unauthenticated: Not authenticated. This API is only available for authenticated users.

403

Response details:

  • Code : Message

  • Authorization.Unauthorized: Not authorized. This API is only available for authorized users.

404

Response details:

  • Code: Message

  • Customer.NotFound: Customer with the given ID does not exist.

No Content

422

Validation error; some of the provided attributes did not pass the validation rules.

Response details:

  • Code: Message

  • User.ValidationError: Some of the attributes did not pass the validation.

  • Details Each of the fields might return one of the following validation error codes.

  • ValidationError.Required

  • ValidationError.Invalid

Tags

  • user

Security

Type Name

oauth2

oauth2

oauth2

apiKey

Definitions

ActivateByMobile

Name Description Schema

code
optional

OTP sent to a mobile device

string

issueSession
optional

Optional property to force issue session

boolean

password
optional

New Password

string

AddEmailOrMobileRequest

Name Description Schema

email
optional

New unverified email to add

string

isIdentifier
optional

Whether this address is an identifier for the user
Default : false

boolean

mobile
optional

New unverified mobile to add

string

AliveStatus

Name Description Schema

message
optional

Description of service status if available

string

ApiKeyReset

Name Description Schema

apiKey
optional

User API Key

string

AuthSecretResponse

Name Description Schema

googleAuthSecret
optional

Secret Key for Google Authenticator method

string

ChangePassword

Name Schema

newPassword
optional

string

oldPassword
optional

string

ChangeUid

Name Schema

uid
optional

string

ConfirmAuthSecretRequest

Name Description Schema

googlekey
optional

Google Authenticator one time key

string

CreateUser

Name Description Schema

address
optional

Street Address

string

city
optional

City

string

country
optional

Country

string

dob
optional

Date Of Birth

string

firstName
required

First name

string

gender
optional

Gender

string

lastName
required

Last name

string

locale
optional

Locale (e.g. en_GB)

string

locality
optional

County or Region

string

mfaMethod
optional

Multi-Factor Authentication method. If not set, no multi-factor authentication is used.

enum (NONE, OTP, KBA, GOOGLE_AUTHENTICATION, DUO_AUTHN)

organization
optional

Organization unit

string

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

password
optional

Password to be used for authentication

string

postalCode
optional

Postal Code

string

status
optional

User activation status

enum (active, inactive, banned, unverified)

uid
optional

Unique identifier for this user

string

unverifiedEmails
optional

Unverified emails

< string > array

unverifiedMobiles
optional

Unverified Mobile Numbers

< string > array

uuid
optional

Universally unique identifier of a user for this user

string

CreateUserViaJwt

Name Description Schema

cid
required

Customer ID

string

email
required

Users email

string

entitlementGroups
required

User entitlement groups

< string > array

entitlements
required

User entitlements

< string > array

firstName
optional

First name

string

lastName
optional

Last name

string

status
optional

User activation status

enum (active, inactive, banned, unverified)

uid
optional

Unique identifier for this user

string

DuplicateUserError

Name Description Schema

code
optional

Unique internal error code

string

details
optional

message
optional

Description of the error code

string

details

Name Description Schema

duplicateIdentifiers
optional

A list of the identifiers which were duplicates for the request.

< string > array

Error

Name Description Schema

code
optional

Unique internal error code

string

details
optional

Optional. Varies depending on the specific use case - details are determined by the particular API call.

object

message
optional

Description of the error code

string

FilteredEntitlementNames

List of entitlement names

Name Description Schema

completeEntitlements
optional

List of effective entitlements with groups unwrapped

< string > array

entitlements
optional

List of entitlements without groups

< string > array

GroupsWithCompleteGroupsNamesList

List of group names

Name Description Schema

completeGroups
optional

List of effective entitlement groups available to the customer

< string > array

groups
optional

List of entitlement groups owned by the customer

< string > array

Identifiers

List of identifiers

Name Schema

identifiers
optional

< string > array

IdentifiersRemovedResponse

Name Description Schema

successful
optional

A list of identifiers which were successfully removed

< string > array

unsuccessful
optional

A list of identifiers which were not successfully removed

< string > array

InspectVerificationCodeRequest

Name Description Schema

code
required

Encrypted verification code sent to an email

string

InspectVerificationCodeResponse

Name Description Schema

firstName
optional

First name

string

forcePwdReset
optional

Whether the user must reset their password
Default : false

boolean

lastName
optional

Last name

string

KbaChallengeQuestions

Name Description Schema

kbaChallengeQuestions
optional

A list of KBA question identifiers to which the user must respond for authentication

< string > array

KbaConfig

Name Description Schema

kbaConfigId
optional

Unique identifier for a KBA configuration
Example : "default"

string

kbaMaxQuestionsPerUser
optional

Maximum number of KBA questions which may be stored by each user
Example : 4

integer

kbaMinQuestionsPerUser
optional

Minimum number of KBA questions to be answered by each user
Example : 2

integer

kbaQuestionSet
optional

Available questions for KBA
Example : [ { "questionIdentifier" : "q1", "questionPhrase" : "In what city was your high school?" }, { "questionIdentifier" : "q2", "questionPhrase" : "What is the last name of your best friend in high school?" } ]

< kbaQuestionSet > array

kbaQuestionSet

Name Description Schema

questionIdentifier
optional

Unique identifier for a KBA question

string

questionPhrase
optional

Display phrase for a KBA question

string

KbaResponseSetRequest

Name Description Schema

kbaResponseSet
optional

KBA response questions and answers

< kbaResponseSet > array

kbaResponseSet

Name Description Schema

questionIdentifier
optional

Unique identifier for a KBA question

string

response
optional

User’s plaintext answer to a KBA question

string

MfaResetCredentialsVerification

Name Description Schema

code
required

Verification code

string

identifier
optional

User identifier without prefix. Required if plaintext OTP is submitted

string

mfaMethod
optional

Type of MFA credential to reset. Required if plaintext OTP is submitted

enum (GOOGLE_AUTHENTICATION, OTP, KBA)

OtpSessionCreated

Name Schema

token
optional

string

PasswordResetConfirmation

Name Description Schema

code
optional

Verification code

string

googlekey
optional

Google Authenticator one time key

string

password
optional

New Password

string

RegisterUser

Name Description Schema

email
optional

Default email address

string

firstName
optional

First name

string

kbaResponseSet
optional

KBA response questions and answers

< kbaResponseSet > array

lastName
optional

Last name

string

mfaMethod
optional

Multi-Factor Authentication method. If not set, no multi-factor authentication is used.

enum (NONE, OTP, KBA, GOOGLE_AUTHENTICATION, DUO_AUTHN)

mobile
optional

Default mobile phone number

string

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

password
optional

Password to be used for authentication

string

uid
optional

Unique identifier for this user

string

verificationMethod
optional

Verification method (required)

enum (EMAIL, SMS)

kbaResponseSet

Name Description Schema

questionIdentifier
optional

Unique identifier for a KBA question

string

response
optional

User’s plaintext answer to a KBA question

string

RequestResetMfaCredentials

Name Description Schema

codeType
optional

Type of code to generate if destination is email ('P' = plaintext OTP, 'E' = encrypted verification code). Default 'P'.

enum (P, E)

deliveryMode
optional

Type of destination to use for message sending ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

destination
optional

Email or mobile address to use for message sending. Must be among this user’s emails or mobiles.

string

mfaMethod
optional

Type of MFA credential to reset (required)

enum (GOOGLE_AUTHENTICATION, OTP, KBA)

RequestResetPasswordAlternateRequest

Name Description Schema

destinationEmail
optional

Email to which activation / reset password link should be sent.

string

uiService
optional

The UI service to use for activation / reset password links

string

ResetPassword

Name Description Schema

email
optional

Email to which the password reset code should be sent

string

RetrievedSelfUserObject

Name Description Schema

address
optional

Street Address

string

apiKey
optional

User API Key

string

city
optional

City

string

completeEntitlements
optional

User entitlements with groups extended

< string > array

country
optional

Country

string

customer
optional

Customer CID

string

defaultEmail
optional

Default email address

string

defaultMobile
optional

Default mobile phone number

string

dob
optional

Date Of Birth

string

entitlementGroups
optional

User entitlement groups

< string > array

entitlements
optional

User entitlements

< string > array

eulaApproval
optional

EULA (End User License Agreement) acceptance status

string

eulaRevision
optional

EULA (End User License Agreement) Revision

string

firstName
optional

First name

string

forcePwdReset
optional

Force Password Reset

boolean

gender
optional

Gender

string

googleAuthSecretAccepted
optional

Whether the Google Authenticator secret has been seen and accepted

string

identifierEmails
optional

Identifier emails

< string > array

identifierMobiles
optional

Identifier Mobile Numbers

< string > array

kbaQuestionSet
optional

KBA questions for which responses have been given

< string > array

lastName
optional

Last name

string

locale
optional

Locale (e.g. en_GB)

string

locality
optional

County or Region

string

mfaMethod
optional

Multi-Factor Authentication method. If not set, no multi-factor authentication is used.

enum (NONE, OTP, KBA, GOOGLE_AUTHENTICATION, DUO_AUTHN)

newUserStatus
optional

New user status

boolean

organization
optional

Organization unit

string

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

otpMfaDestination
optional

User’s destination for authentication by OTP

string

otpSetupComplete
optional

Whether a user has completed OTP MFA setup

boolean

postalCode
optional

Postal Code

string

status
optional

User activation status

enum (active, inactive, banned, unverified)

uid
optional

Unique identifier for this user

string

unverifiedEmails
optional

Unverified emails

< string > array

unverifiedMobiles
optional

Unverified Mobile Numbers

< string > array

uuid
optional

Globally unique identifier

string

verifiedEmails
optional

Verified emails

< string > array

verifiedMobiles
optional

Verified Mobile Numbers

< string > array

SelfAddEmailOrMobileRequest

Name Description Schema

email
optional

New unverified email to add

string

mobile
optional

New unverified mobile to add

string

SelfChangeOtpMfaDestination

Name Description Schema

destination
optional

Email or mobile address to use for OTP sending. Format must match the requested otpMethod

string

otp
optional

OTP value

string

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

SelfConfirmOtpMfaSetup

Name Description Schema

otp
optional

OTP value

string

SelfRegisterResponseObject

Name Description Schema

uuid
optional

Globally unique identifier

string

SelfSendActivationMessageRequest

Name Description Schema

destination
optional

Email or mobile address to use for message sending. Must be among this user’s unverified emails or mobiles.

string

destinationType
optional

Type of destination to use for message sending ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

identifier
optional

Identifier of the user for user lookup

string

SelfSendAuthenticationOtpRequest

Name Description Schema

deliveryMode
optional

Type of destination to use for OTP sending ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

destination
optional

Email or mobile address to use for OTP sending. Must be among this user’s verified emails or mobiles.

string

maskIdentifierKey
optional

Key corresponding to a previously masked identifier address

string

SelfServiceActivateAccountByEmail

Name Description Schema

code
optional

Verification code

string

issueSession
optional

Optional property to force issue session

boolean

password
optional

New Password

string

SelfServiceResetPassword

Name Description Schema

identifier
optional

UID of the user to whom the password-reset email will be sent

string

SelfSetMfaMethodRequest

Name Description Schema

mfaMethod
optional

MFA Method

enum (NONE, GOOGLE_AUTHENTICATION, OTP, KBA, DUO_AUTHN)

SelfSetupOtpMfaRequest

Name Description Schema

destination
optional

Email or mobile address to use for OTP sending. Format must match the requested destinationType

string

destinationType
optional

Type of destination to use for OTP sending ('E' = email, 'M' = mobile)

enum (E, M)

maskIdentifierKey
optional

Alternative destination reference if destination was previously masked

string

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

SelfUpdateUser

Name Description Schema

address
optional

Street Address

string

city
optional

City

string

country
optional

Country

string

defaultEmail
optional

Default email address

string

defaultMobile
optional

Default mobile phone number

string

dob
optional

Date Of Birth

string

firstName
optional

First name

string

gender
optional

Gender

string

lastName
optional

Last name

string

locale
optional

Locale (e.g. en_GB)

string

locality
optional

County or Region

string

mfaMethod
optional

Multi-Factor Authentication method. If not set, no multi-factor authentication is used.

enum (NONE, OTP, KBA, GOOGLE_AUTHENTICATION, DUO_AUTHN)

newUserStatus
optional

New user status

boolean

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

postalCode
optional

Postal Code

string

SelfVerifyIdentifier

Name Description Schema

code
optional

OTP sent to an email or mobile

string

SendActivationMessageRequest

Name Description Schema

deliveryMode
optional

Type of destination to use for message sending ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

destination
optional

Email or mobile address to use for message sending. Must be among this user’s unverified emails or mobiles.

string

SendInfoObject

Name Schema

sendInfo
optional

sendInfo

Name Description Schema

codeType
optional

Type of code generated

enum (PLAINTEXT, ENCRYPTED)

deliveryMode
optional

Means by which the message was transmitted

enum (EMAIL, SMS)

destination
optional

Email, mobile, address etc. used for message delivery

string

destinationType
optional

Type of user address used for message delivery

enum (EMAIL, MOBILE)

SendVerificationCodeRequest

Name Description Schema

codeType
optional

Type of code to generate if destination is email ('P' = plaintext OTP, 'E' = encrypted verification code). Default 'P'.

enum (P, E)

deliveryMode
optional

Type of destination to use for OTP sending ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

destination
optional

Email or mobile address to use for message sending. Must be among this user’s unverified or verified emails or mobiles.

string

Session

Name Description Schema

authLevel
optional

Current authentication level of the user

integer (int32)

authenticationIdentifier
optional

Identifier which was originally used in the creation of this session

string

customer
optional

CID of the customer to which this user is assigned

string

customerAlias
optional

Alias of the customer to which this user is assigned

string

defaultCustomer
optional

CID of the customer to which this user is assigned. Does not change even if session customer changes.

string

defaultCustomerStatus
optional

Activation status of the customer to which this user is assigned. Does not change even if session customer changes.

string

deviceUuid
optional

UUID of the device

string

entitlementGroups
optional

List of entitlement groups the user has within the current session

< string > array

entitlements
optional

List of entitlements the user has within the current session

< string > array

firstName
optional

User’s first name i.e. Joe

string

googleAuthSecretAccepted
optional

Whether this user has accepted his/her Google authSecret

string

lastName
optional

User’s last name i.e. Doe

string

locale
optional

Locale of the user

string

mfaMethod
optional

User’s MFA method

string

uid
optional

Unique identifier of the user - i.e. login

string

uuid
optional

UUID of the user

string

SessionCreated

Name Schema

deviceToken
optional

string

token
optional

string

SessionUpdateCustomerRequest

Name Description Schema

customer
optional

Customer ID

string

UpdateUser

Name Description Schema

address
optional

Street Address

string

city
optional

City

string

country
optional

Country

string

defaultEmail
optional

Default email address

string

defaultMobile
optional

Default mobile phone number

string

dob
optional

Date Of Birth

string

firstName
optional

First name

string

gender
optional

Gender

string

lastName
optional

Last name

string

locale
optional

Locale (e.g. en_GB)

string

locality
optional

County or Region

string

mfaMethod
optional

Multi-Factor Authentication method. If not set, no multi-factor authentication is used.

enum (NONE, OTP, KBA, GOOGLE_AUTHENTICATION, DUO_AUTHN)

newUserStatus
optional

New user status

boolean

organization
optional

Organization unit

string

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

postalCode
optional

Postal Code

string

uid
optional

Unique identifier for this user

string

User

Name Description Schema

address
optional

Street Address

string

city
optional

City

string

country
optional

Country

string

customer
optional

Customer CID

string

customers
optional

List of Customer CIDs a user could switch to

< string > array

defaultEmail
optional

Default email address

string

defaultMobile
optional

Default mobile phone number

string

dob
optional

Date Of Birth

string

entitlementGroups
optional

User entitlement groups

< string > array

entitlements
optional

User entitlements

< string > array

eulaApproval
optional

EULA (End User License Agreement) acceptance status

string

eulaRevision
optional

EULA (End User License Agreement) Revision

string

firstName
optional

First name

string

forcePwdReset
optional

Force Password Reset

boolean

gender
optional

Gender

string

googleAuthSecretAccepted
optional

Whether the Google Authenticator secret has been seen and accepted

string

identifierEmails
optional

Identifier emails

< string > array

identifierMobiles
optional

Identifier Mobile Numbers

< string > array

kbaQuestionSet
optional

KBA questions for which responses have been given

< string > array

lastName
optional

Last name

string

locale
optional

Locale (e.g. en_GB)

string

locality
optional

County or Region

string

mfaMethod
optional

Multi-Factor Authentication method. If not set, no multi-factor authentication is used.

enum (NONE, OTP, KBA, GOOGLE_AUTHENTICATION, DUO_AUTHN)

newUserStatus
optional

New user status

boolean

organization
optional

Organization unit

string

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

otpMfaDestination
optional

User’s destination for authentication by OTP

string

otpSetupComplete
optional

Whether a user has completed OTP MFA setup

boolean

postalCode
optional

Postal Code

string

status
optional

User activation status

enum (active, inactive, banned, unverified)

uid
optional

Unique identifier for this user

string

unverifiedEmails
optional

Unverified emails

< string > array

unverifiedMobiles
optional

Unverified Mobile Numbers

< string > array

uuid
required

Globally unique identifier

string

verifiedEmails
optional

Verified emails

< string > array

verifiedMobiles
optional

Verified Mobile Numbers

< string > array

UserDevicesSearchResults

Name Schema

data
optional

< data > array

paging
optional

data

Name Description Schema

activeSessions
optional

integer

device
optional

Detailed device information filtered by API

object

isCurrent
optional

string

relations
optional

< relations > array

uuid
optional

string

relations

Name Schema

relationTValue
optional

string

relationType
optional

string

paging

Name Schema

limit
optional

integer

offset
optional

integer

total
optional

integer

UserMaskedIdentifiersResponse

Name Description Schema

emails
optional

A list of masked email addresses

< emails > array

mobiles
optional

A list of masked mobile numbers

< mobiles > array

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

otpMfaDestination
optional

User’s destination for authentication by OTP

string

emails

Name Description Schema

isDefault
optional

Whether this email is the user’s defaultEmail

boolean

isVerified
optional

Whether this email is verified

boolean

key
optional

A key used for future retrieval of this email address

string

masked
optional

The masked email address

string

mobiles

Name Description Schema

isDefault
optional

Whether this mobile is the user’s defaultMobile

boolean

isVerified
optional

Whether this mobile is verified

boolean

key
optional

A key used for future retrieval of this mobile number

string

masked
optional

The masked mobile number

string

UserSearchResults

User list

Name Schema

data
optional

< data > array

paging
optional

data

Name Description Schema

defaultEmail
optional

Default email address

string

defaultMobile
optional

Default mobile phone number

string

firstName
optional

First name

string

lastName
optional

Last name

string

otpMethod
optional

User’s preferred means of receiving an OTP ('E' = email, 'M' = mobile, 'V' = voice)

enum (E, M, V)

status
optional

User activation status

enum (active, inactive, banned, unverified)

uid
optional

Unique identifier for this user

string

uuid
optional

Globally unique identifier

string

paging

Name Schema

limit
optional

integer

offset
optional

integer

total
optional

integer

ValidationError

Name Description Schema

code
optional

Unique internal error code

string

details
optional

message
optional

Description of the error code

string

details

Name Schema

fields
optional

< fields > array

fields

Name Description Schema

code
optional

Unique internal error code

string

message
optional

Description of the error code

string

name
optional

Name of the field

string

VerifyIdentifier

Name Description Schema

code
optional

Encrypted verification code or OTP sent to an email or mobile

string

identifier
optional

User identifier without prefix. Required if plaintext OTP is submitted

string

VerifyIdentifierWithSession

Name Description Schema

code
optional

Encrypted verification code or OTP sent to an email or mobile

string

issueSession
optional

Optional property to force issue session

boolean

password
optional

New Password

string

Security

SsoToken

Type : apiKey
Name : token
In : HEADER

oauth2_implicit

Type : oauth2
Flow : implicit
Token URL : https://cloudentity.dev.cloudentity.com/oauth/authorize

oauth2_authorizationCode

oauth2_password

Type : oauth2
Flow : password
Token URL : https://cloudentity.dev.cloudentity.com/oauth/token