Job Search API - Greenhouse, Lever & Ashby Jobs Scraper avatar

Job Search API - Greenhouse, Lever & Ashby Jobs Scraper

Pricing

$2.00 / 1,000 job returneds

Go to Apify Store
Job Search API - Greenhouse, Lever & Ashby Jobs Scraper

Job Search API - Greenhouse, Lever & Ashby Jobs Scraper

Job scraper and search API for live openings on company career pages. Searches an index of companies across Greenhouse, Lever, Ashby, Workable, SmartRecruiters and Teamtailor, and returns one normalised schema with apply links. No LinkedIn logins, no proxies, nothing to get blocked by.

Pricing

$2.00 / 1,000 job returneds

Rating

0.0

(0)

Developer

DataSignals Lab

DataSignals Lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Job Search API — jobs direct from company career pages

Search live openings across an indexed set of companies, pulled straight from their own career boards. Run it with no input to see it work.

Most job scrapers read LinkedIn or Indeed: aggregators that copy postings a day or two late, behind bot protection that breaks and needs proxies. This Actor reads the source instead — the public JSON endpoint every applicant tracking system already publishes for its customers' career pages.

You do not need to know any company or platform. A built-in index maps companies to their ATS, so you can just search: keyword, location, remote. Name a company explicitly only when you want to track that one employer.

What you get

One row per open job, identical across all six platforms:

fieldmeaning
titlejob title
companythe company slug you asked for
platformwhich ATS it was found on (auto-detected)
locationlocation as the employer wrote it
remotetrue/false from the employer's own flag, null if unstated
departmentteam or department
employment_typefull-time, contract, and so on where published
posted_atISO-8601 UTC, or null if the platform does not publish it
apply_urlthe public application page
job_idthe platform's own identifier, for de-duplication
descriptionthe posting text, HTML stripped

Every field is present on every row. Where a platform genuinely does not publish something you get null — never an invented value.

Why one schema matters

Six platforms, six shapes. Lever puts the date in epoch milliseconds, Greenhouse in ISO with a Z. SmartRecruiters splits the location into city, region and country and exposes a ref that points at its own API rather than at a page a human can apply on. Ashby has a real isRemote boolean; Greenhouse expects you to read the location string. Normalising that is the work this Actor does for you.

Input

Everything is optional. The most common run is a plain search:

{
"keywords": ["engineer"],
"location": "Berlin",
"remoteOnly": true,
"maxJobs": 100
}

When you do name companies, the slug is the identifier in the career-board URL: boards.greenhouse.io/stripestripe, jobs.ashbyhq.com/RampRamp. The platform is detected automatically either way.

inputdefaultwhat it does
keywords["engineer"]match on job title and department
location""substring match on location
remoteOnlyfalseonly jobs the employer flagged remote
maxJobs100hard stop, and therefore your budget cap
maxCompanies40how many indexed companies to walk
maxJobsPerCompany10keeps one big employer from filling the page
companies[]search these slugs instead of the index
companyFilter""limit the index to matching company names
platform""limit to one ATS platform
searchDescriptionsfalsealso match the description text

Keywords deliberately do not search descriptions by default. Nearly every job description contains the word "engineer" somewhere, so including them turns a search for engineers into a list that also has analysts and recruiters in it.

A company that is not on any supported platform is logged as a warning and skipped; the rest of your list still runs.

Pricing

Pay per job returned. You pay for rows you actually get: filtered-out jobs and companies that returned nothing cost nothing. No subscription, no per-run minimum.

Use it from an AI agent

The Actor works with no input at all, which means an agent can call it to see what it does before deciding how to use it. It is also available over MCP, so Claude, ChatGPT or Cursor can query live job boards directly.

Limits, stated plainly

  • Only companies that publish a public career board on one of the six supported platforms. That is a large share of tech and scale-up hiring, not all hiring.
  • The index is a curated set, not the whole internet. It grows over time; name companies explicitly to reach any employer that is not in it yet.
  • posted_at is whatever the platform publishes. Teamtailor and some Workable boards do not expose a reliable date; you get null rather than a guess.
  • remote reflects the employer's own flag or wording. Employers are inconsistent about this; treat it as their claim, not as verified fact.
  • No salary field. Too few boards publish it in a comparable way for it to be worth a column that is empty nine times out of ten.