Every API versioning scheme is a trade between visibility and purity, and the URL version is the one nobody can get wrong. The argument against URL versioning is…
Letting a client choose which fields it wants is a good feature and moves the eager-loading decision from the controller to the request. Without deriving the eager loads…
An ETag costs nothing to emit and saves the response body only if clients actually send the conditional header back. The write side is where ETag earns its…
Every API invents an error envelope, and RFC 7807 is a perfectly good one that client libraries already understand. type is the field a client should branch on…
A load balancer, an orchestrator and a monitoring system each want a health endpoint, and two services answering differently is two integrations. Excluding third-party dependencies is the rule…
A published message has consumers you do not control, and its shape is a contract whether or not anybody wrote one down. Publishing both versions during a transition…