Pagination

A list that can grow long has a paged form at <list>/page. Each page returns its results in data and a nextCursor. Send that value back as cursor for the next page. When nextCursor is null, you have read the whole list.

GET /v1/jobs/page?limit=50

{
  "data": [{ "search_id": 9305, "job_title": "Data Engineer", … }],
  "nextCursor": "eyJwIjpbIi05MzA1Il0…"
}

GET /v1/jobs/page?limit=50&cursor=eyJwIjpbIi05MzA1Il0…
  • limit defaults to 25. A value outside 1 to 100 is brought within that range rather than refused.
  • The cursor marks where the last page ended, so a record added or removed while you read does not shift the pages after it. In a list sorted by something that can change, such as the latest message or a score, a record whose position changes while you read can appear twice or be missed.
  • A cursor works only with the filters it was issued for. Treat it as opaque: it is signed, so a changed cursor, or one used with different filters, is 400 invalid_cursor. Start again from the first page.

Paged lists

ListOrder
/v1/jobs/pageNewest first
/v1/jobs/{jobId}/applications/pageNewest first, or the board's score order
/v1/jobs/{jobId}/activity/pageNewest first
/v1/inbox/threads/pageNewest message first
/v1/billing/invoices/pageNewest first