Unified ATS API

Retrieve all offers.

Top level filters use AND, while individual filters use OR if they accept multiple arguments. That means filters will be resolved like this: (id IN ids) AND (remote_id IN remote_ids)

get/ats/offers

Request

Query parameters

cursorstring

An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.

page_sizeinteger

The number of results to return per page. Maximum is 250.

updated_afterstring date-time

Filter the entries based on the modification date in format YYYY-MM-DDTHH:mm:ss.sssZ. Returns records where either the record itself OR its nested data has been updated since this timestamp, even if the record's own changed_at field remains unchanged.

If you want to track entry deletion, also set the include_deleted=true query parameter, because otherwise, deleted entries will be hidden.

For more details, see Understanding changed_at vs updated_after Behavior.

For this endpoint, updated_after matches when the returned record changed, or when related data changed as described below.

PathAdded/RemovedLinked Record
applicationn/a✓ Yes
application → candidate✗ No✗ No
application → job✗ No✗ No

Added/Removed: Whether adding or removing entries from this list triggers an update (n/a for single records). Linked Record: Whether changes to the linked record itself trigger an update.

include_deleted'true' | 'false'

By default, deleted entries are not returned. Use the include_deleted query param to include deleted entries too.

ignore_unsupported_filters'true' | 'false'

When set to true, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.

idsstring

Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.

remote_idsstring

Filter by a comma-separated list of remote IDs.

Headers

X-Integration-Idstring required

ID of the integration you want to interact with.

Response

GET /ats/offers Positive response

status'success' required

Example response

{
  "data": {
    "next": "eyJwYWdlIjoxMiwibm90ZSI6InRoaXMgaXMganVzdCBhbiBleGFtcGxlIGFuZCBub3QgcmVwcmVzZW50YXRpdmUgZm9yIGEgcmVhbCBjdXJzb3IhIn0=",
    "results": [
      {
        "id": "76bab8LKuFtqpZ89mofCPMHX",
        "remote_id": "6",
        "status": "ACCEPTED",
        "employment_start_date": "2022-08-07T14:01:29.196Z",
        "application_id": "BAkbueBMBusj9Bg7L1Wps3AR",
        "custom_fields": {},
        "integration_fields": [],
        "changed_at": "2022-08-07T14:01:29.196Z",
        "remote_deleted_at": null,
        "remote_created_at": "2022-08-07T14:01:29.196Z",
        "remote_updated_at": "2022-08-07T14:01:29.196Z",
        "remote_data": null,
        "application": {
          "candidate": {
            "id": "26vafvWSRmbhNcxJYqjCzuJg",
            "remote_id": "32",
            "first_name": "John",
            "last_name": "Doe",
            "email_addresses": [
              {
                "email_address": "john.doe@example.com",
                "type": "PRIVATE"
              }
            ]
          },
          "job": {
            "id": "H5daSm8e85Dmvmne3wLeCPhX",
            "remote_id": "32",
            "name": "Backend Engineer"
          }
        }
      }
    ]
  }
}

Changes