Lever Jobs Scraper & API (+ Greenhouse, Ashby, Workable)
Pricing
$1.50 / 1,000 job results
Lever Jobs Scraper & API (+ Greenhouse, Ashby, Workable)
Lever jobs from any company's jobs.lever.co board (US and EU), plus Greenhouse, Ashby and Workable. Normalized listings with location, workplace type, team, salary range and apply link. $1.50 per 1,000 jobs.
Pricing
$1.50 / 1,000 job results
Rating
0.0
(0)
Developer
Winters Works
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Lever jobs as clean JSON or CSV: $1.50 per 1,000 jobs. The Apify Free plan's $5 monthly credit covers about 3,000 jobs.
Point it at any company that hires through Lever (the careers pages at jobs.lever.co/<company>) and get every open role as a flat record: title, team, department, location, workplace type, commitment, salary range when the company publishes one, posting date and the apply link. EU-hosted boards (jobs.eu.lever.co) work too, with no extra setting.
It reads Lever's public postings API, the same feed Lever provides for companies to embed their careers pages. No login, no browser, no proxies, so runs take seconds and cost very little.
Who uses Lever job data
- Recruiters and sourcers: watch a list of Lever companies for new roles in one team or city.
- Sales teams: a company hiring three data engineers is about to buy data tools. Use new postings as a buying signal.
- Job boards and newsletters: a direct-from-employer feed with the same fields for every company.
- Job seekers: schedule a daily run on your target companies and get only the new postings.
- Analysts: remote share, pay ranges and hiring pace by company.
Input
| Field | What it does |
|---|---|
companies | Lever URLs (https://jobs.lever.co/spotify) or bare slugs (spotify). Default: spotify, palantir, zoox |
keyword | All of these words must appear in the title, team, department or description |
location | The location must contain this text, e.g. London |
remoteOnly | Only roles Lever marks as remote (or whose location says remote) |
department | Department or team must contain this text, e.g. Engineering |
postedWithinDays | Only roles posted in the last N days |
includeDescription | Add the full description as plain text (descriptionText) |
maxResults / maxPerCompany | Caps, newest first. 0 = no cap |
onlyNew | Only roles not returned by earlier runs |
stateStoreName | Named store that remembers which roles you've seen |
Finding a slug: open the company's careers page and click a job. If the URL starts with jobs.lever.co/palantir/..., the slug is palantir. You can also paste the careers URL as is.
Bare slugs are checked on Lever first. If the company isn't on Lever, the Actor tries Greenhouse, Ashby, Workable and SmartRecruiters, so a mixed watchlist works in one run. To pin a company to one system, write greenhouse:stripe or lever:spotify.
Example: remote engineering roles posted this week at three Lever companies.
{"companies": ["https://jobs.lever.co/spotify", "palantir", "zoox"],"department": "Engineering","remoteOnly": true,"postedWithinDays": 7,"maxPerCompany": 0,"maxResults": 0}
Output
When a cap cuts results short, the last row is a free recordType: "runNotice" row explaining what was cut. Filter it out by recordType if you don't want it.
One record per job. A Lever example:
{"ats": "lever","company": "spotify","jobId": "ddc10181-6ecc-4dfc-9d02-2c5ce820cfdd","title": "Senior Product Manager, Consumer - Audiobooks","department": "Product","team": "Audio Books & Gated Content","location": "London; Stockholm","remote": false,"employmentType": "Permanent","compensation": null,"compensationMin": null,"compensationMax": null,"compensationCurrency": null,"compensationInterval": null,"postedAt": "2026-10-12T13:42:44.230Z","updatedAt": null,"applyUrl": "https://jobs.lever.co/spotify/ddc10181-6ecc-4dfc-9d02-2c5ce820cfdd/apply","scrapedAt": "2026-10-13T14:47:53.275Z"}
employmentType is Lever's commitment field (Full-time, Permanent, Intern and so on). Salary fields are filled only when the company publishes a range on Lever; otherwise they are null. updatedAt isn't provided by Lever. Download the dataset as JSON, CSV, Excel or HTML, or read it through the Apify API.
Get only new Lever jobs every day
- Set
onlyNewtotrueand give the watchlist astateStoreName, e.g.fintech-lever-watch. - Add an Apify Schedule (daily or hourly).
- Send results on with a webhook, an email notification, or the Zapier, Make, n8n, Slack or Google Sheets integrations.
The first run returns everything that matches and remembers the job IDs. Each later run returns, and charges for, only roles that weren't there before. Use a separate stateStoreName for each watchlist.
Pricing
| Event | Price | Per 1,000 |
|---|---|---|
job-result (one job returned) | $0.0015 | $1.50 |
1,000 jobs = $1.50, 10,000 jobs = $15. Filters run before charging, so you pay only for jobs in the dataset. A company that isn't found or has no open roles costs nothing, and the run's status message says which inputs came back short and why. You can set a maximum cost per run in the run options.
Use it from code or an AI agent
Python:
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("wintersworks/lever-jobs-scraper").call(run_input={"companies": ["spotify", "palantir"],"keyword": "data","postedWithinDays": 7,})for job in client.dataset(run["defaultDatasetId"]).iterate_items():print(job["company"], job["title"], job["applyUrl"])
AI assistants (Claude, Cursor and other MCP clients) can call it through Apify's hosted MCP server at https://mcp.apify.com?actors=wintersworks/lever-jobs-scraper, with your Apify token as a Bearer header. Then ask, for example: "Which of spotify, palantir and zoox posted engineering jobs on Lever this week? Give me the apply links."
FAQ
Is this allowed? It reads only the public postings endpoint Lever offers for embedding careers pages. It doesn't log in or get around anything, and the postings are published by the employers. You're responsible for how you use the data, including privacy and marketing laws. Not affiliated with or endorsed by Lever.
A company returned nothing. Its Lever slug may differ from its name (check the careers URL), it may use another applicant tracking system such as Workday or iCIMS, which aren't supported, or it may have no open roles right now.
Can I get every job on Lever? No. Lever has no public directory of companies, so you supply the list.
Do I need proxies? No. The API is public and fast; a run over a handful of companies finishes in seconds.
More from Winters Works
- Greenhouse Jobs Scraper & API: the same normalized output, built around Greenhouse boards, with Lever, Ashby, Workable and SmartRecruiters too.
- Bulk Email Verifier & MX Record Checker: syntax, MX, disposable and role-address checks, no SMTP probing.
- Website Tech Stack & SEO Audit: what a list of sites runs on, plus SEO basics and a 0-100 score.
- WHOIS & Domain Availability MCP Server: give your AI agent domain lookups, expiry dates and availability checks over RDAP.
Built and maintained by Winters Works. Questions or requests: open an issue on the Actor page or email wintersworks.shop@gmail.com.