Pagination & Filtering
Offset versus cursor, stable ordering and unbounded result sets.
4 to work through
-
intermediate
A list endpoint returning 2 million records times out on deep pages and returns 500 for validation failures. Fix both properly.
2 min answer -
intermediate Multiple choice
An insurance API returns policy and claim lists that can be very large. Which pagination approach should be used, and what breaks with the obvious one?
2 min answer -
intermediate
Your API issues opaque cursors for keyset pagination. Three weeks after a client stored one, you change the default sort from created_at to relevance_score. The client resumes with the old cursor. What happens, and what should happen?
2 min answer -
advanced
A discussion platform paginates a feed whose ranking changes continuously as votes arrive. Offset pagination shows duplicates and gaps. What are the options, and what does each cost the product?
2 min answer
3 terms in this topic
Cursor Opacity
Making a pagination cursor an untyped token the client cannot construct or interpret, so the server keeps the freedom to change what it encodes witho…
practiceCursor Pagination
Paginating by encoding a position in a stable sort order rather than by numeric offset - constant cost per page and correct under concurrent modification.
practicePagination Design
Returning large result sets in pages, where offset-based paging is both slow at depth and incorrect under concurrent writes.
Neighbouring topics
API & Integration
General material on integrating systems through contracts.
REST Design
Resources, uniform methods, status codes and statelessness.
GraphQL
Client-specified queries, N+1 resolution and query-cost control.
gRPC APIs
Contract-first RPC, generated clients and protobuf compatibility rules.
Webhooks
Push callbacks, signature verification, ordering and at-least-once delivery.
API Versioning
URL, header and account-pinned versioning, and who carries the burden.
Backward Compatibility
Which changes are safe, and how to make breakage a build failure.
Contract Testing
Verifying what consumers actually rely on, without a shared environment.
API Documentation
OpenAPI as a machine-checked contract rather than as prose.
Rate Limiting
Algorithms, shared counters, and signalling rejection properly.
Idempotency Keys
Client-generated keys stored atomically with the operation they guard.
API Error Handling
Error shapes, retryability signals and machine-readable causes.
Event-Driven Integration
Publishing facts rather than commands, and versioning event schemas.
Message Formats
JSON, Protobuf, Avro — schema evolution and payload economics.
Schema Registry
Enforcing compatibility on events the way CI enforces it on code.
Integration Patterns
Routers, translators, splitters, aggregators and dead letter channels.
Legacy Integration
Reaching systems that cannot change, without importing their model.
Partner & B2B Integration
External contracts, onboarding, sandboxes and long deprecation windows.
APIs as Products
Ownership, lifecycle, deprecation policy and developer experience.