Practice & Assessment
Test your understanding of Advanced Concepts: Pagination, Filtering, Versioning, and Rate Limiting
Multiple Choice Questions
6What is the main advantage of cursor-based pagination over offset-based pagination?
Which of these is a breaking change that requires a new API version?
What HTTP status code does a REST API return when a client exceeds its rate limit?
Why should uploaded files never be stored on the application server's filesystem?
What is the purpose of HMAC signature verification in webhooks?
Why must Redis be used for rate limiting in a horizontally scaled API?
Mini Project
E-Commerce REST API with Advanced Features
Build a production-ready E-Commerce REST API with Products, Categories, Orders, and Reviews. Implement: full CRUD with nested routes, cursor-based pagination on all collections, advanced filtering and sorting for products, sparse fieldsets, URL-based API versioning (/api/v1 and /api/v2), per-user rate limiting with Redis, a webhook system firing order.created and order.updated events with HMAC-signed payloads, file upload for product images with Cloudinary, an admin stats endpoint accessible only to admins, and comprehensive OpenAPI documentation. Include a Postman collection with example requests for every endpoint.
