長時間実行オペレーション

Submission API は非同期で、長時間実行オペレーションを返します。このメソッドがレスポンスを返すときにオペレーションが完了していない場合があります。

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

以下に、オペレーションのステータスをポーリングする方法を示します。

Operations タイプの GET メソッドを呼び出します。

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

  • project-number: Google Cloud プロジェクト番号
  • operation-id: オペレーション ID

HTTP メソッドと URL:

GET https://webrisk.googleapis.com/v1/projects/project-number/operations/operation-id

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

curl

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

curl -X GET \
-H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"https://webrisk.googleapis.com/v1/projects/project-number/operations/operation-id"

PowerShell

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

$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://webrisk.googleapis.com/v1/projects/project-number/operations/operation-id" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。

{
  "name": "projects/project-number/operations/operation-id",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.webrisk.v1.SubmitUriMetadata",
    "state": "RUNNING"
  }
  "done": false,
  ...
}

オペレーションが完了すると、state に次のいずれかの値が返されます。

  • SUCCEEDED: 送信された URL がセーフ ブラウジング ブロックリストに追加されたことを示します。

  • CLOSED: 送信された URL がセーフ ブラウジング ポリシーの違反として検出されず、直近の 24 時間以内にセーフ ブラウジング ブロックリストに追加されなかったことを示します。