HTTP ステータスコード

HTTP ステータスコードの完全リファレンス。検索、カテゴリ別フィルタリング、各コードの使用場面を学習できます。

動作方法: 以下のすべての HTTP ステータスコードを参照できます。検索バーで番号または名前で特定のコードを検索するか、カテゴリ別(1xx~5xx)でフィルタリングしてください。任意のコードをクリックしてコピーできます。

34 / 34 ステータスコードを表示

100

Continue

クリックでコピー

サーバーはリクエストヘッダーを受け取り、クライアントはリクエストボディの送信を続行する必要があります。

101

Switching Protocols

クリックでコピー

サーバーはクライアントからのリクエストに応じてプロトコルを切り替えています(例:WebSocket へのアップグレード)。

102

Processing

クリックでコピー

サーバーはリクエストを受け取り処理中ですが、まだレスポンスが利用できません(WebDAV)。

103

Early Hints

クリックでコピー

最終的な HTTP メッセージの前に一部のレスポンスヘッダーを返すために使用され、ブラウザがリソースをプリロードできます。

200

OK

クリックでコピー

リクエストは成功しました。意味は HTTP メソッドに依存します:GET はリソースを返し、POST はアクションの結果を返します。

201

Created

クリックでコピー

リクエストは成功し、新しいリソースが作成されました。通常、POST リクエストへのレスポンスとして使用されます。

202

Accepted

クリックでコピー

リクエストは処理のために受け入れられましたが、処理はまだ完了していません。非同期操作に使用されます。

204

No Content

クリックでコピー

サーバーはリクエストを正常に処理しましたが、コンテンツは返されません。DELETE 操作への一般的なレスポンスです。

206

Partial Content

クリックでコピー

サーバーはクライアントから送信された Range ヘッダーのため、リソースの一部のみを配信しています。

207

Multi-Status

クリックでコピー

マルチステータスレスポンスは、複数のステータスコードが適切である複数のリソースに関する情報を伝えます(WebDAV)。

301

Moved Permanently

クリックでコピー

リソースは永続的に新しい URL に移動しました。検索エンジンはリンクを更新します。永続的な URL 変更に使用してください。

302

Found

クリックでコピー

リソースは一時的に別の URL にあります。クライアントは今後のリクエストで元の URL を使用し続ける必要があります。

303

See Other

クリックでコピー

レスポンスは GET リクエストで別の URL にあります。POST の後に確認ページへのリダイレクトによく使用されます。

304

Not Modified

クリックでコピー

リソースは最後のリクエスト以降変更されていません。キャッシング用に使用されます — クライアントはキャッシュバージョンを使用できます。

307

Temporary Redirect

クリックでコピー

リソースは一時的に別の URL にあります。302 と異なり、リクエストメソッドは変わらない必要があります(POST は POST のまま)。

308

Permanent Redirect

クリックでコピー

リソースは永続的に移動しました。301 と異なり、リクエストメソッドは変わらない必要があります(POST は POST のまま)。

400

Bad Request

クリックでコピー

サーバーは形式の誤り、無効なパラメータ、または必須フィールドの欠落のためリクエストを処理できません。

401

Unauthorized

クリックでコピー

認証が必要です。クライアントはこのリソースにアクセスするために有効な認証情報(API キー、トークン、またはログイン)を提供する必要があります。

403

Forbidden

クリックでコピー

サーバーはリクエストを理解しましたが、認可を拒否します。認証は役に立ちません — ユーザーに権限がありません。

404

Not Found

クリックでコピー

要求されたリソースはサーバーに見つかりませんでした。URL が間違っているか、リソースが削除されている可能性があります。

405

Method Not Allowed

クリックでコピー

このリソースに対して使用されている HTTP メソッドはサポートされていません。例えば、読み取り専用エンドポイントで POST を使用した場合。

408

Request Timeout

クリックでコピー

サーバーはリクエストを待っている間にタイムアウトしました。クライアントが完全なリクエストを送信するのに時間がかかりました。

409

Conflict

クリックでコピー

リクエストはサーバーの現在の状態と競合しています。バージョン管理またはリソースの重複作成時に一般的です。

410

Gone

クリックでコピー

リソースは利用できなくなり、再び利用可能になることはありません。404 とは異なり、これは永続的な状態です。

413

Payload Too Large

クリックでコピー

リクエストボディはサーバーが受け入れることを望む以上のサイズです。ファイルアップロード制限で一般的です。

415

Unsupported Media Type

クリックでコピー

リクエストボディのメディアタイプはサポートされていません。例えば、JSON のみが受け入れられるのに XML を送信した場合。

418

I'm a Teapot

クリックでコピー

サーバーはコーヒーを淹れることを拒否しています。永続的にティーポットだからです。RFC 2324 からのエイプリルフールのジョークが実際の HTTP ステータスコードになりました。

422

Unprocessable Entity

クリックでコピー

サーバーはコンテンツを理解していますが、処理できません。構文は正しいが、データが無効な検証エラーに使用されます。

429

Too Many Requests

クリックでコピー

ユーザーは特定の期間に多くのリクエストを送信しました(レート制限)。Retry-After ヘッダーを確認して、再試行するタイミングを確認してください。

500

Internal Server Error

クリックでコピー

サーバーはリクエストの処理を妨げる予期しない条件に遭遇しました。汎用的なサーバー側のエラーです。

501

Not Implemented

クリックでコピー

サーバーはリクエストを満たすために必要な機能をサポートしていません。メソッドが認識されない可能性があります。

502

Bad Gateway

クリックでコピー

ゲートウェイまたはプロキシとして機能しているサーバーが、アップストリームサーバーから無効なレスポンスを受け取りました。

503

Service Unavailable

クリックでコピー

サーバーはメンテナンスまたはオーバーロードのため、リクエストを一時的に処理できません。通常は一時的です。

504

Gateway Timeout

クリックでコピー

ゲートウェイまたはプロキシとして機能しているサーバーが、アップストリームサーバーからタイムリーなレスポンスを受け取りませんでした。

HTTP ステータスコードとは

HTTP ステータスコードは、クライアントのリクエストに対する結果を示すためにウェブサーバーが返す3桁の数値です。1xx(情報)、2xx(成功)、3xx(リダイレクト)、4xx(クライアントエラー)、5xx(サーバーエラー)の5つのカテゴリに分類されます。これらのコードを理解することは、ウェブ開発、API設計、ネットワークの問題解決に不可欠です。

最も一般的な HTTP ステータスコード

最も頻繁に遭遇するステータスコードは、200 OK(リクエスト成功)、301 Moved Permanently(リソースの永続的な移動)、404 Not Found(リソースが見つからない)、403 Forbidden(アクセス拒否)、500 Internal Server Error(サーバー側の障害)です。これら5つのコードは、日常的なウェブブラウジングと API 開発で遭遇する HTTP レスポンスの大多数を占めています。

REST API における HTTP ステータスコード

REST API はステータスコードを使用して操作の結果を伝えます。設計が良好な API は、成功した GET リクエストには 200 を、新しいリソースが作成された POST には 201 を、成功した DELETE には 204 を、無効な入力には 400 を、認証失敗には 401 を、認可失敗には 403 を、見つからないリソースには 404 を、検証エラーには 422 を返します。一貫性のあるステータスコード使用により、API は予測可能で使いやすくなります。

ステータスコードのベストプラクティス

  • 最も具体的なステータスコードを常に返す — 汎用的な 400 より 404 の方が良い
  • 新しいリソースが POST で作成された場合は 201 Created を使用(200 ではなく)| 成功した DELETE 操作には 204 No Content を返す
  • レート制限には 429 Too Many Requests を Retry-After ヘッダと共に使用
  • ボディにエラーメッセージを含めて 200 を返さない — 適切な 4xx/5xx コードを使用
  • 永続的なリダイレクトには 301 を(SEO対応)、一時的なリダイレクトには 307 を使用