
Engineering · July 16, 2026 · Gynvix · 1 min read
API errors people can handle
An error should name the field, the rule, and whether trying again makes sense.
Status is not the message
400 means the caller can fix the body. 401 means they are not signed in. 409 means the record changed. 500 means you did.
A shape
Return a stable code and a human sentence. Do not return a database error to the browser.
json
{ "code": "slug_taken", "message": "Choose a different slug." }