Writable fields
| Field | Type | Required | Default |
|---|---|---|---|
| first_name | string | yes | — |
| last_name | string | yes | — |
| username | string | yes | — |
| string | yes | — | |
| password | string | yes | — |
| phone | string | no | null |
| lang | string | no | "en" |
| location | string | no | null |
| nationality | string | no | null |
| timezone | string | no | "UTC" |
| is_active | boolean | no | true |
List users
GET /api/v1/users
{
"success": true,
"message": "2 user(s) found",
"data": [
{
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"first_name": "Admin",
"last_name": "User",
"username": "admin",
"email": "admin@example.com",
"phone": null,
"lang": "en",
"location": null,
"nationality": null,
"timezone": "UTC",
"last_uuid": null,
"last_login_ip": "::1",
"last_login_at": "2026-06-28T12:00:00.000Z",
"last_logout_ip": null,
"is_active": true,
"created_at": "2026-06-28T12:00:00.000Z",
"created_by": null,
"updated_at": "2026-06-28T12:00:00.000Z",
"created_ip": "::1",
"updated_ip": "::1"
}
],
"metadata": {}
}
Get user
GET /api/v1/users/{uuid}
{
"success": true,
"message": "User found",
"data": {
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"first_name": "Admin",
"last_name": "User",
"username": "admin",
"email": "admin@example.com",
"phone": null,
"lang": "en",
"location": null,
"nationality": null,
"timezone": "UTC",
"last_uuid": null,
"last_login_ip": "::1",
"last_login_at": "2026-06-28T12:00:00.000Z",
"last_logout_ip": null,
"is_active": true,
"created_at": "2026-06-28T12:00:00.000Z",
"created_by": null,
"updated_at": "2026-06-28T12:00:00.000Z",
"created_ip": "::1",
"updated_ip": "::1"
},
"metadata": {}
}
Create user
POST /api/v1/users
{
"first_name": "Jane",
"last_name": "Smith",
"username": "janesmith",
"email": "jane@example.com",
"password": "securePass123",
"phone": "+351912345679",
"lang": "pt",
"location": "Lisbon",
"nationality": "Portuguese",
"timezone": "Europe/Lisbon",
"is_active": true
}
{
"success": true,
"message": "User created",
"data": {
"uuid": "660e8400-e29b-41d4-a716-446655440001",
"first_name": "Jane",
"last_name": "Smith",
"username": "janesmith",
"email": "jane@example.com",
"phone": "+351912345679",
"lang": "pt",
"location": "Lisbon",
"nationality": "Portuguese",
"timezone": "Europe/Lisbon",
"last_uuid": null,
"last_login_ip": null,
"last_login_at": null,
"last_logout_ip": null,
"is_active": true,
"created_at": "2026-06-28T12:00:00.000Z",
"created_by": null,
"updated_at": "2026-06-28T12:00:00.000Z",
"created_ip": "::1",
"updated_ip": "::1"
},
"metadata": {}
}
Update user
Any subset of writable fields.PUT /api/v1/users/{uuid}
{
"first_name": "Janet",
"lang": "fr",
"location": "Paris",
"timezone": "Europe/Paris"
}
{
"success": true,
"message": "User updated",
"data": {
"uuid": "660e8400-e29b-41d4-a716-446655440001",
"first_name": "Janet",
"last_name": "Smith",
"username": "janesmith",
"email": "jane@example.com",
"phone": "+351912345679",
"lang": "fr",
"location": "Paris",
"nationality": "Portuguese",
"timezone": "Europe/Paris",
"last_uuid": null,
"last_login_ip": null,
"last_login_at": null,
"last_logout_ip": null,
"is_active": true,
"created_at": "2026-06-28T12:00:00.000Z",
"created_by": null,
"updated_at": "2026-06-28T12:00:00.000Z",
"created_ip": "::1",
"updated_ip": "::1"
},
"metadata": {}
}
Delete user
DELETE /api/v1/users/{uuid}
{
"success": true,
"message": "User deleted",
"data": null,
"metadata": {}
}