Skip to navigation

Create an engagement

Beta

Creates an IC contract, applies the client signature, and invites the worker, in one idempotent call. Retry with the same Idempotency-Key to resume after a partial failure.

Token scopes: contracts:write

Beta: this version requires the X-Beta: true request header and its contract may change before it is promoted to stable. It is scheduled to become stable on 2027-02-09.

Authentication

AuthorizationBearer

Authentication

The Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail.

curl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \
  -H 'Authorization: Bearer YOUR-TOKEN-HERE'

Learn more about authentication

OR
AuthorizationBearer

Standard OAuth2 security scheme based on https://swagger.io/docs/specification/authentication/

Headers

Idempotency-KeystringOptionalformat: "uuid"

A v4 UUID. Reusing the same key with the same body resumes an in-progress or partially-failed engagement instead of creating a duplicate.

X-BetaenumRequiredDefaults to true

Opts in to the beta version of this endpoint. Must be true.

Allowed values:

Request

This endpoint expects an object.
dataobjectRequired

POST /rest/contracts data (legal_entity_id/team_id flattened - a nested id property is rejected as a server-generated field; job_title omitted - undocumented for that endpoint), plus client_signature and actions. See each field below for whether it is required.

Response

All requested steps completed.
dataobject

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
422
Unprocessable Entity Error
429
Too Many Requests Error
500
Internal Server Error