オペレーションのステータスの取得

一括インポートによる商品セットの作成、商品セットの削除、孤立した商品の削除などは長時間実行オペレーションです。これらのタイプのオペレーションをリクエストすると、オペレーション ID を含む JSON が返されます。この ID を使用すると、オペレーションのステータスを取得できます。

たとえば、バッチ削除(purge)リクエストは次の JSON を返します。

{
"name": "projects/project-id/locations/location-id/operations/bc4e1d412863e626"
}

この場合、bc4e1d412863e626 がオペレーション ID です。次のサンプルでは、この ID のオペレーションのステータスを取得します。

REST

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_ID: Google Cloud プロジェクト ID。
  • LOCATION_ID: 有効なロケーション ID。有効なロケーション ID は us-west1us-east1europe-west1asia-east1 です。
  • OPERATION_ID: オペレーションの ID。この ID は、オペレーションの名前の最後の要素です。例:
    • オペレーション名: projects/PROJECT_ID/locations/LOCATION_ID/operations/bc4e1d412863e626
    • オペレーション ID: bc4e1d412863e626

HTTP メソッドと URL:

GET https://vision.googleapis.com/v1/locations/location-id/operations/operation-id

リクエストを送信するには、次のいずれかのオプションを選択します。

curl

次のコマンドを実行します。

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

次のコマンドを実行します。

$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
  }
}

孤立した商品を削除するオペレーションが完了すると、次のような出力が表示されます。

{
  "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
  }
}