Get employees

## Employees Retrieves a paginated list of employees for the authenticated tenant. **Method:** `GET` **Endpoint:** `{{baseUrl}}/employees/list` --- ## Authentication This request requires a Bearer token passed via the `Authorization` header: ``` Authorization: Bearer {{bearerToken}} ``` --- ## Headers | Header | Value | Description | | --- | --- | --- | | `Accept` | `application/json` | Specifies the expected response format | | `vnd.a1.tenant-id` | | Tenant identifier for multi-tenant environments | --- ## Query Parameters | Parameter | Type | Required | Description | Example | | --- | --- | --- | --- | --- | | `page` | number | No | Page number for pagination | `1` | | `limit` | number | No | Number of results per page | `20` | | `sortColumn` | string | No | Column to sort results by | `lastName`, `firstName` | | `sortOrder` | string | No | Sort direction | `asc`, `desc` | | `statusFilter` | string/number | No | Filter employees by status | `1` (active) | | `searchCol` | string | No | Column to search on | `lastName` | | `searchVal` | string | No | Value to search for | `mark` | | `payCycleId` | string | No | Filter results by pay cycle ID | `payCycleId` | --- ## Response Returns a paginated response object containing an array of employee records and pagination metadata. ### Pagination Metadata | Field | Type | Description | | --- | --- | --- | | `totalCount` | number | Total number of employees matching the query | | `totalPages` | number | Total number of pages available | | `limit` | number | Number of results per page | | `currentPage` | number | The current page number | ### Employee Object Fields | Field | Type | Description | | --- | --- | --- | | `id` | number | Internal employee ID | | `UUID` | string | Unique identifier (UUID) for the employee | | `firstName` | string | Employee's first name | | `lastName` | string | Employee's last name | | `middleName` | string | Employee's middle name | | `nameKnowAs` | string | Preferred or known-as name | | `name` | string | Full name in `lastName,firstName` format | | `primaryemail` | string | Primary email address of the employee | | `type` | string | Employment type — `PAYE` or `Subcontractor` | | `payType` | string | Pay type — `PAYE` or `Subcontractor` | | `employeeStatus` | string | Current status of the employee (e.g. `active`) | | `employeeNo` | number | Employee number | | `userID` | string | Associated user ID | | `activeJobs` | number | Number of currently active job assignments | | `inactiveJobs` | number | Number of inactive job assignments | | `futureJobs` | number | Number of future job assignments | | `engagementUuid` | string | UUID of the associated engagement | | `createdAt` | string (ISO 8601) | Timestamp when the employee record was created | | `sortColumn` | string | Column used for sorting in the response | | `lastSyncStatus` | object | Sync status per category (e.g. `JOB`, `TAX`, `BANK`, `EMPLOYEE`, `PERSONAL`, `ENGAGEMENT`) — each containing `message`, `success`, and `updatedAt` | ### Example Response ``` json { "rows": [ { "id": 1000, "UUID": "e2ed0e36-de0f-445e-9340-68974de2664b", "firstName": "John", "lastName": "Doe", "middleName": "", "nameKnowAs": "Johnny", "name": "Doe,John", "primaryemail": "john.doe@example.com", "type": "PAYE", "payType": "PAYE", "employeeStatus": "active", "employeeNo": 0, "userID": "axb6yJYVScrv9t5ZMakNmqQ5", "activeJobs": 6, "inactiveJobs": 0, "futureJobs": 0, "engagementUuid": "a3b3d8a6-49bc-4b68-9745-16818eaf20b5", "createdAt": "2025-12-11T00:47:17.292Z", "sortColumn": "", "lastSyncStatus": { "PERSONAL": { "message": "Employee synced successfully!", "success": true }, "ENGAGEMENT": { "message": "Employee synced successfully!", "success": true }, "updatedAt": "2026-02-02T04:49:34.453Z" } } ], "totalCount": 1310, "totalPages": 66, "limit": 20, "currentPage": 1 } ```

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Query parameters

pageintegerOptional
searchColstringOptional
searchValstringOptional
sortColumnanyOptional
sortOrderstringOptional
payCycleIdstringOptional
statusFilteranyOptional
limitanyOptional

Response

Successful Response
rowslist of objects
limitdouble
totalCountdouble
currentPagedouble
totalPagesdouble