Документ обнаружения

Документы обнаружения доступны для конкретных версий большинства API. В документе обнаружения для каждого API описывается интерфейс API, способы доступа к API, а также структура запросов и ответов API. Информация, предоставляемая документом обнаружения, включает свойства уровня API, такие как описание API, схемы ресурсов, области аутентификации и методы.

Методы

Документ Discovery посвящен методу вызова API на основе RESTful. Метод discovery.apis.list возвращает список всех API, поддерживаемых службой Google API Discovery, включая URL-адреса для получения документов Discovery на основе REST.

список
Получите список 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 Укажите версию API Discovery, использованную для создания этого документа.
id string Идентификатор документа Discovery для API. Например, 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 Ссылки на значки размером 16x16 и 32x32, представляющие API.
icons. x16 string URL-адрес значка размером 16x16.
icons. x32 string URL-адрес значка размером 32x32.
labels[] list Метки, отображающие статус этого API. Допустимые значения: limited_availability или deprecated .
protocol string Протокол, описанный в документе. Например, REST.
rootUrl string Корневой URL-адрес, по которому размещаются все API-сервисы.
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 Тип значения для этой схемы. Список значений можно найти в разделе "type" в JSON-схеме .
parameters.(key). $ref string Ссылка на другую схему. Значение этого свойства — идентификатор другой схемы.
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 Тип значения для этой схемы. Список значений можно найти в разделе "type" в JSON-схеме .
schemas.(key). $ref string Ссылка на другую схему. Значение этого свойства — идентификатор другой схемы.
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 Уникальный идентификатор для этого метода. Это свойство можно использовать для сопоставления методов между различными версиями 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 Тип значения для этой схемы. Список значений можно найти в разделе "type" в JSON-схеме .
methods.(key).parameters.(key). $ref string Ссылка на другую схему. Значение этого свойства — идентификатор другой схемы.
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 МБ", "2 ГБ" или "3 ТБ".
methods.(key). supportsSubscription boolean Поддерживает ли данный метод подписки.
baseUrl string [УСТАРЕЛО] Базовый URL для REST-запросов.
basePath string [УСТАРЕЛО] Базовый путь для REST-запросов.
servicePath string Базовый путь для всех REST-запросов.
batchPath string Путь для пакетных REST-запросов.
methods.(key). path string URI-путь этого REST-метода. Следует использовать совместно со свойством servicePath на уровне API.
methods.(key). httpMethod string Данный метод использует HTTP-метод.
methods.(key). request object Схема запроса.
methods.(key).request. $ref string Идентификатор схемы для схемы запроса.
methods.(key).request. parameterName string [УСТАРЕЛО] В некоторых API это поле присутствует для обеспечения обратной совместимости. Его можно смело игнорировать.
methods.(key). response object Схема ответа.
methods.(key).response. $ref string Идентификатор схемы для схемы ответа.
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-путь, используемый для загрузки. Следует использовать совместно со свойством rootURL на уровне API.
methods.(key).mediaUpload.protocols. resumable object Поддерживает протокол возобновляемой загрузки медиафайлов.
methods.(key).mediaUpload.protocols.resumable. multipart boolean true , если данная конечная точка поддерживает загрузку многокомпонентных медиафайлов.
methods.(key).mediaUpload.protocols.resumable. path string URI-путь, используемый для загрузки. Следует использовать совместно со свойством rootURL на уровне API.
resources object Ресурсы, доступные через этот API.
resources. (key) nested object Описание отдельного ресурса. Содержит методы и подресурсы, относящиеся к данному ресурсу.
resources.(key). methods object Методы, представленные в этом ресурсе.
resources.(key).methods. (key) nested object Описание всех методов, используемых в этом ресурсе.
resources.(key).methods.(key). id string Уникальный идентификатор для этого метода. Это свойство можно использовать для сопоставления методов между различными версиями Discovery.
resources.(key).methods.(key). path string URI-путь этого REST-метода. Следует использовать совместно со свойством servicePath на уровне API.
resources.(key).methods.(key). flatPath string URI-путь этого REST-метода в формате (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 Уникальный идентификатор для данной схемы.
resources.(key).methods.(key).parameters.(key). type string Тип значения для этой схемы. Список значений можно найти в разделе "type" в JSON-схеме .
resources.(key).methods.(key).parameters.(key). $ref string Ссылка на другую схему. Значение этого свойства — идентификатор другой схемы.
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 Идентификатор схемы для схемы запроса.
resources.(key).methods.(key). response object Схема ответа.
resources.(key).methods.(key).response. $ref string Идентификатор схемы для схемы ответа.
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 МБ", "2 ГБ" или "3 ТБ".
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-путь, используемый для загрузки. Следует использовать совместно со свойством rootURL на уровне API.
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-путь, используемый для загрузки. Следует использовать совместно со свойством rootURL на уровне API.
resources.(key).methods.(key). supportsSubscription boolean Поддерживает ли данный метод подписки.
resources.(key). deprecated boolean Устарел ли данный ресурс.
resources.(key). resources object Вспомогательные материалы к этому ресурсу.
resources.(key).resources. (key) nested object Описание для всех подразделов данного ресурса.