Writing from your systems.
POST /v2/own-workforce/employees creates employees with their contracts and remunerations; trainings (POST /v2/own-workforce/trainings) and absences and accidents (POST /v2/own-workforce/absences) have their own v2 routes, and each of the three has a v2 delete. To load a file, use the Imports API with the Own Workforce Import Templates. Deletion is also available per record and in bulk. To correct a stored record, delete it and send it again (see Correcting data).The shape of the data
One employee row carries the person’s demographics and owns everything else:organization_id. Contracts, remunerations, trainings and absences resolve their owning organization by walking up to the employee, which is why most of their endpoints require an id of the parent rather than offering a free-standing list.
Authentication
All requests need an API key and the organization it belongs to. See the Authentication Guide.Headers
string
required
Your API key for authenticationExample:
sk_live_1234567890abcdefstring
required
Your organization UUIDExample:
a8315ef3-dd50-43f8-b7ce-d839e68d51faGroup view
Holdings can widen most list endpoints to the whole accepted business family withconsolidate_group=true, then narrow it again with organization_id[]. Without it, a list returns the header organization only. Rows returned under group view carry organization_id, organization_name and organization_logo_url so you can tell subsidiaries apart.
Aggregates
For headcount, FTE, average remuneration, the gender pay gap, training hours and absence rates — already grouped by country, gender, job category, nationality or age — use Query datasets with one of the seven own-workforce dataset keys. That is a far cheaper path than paging these endpoints and aggregating client-side. List available datasets enumerates the keys.Personal data
These endpoints return birth dates, gender, disability grade, individual salaries, sick leave and workplace accident context. That is personal data, and parts of it are special-category data under the GDPR. Treat responses accordingly: do not log them verbatim, do not cache them in shared stores, and restrict the API keys that can reach them.Available Endpoints
List employees
Paginated employee list with filters
Get employee
A single employee by id
Contracts & remuneration
Contracts of an employee, and salaries of a contract
Trainings
Training records with hours and type
Absences & accidents
Sick leave and workplace accidents
Create employees (v2)
Employees, contracts and remunerations from your HR system
Delete employees (v2)
Employees by id, with everything recorded about them
Create trainings (v2)
Trainings of your employees
Delete trainings (v2)
Trainings by id
Create absences (v2)
Absences and accidents at work of your employees
Delete absences (v2)
Absences and accidents by id
Upload a CSV
Presigned upload, the legacy write path