Skip to main content
Own Workforce is the social pillar of Dcycle: headcount and FTE, contract composition, remuneration and the gender pay gap, training hours, absenteeism and workplace accidents. It is the data behind the ESRS S1 disclosures, and it is entirely separate from Employees, which tracks commuting for Scope 3 emissions.
There is no endpoint that creates or edits a single record. Every write goes through the Imports API — see Own Workforce Import Templates for the three template_id values and their columns. Deletion, by contrast, is available per record and in bulk. Plan integrations accordingly: you can remove an employee through this API but not create one.

The shape of the data

One employee row carries the person’s demographics and owns everything else:
Only the employee row carries an 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_1234567890abcdef
string
required
Your organization UUIDExample: a8315ef3-dd50-43f8-b7ce-d839e68d51fa
The key is bound to its organization: a key issued for one organization cannot be used with another organization’s id.

Group view

Holdings can widen most list endpoints to the whole accepted business family with consolidate_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

Upload a CSV

Presigned upload, the legacy write path