エラーハンドリング
blanc API が返すエラーレスポンスの構造とエラーコードについて説明します。流量制限(レートリミット)についてははじめにを参照してください。
エラーレスポンス
レスポンス構造
エラー時のレスポンスボディは application/json で以下の構造です。message の先頭に [エラーコード] が付与されます。
| フィールド | 型 | 説明 |
|---|---|---|
| message | string | エラー内容。形式: [エラーコード]:メッセージ |
例:
{"message": "[E01]:アクセストークンの発行に失敗しました。"}HTTPステータスコード
| ステータス | Reason | 説明 |
|---|---|---|
| 400 | Bad Request | リクエストパラメータやリクエスト内容に問題があります。 |
| 401 | Unauthorized | 認証に失敗、またはアクセストークン/リフレッシュトークンが無効・期限切れです。 |
| 403 | Forbidden | リクエストヘッダー(クライアント証明書等)に問題があり、アクセスが許可されません。 |
| 404 | Not Found | 対象のリソースが存在しません。 |
| 409 | Conflict | リクエストリソースが競合しています。 |
| 429 | Too Many Requests | 流量制限を超過しました。 |
| 499 | Client Closed Request | クライアントによりリクエストが中断されました。 |
| 500 | Internal Server Error | サーバー内部で予期せぬエラーが発生しました。 |
| 501 | Not Implemented | この機能は実装されていません。 |
| 503 | Service Unavailable | サービスが一時的に利用できません。 |
| 504 | Gateway Timeout | リクエストがタイムアウトしました。 |
エラーコード
message 先頭の [Exx] が下表のエラーコードに対応します。
| HTTPステータス | エラーコード | 説明 |
|---|---|---|
| 400 | E01 | パラメータチェックに関連するエラー |
| 400 | E02 | SQLに関連するエラー |
| 400 | E03 | DBに関連するエラー |
| 400 | E04 | 変換処理に関連するエラー |
| 400 | E05 | リクエストリソースに関するエラー |
| 401 | E01 | アクセストークン及びリフレッシュトークンが不正 |
| 401 | E02 | アクセストークンの有効期限切れに関するエラー(トークンのリフレッシュが必要) |
| 401 | E03 | リフレッシュトークンの有効期限切れに関するエラー(トークンの発行(ユーザー認証)が必要) |
| 401 | E04 | blancユーザー認証・クライアント認証に関するエラー |
| 401 | E05 | アクセストークン未設定に関するエラー |
| 401 | E06 | Base64デコードに関するエラー |
| 403 | E01 | HttpRequestHeaderに関連するエラー |
| 409 | E01 | リクエストリソースの競合に関するエラー |
| 429 | E01 | 流量制限に関するエラー |
| 499 | E01 | Client Closed Request |
| 500 | E01 | サーバーに何らかの問題が発生 |
| 500 | E02 | Permissions属性が未指定 |
| 500 | E03 | Azureストレージアカウント接続エラー |
| 500 | E04 | データ取得に関するエラー(GRPC) |