ATS Jobs Feed: Greenhouse, Ashby & Lever with Change Tracking avatar

ATS Jobs Feed: Greenhouse, Ashby & Lever with Change Tracking

Pricing

from $1.00 / 1,000 jobs

Go to Apify Store
ATS Jobs Feed: Greenhouse, Ashby & Lever with Change Tracking

ATS Jobs Feed: Greenhouse, Ashby & Lever with Change Tracking

Track company job boards from the official Greenhouse, Ashby and Lever APIs. Each run tells you which jobs are new, changed or closed since last time. Clean fields, salaries where posted, keyword filters.

Pricing

from $1.00 / 1,000 jobs

Rating

0.0

(0)

Developer

Neatrow

Neatrow

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Features

Limited permissions

Share

Watch the job boards of the companies you care about. Every run returns their open jobs as clean, flat records and tells you what happened since the last run: which jobs are new, which changed (and which fields), which were closed, and which were reopened.

Data comes from the official, public job board APIs of Greenhouse (Job Board API), Ashby (Job Posting API) and Lever (Postings API, including EU-hosted boards), the same feeds that power companies' own career pages. Mix all three in one run. No login, no proxies, no scraping of HTML pages. Ashby and Lever boards include posted salary ranges where the company shows them.

Typical uses:

  • Job alerts. Schedule a daily run with Only changes and get just the new and closed roles from 5 or 500 companies.
  • Hiring signals. See which teams a company is growing or freezing, by department and location.
  • Job boards and newsletters. Keep your listings in sync and remove closed roles automatically.

What makes it different

This ActorTypical job scraper
Change trackingnew, changed (with changedFields), closed, reopened across runsA fresh dump every time; you diff it yourself
Safe "closed"A job is marked closed only after a complete, successful read of the boardA failed or partial page can look like mass closures
Pay for changes onlyOnly changes mode outputs (and bills) only what changedPay for every job on every run
NoiseGreenhouse's internal updated_at bumps are ignored; only visible fields countEvery bump looks like a change
Pay dataAshby and Lever salary ranges as numbers (salaryMin, salaryMax, salaryCurrency) plus the text summary; pay changes are trackedMissing or free text only
DescriptionsPlain text (decoded, bullet points kept), HTML, or left outRaw escaped HTML
ErrorsOne bad board never breaks the run; the log says how to fix itWhole run fails

Input

FieldWhat it does
boardsGreenhouse board URLs (https://job-boards.greenhouse.io/gitlab, boards.greenhouse.io/acme, embed URLs), Ashby board URLs (https://jobs.ashbyhq.com/linear), Lever board URLs (https://jobs.lever.co/spotify, https://jobs.eu.lever.co/<name>), or greenhouse:gitlab / ashby:linear / lever:spotify / lever-eu:<name>. A bare name (gitlab) means Greenhouse
outputModeall = every open job with its status, plus jobs closed since last run. changes = only new, changed, reopened and closed
descriptiontext (default), html or none
titleKeywords, excludeTitleKeywords, locationKeywordsSimple case-insensitive filters, for example engineer / intern / remote
trackingIdRuns with the same ID share their memory of seen jobs. Use one per task
maxItemsSafety cap per run (0 = none)

Finding a board: open the company's careers page. If job links go to job-boards.greenhouse.io/<token>/..., boards.greenhouse.io/<token>, jobs.ashbyhq.com/<name>/... or jobs.lever.co/<name>/..., paste that URL.

Run it with an empty input to see a free preview (10 jobs from a public board, nothing billed or tracked).

Output

One item per job:

{
"source": "greenhouse",
"board": "gitlab",
"company": "GitLab",
"jobId": "8638232002",
"title": "AI Transformation Owner, CRO",
"url": "https://job-boards.greenhouse.io/gitlab/jobs/8638232002",
"location": "Remote, United States",
"departments": ["Enablement"],
"offices": ["United States of America"],
"requisitionId": "6682",
"applyUrl": "https://job-boards.greenhouse.io/gitlab/jobs/8638232002",
"firstPublishedAt": "2026-07-22T13:38:40-04:00",
"updatedAt": "2026-11-06T15:25:07-05:00",
"description": "GitLab is the intelligent orchestration platform...",
"changeStatus": "changed",
"changedFields": ["title"],
"firstSeenAt": "2026-11-10T09:00:00.000Z",
"lastSeenAt": "2026-11-11T09:00:00.000Z",
"closedAt": null
}

Ashby jobs fill a few extra fields (Greenhouse leaves them null): employmentType (FullTime, Contract…), workplaceType (Remote, Hybrid, OnSite), isRemote, compensation (for example "$207K – $285K • Offers Equity"), salaryMin, salaryMax, salaryCurrency, salaryInterval. For Ashby, company is the board name and departments holds the department and team.

Lever jobs fill the same extra fields: employmentType is the company's own label (Full-time, Permanent, Internship…), workplaceType is Remote, Hybrid or OnSite, and the salary fields are set when the company publishes a range. company is the board name, departments holds the department and team, and offices lists every location of the job. Lever board names are case-sensitive, so paste the URL as it is.

Closed jobs keep their last known title, URL, location and company, with changeStatus: "closed" and closedAt set. A run summary (counts per board, failures with a fix hint) is saved as OUTPUT in the run's key-value store.

How tracking works: the first run for a board marks every job as new (that is the baseline). Later runs compare against the jobs seen before, stored in a named key-value store ats-jobs-feed-tracking in your own account. A closed job is reported once; if it is re-posted within 90 days it comes back as reopened.

Pricing

Pay per event:

  • Job output: $1.00 per 1,000 jobs in the dataset (new, changed, unchanged or closed).
  • Actor start: $0.001 per run.

With Only changes on a daily schedule you pay only for what changed. Example: 50 companies with 2,000 open jobs and about 60 changes a day cost about $0.06 a day.

Works with Neatrow

Notes

  • Only public job boards are read. The data is what companies publish for applicants.
  • If a board answers with a partial list, no job is marked closed in that run (the log says so).
  • If you hit your maximum cost per run, the unfinished board is reported in full again next run, so no change is lost.
⌂ 换网址