JobStream โ Greenhouse / Lever / Ashby Jobs Feed
Pricing
$2.50 / 1,000 job postings
JobStream โ Greenhouse / Lever / Ashby Jobs Feed
Fresh, normalized, deduplicated job postings from Greenhouse, Lever, and Ashby public job boards. Tracks new / modified / expired across runs. Never bills you for zero results.
Pricing
$2.50 / 1,000 job postings
Rating
0.0
(0)
Developer
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Share
Fresh, normalized, deduplicated, change-tracked job postings pulled straight from the public Greenhouse, Lever, and Ashby APIs โ no logins, no HTML scraping, no anti-bot. One clean schema across all three ATSs, with new / modified / expired tracking across runs.
Never bills you for zero results. If a board fails to fetch, JobStream skips it โ it cannot report an empty run or charge you for jobs it couldn't load. You pay only for jobs actually delivered.
Features
- One unified schema across all three sources โ title, company, parsed location, remote / hybrid, department, employment type, structured compensation, posted & updated timestamps, and a canonical apply URL.
- Deduplicated & change-tracked โ every job carries
is_new,is_modified, andstatus(active / expired). Flip on Only changes to pull just the deltas โ perfect for daily syncs and "new jobs today" alerts. - Reliable by design โ public JSON endpoints (no anti-bot to break), plus a safeguard that refuses to wipe a board on a truncated/partial response. A failed fetch never expires your data and never produces a billable empty run.
- Bring your own boards, or use the bundled registry of 900+ validated companies (Stripe, Anthropic, Databricks, OpenAI, Spotify, and many more).
- Structured compensation wherever the ATS publishes it.
Input
{"sources":[{"ats":"greenhouse","token":"stripe","company":"Stripe"},{"ats":"lever","token":"spotify","company":"Spotify"},{"ats":"ashby","token":"openai","company":"OpenAI"}],"fetchCompensation":true,"onlyChanges":false}
sourcesโ the boards to pull. Each item is{ ats, token, company? }, whereatsisgreenhouse|lever|ashbyandtokenis the board slug (theXinboards.greenhouse.io/X,jobs.lever.co/X, orjobs.ashbyhq.com/X).useBundledRegistryโ settrueto skipsourcesand poll the built-in list of 900+ companies. Narrow it withregistryAts(one ATS) andregistryLimit(cap).fetchCompensation,includeDescription,onlyChanges,maxWorkersโ see the input editor for the full set of options.
Output
Each dataset item is one normalized job posting:
{"company":"Ramp","title":"Senior Software Engineer","location_raw":"New York","city":"New York","region":"NY","country":"US","remote":false,"workplace_type":"hybrid","department":"Engineering","employment_type":"full_time","comp_min":211400,"comp_max":290600,"comp_currency":"USD","comp_interval":"year","posted_at":"2026-05-11T20:00:11Z","updated_at":"2026-05-11T20:00:11Z","apply_url":"https://jobs.ashbyhq.com/ramp/...","source_ats":"ashby","is_new":true,"is_modified":false,"status":"active"}
Items also include source_token, source_id, team, a stable dedup_key, and
first_seen / last_seen for change tracking.
Who it's for
Niche job boards that need fresh inventory, recruiters and HR-tech tools, labor-market analysts, and AI / RAG pipelines that need clean, current, structured job data.
Pricing
Pay per result โ charged per job returned, and never for a run that returns nothing. Use Only changes to pull just new and modified jobs and keep recurring runs lean.
