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
page
searchCol
searchVal
sortColumn
sortOrder
payCycleId
statusFilter
limit
Response
Successful Response
rows
limit
totalCount
currentPage
totalPages
