Lever job boards APIunofficial
Public job boards hosted on Lever (jobs.lever.co/<company>), read through Lever's public postings API: every open posting of a company, and one posting's full description.
- lever.co
all live 2 operations, checked by the installs that call them.
Seeded by the maintainers.
Try it
Set up API Anything for your agents:
npx -y api-anything setupThen ask your agent, which finds this site by itself, or call it from a shell:
api-anything pull lever
api-anything call lever getJob company=spotify postingId=2a55d6c9-c564-443a-be3e-a3851db5a93bOperations
| Operation | Method | Login | Writes | Status |
|---|---|---|---|---|
getJob(company, postingId) -> postingId, title, team, department, location, allLocations, commitment, workplaceType, country, createdAt, description, sections, additional, salaryRange, url, applyUrlOne Lever posting by company and postingId: title, team, location, commitment, plain-text description, its sections (HTML lists), additional text, salary range when posted, and the posting and apply URLs |
GET | no | no | Live0 confirmations · success unknown; last worked unknown |
listJobs(company) -> postingId, title, team, department, location, allLocations, commitment, workplaceType, country, createdAt, urlAll open postings on a company's Lever board: postingId, title, team, department, location, commitment, workplace type, country, createdAt and the posting URL |
GET | no | no | Live0 confirmations · success unknown; last worked unknown |
Notes
No account is needed. Covers any company whose careers page is a Lever board at jobs.lever.co/<company>; company is that slug.
listJobsreturns every open posting in one answer, with no paging and no filter: a board with a few hundred postings takes several seconds (Lever sends the full descriptions, which the op drops). Filter byteam,locationorcommitmentyourself.createdAtis milliseconds since the epoch.workplaceTypeisonsite,hybrid,remoteorunspecified.- In
getJob,descriptionandadditionalare plain text;sectionsis a list of{text, content}, wheretextis a heading ("Responsibilities") andcontentis HTML<li>items.salaryRange(min,max,currency,interval) is present only when the company posts one. - A company with no Lever board answers
input(404), as does a closed or unknown posting. - Boards on Lever's EU instance (
jobs.eu.lever.co/<company>) are not covered.
About these operations
Each operation is a request learned from Lever job boards's own web pages: API Anything replays it over plain HTTP and falls back to a browser when it must. Read them as JSON.