Ninety days sounds generous and means nothing to a consumer who ships quarterly. A window in calendar time is a policy that treats consumers as interchangeable, and they…
Versioning the representation rather than the code, so the business logic exists once. Duplicating the controller is the obvious move and it duplicates the authorisation, the loading and…
A standard error format, adopted in 2023, and a consumer reading the first element of the errors object rather than looking up a key. An object is unordered…
Rotating a signing secret without coordinating a deploy with four integrators, which is what sending several signatures is for. The overlap turns a rotation from an event requiring…
A custom command built with a table output, and a pipeline that needed to parse it. format_items gives table, CSV, JSON, YAML and count from one call, which…
A specification generated from the router, which is drift-proof until there are two routers describing two versions. Generating from the router guarantees that a documented endpoint exists and…
An endpoint from 2019 with no documentation, no named consumer and four hundred requests a day. Two weeks of logging turned an unanswerable question into one email, and…