Career Site Jobs — Greenhouse, Lever, Ashby, Workday Scraper
Pricing
from $1.00 / 1,000 jobs
Career Site Jobs — Greenhouse, Lever, Ashby, Workday Scraper
Open jobs straight from company career sites: Greenhouse, Lever, Ashby, Workable, Recruitee and Workday. Give links, board names or just company websites. Salary, remote, department, posting date, new-jobs monitor and a hiring summary per company.
Pricing
from $1.00 / 1,000 jobs
Rating
0.0
(0)
Developer
Salih Küçükkayış
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
13 hours ago
Last modified
Categories
Share
Get every open job straight from company career sites: Greenhouse, Lever, Ashby, Workable, Recruitee and Workday. Give job board links, short names like greenhouse:airbnb, or just company websites (stripe.com): the Actor finds the job board on the site. Each job comes with title, location, remote, department, team, job type, posting date, salary (when the company publishes it), apply link and the full description as plain text.
Two things job board scrapers don't give you:
- New jobs monitor: turn on Only new jobs since the last run, schedule the Actor daily or weekly, and get only the openings that appeared since the previous run. Perfect for job alerts, recruiting and sales triggers.
- Hiring summary per company: switch Output to Companies and get one row per company: open jobs, jobs posted in the last 7 and 30 days, departments, top locations, remote share and, with the monitor on, new and removed jobs since the last run. A ready-made hiring signal for sales and investment teams.
$1 per 1,000 jobs, $3 per 1,000 company rows, plus $0.005 per run. Companies whose job board can't be found are free. No login, no API key, no proxies.
Quick start
Press Start with the example input:
{"companies": ["https://jobs.ashbyhq.com/ramp", "greenhouse:airbnb"]}
Each job becomes one dataset row (a Ramp job as the live board returns it, description shortened):
{"id": "34413f8d-26bf-4bbc-8ade-eb309a0e2245","title": "Security Engineer, Cloud","company": "Ramp","ats": "ashby","url": "https://jobs.ashbyhq.com/ramp/34413f8d-26bf-4bbc-8ade-eb309a0e2245","applyUrl": "https://jobs.ashbyhq.com/ramp/34413f8d-26bf-4bbc-8ade-eb309a0e2245/application","location": "New York, NY (HQ)","locations": ["New York, NY (HQ)", "Remote (Canada)"],"country": "USA","remote": true,"workplaceType": "hybrid","department": "Engineering","team": "Backend","employmentType": "FullTime","postedAt": "2026-04-07T17:12:35.753Z","salaryMin": 211400,"salaryMax": 290600,"salaryCurrency": "USD","salaryPeriod": "year","salaryText": "$211.4K - $290.6K","description": "ABOUT RAMP\n\nRamp is building the smart infrastructure ...","input": "https://jobs.ashbyhq.com/ramp","boardUrl": "https://jobs.ashbyhq.com/ramp"}
What you can give it
| Input | Example |
|---|---|
| Greenhouse | https://boards.greenhouse.io/airbnb, job-boards.greenhouse.io/airbnb, greenhouse:airbnb, EU: greenhouse-eu:acme |
| Lever | https://jobs.lever.co/spotify, lever:spotify, EU: jobs.eu.lever.co/acme, lever-eu:acme |
| Ashby | https://jobs.ashbyhq.com/ramp, ashby:ramp |
| Workable | https://apply.workable.com/huggingface, workable:huggingface |
| Recruitee | https://bunq.recruitee.com, recruitee:bunq |
| Workday | https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite |
| Company website | stripe.com, https://www.notion.so |
For a website, the Actor reads the home page and the usual career pages (/careers, /jobs, ...) and looks for a link to or an embed of a supported job board. If none is linked, it tries the company name from the domain (stripe.com → stripe) on Greenhouse, Ashby, Lever and Workable, and a shortened name (datadoghq.com → datadog) on Greenhouse and Workable when the board's company name is an exact match; a Greenhouse or Workable board is only accepted when its company name matches. Each row says how the board was found in detectedBy (input, link or name-match).
Filters
Job title contains, Job title does not contain, Location contains, Department contains, Remote jobs only and Posted within (days). Filtered-out jobs are not charged.
Pricing
| Event | Price | When |
|---|---|---|
| Job | $1 / 1,000 | each job row in the results |
| Company | $3 / 1,000 | each company row (Companies output) |
| Run start | $0.005 | per run, at the default 512 MB memory |
Cost examples:
| Job | Cost |
|---|---|
| All 165 open jobs at Ramp | $0.17 |
| 200 companies, about 40 jobs each | $8.01 |
| Hiring summary of 1,000 companies | $3.01 |
| Daily monitor of 100 companies, 30 new jobs a day | $0.04 a day |
Set a spending limit on the run (Max total charge in Apify) and the Actor stops cleanly at it.
Use it from code, n8n, Make or an AI agent
curl -X POST "https://api.apify.com/v2/acts/saliga~career-site-jobs/run-sync-get-dataset-items?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"companies": ["stripe.com", "greenhouse:airbnb"], "keywords": ["engineer"], "remoteOnly": true}'
How it reads the job boards
- Public job board APIs for Greenhouse, Lever, Ashby, Workable and Recruitee: the same feeds these systems publish so that companies can show their jobs on their own sites. One request returns a company's whole board, which is why it's fast and cheap.
- Workday career sites through the JSON the site itself loads. The site's robots.txt is checked first and the board is skipped if it disallows it.
- Polite by design: one request at a time per site, a pause between requests (Lever's 1 second is respected), and robots.txt is honoured for every career page and Workday site. No login, no cookies, no CAPTCHA solving, and no personal data such as recruiter emails.
Limits
- Supported systems: Greenhouse, Lever, Ashby, Workable, Recruitee and Workday. Companies on other systems (iCIMS, Taleo, SuccessFactors, SmartRecruiters, Personio, Teamtailor, custom pages) return an error row, free.
- Workday lists stop at 2,000 jobs per career site and give rough dates ("Posted 3 Days Ago";
postedAtApproximateis true for "30+ days"). Turn on Workday: read each job page for descriptions, exact dates and all locations. - Salary is filled when the job board has a salary field (Lever, Ashby, Recruitee) or, with descriptions on, when the description states a range like "$150,000 - $190,000", "152,000 USD - 241,500 USD" or "€3.500 - €4.500 per month" (Workday: with Workday: read each job page on).
- In the Companies output,
totalJobsOnBoardis the job board's own count (when the board gives one) even if Max jobs per company cut the list;openJobscounts the jobs that were read and passed the filters. - The same job board given twice (for example as a link and as a short name) is read and charged once.
- With the monitor on, if a board has more jobs than Max jobs per company, new and removed jobs can be incomplete; raise the limit for full tracking.
- Matching by company name can pick the wrong board when two companies share a name (Lever and Ashby don't publish a company name to check). Give the job board link when you know it.
FAQ
Why are some websites "not found"? The site doesn't link to a supported job board from its home page or the usual career pages, or robots.txt disallows those pages, or the company uses another system. The error field says which. These rows are free.
How does the monitor know what's new? It keeps the job ids of each company in a named key-value store in your Apify account (career-site-jobs-monitor-<name>). Use a different Monitor name per project.
Other tools from the same developer: Video to Scenes, Audio to Text, Document to Markdown, Bulk HTTP Requests, Website Screenshot + Change Detection, Keyword Search Volume.