Skip to content
getgeolens.com

Create User

POST
/admin/users/
curl --request POST \
--url https://example.com/api/admin/users/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "username": "example", "password": "example", "email": "[email protected]", "role": "viewer" }'

Create a new user with the specified role (admin only).

Media type application/json
AdminUserCreate
object
username
required
Username

Login username (3-150 chars). Must be unique across the system.

string
>= 3 characters <= 150 characters
password
required
Password

Initial password (policy: min 12 chars, 3+ character classes). The user can change this after first login.

string
>= 8 characters <= 256 characters
email
Any of:
string format: email
<= 255 characters
role
Role

User role: ‘admin’, ‘editor’, or ‘viewer’. Defaults to ‘viewer’.

string
default: viewer

Successful Response

Media type application/json
UserResponse
object
id
required
Id
string format: uuid
username
required
Username
string
email
required
Any of:
string
is_active
required
Is Active
boolean
status
required
Status

Account status: active, pending, suspended, or deactivated.

string
Allowed values: active pending suspended deactivated
last_login_at
required
Any of:
string format: date-time
created_at
required
Created At
string format: date-time
roles
required
Roles

Assigned role names, e.g. [‘admin’, ‘editor’]

Array<string>
Example
{
"status": "active"
}

Bad request — invalid query parameters or payload

Unauthorized — missing or invalid credentials

Forbidden — caller lacks access to this resource

Not found

Validation error

Internal server error