Deel: Retrieve a list of ATS offers — 200 response body — data item
Retrieve a list of ATS offers: 200 response body, field data / item. Complete fields and constraints for contract 2026-10-27.
API reference · Contract 2026-10-27
SDK schema: Retrieve a list of ATS offers — 200 response body — data item
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
additional_details | JSON | Optional | |
additional_details (anyOf 1) | string | Alternative | Additional details about the offer |
additional_details (anyOf 2) | null | Alternative | Additional details about the offer |
application | Model | Optional | Expand Retrieve a list of ATS offers — 200 response body — data item application The application this offer was made on, so an offer identifies its own candidate and job without a second lookup. Always present: an offer whose application the caller cannot see is not returned at all. |
application_interview_plan_stage_id | string | Optional | Application interview plan stage identifier Format: uuid |
approval_request_id | JSON | Optional | |
approval_request_id (anyOf 1) | string | Alternative | Approval request identifier Format: uuid |
approval_request_id (anyOf 2) | null | Alternative | Approval request identifier Format: uuid |
approval_rule_id | JSON | Optional | |
approval_rule_id (anyOf 1) | string | Alternative | Approval rule identifier Format: uuid |
approval_rule_id (anyOf 2) | null | Alternative | Approval rule identifier Format: uuid |
attachment_id | JSON | Optional | |
attachment_id (anyOf 1) | string | Alternative | Attachment identifier Format: uuid |
attachment_id (anyOf 2) | null | Alternative | Attachment identifier Format: uuid |
compensation_amount | JSON | Optional | |
compensation_amount (anyOf 1) | number | Alternative | Compensation amount Format: double |
compensation_amount (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
compensation_currency | string | Optional | Compensation currency |
compensation_period_slug | string | Optional | Compensation period Known values: annually, monthly, semimonthly, biweekly, weekly, daily, hourly |
country_code | string | Optional | Country code Format: country-code |
created_at | string | Optional | Timestamp when the offer was created Format: date-time |
custom_fields | array | Optional | Custom fields attached to the offer |
custom_fields[] | Model | Each item | Expand Retrieve a list of ATS offers — 200 response body — data item custom fields item |
email | JSON | Optional | Email details |
email (anyOf 1) | Model | Alternative | Expand Retrieve a list of ATS offers — 200 response body — data item email Email details |
email (anyOf 2) | null | Alternative | |
expires_at | JSON | Optional | |
expires_at (anyOf 1) | string | Alternative | Date when the sent offer expires if the candidate has not responded Format: date |
expires_at (anyOf 2) | null | Alternative | Date when the sent offer expires if the candidate has not responded Format: date |
id | string | Optional | Unique identifier Format: uuid |
job_title | string | Optional | Job title |
offer_letter_template_id | JSON | Optional | |
offer_letter_template_id (anyOf 1) | string | Alternative | Offer letter template identifier Format: uuid |
offer_letter_template_id (anyOf 2) | null | Alternative | Offer letter template identifier Format: uuid |
offer_status | string | Optional | Offer status Known values: CREATED, WAITING_FOR_APPROVAL, APPROVED, NOT_APPROVED, SENT, EXPIRED, ACCEPTED, REJECTED |
rejection_reason_id | JSON | Optional | |
rejection_reason_id (anyOf 1) | string | Alternative | Rejection reason identifier Format: uuid |
rejection_reason_id (anyOf 2) | null | Alternative | Rejection reason identifier Format: uuid |
replied_at | JSON | Optional | |
replied_at (anyOf 1) | string | Alternative | Timestamp when the candidate replied (accepted or rejected) to the offer Format: date-time |
replied_at (anyOf 2) | null | Alternative | Timestamp when the candidate replied (accepted or rejected) to the offer Format: date-time |
sent_at | JSON | Optional | |
sent_at (anyOf 1) | string | Alternative | Timestamp when the offer reached the candidate, through Deel or another channel; null until it has been sent Format: date-time |
sent_at (anyOf 2) | null | Alternative | Timestamp when the offer reached the candidate, through Deel or another channel; null until it has been sent Format: date-time |
start_date | string | Optional | Start date Format: date-time |
updated_at | string | Optional | Timestamp when the offer was last updated Format: date-time |
worker_type | string | Optional | Worker type Known values: CONTRACTOR_FIXED, CONTRACTOR_PAY_AS_YOU_GO, CONTRACTOR_MILESTONE, DIRECT_EMPLOYEE, EOR_EMPLOYEE, GLOBAL_PAYROLL_EMPLOYEE, PEO_EMPLOYEE, PWAC, UNKNOWN |
Referenced models: Retrieve a list of ATS offers — 200 response body — data item application, Retrieve a list of ATS offers — 200 response body — data item custom fields item, Retrieve a list of ATS offers — 200 response body — data item email Email details