Job Search API: jobs direct from company career sites

Live jobs straight from company career sites across eight applicant tracking systems: Greenhouse, Lever, Ashby, Workable, SmartRecruiters, Teamtailor, Breezy and Rippling, normalised into one schema with keyword, location and country search.

Official public source Updated & monitored daily Every result links to its filing Pay per result · free previews

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.

Run it on Apify

What it does

  • One row per open job, identical across all eight platforms.
  • Search by keyword, location, country or remote-only, without knowing which system a company uses.
  • A built-in company index maps companies to their ATS, so you do not need slugs or platform names.
  • Every job carries the employer's own apply URL and the platform's job id, so rows de-duplicate cleanly.
  • Jobs are fetched live at every run. The index only maps company to platform, so a buyer never gets a stale posting.

Which systems it reads

Greenhouse, Lever, Ashby, Workable, SmartRecruiters, Teamtailor, Breezy and Rippling. 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. Normalising that is the work this Actor does for you.

Who uses career-site job data

  • Recruiters and sourcers who want the posting before it reaches an aggregator.
  • Job boards and search products that need a clean, normalised feed.
  • Researchers and analysts tracking hiring as a growth signal per company.
  • AI agents that need structured openings rather than scraped HTML.

How the index grows

The company index is built by reading the ATS link straight from a company's careers page, not by guessing slugs from company names. That matters: devin.ai runs on Ashby under the slug cognition and split.io on Greenhouse under harnessinc, and no derivation of the company name would ever find those. A nightly job works through a public list of domains and adds every company whose ATS answers with real jobs.

Fields you get

title, company, platform, location, country, remote, department, employment_type, posted_at, apply_url, job_id, description. Every field is present on every row. Where a platform genuinely does not publish something you get null, never an invented value.

Scope and limitation

Only companies whose ATS publishes a public job endpoint are covered, which is the norm for Greenhouse, Lever and Ashby and less common for large enterprise systems. Workday and iCIMS are not supported yet. Coverage is the honest limit here: this is an indexed set of companies, not every employer on earth.

FAQ

Do I need to know which system a company uses?

No. The index resolves it, and you can search on keyword and location alone.

How fresh are the jobs?

They are fetched from the employer at the moment you run it. There is no cached copy.

Can I track one specific employer?

Yes, name the company explicitly and you get only that employer's openings.

Is this scraping?

No. These are the public JSON endpoints the ATS platforms publish for their customers' career pages, no login and no anti-bot workaround.

Use with AI agents and automation

This runs as an Apify Actor, so it drops into your stack with no scraping or glue code: call it from your own service, wire it into Zapier or Make, or let an AI agent call it directly.