Greenhouse, Lever & Ashby Jobs API: ATS Job Postings Scraper avatar

Greenhouse, Lever & Ashby Jobs API: ATS Job Postings Scraper

Pricing

from $2.00 / 1,000 job results

Go to Apify Store
Greenhouse, Lever & Ashby Jobs API: ATS Job Postings Scraper

Greenhouse, Lever & Ashby Jobs API: ATS Job Postings Scraper

Job postings straight from company career pages on 6 ATS platforms (Greenhouse, Lever, Ashby, Workable, SmartRecruiters, Recruitee) via their public job-board APIs. One schema, remote filter, salary where published, only-new job alerts.

Pricing

from $2.00 / 1,000 job results

Rating

0.0

(0)

Developer

Stanislav

Stanislav

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

14 days ago

Last modified

Security

Limited permissions

Share

Get job postings straight from company career pages hosted on Greenhouse, Lever, Ashby, Workable, SmartRecruiters and Recruitee, through the public job-board APIs these ATS platforms provide. Paste career page URLs or ats:company slugs and get one clean, normalized row per job: title, department, location, remote flag, salary where the ATS publishes it, posted date and apply link.

  • Who it's for: recruiters and sourcers, job boards and newsletters, sales teams using hiring as a buying signal, labour-market research.
  • Source: the companies' own public job-board APIs. No login, no proxies, no reposts from aggregators.
  • Alerts: turn on only-new mode and schedule it to get just the jobs that appeared since the last run.
  • Output: JSON, CSV or Excel; pay per job returned (see the Pricing tab).

Quick start (one click)

Open the Actor and press Start: the form is prefilled with this input.

{
"companies": [
"greenhouse:stripe",
"lever:palantir",
"ashby:ramp"
],
"keywords": [
"data"
],
"excludeKeywords": [],
"maxItems": 20
}

Sample output (one row, more fields in the dataset):

idtitlelocationurlpostedAt
8190059Account Executive, Product Sales (Data)US-SF-HQ, US-NYC, US-CHI, US-SEAhttps://stripe.com/jobs/search?gh_jid=81900592026-10-05T12:08:53-04:00

Use cases

Daily alerts for new roles at target companies. Schedule daily; each run returns only jobs not seen before.

{"companies": ["greenhouse:stripe", "ashby:ramp"], "keywords": ["engineer"], "onlyNew": true}

Niche job board feed. Remote data roles across many companies, posted in the last 7 days.

{"companies": ["greenhouse:stripe", "lever:palantir", "ashby:ramp"], "keywords": ["data"], "remoteOnly": true, "postedWithinDays": 7}

Hiring signals for sales. Which accounts are hiring for a team you sell to (titles only, no descriptions, for speed).

{"companies": ["greenhouse:stripe", "lever:palantir"], "keywords": ["security", "devops"], "includeDescription": false, "maxItems": 500}

Salary research. Ashby and Lever publish salary ranges on many postings.

{"companies": ["ashby:ramp"], "maxItems": 200}

Features and details of this job postings scraper API

Get fresh job postings directly from company career sites, through the official public job-board APIs that these ATS platforms provide for publishing jobs. Paste career page URLs; get clean, normalized jobs.

Why this Actor

  • Direct from the source: the same data the company publishes on its own career page, with no duplicate reposts from aggregators.
  • 6 ATS platforms, one output format: Greenhouse, Lever (US and EU), Ashby, Workable, SmartRecruiters, Recruitee.
  • Filters: title keywords and exclusions, location, remote only, posted within N days.
  • Only new jobs: schedule it daily and receive only postings you have not seen.
  • Salary where the ATS publishes it (Ashby, Lever).
  • Fast and cheap: JSON APIs only, no browser, no proxies. About 1,200 jobs from 6 companies in ~6 seconds in our tests.

How to use

  1. Open the Actor and paste one or more career page URLs into Companies.
  2. Optionally add filters (keywords, location, remote only, posted within N days).
  3. Click Start and download the results as JSON, CSV or Excel, or get them through the API.
  4. For job alerts, add a daily Schedule with onlyNew: true.

Pricing

Pay per result: $2.00 per 1,000 jobs ($0.002 per job) plus $0.005 per run start. No subscription.

Notes

Only publicly published job postings are collected; no candidate or personal data. Always link applicants to the original url. Not affiliated with any of the ATS vendors.

How to use the job postings scraper API

  1. Open the Actor, fill in the input form (or paste the JSON below).
  2. Click Start. Results land in the dataset as JSON, CSV, Excel or via the Apify API.
  3. For alerts or regular refreshes, add an Apify Schedule. You can cap spend with "Max charge per run".

Input example

Real input of cloud run 0R5xVFyeAx2twqaf8 (2026-10-22/23):

{
"companies": [
"greenhouse:stripe",
"ashby:ramp",
"lever:palantir"
],
"keywords": [
"data"
],
"includeDescription": false,
"maxItems": 25
}

Output example

Real rows from that run (25 results, 5.6 s) (long titles shortened in the table):

companytitlelocationposted
StripeAccount Executive, Product Sales (Data)US-SF-HQ, US-NYC, US-CHI, US-SEA2026-10-05
StripeAccount Executive, Product Sales (Data Pipeline)Singapore2026-08-19
StripeData AnalystCanada2023-11-01
StripeData Analyst, Global GrowthSingapore2026-09-25
StripeData Analyst, InternNew York, Seattle, South San Francisco HQ2026-10-01
StripeData Analyst, InternToronto2026-10-01

One full record:

{
"id": "8190059",
"title": "Account Executive, Product Sales (Data)",
"location": "US-SF-HQ, US-NYC, US-CHI, US-SEA",
"url": "https://stripe.com/jobs/search?gh_jid=8190059",
"postedAt": "2026-10-05T12:08:53-04:00",
"updatedAt": "2026-10-22T09:17:09-04:00",
"company": "Stripe",
"ats": "greenhouse",
"board": "stripe",
"isRemote": false,
"source": "greenhouse public job board API"
}

A second run (aThry5Kjz9VthqLpL, ashby:ramp + lever:palantir) returned Ramp roles such as Software Engineer, Data Platform. postedAt is what the ATS reports; some companies re-post old roles.

FAQ

Which job boards does this jobs scraper support?

Greenhouse, Lever (US and EU), Ashby, Workable, SmartRecruiters and Recruitee. LinkedIn and Indeed are not supported: they have no official public job-board API.

How do I find a company's ATS?

Open its Careers page and look where the Apply links go, e.g. boards.greenhouse.io or jobs.lever.co.

Is salary always included?

No. Salary appears only when the company publishes it in the ATS (most often Ashby and Lever).

How much does it cost?

$2 per 1,000 jobs plus $0.005 per run. There is no subscription.

Are there limits I should know about?

Yes. Results are only as complete and current as the official source. If a source is down, the run logs the error instead of returning made-up data. Report problems in the Issues tab.

Use it from code, AI agents and automations

The same input as the form above works everywhere. Results are the run's dataset (JSON, CSV, Excel). You need an Apify API token (Console → Settings → API & Integrations).

Python (pip install apify-client)

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("stazis/ats-jobs-api").call(run_input={
"companies": [
"greenhouse:stripe",
"lever:palantir",
"ashby:ramp"
],
"keywords": [
"data"
],
"maxItems": 20
})
for item in client.dataset(run.default_dataset_id).iterate_items(): # apify-client < 3: run["defaultDatasetId"]
print(item)

JavaScript / TypeScript (npm i apify-client)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('stazis/ats-jobs-api').call({
"companies": [
"greenhouse:stripe",
"lever:palantir",
"ashby:ramp"
],
"keywords": [
"data"
],
"maxItems": 20
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();

HTTP, one call (waits for the run, up to 5 minutes, and returns the items)

curl -X POST "https://api.apify.com/v2/acts/stazis~ats-jobs-api/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" \
-d '{"companies": ["greenhouse:stripe", "lever:palantir", "ashby:ramp"], "keywords": ["data"], "maxItems": 20}'

AI agents (MCP). This Actor runs with limited permissions, so AI agents can use it through the hosted Apify MCP server (Claude, Cursor, VS Code, Codex and other MCP clients). Add this to your MCP client config and sign in with Apify on first use:

{ "mcpServers": { "ats-jobs-api": { "url": "https://mcp.apify.com?tools=stazis/ats-jobs-api" } } }

Agents without an Apify account can pay per run in USDC through agi.apify.com (x402). Pricing is pay-per-event, so an agent pays only for the results it gets.

LangChain (pip install langchain-apify, set APIFY_TOKEN): from langchain_apify import ApifyActorsTool and tool = ApifyActorsTool("stazis/ats-jobs-api") gives your agent this Actor as a tool.

No-code and scheduling: use the Apify app in Make, n8n or Zapier ("Run an Actor", then pick stazis/ats-jobs-api), or create a Schedule in Apify Console to run it daily and send results to a webhook, Slack or Google Drive through Apify integrations.

Other data APIs by stazis