Ids of roles that have come off the ledger
The cheap half of /v1/jobs/closed. Returns id, closed_at and closed_reason only — enough to mark rows stale in your own database without transferring the jobs themselves. About 89% smaller than the same page from /v1/jobs/closed.
Closure dates: JOA records as the closure date the day its daily verification confirmed that an advert had gone. Before late September 2026 that verification ran in large catch-up batches, so closure dates recorded before then show when JOA confirmed a closure, not when the employer closed the role; daily verification applies from late September 2026. Keyset paged exactly like /v1/changes: pass since on the first call and the returned next_since from then on. An empty page echoes your cursor back, so the loop keeps working once you are current.
Needs the delta feed (Growth and up; 403 plan_upgrade_required otherwise). Not metered: it returns ids, not job rows, charges no records and sends no X-RateLimit-Records-* headers.
Request
- Base URL: https://api.jobopportunitiesapi.org
- URL: https://api.jobopportunitiesapi.org/v1/jobs/expired
- Auth: HTTP bearer
Query parameters
RFC3339 timestamp, or a next_since cursor from a previous call.
1-10000, default 1000.
Response
A page of closures.
Changes
No recorded changes to this operation across all 1 revision of this API.