Docs

Pagination

List endpoints that can grow large are cursor-paginated with a limit and an id-based cursor instead of page numbers. Learn how to page Irisend API results.

  • limit — 1 to 100, default 20.
  • after — the id of the last item from a previous page; returns the next page strictly newer-cursor-than that id. Most paginated lists also accept before to page backward — passing both in the same request is a 422 validation_error.
  • Every page is { object: "list", has_more, data }. Check has_more, not data.length === limit, to decide whether to keep paging.
  • Paginated today: GET /emails, GET /templates, GET /templates/:id/versions, GET /broadcasts, GET /broadcasts/:id/recipients, GET /broadcasts/:id/clicked-links, GET /suppressions, GET /logs, and GET /domains/:id/dmarc/*.
  • A handful of management lists — GET /audiences, GET /topics, GET /accounts, GET /api-keys, and GET /webhooks — currently return every row in one page (has_more is always false, and limit/after aren't honored) since teams rarely have enough of them to need paging yet.