Parmi les opérations que vous demandez, plusieurs ont une exécution longue, comme la création d'un ensemble de produits via l'importation groupée, la suppression définitive d'un ensemble de produits et la suppression définitive de produits orphelins. Ces types de requêtes renvoient une réponse JSON avec un ID d'opération que vous pouvez utiliser pour obtenir l'état de l'opération.
Par exemple, une requête de suppression par lot (purge
) renvoie la réponse JSON suivante :
{ "name": "projects/project-id/locations/location-id/operations/bc4e1d412863e626" }
Dans ce cas, l'ID de l'opération est bc4e1d412863e626
. Les exemples ci-après montrent comment obtenir l'état de cette opération avec cet ID.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID de votre projet Google Cloud.
- LOCATION_ID : identifiant d'emplacement valide. Les identifiants d'emplacement valides sont :
us-west1
,us-east1
,europe-west1
etasia-east1
. - OPERATION_ID : ID de l'opération. L'ID est le dernier élément du nom de l'opération. Exemple :
- Nom de l'opération :
projects/PROJECT_ID/locations/LOCATION_ID/operations/bc4e1d412863e626
- ID de l'opération :
bc4e1d412863e626
- Nom de l'opération :
Méthode HTTP et URL :
GET https://vision.googleapis.com/v1/locations/location-id/operations/operation-id
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
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
Exécutez la commande suivante :
$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 } }
Pour une opération de suppression définitive des produits orphelins réussie, le résultat devrait ressembler à ceci :
{ "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 } }