索引
コード
gRPC API の正規のエラーコード。
複数のエラーコードが該当する場合があります。サービスは、該当する最も具体的なエラーコードを返す必要があります。たとえば、両方のコードが該当する場合、FAILED_PRECONDITION
より OUT_OF_RANGE
を優先します。同様に、FAILED_PRECONDITION
より NOT_FOUND
または ALREADY_EXISTS
を優先します。
列挙型 | |
---|---|
OK |
エラーではありません。成功したときに返されます。 HTTP マッピング: 200 OK |
CANCELLED |
オペレーションがキャンセルされました。通常、キャンセルは呼び出し元により行われます。 HTTP マッピング: 499 クライアントのクローズ リクエスト |
UNKNOWN |
不明なエラーが発生しました。たとえば、別のアドレス空間から受信した HTTP マッピング: 500 内部サーバーエラー |
INVALID_ARGUMENT |
クライアントが無効な引数を指定しました。これは HTTP マッピング: 400 不正なリクエスト |
DEADLINE_EXCEEDED |
オペレーションが完了する前に期限が切れました。システムの状態を変更するオペレーションの場合、オペレーションが正常に終了しても、このエラーが返されることがあります。たとえば、サーバーからの正常なレスポンスが期限切れになるほど遅延する場合もあります。 HTTP マッピング: 504 ゲートウェイ タイムアウト |
NOT_FOUND |
一部のリクエストされたエンティティ(ファイルやディレクトリなど)が見つかりませんでした。 サーバー デベロッパーへの注: 段階的な機能のロールアウトや文書化されていない許可リストなど、ユーザークラス全体に対してリクエストが拒否された場合は、 HTTP マッピング: 404 見つかりません |
ALREADY_EXISTS |
クライアントが作成しようとしたエンティティ(ファイルまたはディレクトリなど)はすでに存在しています。 HTTP マッピング: 409 競合 |
PERMISSION_DENIED |
呼び出し元には、指定されたオペレーションを実行する権限がありません。 HTTP マッピング: 403 禁止です |
UNAUTHENTICATED |
リクエストにはオペレーションに有効な認証情報がありません。 HTTP マッピング: 401 権限なし |
RESOURCE_EXHAUSTED |
ユーザーごとの割り当て、またはファイル システム全体で容量が不足しているため、一部のリソースが枯渇しています。 HTTP マッピング: 429 リクエストが多すぎます |
FAILED_PRECONDITION |
システムがオペレーションの実行に必要な状態ではないため、オペレーションが拒否されました。たとえば、削除されるディレクトリが空でない、rmdir オペレーションがディレクトリ以外に適用されているなどの状態です。 サービスの実装者は、次のガイドラインを使用して、 HTTP マッピング: 400 不正なリクエスト |
ABORTED |
オペレーションは、通常、シーケンサー チェックの失敗、またはトランザクションの中止などの同時実行の問題のために中止されています。
HTTP マッピング: 409 競合 |
OUT_OF_RANGE |
オペレーションが有効な範囲を超えて試行されました。たとえば、ファイルの終わりを超えたシークまたは読み取りなどが該当します。
HTTP マッピング: 400 不正なリクエスト |
UNIMPLEMENTED |
オペレーションが実装されていないか、このサービスでサポートまたは有効にされていません。 HTTP マッピング: 501 実装されていません |
INTERNAL |
内部エラー。これは、基盤となるシステムで予期される一部の不変条件が満たされていないことを意味します。このエラーコードは深刻なエラーのために予約されています。 HTTP マッピング: 500 内部サーバーエラー |
UNAVAILABLE |
サービスは現在使用できません。これは、バックオフで再試行することで解決できる可能性が高い一時的な状態です。非べき等オペレーションの再試行が常に安全であるとは限りません。
HTTP マッピング: 503 サービスを利用できません |
DATA_LOSS |
回復不能なデータの消失や破損。 HTTP マッピング: 500 内部サーバーエラー |
ステータス
Status
型は、REST API や RPC API など、さまざまなプログラミング環境に適した論理エラーモデルを定義します。gRPC により使用されます。各 Status
メッセージには、エラーコード、エラー メッセージ、エラーの詳細という 3 種類のデータが含まれます。
このエラーモデルと操作方法について詳しくは、API 設計ガイドをご覧ください。
フィールド | |
---|---|
code |
ステータス コード。 |
message |
デベロッパー向けのエラー メッセージ。英語で記述します。ユーザー向けのエラー メッセージは、ローカライズして |
details[] |
エラーの詳細を保持するメッセージのリスト。API が使用する共通のメッセージ タイプのセットがあります。 |