For the base URL, authentication and errors, see the REST API overview.
POST /oauth/device/verification
- Request: POST /oauth/device/verification
- Operation: AuthorizeDevice
- Operation ID:
User_AuthorizeDeviceVerification - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/oauth/device/verification' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/accounts/password
- Request: POST /v1/accounts/password
- Operation: CreateUserPassword
- Operation ID:
User_CreatePassword - Authentication: none, public operation
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/accounts/password' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
POST /v1/accounts/password/reset
- Request: POST /v1/accounts/password/reset
- Operation: CreateUserPasswordReset
- Operation ID:
User_CreatePasswordReset - Authentication: none, public operation
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/accounts/password/reset' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
GET /v1/users
- Request: GET /v1/users
- Operation: ListUsers
- Operation ID:
User_List - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Example request
curl 'https://YOUR_SERVER/v1/users' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
Response example (200)
[
{
"created": 1792263090745,
"email": "jdoe@example.com",
"enabled": true,
"modified": 1792263090745,
"role": "user",
"user": "jdoe",
"verified": true
},
{
"created": 1792263090745,
"email": "operator1@example.com",
"enabled": true,
"modified": 1792263090745,
"role": "member",
"user": "operator1",
"verified": true
},
{
"created": 1792263090745,
"email": "jdoe@example.com",
"enabled": true,
"modified": 1792263090745,
"role": "user",
"user": "jdoe",
"verified": true
}
]POST /v1/users
- Request: POST /v1/users
- Operation: CreateUser
- Operation ID:
User_Create - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Request body (application/json, required)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
email | string | yes | Format: email | |
enabled | boolean | no | ||
options | object | no | ||
options.project | object | no | ||
options.project.default | string | no | Pattern: ^[a-zA-Z0-9_-]{1,32}$ | A unique identifier for resources, consisting of alphanumeric characters, underscores, or hyphens, and limited to 32 characters. |
password | string | yes | Maximum length: 72 | Empty, when an admin creates the account: the user receives an email to set it. |
recaptcha | string | no | ||
role | string | no | One of: user, admin, member, domain_admin | user: a regular account. admin: server administrator (only admins create admins and domain admins). domain_admin: administers the accounts of its hosts. member: only works inside the projects it is invited to (needs options.project.default). |
user | string | yes | Pattern: ^[a-zA-Z0-9_-]{1,32}$ | A unique identifier for resources, consisting of alphanumeric characters, underscores, or hyphens, and limited to 32 characters. |
verified | boolean | no | Email already verified (admins can skip the verification email). |
Example request: Account that sets its own password
curl -X POST 'https://YOUR_SERVER/v1/users' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"email": "jdoe@example.com",
"enabled": true,
"password": "",
"role": "user",
"user": "jdoe",
"verified": true
}'Example body: Member of a project
{
"email": "operator1@example.com",
"enabled": true,
"options": {
"project": {
"default": "plant_madrid"
}
},
"password": "a-strong-password",
"role": "member",
"user": "operator1",
"verified": true
}Example body: Regular account
{
"email": "jdoe@example.com",
"enabled": true,
"password": "a-strong-password",
"role": "user",
"user": "jdoe",
"verified": true
}Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/users/email/verify
- Request: POST /v1/users/email/verify
- Operation: VerifyUserEmail
- Operation ID:
User_VerifyEmail - Authentication: none, public operation
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/users/email/verify' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
GET /v1/users/{user}
- Request: GET /v1/users/
- Operation: ReadUserConfig
- Operation ID:
User_ReadConfig - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
Response example (200, Account that sets its own password)
{
"created": 1792263090745,
"email": "jdoe@example.com",
"enabled": true,
"modified": 1792263090745,
"password": "",
"role": "user",
"user": "jdoe",
"verified": true
}Response example (200, Member of a project)
{
"created": 1792263090745,
"email": "operator1@example.com",
"enabled": true,
"modified": 1792263090745,
"options": {
"project": {
"default": "plant_madrid"
}
},
"password": "a-strong-password",
"role": "member",
"user": "operator1",
"verified": true
}Response example (200, Regular account)
{
"created": 1792263090745,
"email": "jdoe@example.com",
"enabled": true,
"modified": 1792263090745,
"password": "a-strong-password",
"role": "user",
"user": "jdoe",
"verified": true
}PUT /v1/users/{user}
- Request: PUT /v1/users/
- Operation: UpdateUser
- Operation ID:
User_Update - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
email | string | no | ||
enabled | boolean | no | ||
host | array of string | no | Maximum items: 10 | Domains the account belongs to (set on sign-up from the request host). Used for the brand emails, brand cross_sign_in and domain admins. |
limits | object | no | Per-account overrides of the server limits: {"<collection>": {"max_count": n}} (-1 = unlimited, 0 = disabled), and buckets.retention {period, unit}. | |
options | object | no | ||
options.additionalProperties | any | no | ||
options.project | object | no | ||
options.project.default | string | no | Pattern: ^[a-zA-Z0-9_-]{1,32}$ | A unique identifier for resources, consisting of alphanumeric characters, underscores, or hyphens, and limited to 32 characters. |
password | string | no | Length: 6 to 72 | |
role | string | no | One of: user, admin, member, domain_admin | |
verified | boolean | no |
Example request: Disable an account
curl -X PUT 'https://YOUR_SERVER/v1/users/YOUR_USER' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"enabled": false
}'Example body: Make it a domain admin of a brand
{
"host": [
"iot.example.com"
],
"role": "domain_admin"
}Example body: Raise its limits
{
"limits": {
"buckets": {
"max_count": 50
},
"devices": {
"max_count": 500
}
}
}Example body: Set a new password
{
"password": "a-new-strong-password"
}Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
DELETE /v1/users/{user}
- Request: DELETE /v1/users/
- Operation: DeleteUser
- Operation ID:
User_Delete - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl -X DELETE 'https://YOUR_SERVER/v1/users/YOUR_USER' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/account
- Request: GET /v1/users/{user}/account
- Operation: ReadUserAccount
- Operation ID:
User_ReadAccount - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/account' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/email
- Request: GET /v1/users/{user}/email
- Operation: ReadUserEmail
- Operation ID:
User_ReadEmail - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/email' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/events
Deprecated. The OpenAPI document marks this operation as deprecated.
- Request: GET /v1/users/{user}/events
- Operation: SubscribeUserEvents
- Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/events' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
DELETE /v1/users/{user}/federated_identities/{identity_provider}
- Request: DELETE /v1/users/{user}/federated_identities/
- Operation: DeleteUserFederatedIdentity
- Operation ID:
User_DeleteFederatedIdentity - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes | |
identity_provider | path | string | yes |
Example request
curl -X DELETE 'https://YOUR_SERVER/v1/users/YOUR_USER/federated_identities/YOUR_IDENTITY_PROVIDER' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/info/device_locations
- Request: GET /v1/users/{user}/info/device_locations
- Operation: ListDeviceLocations
- Operation ID:
User_ListDeviceLocationsDevice_location - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/info/device_locations' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/info/devices/locations
- Request: GET /v1/users/{user}/info/devices/locations
- Operation: ListDeviceLocations
- Operation ID:
User_ListDeviceLocations - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/info/devices/locations' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/limits
- Request: GET /v1/users/{user}/limits
- Operation: ReadUserLimits
- Operation ID:
User_ReadLimits - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/limits' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/limits/{resource}
- Request: GET /v1/users/{user}/limits/
- Operation: ReadUserLimits
- Operation ID:
User_ReadResourceLimits - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes | |
resource | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/limits/YOUR_RESOURCE' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/membership/{project_owner}/{project_id}/permissions
- Request: GET /v1/users/{user}/membership/{project_owner}/{project_id}/permissions
- Operation: ReadProjectPermissions
- Operation ID:
User_ReadProjectPermissions - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes | |
project_owner | path | string | yes | |
project_id | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/membership/YOUR_PROJECT_OWNER/YOUR_PROJECT_ID/permissions' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/mfa
- Request: GET /v1/users/{user}/mfa
- Operation: ReadUserMFA
- Operation ID:
User_ReadMFAMfa - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/mfa' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
DELETE /v1/users/{user}/mfa/totp
- Request: DELETE /v1/users/{user}/mfa/totp
- Operation: DeleteUserTOTP
- Operation ID:
User_DeleteTOTPTotp - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl -X DELETE 'https://YOUR_SERVER/v1/users/YOUR_USER/mfa/totp' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/users/{user}/mfa/totp/backup-codes
- Request: POST /v1/users/{user}/mfa/totp/backup-codes
- Operation: CreateUserTOTPBackupCodes
- Operation ID:
User_CreateTOTPBackupCodesBackup-code - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/users/YOUR_USER/mfa/totp/backup-codes' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/users/{user}/mfa/totp/setup
- Request: POST /v1/users/{user}/mfa/totp/setup
- Operation: SetupUserTOTP
- Operation ID:
User_SetupTOTP - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/users/YOUR_USER/mfa/totp/setup' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/users/{user}/mfa/totp/verify
- Request: POST /v1/users/{user}/mfa/totp/verify
- Operation: VerifyUserTOTP
- Operation ID:
User_VerifyTOTP - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/users/YOUR_USER/mfa/totp/verify' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
PUT /v1/users/{user}/mfa/webauthn/credentials/{credential}
- Request: PUT /v1/users/{user}/mfa/webauthn/credentials/
- Operation: UpdateWebAuthnCredential
- Operation ID:
User_UpdateWebAuthnCredential - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes | |
credential | path | string | yes |
Request body (application/json, required)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
name | string | yes | Length: 1 to 255 |
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X PUT 'https://YOUR_SERVER/v1/users/YOUR_USER/mfa/webauthn/credentials/YOUR_CREDENTIAL' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"name": ""
}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
DELETE /v1/users/{user}/mfa/webauthn/credentials/{credential}
- Request: DELETE /v1/users/{user}/mfa/webauthn/credentials/
- Operation: DeleteWebAuthnCredential
- Operation ID:
User_DeleteWebAuthnCredential - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes | |
credential | path | string | yes |
Example request
curl -X DELETE 'https://YOUR_SERVER/v1/users/YOUR_USER/mfa/webauthn/credentials/YOUR_CREDENTIAL' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/users/{user}/mfa/webauthn/register/options
- Request: POST /v1/users/{user}/mfa/webauthn/register/options
- Operation: WebAuthnRegisterOptions
- Operation ID:
User_WebAuthnRegisterOptions - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/users/YOUR_USER/mfa/webauthn/register/options' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/users/{user}/mfa/webauthn/register/verify
- Request: POST /v1/users/{user}/mfa/webauthn/register/verify
- Operation: WebAuthnRegisterVerify
- Operation ID:
User_WebAuthnRegisterVerify - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/users/YOUR_USER/mfa/webauthn/register/verify' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/users/{user}/oauth/authorize
- Request: POST /v1/users/{user}/oauth/authorize
- Operation: AuthorizeOauth
- Operation ID:
User_AuthorizeOauth - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
client_id | string | yes | ||
login_hint | string | no | ||
nonce | string | no | ||
prompt | string | no | ||
redirect_uri | string | no | ||
response_mode | string | no | ||
response_type | string | yes | One of: code | |
scope | string | no | ||
state | string | no | ||
ui_locales | string | no |
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/users/YOUR_USER/oauth/authorize' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"client_id": "",
"response_type": "code"
}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/passkeys
- Request: GET /v1/users/{user}/passkeys
- Operation: ReadUserPasskeys
- Operation ID:
User_ReadPasskeys - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/passkeys' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/users/{user}/passkeys/register/options
- Request: POST /v1/users/{user}/passkeys/register/options
- Operation: PasskeyRegisterOptions
- Operation ID:
User_PasskeyRegisterOptions - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/users/YOUR_USER/passkeys/register/options' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
POST /v1/users/{user}/passkeys/register/verify
- Request: POST /v1/users/{user}/passkeys/register/verify
- Operation: PasskeyRegisterVerify
- Operation ID:
User_PasskeyRegisterVerify - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X POST 'https://YOUR_SERVER/v1/users/YOUR_USER/passkeys/register/verify' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
PUT /v1/users/{user}/passkeys/{credential}
- Request: PUT /v1/users/{user}/passkeys/
- Operation: UpdateUserPasskey
- Operation ID:
User_UpdatePasskey - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes | |
credential | path | string | yes |
Request body (application/json, required)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
name | string | yes | Length: 1 to 255 |
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X PUT 'https://YOUR_SERVER/v1/users/YOUR_USER/passkeys/YOUR_CREDENTIAL' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"name": ""
}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
DELETE /v1/users/{user}/passkeys/{credential}
- Request: DELETE /v1/users/{user}/passkeys/
- Operation: DeleteUserPasskey
- Operation ID:
User_DeletePasskey - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes | |
credential | path | string | yes |
Example request
curl -X DELETE 'https://YOUR_SERVER/v1/users/YOUR_USER/passkeys/YOUR_CREDENTIAL' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
PUT /v1/users/{user}/password
- Request: PUT /v1/users/{user}/password
- Operation: UpdateUserPassword
- Operation ID:
User_UpdatePassword - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
A JSON object.
Example request (skeleton generated from the schema: required fields only, neutral values)
curl -X PUT 'https://YOUR_SERVER/v1/users/YOUR_USER/password' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/profile
- Request: GET /v1/users/{user}/profile
- Operation: ReadUserProfile
- Operation ID:
User_ReadProfile - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/profile' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
PUT /v1/users/{user}/profile
- Request: PUT /v1/users/{user}/profile
- Operation: UpdateUserProfile
- Operation ID:
User_UpdateProfile - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
company | string | no | Length: 0 to 255 | |
location | string | no | Length: 0 to 255 | |
name | string | no | Length: 0 to 255 | |
picture | string | no | Maximum length: 50000 Pattern: ^$|^data:image/(?:png|jpeg|webp);base64,(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$ | |
url | string | no | Length: 0 to 255 |
Example request: Public profile
curl -X PUT 'https://YOUR_SERVER/v1/users/YOUR_USER/profile' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"company": "Acme Farms",
"location": "Madrid, Spain",
"name": "Jane Doe",
"url": "https://acme.example"
}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/stats
- Request: GET /v1/users/{user}/stats
- Operation: ReadUserStatistics
- Operation ID:
User_ReadStatistics - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/stats' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v1/users/{user}/timezone
- Request: GET /v1/users/{user}/timezone
- Operation: ReadUserTimezone
- Operation ID:
User_ReadTimezone - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v1/users/YOUR_USER/timezone' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
PUT /v1/users/{user}/timezone
- Request: PUT /v1/users/{user}/timezone
- Operation: UpdateUserTimezone
- Operation ID:
User_UpdateTimezone - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Request body (application/json, required)
| Field | Type | Required | Constraints | Description |
|---|---|---|---|---|
timezone | string | yes | Length: 1 to 255 |
Example request: Madrid
curl -X PUT 'https://YOUR_SERVER/v1/users/YOUR_USER/timezone' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"timezone": "Europe/Madrid"
}'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |
GET /v2/users/{user}/events
- Request: GET /v2/users/{user}/events
- Operation: SubscribeUserEvents
- Operation ID:
User_SubscribeEvents - Authentication: access token,
Authorization: Bearer YOUR_TOKEN
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
user | path | string | yes |
Example request
curl 'https://YOUR_SERVER/v2/users/YOUR_USER/events' \
-H 'Authorization: Bearer YOUR_TOKEN'Responses
| Status | Description |
|---|---|
| 200 | ok |
| 401 | unauthorized |
| 403 | forbidden |