Skip to main content
All user endpoints require level 0 permission and a Bearer token.

Writable fields

FieldTypeRequiredDefault
first_namestringyes
last_namestringyes
usernamestringyes
emailstringyes
passwordstringyes
phonestringnonull
langstringno"en"
locationstringnonull
nationalitystringnonull
timezonestringno"UTC"
is_activebooleannotrue

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": {}
}