ATS Jobs Scraper: Greenhouse, Lever, Ashby, Workday avatar

ATS Jobs Scraper: Greenhouse, Lever, Ashby, Workday

Pricing

$1.20 / 1,000 job postings

Go to Apify Store
ATS Jobs Scraper: Greenhouse, Lever, Ashby, Workday

ATS Jobs Scraper: Greenhouse, Lever, Ashby, Workday

ATS jobs scraper for public company career boards, including Greenhouse, Lever and Ashby. Export job titles, locations, descriptions and application links as consistent JSON rows.

Pricing

$1.20 / 1,000 job postings

Rating

0.0

(0)

Developer

Grit

Grit

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

ATS Jobs Scraper - Greenhouse, Lever, Ashby, Workable, SmartRecruiters (+ Workday)

ATS jobs scraper returns public job postings from supported company career boards. ATS jobs API rows include job titles, locations, descriptions, and application links when supplied by the board.

What it returns

One row per job, the same fields for every platform:

FieldTypeExample value
companystring"Ramp"
atsstring"ashby"
job_idstring"34413f8d-26bf-4bbc-8ade-eb309a0e2245"
titlestring"Security Engineer, Cloud"
departmentstring"Engineering"
teamstring"Backend"
locationstring"New York, NY (HQ)"
locationsarray["New York, NY (HQ)", "Remote (Canada)", "Remote (US)", "Miami, FL"]
remotebooleantrue
workplace_typestring"hybrid"
employment_typestring"Full-time"
salary_mininteger211400
salary_maxinteger290600
salary_currencystring"USD"
salary_intervalstring"year"
posted_atstring"2026-04-07T17:12:35.753000Z"
updated_atstring"2026-09-25T20:45:00Z"
apply_urlstring"https://jobs.ashbyhq.com/ramp/34413f8d-26bf-4bbc-8ade-eb309a0e2245/application"
description_textstring"ABOUT RAMP\n\nRamp is building the smart infrastructure for finance teams, embedded in the transaction flow of every dollar a business spends. We automate how over $200B in annualized spend flows in and out of 70,000+ companies: authorizing payments, flagging risk, categorizing spend, and closing books.\n\nThe problems are high-stakes, data-dense, and unforgiving.\n\nWe hire people with high agency and high urgency. We look for slope over intercept. We care less about where you trained and more about [... truncated in sample file only]"
description_htmlnullnull
source_urlstring"https://jobs.ashbyhq.com/ramp/34413f8d-26bf-4bbc-8ade-eb309a0e2245"
errornullnull

Input example

{
"companies": [
"https://jobs.ashbyhq.com/ramp"
],
"maxItems": 10
}

Use the input schema for the remaining filters and defaults.

Output example

This is a selected-field excerpt of the first object in sample_output.json.

{
"company": "Ramp",
"ats": "ashby",
"job_id": "34413f8d-26bf-4bbc-8ade-eb309a0e2245",
"title": "Security Engineer, Cloud",
"department": "Engineering",
"team": "Backend",
"location": "New York, NY (HQ)",
"locations": [
"New York, NY (HQ)",
"Remote (Canada)",
"Remote (US)",
"Miami, FL"
],
"remote": true,
"workplace_type": "hybrid",
"employment_type": "Full-time",
"salary_min": 211400,
"salary_max": 290600,
"salary_currency": "USD"
}

Pricing

Pay per event: $0.0012 per job returned (event job), no start fee. Error rows are free. You set a maximum spend per run and the actor stops when it is reached. Reasoning against the current Store competitors is in PRICING.md.

Speed (measured, local run, 2026-10-05)

  • 100 jobs with descriptions from Greenhouse + Lever + Ashby (3 boards): 2.6 s
  • 100 jobs with descriptions from a Workday site (NVIDIA): 24.4 s (one detail request per job)
  • 18 jobs from 6 boards on 6 platforms: 4.3 s

Limits and honest notes

  • Public data only: whatever a company publishes on its own job board. No login, no CAPTCHA solving, no applicant or recruiter personal data.
  • Company-hosted career pages (a company's own domain in front of Greenhouse, for example) cannot be detected from the URL: pass greenhouse:<token>.
  • Salary is only present when the company publishes it through the API. Workable and SmartRecruiters publish none; Lever and Greenhouse only if the board returns pay ranges (not seen in the test boards). Nothing is guessed from description text.
  • Workday: the list gives a relative date ("Posted 3 Days Ago", "30+ Days Ago" gives no date). With includeDescription on, the exact start date from the job detail is used. Workday salary, department and team are not returned.
  • remote on Greenhouse and Workday is inferred from the word "Remote" in the location or title; on the other platforms it comes from the platform's own field.
  • Lever boards on the EU datacenter are found automatically. Some well-known companies have left their ATS (e.g. Netflix no longer has a public Lever board) and return a "not found" error row.
  • A company that does not exist or has no board returns an error row (error field, free) and the run continues.

FAQ

What limits the output? The maxItems input caps output rows; its schema maximum is 100,000. Source availability and errors may yield fewer rows.

Does it need a proxy, login, or API key? The actor calls public ATS job-board endpoints without a company login or proxy input.

How is it priced? The pay-per-event proposal in PRICING.md charges job rows as described there. Check the published Store settings for the active price and platform charges.

What happens on rate limits? The HTTP client retries throttling and transient server failures, using Retry-After when supplied. A source can still reject requests.

How fresh is the data? Jobs reflect public boards at run time. posted_at and updated_at are source fields and may be absent.

Are all jobs guaranteed to have salary data? No. Salary fields remain empty when the source board omits them.

Use with AI agents / MCP

An AI agent can call a published actor through the Apify MCP server or Apify API, pass the JSON input, then read the run’s default dataset. Check the actor’s published identifier and permissions in your Apify account.

Every run returns plain JSON, so an agent can call it directly. Through the Apify MCP server (https://mcp.apify.com) add this actor as a tool and give the model a prompt such as: "Find remote backend engineering jobs posted in the last 7 days at stripe, ramp and spotify". The agent supplies companies, keywords: ["backend"], remoteOnly: true, postedWithinDays: 7 and gets normalised rows it can rank, summarise or load into a CRM. Keep maxItems low in agent loops so cost stays bounded.