Skip to navigation

Update multiple shifts

Beta

Partially updates up to 100 shifts of one Global Payroll contract (contract_id); omitted fields are left unchanged. Each shift follows the single-shift update rules: correction and raw shifts, shifts in a closed payroll cycle, and a change to a shift rate of another type are rejected. All or nothing: if any shift fails, none is updated and every failure is listed.

Token scopes: time-tracking: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-10.

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

X-BetaenumRequiredDefaults to true

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

Allowed values:

Request

Request body to update multiple shifts of one contract by their external IDs.
dataobjectRequired

Response

Shifts updated successfully.
datalist of objects

Errors

401
Unauthorized Error
500
Internal Server Error