REST Resource: operations

Recurso: operação

Este recurso representa uma operação de longa duração resultante de uma chamada de API de rede.

Representação 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

O nome atribuído pelo servidor, que é exclusivo somente no mesmo serviço que o retorna originalmente. Se você usar o mapeamento padrão de HTTP, name precisa ser um nome de recurso que termine com operations/{unique_id}.

metadata

object

Um objeto QueryMetadata contendo dados específicos do serviço associados à operação.

Um objeto contendo campos de um tipo arbitrário. Um campo adicional "@type" contém uma URI que identifica o tipo. Exemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

done

boolean

Se o valor for false, significa que a operação ainda está em andamento. Se for true, a operação será concluída e error ou response estarão disponíveis.

Campo de união result. O resultado da operação, que pode ser um error ou uma response válida. Se done == false, nem error ou response estão definidos. Se done == true, exatamente um entre error ou response pode ser definido. Alguns serviços podem não fornecer o resultado. result pode ser apenas de um dos tipos a seguir:
error

object (Status)

Resultado do erro da operação em caso de falha ou cancelamento.

response

object

Um objeto QueryResponse, retornado se a operação de consulta for bem-sucedida.

Um objeto contendo campos de um tipo arbitrário. Um campo adicional "@type" contém uma URI que identifica o tipo. Exemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Status

O tipo Status define um modelo de erro lógico que é adequado a diferentes ambientes de programação, incluindo APIs REST e RPC. É usado por gRPC (em inglês). Cada mensagem Status contém três partes de dados: código do erro, mensagem de erro e detalhes do erro.

É possível descobrir mais sobre esse modelo de erro e como trabalhar com ele no Guia de design de API.

Representação JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Campos
code

integer

O código de status, que precisa ser um valor de enumeração de google.rpc.Code.

message

string

Uma mensagem de erro em inglês para o desenvolvedor. Qualquer mensagem de erro para o usuário precisa ser localizada e enviada no campo google.rpc.Status.details, ou localizada pelo cliente.

details[]

object

Uma lista de mensagens com os detalhes do erro. Há um conjunto comum de tipos de mensagens para as APIs usarem.

Um objeto contendo campos de um tipo arbitrário. Um campo adicional "@type" contém uma URI que identifica o tipo. Exemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Métodos

cancel

Inicia o cancelamento assíncrono de uma operação de longa duração.

delete

Exclui uma operação de longa duração.

get

Recebe o estado mais recente de uma operação de longa duração.

list

Lista as operações correspondentes ao filtro especificado na solicitação.

wait

Espera até que a operação de longa duração especificada seja concluída ou atinja no máximo um tempo limite especificado, retornando o estado mais recente.