Server
Bitbucket Data Center / Reference / REST API
Operations
GET/access-tokens/latest/projects/{projectKey}PUT/access-tokens/latest/projects/{projectKey}GET/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}PUT/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}GET/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}/{tokenId}POST/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}/{tokenId}DEL/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}/{tokenId}GET/access-tokens/latest/projects/{projectKey}/{tokenId}POST/access-tokens/latest/projects/{projectKey}/{tokenId}DEL/access-tokens/latest/projects/{projectKey}/{tokenId}GET/access-tokens/latest/users/{userSlug}PUT/access-tokens/latest/users/{userSlug}GET/access-tokens/latest/users/{userSlug}/{tokenId}POST/access-tokens/latest/users/{userSlug}/{tokenId}DEL/access-tokens/latest/users/{userSlug}/{tokenId}GET/keys/latest/projects/{projectKey}/repos/{repositorySlug}/sshPOST/keys/latest/projects/{projectKey}/repos/{repositorySlug}/sshGET/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh/{keyId}DEL/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh/{keyId}PUT/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh/{keyId}/permission/{permission}GET/keys/latest/projects/{projectKey}/sshPOST/keys/latest/projects/{projectKey}/sshGET/keys/latest/projects/{projectKey}/ssh/{keyId}DEL/keys/latest/projects/{projectKey}/ssh/{keyId}PUT/keys/latest/projects/{projectKey}/ssh/{keyId}/permission/{permission}DEL/keys/latest/ssh/{keyId}GET/keys/latest/ssh/{keyId}/projectsGET/keys/latest/ssh/{keyId}/reposGET/ssh/latest/keysPOST/ssh/latest/keysDEL/ssh/latest/keysGET/ssh/latest/keys/{keyId}DEL/ssh/latest/keys/{keyId}GET/ssh/latest/settingsGET/authconfig/latest/idpsPOST/authconfig/latest/idpsGET/authconfig/latest/idps/{id}DEL/authconfig/latest/idps/{id}PATCH/authconfig/latest/idps/{id}GET/authconfig/latest/jit-usersGET/authconfig/latest/login-optionsGET/authconfig/latest/ssoPATCH/authconfig/latest/ssoGET/basicauth/latest/configPUT/basicauth/latest/configPOST/tsv/latest/authenticateGET/tsv/latest/authenticate/captchaPOST/tsv/latest/authenticate/recovery-codePOST/tsv/latest/authenticate/totp-codeGET/tsv/latest/elevate-permissionsPOST/tsv/latest/elevate-permissions/passwordPOST/tsv/latest/elevate-permissions/recovery-codePOST/tsv/latest/elevate-permissions/totpGET/tsv/latest/sso-management-statusGET/tsv/latest/statusPOST/tsv/latest/totp/complete-enforced-enrollmentPOST/tsv/latest/totp/complete-enrollment-updatePOST/tsv/latest/totp/complete-voluntary-enrollmentPOST/tsv/latest/totp/recovery-code/rotatePOST/tsv/latest/totp/start-enforced-enrollmentPOST/tsv/latest/totp/start-enrollment-updatePOST/tsv/latest/totp/start-voluntary-enrollmentDEL/tsv/latest/totp/unenrollDEL/tsv/latest/totp/unenroll/user/{userName}
GET

Get project HTTP tokens

Get all access tokens associated with the given project.

Request

Path parameters

projectKey

string

Required

Query parameters

start

number

limit

number

Responses

A response containing a page of access tokens and associated details.

application/json;charset=UTF-8

object
GET/access-tokens/latest/projects/{projectKey}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}' \ --header 'Accept: application/json;charset=UTF-8'
PUT

Create project HTTP token

Create an access token for the project according to the given request.

Request

Path parameters

projectKey

string

Required

Request bodyapplication/json

The request containing the details of the access token to create.

expiryDays

integer

name

string

permissions

array<string>

Responses

A response containing the raw access token and associated details.

application/json;charset=UTF-8

RestRawAccessToken
PUT/access-tokens/latest/projects/{projectKey}
1 2 3 4 5 6 7 8 9 10 11 12 curl --request PUT \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}' \ --header 'Accept: application/json;charset=UTF-8' \ --header 'Content-Type: application/json' \ --data '{ "expiryDays": 2154, "name": "My access token", "permissions": [ "REPO_ADMIN", "PROJECT_READ" ] }'
GET

Get repository HTTP tokens

Get all access tokens associated with the given repository.

Request

Path parameters

projectKey

string

Required
repositorySlug

string

Required

Query parameters

start

number

limit

number

Responses

A response containing a page of access tokens and associated details.

application/json;charset=UTF-8

object
GET/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}' \ --header 'Accept: application/json;charset=UTF-8'
PUT

Create repository HTTP token

Create an access token for the repository according to the given request.

Request

Path parameters

projectKey

string

Required
repositorySlug

string

Required

Request bodyapplication/json

The request containing the details of the access token to create.

expiryDays

integer

name

string

permissions

array<string>

Responses

A response containing the raw access token and associated details.

application/json;charset=UTF-8

RestRawAccessToken
PUT/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}
1 2 3 4 5 6 7 8 9 10 11 12 curl --request PUT \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}' \ --header 'Accept: application/json;charset=UTF-8' \ --header 'Content-Type: application/json' \ --data '{ "expiryDays": 2154, "name": "My access token", "permissions": [ "REPO_ADMIN", "PROJECT_READ" ] }'
GET

Get HTTP token by ID

Get the access token identified by the given ID.

Request

Path parameters

projectKey

string

Required
tokenId

string

Required
repositorySlug

string

Required

Responses

A response containing the access token and associated details.

application/json;charset=UTF-8

RestAccessToken
GET/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}/{tokenId}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}/{tokenId}' \ --header 'Accept: application/json;charset=UTF-8'
POST

Update HTTP token

Modify an access token according to the given request. Any fields not specified will not be altered.

Request

Path parameters

projectKey

string

Required
tokenId

string

Required
repositorySlug

string

Required

Request bodyapplication/json

The request containing the details of the access token to modify

expiryDays

integer

name

string

permissions

array<string>

Responses

A response containing the updated access token and associated details.

application/json;charset=UTF-8

RestAccessToken
POST/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}/{tokenId}
1 2 3 4 5 6 7 8 9 10 11 12 curl --request POST \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}/{tokenId}' \ --header 'Accept: application/json;charset=UTF-8' \ --header 'Content-Type: application/json' \ --data '{ "expiryDays": 2154, "name": "My access token", "permissions": [ "REPO_ADMIN", "PROJECT_READ" ] }'
DEL

Delete a HTTP token

Delete the access token identified by the given ID.

Request

Path parameters

projectKey

string

Required
tokenId

string

Required
repositorySlug

string

Required

Responses

An empty response indicating that the token has been deleted.

DEL/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}/{tokenId}
1 2 curl --request DELETE \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}/repos/{repositorySlug}/{tokenId}'
GET

Get HTTP token by ID

Get the access token identified by the given ID.

Request

Path parameters

projectKey

string

Required
tokenId

string

Required

Responses

A response containing the access token and associated details.

application/json;charset=UTF-8

RestAccessToken
GET/access-tokens/latest/projects/{projectKey}/{tokenId}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}/{tokenId}' \ --header 'Accept: application/json;charset=UTF-8'
POST

Update HTTP token

Modify an access token according to the given request. Any fields not specified will not be altered.

Request

Path parameters

projectKey

string

Required
tokenId

string

Required

Request bodyapplication/json

The request containing the details of the access token to modify

expiryDays

integer

name

string

permissions

array<string>

Responses

A response containing the updated access token and associated details.

application/json;charset=UTF-8

RestAccessToken
POST/access-tokens/latest/projects/{projectKey}/{tokenId}
1 2 3 4 5 6 7 8 9 10 11 12 curl --request POST \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}/{tokenId}' \ --header 'Accept: application/json;charset=UTF-8' \ --header 'Content-Type: application/json' \ --data '{ "expiryDays": 2154, "name": "My access token", "permissions": [ "REPO_ADMIN", "PROJECT_READ" ] }'
DEL

Delete a HTTP token

Delete the access token identified by the given ID.

Request

Path parameters

projectKey

string

Required
tokenId

string

Required

Responses

An empty response indicating that the token has been deleted.

DEL/access-tokens/latest/projects/{projectKey}/{tokenId}
1 2 curl --request DELETE \ --url 'http://{baseurl}/rest/access-tokens/latest/projects/{projectKey}/{tokenId}'
GET

Get personal HTTP tokens

Get all access tokens associated with the given user.

Request

Path parameters

userSlug

string

Required

Query parameters

start

number

limit

number

Responses

A response containing a page of access tokens and associated details.

application/json;charset=UTF-8

object
GET/access-tokens/latest/users/{userSlug}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/access-tokens/latest/users/{userSlug}' \ --header 'Accept: application/json;charset=UTF-8'
PUT

Create personal HTTP token

Create an access token for the user according to the given request.

Request

Path parameters

userSlug

string

Required

Request bodyapplication/json

The request containing the details of the access token to create.

expiryDays

integer

name

string

permissions

array<string>

Responses

A response containing the raw access token and associated details.

application/json;charset=UTF-8

RestRawAccessToken
PUT/access-tokens/latest/users/{userSlug}
1 2 3 4 5 6 7 8 9 10 11 12 curl --request PUT \ --url 'http://{baseurl}/rest/access-tokens/latest/users/{userSlug}' \ --header 'Accept: application/json;charset=UTF-8' \ --header 'Content-Type: application/json' \ --data '{ "expiryDays": 2154, "name": "My access token", "permissions": [ "REPO_ADMIN", "PROJECT_READ" ] }'
GET

Get HTTP token by ID

Get the access token identified by the given ID.

Request

Path parameters

tokenId

string

Required
userSlug

string

Required

Responses

A response containing the access token and associated details.

application/json;charset=UTF-8

RestAccessToken
GET/access-tokens/latest/users/{userSlug}/{tokenId}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/access-tokens/latest/users/{userSlug}/{tokenId}' \ --header 'Accept: application/json;charset=UTF-8'
POST

Update HTTP token

Modify an access token according to the given request. Any fields not specified will not be altered.

Request

Path parameters

tokenId

string

Required
userSlug

string

Required

Request bodyapplication/json

The request containing the details of the access token to modify

expiryDays

integer

name

string

permissions

array<string>

Responses

A response containing the updated access token and associated details.

application/json;charset=UTF-8

RestAccessToken
POST/access-tokens/latest/users/{userSlug}/{tokenId}
1 2 3 4 5 6 7 8 9 10 11 12 curl --request POST \ --url 'http://{baseurl}/rest/access-tokens/latest/users/{userSlug}/{tokenId}' \ --header 'Accept: application/json;charset=UTF-8' \ --header 'Content-Type: application/json' \ --data '{ "expiryDays": 2154, "name": "My access token", "permissions": [ "REPO_ADMIN", "PROJECT_READ" ] }'
DEL

Delete a HTTP token

Delete the access token identified by the given ID.

Request

Path parameters

tokenId

string

Required
userSlug

string

Required

Responses

An empty response indicating that the token has been deleted.

DEL/access-tokens/latest/users/{userSlug}/{tokenId}
1 2 curl --request DELETE \ --url 'http://{baseurl}/rest/access-tokens/latest/users/{userSlug}/{tokenId}'
GET

Get repository SSH keys

Retrieves the access keys for the repository identified in the URL.

Request

Path parameters

projectKey

string

Required
repositorySlug

string

Required

Query parameters

filter

string

effective

string

minimumPermission

string

permission

string

start

number

limit

number

Responses

A single page of access keys for the repository.

application/json;charset=UTF-8

object
GET/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh' \ --header 'Accept: application/json;charset=UTF-8'
POST

Add repository SSH key

Register a new SSH key and grants access to the repository identified in the URL.

Request

Path parameters

projectKey

string

Required
repositorySlug

string

Required

Request bodyapplication/json

key

object

permission

string

project

object

repository

object

Responses

The newly created access key.

application/json;charset=UTF-8

RestSshAccessKey
POST/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 curl --request POST \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh' \ --header 'Accept: application/json;charset=UTF-8' \ --header 'Content-Type: application/json' \ --data '{ "key": { "algorithmType": "<string>", "bitLength": 2154, "expiryDays": 30, "label": "me@127.0.0.1", "text": "ssh-rsa AAAAB3... me@127.0.0.1" }, "permission": "USER_ADMIN", "project": { "avatar": "<string>", "avatarUrl": "<string>", "key": "PRJ", "links": {} }, "repository": { "defaultBranch": "main", "links": {}, "name": "My repo", "project": { "avatar": "<string>", "avatarUrl": "<string>", "key": "PRJ", "links": {} }, "scmId": "git", "slug": "my-repo" } }'
GET

Get repository SSH key

Retrieves the access key for the SSH key with id keyId on the repository identified in the URL.

Request

Path parameters

projectKey

string

Required
keyId

string

Required
repositorySlug

string

Required

Responses

The access key for the repository and SSH key with ID keyId.

application/json;charset=UTF-8

RestSshAccessKey
GET/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh/{keyId}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh/{keyId}' \ --header 'Accept: application/json;charset=UTF-8'
DEL

Revoke repository SSH key

Remove an existing access key for the repository identified in the URL. If the same SSH key is used as an access key for multiple projects or repositories, only the access to the repository identified in the URL will be revoked.

Request

Path parameters

projectKey

string

Required
keyId

string

Required
repositorySlug

string

Required

Responses

The access key was deleted (or none was found matching the given id).

DEL/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh/{keyId}
1 2 curl --request DELETE \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh/{keyId}'
PUT

Update repository SSH key permission

Updates the permission granted to the specified SSH key to the repository identified in the URL.

Request

Path parameters

projectKey

string

Required
keyId

string

Required
permission

string

Required
repositorySlug

string

Required

Responses

The newly created access key.

application/json;charset=UTF-8

RestSshAccessKey
PUT/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh/{keyId}/permission/{permission}
1 2 3 curl --request PUT \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/repos/{repositorySlug}/ssh/{keyId}/permission/{permission}' \ --header 'Accept: application/json;charset=UTF-8'
GET

Get SSH key

Retrieves the access keys for the project identified in the URL.

Request

Path parameters

projectKey

string

Required

Query parameters

filter

string

permission

string

start

number

limit

number

Responses

A single page of access keys associated with the project.

application/json;charset=UTF-8

object
GET/keys/latest/projects/{projectKey}/ssh
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/ssh' \ --header 'Accept: application/json;charset=UTF-8'
POST

Add project SSH key

Register a new SSH key and grants access to the project identified in the URL.

Request

Path parameters

projectKey

string

Required

Request bodyapplication/json

key

object

permission

string

project

object

repository

object

Responses

The newly created access key.

application/json;charset=UTF-8

RestSshAccessKey
POST/keys/latest/projects/{projectKey}/ssh
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 curl --request POST \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/ssh' \ --header 'Accept: application/json;charset=UTF-8' \ --header 'Content-Type: application/json' \ --data '{ "key": { "algorithmType": "<string>", "bitLength": 2154, "expiryDays": 30, "label": "me@127.0.0.1", "text": "ssh-rsa AAAAB3... me@127.0.0.1" }, "permission": "USER_ADMIN", "project": { "avatar": "<string>", "avatarUrl": "<string>", "key": "PRJ", "links": {} }, "repository": { "defaultBranch": "main", "links": {}, "name": "My repo", "project": { "avatar": "<string>", "avatarUrl": "<string>", "key": "PRJ", "links": {} }, "scmId": "git", "slug": "my-repo" } }'
GET

Get project SSH key

Retrieves the access key for the SSH key with id keyId on the project identified in the URL.

Request

Path parameters

projectKey

string

Required
keyId

string

Required

Responses

The access key for the repository and SSH key with ID keyId.

application/json;charset=UTF-8

RestSshAccessKey
GET/keys/latest/projects/{projectKey}/ssh/{keyId}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/ssh/{keyId}' \ --header 'Accept: application/json;charset=UTF-8'
DEL

Revoke project SSH key

Remove an existing access key for the project identified in the URL. If the same SSH key is used as an access key for multiple projects or repositories, only the access to the project identified in the URL will be revoked.

Request

Path parameters

projectKey

string

Required
keyId

string

Required

Responses

The access key was deleted (or none was found matching the given id).

DEL/keys/latest/projects/{projectKey}/ssh/{keyId}
1 2 curl --request DELETE \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/ssh/{keyId}'
PUT

Update project SSH key permission

Updates the permission granted to the specified SSH key to the project identified in the URL.

Request

Path parameters

projectKey

string

Required
keyId

string

Required
permission

string

Required

Responses

The newly created access key.

application/json;charset=UTF-8

RestSshAccessKey
PUT/keys/latest/projects/{projectKey}/ssh/{keyId}/permission/{permission}
1 2 3 curl --request PUT \ --url 'http://{baseurl}/rest/keys/latest/projects/{projectKey}/ssh/{keyId}/permission/{permission}' \ --header 'Accept: application/json;charset=UTF-8'
DEL

Revoke project SSH key

Remove an existing access key for the projects and repositories in the submitted entity. If the same SSH key is used as an access key for multiple projects or repositories not supplied, only the access to the projects or repositories identified will be revoked.

Request

Path parameters

keyId

string

Required

Request bodyapplication/json

projects

RestProject

repositories

RestRepository

Responses

The access keys were deleted (or none was found matching the given id and repositories or projects).

DEL/keys/latest/ssh/{keyId}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 curl --request DELETE \ --url 'http://{baseurl}/rest/keys/latest/ssh/{keyId}' \ --header 'Content-Type: application/json' \ --data '{ "projects": { "avatar": "<string>", "avatarUrl": "<string>", "key": "PRJ", "links": {} }, "repositories": { "defaultBranch": "main", "links": {}, "name": "My repo", "project": { "avatar": "<string>", "avatarUrl": "<string>", "key": "PRJ", "links": {} }, "scmId": "git", "slug": "my-repo" } }'
GET

Get project SSH keys

Retrieves all project-related access keys for the SSH key with id keyId. If the current user is not an admin any of the projects the key provides access to, none are returned.

Request

Path parameters

keyId

integer

Required

Responses

The SSH key with ID keyId.

application/json;charset=UTF-8

any

GET/keys/latest/ssh/{keyId}/projects
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/keys/latest/ssh/{keyId}/projects' \ --header 'Accept: application/json;charset=UTF-8'
GET

Get repository SSH key

Retrieves all repository-related access keys for the SSH key with id keyId. If the current user is not an admin of any of the projects the key provides access to, none are returned.

Request

Path parameters

keyId

string

Required

Query parameters

withRestrictions

string

Responses

The SSH key with ID keyId.

application/json;charset=UTF-8

any

GET/keys/latest/ssh/{keyId}/repos
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/keys/latest/ssh/{keyId}/repos' \ --header 'Accept: application/json;charset=UTF-8'
GET

Get SSH keys for user

Retrieve a page of SSH keys.

Request

Query parameters

userName

string

user

string

start

number

limit

number

Responses

A page of SSH keys.

application/json;charset=UTF-8

object
GET/ssh/latest/keys
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/ssh/latest/keys' \ --header 'Accept: application/json;charset=UTF-8'
POST

Add SSH key for user

Add a new SSH key to a supplied user.

Request

Query parameters

user

RestSshKey

Request bodyapplication/json

algorithmType

string

bitLength

integer

expiryDays

integer

label

string

text

string

Responses

The newly created SSH key.

application/json;charset=UTF-8

RestSshKey
POST/ssh/latest/keys
1 2 3 4 5 6 7 8 9 10 11 curl --request POST \ --url 'http://{baseurl}/rest/ssh/latest/keys' \ --header 'Accept: application/json;charset=UTF-8' \ --header 'Content-Type: application/json' \ --data '{ "algorithmType": "<string>", "bitLength": 2154, "expiryDays": 30, "label": "me@127.0.0.1", "text": "ssh-rsa AAAAB3... me@127.0.0.1" }'
DEL

Delete all user SSH key

Delete all SSH keys for a supplied user.

Request

Query parameters

userName

string

user

string

Responses

The SSH keys matching the supplied user were deleted.

DEL/ssh/latest/keys
1 2 curl --request DELETE \ --url 'http://{baseurl}/rest/ssh/latest/keys'
GET

Get SSH key for user by keyId

Retrieve an SSH key by keyId

The authenticated user must have ADMIN permission or higher to call this resource.

Request

Path parameters

keyId

string

Required

Responses

An SSH key.

application/json;charset=UTF-8

RestSshKey
GET/ssh/latest/keys/{keyId}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/ssh/latest/keys/{keyId}' \ --header 'Accept: application/json;charset=UTF-8'
DEL

Remove SSH key

Delete an SSH key.

The authenticated user must have ADMIN permission or higher to call this resource.

Request

Path parameters

keyId

string

Required

Responses

The SSH key matching the supplied id was deleted or did not exist.

DEL/ssh/latest/keys/{keyId}
1 2 curl --request DELETE \ --url 'http://{baseurl}/rest/ssh/latest/keys/{keyId}'
GET

Get SSH settings

Gets the SSH settings from the upstream.

Request

This request has no parameters.

Responses

The ssh settings from upstream

application/json;charset=UTF-8

RestSshSettings
GET/ssh/latest/settings
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/ssh/latest/settings' \ --header 'Accept: application/json;charset=UTF-8'
GET

Get all configured IdPs

Returns a page of configured IdPs. This endpoint makes no guarantees to ordering besides the ordering being consistent.

Request

Query parameters

start

number

limit

number

Responses

A page of configured IdPs.

application/json

object
GET/authconfig/latest/idps
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/authconfig/latest/idps' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 { "isLastPage": true, "limit": 25, "results": [ { "additional-scopes": [ "<string>" ], "authorization-endpoint": "<string>", "buttonText": "<string>", "certificate": "<string>", "client-id": "<string>", "client-secret": "<string>", "crowd-url": "<string>", "discovery-enabled": true, "enable-remember-me": true, "enabled": true, "id": 2154, "idp-type": "GENERIC", "include-customer-logins": true, "issuer-url": "<string>", "jit-configuration": { "additional-openid-scopes": [ "<string>" ], "mapping-display-name": "<string>", "mapping-email": "<string>", "mapping-groups": "<string>", "user-provisioning-enabled": true }, "last-updated": "<string>", "name": "<string>", "sso-issuer": "<string>", "sso-type": "NONE", "sso-url": "<string>", "token-endpoint": "<string>", "userinfo-endpoint": "<string>", "username-attribute": "<string>", "username-claim": "<string>" } ], "size": 1, "start": 2154 }
POST

Create IdP configuration

Creates a new IdP configuration.

Request

Request bodyapplication/json

The configuration of the new IdP to add. The ID must be null.

additional-scopes

array<string>

authorization-endpoint

string

buttonText

string

certificate

string

client-id

string

client-secret

string

crowd-url

string

discovery-enabled

boolean

enable-remember-me

boolean

enabled

boolean

Responses

The newly created IdP configuration.

application/json

IdpConfigEntity
POST/authconfig/latest/idps
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 curl --request POST \ --url 'http://{baseurl}/rest/authconfig/latest/idps' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "additional-scopes": [ "<string>" ], "authorization-endpoint": "<string>", "buttonText": "<string>", "certificate": "<string>", "client-id": "<string>", "client-secret": "<string>", "crowd-url": "<string>", "discovery-enabled": true, "enable-remember-me": true, "enabled": true, "id": 2154, "idp-type": "GENERIC", "include-customer-logins": true, "issuer-url": "<string>", "jit-configuration": { "additional-openid-scopes": [ "<string>" ], "mapping-display-name": "<string>", "mapping-email": "<string>", "mapping-groups": "<string>", "user-provisioning-enabled": true }, "last-updated": "<string>", "name": "<string>", "sso-issuer": "<string>", "sso-type": "NONE", "sso-url": "<string>", "token-endpoint": "<string>", "userinfo-endpoint": "<string>", "username-attribute": "<string>", "username-claim": "<string>" }'
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 { "additional-scopes": [ "<string>" ], "authorization-endpoint": "<string>", "buttonText": "<string>", "certificate": "<string>", "client-id": "<string>", "client-secret": "<string>", "crowd-url": "<string>", "discovery-enabled": true, "enable-remember-me": true, "enabled": true, "id": 2154, "idp-type": "GENERIC", "include-customer-logins": true, "issuer-url": "<string>", "jit-configuration": { "additional-openid-scopes": [ "<string>" ], "mapping-display-name": "<string>", "mapping-email": "<string>", "mapping-groups": "<string>", "user-provisioning-enabled": true }, "last-updated": "<string>", "name": "<string>", "sso-issuer": "<string>", "sso-type": "NONE", "sso-url": "<string>", "token-endpoint": "<string>", "userinfo-endpoint": "<string>", "username-attribute": "<string>", "username-claim": "<string>" }
GET

Get IdP configuration

Returns the configuration for the IdP that matches the given ID.

Request

Path parameters

id

string

Required

Responses

The configuration for the given IdP.

application/json

IdpConfigEntity
GET/authconfig/latest/idps/{id}
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/authconfig/latest/idps/{id}' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 { "additional-scopes": [ "<string>" ], "authorization-endpoint": "<string>", "buttonText": "<string>", "certificate": "<string>", "client-id": "<string>", "client-secret": "<string>", "crowd-url": "<string>", "discovery-enabled": true, "enable-remember-me": true, "enabled": true, "id": 2154, "idp-type": "GENERIC", "include-customer-logins": true, "issuer-url": "<string>", "jit-configuration": { "additional-openid-scopes": [ "<string>" ], "mapping-display-name": "<string>", "mapping-email": "<string>", "mapping-groups": "<string>", "user-provisioning-enabled": true }, "last-updated": "<string>", "name": "<string>", "sso-issuer": "<string>", "sso-type": "NONE", "sso-url": "<string>", "token-endpoint": "<string>", "userinfo-endpoint": "<string>", "username-attribute": "<string>", "username-claim": "<string>" }
DEL

Delete IdP configuration

Removes the configuration for the IdP that matches the given ID.

Request

Path parameters

id

string

Required

Responses

The IdP configuration was successfully deleted.

application/json

IdpConfigEntity
DEL/authconfig/latest/idps/{id}
1 2 3 curl --request DELETE \ --url 'http://{baseurl}/rest/authconfig/latest/idps/{id}' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 { "additional-scopes": [ "<string>" ], "authorization-endpoint": "<string>", "buttonText": "<string>", "certificate": "<string>", "client-id": "<string>", "client-secret": "<string>", "crowd-url": "<string>", "discovery-enabled": true, "enable-remember-me": true, "enabled": true, "id": 2154, "idp-type": "GENERIC", "include-customer-logins": true, "issuer-url": "<string>", "jit-configuration": { "additional-openid-scopes": [ "<string>" ], "mapping-display-name": "<string>", "mapping-email": "<string>", "mapping-groups": "<string>", "user-provisioning-enabled": true }, "last-updated": "<string>", "name": "<string>", "sso-issuer": "<string>", "sso-type": "NONE", "sso-url": "<string>", "token-endpoint": "<string>", "userinfo-endpoint": "<string>", "username-attribute": "<string>", "username-claim": "<string>" }
PATCH

Update IdP configuration

Updates the configuration for the IdP that matches the given ID. Only the provided properties will be applied to the IdP configuration.

Request

Path parameters

id

string

Required

Request bodyapplication/json

A request containing the IdP configuration to update. The ID must either be null or equal to the ID specified in the path.

additional-scopes

array<string>

authorization-endpoint

string

buttonText

string

certificate

string

client-id

string

client-secret

string

crowd-url

string

discovery-enabled

boolean

enable-remember-me

boolean

enabled

boolean

Responses

The updated configuration for the given IdP.

application/json

IdpConfigEntity
PATCH/authconfig/latest/idps/{id}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 curl --request PATCH \ --url 'http://{baseurl}/rest/authconfig/latest/idps/{id}' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "additional-scopes": [ "<string>" ], "authorization-endpoint": "<string>", "buttonText": "<string>", "certificate": "<string>", "client-id": "<string>", "client-secret": "<string>", "crowd-url": "<string>", "discovery-enabled": true, "enable-remember-me": true, "enabled": true, "id": 2154, "idp-type": "GENERIC", "include-customer-logins": true, "issuer-url": "<string>", "jit-configuration": { "additional-openid-scopes": [ "<string>" ], "mapping-display-name": "<string>", "mapping-email": "<string>", "mapping-groups": "<string>", "user-provisioning-enabled": true }, "last-updated": "<string>", "name": "<string>", "sso-issuer": "<string>", "sso-type": "NONE", "sso-url": "<string>", "token-endpoint": "<string>", "userinfo-endpoint": "<string>", "username-attribute": "<string>", "username-claim": "<string>" }'
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 { "additional-scopes": [ "<string>" ], "authorization-endpoint": "<string>", "buttonText": "<string>", "certificate": "<string>", "client-id": "<string>", "client-secret": "<string>", "crowd-url": "<string>", "discovery-enabled": true, "enable-remember-me": true, "enabled": true, "id": 2154, "idp-type": "GENERIC", "include-customer-logins": true, "issuer-url": "<string>", "jit-configuration": { "additional-openid-scopes": [ "<string>" ], "mapping-display-name": "<string>", "mapping-email": "<string>", "mapping-groups": "<string>", "user-provisioning-enabled": true }, "last-updated": "<string>", "name": "<string>", "sso-issuer": "<string>", "sso-type": "NONE", "sso-url": "<string>", "token-endpoint": "<string>", "userinfo-endpoint": "<string>", "username-attribute": "<string>", "username-claim": "<string>" }
GET

Get all JIT provisioned users

Returns a list of all the users created by JIT (Just-in-time) provisioning.

Just-in-time user provisioning (JIT provisioning) allows users to be created and updated automatically when they log in through SAML SSO or OpenID Connect (OIDC) SSO.

Request

This request has no parameters.

Responses

A list of JIT users

application/json

JitUserEntity
GET/authconfig/latest/jit-users
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/authconfig/latest/jit-users' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 { "display-name": "<string>", "email": "<string>", "username": "<string>" }
GET

Get available login options

Returns a list of available login options, which contains details about the metadata required for the login page. Only enabled login options will be returned. Login options can either be the native login form or the configured IdPs.

Request

Query parameters

start

number

limit

number

Responses

A list of login options

application/json

object
GET/authconfig/latest/login-options
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/authconfig/latest/login-options' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 { "isLastPage": true, "limit": 25, "results": [ { "buttonText": "<string>", "id": 2154, "loginLink": "<string>", "type": "LOGIN_FORM" } ], "size": 1, "start": 2154 }
GET

Get SSO configuration

Returns the SSO configuration.

Request

This request has no parameters.

Responses

The SSO configuration

application/json

SsoConfigEntity
GET/authconfig/latest/sso
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/authconfig/latest/sso' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 7 { "discovery-refresh-cron": "<string>", "enable-authentication-fallback": true, "last-updated": "<string>", "show-login-form": true, "show-login-form-for-jsm": true }
PATCH

Update SSO configuration

Update the SSO configuration.

Request

Request bodyapplication/json

A request containing the SSO configuration to update.

discovery-refresh-cron

string

enable-authentication-fallback

boolean

last-updated

string

show-login-form

boolean

show-login-form-for-jsm

boolean

Responses

The updated SSO Configuration

application/json

SsoConfigEntity
PATCH/authconfig/latest/sso
1 2 3 4 5 6 7 8 9 10 11 curl --request PATCH \ --url 'http://{baseurl}/rest/authconfig/latest/sso' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "discovery-refresh-cron": "<string>", "enable-authentication-fallback": true, "last-updated": "<string>", "show-login-form": true, "show-login-form-for-jsm": true }'
200Response
1 2 3 4 5 6 7 { "discovery-refresh-cron": "<string>", "enable-authentication-fallback": true, "last-updated": "<string>", "show-login-form": true, "show-login-form-for-jsm": true }
GET

Get basic auth configuration

Get the current configuration for blocking basic authentication requests.

Request

This request has no parameters.

Responses

The blocking basic authentication configuration.

application/json

BasicAuthConfigEntity
GET/basicauth/latest/config
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/basicauth/latest/config' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 7 8 9 10 { "allowed-paths": [ "<string>" ], "allowed-users": [ "<string>" ], "block-requests": true, "show-warning-message": true }
PUT

Update basic auth configuration

Store a new configuration for blocking basic authentication requests.

Request

Request bodyapplication/json

A request containing the new basic authentication configuration.

allowed-paths

array<string>

allowed-users

array<string>

block-requests

boolean

show-warning-message

boolean

Responses

The basic authentication blocking configuration was successfully created or updated.

PUT/basicauth/latest/config
1 2 3 4 5 6 7 8 9 10 11 12 13 curl --request PUT \ --url 'http://{baseurl}/rest/basicauth/latest/config' \ --header 'Content-Type: application/json' \ --data '{ "allowed-paths": [ "<string>" ], "allowed-users": [ "<string>" ], "block-requests": true, "show-warning-message": true }'
POST

Authenticate with 2SV

Authenticates as the given user. This endpoint may:

  • Ask for two-step verification if the user has enrolled; or
  • Enforce enrollment in two-step verification if two-step verification enforcement is configured for the instance and the user is not yet enrolled.

Request

Request bodyapplication/json

captchaChallenge

string

captchaId

string

password

string

rememberMe

boolean

targetUrl

string

username

string

Responses

The user has successfully authenticated.

application/json

AuthenticationResponse
POST/tsv/latest/authenticate
1 2 3 4 5 6 7 8 9 10 11 12 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/authenticate' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "captchaChallenge": "<string>", "captchaId": "<string>", "password": "<string>", "rememberMe": true, "targetUrl": "<string>", "username": "<string>" }'
200Response
1 2 3 { "next": "<string>" }
GET

Get CAPTCHA challenge

Provides data for a CAPTCHA challenge.

Request

This request has no parameters.

Responses

The CAPTCHA challenge

application/json

CaptchaDataEntity
GET/tsv/latest/authenticate/captcha
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/tsv/latest/authenticate/captcha' \ --header 'Accept: application/json'
200Response
1 2 3 4 { "captchaId": "<string>", "captchaImageUrl": "<string>" }
POST

Authenticate using recovery code

Authenticate as the given user using a recovery code.

Request

Request bodyapplication/json

A request containing a recovery code for the specified user.

conversationId

string

recoveryCode

string

Responses

The user was successfully logged in.

application/json

AuthenticationResponse
POST/tsv/latest/authenticate/recovery-code
1 2 3 4 5 6 7 8 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/authenticate/recovery-code' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "conversationId": "<string>", "recoveryCode": "<string>" }'
200Response
1 2 3 { "next": "<string>" }
POST

Authenticate using TOTP code

Authenticate as the given user using a TOTP code.

Request

Request bodyapplication/json

A request containing a TOTP code for the given user.

conversationId

string

totpCode

string

Responses

The user was successfully logged in.

POST/tsv/latest/authenticate/totp-code
1 2 3 4 5 6 7 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/authenticate/totp-code' \ --header 'Content-Type: application/json' \ --data '{ "conversationId": "<string>", "totpCode": "<string>" }'
GET

Get elevated session status

Checks the state of an elevated session for the currently authenticated user.

Request

Query parameters

actionType

string

Responses

An elevated session exists for the currently authenticated user.

GET/tsv/latest/elevate-permissions
1 2 curl --request GET \ --url 'http://{baseurl}/rest/tsv/latest/elevate-permissions'
POST

Create elevated session with password

Elevate permissions by providing the password for the currently authenticated user. This will create an elevated session.

Request

Query parameters

actionType

string

Request bodyapplication/json

A request containing the password for the currently authenticated user.

totpCode

string

Responses

Permissions were successfully elevated.

POST/tsv/latest/elevate-permissions/password
1 2 3 4 5 6 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/elevate-permissions/password' \ --header 'Content-Type: application/json' \ --data '{ "totpCode": "<string>" }'
POST

Create elevated session with recovery code

Elevate permissions by providing a recovery code for the currently authenticated user. This will create an elevated session.

Request

Query parameters

actionType

string

Request bodyapplication/json

A request containing a recovery code for the currently authenticated user.

recoveryCode

string

Responses

Permissions were successfully elevated.

application/json

TotpRecoveryCodeDTO
POST/tsv/latest/elevate-permissions/recovery-code
1 2 3 4 5 6 7 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/elevate-permissions/recovery-code' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "recoveryCode": "<string>" }'
200Response
1 2 3 { "recoveryCode": "<string>" }
POST

Create elevated session with TOTP

Elevate permissions by providing a TOTP code for the currently authenticated user. This will create an elevated session.

Request

Query parameters

actionType

string

Request bodyapplication/json

A request containing a TOTP code for the given user.

totpCode

string

Responses

Permissions were successfully elevated.

POST/tsv/latest/elevate-permissions/totp
1 2 3 4 5 6 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/elevate-permissions/totp' \ --header 'Content-Type: application/json' \ --data '{ "totpCode": "<string>" }'
GET

Get SSO management status

Retrieves the status of the SSO management for the currently authenticated user.

Request

This request has no parameters.

Responses

Successfully retrieved SSO management status

application/json

SsoManagementStatusDTO
GET/tsv/latest/sso-management-status
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/tsv/latest/sso-management-status' \ --header 'Accept: application/json'
200Response
1 2 3 { "isManaged": true }
GET

Get two-step verification status

Retrieves the status of two-step verification for the currently authenticated user.

Request

This request has no parameters.

Responses

Successfully retrieved the two-step verification status.

application/json

StatusDTO
GET/tsv/latest/status
1 2 3 curl --request GET \ --url 'http://{baseurl}/rest/tsv/latest/status' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 7 8 9 10 { "methods": [ { "enabled": true, "enabledAt": "<string>", "type": "TOTP" } ], "twoSVActive": true }
POST

Complete enforced enrollment in 2SV

Complete enforced enrollment in two-step verification by verifying the provided TOTP code and creating a new session for the given user.

Request

Request bodyapplication/json

A request containing a TOTP code for the given user.

conversationId

string

totpCode

string

Responses

Enrollment successfully completed.

application/json

TotpRecoveryCodeDTO
POST/tsv/latest/totp/complete-enforced-enrollment
1 2 3 4 5 6 7 8 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/totp/complete-enforced-enrollment' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "conversationId": "<string>", "totpCode": "<string>" }'
200Response
1 2 3 { "recoveryCode": "<string>" }
POST

Complete authentication app update for 2SV

Complete update of the authentication app used for two-step verification by verifying the provided TOTP code.

Request

Request bodyapplication/json

A request containing a TOTP code for the given user.

conversationId

string

totpCode

string

Responses

Authentication app successfully updated.

application/json

TotpUserEnrollmentDTO
POST/tsv/latest/totp/complete-enrollment-update
1 2 3 4 5 6 7 8 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/totp/complete-enrollment-update' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "conversationId": "<string>", "totpCode": "<string>" }'
200Response
1 2 3 4 5 6 { "conversationId": "<string>", "secret": "<string>", "url": "<string>", "userName": "<string>" }
POST

Complete voluntary enrollment in 2SV

Complete voluntary enrollment in two-step verification by verifying the provided TOTP code and creating a new session for the given user.

Request

Request bodyapplication/json

A request containing a TOTP code for the given user.

conversationId

string

totpCode

string

Responses

Enrollment successfully completed.

application/json

TotpUserEnrollmentDTO
POST/tsv/latest/totp/complete-voluntary-enrollment
1 2 3 4 5 6 7 8 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/totp/complete-voluntary-enrollment' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "conversationId": "<string>", "totpCode": "<string>" }'
200Response
1 2 3 4 5 6 { "conversationId": "<string>", "secret": "<string>", "url": "<string>", "userName": "<string>" }
POST

Rotate recovery code

Rotates the recovery code for the currently authentication user.

Request

This request has no parameters.

Responses

The recovery code has been successfully rotated.

application/json

TotpRecoveryCodeDTO
POST/tsv/latest/totp/recovery-code/rotate
1 2 3 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/totp/recovery-code/rotate' \ --header 'Accept: application/json'
200Response
1 2 3 { "recoveryCode": "<string>" }
POST

Start enforced enrollment in 2SV

Start or resume enforced enrollment in two-step verification by returning the conversation details.

There are two ways to enroll in two-step verification: voluntary and enforced. Enrollment is a two-step process. First, the user starts the enrollment process via /start-voluntary-enrollment or /start-enforced-enrollment. Second and final step is to complete the enrollment via /complete-voluntary-enrollment or /complete-enforced-enrollment. In the case of enforced enrollment, the conversation is started at the time of login via /authenticate.

Request

Request bodyapplication/json

conversationId

string

Responses

A conversation has successfully started.

application/json

TotpUserEnrollmentDTO
POST/tsv/latest/totp/start-enforced-enrollment
1 2 3 4 5 6 7 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/totp/start-enforced-enrollment' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --data '{ "conversationId": "<string>" }'
200Response
1 2 3 4 5 6 { "conversationId": "<string>", "secret": "<string>", "url": "<string>", "userName": "<string>" }
POST

Start authentication app update for 2SV

Start the process of changing the authentication app used for two-step verification by creating a conversation.

Request

This request has no parameters.

Responses

A conversation has successfully started.

application/json

TotpUserEnrollmentDTO
POST/tsv/latest/totp/start-enrollment-update
1 2 3 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/totp/start-enrollment-update' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 { "conversationId": "<string>", "secret": "<string>", "url": "<string>", "userName": "<string>" }
POST

Start voluntary enrollment in 2SV

Start voluntary enrollment in two-step verification by creating a conversation.

There are two ways to enroll in two-step verification: voluntary and enforced. Enrollment is a two-step process. First, the user starts the enrollment process via /start-voluntary-enrollment or /start-enforced-enrollment. Second and final step is to complete the enrollment via /complete-voluntary-enrollment or /complete-enforced-enrollment. In the case of enforced enrollment, the conversation is started at the time of login via /authenticate.

Request

This request has no parameters.

Responses

A conversation has successfully started.

application/json

TotpUserEnrollmentDTO
POST/tsv/latest/totp/start-voluntary-enrollment
1 2 3 curl --request POST \ --url 'http://{baseurl}/rest/tsv/latest/totp/start-voluntary-enrollment' \ --header 'Accept: application/json'
200Response
1 2 3 4 5 6 { "conversationId": "<string>", "secret": "<string>", "url": "<string>", "userName": "<string>" }
DEL

Uneroll current user from two-step verification

Unenroll the currently authenticated user from two-step verification.

Request

This request has no parameters.

Responses

User successfully unenrolled from two-step verification.

DEL/tsv/latest/totp/unenroll
1 2 curl --request DELETE \ --url 'http://{baseurl}/rest/tsv/latest/totp/unenroll'
DEL

Unenroll specific user from two-step verification

Unenroll a user from two-step verification specified by the given username.

Request

Path parameters

userName

string

Required

Request bodyapplication/json

A request containing a TOTP code for the given user.

totpCode

string

Responses

User successfully unenrolled from two-step verification.

DEL/tsv/latest/totp/unenroll/user/{userName}
1 2 3 4 5 6 curl --request DELETE \ --url 'http://{baseurl}/rest/tsv/latest/totp/unenroll/user/{userName}' \ --header 'Content-Type: application/json' \ --data '{ "totpCode": "<string>" }'

Rate this page: