Employment management

This guide covers employer-side management of active EOR employment: reading employee profiles, tracking onboarding progress, and managing time off.

All endpoints require an admin-scoped API token. See Getting started for authentication and environment setup. For contract creation, see Hiring & contracts. For amendments and terminations, see Amendments & offboarding.

Employee data

The people endpoints are the primary source of employee profile data across the Embedded surface. The hris_profile_id returned here is the key identifier used across time off, onboarding tracking, and adjustment operations.

MethodEndpointPurpose
GET/peopleList all employees; filter by group or status
GET/people/{hris_profile_id}Retrieve a single employee profile

Use the group query parameter on GET /people to scope results to a specific client company. Subscribe to employee.created.eor to capture new profiles as contracts activate, and worker.v2.updated to receive notifications when profile data changes.

Onboarding tracking

After both you and the worker have signed the contract, the worker begins onboarding. Track their progress to surface checklist status in your platform or trigger downstream logic when onboarding completes.

MethodEndpointPurpose
GET/onboarding/tracker/hris_profile/{hris_profile_id}Retrieve onboarding progress for an employee

The response includes summary.status for the overall onboarding state, progress as a completion percentage, and checklist with the status of individual steps. Mandatory training items (actionable journeys) are also tracked here.

Subscribe to onboarding.status.updated rather than polling this endpoint. The webhook fires on each step completion and on overall status transitions.

Time off management

Deel manages statutory leave entitlements per employment country. Use these endpoints to retrieve policies, query balances, validate requests, and review time off submissions from workers.

Retrieve policies and balances

MethodEndpointPurpose
GET/time_offs/profile/{hris_profile_id}/policiesTime off policies applicable to an employee
GET/time_offs/profile/{hris_profile_id}/entitlementsCurrent leave balances
GET/time_offs/policy-validation-templatesValidation templates for a specific policy

Retrieve policies and balances when rendering the time off management view. Validation templates define the rules a time off request must satisfy for a given policy; use them to validate inputs before submission.

Review time off requests

MethodEndpointPurpose
POST/time_offs/reviewApprove or reject a pending time off request

Workers submit time off requests via the worker-scoped API; see Worker self-service. Review and respond to those requests via this endpoint using your admin token.

For public holidays and country-specific work schedules, use GET /time_offs/dailies to retrieve the applicable schedule before displaying a time off calendar.

Key webhook events

EventTrigger
employee.created.eorNew EOR employee profile created
worker.v2.updatedEmployee profile data changed
onboarding.status.updatedOnboarding step completed or status changed
time-off.createdEmployee submitted a time off request
time-off.reviewedTime off approved or rejected
time-off.updatedTime off request modified
time-off.deletedTime off request cancelled

See the Webhooks guide for event payload structure and signature verification.

Next steps