メインコンテンツへスキップ

HTTP ステータスコード

API は標準的な HTTP ステータスコードを使用します。以下はよく使われるステータスコードとその意味です。
ステータスコード意味説明
200OKリクエストが成功した
201Createdリソースが正常に作成された
204No Contentリクエストが成功し、コンテンツがない
400Bad Requestリクエストに誤りがある(無効なパラメータなど)
401Unauthorized認証情報が無効または不足している
403Forbiddenアクセス権限がない
404Not Foundリクエストされたリソースが存在しない
422Unprocessable Entityリクエスト形式は正しいが、意味的に誤っている
429Too Many Requestsレート制限を超えている
500Internal Server Errorサーバー内部エラー

エラーレスポンス形式

エラーが発生した場合、API は以下の形式の JSON レスポンスを返します。
{
  "statusCode": 400,
  "errorId": "validation_exception",
  "message": "Validation failed",
  "errorDetails": [
    {
      "property": "email",
      "constraints": {
        "isEmail": "email must be an email"
      }
    }
  ]
}

レスポンスフィールド

フィールド説明
statusCodeintegerHTTP ステータスコード
errorIdstringエラーの識別子
messagestringエラーの簡単な説明
errorDetailsarray詳細なエラー情報(存在する場合)

一般的なエラー

認証エラー (401)

{
  "statusCode": 401,
  "errorId": "unauthorized",
  "message": "Unauthorized"
}
原因: API キーが無効または不足している

権限エラー (403)

{
  "statusCode": 403,
  "errorId": "forbidden",
  "message": "Forbidden"
}
原因: リクエストされた操作に対する権限がない

検証エラー (422)

{
  "statusCode": 422,
  "errorId": "validation_exception",
  "message": "Validation failed",
  "errorDetails": [
    {
      "property": "name",
      "constraints": {
        "minLength": "name must be longer than or equal to 1 characters"
      }
    }
  ]
}
原因: リクエストパラメータがバリデーションルールを満たしていない

エラー処理のベストプラクティス

  1. すべての HTTP ステータスコードを適切に処理する
  2. 特に 429 (レート制限) エラーに対しては、リトライロジックを実装する
  3. エラーメッセージをログに記録して、問題の診断に役立てる
  4. ユーザーにわかりやすいエラーメッセージを表示する
  5. センシティブな情報をエラーメッセージへ含めないようにする
最終更新日 2026年6月24日