IIC Labs

Career-Site Jobs API

Get it on Apify Store

What it does

The Actor collects every open job from company career sites that use Greenhouse, Lever (global and EU), Ashby, Workable or Recruitee, and returns them in one format: title, seniority, department, team, location(s), workplace type (remote, hybrid, on-site), employment type, salary range when the company publishes it, posting dates, job and apply URLs, and the description as text and HTML.

Input

How the job board is found

For a job board URL, that board is used directly. For a domain or careers page, the Actor looks for Greenhouse, Lever, Ashby, Workable or Recruitee links on the company's /careers, /jobs, careers. and jobs. subdomains and home page. If none are found, it checks for a board named after the company; for Greenhouse the board's company name must match. The run summary (the OUTPUT record in the key-value store) shows the board found for each company and how: url, page or guess. If a company isn't found, enter its job board URL directly.

Only new or changed jobs

The Actor remembers delivered jobs per company and per delta state name in a key-value store named career-site-jobs-delta in the user's own Apify account. The first run returns all jobs. Later runs return only new jobs and jobs whose title, location, department, team, employment type, workplace type, salary or description changed. Removed jobs are forgotten. To start over, use a new delta state name or delete that key-value store.

Pricing

Pay per event: one "job" event per job saved to the dataset, and one "company-resolved" event per company whose board was detected from a domain or careers page (board URLs entered directly are not charged this event). Apify also charges a small start event per run. Prices are on the Actor's Pricing tab; higher Apify plans pay less per job. Only-new mode charges only for new or changed jobs.

Maximum cost per run

When the run reaches the maximum cost per run set in Apify, the Actor stops saving jobs, ends the run, and says "stopped at your maximum cost per run" in the status message. Companies not finished are marked limit_reached or skipped in the run summary. In only-new mode, jobs that weren't delivered are returned on the next run.

Troubleshooting

Data and legality

Jobs are read from the job boards' public APIs that companies use for their own careers pages. robots.txt is checked for every host and crawl delays are respected. No logins, no LinkedIn or Indeed. Users are responsible for using the data lawfully.

Integrations

Results can be downloaded as JSON, CSV, Excel or XML, read through the Apify API and clients, or sent to Google Sheets, Zapier, Make, Slack and webhooks with Apify integrations. Runs can be scheduled with Apify Schedules.