The purpose of this API is to retrieve a paginated list of employees, with optional filters and additional personal and employment information. If groups is omitted, only employee_code, full_name, and short_name are returned.
Bearer token for authentication. Format: Bearer <token>
Accept
Yes
application/json
Query String Parameters
Parameter
Required
Type
Description
employee_code
No
String
Filter by employee code.
employment_status
No
String
Filter by employment status. Possible values: Working, Terminated, Resigned.
location_id
No
Integer
Filter by location ID.
position_id
No
Integer
Filter by position ID.
department_id
No
Integer
Filter by department ID.
direct_head_code
No
String
Filter employees reporting directly to the specified employee code.
groups
No
String
Comma-separated information groups: personal_info, employment_info. Omit to return root fields only.
page_number
No
Integer
Page number. Default = 1.
page_size
No
Integer
Records per page. Default = 50; recommended maximum = 500.
When multiple employee filters are supplied, they are combined using AND logic. Employee codes are strings; preserve leading zeros.
Information Groups
Group
Description
personal_info
Gender, date of birth, nationality, religion, marital status, military status, and education.
employment_info
Employment status, join date, layoff date, location, position, department, contract type, working days, working hours, attendance scheme, and direct head code.
Example: groups=personal_info,employment_info. Unrequested groups are omitted completely, rather than returned as null.
Indicates whether the request was processed successfully.
title
String
Short response title.
message
String
Human-readable response message.
object
Object / null
Response payload containing meta_data and data for successful list requests.
Pagination Metadata
Field
Type
Description
page_count
Integer
Total number of pages.
page_number
Integer
Current page number.
page_size
Integer
Requested records per page.
record_count
Integer
Total records matching supplied filters.
Root Employee Fields
Field
Type
Nullable
Description
employee_code
String
No
Employee code. Always returned. Preserve leading zeros.
full_name
String
No
Employee full name. Always returned.
short_name
String
Yes
Employee short/display name. Always returned.
Personal Information Fields
Field
Type
Nullable
Description
gender
String
Yes
Employee gender.
date_of_birth
Date
Yes
Date of birth in YYYY-MM-DD format.
nationality
String
Yes
Employee nationality.
religion
String
Yes
Employee religion.
marital_status
String
Yes
Employee marital status.
military_status
String
Yes
Employee military service status.
education
String
Yes
Employee education information.
Employment Information Fields
Field
Type
Nullable
Description
employment_status
String
No
Current employment status.
join_date
Date
Yes
Join date in YYYY-MM-DD format.
layoff_date
Date
Yes
Layoff/termination date in YYYY-MM-DD format.
location
Object
Yes
Assigned location as {id, name}.
position
Object
Yes
Assigned position as {id, name}.
department
Object
Yes
Assigned department as {id, name}.
contract_type
Object
Yes
Assigned contract type as {id, name}.
working_days
Number
Yes
Configured working days.
working_hours
Number
Yes
Configured working hours.
attendance_scheme
Object
Yes
Attendance scheme as {id, name}.
direct_head_code
String
Yes
Employee code of direct head/supervisor.
Reference Objects
The location, position, department, contract_type, and attendance_scheme fields use reference objects with an integer id and string name. Unassigned references are returned as null.