Como pesquisar operações de longa duração

Nesta página, descrevemos como determinar o status de conclusão de métodos assíncronos. Esses métodos retornam uma operação de longa duração que fornece informações sobre o progresso e o status final dela.

Os seguintes métodos retornam uma operação de longa duração:

  • CreateKey
  • UpdateKey
  • DeleteKey
  • UndeleteKey

Quando você faz uma solicitação para um desses métodos, em caso de sucesso, o método retorna um identificador de operação no campo name, que representa o trabalho em andamento no servidor. Por exemplo:

{
  "name": "operations/akmf.6573437d-47c1-42c4-b817-0562f514f6ff"
}

Para verificar o status da operação, use o método operations.get com o valor do campo name:

  gcurl https://apikeys.googleapis.com/v2/operations/akmf.6573437d-47c1-42c4-b817-0562f514f6ff

Para pesquisar uma operação, recomendamos que você invoque repetidamente o método operations.get com um intervalo de espera de 10 segundos até que a resposta inclua "done": true:

{
  "name": "operations/akmf.6573437d-47c1-42c4-b817-0562f514f6ff",
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.api.apikeys.v2.Key",
    "name": "projects/103621867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2",
    "keyString": "----REDACTED----",
    "createTime": "2019-02-04T23:56:28.531Z",
    "uid": "b7ff1f9f-8275-410a-94dd-3855ee9b5dd2",
    "updateTime": "2019-02-04T23:56:28.531Z",
    "restrictions": {
      "browserKeyRestrictions": {
      }
    },
    "etag": "k0bsYGkIvSxDVwNxyw49NQ=="
  }
}