BadRequest

クライアント リクエストの違反について説明します。このエラータイプは、リクエストの構文的な側面に重点を置いています。

JSON 表現
{
  "fieldViolations": [
    {
      object (FieldViolation)
    }
  ]
}
フィールド
fieldViolations[]

object (FieldViolation)

クライアント リクエストのすべての違反について説明します。

FieldViolation

単一の不正なリクエスト フィールドを説明するために使用されるメッセージ タイプ。

JSON 表現
{
  "field": string,
  "description": string,
  "reason": string,
  "localizedMessage": {
    object (LocalizedMessage)
  }
}
フィールド
field

string

リクエスト本文のフィールドへのパス。値は、プロトコル バッファ フィールドを識別する、ドットで区切られた識別子のシーケンスになります。

次の点を考慮してください。

message CreateContactRequest {
  message EmailAddress {
    enum Type {
      TYPE_UNSPECIFIED = 0;
      HOME = 1;
      WORK = 2;
    }

    optional string email = 1;
    repeated EmailType type = 2;
  }

  string fullName = 1;
  repeated EmailAddress emailAddresses = 2;
}

この例では、proto field は次のいずれかの値を取ります。

  • fullName 値の違反に対する fullName
  • 最初の emailAddresses メッセージの email フィールドの違反に対する emailAddresses[0].email
  • 3 番目の emailAddresses メッセージの 2 番目の type 値の違反に対する emailAddresses[2].type[1]。

JSON では、同じ値は次のように表されます。

  • fullName 値の違反に対する fullName
  • 最初の emailAddresses メッセージの email フィールドの違反に対する emailAddresses[0].email
  • 3 番目の emailAddresses メッセージの 2 番目の type 値の違反に対する emailAddresses[2].type[1]。
description

string

リクエスト要素が不適切な理由の説明。

reason

string

フィールドレベルのエラーの理由。これは、フィールドレベルのエラーの直接の原因を特定する定数値です。google.rpc.ErrorInfo.domain の範囲内で FieldViolation のタイプを一意に識別する必要があります。これは 63 文字以内で、UPPER_SNAKE_CASE を表す正規表現 [A-Z][A-Z0-9_]+[A-Z0-9] に一致する必要があります。

localizedMessage

object (LocalizedMessage)

API コンシューマーに安全に返せる、フィールドレベルのエラーのローカライズされたエラー メッセージを提供します。

LocalizedMessage

ユーザーに返しても安全なローカライズされたエラー メッセージを提供します。このメッセージは RPC エラーに添付できます。

JSON 表現
{
  "locale": string,
  "message": string
}
フィールド
locale

string

https://www.rfc-editor.org/rfc/bcp/bcp47.txt で定義されている仕様に沿って使用されるロケール。例: 「en-US」、「fr-CH」、「es-MX」

message

string

上記の言語 / 地域でのローカライズされたエラー メッセージ。