ATS Job Boards - live postings from Greenhouse and Lever
Pricing
Pay per event
ATS Job Boards - live postings from Greenhouse and Lever
Every open role on a company's own job board, from the public APIs Greenhouse and Lever publish for employers to embed on their careers page. One row per posting: title, location, department, apply URL, posted date. No login, no API key. Ashby is not read - its robots.txt refuses us.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stephen Psaradellis
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 hours ago
Last modified
Categories
Share
ATS Job Boards — live postings from Greenhouse and Lever
Every open role on a company's own job board, read from the public APIs Greenhouse and Lever publish so that employers can embed their postings on their careers page. One dataset row per posting: title, location, department, commitment, apply URL, posted date, and optionally the full description.
No login. No API key. No scraping around a wall — these are the endpoints the company's own careers page calls.
What you give it
A list of boards, one per line:
greenhouse:vercelgreenhouse:figmalever:leverdemo
The token is the last path segment of the company's public board URL —
job-boards.greenhouse.io/vercel or jobs.lever.co/leverdemo. You
can paste the whole URL and it will take the token off the end. A bare name
with no prefix is tried on Greenhouse.
| Setting | What it does |
|---|---|
| Job boards | The boards to read, in order |
| Include the full description | Adds the posting's HTML body. Costs no extra request. On Greenhouse it also fills in department and offices, which the plain jobs endpoint does not return |
| Max boards | Stop after this many boards (0 = unbounded) |
| Max postings | Stop after this many postings (0 = unbounded) |
| Request timeout | Seconds before a board read is retried, then recorded as an error |
What you get
One row per posting:
{"ats": "greenhouse","board": "vercel","job_id": "6136160004","title": "Account Executive, Commercial","location": "Hybrid - London","department": "Account Executive","commitment": "","workplace": "","absolute_url": "https://job-boards.greenhouse.io/vercel/jobs/6136160004","posted_at": "2026-08-18T22:06:19.000Z","read_at": "2026-09-07T02:55:44.979Z"}
A RUN_SUMMARY record in the key-value store says how many boards were asked,
how many answered, how many were empty, how many 404ed, how many postings were
pushed, and what stopped the run if a cap did. A board with no open roles is
reported as empty, not dropped — "this company is not hiring right now" is an
answer, and you paid a request for it either way.
Pricing
Pay per event, and there is no charge for starting the actor:
| Event | Price | When |
|---|---|---|
| Job board read | $0.01 | One board fetched, whether or not it has open roles |
| Job posting row | $0.004 | One posting pushed. A posting seen twice in a run is charged once |
Reading 20 boards with 40 roles each costs $0.20 + $3.20 = $3.40.
What it does not do
- It does not submit applications. Both ATSes have an application endpoint; this actor never calls it.
- It does not read Ashby, although Ashby boards are in the same family.
api.ashbyhq.comanswers arobots.txtrequest with401, and this project treats a refusal as a refusal. - It does not invent fields. Where an ATS returns nothing for
department,commitmentorworkplace, the column is empty rather than guessed. - It does not enrich rows from anywhere else. What you get is what the employer published.
Where the data comes from
| ATS | Endpoint | robots.txt |
|---|---|---|
| Greenhouse | boards-api.greenhouse.io/v1/boards/{token}/jobs | Disallow: /embed/ only. Greenhouse's docs: "Job Board data is publicly available, so authentication is not required for any GET endpoints." |
| Lever | api.lever.co/v0/postings/{company}?mode=json | Allow: /, Crawl-delay: 1 — honoured as a real one-second gap between Lever reads |
Both were fetched and checked under this actor's own user agent before it was built, and the responses are kept with their SHA-256 digests.