Operation

Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Este recurso representa una operación de larga duración que es el resultado de una llamada a la API de red.

Representación JSON
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // Union field result can be only one of the following:
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // End of list of possible types for union field result.
}
Campos
name

string

El nombre asignado por el servidor, que es único dentro del mismo servicio que lo devuelve originalmente. Si usa la asignación HTTP predeterminada, el name debe ser un nombre de recurso que termine en operations/{unique_id} .

metadata

object

Metadatos específicos del servicio asociados con la operación. Por lo general, contiene información sobre el progreso y metadatos comunes, como la hora de creación. Es posible que algunos servicios no proporcionen dichos metadatos. Cualquier método que devuelva una operación de larga duración debe documentar el tipo de metadatos, si corresponde.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene un URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" } .

done

boolean

Si el valor es false , significa que la operación aún está en curso. Si es true , la operación se completa y el error o la response están disponibles.

result campo de unión. El resultado de la operación, que puede ser un error o una response válida. Si se done == false , no se establece ni el error ni la response . Si done == true , se establece exactamente uno de error o response . result puede ser solo uno de los siguientes:
error

object ( Status )

El error resultado de la operación en caso de falla o cancelación.

response

object

La respuesta normal de la operación en caso de éxito. Si el método original no devuelve datos sobre el éxito, como Delete , la respuesta es google.protobuf.Empty . Si el método original es Get / Create / Update estándar, la respuesta debe ser el recurso. Para otros métodos, la respuesta debe tener el tipo XxxResponse , donde Xxx es el nombre del método original. Por ejemplo, si el nombre del método original es TakeSnapshot() , el tipo de respuesta inferida es TakeSnapshotResponse .

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene un URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" } .

Estado

El tipo de Status define un modelo de error lógico que es adecuado para diferentes entornos de programación, incluidas las API de REST y las API de RPC. Es utilizado por gRPC . Cada mensaje de Status contiene tres datos: código de error, mensaje de error y detalles del error.

Puede obtener más información sobre este modelo de error y cómo trabajar con él en la Guía de diseño de API .

Representación JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Campos
code

integer

El código de estado, que debe ser un valor de enumeración de google.rpc.Code .

message

string

Un mensaje de error dirigido al desarrollador, que debe estar en inglés. Cualquier mensaje de error de cara al usuario debe ser localizado y enviado en el campo google.rpc.Status.details , o debe ser localizado por el cliente.

details[]

object

Una lista de mensajes que contienen los detalles del error. Existe un conjunto común de tipos de mensajes que pueden utilizar las API.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene un URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" } .