Skip to content

Deel: Update contract — request body — body data base compensation type: salaried, hourly, unpaid, commission only, contract term: definite, indefinite, type of edit: amendment, direct

Update contract: request body, field body / data / base_compensation_type: salaried, hourly, unpaid, commission_only, contract_term: definite, indefinite, type_of_edit: amendment, direct. Complete fields and constraints for contract 2026-10-27.

API reference · Contract 2026-10-27

SDK schema: Update contract — request body — body / data / base_compensation_type: salaried, hourly, unpaid, commission only, contract term: definite, indefinite, type of edit: amendment, direct

FieldTypePresenceDescription and constraints
$objectRootYou can specify any combination of data points that need changing for a Global Payroll amendment, alongside the required effective_date.
amountnumberOptionalBase compensation amount to be paid per scale.
Format: double
Maximum: 1000000000
Minimum: 0
base_compensation_custom_namestringOptionalCustom display name for the base compensation.
Maximum length: 255
base_compensation_typestringOptionalType of base compensation. Defaults to salaried if base compensation fields are provided and this is omitted.
Default: salaried
One of: salaried, hourly, unpaid, commission_only
change_reasonstringOptionalThe unique identifier (oid) of a modification reason configured for the organization, not free text. Required by organizations that have modification reasons configured.
Format: uuid
contract_start_datestringOptionalShort date in format ISO-8601 (YYYY-MM-DD). The contract start date.
Format: date
contract_termstringOptionalWhether the contract has a fixed end date. ‘end_date’ is required when this is ‘definite’.
One of: definite, indefinite
currency_codestringOptionalCurrency code in ISO 4217 format.
Maximum length: 3
Minimum length: 3
Pattern: ^[A-Z]{3}$
custom_fieldsarrayOptionalCustom field values to update.
custom_fields[]ModelEach itemExpand Update contract — request body — body / data / base_compensation_type: salaried, hourly, unpaid, commission only, contract term: definite, indefinite, type of edit: amendment, direct custom fields item
effective_datestringRequired within parentShort date in format ISO-8601 (YYYY-MM-DD) when the amendment takes effect. Required — the amendment cannot be signed without it.
Format: date
end_datestringOptionalShort date in format ISO-8601 (YYYY-MM-DD). Required when contract_term is ‘definite’.
Format: date
pay_slip_currencystringOptionalCurrency shown on the payslip.
Maximum length: 3
Minimum length: 3
Pattern: ^[A-Z]{3}$
payout_currencystringOptionalCurrency the worker is paid out in.
Maximum length: 3
Minimum length: 3
Pattern: ^[A-Z]{3}$
scalestringOptionalDefines the scale at which the base compensation amount is paid.
One of: hourly, daily, weekly, monthly, annually, two_weekly, bi_monthly, custom, one_off
type_of_editstringOptionalWhether the change requires a signature. ‘amendment’ (default) creates a pending amendment that must be signed via POST /rest/contracts/{contract_id}/amendments/{amendment_id}/sign before it takes effect. ‘direct’ applies the change immediately, with no signature required.
Default: amendment
One of: amendment, direct
variable_compensationsarrayOptionalVariable compensations to add or update alongside the base compensation change.
variable_compensations[]ModelEach itemExpand Update contract — request body — body / data / base_compensation_type: salaried, hourly, unpaid, commission only, contract term: definite, indefinite, type of edit: amendment, direct variable compensations item

Referenced models: Update contract — request body — body / data / base_compensation_type: salaried, hourly, unpaid, commission only, contract term: definite, indefinite, type of edit: amendment, direct custom fields item, Update contract — request body — body / data / base_compensation_type: salaried, hourly, unpaid, commission only, contract term: definite, indefinite, type of edit: amendment, direct variable compensations item

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.