ATS Jobs Scraper - Greenhouse, Lever & Ashby avatar

ATS Jobs Scraper - Greenhouse, Lever & Ashby

Pricing

$6.00 / 1,000 jobs

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

ATS Jobs Scraper - Greenhouse, Lever & Ashby

Scrape live job postings straight from company career pages on Greenhouse, Lever and Ashby. One unified schema across all three, deduplicated, with salary ranges parsed into real numbers. HTTP-only and fast. $6 per 1,000 jobs.

Pricing

$6.00 / 1,000 jobs

Rating

0.0

(0)

Developer

Aabis Hussain

Aabis Hussain

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Get real job postings straight from company career pages - not from a job-board aggregator that lags days behind, republishes stale roles, and strips out half the fields.

This Actor reads the official public job APIs of Greenhouse, Lever and Ashby, and returns everything in one consistent schema, deduplicated, with salary ranges parsed into real numbers.

$6 per 1,000 jobs. No subscription, no minimum, and no charge for rows you filtered out.

Why scrape ATS boards instead of job boards?

Job-board aggregatorsThis Actor
FreshnessHours to days behindThe moment the company publishes
AccuracyReposts, ghost jobs, expired rolesLive board state - if it's gone, it's gone
Apply linkRedirects and trackersDirect link to the company's own application
SalaryUsually missingParsed into salaryMin / salaryMax / salaryCurrency
DuplicatesSame role many timesRemoved by default

If a company posts a role at 9am, this Actor sees it at 9am.

What you get

  • Three ATS platforms, one schema. Greenhouse, Lever and Ashby return wildly different shapes. You get identical field names across all of them - merge without writing glue code.
  • Auto-detection. Don't know which ATS a company uses? Give the company slug and it works it out.
  • Salary parsing. Handles $150,000 - $200,000, £80k - £100k, USD 120,000 to 160,000, hourly rates, and Ashby's structured compensation data. Period normalised to hourly / daily / weekly / monthly / yearly.
  • Deduplication by default. Companies list one role under five locations. You are not charged for the copies.
  • Real filters - title, location, department, remote-only, has-salary-only, posted-after - all applied before billing.
  • HTTP-only. No headless browser, no proxies, no cookies. Fast runs and a low price, because there is no browser overhead to pass on to you.
  • Agent-ready. Pay-per-event pricing and limited permissions, so it works inside automated and agentic workflows.

Input

Point it at companies using the board token - the company slug in its careers URL:

Careers URLBoard token
boards.greenhouse.io/stripestripe
jobs.lever.co/palantirpalantir
jobs.ashbyhq.com/ashbyashby
{
"companies": ["stripe", "lever:palantir", "ashby:ashby"],
"includeDescription": true,
"titleIncludes": ["engineer"],
"postedAfter": "2026-08-01",
"maxItems": 500
}

Platform is auto-detected. Prefix with greenhouse:, lever: or ashby: to force it and skip the lookup.

Filters

FieldDoes
titleIncludes / titleExcludesKeep or drop by job title
locationIncludesMatch against every listed location
departmentIncludesMatch department or team
remoteOnlyOnly remote roles
hasSalaryOnlyOnly roles where a salary was found
postedAfterOnly roles published on/after a date - ideal for daily scheduled runs
maxItems / maxItemsPerCompanyHard caps so one big employer cannot eat the run

Output

{
"jobId": "5061642004",
"source": "greenhouse",
"companyToken": "stripe",
"companyName": "Stripe",
"title": "Backend Engineer, Payments",
"department": "Engineering",
"team": "Payments",
"employmentType": "Full-time",
"location": "London, United Kingdom",
"locations": ["London, United Kingdom", "Dublin, Ireland"],
"country": "GB",
"isRemote": false,
"workplaceType": "hybrid",
"postedAt": "2026-08-04T09:12:00.000Z",
"updatedAt": "2026-08-08T14:01:00.000Z",
"salaryMin": 120000,
"salaryMax": 165000,
"salaryCurrency": "GBP",
"salaryPeriod": "yearly",
"salaryRaw": "£120,000 - £165,000",
"jobUrl": "https://boards.greenhouse.io/stripe/jobs/5061642004",
"applyUrl": "https://boards.greenhouse.io/stripe/jobs/5061642004",
"description": "About the role...",
"scrapedAt": "2026-08-10T12:00:00.000Z"
}

Export to JSON, CSV, Excel, XML or pull via API.

What people use it for

  • Recruiting and talent intelligence - track exactly who your competitors are hiring, in which teams, at what salary
  • Job boards and aggregators - a clean, fresh supply feed you own, without licensing an aggregator
  • Market research - headcount direction, salary benchmarking, geographic expansion signals
  • Sales prospecting - hiring is a buying signal; a company staffing a new function has new budget
  • Job-seeker tools - power alerts and personalised feeds from source-of-truth data

Pricing

$6 per 1,000 jobs ($0.006 per job returned).

You are charged only for rows delivered to your dataset - never for duplicates removed, rows excluded by filters, or boards that returned nothing.

Tip: run with includeDescription: false for a fast, lightweight sweep, then re-run on the shortlist with descriptions on. Same price per row either way, but far quicker.

Notes and limits

  • Only public job boards are read. Nothing private, nothing authenticated, no logins, no cookies.
  • The board token is the slug in the careers URL, not the company's display name. Stripe, Inc. becomes stripe. This is the single most common cause of an empty result.
  • If a company does not use Greenhouse, Lever or Ashby, it will not be found. More platforms are being added - tell me which one you need and I will prioritise it.
  • Ashby exposes structured compensation, so its salary data is the most reliable. Greenhouse and Lever need includeDescription: true for salary parsing, since the figures live in the description text.
  • Every run writes a RUN_SUMMARY record to the key-value store: rows pushed, duplicates removed, rows filtered, and any board tokens that could not be resolved.

Feedback

Missing a field? Need another ATS? Hit an edge case in salary parsing? Open an issue on this Actor - I read every one and ship fixes fast.