Intermediate Backend
API Design Patterns
Versioning, pagination, error handling, and documentation.
Designing Great APIs
Well-designed APIs are intuitive, consistent, and developer-friendly.
Versioning Strategies
- URL Path: /api/v1/users (most common)
- Query Param: /api/users?version=1
- Header: Accept: application/vnd.api+json;version=1
Pagination
// Cursor-based (recommended)
{
"data": [...],
"nextCursor": "abc123",
"hasMore": true
}
// Offset-based
{
"data": [...],
"page": 1,
"totalPages": 10
}Error Responses
{
"error": {
"code": "VALIDATION_ERROR",
"message": "Invalid input",
"details": [
{ "field": "email", "message": "Invalid format" }
]
}
}Documentation
- OpenAPI/Swagger: API specification standard
- Postman: API documentation and testing
- Readme.com: Developer documentation platform