Capstone 11 · Backend
The Open Archive API
The APIs & Datasets course had you consume real APIs and record every place they let you down: undocumented paging, counts that lied, errors returned as HTML, no way to tell an error from data, no stated rate limit. Build the one you wished you had received. Take a public dataset with a license that permits redistribution, load it properly, and serve it. The requirements are the list of things that annoyed you. Results wrapped in an object with an honest count. Cursor pagination that is stable while the data changes. Filtering and full text search that are actually usable. Errors as JSON, always the same shape, with correct status codes. Per-key rate limiting with the remaining budget in the response headers. A version in the path so you can change it later without breaking anybody. Documentation with a working curl command that you keep working. The measure of success is not that it runs. It is that somebody else can use it to build something without asking you a single question.
Concepts used
Your dataset
A real public dataset with a redistribution-permitting license, tens of thousands of rows.
Milestones
Your workspace
Build the full project here. Work through the milestones in order, in both languages.