Deel: Terminate contract — request body — body data
Terminate contract: request body, field body / data. Complete fields and constraints for contract 2026-10-27.
API reference · Contract 2026-10-27
SDK schema: Terminate contract — request body — body data
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Termination data. At minimum, you must provide either terminate_now: true (for immediate termination) OR completion_date (for scheduled termination). |
completion_date | string | Optional | Contract completion date (YYYY-MM-DD). Required when terminate_now is false or not provided. Since terminate_now defaults to false, this field is required unless you explicitly set terminate_now to true. Format: date |
eligible_for_rehire | string | Optional | Indicates whether the contractor is eligible for rehire in the future. One of: YES, NO, DONT_KNOW |
eligible_for_rehire_reason | string | Optional | Provides context when eligible_for_rehire is ‘DONT_KNOW’. Should be empty or null for other values. Maximum length: 255 |
message | string | Optional | Optional message to include with the termination Maximum length: 1000 |
terminate_now | boolean | Optional | If true, terminates the contract immediately. If false, completion_date is required. Default: false |
termination_reason_description | string | Optional | Free-form text providing additional context about the termination reason. Can be provided independently without termination_reason_id, or used to add context to a selected reason. Maximum length: 1000 |
termination_reason_id | string | Optional | The UUID of the termination reason. Use GET /contracts/termination-reasons to retrieve the list of available reasons. Format: uuid |
termination_type | string | Optional | The type of termination. Specifies whether it is a resignation (contractor-initiated), termination (client-initiated), or end of contract (mutual/planned). One of: RESIGNATION, TERMINATION, END_OF_CONTRACT |