Evolving API Pagination at Slack
Aug 15, 2017

Summary
This post details the evaluation of different API pagination strategies, specifically offset-based and cursor-based pagination. It outlines the requirements for Slack's pagination scheme, highlighting the drawbacks of offset pagination (scalability issues with large datasets and unreliability with frequent writes) and the benefits of cursor-based pagination (scalability and stability). The post introduces a new cursor-based scheme for Slack's APIs, inspired by Relay Cursor Connections, which uses opaque, Base64-encoded cursors for forward pagination and includes a 'limit' parameter and a 'next_cursor' field in responses.