Career Site Jobs Scraper: Greenhouse, Lever, Workday & more avatar

Career Site Jobs Scraper: Greenhouse, Lever, Workday & more

Pricing

$3.00 / 1,000 job scrapeds

Go to Apify Store
Career Site Jobs Scraper: Greenhouse, Lever, Workday & more

Career Site Jobs Scraper: Greenhouse, Lever, Workday & more

Scrape all open jobs from company career sites. Supports Greenhouse, Lever, Ashby, Workable, SmartRecruiters, Recruitee, Personio and Workday. Auto-detects the ATS from a company website. One normalized format with salary, location, remote flag and full description. Pay only per job.

Pricing

$3.00 / 1,000 job scrapeds

Rating

0.0

(0)

Developer

Murch1k

Murch1k

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Share

Career Site Jobs Scraper — Greenhouse, Lever, Workday, Ashby & more

Scrape every open job straight from company career sites — the same postings companies publish themselves, often before they reach LinkedIn or Indeed. One actor covers the 8 most popular applicant tracking systems (ATS) and returns one clean, normalized format with title, location, remote flag, salary, department, posting date, apply link and the full description.

Just paste a company website like stripe.com — the actor finds its job board automatically.

Supported career sites

ATSExample inputUsed by
Greenhouseboards.greenhouse.io/stripeStripe, Anthropic…
Leverjobs.lever.co/palantirPalantir, Spotify…
Ashbyjobs.ashbyhq.com/rampRamp, Notion…
Workdaynvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSiteNVIDIA and many large enterprises
SmartRecruitersjobs.smartrecruiters.com/ServiceNowServiceNow, Bosch…
Workableapply.workable.com/huggingfaceHugging Face…
Recruiteebunq.recruitee.combunq…
Personiopersonio.jobs.personio.dePersonio…

Why this actor

  • ✅ Fresh, first-party data — straight from the employer's own job board, no aggregator delay or duplicates.
  • ✅ Auto-detection — give anthropic.com or notion.so; the actor scans the site and its careers pages for the job board.
  • ✅ Salary included — from structured ATS fields and from pay-transparency text (e.g. "The base salary range is $168,000 – $270,250"), normalized to min/max/currency/period.
  • ✅ Filters before you pay — title keywords, excluded words, locations, remote-only and "posted in the last N days". Filtered-out jobs are free.
  • ✅ Fast & reliable — uses the public job-board endpoints the ATS vendors publish for embedding career pages; no browser, no logins, no CAPTCHAs.
  • ✅ Low price — $3 per 1,000 jobs, pay only for jobs delivered.

Use cases

  • Job boards & aggregators — fill a niche job board (remote, AI, climate, fintech…) from hundreds of companies daily.
  • Sales & lead generation — hiring is a buying signal. Find companies hiring "Salesforce admin", "SOC analyst" or "data engineer" and pitch them.
  • Recruiting & talent intelligence — track competitors' openings, salary bands and team growth.
  • Market & investment research — measure hiring velocity by company, department and location.
  • Job seekers & AI agents — monitor dream companies and get alerts on new roles.

Input

FieldDescription
companiesRequired. Job board URLs, company websites/careers pages, or shorthands like greenhouse:stripe, workday:nvidia.wd5/NVIDIAExternalCareerSite.
keywordsKeep jobs whose title contains any of these words.
excludeKeywordsDrop jobs whose title contains any of these words.
locationsKeep jobs whose location/city/country contains any of these (e.g. Berlin, United States, Remote).
remoteOnlyOnly remote jobs.
postedWithinDaysOnly jobs posted in the last N days.
maxJobsPerCompany / maxResultsLimits to control cost.
includeDescription / includeDescriptionHtmlPlain-text description (default on) and optional original HTML.
proxyConfigurationApify datacenter proxy by default — enough for public job boards.

Example:

{
"companies": ["stripe.com", "https://jobs.ashbyhq.com/ramp", "https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite"],
"keywords": ["engineer"],
"excludeKeywords": ["intern"],
"locations": ["United States", "Remote"],
"postedWithinDays": 30
}

Output

One row per job, the same shape for every ATS. Export to JSON, CSV, Excel, or use the API, webhooks, Make, Zapier or n8n.

{
"id": "5391151008",
"ats": "greenhouse",
"companySlug": "anthropic",
"companyName": "Anthropic",
"title": "AI Operations Engineer, Partnerships",
"department": "Sales",
"team": null,
"location": "San Francisco, CA",
"locations": [
"San Francisco, CA"
],
"country": null,
"city": null,
"isRemote": false,
"workplaceType": null,
"employmentType": null,
"seniority": null,
"salaryMin": 215000,
"salaryMax": 300000,
"salaryCurrency": "USD",
"salaryPeriod": "YEAR",
"salaryText": "$215,000—$300,000 USD",
"postedAt": "2026-08-14T22:07:17.000Z",
"updatedAt": "2026-08-24T23:47:05.000Z",
"url": "https://job-boards.greenhouse.io/anthropic/jobs/5391151008",
"applyUrl": "https://job-boards.greenhouse.io/anthropic/jobs/5391151008",
"description": "About Anthropic\n\nAnthropic’s mission is to create reliable, interpretable, and steerable AI systems. We want A…",
"requisitionId": "266710",
"source": "anthropic.com",
"scrapedAt": "2026-10-13T12:13:12.977Z"
}

Fields an ATS doesn't publish are null (for example, Greenhouse has no employment-type field). Some ATS add extra fields: function, industry (Workable, SmartRecruiters), requisitionId (Greenhouse), hiringEntity (Workday).

The run's RUN_STATS record lists boards that were not found and websites where no supported ATS was detected.

Use with AI agents (MCP), LangChain, RAG & the API

This actor is a ready-made tool for AI agents: an LLM can call it, wait for the run and read clean JSON back.

MCP server (Claude Desktop, Claude Code, Cursor, VS Code, any MCP client) — add Apify's hosted MCP server with this actor enabled as a tool:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=murch1k/career-site-jobs-scraper",
"headers": { "Authorization": "Bearer <APIFY_TOKEN>" }
}
}
}

LangChain / LangGraph (pip install langchain-apify, set APIFY_API_TOKEN):

from langchain_apify import ApifyActorsTool, ApifyWrapper
from langchain_core.documents import Document
# 1) give the actor to an agent as a tool
tool = ApifyActorsTool("murch1k/career-site-jobs-scraper")
# 2) or load results as Documents for a RAG index
loader = ApifyWrapper().call_actor(
actor_id="murch1k/career-site-jobs-scraper",
run_input={"companies": ["stripe.com", "https://jobs.ashbyhq.com/ramp", "https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite"], "keywords": ["engineer"], "excludeKeywords": ["intern"], "locations": ["United States", "Remote"], "postedWithinDays": 30},
dataset_mapping_function=lambda item: Document(page_content=item["description"], metadata={"url": item.get("url")}),
)
docs = loader.load()

REST API — one synchronous call, dataset items in the response:

curl -X POST "https://api.apify.com/v2/acts/murch1k~career-site-jobs-scraper/run-sync-get-dataset-items?token=<APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"companies": ["stripe.com", "https://jobs.ashbyhq.com/ramp", "https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite"], "keywords": ["engineer"], "excludeKeywords": ["intern"], "locations": ["United States", "Remote"], "postedWithinDays": 30}'

Also works with the Apify Python/JS clients, Make, Zapier, n8n, Google Sheets, webhooks and schedules. Export as JSON, CSV, Excel, XML or RSS.

RAG tip: Embed description per job and keep companyName, title, location, isRemote and url as filterable metadata — an agent can then answer "which of my target accounts are hiring data engineers in Berlin?".

Pricing

Pay per result: $3.00 per 1,000 jobs ($0.003 per job). Jobs removed by your filters are not charged.

ExampleJobsCost
One company, engineering roles50$0.15
100 companies, all jobs10,000$30

FAQ

Is this legal? The actor reads public job postings from endpoints the ATS vendors provide for publishing career pages. No login, no personal data about candidates. Always use the data in line with applicable law and the source's terms.

A company isn't detected — why? It may use an ATS that isn't supported yet (e.g. iCIMS, Taleo, SAP SuccessFactors), or a custom career site. Paste the job board URL directly if you know it, or open an issue and we'll consider adding the ATS.

How fresh is the data? Live — each run reads the job board at that moment. Schedule the actor daily to track new and closed roles.

Workday dates are approximate? Workday's list shows "Posted 3 Days Ago"; we convert it to a date and use the exact start date from the job detail when available.

Support

Need another ATS, a field, or a bug fixed? Open an issue on the Issues tab — we respond quickly.