Skip to main content
List operations return one page and an opaque cursor. Pass the cursor as after to get the next page.

Iterate every record

iterateEvents and iterateIssues are async generators that follow the cursor for you and stop when next_cursor is absent.
The iterators accept the same argument object as the underlying list operation, minus query.after. The iterator owns the cursor, so setting it yourself is a type error.
These iterators walk the whole collection. Break out of the loop, or filter with query.status, when you only need recent records.

Handle one page at a time

Call the list operation directly when you store the cursor between runs, for example in a scheduled job.
Treat the cursor as opaque. Do not parse it, build it, or assume it stays valid across contract versions.

Issue evidence

listIssueEvents returns the events behind one issue and takes the same pagination parameters.
Notes are not paginated. listIssueNotes returns every note on the issue.

Next

Handle failures in Errors and retries.