Deel: List job requests — 200 response body — data item
List job requests: 200 response body, field data / item. Complete fields and constraints for contract 2026-10-27.
API reference · Contract 2026-10-27
SDK schema: List job requests — 200 response body — data item
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | |
approval_policy_id | JSON | Optional | |
approval_policy_id (anyOf 1) | string | Alternative | Identifier of the approval policy applied to the job request. |
approval_policy_id (anyOf 2) | null | Alternative | Identifier of the approval policy applied to the job request. |
approval_status | string | Optional | Approval status of the job request. Known values: NOT_REQUESTED, REQUESTED, APPROVED, REJECTED, CANCELLED |
candidate_count | JSON | Optional | |
candidate_count (anyOf 1) | integer | Alternative | Total number of candidates on the job request. |
candidate_count (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
candidate_limit | JSON | Optional | |
candidate_limit (anyOf 1) | JSON | Alternative | |
candidate_limit (anyOf 1) (anyOf 1) | integer | Alternative | Maximum number of candidates each talent partner may submit. |
candidate_limit (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
candidate_limit (anyOf 2) | null | Alternative | Maximum number of candidates each talent partner may submit. |
close_note | JSON | Optional | |
close_note (anyOf 1) | string | Alternative | Free-text note recorded when closing the job request. |
close_note (anyOf 2) | null | Alternative | Free-text note recorded when closing the job request. |
close_reason | JSON | Optional | |
close_reason (anyOf 1) | string | Alternative | Reason the job request was closed. |
close_reason (anyOf 2) | null | Alternative | Reason the job request was closed. |
contract_length_type | JSON | Optional | Whether the engagement is fixed-term or indefinite. |
contract_length_type (anyOf 1) | string | Alternative | Whether the engagement is fixed-term or indefinite. Known values: FIXED, INDEFINITE |
contract_length_type (anyOf 2) | null | Alternative | |
contract_type | JSON | Optional | Contract type of the job request. |
contract_type (anyOf 1) | string | Alternative | Contract type of the job request. Known values: EMPLOYEE, CONTRACTOR |
contract_type (anyOf 2) | null | Alternative | |
created_at | string | Optional | When the job request was created. Format: date-time |
currency | JSON | Optional | |
currency (anyOf 1) | string | Alternative | ISO 4217 currency code of the rate. |
currency (anyOf 2) | null | Alternative | ISO 4217 currency code of the rate. |
description | JSON | Optional | |
description (anyOf 1) | string | Alternative | Job request description. |
description (anyOf 2) | null | Alternative | Job request description. |
employment_type | JSON | Optional | Employment type. |
employment_type (anyOf 1) | string | Alternative | Employment type. Known values: FULL_TIME, PART_TIME |
employment_type (anyOf 2) | null | Alternative | |
end_date | JSON | Optional | |
end_date (anyOf 1) | string | Alternative | Requested end date. Format: date-time |
end_date (anyOf 2) | null | Alternative | Requested end date. Format: date-time |
has_non_vendor_candidates | boolean | Optional | Whether the job request has candidates not sourced through a talent partner. |
hours_per_month | JSON | Optional | |
hours_per_month (anyOf 1) | JSON | Alternative | |
hours_per_month (anyOf 1) (anyOf 1) | integer | Alternative | Expected hours per month. |
hours_per_month (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
hours_per_month (anyOf 2) | null | Alternative | Expected hours per month. |
id | JSON | Optional | |
id (anyOf 1) | string | Alternative | Unique identifier of the job request. |
id (anyOf 2) | null | Alternative | Unique identifier of the job request. |
job_family | JSON | Optional | |
job_family (anyOf 1) | string | Alternative | Job family. |
job_family (anyOf 2) | null | Alternative | Job family. |
locations | JSON | Optional | |
locations (anyOf 1) | array | Alternative | ISO 3166-1 alpha-2 country codes the job request targets. |
locations (anyOf 1)[] | string | Each item | |
locations (anyOf 2) | null | Alternative | ISO 3166-1 alpha-2 country codes the job request targets. |
locations (anyOf 2)[] | string | Each item | |
marked_as_inactive_at | JSON | Optional | |
marked_as_inactive_at (anyOf 1) | string | Alternative | When the job request was flagged as inactive, if it was. Format: date-time |
marked_as_inactive_at (anyOf 2) | null | Alternative | When the job request was flagged as inactive, if it was. Format: date-time |
organization | Model | Optional | Expand List job requests — 200 response body — data item organization Organization the job request belongs to. |
pending_initial_screening_candidates_count | JSON | Optional | |
pending_initial_screening_candidates_count (anyOf 1) | integer | Alternative | Candidates awaiting initial screening. Returned as `0` when the token owner is only an approver on the job request. |
pending_initial_screening_candidates_count (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
pending_interview_candidates_count | JSON | Optional | |
pending_interview_candidates_count (anyOf 1) | integer | Alternative | Candidates awaiting an interview. Returned as `0` when the token owner is only an approver on the job request. |
pending_interview_candidates_count (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
quantity | JSON | Optional | |
quantity (anyOf 1) | integer | Alternative | Number of open positions. |
quantity (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
rate_max | JSON | Optional | |
rate_max (anyOf 1) | JSON | Alternative | |
rate_max (anyOf 1) (anyOf 1) | number | Alternative | Upper bound of the rate range. Format: double |
rate_max (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
rate_max (anyOf 2) | null | Alternative | Upper bound of the rate range. Format: double |
rate_min | JSON | Optional | |
rate_min (anyOf 1) | JSON | Alternative | |
rate_min (anyOf 1) (anyOf 1) | number | Alternative | Lower bound of the rate range. Format: double |
rate_min (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
rate_min (anyOf 2) | null | Alternative | Lower bound of the rate range. Format: double |
rate_scale | JSON | Optional | Scale the rate range is expressed in. |
rate_scale (anyOf 1) | string | Alternative | Scale the rate range is expressed in. Known values: HOURLY, MILESTONE, DAILY, WEEKLY, MONTHLY, ANNUAL |
rate_scale (anyOf 2) | null | Alternative | |
ready_for_offer_candidates_count | JSON | Optional | |
ready_for_offer_candidates_count (anyOf 1) | integer | Alternative | Candidates ready to receive an offer. Returned as `0` when the token owner is only an approver on the job request. |
ready_for_offer_candidates_count (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
ready_to_hire_candidates_count | JSON | Optional | |
ready_to_hire_candidates_count (anyOf 1) | integer | Alternative | Candidates who accepted an offer and are ready to be hired. Returned as `0` when the token owner is only an approver on the job request. |
ready_to_hire_candidates_count (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
service_status | JSON | Optional | Whether Deel can service the job request. |
service_status (anyOf 1) | string | Alternative | Whether Deel can service the job request. Known values: PENDING, SERVICEABLE, NOT_SERVICEABLE |
service_status (anyOf 2) | null | Alternative | |
start_date | JSON | Optional | |
start_date (anyOf 1) | string | Alternative | Requested start date. Format: date-time |
start_date (anyOf 2) | null | Alternative | Requested start date. Format: date-time |
status | string | Optional | Job request status. Known values: ACTIVE, PAUSED, CLOSED, NOT_SHARED |
title | string | Optional | Job request title. |
total_hired_candidates | JSON | Optional | |
total_hired_candidates (anyOf 1) | integer | Alternative | Number of candidates hired on this job request. |
total_hired_candidates (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
total_vendors | JSON | Optional | |
total_vendors (anyOf 1) | integer | Alternative | Number of talent partners attached to the job request. |
total_vendors (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
total_vendors_per_status | object | Optional | Count of attached talent partners per status. Additional keys: see wildcard field |
total_vendors_per_status.* | JSON | Additional keys | |
total_vendors_per_status.* (anyOf 1) | integer | Alternative | |
total_vendors_per_status.* (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
updated_at | string | Optional | When the job request was last updated. Format: date-time |
vendors | array | Optional | Talent partners attached to the job request. |
vendors[] | Model | Each item | Expand List job requests — 200 response body — data item vendors item |
work_mode | JSON | Optional | Work mode. |
work_mode (anyOf 1) | string | Alternative | Work mode. Known values: REMOTE, OFFICE, HYBRID |
work_mode (anyOf 2) | null | Alternative | |
yoe_min | JSON | Optional | |
yoe_min (anyOf 1) | JSON | Alternative | |
yoe_min (anyOf 1) (anyOf 1) | integer | Alternative | Minimum years of experience required. |
yoe_min (anyOf 1) (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
yoe_min (anyOf 2) | null | Alternative | Minimum years of experience required. |
Referenced models: List job requests — 200 response body — data item organization, List job requests — 200 response body — data item vendors item