🧰 ATS Hiring & Closure Delta Feed — Greenhouse, Lever, Ashby
Pricing
from $6.70 / 1,000 job deltas
🧰 ATS Hiring & Closure Delta Feed — Greenhouse, Lever, Ashby
Public ATS hiring & closure delta feed across six providers — opened/changed/closed/reopened deltas with confirmed closures, honest terminals, watch mode.
Pricing
from $6.70 / 1,000 job deltas
Rating
0.0
(0)
Developer
NexGen Watch
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Share
Public ATS Hiring & Closure Delta Feed
Collect normalized public jobs from six company ATS boards and turn scheduled checks into confirmed openings, changes, closures, and reopenings.
1. What it does
Read buyer-selected public Greenhouse, Lever, Ashby, Recruitee, SmartRecruiters, and Personio boards into one schema. Snapshot mode returns current records. Watch mode seeds a private baseline and returns confirmed later deltas. Receipts separate complete, empty, partial, and blocked checks.
2. Input
A list of targets, each a provider plus its public boardId (Greenhouse token, Lever site, Ashby job-board name, Recruitee subdomain, SmartRecruiters company id, Personio account). Options: watchMode, closureConfirmations, baselineId, maxItems, filters (titleInclude, remoteOnly), includeDescriptions, includeCompensation, includeRaw, maxConcurrency. No arbitrary URLs are accepted.
Example input:
{"targets":[{"provider":"greenhouse","boardId":"greenhouse","companyName":"Greenhouse"},{"provider":"lever","boardId":"leverdemo","region":"global","companyName":"Lever Demo"},{"provider":"ashby","boardId":"Ashby","companyName":"Ashby"}],"watchMode":false,"maxItems":250,"filters":{"titleInclude":["engineer","product"],"remoteOnly":false},"includeDescriptions":true,"includeCompensation":true,"includeRaw":false,"maxConcurrency":3}
3. Output and sample
Three record types: job_record (normalized posting with content_hash), job_delta (opened/changed/closed/reopened with changed_fields), and source_receipt (per-target terminal: NORMAL / GENUINE_EMPTY / PARTIAL / BLOCKED). Every item carries source_url and observed_at.
4. Pricing
Pay-per-event: actor start, job record, job delta, and watch source check. Amounts are configured at publish. source_receipt items are always returned and never billed.
5. Watch mode
The first watch run seeds a private baseline and emits zero deltas. Later scheduled runs emit only confirmed changes. A job is closed only after it is absent for closureConfirmations consecutive eligible runs; partial or blocked checks never close a job. Same job = exact composite key; no fuzzy or cross-provider matching.
6. API, CLI, and MCP
Runs on the Apify platform via API, CLI, schedules, and MCP like any Actor. Watch state persists in a named key-value store; each run is independent and stateless over that store.
7. Use with:
Agencies maintaining public requisition histories; workforce vendors updating account workflows; investors and researchers preserving public hiring records; data teams replacing six adapters with one scheduled feed.
8. FAQ
Buyer supplies the boards. Postings do not prove headcount, hiring, or performance; a removal means a public-board closure, not a hire. Fields may be null when the source omits them. SmartRecruiters stops if anonymous access fails. Outages, objections, and shape drift are reported loudly, never as a silent empty.
9. Compliance
Public logged-out sources only; no wall-defeating; no CAPTCHA/login/paywall workarounds; no candidate data; comply on objection. No login, private/licensed data, rental pricing, or always-on process. Buyers are responsible for lawful use and source terms.
Pricing
| Event | FREE | BRONZE | SILVER | GOLD+ |
|---|---|---|---|---|
Actor Start (actor-start) | $0.02 | $0.02 | $0.02 | $0.02 |
Job record (job-record) | $0.003 | $0.0027 | $0.0024 | $0.00201 |
Job delta (job-delta) | $0.01 | $0.009 | $0.008 | $0.0067 |
Source check (source-check) | $0.10 | $0.09 | $0.08 | $0.067 |
Prices are the filed pay-per-event amounts per plan tier (PLATINUM/DIAMOND match GOLD). Blocked and refused runs do not intentionally charge value events.
Scheduling
Watch mode is built for recurring runs. Schedule the Actor and keep the same inputs each run so every run reads and updates the one derived baseline store; changing inputs starts a fresh baseline. The first run seeds and emits zero deltas by design; later runs emit only confirmed job-delta rows, and a settled poll with no deltas charges one source-check per source poll.
Preview vs Watch mode
- Preview / snapshot (watchMode = false): returns current ATS job postings (billed per
job-record). No baseline retained. - Watch (watchMode = true, default): seeds a private baseline on the first run (zero deltas), then emits only qualified
job-deltarows against it. A zero-delta poll charges onesource-checkper source; active runs bill viajob-deltaand are not double-charged.source_receiptdiagnostics go to theRUN_RECEIPTkey-value record and log — never the dataset. Each run charges oneactor-start.