One API.
Pay only for the jobs you take. Everything else is free.
- Your bill
- Full job records
- $0.50–1.20 per 1,000
- What changed
- $0
- Companies
- $0
- Counts
- $0
- Closures
- $0
Job data, simplified.
One call, every country, ninety systems, one dashboard.
Pay only for the jobs you take. Everything else is free.
Jobs in 247 countries, from the employers' own systems.8
Read every day from the applicant tracking systems employers use.8
Every call, every job, every dollar, in one place.
The data
Every job comes as one record with 50 typed fields: what the employer stated, and what we add. The ai_ fields are marked as ours, and derived says, per job, which of them the posting did not state.9
title
salary
posted_date
ai_title
ai_salary_min
derived
The feed
A sync is three calls. GET /v1/jobs loads your cut once. GET /v1/events tells you, from your cursor, what is new, changed, closed or reopened. POST /v1/jobs fetches the ones you want. One of the three costs money.
Backfill a country or a niche in one load, then keep it current from the events: a job closes on your board the day it closes on the employer's. Pay for the jobs you list, not for the polling.
Watch the companies you work with: company_guid joins every job to its company, and the company stream tells you when one changes. New roles arrive as new events within the hour.
Salary as stated and the yearly figure beside it, workplace and employment type, experience, education, visa: every field typed and documented, with derived telling you what is read from the text.
Plain JSON, a public OpenAPI file and llms.txt. Counts and companies are free, so an agent can look before it buys a page.
A whole country in one load, the same shape as the API, with a ledger seq to follow the changes from. O*NET codes and GeoNames places under open licences.10
Market average: the three priciest job-data APIs at the same sizes. USD a month.2 Pricing and the calculator.
Search
Every field below is cleaned the same way on every job, so it works in your search the moment it arrives.9
What do you use today?
Here's what you get.

The jobs come from the employers' own systems, read every day. Nothing breaks when a board changes its page.

Read what changed from where you left off. In order, never skips.7

Changed, closed, reopened: every event carries the new values, at no charge.5

Page a whole country once, then follow what changed from the last page.10

$1.20 per 1,000 jobs, less as your month grows. One thing is charged: a full job returned.2

A changed event carries the new values; you fetch a full record once per new job.5

Closed and reopened, with closed_at, free.4

ai_ says which fields we made; derived says which the posting did not state.9

72,713 companies across 30 systems, one feed.3

The same job keeps its GUID through changes and a reopen; the company has one too.

Read what changed from where you left off, free.7

Salary, workplace, experience, places at town level, occupation codes.9

No card, no end date. Enough to build the loop and test your parser.1

Load, events, fetch. The docs walk you from the key to the loop.

A thousand real jobs, the shape of the API, free to download.

One key, an OpenAPI file, a Python snippet on every route.