ATS Jobs: Greenhouse, Lever & Ashby Job Boards avatar

ATS Jobs: Greenhouse, Lever & Ashby Job Boards

Pricing

from $1.40 / 1,000 jobs

Go to Apify Store
ATS Jobs: Greenhouse, Lever & Ashby Job Boards

ATS Jobs: Greenhouse, Lever & Ashby Job Boards

Get every open job from any company's Greenhouse, Lever or Ashby careers page in one clean, identical format. Filter by keyword, location, remote and date, or return only jobs that are new since your last run. Official public APIs only.

Pricing

from $1.40 / 1,000 jobs

Rating

0.0

(0)

Developer

agentready

agentready

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Get every open job from any company's Greenhouse, Lever or Ashby careers page in one identical, clean format. Mix all three in one run, filter by keyword, location, remote or date, and turn on "only new jobs" to get just the postings that appeared since your last run.

It reads only the official public job-board APIs these systems provide for publishing jobs. No logins, no browser, no blocked pages, so runs are fast and cheap and rarely break.

What you can do with it

  • Track hiring at target accounts. New roles in a team are a strong buying signal for sales.
  • Feed a job board or newsletter with fresh postings from hundreds of companies.
  • Give an AI agent live answers to "who is hiring senior Rust engineers in Berlin?" or "what does Notion pay product designers?"
  • Monitor competitors' hiring, including department, location and published pay ranges.

Quick start

Paste careers pages, ats:board names, or plain board names:

{
"companies": [
"https://boards.greenhouse.io/gitlab",
"https://jobs.lever.co/leverdemo",
"ashby:notion",
"stripe"
],
"keywords": ["engineer", "AI"],
"remoteOnly": true
}

A plain name such as stripe is looked up on Greenhouse, then Lever, then Ashby.

Daily "new jobs only" feed

Schedule this to run every morning. The first run returns everything that matches; after that, each run returns only jobs you haven't received yet, and you only pay for those new jobs.

{
"companies": ["ashby:openai", "greenhouse:anthropic", "lever:spotify"],
"keywords": ["machine learning", "research"],
"onlyNewJobs": true,
"stateKey": "ml-roles"
}

Use a different stateKey for each separate search you schedule.

Input

FieldWhat it does
companies (required)Careers URLs, greenhouse:x, lever:x, ashby:x, or plain board names. Up to 500.
keywordsKeep jobs whose title contains any of these, matched as whole words (AI does not match "maintain").
excludeKeywordsDrop jobs whose title contains any of these.
searchInDescriptionAlso match keywords in the job description.
locationsKeep jobs whose location or country contains any of these (London, Germany, Remote).
remoteOnlyKeep remote jobs only.
departmentsKeep jobs whose department or team contains any of these.
postedWithinDaysKeep jobs published in the last N days.
onlyNewJobs / stateKeyOutput only jobs not returned in earlier runs under the same key.
descriptionFormattext (default), html, both, or none.
maxJobsPerCompany, maxResultsCaps. 0 means no limit.

Output

Every job has the same fields, whatever system it came from. Missing values are null, never guessed.

{
"id": "ashby:ashby:7458d4e9-da2e-47bd-98cb-adfda43d42b2",
"ats": "ashby",
"companySlug": "ashby",
"companyName": "Ashby",
"jobId": "7458d4e9-da2e-47bd-98cb-adfda43d42b2",
"title": "Engineering Manager - EU",
"department": "Engineering",
"team": "EMEA Engineering",
"locations": ["Remote - European Union", "Spain", "Germany"],
"country": "European Union",
"workplaceType": "remote",
"isRemote": true,
"employmentType": "FullTime",
"salary": { "min": 110000, "max": 185000, "currency": "EUR", "interval": "year", "summary": "€110K - €185K" },
"postedAt": "2024-03-04T14:29:08Z",
"updatedAt": null,
"url": "https://jobs.ashbyhq.com/ashby/7458d4e9-da2e-47bd-98cb-adfda43d42b2",
"applyUrl": "https://jobs.ashbyhq.com/ashby/7458d4e9-da2e-47bd-98cb-adfda43d42b2/application",
"description": "Hi, I am the Director of Engineering, Europe. ...",
"descriptionHtml": null,
"scrapedAt": "2026-09-28T12:00:00Z"
}
  • id is stable across runs. Use it to de-duplicate.
  • salary appears when the company publishes pay (common on Lever and Ashby; Greenhouse's public API doesn't include it).
  • workplaceType is remote, hybrid, onsite or null. Greenhouse has no remote field, so it is read from the location text there.
  • Dates are ISO 8601 in UTC.

Each run also saves a RUN_SUMMARY record in the key-value store. It lists every company you asked for with its status (ok, not_found, error), jobs on the board, jobs matched and jobs output. A misspelled company never fails the whole run.

Using it from an AI agent (MCP)

This Actor works as a tool in Claude, Cursor and other MCP clients through Apify's MCP server. The input and output are described field by field, so an agent can call it directly, for example: "Use ATS Jobs to list remote data engineering roles posted this week at gitlab, notion and openai."

For agents, descriptionFormat: "text" returns clean plain text, and maxResults keeps responses small.

Pricing

You pay per job returned, with no monthly fee. Boards that are not found or return no matches cost nothing. Set a maximum charge on any run and the Actor stops cleanly when it is reached.

Finding a company's board name

Open the company's careers page and look at the job links:

  • boards.greenhouse.io/<name> or job-boards.greenhouse.io/<name> → Greenhouse
  • jobs.lever.co/<name> → Lever
  • jobs.ashbyhq.com/<name> → Ashby

If a careers site is hosted on the company's own domain, open any job's Apply link; it usually lands on one of these.

Limits and good to know

  • Only companies that use Greenhouse, Lever or Ashby are covered. Workday, iCIMS and others are not.
  • Only jobs the company has made public are returned. Unlisted and internal postings are not.
  • EU-hosted Lever boards (jobs.eu.lever.co) are supported automatically.

This Actor reads the public job-board APIs that Greenhouse, Lever and Ashby provide so that job postings can be displayed publicly. It returns job postings only, not personal data about candidates or employees. You are responsible for how you use the data; follow each company's terms and applicable law.

Support

Found a problem or want a field added? Open an issue on the Actor's Issues tab.