Skip to content

Create a user

POST
/users
curl --request POST \
--url https://example.com/api/v1/users \
--header 'Content-Type: application/json' \
--cookie __Host-shardkeep_session=<__Host-shardkeep_session> \
--data '{ "username": "example", "email": "example", "displayName": "example", "globalAdmin": false }'

Returns a one-time password, once. The user must choose a new password when they first sign in.

Media typeapplication/json
object
username
required
string
>= 1 characters <= 64 characters /^[A-Za-z0-9][A-Za-z0-9._-]*$/
email
required
string
>= 3 characters <= 254 characters /^[^@\s]+@[^@\s]+$/
displayName
string
<= 100 characters
globalAdmin
boolean

User created.

Media typeapplication/json
object
user
required
object
id
required
string format: uuid
username
required
string
email
required
string
displayName
required
string
globalAdmin
required
boolean
disabled
required
boolean
disabledAt
string format: date-time
passwordChangeRequired
required
boolean
createdAt
required
string format: date-time
oneTimePassword
required

Shown only once. The user must replace it at first sign-in.

string
Examplegenerated
{
"user": {
"id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"username": "example",
"email": "example",
"displayName": "example",
"globalAdmin": true,
"disabled": true,
"disabledAt": "2026-04-15T12:00:00Z",
"passwordChangeRequired": true,
"createdAt": "2026-04-15T12:00:00Z"
},
"oneTimePassword": "example"
}

The request is invalid.

Media typeapplication/problem+json

An RFC 9457 problem with a machine-readable code.

object
type
required
string
title
required
string
status
required
integer
detail
string
code
required

Stable machine-readable error code.

string
Example
{
"type": "about:blank",
"title": "Conflict",
"status": 409,
"code": "conflict"
}

Not signed in, or the credentials are invalid.

Media typeapplication/problem+json

An RFC 9457 problem with a machine-readable code.

object
type
required
string
title
required
string
status
required
integer
detail
string
code
required

Stable machine-readable error code.

string
Example
{
"type": "about:blank",
"title": "Conflict",
"status": 409,
"code": "conflict"
}

Signed in, but not allowed.

Media typeapplication/problem+json

An RFC 9457 problem with a machine-readable code.

object
type
required
string
title
required
string
status
required
integer
detail
string
code
required

Stable machine-readable error code.

string
Example
{
"type": "about:blank",
"title": "Conflict",
"status": 409,
"code": "conflict"
}

Clashes with existing data or state.

Media typeapplication/problem+json

An RFC 9457 problem with a machine-readable code.

object
type
required
string
title
required
string
status
required
integer
detail
string
code
required

Stable machine-readable error code.

string
Example
{
"type": "about:blank",
"title": "Conflict",
"status": 409,
"code": "conflict"
}