Greenhouse, Lever & Ashby Jobs Scraper
Pricing
$1.50 / 1,000 job records
Greenhouse, Lever & Ashby Jobs Scraper
Scrape and monitor job postings from Greenhouse, Lever and Ashby job boards via their official public APIs. Filter by keyword, location, remote, department and date. Salary, apply URL and description. First 25 results per run free.
Pricing
$1.50 / 1,000 job records
Rating
0.0
(0)
Developer
GovData Tools
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Greenhouse, Lever & Ashby Jobs Scraper (ATS Jobs Monitor)
First 25 results of every run are free. You pay only for jobs beyond the first 25 in a run.
Scrape and monitor job postings from any company that hires through Greenhouse, Lever or Ashby. One normalized dataset, many companies. Give it a list of companies (e.g. greenhouse:stripe, https://jobs.lever.co/palantir, https://jobs.ashbyhq.com/linear). It returns every open role with title, department, team, location, remote flag, employment type, salary range (when the company publishes it), post date, apply link and, optionally, the full job description.
It reads only the official, public job board APIs that Greenhouse, Lever and Ashby provide so companies can show jobs on their own careers sites. No login, no cookies, no proxies, no browser automation, so runs are fast, cheap and reliable.
What can you do with this ATS job scraper?
- Recruiting & sourcing. Track new openings at target companies every day and see which teams are hiring.
- Sales lead generation. Hiring signals are buying signals. A company hiring "Data Engineer" or "RevOps Manager" may need your product. Feed new postings into your CRM or Slack.
- Job aggregators & niche job boards. Build a remote-only, region-specific or role-specific board from hundreds of company boards with one normalized schema.
- Market & competitive research. Measure hiring velocity, department mix, locations and published salary ranges across competitors or a whole industry.
- Job seekers. Get a daily list of new roles at your dream companies that match your keywords.
Features
- ✅ 3 major ATS platforms: Greenhouse, Lever and Ashby. Mix them freely in a single run.
- ✅ Paste URLs or slugs. The platform is auto-detected from board URLs (
boards.greenhouse.io/…,job-boards.greenhouse.io/…,jobs.lever.co/…,jobs.eu.lever.co/…,jobs.ashbyhq.com/…). - ✅ Filters: title keywords (include/exclude), location, remote-only, department/team, and posted since (
1 day,7 days,24 hours,2026-10-01). - ✅ Monitoring mode (
onlyNew). Remembers jobs it has already returned and outputs only new ones. Schedule it daily and get just the fresh postings. - ✅ Salary data from Ashby and Lever when the employer publishes it (min, max, currency, interval, summary).
- ✅ Deduplicated and fault tolerant. A wrong slug or an unavailable board is logged as a warning and skipped. The rest of the run continues.
- ✅ Budget aware. Stops automatically when your maximum charge per run is reached.
Input
| Field | Description |
|---|---|
companies (required) | List of platform:slug entries or board URLs. |
keywords | Keep jobs whose title contains any of these words (case-insensitive). |
excludeKeywords | Drop jobs whose title contains any of these. |
locations | Keep jobs whose location (or any secondary location) contains any of these. |
remoteOnly | Keep only remote jobs. |
departments | Keep jobs whose department or team contains any of these. |
postedSince | 1 day, 7 days, 48 hours or YYYY-MM-DD. Empty means no date filter. |
onlyNew / stateStoreName | Monitoring mode. Output only jobs not seen in previous runs. |
includeDescription | Add the full plain-text description. |
maxItems | Maximum number of jobs to return (default 1000). |
Example: new engineering jobs from the last day (daily monitor)
{"companies": ["greenhouse:stripe", "greenhouse:airbnb", "lever:palantir", "ashby:linear", "ashby:notion"],"keywords": ["engineer", "developer"],"postedSince": "1 day","onlyNew": true,"maxItems": 500}
Example: remote sales roles in the US, using board URLs
{"companies": ["https://boards.greenhouse.io/airbnb", "https://jobs.lever.co/palantir", "https://jobs.ashbyhq.com/openai"],"departments": ["sales", "go to market"],"locations": ["United States", "US"],"remoteOnly": true,"includeDescription": true}
How to find a company's slug: open their careers page and click a job. If the URL looks like boards.greenhouse.io/<slug>, jobs.lever.co/<slug> or jobs.ashbyhq.com/<slug>, paste it as is. Some companies host their careers page on their own domain. For those, look for gh_jid= (Greenhouse), lever.co or ashbyhq.com links in the apply button.
Output
One record per job:
{"source": "ashby","company": "ashby","companyName": "ashby","jobId": "7458d4e9-da2e-47bd-98cb-adfda43d42b2","title": "Engineering Manager - EU","department": "Engineering","team": "EMEA Engineering","location": "Remote - European Union","allLocations": ["Remote - European Union", "Spain", "Italy", "Germany"],"remote": true,"workplaceType": "Remote","employmentType": "FullTime","compensation": {"min": 150000, "max": 250000, "currency": "EUR", "interval": "1 YEAR", "summary": "€150K – €250K • Offers Equity • Offers Bonus"},"postedAt": "2024-03-04T14:29:08.532000Z","updatedAt": null,"applyUrl": "https://jobs.ashbyhq.com/ashby/7458d4e9-da2e-47bd-98cb-adfda43d42b2/application","jobUrl": "https://jobs.ashbyhq.com/ashby/7458d4e9-da2e-47bd-98cb-adfda43d42b2","descriptionText": "Hi 👋 I'm Colin, Director of Engineering, Europe. …","id": "ashby:ashby:7458d4e9-da2e-47bd-98cb-adfda43d42b2","scrapedAt": "2026-10-28T17:00:00Z"}
id is a stable unique key (source:company:jobId), so you can use it for dedupe and upserts in your own database. A run summary with per-company counts and any errors is saved to the key-value store record OUTPUT.
You can download the results as JSON, CSV, Excel or HTML, or send them anywhere with Apify integrations (Google Sheets, Slack, Zapier, Make, webhooks, API).
Pricing
Pay per result: $1.50 per 1,000 jobs ($0.0015 per job record). There's no start fee and no monthly subscription. The first 25 results of every run are free (no charge events for them). You pay only for the jobs returned after your filters are applied. Set a maximum charge per run and the Actor stops when it is reached. Use filters and onlyNew to pay only for the jobs you actually want.
FAQ
Is this legal? Does it bypass anything?
It only uses the official public job board endpoints that Greenhouse (boards-api.greenhouse.io), Lever (api.lever.co/v0/postings) and Ashby (api.ashbyhq.com/posting-api) publish so job listings can be embedded on careers sites. No authentication, scraping evasion or private data is involved. The data is the same as what anyone sees on the public careers page.
Why are some fields empty? Each ATS exposes different data. Greenhouse's public API has no salary or employment-type fields. Lever has no "updated" date. Salary is included only when the employer chooses to publish it.
How does "Posted since" work? It uses Greenhouse's first published date, Lever's created date and Ashby's published date. If a job has no post date, the updated date is used.
How do I get only new jobs every day?
Turn on onlyNew and schedule the Actor (for example, daily). Use a different stateStoreName for each separate monitor.
A company returns an error.
The slug is probably wrong or the company moved to another ATS. Check the run log or the OUTPUT record. The other companies are still processed.
Can you add Workday, SmartRecruiters, Workable…? Open an issue on the Actor's Issues tab and tell us which platforms you need.