良いエラーレスポンスは 2 つのことをします: 正しい HTTP status code (機械可読なシグナル) を使い、開発者が対処できる 一貫した構造化された body を返します。一貫しないエラーの形は、client 側の苦痛の最大の源の 1 つです。
標準エラー形式を使う: RFC 7807 (problem+json)
RFC 7807 は専用のメディアタイプを持つ標準の「problem details」body を定義し、API 全体のすべてのエラーが同じ見た目になります:
HTTP/1.1 404 Not Found
Content-Type: application/problem+json
{
"type": "https://api.example.com/errors/not-found",
"title": "Resource not found",
"status": 404,
"detail": "No user exists with id 999",
"instance": "/users/999"
}
