Browse docs

Users API

Read user records from Scan2Evolve for reporting, provisioning checks, or downstream integrations. This API is read-only and is designed to complement the Employee Sync API.

List users

Retrieve all users for the authenticated organisation. You can filter by role and active status.

Request

GET /api/v1/users HTTP/1.1
Host: api.scan2evolve.com
Authorization: Bearer YOUR_API_TOKEN
Accept: application/json

Response

HTTP/1.1 200 OK
Content-Type: application/json

[
  {
    "id": "usr_123",
    "name": "Jane Doe",
    "email": "jane@example.com",
    "isActive": true,
    "employeeNumber": "E-001",
    "supervisorName": "John Manager",
    "supervisorEmail": "john.manager@example.com",
    "lastSeen": "2025-12-01T10:15:00Z",
    "organizationId": "org_123",
    "roles": ["site_manager"],
    "sites": [
      {
        "id": "site_123",
        "name": "Melbourne Warehouse",
        "code": "MEL-WH"
      }
    ]
  }
]

Filters

  • role – filter users that have a given role name (for example site_manager).
  • isActivetrue or false to filter by active status.

Example with filters

GET /api/v1/users?role=site_manager&isActive=true HTTP/1.1
Host: api.scan2evolve.com
Authorization: Bearer YOUR_API_TOKEN
Accept: application/json

Get a user

Retrieve a single user by ID. The response includes basic profile details, roles, and site assignments.

Request

GET /api/v1/users/usr_123 HTTP/1.1
Host: api.scan2evolve.com
Authorization: Bearer YOUR_API_TOKEN
Accept: application/json

Response

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "usr_123",
  "name": "Jane Doe",
  "email": "jane@example.com",
  "isActive": true,
  "employeeNumber": "E-001",
  "supervisorName": "John Manager",
  "supervisorEmail": "john.manager@example.com",
  "lastSeen": "2025-12-01T10:15:00Z",
  "organizationId": "org_123",
  "roles": ["site_manager"],
  "sites": [
    {
      "id": "site_123",
      "name": "Melbourne Warehouse",
      "code": "MEL-WH"
    }
  ]
}
Top