VOOZH about

URL: https://apify.com/memo23/ats-jobs-scraper

โ‡ฑ Multi-ATS Jobs + Company Emails Scraper ยท Apify


๐Ÿ‘ Multi-ATS Jobs + Company Emails Scraper avatar

Multi-ATS Jobs + Company Emails Scraper

Pricing

from $2.00 / 1,000 results

Go to Apify Store

Multi-ATS Jobs + Company Emails Scraper

Turn job listings into a lead list. Scrape open roles from any company across 10 ATS platforms โ€” Greenhouse, Lever, Ashby, Workday, Workable, Recruitee & more โ€” by URL, company name, or an uploaded sheet of links. ATS auto-detected, full descriptions, plus company contact emails.

Pricing

from $2.00 / 1,000 results

Rating

0.0

(0)

Developer

๐Ÿ‘ Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

3

Monthly active users

3 hours ago

Last modified

Categories

Share

Multi-ATS Jobs + Company Emails Scraper ๐Ÿงญโœ‰๏ธ

Scrape open jobs from any company across 10 major ATS platforms โ€” Greenhouse, Lever, Ashby, SmartRecruiters, Workday, Workable, Recruitee, Breezy, Personio & BambooHR โ€” and optionally attach the hiring company's contact email for lead generation. Paste a board URL or just a company name; the ATS is auto-detected. One unified schema across every platform.

๐Ÿ‘ How the Multi-ATS Jobs + Emails Scraper works


Why use this scraper

  • 10 ATS platforms, one actor, one schema. Greenhouse, Lever, Ashby, SmartRecruiters, Workday, Workable, Recruitee, Breezy, Personio, BambooHR โ€” every job comes back in the same normalized shape, so you write one parser.
  • Auto-detects the ATS. Don't know which ATS a company uses? Give the company name โ€” the actor probes the supported platforms and picks the right one. Or paste any board URL and it routes by host.
  • Company contact email (lead-gen). Flip on enrichEmails to turn a job feed into a sales/recruiting lead list โ€” each company gets its contactWebsite plus a best-effort public contactEmail (e.g. a careers@/info@ address) where one is published. A hiring-signal bonus, not a guaranteed per-row contact โ€” coverage varies.
  • Full job detail. Title, full description (HTML + text), compensation where shown, all locations, department, employment type, apply URL.
  • Built-in filters. Title, location, department, remote, posted-after โ€” applied before billing, so you only pay for matches.
  • Fast & cheap. Public ATS APIs, no anti-bot, no browser.

Supported ATS platforms

ATSInput exampleNotes
Greenhousehttps://boards.greenhouse.io/stripe or stripeFull content inline
Leverhttps://jobs.lever.co/spotify or spotifyFull content inline
Ashbyhttps://jobs.ashbyhq.com/ramp or rampFull content inline
SmartRecruitershttps://careers.smartrecruiters.com/BoschGroup or BoschGroupCompany ID is case-sensitive
Workdayhttps://{tenant}.wd5.myworkdayjobs.com/{Site}URL only (needs tenant + site)
Personiohttps://vodeno.jobs.personio.com or vodenoPublic XML feed
BambooHRhttps://soundstripe.bamboohr.com or soundstripeCareers API
Workablehttps://apply.workable.com/pearltalent or pearltalentDetail fetched per job
Recruiteehttps://{company}.recruitee.com or {company}Full content inline
Breezyhttps://{company}.breezy.hr or {company}Description from posting page

Mix any of these โ€” URLs and bare names โ€” in a single run.


Use cases

  • Sales & recruiting lead-gen โ€” companies that are hiring are buying signals; pair each role with the company's contact email for targeted outreach.
  • Job boards & aggregators โ€” ingest fresh, structured roles from hundreds of companies across every major ATS in one pass.
  • Talent & market intelligence โ€” hiring velocity, remote-vs-onsite mix, departments, and pay bands across a company portfolio.
  • CRM enrichment โ€” append live hiring activity + a contact to your account list.

How it works

  1. Resolve each input โ€” a URL routes to its ATS by host; a bare company name is auto-detected by probing the supported platforms in order.
  2. Fetch that company's jobs from the ATS's public API (one call for inline ATSs; list + per-job detail for SmartRecruiters/BambooHR).
  3. Normalize every job to one common schema.
  4. Enrich (optional) โ€” discover the company website and attach a contact email.
  5. Push one row per job.

Input configuration

FieldTypeDefaultDescription
startUrlsarrayโ€“ATS board/job URLs (any of the 10 platforms).
organizationsarrayโ€“Bare company names/slugs โ€” ATS auto-detected.
inputUrlstringโ€“URL to an .xlsx / .csv / Google Sheet of career links or company names โ€” parsed and merged with the lists.
enrichEmailsbooleanfalseAttach company contactEmail + contactWebsite (lead-gen).
maxItemsinteger5000Max jobs per URL / company (free runs limited to 100 total).
maxConcurrencyinteger10Companies processed in parallel.
titleKeyword / location / departmentstringโ€“Client-side filters (contains).
languagestringโ€“Preferred language (e.g. en) โ€” Personio returns it natively; SmartRecruiters filtered to it.
remoteOnlybooleanfalseKeep only remote jobs.
postedAfterstringโ€“Keep jobs published on/after YYYY-MM-DD.
includeDescriptionbooleantrueOff = leaner rows (and skips detail fetch for SmartRecruiters/BambooHR).
includeRawJsonbooleanfalseAttach the raw ATS payload.
proxyobjectโ€“Optional; not required (no anti-bot).

Example input

{
"organizations":["stripe","ramp","vodeno"],
"startUrls":["https://jobs.lever.co/spotify"],
"enrichEmails":true,
"maxItems":1000,
"titleKeyword":"engineer"
}

Output

One row per job, in the same order as your inputs (each row tagged with inputIndex + jobsFound). With enrichEmails, the contact fields are added:

{
"ats":"greenhouse",
"org":"stripe",
"company":"Stripe",
"globalId":"greenhouse:stripe:7954688",
"title":"Backend Engineer",
"department":"Engineering",
"workplaceType":"Hybrid",
"isRemote":false,
"location":"San Francisco, CA",
"locations":["San Francisco, CA"],
"descriptionHtml":"<p>โ€ฆ</p>",
"descriptionText":"โ€ฆ",
"publishedAt":"2026-06-19T12:11:02-04:00",
"jobUrl":"https://stripe.com/jobs/search?gh_jid=7954688",
"applyUrl":"https://stripe.com/jobs/search?gh_jid=7954688",
"contactEmail":"careers@stripe.com",
"contactWebsite":"stripe.com",
"emailEnrichment":{"website":"stripe.com","emails":["careers@stripe.com"]},
"jobsFound":495,
"inputIndex":0,
"scrapedAt":"2026-06-20T00:00:00.000Z"
}

Key output fields

FieldDescription
atsSource platform (greenhouse/lever/ashby/smartrecruiters/workday/workable/recruitee/breezy/personio/bamboohr).
companyHiring company name.
globalIdStable ats:org:jobId key for cross-run dedup.
title / department / employmentType / workplaceType / isRemoteCore job fields.
location / locationsPrimary + all locations.
descriptionHtml / descriptionTextFull description, HTML + plain text.
publishedAt / jobUrl / applyUrlDate + links.
contactEmail / contactWebsite / emailEnrichmentPresent when enrichEmails is on (lead-gen).
jobsFound / inputIndexTotal jobs found for this input, and its position in your input list.

FAQ

How does auto-detect work? For a bare company name, the actor tries each supported ATS in order and uses the first that returns jobs. For a URL, it routes by hostname. SmartRecruiters company IDs are case-sensitive โ€” pass the exact ID or a careers URL.

Do I need a proxy? No โ€” these ATS APIs are public with no anti-bot.

How do I see which links worked? Every run saves an INPUT-STATUS record to the run's key-value store โ€” one entry per input with its detected ATS, status (ok / failed), and jobsFound. Open it (run โ†’ Storage โ†’ Key-value store) to verify each link fetched jobs and spot any that didn't.

How accurate is the contact email? Best-effort. It discovers the company website and harvests publicly published addresses (typically general inboxes like careers@ / info@); many companies publish none, so coverage varies. Off by default since it adds time/cost.

Can I get postings in English? Set language to en. Personio returns English descriptions natively (and fills in descriptions some boards leave blank), and SmartRecruiters jobs are filtered to English. Other ATSs return whatever language the role was posted in โ€” there's no native English switch, so those aren't translated.

Can it scrape every company on an ATS? No โ€” ATSs have no public directory of all boards. You supply the companies.


โš ๏ธ Disclaimer

This actor collects only publicly available job-posting data exposed by each ATS's own public API, plus publicly available company contact details. It does not access private/authenticated data or bypass access controls. You are responsible for using the data in compliance with each platform's terms and applicable laws (GDPR/CCPA included), especially when using contact data for outreach.


SEO Keywords

multi-ATS scraper, ATS jobs scraper, Greenhouse Lever Ashby scraper, SmartRecruiters Personio BambooHR scraper, career page scraper, company jobs API, hiring signal scraper, lead generation jobs, recruiting leads, contact email enrichment, jobs plus company email, ATS job listing API, applicant tracking system scraper, careers page jobs, hiring intent data.

You might also like

Multi-ATS Job Scraper โ€” Greenhouse, Lever, Ashby, Workday

scrapesage/multi-ats-job-scraper

Scrape jobs from the 5 biggest ATS platforms in one dataset โ€” Greenhouse, Lever, Ashby, SmartRecruiters & Workday. Full descriptions, salaries, locations, departments & apply links. Auto-detects the ATS from a careers URL or company name. Monitor mode emits only new jobs.

Multi-ATS Company Jobs Scraper

automation-lab/multi-ats-jobs-scraper

Scrape job listings from company career pages across 5 ATS platforms: Greenhouse, Workday, SmartRecruiters, Lever, and Ashby. Standardized output with 15 fields per job. Pure HTTP, no browser needed.

๐Ÿ‘ User avatar

Stas Persiianenko

105

โœ… ATS Jobs Scraper - Greenhouse, Ashby, Lever + Remote API

k1ra/ats-jobs-scraper

ATS jobs scraper for Greenhouse, Ashby & Lever applicant tracking systems plus remote job boards in one run. Give a company name or domain โ€” we auto-detect the ATS and slug. Reliable, full descriptions & salary, flat schema. Multi-ATS jobs API for n8n, Make & Zapier. Pay per job, $0 on empty.

Multi-ATS Jobs Scraper (Greenhouse, Lever, Ashby)

devilscrapes/multi-ats-jobs-scraper

Scrape job postings from Greenhouse, Lever, and Ashby in one run. Pass a list of company slugs and get a normalised dataset โ€” title, location, department, URL, and description โ€” across all three ATS platforms.

Career Page Discovery & ATS Detector

coregent/career-page-discovery-ats-detector

Discover company career pages and detect ATS/job-board platforms (Greenhouse, Lever, Ashby, Workday, SmartRecruiters, Workable, and 14+ more) from company domains or URLs. Returns one flat company-level row with a 0-100 confidence. No login or cookies.

2

Multi-ATS Jobs Scraper (Greenhouse, Lever, Ashby)

dami_studio/multi-ats-jobs-scraper

Returns open job postings from Greenhouse, Lever, and Ashby ATS boards (title, location, department, apply link) via their public JSON APIs. Pass companies as "ats:token" (e.g. greenhouse:stripe). Top use: tracking a target company's full job board.

3

5.0

๐Ÿ’ผ ATS Jobs Aggregator - Greenhouse, Lever, Ashby & More

benthepythondev/ats-jobs-aggregator

Aggregate live job postings from company career pages across Greenhouse, Lever and Ashby ATS in one run. No API key. Filter by keyword, location and remote.