パラメータとスキーマの type プロパティと format プロパティを使用すると、プロパティのデータ型を決めることができます。type プロパティは、JSON リクエストとレスポンスで送信されるプロパティの型を表します(JSON は少数のデータ型をサポートしています。詳しくは json.org をご覧ください)。format プロパティは、基になる型に関する追加情報を提供します。プロパティには必ず type プロパティがありますが、format プロパティは常に存在するとは限りません。
    たとえば、64 ビットの整数は JSON で表現できません(JavaScript と JSON がサポートしている整数は 2^53 までです)。JSON のリクエスト / レスポンスでは 64 ビットの整数を文字列として表す必要があります。このため、type プロパティは string に設定されますが、64 ビット整数であることを示すため format プロパティには int64 が設定されます。
    JSON スキーマ仕様では、format プロパティの共通の値セットがすでに定義されています。Google API 検出サービスは、これらの値のいくつかをサポートし、他の値も定義します。Google API 検出サービスでサポートされている type 値と format 値の完全なリストは、以下のとおりです。
| Type 値 | Format 値 | 意味 | 
|---|---|---|
| any |  | このプロパティには任意の型を指定できます。JSON スキーマ仕様で定義されています。 | 
| any | google.protobuf.Value | このプロパティには、google.protobuf.Value 型の JSON 表現が含まれます。 | 
| array |  | JavaScript 配列。 itemsプロパティは配列値のスキーマを示します。JSON スキーマ仕様で定義されています。 | 
| array | google.protobuf.ListValue | このプロパティには、google.protobuf.ListValue 型の JSON 表現があります。 | 
| boolean |  | ブール値(true または false)。JSON スキーマ仕様で定義されています。 | 
| integer | int32 | 32 ビット符号付き整数。最小値は -2,147,483,648、最大値は 2,147,483,647 です。 | 
| integer | uint32 | 32 ビット符号なし整数。最小値は 0、最大値は 4,294,967,295 です(それぞれの両端を含みます)。 | 
| number | double | 倍精度 64 ビット IEEE 754 浮動小数点。 | 
| number | float | 単精度 32 ビット IEEE 754 浮動小数点。 | 
| object |  | JavaScript オブジェクト。JSON スキーマ仕様で定義されています。 | 
| object | google.protobuf.Struct | このプロパティには、google.protobuf.Struct 型の JSON 表現があります。 | 
| object | google.protobuf.Any | このプロパティには、google.protobuf.Any 型の JSON 表現が含まれます。 | 
| string |  | 任意の文字列。JSON スキーマ仕様で定義されています。 | 
| string | byte | パディングされた Base64 エンコードのバイト文字列。URL およびファイル名のセーフ型でエンコードされます(ウェブセーフ、base64url と呼ばれることもあります)。RFC 4648 で定義されています。 | 
| string | date | RFC3339 の日付(YYYY-MM-DD 形式)。JSON スキーマ仕様で定義されています。 | 
| string | date-time | RFC 3339 タイムスタンプ(UTC 時間)。形式は yyyy-MM-ddTHH:mm:ss.SSSZ です。ミリ秒部分(.SSS)は省略可能です。JSON スキーマ仕様で定義されています。 | 
| string | google-datetime | RFC 3339 タイムスタンプ(UTC 時間)。形式は yyyy-MM-ddTHH:mm:ss.SSSZ です。ミリ秒部分(.SSS)は省略可能です。 | 
| string | google-duration | 文字列の最後は秒数で、末尾に秒を表す s が付きます。ナノ秒は、小数点以下の秒数で表します。小数点にはカンマではなく、ピリオドを使用します。 | 
| string | google-fieldmask | フィールド名がカンマで区切られた文字列。フィールド名は、小文字のキャメルケースで表します。 | 
| string | int64 | 64 ビット符号付き整数。最小値は -9,223,372,036,854,775,808、最大値は 9,223,372,036,854,775,807 です(それぞれの両端を含みます)。 | 
| string | uint64 | 64 ビット符号なし整数。最小値は 0、最大値は (2^64)-1 です(それぞれの両端を含みます)。 |