Várias operações que pede são de execução prolongada, como a criação de um conjunto de produtos através da importação em massa, a eliminação de um conjunto de produtos e a eliminação de produtos órfãos. Estes tipos de pedidos devolvem um JSON com um ID da operação que pode usar para obter o estado da operação.
Por exemplo, um pedido de eliminação em lote (purge
) devolve o seguinte JSON:
{ "name": "projects/project-id/locations/location-id/operations/bc4e1d412863e626" }
Neste caso, o ID da operação é bc4e1d412863e626
. Os exemplos seguintes mostram como obter o estado desta operação com este ID.
REST
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
- PROJECT_ID: o ID do seu Google Cloud projeto.
- LOCATION_ID: um identificador de localização válido. Os identificadores de localização válidos são:
us-west1
,us-east1
,europe-west1
easia-east1
. - OPERATION_ID: o ID da sua operação. O ID é o último elemento do nome
da sua operação. Por exemplo:
- Nome da operação:
projects/PROJECT_ID/locations/LOCATION_ID/operations/bc4e1d412863e626
- ID da operação:
bc4e1d412863e626
- Nome da operação:
Método HTTP e URL:
GET https://vision.googleapis.com/v1/locations/location-id/operations/operation-id
Para enviar o seu pedido, escolha uma destas opções:
curl
Execute o seguinte comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: project-id" \
"https://vision.googleapis.com/v1/locations/location-id/operations/operation-id"
PowerShell
Execute o seguinte comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred"; "x-goog-user-project" = "project-id" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://vision.googleapis.com/v1/locations/location-id/operations/operation-id" | Select-Object -Expand Content
{ "name": "locations/location-id/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.cloud.vision.v1.BatchOperationMetadata", "state": "SUCCESSFUL", "submitTime": "2019-09-04T15:58:39.131591882Z", "endTime": "2019-09-04T15:58:43.099020580Z" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.vision.v1.PurgeProductsRequest", "parent": "projects/project-id/locations/location-id", "productSetPurgeConfig": { "productSetId": "project-set-id" }, "force": true } }
Deverá ver um resultado semelhante ao seguinte para uma operação de eliminação de produtos órfãos concluída:
{ "name": "locations/location-id/operations/operation-id", "metadata": { "@type": "type.googleapis.com/google.cloud.vision.v1.BatchOperationMetadata", "state": "SUCCESSFUL", "submitTime": "2019-09-04T16:08:38.278197397Z", "endTime": "2019-09-04T16:08:45.075778639Z" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.vision.v1.PurgeProductsRequest", "parent": "projects/project-id/locations/location-id", "deleteOrphanProducts": true, "force": true } }