ATS Jobs Feed: Greenhouse, Lever, Ashby, Workable & more avatar

ATS Jobs Feed: Greenhouse, Lever, Ashby, Workable & more

Pricing

Pay per event

Go to Apify Store
ATS Jobs Feed: Greenhouse, Lever, Ashby, Workable & more

ATS Jobs Feed: Greenhouse, Lever, Ashby, Workable & more

Every open job from company career sites on 6 ATS in one clean schema, with salary, seniority, job function, remote/hybrid, country, tech stack and visa fields. Auto-detects the ATS from a company name. Incremental mode bills only new or changed jobs.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Vivek Sinha

Vivek Sinha

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

ATS Jobs Feed: Greenhouse, Lever, Ashby, Workable, SmartRecruiters & Recruitee

Get every open job straight from company career sites on six applicant-tracking systems, in one clean schema, with the fields recruiters, sales teams and job boards actually need already filled in: salary, seniority, job function, remote/hybrid/onsite, country, tech stack, years of experience and visa sponsorship.

Give it a list of companies. You can paste career-site URLs, or just company names, and the Actor finds the right job board for you.

Why this Actor

  • 6 ATS platforms, 1 schema. Greenhouse, Lever, Ashby, Workable, SmartRecruiters and Recruitee all come back with the same field names, so you never write per-ATS glue code.
  • Auto-detection. Type ramp, notion.so or figma and the Actor checks all six ATS and uses the board it finds.
  • Enriched, decision-ready rows. Every job gets a normalized jobFunction, seniority, workplaceType, employmentType, countryCode, a salaryMin/salaryMax/salaryCurrency/salaryPeriod (structured where the ATS publishes it, otherwise parsed from pay-transparency text), techKeywords, yearsExperienceMin and visaSponsorship.
  • Monitoring mode that saves you money. Turn on Incremental mode and schedule the Actor daily: it remembers what it saw before and outputs only new or changed jobs, so you only pay for what's new. Optionally get a free closed row when a job disappears.
  • You only pay for jobs that match your filters. Title, location, workplace type, job function, seniority and posting-age filters run before anything is charged.
  • Free hiring-signal summaries. Every run saves a per-company summary (open jobs, new jobs in the last 7 and 30 days, mix by function, seniority and workplace type, top locations, salary-transparency share, median USD salary, top tech) to the key-value store as COMPANY_SUMMARIES, at no extra cost.
  • Fast and reliable. It reads each ATS's public job-board endpoint, so there's no browser, no proxy and no captcha. A 13-company test run that returned 492 jobs (including Bosch Group with 5,000+ openings) finished in about a minute in local testing.
  • Privacy by default. Email addresses in job text are redacted unless you switch that off.

Who uses it

  • Sales and RevOps: find companies hiring for the role your product replaces or supports ("hiring 5+ data engineers" = buying signal).
  • Recruiters and staffing agencies: a daily feed of fresh roles at target accounts.
  • Job boards and niche aggregators: back-fill listings with direct-from-employer jobs and real apply links.
  • Market and compensation research: salary bands, remote share and tech-stack demand across companies.
  • AI agents and RAG: clean plain-text descriptions with consistent metadata.

Input

FieldWhat it does
companiesCareer-site URLs (https://boards.greenhouse.io/stripe, https://jobs.lever.co/spotify, https://jobs.ashbyhq.com/ramp, https://apply.workable.com/huggingface, https://careers.smartrecruiters.com/Equinox, https://bunq.recruitee.com), ats:slug (lever:palantir), or a bare company slug or domain (ramp, notion.so).
titleKeywords / excludeTitleKeywordsKeep or drop jobs by title words.
locationKeywordse.g. London, Germany, Remote.
workplaceTypesremote, hybrid, onsite.
jobFunctionsengineering, data-ml, product, design, sales, marketing, customer, operations, finance, people-hr, legal-compliance, security, it, other.
senioritiesintern, junior, mid, senior, staff, principal, lead, manager, director, vp, c-level.
postedWithinDaysOnly jobs posted in the last N days.
descriptionFormattext (default), html, both or none.
incremental, stateKey, emitClosedJobsMonitoring mode (see above). Use one stateKey per watchlist.
companySummariesToDatasetAlso add the per-company summary rows to the dataset.
maxJobsPerCompany, maxJobsHard caps. You can also set a maximum charge per run.

Example:

{
"companies": ["https://boards.greenhouse.io/stripe", "lever:spotify", "ramp", "notion.so"],
"jobFunctions": ["engineering", "data-ml"],
"workplaceTypes": ["remote", "hybrid"],
"postedWithinDays": 30,
"incremental": true,
"stateKey": "fintech-watchlist"
}

Output (real example, description shortened)

{
"recordType": "job",
"jobKey": "ashby:ramp:f564dcf9-9390-4a3f-896f-8047a5086040",
"ats": "ashby",
"companyName": "Ramp",
"title": "Mobile Engineer, Android",
"department": "Engineering",
"team": "Mobile",
"jobFunction": "engineering",
"seniority": "mid",
"employmentType": "full-time",
"workplaceType": "hybrid",
"location": "New York, NY (HQ)",
"allLocations": ["New York, NY (HQ)", "Remote (Canada)", "San Francisco, CA", "Remote (US)"],
"countryCode": "US",
"salaryMin": 189000,
"salaryMax": 330000,
"salaryCurrency": "USD",
"salaryPeriod": "year",
"salarySource": "structured",
"compensationSummary": "$189K – $330K • Offers Equity",
"techKeywords": ["Python", "TypeScript", "Kotlin", "SQL", "React", "Flask"],
"postedAt": "2025-07-31T21:58:34.674Z",
"daysSincePosted": 446,
"jobUrl": "https://jobs.ashbyhq.com/ramp/f564dcf9-9390-4a3f-896f-8047a5086040",
"applyUrl": "https://jobs.ashbyhq.com/ramp/f564dcf9-9390-4a3f-896f-8047a5086040/application",
"descriptionText": "ABOUT RAMP\n\nRamp is building the smart infrastructure for finance teams…",
"descriptionWordCount": 728,
"contentHash": "a322c596f9e2eee4",
"changeType": null
}

The free COMPANY_SUMMARIES record for the same run reported, for Ramp: 169 open jobs, 52 posted in the last 30 days, 82% hybrid, 96% with a published salary, and a median USD salary midpoint of $221,550.

Export as JSON, CSV, Excel or XML, or connect via API, webhooks, Make, Zapier, n8n or MCP.

Pricing

Pay per event, with no subscription:

  • $3.00 per 1,000 jobs returned (after your filters; in incremental mode only new or changed jobs).
  • $5.00 per 1,000 company-summary rows, only if you ask for them in the dataset. The key-value-store copy is free.
  • Rows for jobs that closed (incremental mode) are free.

Set a maximum charge per run and the Actor stops cleanly when it is reached.

FAQ

Is this legal? The Actor only reads the public job-board endpoints each ATS publishes so that job seekers and aggregators can list an employer's openings. It does not log in, bypass protections or collect candidate data. Job descriptions can still mention people, so email addresses are redacted by default. You are responsible for how you use the data.

My company wasn't found. Paste the full career-site URL. Auto-detect guesses the slug from the name and won't find boards with unusual slugs, or companies on ATS platforms not supported yet.

Which ATS platforms are not supported yet? Workday, iCIMS, Taleo, SuccessFactors and custom career sites.

How accurate are seniority and function? They are rule-based labels from the job title and department. They work well for common titles, but treat edge cases ("Manager" titles, mixed roles) as best-effort. Salary is only returned when the employer publishes it.

How fresh is the data? It is fetched live from the employer's board at run time, not from a cached database.