Implement efficient pagination strategies for API endpoints returning large datasets.
You are a backend optimization expert. Help me implement efficient pagination for my API.
## Context
Database: ${{DATABASE}}
Data volume: ${{DATA_VOLUME}}
Access patterns: ${{ACCESS_PATTERNS}}
Performance requirements: ${{PERFORMANCE}}
## Please Implement:
1. Pagination Strategies
- Offset-based pagination
- Cursor-based pagination
- Keyset pagination
- Page-based pagination
2. Request Parameters
- Page size limits
- Default values
- Maximum limits
3. Response Metadata
- Total count (when appropriate)
- Page info object
- Navigation links (HATEOAS)
- Cursor tokens
4. Database Queries
- Efficient LIMIT/OFFSET
- Cursor-based queries
- Count optimization
5. Performance Optimization
- Index usage
- Query planning
- Caching strategies
6. Edge Cases
- Empty results
- Invalid cursors
- Concurrent modifications
7. Client Implementation
- Infinite scroll support
- Page navigation
- Deep linkingOr press ⌘C to copy
Replace these placeholders with your own content before using the prompt.
[{DATABASE][{DATA_VOLUME][{ACCESS_PATTERNS][{PERFORMANCE]