ディスカバリ ドキュメント

ディスカバリ ドキュメントは、ほとんどの API の特定のバージョンで使用できます。各 API のディスカバリ ドキュメントでは、API のサーフェス、API へのアクセス方法、API のリクエストとレスポンスの構造について説明します。ディスカバリ ドキュメントで提供される情報には、API の説明、リソース スキーマ、認証スコープ、メソッドなどの API レベルのプロパティが含まれます。

Methods

ディスカバリ ドキュメントでは、API 呼び出しの RESTful メソッドに焦点を当てています。 discovery.apis.list メソッドは、Google API Discovery Service でサポートされているすべての API のリストを返します。これには、REST ベースのディスカバリ ドキュメントを取得するための URL が含まれます。

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)
      }
    }
  }
}
プロパティ名 説明 メモ
kind string このレスポンスの種類。固定文字列 discovery#restDescription
discoveryVersion string このドキュメントの生成に使用された Discovery API のバージョンを指定します。
id string API のディスカバリ ドキュメントの 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 アイコンの URL。
icons.x32 string 32×32 アイコンの URL。
labels[] list この API のステータスのラベル。有効な値は limited_availabilitydeprecated です。
protocol string ドキュメントに記述されているプロトコル。例: REST。
rootUrl string すべての API サービスが属するルート URL。
endpoints[] list この API の位置情報に基づくエンドポイント オブジェクトのリスト。各オブジェクトには、エンドポイント URL、ロケーション、説明、非推奨ステータスが含まれます。
endpoints[].endpointUrl string エンドポイント ターゲット ホストの URL。
endpoints[].location string エンドポイントのロケーション。
endpoints[].description string URL で指定されたホストを説明する文字列。
endpoints[].deprecated boolean このエンドポイントが非推奨かどうか。
parameters object すべての API に適用される共通のパラメータ。
parameters.(key) nested object 単一のパラメータの説明。
parameters.(key).id string このスキーマの一意の識別子。
parameters.(key).type string このスキーマの値の型。値のリストについては、JSON スキーマの「type」セクションをご覧ください。
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 Schema オブジェクトです。
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 このスキーマの一意の識別子。例: URL
schemas.(key).type string このスキーマの値の型。値のリストは、JSON スキーマの「type」セクションで確認できます。
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 Schema オブジェクトです。
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。このプロパティを使用すると、Discovery の異なるバージョンのメソッドを照合できます。
methods.(key).description string このメソッドの説明。
methods.(key).deprecated boolean このメソッドが非推奨かどうか。
methods.(key).parameters object このメソッドのすべてのパラメータの詳細。
methods.(key).parameters.(key) nested object このメソッド内の 1 つのパラメータの詳細。
methods.(key).parameters.(key).id string このスキーマの一意の識別子。
methods.(key).parameters.(key).type string このスキーマの値の型。 値のリストについては、JSON スキーマの「type」セクションをご覧ください。.
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 Schema オブジェクトです。
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 メディア アップロードの最大サイズ(1 MB、2 GB、3 TB など)。
methods.(key).supportsSubscription boolean このメソッドがサブスクリプションをサポートしているかどうか。
baseUrl string [非推奨] REST リクエストのベース URL。
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 Resumable Media Upload プロトコルをサポートしています。
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。このプロパティを使用すると、Discovery の異なるバージョンのメソッドを照合できます。
resources.(key).methods.(key).path string この REST メソッドの URI パス。API レベルで servicePath プロパティと組み合わせて使用する必要があります。
resources.(key).methods.(key).flatPath string レベル 2 の機能({+var})を含まない、この REST メソッドの URI パス(RFC 6570)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 このメソッド内の 1 つのパラメータの詳細。
resources.(key).methods.(key).parameters.(key).id string このスキーマの一意の識別子。
resources.(key).methods.(key).parameters.(key).type string このスキーマの値の型。 値のリストについては、JSON スキーマの「type」セクションをご覧ください。.
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 Schema オブジェクトです。
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 メディア アップロードの最大サイズ(1 MB、2 GB、3 TB など)。
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 Resumable Media Upload プロトコルをサポートしています。
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 このリソースのサブリソースの説明。