Career Site Jobs Scraper: Greenhouse, Lever, Ashby and more
Under maintenancePricing
from $3.00 / 1,000 jobs
Career Site Jobs Scraper: Greenhouse, Lever, Ashby and more
Under maintenanceGet open jobs straight from company career sites: Greenhouse, Lever, Ashby, SmartRecruiters, Recruitee and Workable. Paste career page URLs or just company names. Salary, remote/hybrid, full descriptions, and only-new-jobs mode for monitoring.
Pricing
from $3.00 / 1,000 jobs
Rating
0.0
(0)
Developer
Sourcewise
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Security
Limited permissionsShare
Career Site Jobs Scraper: Workday, Greenhouse, Lever, Ashby, Personio, Teamtailor & more
Get open jobs straight from company career sites: no job board middlemen, no reposts, no ghost listings. Paste career page URLs or just company names, and get clean, structured jobs with salary, remote/hybrid status and full descriptions.
Why use it?
- 🎯 Direct from the source. Data comes from the public job board APIs and career sites of the ATS platforms companies use to hire. That makes it fast and reliable, with no blocked requests. We respect each site's robots.txt.
- 🔎 Just type a company name. "Hugging Face", "OpenAI", "Stripe": the Actor finds the company's board across all supported platforms automatically.
- 🔔 Only new jobs (monitoring mode). Schedule it daily and get only the jobs that appeared since the last run. You pay only for new jobs.
- 💰 Salary data where the company publishes it (Ashby, Lever, Recruitee).
- 🧹 One normalized schema across all platforms. The same fields work for every company.
- 🤖 AI-agent ready. Simple input and clean JSON output, usable through the Apify MCP server.
Supported platforms
| Platform | Example career page URL |
|---|---|
| Greenhouse | https://boards.greenhouse.io/stripe, https://job-boards.greenhouse.io/<company> |
| Lever | https://jobs.lever.co/spotify (EU boards supported) |
| Ashby | https://jobs.ashbyhq.com/openai |
| SmartRecruiters | https://jobs.smartrecruiters.com/BoschGroup |
| Recruitee | https://<company>.recruitee.com |
| Workable | https://apply.workable.com/<company> |
| Personio | https://<company>.jobs.personio.de (official XML job feed) |
| Teamtailor | https://<company>.teamtailor.com, or teamtailor:careers.example.com for a custom career domain |
| Workday | https://<company>.wd5.myworkdayjobs.com/<SiteName> (copy the career site URL from your browser) |
You can also write ats:slug, e.g. greenhouse:stripe or workday:nvidia.wd5/NVIDIAExternalCareerSite.
Workday notes: company names can't be auto-detected for Workday, so paste the career site URL. Workday serves at most 2,000 jobs per search. For very large employers, add title keywords: they are sent to Workday's own search, so each keyword gets its own 2,000-job window and runs finish faster. Dates are exact when descriptions are included. Without descriptions they're estimated from "Posted 3 Days Ago"-style labels, and published_at_estimated is true.
Use cases
- Job seekers and career coaches: track target companies and get alerted about new openings.
- Recruiters and staffing agencies: watch client and prospect companies for new roles.
- Job boards and aggregators: fill niche boards with fresh, first-party postings.
- Market and talent intelligence: measure hiring velocity, departments and locations across competitors.
- Investors: use hiring as a signal of company growth.
Input
| Field | Description |
|---|---|
companies | Career page URLs, ats:slug, or company names (required) |
titleKeywords | Keep jobs whose title contains any of these words (whole words, case-insensitive) |
excludeTitleKeywords | Drop jobs whose title contains any of these words |
locations | Keep jobs matching any location, city or country (whole words, so US won't match Australia); Remote matches remote jobs |
remoteOnly | Only jobs marked remote |
postedWithinDays | Only jobs published in the last N days |
onlyNewJobs | Return only jobs not seen in previous runs with the same companies list |
stateKey | Optional custom name for the monitoring memory |
includeDescription | Include description HTML and plain text (default: on) |
maxJobsPerCompany / maxJobs | Limits (newest jobs first) |
Example:
{"companies": ["https://boards.greenhouse.io/stripe", "OpenAI", "lever:spotify"],"titleKeywords": ["engineer", "data scientist"],"excludeTitleKeywords": ["intern"],"locations": ["London", "Remote"],"onlyNewJobs": true}
Output
Each job is one dataset item:
{"id": "ashby:openai:240d459b-696d-43eb-8497-fab3e56ecd9b","ats": "ashby","company_slug": "openai","company_name": "OpenAI","job_id": "240d459b-696d-43eb-8497-fab3e56ecd9b","title": "Research Engineer","url": "https://jobs.ashbyhq.com/openai/240d459b-696d-43eb-8497-fab3e56ecd9b","apply_url": "https://jobs.ashbyhq.com/openai/240d459b-696d-43eb-8497-fab3e56ecd9b/application","location": "San Francisco","locations": ["San Francisco"],"country": "United States","city": "San Francisco","workplace_type": null,"is_remote": null,"employment_type": "FullTime","department": "Research","published_at": "2025-04-05T00:03:20Z","published_at_estimated": false,"updated_at": null,"salary": {"min": 250000, "max": 445000, "currency": "USD", "period": "year", "text": "$250K - $445K"},"language": null,"description_html": "<p>…</p>","description_text": "…"}
The run's key-value store also contains an OUTPUT record with a per-company summary: the detected platform, jobs on the board, jobs matched, jobs returned, and any errors such as a company not found.
Pricing
You pay per job returned. Filters are applied before charging, so you never pay for jobs you filtered out, and in monitoring mode you only pay for new jobs. Set a maximum cost per run in the run options, and the Actor stops cleanly when it reaches it.
FAQ
A company name matched the wrong company. Names can be ambiguous: "Lunar", for example, exists on several platforms. The run summary (OUTPUT) lists other_matches for each name, and the log shows a warning. Paste the career page URL or ats:slug to pick the right one.
A company isn't found by name. Its board may use a different slug, or it may be on a platform not yet supported. Paste the career page URL instead. If the company uses another ATS, open an issue and we'll consider adding it.
Is this legal? The Actor reads only public job postings that companies publish through their ATS's public job board API, so that job seekers and aggregators can find them. It does not collect personal data.
How fresh is the data? Live. Every run fetches the boards directly.