Jobs API

Job data so clean you stop second-guessing it.

Every record is crawled direct from the company's own career page, normalized into consistent fields, and re-checked on a cadence to confirm it is still open. No aggregator reposts. No stale rows. No guessing.

One record

Active

Senior Backend Engineer

Tandem. Berlin, DE.

source_platform

Traced to the original ATS

greenhouse

last_verified_at

Re-checked, not assumed

3m ago

salary

Structured, comparable

95k to 130k EUR

employment_type

full_time

Same shape. Every source.

can_apply: true

The data

Three things you never worry about again.

last_verified_at

Re-verified, not assumed

Every listing is pinged on a regular cadence to confirm it is still open and the apply link still resolves. Expired roles drop out of the index the next time the crawler checks.

source_platform

One shape, every source

Greenhouse, Lever, Workday, Ashby. Different platforms, one normalized JSON record. Same fields, same enums, same casing. No per-source parsing, ever.

source.platform

Traced to the original

Every record carries the source ATS and the original apply URL. You always know where a job came from. No copies of copies buried inside aggregator reposts.

Why this data

Aggregator APIs cannot match this.

Every record traces to a real career page. Every listing is confirmed active. No aggregator repostings buried in the index.

Indexed direct from

greenhouseleverworkdayashbysmartrecruitersicimstaleosuccessfactorsrecruiteepersoniobamboohr

Aggregator APIs

Flan

  • Repostings, often stale

    Aggregator APIs republish jobs that may already be closed. You find out when a user complains.

    Direct-source only. status and last_verified_at on every record, re-checked on a cadence.

  • Inconsistent fields

    Fields vary per source. You write a custom parser for Greenhouse, another for Lever, another for Workday.

    Normalized JSON across all sources. source_platform and can_apply on every job.

  • No provenance

    You cannot tell where a job came from, or whether it is a copy of a copy.

    source.platform names the ATS. The original apply URL is on every record.

See it

Run a query. Right now. No key.

Edit the curl and hit Run. This hits the real public endpoint and returns live, verified jobs.

Try it
// Click Run to fetch real jobs from the live API.

API questions

Before you build.

Pricing

Free to start. Scale when you are ready.

Free tier for getting started. See limits and quotas on the pricing page.

See developer pricing