Stream the job feed
Export active jobs in batches of up to 1,000. Omit cursor on the first
request, then pass only the returned next_cursor — the cursor embeds the
initial filters and batch size, and values sent alongside a cursor are
ignored. Persist the cursor so an interrupted scan can resume, and
paginate serially (one in-flight request per cursor).
New scans default to stable_scan: true: pages follow immutable creation
time, so mid-scan updates or deletions cannot shift records across page
boundaries. Set stable_scan: false explicitly for the legacy
update-recency ordering. Use updated_after for incremental additions
and edits after the backfill.
Retry only 503 (honoring Retry-After) and 429, with bounded
backoff. A 400 for a malformed cursor, or a 409 with code
feed_cursor_restart_required, means discard the cursor and restart
the scan with stable_scan: true. Configure clients with a response
timeout of at least 120 seconds.
Authorizations
API key provided by Jobo
Body
Cursor-paginated export request. The cursor preserves the filters and batch size from the first request; start a new scan to change them.
Filter by work model: remote, hybrid, onsite. null = all jobs
remote, hybrid, onsite Filter by employment type. null = all jobs
full-time, part-time, contract, internship, freelance, temporary Filter by experience level. null = all jobs
intern, entry, mid, senior, lead, executive Return jobs whose employer posting time or first-indexed time is on
or after this UTC timestamp. Use updated_after when edits matter.
Return jobs created or updated on or after this UTC timestamp.
Page by immutable creation time rather than update recency (default). Stable scans cannot skip or duplicate records when jobs are updated or deleted mid-scan. Set false explicitly for the legacy update-recency ordering.
Opaque cursor from next_cursor. Omit on the first request.
1 <= x <= 1000
