Request
Response envelope
Iterating
Follownext_cursor until has_more is false:
Cursor rules
- Opaque. The cursor is an encoded token — don’t parse or construct it.
- Bound to filters. A cursor is tied to the exact filter and sort context
that produced it. Reusing a cursor with a different filter set returns
400with theinvalid_cursorcode. Start a new iteration if you change filters. - Deterministic order. Ordering includes
idas a tiebreaker, so a cursor advances predictably when timestamps collide. It does not freeze the dataset while you page through it.
Pages can be under-filled
Never treat a short page as the end of the data. A page can hold fewer thanlimit items — even zero — while has_more is still true. This happens when
asset-level permissions trim rows after a page is read (see
Visibility & permissions). Stop only when has_more is
false.
