Endpoint Register
Illustrative rows for a fictional parcel shipping API, Waypost.
| Operation | Status | Responses declared | Errors declared | Examples present | Examples validating | Owner |
|---|---|---|---|---|---|---|
| POST /v1/rates | published | 200, 400, 422, 429 | 3 of 4 | 2 of 2 | 2 of 2 | Priya N |
| POST /v1/shipments | published | 201 only | 0 of 1 | 1 of 1 | 0 of 1 | Tomas K |
| GET /v1/shipments/{id} | published | 200, 404, default | 1 of 2, plus a bare default | 1 of 1 | 1 of 1 | Tomas K |
| DELETE /v1/shipments/{id} | partial | 204, 409, 422 | 2 of 3 | 0 of 0 | n/a, none present | Tomas K |
| GET /v1/tracking/{number} | partial | 200, 404, 429 | 2 of 3 | 1 of 1 | 0 of 1 | Ada W |
| POST /v1/labels | undocumented | not in the specification | unknown | 0 of 0 | n/a | unowned |
| POST /v1/webhooks | deprecated | 201, 400, 409 | 2 of 3 | 1 of 1 | 1 of 1 | Ada W |
| GET /internal/v1/rate-cards | internal, published by mistake | 200, 403 | 1 of 2 | 1 of 1 | 1 of 1 | Priya N |
Row two is a conforming specification. The Responses Object needs one response code and the guidance is that a lone code should be the successful one, so a document declaring only a 201 passes every linter. That operation returns five distinct failures in production and the generated reference page shows one green row.
A bare default is never credited as an error. Row three declares a default with a description and no schema, which is exactly what the specification permits. It renders as a row telling a reader that failures exist and nothing about their shape, and every 5xx lands there undifferentiated.
Row six is in the router and not in the document. No generator can report it, because a tool cannot see what is missing from its own input.