The job object
Field names follow common job-feed conventions, so most integrations map directly.
| Field | Type | Meaning |
|---|---|---|
id | string | Stable id: vendor:tenant:source_job_id |
title | string | Job title |
organization | string | Company name |
apply_url, url | string | The employer’s application page |
source | string | workday, greenhouse, lever, ashby … |
date_posted, date_first_seen | date | Freshness filters use posted, else first seen |
locations_derived, cities_derived, regions_derived, countries_derived | string[] | Where the job is |
remote_friendly | boolean | The posting mentions remote, hybrid or work from home |
ai_experience_level | string | null | 0-2, 2-5, 5-10, 10+ or not stated |
ai_employment_type | string[] | FULL_TIME, PART_TIME, CONTRACTOR, TEMPORARY, INTERN |
has_salary | boolean | The employer published pay |
ai_salary_min_value, ai_salary_max_value | number | null | Published pay, annualized |
ai_salary_currency, ai_salary_unit_text | string | null | Currency; unit is YEAR after annualizing |
estimated_pay | object | A model estimate for display. Never used by filters |
org_linkedin_industry, org_linkedin_size | string | null | Company industry and headcount bucket, where matched |
organization_url, organization_logo, org_linkedin_slug | string | null | Company website, logo and LinkedIn slug |
ai_key_skills | string[] | Skills named in the posting |
department, seniority | string | null | As stated by the employer |
requisition_id | string | null | The employer’s own job number |
last_seen_at | date | When we last saw the posting live |
salary_period | string | null | The pay period the employer published |
description_text, ai_requirements_summary, ai_core_responsibilities | string | Full text (full job, or include_description=true) |
job_function, job_language | string | null | Job function and posting language (full job) |
ai_flags | object | Model-read yes/no facts: is_senior, has_equity, degree_required, travel_required… Display only; may be wrong |
company | object | null | Full company profile (full job, or include_company=true) |
Example response
json
{
"id": "greenhouse:acmecloud:7234001",
"title": "Senior Data Engineer",
"organization": "Acme Cloud",
"organization_url": "https://acme.example",
"organization_logo": "https://…/logo.png",
"org_linkedin_industry": "Software Development",
"org_linkedin_size": "1001-5000",
"url": "https://boards.greenhouse.io/acmecloud/jobs/7234001",
"apply_url": "https://boards.greenhouse.io/acmecloud/jobs/7234001",
"source": "greenhouse",
"date_posted": "2026-09-26",
"date_first_seen": "2026-09-27",
"locations_derived": ["Remote, United States"],
"countries_derived": ["US"],
"remote_friendly": true,
"ai_experience_level": "5-10",
"ai_employment_type": ["FULL_TIME"],
"has_salary": true,
"ai_salary_min_value": 170000,
"ai_salary_max_value": 210000,
"ai_salary_currency": "USD",
"ai_salary_unit_text": "YEAR",
"ai_key_skills": ["Python", "SQL", "Spark", "Airflow"]
}