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

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

メソッド

ディスカバリ ドキュメントは、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 32x32 アイコンの URL。
labels[] list この API のステータスのラベル。有効な値は、limited_availability または deprecated です。
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 スキーマ オブジェクトになります。
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 スキーマ オブジェクトになります。
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 このメソッドの単一パラメータの詳細。
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 スキーマ オブジェクトになります。
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 再開可能なメディア アップロード プロトコルをサポートします。
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 この REST メソッドの URI パス。レベル 2 の機能のない RFC 6570 形式({+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 このスキーマの固有識別子。
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 スキーマ オブジェクトになります。
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 再開可能なメディア アップロード プロトコルをサポートします。
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 このリソースのサブリソースの説明。