您可以使用參數和結構定義的 type 和 format 屬性,判斷屬性的資料類型。type 屬性會在 JSON 要求和回應中傳送時,指出屬性類型 (JSON 支援少量資料類型,詳情請參閱 json.org)。format 屬性會提供基礎類型的其他資訊。資源一律都會有 type 屬性,但有些資源也可能會有 format 屬性。
    舉例來說,64 位元整數無法以 JSON 表示 (因為 JavaScript 和 JSON 支援的整數上限為 2^53)。因此,64 位元整數必須在 JSON 要求/回應中以字串格式呈現。因此,type 屬性會設為「字串」,但 format 屬性會設為「int64」,以表示這是 64 位元整數。
    JSON 結構定義規格已為 format 屬性定義一組常見值。Google API Discovery Service 支援部分這些值,並定義其他值。以下列出 Google API Discovery Service 支援的 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 編碼位元組字串,使用網址和檔案名稱安全字母編碼 (有時稱為「網路安全」或「Base64url」)。由 RFC4648 定義。 | 
string | 
        date | 
        以 YYYY-MM-DD 格式顯示的 RFC3339 日期。在 JSON 結構定義規格中定義。 | 
string | 
        date-time | 
        採用世界標準時間的 RFC3339 時間戳記。格式為 yyyy-MM-ddTHH:mm:ss.SSSZ。毫秒部分 (「.SSS」) 為選用項目。在 JSON 結構定義規格中定義。 | 
string | 
        google-datetime | 
        採用世界標準時間的 RFC3339 時間戳記。格式為 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 (含首尾兩值)。 |