Every list endpoint (GET /members, GET /events, etc.) is cursor-paginated — not page-number pagination. A cursor points at a specific row, so “give me everything after this” stays correct even if rows are added or removed between calls, which page numbers can’t guarantee.
Request
Response
Keep requesting with the returned next_cursor until has_more is false. A next_cursor of null means you’re on the last page.
Treat a cursor as opaque — don’t try to construct or decode one yourself, and don’t assume its format is stable.
Rate limits
Each API key is limited to 120 requests per minute. Every response carries headers showing where you stand:
Going over the limit returns 429 with a Retry-After header (seconds until the window resets):