v1

latestOpenAPI 3.1.02026-07-228814.1 KB
Jobs

Update a job

Partial update; only the fields you send change. The arrays (locations, qualifications, questions, budgets) are replace-sets: what you send becomes the entire new set. Live (ACTIVE/PAUSED) jobs are re-validated after the patch and the whole change is rejected if it would leave the listing incomplete. Once a job has applications, qualifications and questions are frozen.

patch/jobs/{id}

Path parameters

idinteger required

The job's stable cross-service id (svcAtsId).

Request body

titlestring
descriptionstring
remoteOption'REMOTE' | 'HYBRID' | 'IN_PERSON' | 'null' nullable
remoteCountrystring nullable

Where remote employees may work (REMOTE jobs).

jobType'FULL_TIME' | 'PART_TIME' | 'CONTRACT' | 'INTERNSHIP' | 'null' nullable
jobLevel'ENTRY' | 'MID' | 'SENIOR' | 'null' nullable
salaryMininteger nullable

Whole dollars

salaryMaxinteger nullable
salaryPeriod'ANNUAL' | 'HOURLY' | 'null' nullable
bidPerQualifiedApplicantCentsinteger nullable

What you pay per qualified applicant, in cents.

opportunityIdstring nullable

Your id for this opening on your source ATS. Optional; used by post-application flows to route submitted applications back.

atsJobUrlstring uri nullable

Canonical job URL on your source ATS. Optional; used by post-application flows alongside opportunityId.

Example request

{
  "title": "Senior Product Designer",
  "locations": [
    {
      "locationId": 17024,
      "city": "San Francisco",
      "stateProvince": "California",
      "country": "United States"
    }
  ],
  "qualifications": [
    {
      "text": "5+ years of product design experience"
    }
  ],
  "questions": [
    {
      "prompt": "Why do you want to work here?"
    }
  ],
  "budgets": [
    {
      "budgetCents": 50000
    }
  ]
}

Response

The updated job.

idinteger

Stable cross-service job id (svcAtsId).

titlestring
status'DRAFT' | 'ACTIVE' | 'PAUSED' | 'CLOSED' | 'EXPIRED'
descriptionstring
remoteOption'REMOTE' | 'HYBRID' | 'IN_PERSON' | 'null' nullable
remoteCountrystring nullable
jobType'FULL_TIME' | 'PART_TIME' | 'CONTRACT' | 'INTERNSHIP' | 'null' nullable
jobLevel'ENTRY' | 'MID' | 'SENIOR' | 'null' nullable
salaryMininteger nullable
salaryMaxinteger nullable
salaryPeriod'ANNUAL' | 'HOURLY' | 'null' nullable
bidPerQualifiedApplicantCentsinteger nullable
opportunityIdstring nullable

Partner id for this opening on the source ATS.

atsJobUrlstring uri nullable

Canonical job URL on the source ATS.

companyIdstring
isFrozenboolean

True once the job has applications. Qualifications/questions locked.

newApplicantCountinteger
publishedAtstring date-time nullable
expiresAtstring date-time nullable
closedAtstring date-time nullable

Example response

{
  "locations": [
    {
      "locationId": 17024,
      "displayName": "San Francisco, California, United States",
      "city": "San Francisco",
      "stateProvince": "California",
      "country": "United States"
    }
  ],
  "qualifications": [
    {
      "text": "5+ years of product design experience"
    }
  ],
  "questions": [
    {
      "prompt": "Why do you want to work here?"
    }
  ],
  "budgets": [
    {
      "budgetCents": 50000
    }
  ]
}