Get a job

Returns one job with everything we have for it: both description formats and the employer-provided source_fields. Expired jobs remain available here with status: "expired".

GET/v1/jobs/{id}

bash
curl "https://api.thejobsapi.com/v1/jobs/1834" -H "Authorization: Bearer $THEJOBSAPI_KEY"

Response

The job object, plus:

json
{
  "id": 1834,
  "title": "…",
  "status": "active",
  "description_text": "About the role …",
  "description_html": "<p>About the role …</p>",
  "source_fields": {
    "version": 1,
    "fields": {
      "department": { "value": "People Operations", "source_path": "detail.department" }
    }
  }
}

source_fields keeps each value in the employer's original structure, units and language, with source_path pointing to where it came from. It is null when the source's format isn't supported yet. It never contains inferred or AI-generated values.

Unknown IDs return 404. Each successful call counts as one job.