ATS Jobs Scraper - Workday, Greenhouse, Lever & Ashby API avatar

ATS Jobs Scraper - Workday, Greenhouse, Lever & Ashby API

Pricing

$4.00 / 1,000 job scrapeds

Go to Apify Store
ATS Jobs Scraper - Workday, Greenhouse, Lever & Ashby API

ATS Jobs Scraper - Workday, Greenhouse, Lever & Ashby API

Get every open job from any company careers page running on Workday, Greenhouse, Lever or Ashby. Pass a company name or domain and the Actor works out which applicant tracking system they use, then returns all four vendors in one identical schema with remote, department and date filters.

Pricing

$4.00 / 1,000 job scrapeds

Rating

0.0

(0)

Developer

Kobkoon Janngam

Kobkoon Janngam

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

6 hours ago

Last modified

Share

ATS Jobs Scraper — Greenhouse, Lever & Ashby from a domain alone

Give it stripe.com and get every open job. This Actor works out which applicant tracking system a company runs — Greenhouse, Lever or Ashby — and returns their whole careers page in one schema, whichever vendor it came from.

Quick start: press Start with no configuration at all. It ships with three companies, one on each provider, and returns their open roles immediately. Then paste in the companies you care about.

Sample output

companytitlelocationdepartmentemploymentTypeisRemotepublishedAtprovider
StripeAccount Executive, AI SalesSan Francisco, CAEnterprise Sales2026-02-03greenhouse
SpotifyAndroid Engineer – ExperienceLondonEngineeringPermanentfalse2026-06-23lever
RampSecurity Engineer, CloudNew York, NYEngineeringFullTimetrue2026-04-07ashby

Every row also carries jobId, url, applyUrl, boardSlug, team, workplaceType, additionalLocations, compensation, updatedAt, descriptionPreview, descriptionTruncated and descriptionChars.

Why this one

You do not need the board slug. Every other ATS scraper wants boards-api.greenhouse.io/v1/boards/**stripe** — a token you have to go and find. Buyers do not have that. They have a company domain or a careers link. This Actor takes either, derives the slug, and asks each provider in turn until one recognises the company. Three cheap JSON requests, and an answer rather than a guess.

One schema across three vendors. The providers disagree about almost everything: a job's title is title on two and text on the third; a posting date is an ISO string here and epoch milliseconds there; a location is a nested object, a category, or a bare string. Remote is a boolean on Ashby, a workplace type on Lever, and nothing at all on Greenhouse. All of it is normalised, every field is always present, and jobId is a string everywhere so joins do not break.

Descriptions you can actually read. Greenhouse returns HTML wrapped in escaped entities. It arrives here as plain text, cut to an 800-character preview with the true length reported in descriptionChars, so a row stays small enough for an AI agent to reason over. Set includeFullDescription when you want the whole posting.

What you can do with it

  • Track a competitor's hiring. Schedule it with postedAfter set to yesterday and you get only the new openings — the cleanest public signal of where a company is investing.
  • Build a job board. Point it at a list of portfolio or partner companies and you have a live, structured feed with direct apply links.
  • Source candidates by market. remoteOnly plus locationContains narrows hundreds of roles to the ones in your patch.
  • Feed an AI agent. Rows are under 2 KB, identically shaped across providers, and every one carries a direct apply URL.

Input

FieldDefaultNotes
companies3 sample companiesA domain (stripe.com), a bare slug (stripe), or a board URL for any supported provider. Mix freely.
providersall threeThe order to try when an entry does not name a provider. Narrow it when you already know the ATS — it removes the failed lookups.
titleContainsemptyCase-insensitive partial match on the job title.
locationContainsemptyMatches secondary locations too.
departmentemptyMatches department or team.
remoteOnlyfalseChecks all three providers' different remote signals.
postedAfteremptyYYYY-MM-DD. The most useful filter for a scheduled run.
includeFullDescriptionfalseFull posting text instead of a preview. Rows get much larger.
maxJobsPerCompany100Applied after filtering. Boards can be large — Stripe had 592 open roles.

How it works, and why it keeps working

This Actor reads the official, public, keyless job-board APIs that these companies' own careers pages are built on. No HTML parsing, no login, no proxy. A company can redesign its careers page and this Actor keeps returning the same fields.

Limits worth knowing before you buy

It covers Greenhouse, Lever and Ashby. A company on Workday, SuccessFactors, Taleo or its own bespoke system cannot be read here, and the run tells you plainly which entries did not resolve rather than returning a quiet empty result.

The slug is derived from the domain, which is right far more often than not but not always — a company whose board is named differently from its domain needs its board URL or exact slug. SUMMARY records what each entry resolved to, so the first run tells you the right identifier for every later one.

Pricing

Pay per job delivered, after filtering. A company with no matching openings charges you nothing.

Disclaimer

This is an unofficial tool. It is not affiliated with, authorised by, endorsed by, or in any way officially connected to Greenhouse Software, Lever, Ashby, or any company whose job board it reads. "Greenhouse", "Lever" and "Ashby" are trademarks of their respective owners.

It reads only public, unauthenticated job-board API endpoints — the same ones these companies' own careers pages call to render publicly advertised vacancies. It signs into nothing, stores no credentials, and returns nothing behind a login or a paywall. No candidate or applicant data is accessed; job postings are, by definition, published to be read.

Providers can change or withdraw these endpoints at any time. When a board cannot be read, this Actor says which company and why rather than handing you an empty result that looks like an answer.