方法
探索文件的重點放在 符合 REST 樣式的 API 叫用方法。 discovery.apis.list 方法會傳回 Google API 探索服務支援的所有 API 清單,包括擷取 REST 型探索文件的網址。
- list
- 擷取這個端點支援的 API 清單。
資源表示法
{
  "kind": "discovery#restDescription",
  "discoveryVersion": "v1",
  "id": string,
  "name": string,
  "canonicalName": string,
  "version": string,
  "revision": string,
  "title": string,
  "description": string,
  "icons": {
    "x16": string,
    "x32": string
  },
  "documentationLink": string,
  "labels": [
    string
  ],
  "protocol": "rest",
  "baseUrl": string,
  "basePath": string,
  "rootUrl": string,
  "servicePath": string,
  "batchPath": "batch",
  "endpoints": [
    {
      "endpointUrl": string,
      "location": string,
      "deprecated": boolean,
      "description": string
    }
  ],
  "parameters": {
    (key): {
      "id": string,
      "type": string,
      "$ref": string,
      "description": string,
      "default": string,
      "required": boolean,
      "format": string,
      "pattern": string,
      "minimum": string,
      "maximum": string,
      "enum": [
        string
      ],
      "enumDescriptions": [
        string
      ],
      "repeated": boolean,
      "location": string,
      "properties": {
        (key): (JsonSchema)
      },
      "additionalProperties": (JsonSchema),
      "items": (JsonSchema),
      "annotations": {
        "required": [
          string
        ]
      }
    }
  },
  "auth": {
    "oauth2": {
      "scopes": {
        (key): {
          "description": string
        }
      }
    }
  },
  "features": [
    string
  ],
  "schemas": {
    (key): {
      "id": string,
      "type": string,
      "$ref": string,
      "description": string,
      "default": string,
      "required": boolean,
      "deprecated": boolean,
      "format": string,
      "pattern": string,
      "minimum": string,
      "maximum": string,
      "enum": [
        string
      ],
      "enumDescriptions": [
        string
      ],
      "enumDeprecated": [
        boolean
      ],
      "repeated": boolean,
      "location": string,
      "properties": {
        (key): (JsonSchema)
      },
      "additionalProperties": (JsonSchema),
      "items": (JsonSchema),
      "annotations": {
        "required": [
          string
        ]
      }
    }
  },
  "methods": {
    (key): {
      "id": string,
      "path": string,
      "httpMethod": string,
      "description": string,
      "deprecated": boolean,
      "parameters": {
        (key): {
          "id": string,
          "type": string,
          "$ref": string,
          "description": string,
          "default": string,
          "required": boolean,
          "deprecated": boolean,
          "format": string,
          "pattern": string,
          "minimum": string,
          "maximum": string,
          "enum": [
            string
          ],
          "enumDescriptions": [
            string
          ],
          "enumDeprecated": [
            boolean
          ],
          "repeated": boolean,
          "location": string,
          "properties": {
            (key): (JsonSchema)
          },
          "additionalProperties": (JsonSchema),
          "items": (JsonSchema),
          "annotations": {
            "required": [
              string
            ]
          }
        }
      },
      "parameterOrder": [
        string
      ],
      "request": {
        "$ref": string
      },
      "response": {
        "$ref": string
      },
      "scopes": [
        (value)
      ],
      "supportsMediaDownload": boolean,
      "supportsMediaUpload": boolean,
      "mediaUpload": {
        "accept": [
          string
        ],
        "maxSize": string,
        "protocols": {
          "simple": {
            "multipart": true,
            "path": string
          },
          "resumable": {
            "multipart": true,
            "path": string
          }
        }
      },
      "supportsSubscription": boolean
    }
  },
  "resources": {
    (key): {
      "methods": {
        (key): {
          "id": string,
          "path": string,
          "httpMethod": string,
          "description": string,
          "deprecated": boolean,
          "parameters": {
            (key): {
              "id": string,
              "type": string,
              "$ref": string,
              "description": string,
              "default": string,
              "required": boolean,
              "deprecated": boolean,
              "format": string,
              "pattern": string,
              "minimum": string,
              "maximum": string,
              "enum": [
                string
              ],
              "enumDescriptions": [
                string
              ],
              "enumDeprecated": [
                boolean
              ],
              "repeated": boolean,
              "location": string,
              "properties": {
                (key): (JsonSchema)
              },
              "additionalProperties": (JsonSchema),
              "items": (JsonSchema),
              "annotations": {
                "required": [
                  string
                ]
              }
            }
          },
          "parameterOrder": [
            string
          ],
          "request": {
            "$ref": string
          },
          "response": {
            "$ref": string
          },
          "scopes": [
            (value)
          ],
          "supportsMediaDownload": boolean,
          "supportsMediaUpload": boolean,
          "mediaUpload": {
            "accept": [
              string
            ],
            "maxSize": string,
            "protocols": {
              "simple": {
                "multipart": true,
                "path": string
              },
              "resumable": {
                "multipart": true,
                "path": string
              }
            }
          },
          "supportsSubscription": boolean
        }
      },
      "deprecated": boolean,
      "resources": {
        (key): (RestResource)
      }
    }
  }
}
    | 資源名稱 | 值 | 說明 | Notes | 
|---|---|---|---|
| kind | string | 這個回應的種類。固定字串 discovery#restDescription。 | |
| discoveryVersion | string | 指出用於產生這份文件的 Discovery API 版本。 | |
| id | string | API 的 Discovery 文件 ID。例如 urlshortener:v1。 | |
| name | string | API 的名稱。例如: urlshortener。 | |
| canonicalName | string | API 的標準名稱,例如: Url Shortener。 | |
| version | string | API 版本,例如 v1。 | |
| revision | string | API 修訂版本。 | |
| title | string | API 的標題。例如「Google Url Shortener API」。 | |
| description | string | 這個 API 的說明。 | |
| icons | object | 連結至 API 的 16x16 和 32x32 圖示。 | |
| icons.x16 | string | 16x16 圖示的網址。 | |
| icons.x32 | string | 32x32 圖示的網址。 | |
| documentationLink | string | 使用者可理解的 API 說明文件連結。 | |
| labels[] | list | 這個 API 狀態的標籤。有效值包括 limited_availability或deprecated。 | |
| protocol | string | 本文件所說明的通訊協定。例如 REST。 | |
| rootUrl | string | 所有 API 服務都位於的根網址。 | |
| endpoints[] | list | 這個 API 的位置型端點物件清單,每個物件都包含端點網址、位置、說明和淘汰狀態。 | |
| endpoints[].endpointUrl | string | 端點目標主機的網址。 | |
| endpoints[].location | string | 端點的位置。 | |
| endpoints[].description | string | 字串,用來說明網址指定的主機。 | |
| endpoints[].deprecated | boolean | 此端點是否已淘汰。 | |
| parameters | object | 適用於所有 API 的通用參數。 | |
| parameters.(key) | nested object | 單一參數的說明。 | |
| parameters.(key).id | string | 這個結構定義的專屬 ID。 | |
| parameters.(key).type | string | 這個結構定義的值類型。相關值清單請參閱 JSON 結構定義中的「類型」一節。 | |
| parameters.(key).$ref | string | 其他結構定義的參照。這個屬性的值是其他結構定義的 ID。 | |
| parameters.(key).description | string | 這個物件的說明。 | |
| parameters.(key).default | string | 此屬性的預設值 (如果有的話)。 | |
| parameters.(key).required | boolean | 此為必要參數。 | |
| parameters.(key).format | string | 可協助限制值的額外規則運算式或鍵。詳情請參閱類型和格式摘要。 | |
| parameters.(key).pattern | string | 這個參數必須符合的規則運算式。 | |
| parameters.(key).minimum | string | 這個參數的最小值。 | |
| parameters.(key).maximum | string | 這個參數的最大值。 | |
| parameters.(key).enum[] | list | 這個參數可能的值 (如果為列舉), | |
| parameters.(key).enumDescriptions[] | list | 列舉的說明。每個位置都會對應至列舉陣列中的對應值。 | |
| parameters.(key).repeated | boolean | 這個參數是否可能多次顯示。 | |
| parameters.(key).location | string | 這個參數是查詢路徑還是 REST 要求的路徑。 | |
| parameters.(key).properties | object | 如果這個物件是物件結構定義,請列出這個物件每個屬性的結構定義。 | |
| parameters.(key).properties.(key) | nested object | 這個物件的單一屬性。這個值本身是描述這個屬性的 JSON 結構定義物件。 | |
| parameters.(key).additionalProperties | nested object | 如果物件的結構定義為物件,則這項屬性是任何其他屬性的結構定義,當中包含這個物件動態鍵。 | |
| parameters.(key).items | nested object | 如果這是陣列的結構定義,這個屬性是陣列中每個元素的結構定義。 | |
| parameters.(key).annotations | object | 這項資源的其他相關資訊。 | |
| parameters.(key).annotations.required[] | list | 列出要求中需要這個屬性的方法清單。 | |
| auth | object | 驗證資訊。 | |
| auth.oauth2 | object | OAuth 2.0 驗證資訊。 | |
| auth.oauth2.scopes | object | 可用的 OAuth 2.0 範圍。 | |
| auth.oauth2.scopes.(key) | object | 範圍值。 | |
| auth.oauth2.scopes.(key).description | string | 範圍說明。 | |
| features[] | list | 這個 API 支援的功能清單。 | |
| schemas | object | 這個 API 的結構定義。 | |
| schemas.(key) | nested object | 個別結構定義說明。 | |
| schemas.(key).id | string | 這個結構定義的專屬 ID。範例: URL | |
| schemas.(key).type | string | 這個結構定義的值類型。如需這些值的清單,請參閱 JSON 結構定義中的「類型」一節。 | |
| schemas.(key).$ref | string | 其他結構定義的參照。這個屬性的值是其他結構定義的 ID。 | |
| schemas.(key).description | string | 這個物件的說明。 | |
| schemas.(key).default | string | 此屬性的預設值 (如果有的話)。 | |
| schemas.(key).required | boolean | 此為必要參數。 | |
| schemas.(key).deprecated | boolean | 這個結構定義是否為已淘汰。 | |
| schemas.(key).format | string | 可協助限制值的額外規則運算式或鍵。請參閱類型和格式摘要。 | |
| schemas.(key).pattern | string | 這個參數必須符合的規則運算式。 | |
| schemas.(key).minimum | string | 這個參數的最小值。 | |
| schemas.(key).maximum | string | 這個參數的最大值。 | |
| schemas.(key).enum[] | list | 這個參數可能的值 (如果為列舉), | |
| schemas.(key).enumDescriptions[] | list | 列舉的說明。每個位置都會對應至 enum陣列中的對應值。 | |
| schemas.(key).enumDeprecated[] | list | 列舉的淘汰狀態。每個位置都會對應至 enum陣列中的對應值。 | |
| schemas.(key).repeated | boolean | 這個參數是否可能多次顯示。 | |
| schemas.(key).location | string | 這個參數是查詢路徑還是 REST 要求的路徑。 | |
| schemas.(key).properties | object | 如果這個物件是物件結構定義,請列出這個物件每個屬性的結構定義。 | |
| schemas.(key).properties.(key) | nested object | 這個物件的單一屬性。這個值本身是描述這個屬性的 JSON 結構定義物件。 | |
| schemas.(key).additionalProperties | nested object | 如果物件的結構定義為物件,則這項屬性是任何其他屬性的結構定義,當中包含這個物件動態鍵。 | |
| schemas.(key).items | nested object | 如果這是陣列的結構定義,這個屬性是陣列中每個元素的結構定義。 | |
| schemas.(key).annotations | object | 這項資源的其他相關資訊。 | |
| schemas.(key).annotations.required[] | list | 列出要求中需要這個屬性的方法清單。 | |
| methods | object | 這個 API 的 API 級別方法。 | |
| methods.(key) | nested object | 個別方法說明。 | |
| methods.(key).id | string | 這個方法的專屬 ID。這個屬性可用於比對不同版本的探索方法。 | |
| methods.(key).description | string | 這個方法的說明。 | |
| methods.(key).deprecated | boolean | 此方法是否已淘汰。 | |
| methods.(key).parameters | object | 這個方法中所有參數的詳細資料。 | |
| methods.(key).parameters.(key) | nested object | 此方法中的單一參數詳細資料。 | |
| methods.(key).parameters.(key).id | string | 這個結構定義的專屬 ID。 | |
| methods.(key).parameters.(key).type | string | 這個結構定義的值類型。如需這些值的清單,請參閱 JSON 結構定義中的「類型」一節。 | |
| methods.(key).parameters.(key).$ref | string | 其他結構定義的參照。這個屬性的值是其他結構定義的 ID。 | |
| methods.(key).parameters.(key).description | string | 這個物件的說明。 | |
| methods.(key).parameters.(key).default | string | 此屬性的預設值 (如果有的話)。 | |
| methods.(key).parameters.(key).required | boolean | 此為必要參數。 | |
| methods.(key).parameters.(key).deprecated | boolean | 參數是否已淘汰。 | |
| methods.(key).parameters.(key).format | string | 可協助限制值的額外規則運算式或鍵。請參閱類型和格式摘要。 | |
| methods.(key).parameters.(key).pattern | string | 這個參數必須符合的規則運算式。 | |
| methods.(key).parameters.(key).minimum | string | 這個參數的最小值。 | |
| methods.(key).parameters.(key).maximum | string | 這個參數的最大值。 | |
| methods.(key).parameters.(key).enum[] | list | 這個參數可能的值 (如果為列舉), | |
| methods.(key).parameters.(key).enumDescriptions[] | list | 列舉的說明。每個位置都會對應至 enum陣列中的對應值。 | |
| methods.(key).parameters.(key).enumDeprecated[] | list | 列舉的淘汰狀態。每個位置都會對應至 enum陣列中的對應值。 | |
| methods.(key).parameters.(key).repeated | boolean | 這個參數是否可能多次顯示。 | |
| methods.(key).parameters.(key).location | string | 這個參數是查詢路徑還是 REST 要求的路徑。 | |
| methods.(key).parameters.(key).properties | object | 如果這個物件是物件結構定義,請列出這個物件每個屬性的結構定義。 | |
| methods.(key).parameters.(key).properties.(key) | nested object | 這個物件的單一屬性。這個值本身是描述這個屬性的 JSON 結構定義物件。 | |
| methods.(key).parameters.(key).additionalProperties | nested object | 如果物件的結構定義為物件,則這項屬性是任何其他屬性的結構定義,當中包含這個物件動態鍵。 | |
| methods.(key).parameters.(key).items | nested object | 如果這是陣列的結構定義,這個屬性是陣列中每個元素的結構定義。 | |
| methods.(key).parameters.(key).annotations | object | 這項資源的其他相關資訊。 | |
| methods.(key).parameters.(key).annotations.required[] | list | 列出要求時需要這個屬性的方法清單。 | |
| methods.(key).parameterOrder[] | list | 必要參數的排序清單。這有助於客戶瞭解如何建構方法簽章。陣列會排序,讓最重要的參數優先顯示。 | |
| methods.(key).scopes[] | list | 這個方法適用的 OAuth 2.0 範圍。 | |
| methods.(key).supportsMediaDownload | boolean | 這個方法是否支援下載媒體。 | |
| methods.(key).supportsMediaUpload | boolean | 這個方法是否支援媒體上傳。 | |
| methods.(key).mediaUpload | object | 媒體上傳參數。 | |
| methods.(key).mediaUpload.accept[] | list | 允許上傳媒體內容至這個方法的 MIME 媒體範圍。 | |
| methods.(key).mediaUpload.maxSize | string | 媒體上傳大小上限,例如「1MB」、「2GB」或「3TB」。 | |
| methods.(key).supportsSubscription | boolean | 這個方法是否支援訂閱項目。 | |
| baseUrl | string | [已淘汰] REST 要求的基準網址。 | |
| basePath | string | [已淘汰] REST 要求的基本路徑。 | |
| servicePath | string | 所有 REST 要求的基本路徑。 | |
| batchPath | string | REST 批次要求的路徑。 | |
| methods.(key).path | string | 這個 REST 方法的 URI 路徑。應搭配 API 級別的 servicePath屬性使用。 | |
| methods.(key).httpMethod | string | 此方法使用的 HTTP 方法。 | |
| methods.(key).request | object | 要求的結構定義。 | |
| methods.(key).request.$ref | string | 要求結構定義的結構定義 ID。 | |
| methods.(key).request.parameterName | string | [已淘汰] 基於回溯相容性考量,某些 API 有這個欄位。您可以放心忽略這則訊息。 | |
| methods.(key).response | object | 回應的結構定義。 | |
| methods.(key).response.$ref | string | 回應結構定義的結構定義 ID。 | |
| methods.(key).mediaUpload.protocols | object | 支援的上傳通訊協定。 | |
| methods.(key).mediaUpload.protocols.simple | object | 支援上傳單一 HTTP 要求。 | |
| methods.(key).mediaUpload.protocols.simple.multipart | boolean | 如果這個端點支援上傳多部分媒體,則為 True。 | |
| methods.(key).mediaUpload.protocols.simple.path | string | 要上傳的 URI 路徑。應搭配 API 級別中的 rootURL屬性使用。 | |
| methods.(key).mediaUpload.protocols.resumable | object | 支援支援續傳的媒體上傳通訊協定。 | |
| methods.(key).mediaUpload.protocols.resumable.multipart | boolean | 如果這個端點支援上傳多部分媒體,則為 true。 | |
| methods.(key).mediaUpload.protocols.resumable.path | string | 要上傳的 URI 路徑。應搭配 API 級別的 rootURL屬性使用。 | |
| resources | object | 這個 API 中的資源。 | |
| resources.(key) | nested object | 個別資源說明。包含與這項資源相關的方法和子資源。 | |
| resources.(key).methods | object | 這項資源的方法。 | |
| resources.(key).methods.(key) | nested object | 這項資源的任何方法說明。 | |
| resources.(key).methods.(key).id | string | 這個方法的專屬 ID。這個屬性可用於比對不同版本的探索方法。 | |
| resources.(key).methods.(key).path | string | 這個 REST 方法的 URI 路徑。應搭配 API 級別的 servicePath屬性使用。 | |
| resources.(key).methods.(key).flatPath | string | 此 REST 方法的 URI 路徑 (RFC 6570) 格式,不含第 2 級功能 ({+var})。與 path屬性相輔相成。 | |
| resources.(key).methods.(key).httpMethod | string | 此方法使用的 HTTP 方法。 | |
| resources.(key).methods.(key).description | string | 這個方法的說明。 | |
| resources.(key).methods.(key).deprecated | boolean | 此方法是否已淘汰。 | |
| resources.(key).methods.(key).parameters | object | 這個方法中所有參數的詳細資料。 | |
| resources.(key).methods.(key).parameters.(key) | nested object | 此方法中的單一參數詳細資料。 | |
| resources.(key).methods.(key).parameters.(key).id | string | 這個結構定義的專屬 ID。 | |
| resources.(key).methods.(key).parameters.(key).type | string | 這個結構定義的值類型。如需這些值的清單,請參閱 JSON 結構定義中的「類型」一節。 | |
| resources.(key).methods.(key).parameters.(key).$ref | string | 其他結構定義的參照。這個屬性的值是其他結構定義的「ID」。 | |
| resources.(key).methods.(key).parameters.(key).description | string | 這個物件的說明。 | |
| resources.(key).methods.(key).parameters.(key).default | string | 此屬性的預設值 (如果有的話)。 | |
| resources.(key).methods.(key).parameters.(key).required | boolean | 此為必要參數。 | |
| resources.(key).methods.(key).parameters.(key).deprecated | boolean | 參數是否已淘汰。 | |
| resources.(key).methods.(key).parameters.(key).format | string | 可協助限制值的額外規則運算式或鍵。請參閱類型和格式摘要。 | |
| resources.(key).methods.(key).parameters.(key).pattern | string | 這個參數必須符合的規則運算式。 | |
| resources.(key).methods.(key).parameters.(key).minimum | string | 這個參數的最小值。 | |
| resources.(key).methods.(key).parameters.(key).maximum | string | 這個參數的最大值。 | |
| resources.(key).methods.(key).parameters.(key).enum[] | list | 這個參數可能的值 (如果為列舉), | |
| resources.(key).methods.(key).parameters.(key).enumDescriptions[] | list | 列舉的說明。每個位置都會對應至 enum陣列中的對應值。 | |
| resources.(key).methods.(key).parameters.(key).enumDeprecated[] | list | 列舉的淘汰狀態。每個位置都會對應至 enum陣列中的對應值。 | |
| resources.(key).methods.(key).parameters.(key).repeated | boolean | 這個參數是否可能多次顯示。 | |
| resources.(key).methods.(key).parameters.(key).location | string | 這個參數是查詢路徑還是 REST 要求的路徑。 | |
| resources.(key).methods.(key).parameters.(key).properties | object | 如果這個物件是物件結構定義,請列出這個物件每個屬性的結構定義。 | |
| resources.(key).methods.(key).parameters.(key).properties.(key) | nested object | 這個物件的單一屬性。這個值本身是描述這個屬性的 JSON 結構定義物件。 | |
| resources.(key).methods.(key).parameters.(key).additionalProperties | nested object | 如果物件的結構定義為物件,則這項屬性是任何其他屬性的結構定義,當中包含這個物件動態鍵。 | |
| resources.(key).methods.(key).parameters.(key).items | nested object | 如果這是陣列的結構定義,這個屬性是陣列中每個元素的結構定義。 | |
| resources.(key).methods.(key).parameters.(key).annotations | object | 這項資源的其他相關資訊。 | |
| resources.(key).methods.(key).parameters.(key).annotations.required[] | list | 列出要求中需要這個屬性的方法清單。 | |
| resources.(key).methods.(key).parameterOrder[] | list | 必要參數的排序清單。這有助於客戶瞭解如何建構方法簽章。陣列會排序,讓最重要的參數優先顯示。 | |
| resources.(key).methods.(key).request | object | 要求的結構定義。 | |
| resources.(key).methods.(key).request.$ref | string | 要求結構定義的結構定義 ID。 | |
| resources.(key).methods.(key).response | object | 回應的結構定義。 | |
| resources.(key).methods.(key).response.$ref | string | 回應結構定義的結構定義 ID。 | |
| resources.(key).methods.(key).scopes[] | list | 這個方法適用的 OAuth 2.0 範圍。 | |
| resources.(key).methods.(key).supportsMediaDownload | boolean | 這個方法是否支援下載媒體。 | |
| resources.(key).methods.(key).supportsMediaUpload | boolean | 這個方法是否支援媒體上傳。 | |
| resources.(key).methods.(key).mediaUpload | object | 媒體上傳參數。 | |
| resources.(key).methods.(key).mediaUpload.accept[] | list | 允許上傳媒體內容至這個方法的 MIME 媒體範圍。 | |
| resources.(key).methods.(key).mediaUpload.maxSize | string | 媒體上傳大小上限,例如「1MB」、「2GB」或「3TB」。 | |
| resources.(key).methods.(key).mediaUpload.protocols | object | 支援的上傳通訊協定。 | |
| resources.(key).methods.(key).mediaUpload.protocols.simple | object | 支援上傳單一 HTTP 要求。 | |
| resources.(key).methods.(key).mediaUpload.protocols.simple.multipart | boolean | 如果這個端點支援上傳多部分媒體,則為 true。 | |
| resources.(key).methods.(key).mediaUpload.protocols.simple.path | string | 要上傳的 URI 路徑。應搭配 API 級別的 rootURL屬性使用。 | |
| resources.(key).methods.(key).mediaUpload.protocols.resumable | object | 支援支援續傳的媒體上傳通訊協定。 | |
| resources.(key).methods.(key).mediaUpload.protocols.resumable.multipart | boolean | 如果這個端點支援上傳多部分媒體,則為 true。 | |
| resources.(key).methods.(key).mediaUpload.protocols.resumable.path | string | 要上傳的 URI 路徑。應搭配 API 級別的 rootURL屬性使用。 | |
| resources.(key).methods.(key).supportsSubscription | boolean | 這個方法是否支援訂閱項目。 | |
| resources.(key).deprecated | boolean | 這項資源是否為已淘汰。 | |
| resources.(key).resources | object | 這項資源的子資源。 | |
| resources.(key).resources.(key) | nested object | 這項資源的任何子資源說明。 |