Welcome to

Deel Developer Documentation

REST, webhooks, and MCP for hiring, payroll, HR, and compliance. Ship apps, automations, and embedded experiences on the workforce platform 40,000+ companies run their global teams on.

REST · OpenAPI 3.0.1MCP · Webhooks
# Create a contractor contract POST https://api.letsdeel.com/rest/v2/contracts Authorization: Bearer $DEEL_API_KEY Content-Type: application/json { “data”: { “title”: “Senior Backend Engineer”, “type”: “ongoing_time_based”, “country_code”: “GB”, “start_date”: “2026-02-01”, “worker”: { “first_name”: “Alex”, “last_name”: “Rivera”, “expected_email”: alex.r@acme.dev }, “compensation_details”: { “amount”: 8000, “currency_code”: “GBP”, “frequency”: “monthly” } } }
// 201 Created · 138ms { “data”: { “id”: “ctr_7HqK2mJ…”, “status”: “draft”, “type”: “ongoing_time_based”, “country_code”: “GB” } }
// Create a contractor contract const response = await fetch(https://api.letsdeel.com/rest/v2/contracts, { method: “POST”, headers: { “Authorization”: “Bearer ” + process.env.DEEL_API_KEY, “Content-Type”: “application/json”, }, body: JSON.stringify({ data: { title: “Senior Backend Engineer”, type: “ongoing_time_based”, country_code: “GB”, start_date: “2026-02-01”, worker: { first_name: “Alex”, last_name: “Rivera”, expected_email: alex.r@acme.dev, }, compensation_details: { amount: 8000, currency_code: “GBP”, frequency: “monthly”, }, }, }), }); const contract = await response.json(); console.log(contract.data.id); // → ctr_7HqK2mJ…
# Create a contractor contract import os import requests response = requests.post( https://api.letsdeel.com/rest/v2/contracts, headers={ “Authorization”: “Bearer ” + os.environ[“DEEL_API_KEY”], “Content-Type”: “application/json”, }, json={ “data”: { “title”: “Senior Backend Engineer”, “type”: “ongoing_time_based”, “country_code”: “GB”, “start_date”: “2026-02-01”, “worker”: { “first_name”: “Alex”, “last_name”: “Rivera”, “expected_email”: alex.r@acme.dev, }, “compensation_details”: { “amount”: 8000, “currency_code”: “GBP”, “frequency”: “monthly”, }, }, }, ) contract = response.json() print(contract[“data”][“id”]) # → ctr_7HqK2mJ…
// Create a contractor contract payload, _ := json.Marshal(map[string]any{ “data”: map[string]any{ “title”: “Senior Backend Engineer”, “type”: “ongoing_time_based”, “country_code”: “GB”, “start_date”: “2026-02-01”, “worker”: map[string]any{ “first_name”: “Alex”, “last_name”: “Rivera”, “expected_email”: alex.r@acme.dev, }, “compensation_details”: map[string]any{ “amount”: 8000, “currency_code”: “GBP”, “frequency”: “monthly”, }, }, }); req, _ := http.NewRequest(“POST”, https://api.letsdeel.com/rest/v2/contracts, bytes.NewReader(payload)) req.Header.Set(“Authorization”, “Bearer “+os.Getenv(“DEEL_API_KEY”)) req.Header.Set(“Content-Type”, “application/json”) resp, _ := http.DefaultClient.Do(req) // → 201 Created
// Create a contractor contract var json = """ { “data”: { “title”: “Senior Backend Engineer”, “type”: “ongoing_time_based”, “country_code”: “GB”, “start_date”: “2026-02-01”, “worker”: { “first_name”: “Alex”, “last_name”: “Rivera”, “expected_email”: alex.r@acme.dev }, “compensation_details”: { “amount”: 8000, “currency_code”: “GBP”, “frequency”: “monthly” } } }"""; var request = HttpRequest.newBuilder() .uri(URI.create(https://api.letsdeel.com/rest/v2/contracts)) .header(“Authorization”, “Bearer ” + System.getenv(“DEEL_API_KEY”)) .header(“Content-Type”, “application/json”) .POST(HttpRequest.BodyPublishers.ofString(json)) .build(); HttpClient.newHttpClient() .send(request, HttpResponse.BodyHandlers.ofString()); // → 201 Created
# Connect Claude Desktop to Deel’s MCP server # ~/Library/Application Support/Claude/claude_desktop_config.json { “mcpServers”: { “deel”: { “url”: https://api.letsdeel.com/mcp } } }
// Claude now has access to tools like: org_person_list contract_list timeoff_request_create eor_employment_cost_calculate

201 Created 138 ms

Launch and integrate apps

One platform for every integration

Deel PayrollDeel HireDeel MobilityDeel IT

What will you build on Deel today?

Need anything else? We’re here.

Trusted by 40,000+ companies, from startups to enterprise

Built with