Get Workforce Employee
const options = {
method: 'GET',
headers: {'x-api-key': '<x-api-key>', 'x-organization-id': '<x-organization-id>'}
};
fetch('https://api.dcycle.io/v1/own_workforces/{own_workforce_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.dcycle.io/v1/own_workforces/{own_workforce_id}"
headers = {
"x-api-key": "<x-api-key>",
"x-organization-id": "<x-organization-id>"
}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.dcycle.io/v1/own_workforces/{own_workforce_id} \
--header 'x-api-key: <x-api-key>' \
--header 'x-organization-id: <x-organization-id>'{
"id": "<string>",
"external_employee_id": "<string>",
"birth_date": "<string>",
"gender": "<string>",
"disabled_employee": "<string>",
"nationality": {},
"organization_id": "<string>",
"organization_name": "<string>",
"organization_logo_url": "<string>",
"created_at": "<string>",
"updated_at": {}
}Get Workforce Employee
Retrieve a single own workforce employee with their demographic data
GET
/
v1
/
own_workforces
/
{own_workforce_id}
Get Workforce Employee
const options = {
method: 'GET',
headers: {'x-api-key': '<x-api-key>', 'x-organization-id': '<x-organization-id>'}
};
fetch('https://api.dcycle.io/v1/own_workforces/{own_workforce_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.dcycle.io/v1/own_workforces/{own_workforce_id}"
headers = {
"x-api-key": "<x-api-key>",
"x-organization-id": "<x-organization-id>"
}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.dcycle.io/v1/own_workforces/{own_workforce_id} \
--header 'x-api-key: <x-api-key>' \
--header 'x-organization-id: <x-organization-id>'{
"id": "<string>",
"external_employee_id": "<string>",
"birth_date": "<string>",
"gender": "<string>",
"disabled_employee": "<string>",
"nationality": {},
"organization_id": "<string>",
"organization_name": "<string>",
"organization_logo_url": "<string>",
"created_at": "<string>",
"updated_at": {}
}← Own Workforce API
Retrieve one employee by id. This returns the person’s demographics; their contracts, trainings and absences live on their own endpoints.
Request
Headers
string
required
Your API key for authenticationExample:
sk_live_1234567890abcdefstring
required
Your organization UUIDExample:
a8315ef3-dd50-43f8-b7ce-d839e68d51faPath Parameters
string
required
Employee UUIDExample:
550e8400-e29b-41d4-a716-446655440000Query Parameters
boolean
default:"false"
Group view. By default the employee must belong to the header organization. With
true the lookup spans the header organization’s accepted business family, and the response additionally carries the owning organization’s name and logo.Response
string
Employee UUID
string
The identifier from your HR system
string
YYYY-MM-DDstring
One of
M, F, O (other) or NS (not specified)string
Disability grade:
no_disability, with_disability, disability_33 or disability_65string | null
Employee nationality, null when it was not provided
string
Owning organization
string
Owning organization name. Present only when
consolidate_group=true.string
Owning organization logo. Present only when
consolidate_group=true.string
ISO 8601 timestamp
string | null
ISO 8601 timestamp
Example
curl -X GET "https://api.dcycle.io/v1/own_workforces/550e8400-e29b-41d4-a716-446655440000" \
-H "x-api-key: ${DCYCLE_API_KEY}" \
-H "x-organization-id: ${DCYCLE_ORG_ID}"
import os
import requests
headers = {
"x-api-key": os.getenv("DCYCLE_API_KEY"),
"x-organization-id": os.getenv("DCYCLE_ORG_ID"),
}
employee_id = "550e8400-e29b-41d4-a716-446655440000"
response = requests.get(
f"https://api.dcycle.io/v1/own_workforces/{employee_id}",
headers=headers,
)
employee = response.json()
# Print the identifier only. The rest of this response is personal data — see the warning below.
print(employee["external_employee_id"], "found")
const axios = require('axios');
const headers = {
'x-api-key': process.env.DCYCLE_API_KEY,
'x-organization-id': process.env.DCYCLE_ORG_ID
};
const employeeId = '550e8400-e29b-41d4-a716-446655440000';
axios.get(`https://api.dcycle.io/v1/own_workforces/${employeeId}`, { headers })
.then(response => {
// Log the identifier only. The rest of this response is personal data.
console.log(response.data.external_employee_id, 'found');
})
.catch(error => console.error(error));
This response carries birth date, gender and disability grade. Do not log it verbatim — the samples above deliberately print only the identifier.
Successful Response
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"external_employee_id": "EMP-2024-001",
"birth_date": "1990-01-01",
"gender": "F",
"disabled_employee": "no_disability",
"nationality": "Spain",
"organization_id": "a8315ef3-dd50-43f8-b7ce-d839e68d51fa",
"created_at": "2026-02-15T09:30:00",
"updated_at": "2026-02-15T09:30:00"
}
Common Errors
401 Unauthorized
Cause: the key is invalid, or it does not belong to the organization inx-organization-id — the two are looked up as a pair. A request carrying no credentials at all answers AUTH_REQUIRED instead.
{
"detail": "Invalid API key for organization",
"code": "INVALID_API_KEY"
}
403 Forbidden
Cause: the key’s owner is not an enabled member of the organization inx-organization-id.
{
"detail": "Logged User is not Member of Organization",
"code": "LOGGED_USER_NOT_MEMBER"
}
404 Not Found
Cause: no employee with that id inside your perimeter. An employee that exists but belongs to another organization returns exactly this response, not a 403 — the endpoint deliberately refuses to confirm that an id exists elsewhere.{
"code": "NOT_FOUND",
"detail": "OwnWorkforceModel with id='550e8400-e29b-41d4-a716-446655440000' not found"
}
Related Endpoints
List employees
Find the id to look up
Contracts of an employee
Their employment history
Trainings of an employee
Their training records
Delete employee
Remove the record
Was this page helpful?