よく使う HTTP ステータスコード早見表

目次

API 設計でどのコードを返すか迷ったときの早見表。

2xx / 3xx

コード 名前 使いどころ
200 OK 通常の成功。GET / PUT の応答
201 Created POST でリソースを作成した。Location ヘッダを付ける
204 No Content 成功したが返す本文がない。DELETE の応答に多い
301 Moved Permanently 恒久的な移転。SEO の評価も引き継がれる
302 Found 一時的なリダイレクト
304 Not Modified 条件付き GET のキャッシュ有効応答

4xx

コード 名前 使いどころ
400 Bad Request リクエストの形式が不正
401 Unauthorized 未認証。実態は「認証が必要」
403 Forbidden 認証済みだが権限がない
404 Not Found リソースが存在しない(存在を隠したい 403 の代用にも)
409 Conflict 楽観ロック失敗や重複作成
422 Unprocessable Content 形式は正しいが意味的に処理できない
429 Too Many Requests レートリミット超過。Retry-After を付ける

5xx

サーバ側の問題。クライアントにリトライさせたい場合は 503 + Retry-After を使う。

迷ったら「クライアントの修正で直るなら 4xx、サーバ側の問題なら 5xx」で判断する。