Multi-ATS Job Scraper — Greenhouse, Lever, Ashby, Workday
Pricing
from $2.00 / 1,000 results
Multi-ATS Job Scraper — Greenhouse, Lever, Ashby, Workday
Scrape open jobs straight from a company's own ATS — Greenhouse, Lever, Ashby, SmartRecruiters, Workday, BambooHR, Personio — via their public APIs. No LinkedIn or Indeed, no anti-bot walls, no login. Auto-detects the ATS, monitor mode for new postings, full HTML + text descriptions.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Ponderable Hydrometer
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 hours ago
Last modified
Categories
Share
Multi-ATS Job Scraper
Scrape every open job from a company's careers page in seconds — straight from the source, no LinkedIn or Indeed middleman. Give it a company name or job-board URL and it auto-detects the applicant tracking system (ATS) and returns clean, structured jobs from:
- Greenhouse (
boards.greenhouse.io/...) - Lever (
jobs.lever.co/...) - Ashby (
jobs.ashbyhq.com/...) - SmartRecruiters (
jobs.smartrecruiters.com/...) - Workday (
...myworkdayjobs.com/...— pass the full board URL) - BambooHR (
...bamboohr.com/careers) - Personio (
...jobs.personio.com)
No proxies, no login, no headless browser — the actor uses each ATS's public JSON API, so runs are fast, cheap, and reliable (no "under maintenance" breakage from anti-bot walls).
Why use it
- One actor, four ATS platforms. Stop juggling a different scraper per board.
- Auto-detection. Pass a bare company slug (
stripe,notion) or a full board URL — it figures out the ATS for you. - Monitor mode. Run it on a schedule and get only newly-posted jobs — a clean hiring-intent signal for sales, recruiting, and market-intelligence use cases.
- Full job descriptions in both HTML and plain text, ready for search, RAG, or LLM pipelines.
- AI-agent & automation friendly. Simple input, predictable output — easy to call from n8n, Make, or your own code.
Who it's for
Recruiters and sourcers, sales / lead-gen teams (a company hiring is a company buying), job-board aggregators, HR-tech and ATS-migration tools, VC and market-intelligence researchers, and anyone building a jobs dataset.
Input
| Field | Type | Default | Description |
|---|---|---|---|
companies | array | — (required) | Company slugs or job-board URLs, e.g. ["stripe", "https://jobs.lever.co/palantir"] |
atsHint | string | auto | Force an ATS: greenhouse, lever, ashby, smartrecruiters, or auto |
includeDescription | boolean | true | Include full HTML + plain-text job description |
monitorMode | boolean | false | Only output jobs not seen in previous runs |
maxJobsPerCompany | integer | 2000 | Safety cap per company |
{"companies": ["stripe", "gopuff", "https://jobs.ashbyhq.com/openai"],"atsHint": "auto","includeDescription": true,"monitorMode": false,"maxJobsPerCompany": 2000}
Output
One dataset item per open job:
{"company": "stripe","ats": "greenhouse","title": "Account Executive, AI Sales","department": "AI GTM Strategy & Solutions","location": "San Francisco, CA","remote": false,"employmentType": "Full-time","postedDate": "2026-06-26T17:05:44-04:00","applyUrl": "https://stripe.com/jobs/search?gh_jid=7954688","jobId": "7954688","descriptionHtml": "<p>...</p>","descriptionText": "Who we are ...","status": "ok"}
Companies that can't be resolved are not written to the dataset (so you never pay for an empty result) — they are reported in the run log and in the run's SUMMARY record, with a status of ats_not_found, error, or invalid_input. Nothing fails silently.
How to find a company's board
- Greenhouse: the token in
boards.greenhouse.io/<token>(orjob-boards.greenhouse.io/<token>). - Lever: the slug in
jobs.lever.co/<slug>. - Ashby: the name in
jobs.ashbyhq.com/<name>. - SmartRecruiters: the company id in
jobs.smartrecruiters.com/<companyId>(case-sensitive, e.g.BoschGroup). - Workday: pass the full board URL, e.g.
https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite(a bare name isn't enough — Workday needs the datacenter and site). - BambooHR: the subdomain in
<company>.bamboohr.com. - Personio: the subdomain in
<company>.jobs.personio.com.
Or just pass the plain company name and let auto-detection try each platform.
Use from an AI agent (MCP)
This actor works as a tool for AI agents through the Model Context Protocol. Because it takes a plain company name or URL and returns structured jobs, it's a natural fit for assistants doing recruiting, lead research, or jobs-data collection.
- Hosted: point your MCP client at Apify's MCP server (
https://mcp.apify.com) and enable the actorponderable_hydrometer/multi-ats-jobs. - Local: run Apify's MCP server with just this actor:
$APIFY_TOKEN=<your-token> npx -y @apify/actors-mcp-server --actors ponderable_hydrometer/multi-ats-jobs
The agent can then call it with a single company ("stripe") or a list — the input is
intentionally forgiving. See Apify's MCP documentation for client setup details.
Notes & limits
- Seven ATS platforms are supported today: Greenhouse, Lever, Ashby, SmartRecruiters, Workday, BambooHR and Personio (Workable, Recruitee and others are on the roadmap).
- Workday is detected only from a full board URL — its API needs the datacenter and site, which can't be guessed from a company name. Fetching descriptions does one extra request per job, so large Workday tenants are slower; lower
maxJobsPerCompanyor setincludeDescription: falsefor speed. - Personio descriptions come from its public XML feed, which many companies leave empty; the core fields (title, location, department, type, date) are always returned.
- Auto-detection accepts a match only when a platform returns at least one job, which avoids false positives — if a company has zero open roles, pass the explicit board URL to confirm it.
- Data comes from public job-board APIs; you are responsible for using the output in line with your own legal and compliance requirements.