Deel
Authentication: OAuth or API token. See Magic Link for the runtime auth flow, or Application credentials to bring your own OAuth app.
Sample use cases
- List all active EOR contracts for our engineering team.
- Create a time-off request for a contractor next week.
- Show me the legal entities and their working locations.
- Update the work location for a newly relocated employee.
Available Tools
List contracts in the organization. Filter server-side by type, status, team, legal entity, country, currency, or a t…
Get a single contract by id. Use list_contracts to find valid IDs.
Create an independent-contractor (IC) contract. Discover required IDs first: list_groups (team_id), list_legal_entiti…
Terminate a non-EOR contract (independent-contractor, PAYG, etc). Use terminate_eor_contract instead for contracts wh…
Initiate offboarding/termination for an EOR (Employer of Record) contract. Use terminate_contract instead for non-EOR…
Amend an existing contract’s terms (compensation, job title, seniority, scope of work, etc). Only send the fields tha…
List contract termination reasons available in this organization. Use for terminate_contract’s termination_reason_id.
List the custom field definitions available on people profiles in this organization (name, type, and whether required…
Get the custom field values set on one person’s profile. Use list_people to find the worker id, and discover_person_c…
Set a custom field’s value on one person’s profile. Use list_people to find the worker id, and discover_person_custom…
List groups (teams) in the organization. Use this to find team/group IDs for other tools.
Create a group (team).
Rename a group (team). Use list_groups to find valid IDs.
Archive (delete) a group by id. Use list_groups to find valid IDs.
List legal entities in the organization. Use this to find legal_entity_id for create_contract.
List job titles available in this organization. Use for create_contract’s job_title_id.
List countries supported by Deel, with ISO codes. Use for create_contract’s country_code.
List seniority levels available in this organization. Use for create_contract’s seniority_id.
List supported currencies (ISO 4217 codes). Use for create_contract’s compensation_details currency.
List global time-off category names (e.g. VACATION, SICK_LEAVE) for reference only — these are not valid time_off_typ…
List working locations configured for this organization. Use for update_person_work_location’s working_location_id.
List organization structures (team hierarchies, roles) for this organization.
List people (HRIS profiles) in the organization. Supports search by name, and filtering by team, hiring status, hirin…
Get a single person’s HRIS profile by id. Use list_people to find valid IDs.
Update a person’s working location. Use list_people to find the HRIS profile id, and list_working_locations to find a…
List the time-off policies available to one HRIS profile (e.g. vacation, sick leave). Use list_people to find the hri…
List existing time-off requests for one HRIS profile, with their id, status, and dates. Use list_people to find the h…
Create a time-off request for a person. Use list_people to find recipient_profile_id, and list_time_off_policies for…
Update an existing time-off request. Use list_time_off_requests to find the request id first.
Approve or reject one or more time-off requests in a single call. Use list_time_off_requests to find pending request…
Cancel (delete) a time-off request by id. Use list_time_off_requests to find the request id first. This immediately s…
List webhook subscriptions registered for this organization.
Create a webhook subscription. Use list_webhook_event_types to find valid event names for the events list.
Update a webhook subscription’s status (enabled/disabled) or child-org visibility. Use list_webhooks to find valid ID…
Delete a webhook subscription by id. Use list_webhooks to find valid IDs.
List the webhook event types available for subscription. Use for create_webhook’s events list.