Deel: Create time-off request — 201 response body — time offs item
Create time-off request: 201 response body, field time_offs / item. Complete fields and constraints for contract 2026-10-27.
API reference · Contract 2026-10-27
SDK schema: Create time-off request — 201 response body — time offs item
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Created time off request |
amount | string | Optional | Amount of time off taken. This is the total amount of time off taken. For example, if you take 2 days off, this will be 2. If you take 1 day off, this will be 1. |
approved_at | JSON | Optional | |
approved_at (anyOf 1) | string | Alternative | This is the date when the time off request was approved. This will be null if the time off request is not approved yet. Format: date-time |
approved_at (anyOf 2) | null | Alternative | This is the date when the time off request was approved. This will be null if the time off request is not approved yet. Format: date-time |
attachments | array | Optional | List of attachments associated with the time off request. |
attachments[] | Model | Each item | Expand Update time-off request — 200 response body — time off attachments item |
canceled_at | JSON | Optional | |
canceled_at (anyOf 1) | string | Alternative | Time off cancellation date Format: date-time |
canceled_at (anyOf 2) | null | Alternative | Time off cancellation date Format: date-time |
contract_oid | JSON | Optional | |
contract_oid (anyOf 1) | string | Alternative | Contract id. This is the id of the contract associated with the time off request. |
contract_oid (anyOf 2) | null | Alternative | Contract id. This is the id of the contract associated with the time off request. |
created_at | string | Required within parent | This is the date when the time off request was created in the database. Format: date-time |
custom_field_values | array | Optional | Answers to the custom fields the request policy declares. Omitted when the policy declares none. |
custom_field_values[] | Model | Each item | Expand Update time-off request — 200 response body — time off custom field values item |
deduction_amount | JSON | Optional | |
deduction_amount (anyOf 1) | string | Alternative | Deduction amount. Available for independent contractor’s policies |
deduction_amount (anyOf 2) | null | Alternative | Deduction amount. Available for independent contractor’s policies |
deleted_at | JSON | Optional | |
deleted_at (anyOf 1) | string | Alternative | Time off deletion date. Present only when the time-off is soft-deleted and include_deleted_time_offs was requested. Format: date-time |
deleted_at (anyOf 2) | null | Alternative | Time off deletion date. Present only when the time-off is soft-deleted and include_deleted_time_offs was requested. Format: date-time |
description | string | Optional | Description of the time off request. Some policies require that a description is provided. |
end_date | string | Required within parent | End date of the time off request. This is the date when the time off ends. For example, if you take 2 days off, this will be the end date of the second day. Format: date |
entitlement_unit | string | Required within parent | The unit in which the time off usage and entitlement are calculated. Known values: HOUR, BUSINESS_DAY, CALENDAR_DAY, WEEK, MONTH, YEAR |
half_end_date | boolean | Required within parent | Whether the end date is a half day or not. |
half_start_date | boolean | Required within parent | Whether the start date is a half day or not. |
is_end_date_estimated | boolean | Optional | Whether the end date is estimated or not. This is used on event based policies such as Parental leave. |
is_paid | boolean | Required within parent | Whether the time off is paid or unpaid. |
other_type_description | JSON | Optional | |
other_type_description (anyOf 1) | string | Alternative | Description of the time off type. This is used when the policy is OTHER. |
other_type_description (anyOf 2) | null | Alternative | Description of the time off type. This is used when the policy is OTHER. |
reason | string | Optional | Reason for taking time off. This is complementary information for the time-off description. Useful to provide sub categories for the same policy. |
recipient_profile | Model | Optional | Expand Update time-off request — 200 response body — time off recipient profile The time off profile of the recipient of the time off request. Must be a worker profile. |
requested_at | string | Required within parent | This is the date when the time off request was made. Format: date |
requester_profile | Model | Optional | Expand Update time-off request — 200 response body — time off requester profile The time off profile of the requester of the time off request. Can be either a client or worker profile. |
start_date | string | Required within parent | Start date of the time off request. This is the date when the time off starts. For example, if you take 2 days off, this will be the start date of the first day. Format: date |
status | string | Optional | Status of the time off request. Can be REQUESTED, APPROVED, REJECTED, USED or CANCELED. Known values: REQUESTED, APPROVED, REJECTED, USED, CANCELED, DELETED |
time_off_dailies | array | Optional | |
time_off_dailies[] | Model | Each item | Expand Update time-off request — 200 response body — time off time off dailies item |
time_off_event | Model | Optional | Expand Update time-off request — 200 response body — time off time off event |
time_off_percentage | JSON | Optional | |
time_off_percentage (anyOf 1) | string | Alternative | This is the percentage of time off taken. |
time_off_percentage (anyOf 2) | null | Alternative | This is the percentage of time off taken. |
time_off_type | Model | Optional | Expand Update time-off request — 200 response body — time off time off type The type of time off taken. |
time_off_type_id | string | Required within parent | Time off type id. This is the id of the time off type associated with the time off request. Format: uuid |
updated_at | string | Required within parent | This is the date when the time off request was last updated in the database. Format: date-time |
Referenced models: Update time-off request — 200 response body — time off custom field values item, Update time-off request — 200 response body — time off attachments item, Update time-off request — 200 response body — time off recipient profile, Update time-off request — 200 response body — time off requester profile, Update time-off request — 200 response body — time off time off dailies item, Update time-off request — 200 response body — time off time off event, Update time-off request — 200 response body — time off time off type