time_off_requests

Update time off request

Updates a time off request's details (dates, message, days, policy).

This is a full replacement — all fields must be provided, including time_off_request_days with one entry per date (amount_used in seconds, typically 28800 for an 8-hour day).

Approved, paid, or partially paid requests cannot be edited.

If the request was denied, updating it automatically resubmits it (status → submitted).

If the policy does not require approval, the request is auto-approved on update.

Set require_no_shift_overlap to true to reject the update if it overlaps with scheduled attendance shifts.

remove_shifts deletes overlapping attendance shifts only when the policy does not require approval (the request is auto-approved on update). When the policy requires approval, this field is ignored — use the status endpoint to remove shifts at approval time instead.

Note: starts_at and stops_at are interpreted as wall-clock times in the user's configured timezone (any timezone offset in the value is ignored). When all_day is true, the response covers the whole local day, 00:00:00.000–23:59:59.999 in the timezone saved with the request when it was created.

put/v2/time_off_requests/{time_off_request_id}

Request

Path parameters

time_off_request_idinteger required

Time off request ID

Request body

time_off_policy_idinteger required

Time off policy ID

starts_atstring date-time required

Start time (ISO 8601)

stops_atstring date-time required

Stop time (ISO 8601)

messagestring required

Reason for time off

all_dayboolean

Full day request

exclude_weekendsboolean
exclude_holidaysboolean
require_no_shift_overlapboolean

Reject if overlapping shifts exist

remove_shiftsboolean

Remove overlapping attendance shifts. Only honored when the policy does not require approval (auto-approved requests). For policies that require approval, use the status endpoint to remove shifts upon approval.

Response

The updated time off request with its balance preview

Changes

No recorded changes to this operation across all 1 revision of this API.