Skip to main content

Get Employee List (Worker)

Written by Support
Updated over 2 weeks ago

GET [ employee ]

Production Endpoint: https://app.complyflow.com.au/app/public/index.php/api/acu/employee
Test Endpoint: https://test.complyflow.com.au/app/public/index.php/api/acu/employee

Overview

This endpoint returns the list of employees (i.e. Workers) from all contractors associated with the Enterprise Client/Organisation.

Authentication instructions

Refer to the Authentication method for Authentication Methods (for Login and Logout).


​

Permissions Required

The user should possess the permissions below:

  • API User

  • User is Staff

  • Users have Access to View and Edit Staff Permission

Please also refer to the Permissions Overview guide.

Query parameters

FIELD

TYPE

DESCRIPTION

REQUIRED

DEFAULT

PATTERN

date

date

Employee updated time

No

null

YYYYMMDDThh:mm:ss

(E.g. 20221101T10:00:00)

att

string

Contractor Attribute

No

null

page

integer

Page number for paginated results. Pagination is only activated when page or per_page is provided.

No

1

\d+

per_page

integer

Number of records per page (max 1000). Pagination is only activated when page or per_page is provided.

No

500

\d+

Pagination

Pagination is opt-in. By default (when no page or per_page parameters are sent), the endpoint returns all records in a single response. This preserves backwards compatibility with existing API consumers.

To activate pagination, include page and/or per_page in the query string. When pagination is active, the response includes a pagination object with metadata (see Paginated Response Example below).

Request Example

curl --location 'http://test.complyflow.com.au/app/public/index.php/api/acu/employee' \
--header 'Authorization: [...]' \
--header 'Cookie: [...]'

Request Example (with pagination)

curl --location 'http://test.complyflow.com.au/app/public/index.php/api/acu/employee?page=1&per_page=500' \
--header 'Authorization: [...]' \
--header 'Cookie: [...]'

Response Example

The API Request returns a list of employees from all contractors in an organisation:

{
"token": "",
"data": [
{
"id": 3269,
"first_name": "lol",
"last_name": "lol",
"email": "shughi.test@gmail.com",
"contractor_id": 1554,
"company_name": "asda13123213",
"company_trade_name": "asda123123123123123",
"projects": [
"a"
],
"hr_custom_fields": null,
"departments": null,
"category_status": "Pending",
"attributes": [
{
"name": "PersonA",
"value": "No"
}
],
"invite_date": "2024-07-02 19:59:16",
"phone": "0356133611",
"photo_status": 0,
"indigenous_status": "",
"gender": "Female",
"address_street1": null,
"address_street2": null,
"address_suburb": null,
"address_state": null,
"address_country": "",
"postcode": null,
"emergency_contact_address_number": null,
"emergency_contact_address_street": null,
"emergency_contact_address_suburb": null,
"emergency_contact_address_state": null,
"emergency_contact_address_postcode": null,
"online_training": null,
"worker_categories": [
{
"id": 76,
"name": "WorkerCateB",
"status": "Compliant"
}
],
"documents": [
{
"id": 167,
"name": "DocB2",
"expiry": null,
"status": "Approved",
"filename": "mpdf.pdf",
"global_document": 0
}
],
"job_title": null,
"account_status": "Active",
"last_updated": "2024-07-03 13:12:50"
}
]
}

Paginated Response Example

When page or per_page parameters are provided, the response includes a pagination object:

{
"token": "",
"data": [
{
"id": 3269,
"first_name": "lol",
"last_name": "lol",
...
}
],
"pagination": {
"current_page": 1,
"per_page": 500,
"total": 2041,
"total_pages": 5,
"from": 1,
"to": 500,
"next_page_url": "/api/acu/employee?page=2&per_page=500",
"prev_page_url": null
}
}

Photo status (photo_status); 0 - NOT_APPROVED; 1 - APPROVED

Note: The last_updated field may return null if the employee record has no updated_at timestamp.

Results are always ordered by employee ID (id) in ascending order.

Did this answer your question?