Skip to main content
POST
Create a new user

Authorizations

x-api-key
string
header
required

Headers

x-idempotency-key
string<uuid>
required

Unique key (UUID) to ensure request idempotency on POST, PUT and PATCH requests.

A key is scoped to your client, the HTTP method and the path, and is remembered for 24 hours after a successful (below 400) response. Repeating the same request (same JSON body, whatever the key order or whitespace) with the same key within that window returns the original response with X-Idempotent-Replayed: true instead of executing the request again. Using the same key on the same endpoint with a different body returns 422 with problem type idempotency-key-reused; the request is not executed. Error responses (4xx and 5xx) are not remembered, so a request refused for a fixable reason can be corrected and retried under the same key. Request bodies that are not JSON (for example file uploads) are not compared.

Body

application/json

user details

Request body for creating a new client user

first_name
string
required

Given name of the user

Minimum string length: 1
Example:

"John"

last_name
string
required

Surname of the user

Minimum string length: 1
Example:

"Doe"

email
string<email>
required

Email address of the user

Example:

"john@example.com"

role
enum<string>
required

Role that can be assigned to a client user. Available roles: admin (full access except issuances) and viewer (read-only access).

Available options:
admin,
viewer
Example:

"admin"

Response

User created successfully

User object representing a user in the system, including all clients they can access.

id
string
required

KSUID is a 27-character globally unique ID that combines a timestamp with a random component. Used for all entity identifiers in the Dakota platform.

Required string length: 27
Pattern: ^[0-9A-Za-z]{27}$
Example:

"1NFHrqBHb3cTfLVkFSGmHZqdDPi"

first_name
string
required

Given name of the user.

Example:

"John"

last_name
string
required

Surname of the user.

Example:

"Doe"

email
string
required

Email address of the user.

Example:

"john@example.com"

role
enum<string>
required

Role that can be assigned to a client user. Available roles: admin (full access except issuances) and viewer (read-only access).

Available options:
admin,
viewer
Example:

"admin"

created_at
integer
required

Timestamp of when the user was created.

Example:

1234567890

swift_enabled
boolean

Whether the client has SWIFT payments enabled.

cards_enabled
boolean

Present and true when the Cards area of the dashboard is enabled for the client (the cards_dashboard client endorsement). A visibility gate only: whether the client can issue cards is decided by its card program, which the cards endpoints enforce themselves.

client_id
string

KSUID is a 27-character globally unique ID that combines a timestamp with a random component. Used for all entity identifiers in the Dakota platform.

Required string length: 27
Pattern: ^[0-9A-Za-z]{27}$
Example:

"1NFHrqBHb3cTfLVkFSGmHZqdDPi"

client_name
string

Display name of the active client for this request.

Example:

"Acme Corp"