docs / ats-jobs
Company Job Boards
Jobs straight from company career pages.
base /ats-jobs/v14 endpoints
post
/ats-jobs/v1/company_jobs1 creditall open jobs for a board → {jobs[]{id,title,url,company,location,locations,...}, count, total, company, ats_source}. `ats`=greenhouse|lever|ashby|workable + `company` (board token/subdomain).
| Parameter | Allowed / range | Description | |
|---|---|---|---|
| ats | required | greenhouse · lever · ashby · workable | Applicant-tracking system / job-board provider. |
| company | required | — | Board token / subdomain / org slug (e.g. greenhouse 'gitlab', lever 'spotify', ashby 'ramp'). Identifies one company's board. |
| limit | optional | 1–2000 | Max jobs to return (1-2000). Omit/0 = provider default (all). |
| cursor | optional | — | Opaque pagination cursor from a previous response (provider-specific). |
| page | optional | 1– | Page number for providers that paginate by page (alternative to cursor). |
post
/ats-jobs/v1/job_detail1 creditone fully-populated job (description + requirements/benefits) by `ats` + `company` + `job_id`.
| Parameter | Allowed / range | Description | |
|---|---|---|---|
| ats | required | greenhouse · lever · ashby · workable | Applicant-tracking system / job-board provider. |
| company | required | — | Board token / subdomain / org slug (e.g. greenhouse 'gitlab', lever 'spotify', ashby 'ramp'). Identifies one company's board. |
| job_id | required | — | The job's id within that ATS board (from a company_jobs result's jobs[].id). |
post
/ats-jobs/v1/search1 creditcross-company job search over the Workable aggregator (170K jobs) → jobs[]. `query` + (default `ats`=workable). paginated.
| Parameter | Allowed / range | Description | |
|---|---|---|---|
| query | required | — | Free-text keyword for the Workable cross-company aggregator search. |
| ats = workable | optional | greenhouse · lever · ashby · workable | Applicant-tracking system / job-board provider. For search only 'workable' is supported (defaults to workable). |
| limit | optional | 1–2000 | Max jobs to return (1-2000). Omit/0 = provider default (all). |
| cursor | optional | — | Opaque pagination cursor from a previous response (provider-specific). |
| page | optional | 1– | Page number for providers that paginate by page (alternative to cursor). |
post
/ats-jobs/v1/providers1 creditthe supported ATS providers + their capabilities
Try in playground →Example request · company_jobs
curl -X POST https://api.reefapi.com/ats-jobs/v1/company_jobs \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"ats":"greenhouse","company":"gitlab"}'Response shape
{
"ok": true,
"data": { /* the result */ },
"meta": {
"latency_ms": 240,
"record_count": 12,
"completeness_pct": 100
},
"error": null
}