Lever Jobs API: All Open Jobs from Any Lever Board avatar

Lever Jobs API: All Open Jobs from Any Lever Board

Pricing

from $1.00 / 1,000 job results

Go to Apify Store
Lever Jobs API: All Open Jobs from Any Lever Board

Lever Jobs API: All Open Jobs from Any Lever Board

Every open job from any Lever board (jobs.lever.co and EU) via the official public Postings API: team, department, commitment, workplace type, country, salary and structured requirement lists. Filters, only-new mode. $1 per 1,000 jobs.

Pricing

from $1.00 / 1,000 job results

Rating

0.0

(0)

Developer

Andrew Shamah

Andrew Shamah

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

20 hours ago

Last modified

Share

Get every open job from any company that hires through Lever (Palantir, Spotify, Binance and thousands of startups) in clean JSON, CSV or Excel. It reads Lever's official, public Postings API, on both the global (jobs.lever.co) and EU (jobs.eu.lever.co) instances: no login, no browser, no proxies.

What makes it more than a generic job scraper:

  • 🧩 Lever's own categories: team, department, commitment (Full-time, Intern, Contract…), workplace type (remote / hybrid / onsite) and ISO country, all filterable.
  • 📋 Structured requirement lists. Lever postings are built from lists such as "What you'll do" and "What we're looking for". You get them as sections: [{title, items[]}], ready for skills extraction or LLM pipelines.
  • 💵 Salary ranges from Lever's salary fields when the company sets them, the salary description text, and a fallback parser for ranges written in the description.
  • 🇪🇺 EU instance detected automatically. Boards that live on api.eu.lever.co are found with no extra input.
  • 📄 Automatic pagination, so boards with hundreds of jobs come back complete.
  • 🔁 Only-new mode for daily alerts and monitoring.

Price: $1 per 1,000 jobs ($0.001 per job returned), plus a tiny start fee. Boards that fail are listed as free error rows, and you never pay for jobs your filters drop.

Who uses it

  • Job boards and aggregators: keep listings for hundreds of Lever companies fresh with a daily schedule and onlyNew.
  • Recruiters and sales teams: see who is hiring for which roles (hiring signals for outbound).
  • Job seekers: get alerts for new roles at your target companies, filtered by title, location, remote and salary.
  • Researchers and analysts: track hiring velocity, department mix and salary bands over time.

How to use it

  1. Add one or more Lever boards: a URL like https://jobs.lever.co/palantir, or just the slug.
  2. Optionally set filters (title keywords, location, department, remote, salary…).
  3. Run it, then download the dataset as JSON, CSV, Excel or HTML, or read it through the Apify API.

Finding the board slug

The slug is the part after the domain: jobs.lever.co/palantir or jobs.eu.lever.co/<company>. Paste either URL or just the slug; EU boards are detected automatically.

Not sure which ATS a company uses, or it uses Workable, SmartRecruiters, Recruitee, Personio, Teamtailor, BambooHR or Breezy? Use our multi-ATS Company Jobs API, which detects the ATS for you.

Input

InputWhat it does
companiesBoard URLs or slugs, one per line
keywords / excludeKeywordsTitle must contain any / none of these
locationsLocation, secondary locations or country contains any of these
departments, teamsDepartment / team contains any of these
employmentTypes, workplaceTypes, remoteOnlyJob type and remote/hybrid/on-site
postedWithinDaysPosted or updated in the last N days
onlyWithSalary, minAnnualSalaryOnly jobs with a published salary, and/or a minimum annualized top of range
onlyNewReturn only jobs not seen in your previous runs (for schedules and alerts)
includeDescription, redactContactsFull description text/HTML; emails and phones redacted by default
maxJobsPerCompany, maxJobsTotalHard caps (also cap your cost)

Example:

{ "companies": ["https://jobs.lever.co/palantir"], "keywords": ["engineer"], "remoteOnly": false, "onlyNew": true }

Output

One dataset item per job. Every item has the common fields ats, companySlug, company, jobId, title, location, locations, isRemote, postedAt, url, applyUrl, descriptionText, descriptionHtml, input, scrapedAt and error, plus these Lever-specific fields:

FieldDescription
team, department, commitment (= employmentType)Lever categories
workplaceType, isRemote, countryremote / hybrid / onsite, ISO country code
location, locationsPrimary location and all locations
sections[{title, items[]}]: the posting's lists (responsibilities, requirements, benefits)
openingText, descriptionText, descriptionHtmlThe intro, and the full description
salaryMin, salaryMax, salaryCurrency, salaryPeriod, salarySource, salaryDescriptionSalary range and the salary text block
leverInstanceglobal or eu
postedAt, url, applyUrlCreated date, posting and application links

Example item (shortened; values are illustrative):

{
"ats": "lever", "companySlug": "palantir", "company": "palantir", "jobId": "6ed76ce8-…",
"title": "Site Reliability Engineer - US Government", "team": "Engineering", "commitment": "Full-time",
"workplaceType": "hybrid", "country": "US", "location": "Washington, D.C.", "isRemote": false,
"sections": [{ "title": "Core Responsibilities", "items": ["…", "…"] }, { "title": "What We Require", "items": ["…"] }],
"salaryMin": 125000, "salaryMax": 200000, "salaryCurrency": "USD", "salaryPeriod": "YEAR",
"leverInstance": "global", "postedAt": "2026-08-01T12:00:00.000Z", "url": "https://jobs.lever.co/palantir/…", "...": "..."
}

The default key-value store also has a SUMMARY record with, for each board, the company name, open-job count, how many jobs were output, and a department breakdown.

Monitoring: only new jobs

Turn on onlyNew and schedule the Actor (for example daily). Job IDs are remembered in a named key-value store in your own account, keyed by your list of boards, so each run returns (and charges for) only postings you have not seen before. Connect a webhook, Slack, email or Zapier/Make integration to get alerts.

Speed and cost

About 1–3 seconds per 100 jobs. It runs on 512 MB by default; 256 MB is enough for most boards. Example: 10 companies × 150 jobs = 1,500 jobs ≈ $1.50.

FAQ

Is this allowed? Yes. It only reads the official public job-board API that Lever provides so companies' job listings can be shown on other sites. It doesn't log in or scrape candidate data. Contact details in descriptions are redacted by default.

Why did a board return 0 jobs? The board exists but has no open jobs right now (see SUMMARY), or your filters removed everything. A wrong slug returns a free error row explaining what was wrong.

Can I get jobs from many companies at once? Yes. Add as many boards as you like; they are processed one after another.

Is the salary converted to one currency? No. Salaries are returned exactly as published, with their currency and period. minAnnualSalary compares annualized amounts without converting currency.