Documento de descubrimiento

Los documentos de descubrimiento están disponibles para versiones específicas de la mayoría de las APIs. El documento de descubrimiento de cada API describe la superficie de la API, cómo acceder a ella y cómo se estructuran las solicitudes y respuestas de la API. La información proporcionada por el documento de descubrimiento incluye propiedades a nivel de API, como una descripción de la API, esquemas de recursos, permisos de autenticación y métodos.

Métodos

El documento de descubrimiento se centra en el método RESTful para invocar una API. El método discovery.apis.list devuelve la lista de todas las APIs compatibles con el servicio de descubrimiento de APIs de Google, incluidas las URLs para recuperar los documentos de descubrimiento basados en REST.

lista
Recupera la lista de APIs admitidas en este endpoint.

Representaciones del recurso

{
  "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)
      }
    }
  }
}
Nombre de propiedad Valor Descripción
kind string El tipo de esta respuesta. La cadena fija discovery#restDescription.
discoveryVersion string Indica la versión de la API Discovery que se ha usado para generar este documento.
id string El ID del documento de descubrimiento de la API. Por ejemplo, urlshortener:v1.
name string El nombre de la API. Por ejemplo, urlshortener.
canonicalName string Nombre canónico de la API. Por ejemplo, Url Shortener.
version string La versión de la API. Por ejemplo, v1.
revision string Revisión de la API.
title string El título de la API. Por ejemplo, "API de acortador de URLs de Google".
description string Descripción de esta API.
icons object Enlaces a iconos de 16x16 y 32x32 que representan la API.
icons.x16 string La URL del icono de 16x16.
icons.x32 string La URL del icono de 32x32.
labels[] list Etiquetas del estado de esta API. Los valores válidos son limited_availability o deprecated.
protocol string El protocolo descrito en el documento. Por ejemplo, REST.
rootUrl string La URL raíz en la que se encuentran todos los servicios de la API.
endpoints[] list Lista de objetos de endpoint basados en la ubicación de esta API. Cada objeto contiene la URL del endpoint, la ubicación, la descripción y el estado de obsolescencia.
endpoints[].endpointUrl string La URL del host de destino del endpoint.
endpoints[].location string Ubicación del endpoint.
endpoints[].description string Cadena que describe el host designado por la URL.
endpoints[].deprecated boolean Indica si este endpoint está obsoleto.
parameters object Parámetros comunes que se aplican a todas las APIs.
parameters.(key) nested object Descripción de un solo parámetro.
parameters.(key).id string Identificador único de este esquema.
parameters.(key).type string Tipo de valor de este esquema. Puedes consultar una lista de valores en la sección "type" del esquema JSON.
parameters.(key).$ref string Referencia a otro esquema. El valor de esta propiedad es el ID de otro esquema.
parameters.(key).description string Descripción de este objeto.
parameters.(key).default string El valor predeterminado de esta propiedad (si existe).
parameters.(key).required boolean Indica si el parámetro es obligatorio.
parameters.(key).format string Una expresión regular o una clave adicionales que ayudan a restringir el valor. Para obtener más información, consulta el resumen de tipos y formatos.
parameters.(key).pattern string La expresión regular a la que debe ajustarse este parámetro.
parameters.(key).minimum string El valor mínimo de este parámetro.
parameters.(key).maximum string El valor máximo de este parámetro.
parameters.(key).enum[] list Valores que puede adoptar este parámetro (si es una enumeración).
parameters.(key).enumDescriptions[] list Las descripciones de las enumeraciones. Cada posición se asigna al valor correspondiente de la matriz de enumeración.
parameters.(key).repeated boolean Si este parámetro puede aparecer varias veces.
parameters.(key).location string Indica si este parámetro se incluye en la consulta o en la ruta de las solicitudes REST.
parameters.(key).properties object Si se trata de un esquema de un objeto, indica el esquema de cada propiedad de este objeto.
parameters.(key).properties.(key) nested object Una sola propiedad de este objeto. El valor es un objeto de esquema JSON que describe esta propiedad.
parameters.(key).additionalProperties nested object Si se trata de un esquema de un objeto, esta propiedad es el esquema de cualquier propiedad adicional con claves dinámicas en este objeto.
parameters.(key).items nested object Si se trata de un esquema de una matriz, esta propiedad es el esquema de cada elemento de la matriz.
parameters.(key).annotations object Información adicional sobre esta propiedad.
parameters.(key).annotations.required[] list Lista de métodos que requieren esta propiedad en las solicitudes.
auth object Información de autenticación.
auth.oauth2 object Información de autenticación OAuth 2.0.
auth.oauth2.scopes object Permisos de OAuth 2.0 disponibles.
auth.oauth2.scopes.(key) object Valor del ámbito.
auth.oauth2.scopes.(key).description string Descripción del ámbito.
features[] list Lista de funciones admitidas por esta API.
schemas object Los esquemas de esta API.
schemas.(key) nested object Descripción de un esquema concreto.
schemas.(key).id string Identificador único de este esquema. Ejemplo: URL
schemas.(key).type string Tipo de valor de este esquema. Puedes consultar una lista de valores en la sección "type" del esquema JSON.
schemas.(key).$ref string Referencia a otro esquema. El valor de esta propiedad es el ID de otro esquema.
schemas.(key).description string Descripción de este objeto.
schemas.(key).default string El valor predeterminado de esta propiedad (si existe).
schemas.(key).required boolean Indica si el parámetro es obligatorio.
schemas.(key).deprecated boolean Indica si este esquema está obsoleto.
schemas.(key).format string Una expresión regular o una clave adicionales que ayudan a restringir el valor. Para obtener más información, consulta el resumen de tipos y formatos.
schemas.(key).pattern string La expresión regular a la que debe ajustarse este parámetro.
schemas.(key).minimum string El valor mínimo de este parámetro.
schemas.(key).maximum string El valor máximo de este parámetro.
schemas.(key).enum[] list Valores que puede adoptar este parámetro (si es una enumeración).
schemas.(key).enumDescriptions[] list Las descripciones de las enumeraciones. Cada posición se corresponde con el valor correspondiente de la matriz enum.
schemas.(key).enumDeprecated[] list El estado de obsolescencia de las enumeraciones. Cada posición se asigna al valor correspondiente de la matriz enum.
schemas.(key).repeated boolean Si este parámetro puede aparecer varias veces.
schemas.(key).location string Indica si este parámetro se incluye en la consulta o en la ruta de las solicitudes REST.
schemas.(key).properties object Si se trata de un esquema de un objeto, enumera el esquema de cada propiedad de este objeto.
schemas.(key).properties.(key) nested object Una sola propiedad de este objeto. El valor es un objeto de esquema JSON que describe esta propiedad.
schemas.(key).additionalProperties nested object Si se trata de un esquema de un objeto, esta propiedad es el esquema de cualquier propiedad adicional con claves dinámicas en este objeto.
schemas.(key).items nested object Si se trata de un esquema de una matriz, esta propiedad es el esquema de cada elemento de la matriz.
schemas.(key).annotations object Información adicional sobre esta propiedad.
schemas.(key).annotations.required[] list Lista de métodos que requieren esta propiedad en las solicitudes.
methods object Métodos de nivel de API de esta API.
methods.(key) nested object Descripción de un método concreto.
methods.(key).id string ID único de este método. Esta propiedad se puede usar para asociar métodos entre diferentes versiones de Discovery.
methods.(key).description string Descripción de este método.
methods.(key).deprecated boolean Indica si este método está obsoleto.
methods.(key).parameters object Detalles de todos los parámetros de este método.
methods.(key).parameters.(key) nested object Detalles de un solo parámetro de este método.
methods.(key).parameters.(key).id string Identificador único de este esquema.
methods.(key).parameters.(key).type string Tipo de valor de este esquema.   Puedes consultar una lista de valores en la sección "type" del esquema JSON.
methods.(key).parameters.(key).$ref string Referencia a otro esquema. El valor de esta propiedad es el ID de otro esquema.
methods.(key).parameters.(key).description string Descripción de este objeto.
methods.(key).parameters.(key).default string El valor predeterminado de esta propiedad (si existe).
methods.(key).parameters.(key).required boolean Indica si el parámetro es obligatorio.
methods.(key).parameters.(key).deprecated boolean Si el parámetro está obsoleto.
methods.(key).parameters.(key).format string Una expresión regular o una clave adicionales que ayudan a restringir el valor. Para obtener más información, consulta el resumen de tipos y formatos.
methods.(key).parameters.(key).pattern string La expresión regular a la que debe ajustarse este parámetro.
methods.(key).parameters.(key).minimum string El valor mínimo de este parámetro.
methods.(key).parameters.(key).maximum string El valor máximo de este parámetro.
methods.(key).parameters.(key).enum[] list Valores que puede adoptar este parámetro (si es una enumeración).
methods.(key).parameters.(key).enumDescriptions[] list Las descripciones de las enumeraciones. Cada posición se corresponde con el valor correspondiente de la matriz enum.
methods.(key).parameters.(key).enumDeprecated[] list El estado de obsolescencia de las enumeraciones. Cada posición se asigna al valor correspondiente de la matriz enum.
methods.(key).parameters.(key).repeated boolean Si este parámetro puede aparecer varias veces.
methods.(key).parameters.(key).location string Indica si este parámetro se incluye en la consulta o en la ruta de las solicitudes REST.
methods.(key).parameters.(key).properties object Si se trata de un esquema de un objeto, indica el esquema de cada propiedad de este objeto.
methods.(key).parameters.(key).properties.(key) nested object Una sola propiedad de este objeto. El valor es un objeto de esquema JSON que describe esta propiedad.
methods.(key).parameters.(key).additionalProperties nested object Si se trata de un esquema de un objeto, esta propiedad es el esquema de cualquier propiedad adicional con claves dinámicas en este objeto.
methods.(key).parameters.(key).items nested object Si se trata de un esquema de una matriz, esta propiedad es el esquema de cada elemento de la matriz.
methods.(key).parameters.(key).annotations object Información adicional sobre esta propiedad.
methods.(key).parameters.(key).annotations.required[] list Lista de métodos para los que se requiere esta propiedad en las solicitudes.
methods.(key).parameterOrder[] list Lista ordenada de parámetros obligatorios. Sirve como pista para los clientes sobre cómo estructurar las firmas de sus métodos. La matriz se ordena de forma que el parámetro más significativo aparezca en primer lugar.
methods.(key).scopes[] list Ámbitos de OAuth 2.0 aplicables a este método.
methods.(key).supportsMediaDownload boolean Indica si este método admite descargas de contenido multimedia.
methods.(key).supportsMediaUpload boolean Indica si este método admite subidas de contenido multimedia.
methods.(key).mediaUpload object Parámetros de subida de contenido multimedia.
methods.(key).mediaUpload.accept[] list Intervalos de medios MIME para las subidas de contenido multimedia aceptables en este método.
methods.(key).mediaUpload.maxSize string Tamaño máximo de una subida de contenido multimedia, como "1 MB", "2 GB" o "3 TB".
methods.(key).supportsSubscription boolean Indica si este método admite suscripciones.
baseUrl string [OBSOLETO] URL base de las solicitudes REST.
basePath string [OBSOLETO] Ruta base de las solicitudes REST.
servicePath string La ruta base de todas las solicitudes REST.
batchPath string Ruta de las solicitudes por lotes de REST.
methods.(key).path string Ruta de URI de este método REST. Se debe usar junto con la propiedad servicePath a nivel de API.
methods.(key).httpMethod string Método HTTP utilizado por este método.
methods.(key).request object Esquema de la solicitud.
methods.(key).request.$ref string ID del esquema de la solicitud.
methods.(key).request.parameterName string [DEPRECATED] Algunas APIs tienen este campo por motivos de compatibilidad con versiones anteriores. Se puede ignorar sin problemas.
methods.(key).response object Esquema de la respuesta.
methods.(key).response.$ref string ID del esquema de respuesta.
methods.(key).mediaUpload.protocols object Protocolos de subida admitidos.
methods.(key).mediaUpload.protocols.simple object Admite la subida como una sola solicitud HTTP.
methods.(key).mediaUpload.protocols.simple.multipart boolean Es true si este endpoint admite la subida de contenido multimedia multiparte.
methods.(key).mediaUpload.protocols.simple.path string La ruta del URI que se va a usar para la subida. Se debe usar junto con la propiedad rootURL a nivel de API.
methods.(key).mediaUpload.protocols.resumable object Admite el protocolo de subida de contenido multimedia reanudable.
methods.(key).mediaUpload.protocols.resumable.multipart boolean true si este endpoint admite la subida de contenido multimedia multiparte.
methods.(key).mediaUpload.protocols.resumable.path string La ruta del URI que se va a usar para la subida. Se debe usar junto con la propiedad rootURL a nivel de API.
resources object Los recursos de esta API.
resources.(key) nested object Descripción de un recurso concreto. Contiene métodos y subrecursos relacionados con este recurso.
resources.(key).methods object Métodos de este recurso.
resources.(key).methods.(key) nested object Descripción de los métodos de este recurso.
resources.(key).methods.(key).id string ID único de este método. Esta propiedad se puede usar para asociar métodos entre diferentes versiones de Discovery.
resources.(key).methods.(key).path string Ruta de URI de este método REST. Se debe usar junto con la propiedad servicePath a nivel de API.
resources.(key).methods.(key).flatPath string La ruta URI de este método REST en formato RFC 6570 sin funciones de nivel 2 ({+var}). Complementaria de la propiedad path.
resources.(key).methods.(key).httpMethod string Método HTTP utilizado por este método.
resources.(key).methods.(key).description string Descripción de este método.
resources.(key).methods.(key).deprecated boolean Indica si este método está obsoleto.
resources.(key).methods.(key).parameters object Detalles de todos los parámetros de este método.
resources.(key).methods.(key).parameters.(key) nested object Detalles de un solo parámetro de este método.
resources.(key).methods.(key).parameters.(key).id string Identificador único de este esquema.
resources.(key).methods.(key).parameters.(key).type string Tipo de valor de este esquema.  Puedes consultar una lista de valores en la sección "type" del esquema JSON.
resources.(key).methods.(key).parameters.(key).$ref string Referencia a otro esquema. El valor de esta propiedad es el "ID" de otro esquema.
resources.(key).methods.(key).parameters.(key).description string Descripción de este objeto.
resources.(key).methods.(key).parameters.(key).default string El valor predeterminado de esta propiedad (si existe).
resources.(key).methods.(key).parameters.(key).required boolean Indica si el parámetro es obligatorio.
resources.(key).methods.(key).parameters.(key).deprecated boolean Si el parámetro está obsoleto.
resources.(key).methods.(key).parameters.(key).format string Una expresión regular o una clave adicionales que ayudan a restringir el valor. Para obtener más información, consulta el resumen de tipos y formatos.
resources.(key).methods.(key).parameters.(key).pattern string La expresión regular a la que debe ajustarse este parámetro.
resources.(key).methods.(key).parameters.(key).minimum string El valor mínimo de este parámetro.
resources.(key).methods.(key).parameters.(key).maximum string El valor máximo de este parámetro.
resources.(key).methods.(key).parameters.(key).enum[] list Valores que puede adoptar este parámetro (si es una enumeración).
resources.(key).methods.(key).parameters.(key).enumDescriptions[] list Las descripciones de las enumeraciones. Cada posición se corresponde con el valor correspondiente de la matriz enum.
resources.(key).methods.(key).parameters.(key).enumDeprecated[] list El estado de obsolescencia de las enumeraciones. Cada posición se asigna al valor correspondiente de la matriz enum.
resources.(key).methods.(key).parameters.(key).repeated boolean Si este parámetro puede aparecer varias veces.
resources.(key).methods.(key).parameters.(key).location string Indica si este parámetro se incluye en la consulta o en la ruta de las solicitudes REST.
resources.(key).methods.(key).parameters.(key).properties object Si se trata de un esquema de un objeto, enumera el esquema de cada propiedad de este objeto.
resources.(key).methods.(key).parameters.(key).properties.(key) nested object Una sola propiedad de este objeto. El valor es un objeto de esquema JSON que describe esta propiedad.
resources.(key).methods.(key).parameters.(key).additionalProperties nested object Si se trata de un esquema de un objeto, esta propiedad es el esquema de cualquier propiedad adicional con claves dinámicas en este objeto.
resources.(key).methods.(key).parameters.(key).items nested object Si se trata de un esquema de una matriz, esta propiedad es el esquema de cada elemento de la matriz.
resources.(key).methods.(key).parameters.(key).annotations object Información adicional sobre esta propiedad.
resources.(key).methods.(key).parameters.(key).annotations.required[] list Lista de métodos que requieren esta propiedad en las solicitudes.
resources.(key).methods.(key).parameterOrder[] list Lista ordenada de parámetros obligatorios. Sirve como pista para los clientes sobre cómo estructurar las firmas de sus métodos. La matriz se ordena de forma que el parámetro más significativo aparezca en primer lugar.
resources.(key).methods.(key).request object Esquema de la solicitud.
resources.(key).methods.(key).request.$ref string ID del esquema de la solicitud.
resources.(key).methods.(key).response object Esquema de la respuesta.
resources.(key).methods.(key).response.$ref string ID del esquema de respuesta.
resources.(key).methods.(key).scopes[] list Ámbitos de OAuth 2.0 aplicables a este método.
resources.(key).methods.(key).supportsMediaDownload boolean Indica si este método admite descargas de contenido multimedia.
resources.(key).methods.(key).supportsMediaUpload boolean Indica si este método admite subidas de contenido multimedia.
resources.(key).methods.(key).mediaUpload object Parámetros de subida de contenido multimedia.
resources.(key).methods.(key).mediaUpload.accept[] list Intervalos de medios MIME para las subidas de contenido multimedia aceptables en este método.
resources.(key).methods.(key).mediaUpload.maxSize string Tamaño máximo de una subida de contenido multimedia, como "1 MB", "2 GB" o "3 TB".
resources.(key).methods.(key).mediaUpload.protocols object Protocolos de subida admitidos.
resources.(key).methods.(key).mediaUpload.protocols.simple object Admite la subida como una sola solicitud HTTP.
resources.(key).methods.(key).mediaUpload.protocols.simple.multipart boolean true si este endpoint admite la subida de contenido multimedia multiparte.
resources.(key).methods.(key).mediaUpload.protocols.simple.path string La ruta del URI que se va a usar para la subida. Se debe usar junto con la propiedad rootURL a nivel de API.
resources.(key).methods.(key).mediaUpload.protocols.resumable object Admite el protocolo de subida de contenido multimedia reanudable.
resources.(key).methods.(key).mediaUpload.protocols.resumable.multipart boolean true si este endpoint admite la subida de contenido multimedia multiparte.
resources.(key).methods.(key).mediaUpload.protocols.resumable.path string La ruta del URI que se va a usar para la subida. Se debe usar junto con la propiedad rootURL a nivel de API.
resources.(key).methods.(key).supportsSubscription boolean Indica si este método admite suscripciones.
resources.(key).deprecated boolean Indica si este recurso está obsoleto.
resources.(key).resources object Recursos secundarios de este recurso.
resources.(key).resources.(key) nested object Descripción de los subrecursos de este recurso.