Delete selected routes

このページでは、Roads Selection API を使用してデータの収集を停止する方法について説明します。

  • ルートを削除する: delete エンドポイントを使用して、単一のルートのデータの収集を停止します。
  • ルートを一括削除する: batchDelete エンドポイントを使用して、1 つのリクエストで複数のルートのデータの収集を停止します。

ルートの削除

delete エンドポイントに DELETE リクエストを送信して、プロジェクトから選択したルートを削除し、データの収集を停止します。

https://roads.googleapis.com/selection/v1/projects/PROJECT_NUMBER/selectedRoutes/SELECTED_ROUTE_ID

リクエストには、プロジェクト番号と、削除する SelectedRoute の name を含める必要があります。

次のコードサンプルは、delete エンドポイントへの DELETE リクエストの構造を示しています。

curl -X DELETE \
-H 'X-Goog-User-Project: PROJECT_NUMBER' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
"https://roads.googleapis.com/selection/v1/projects/"\
"PROJECT_NUMBER/selectedRoutes/SELECTED_ROUTE_ID"

成功すると、API は空の JSON オブジェクトを返します。

ルートを一括削除する

1 つのリクエストで複数のルートを削除するには、batchDelete エンドポイントを使用します。このエンドポイントを使用すると、1 回の呼び出しで最大 1,000 個のルートを削除できます。バッチ削除はアトミックです。バッチ リクエスト内のルートが失敗するか、欠落している場合、バッチ内のルートは削除されません。

POST リクエストを batchDelete エンドポイントに送信します。

https://roads.googleapis.com/selection/v1/projects/PROJECT_NUMBER/selectedRoutes:batchDelete

リクエストの本文は、names 配列を含む JSON オブジェクトにする必要があります。この配列内の各文字列要素は、削除する SelectedRoute の name です。

次のコードサンプルは、batchDelete エンドポイントへの POST リクエストの構造を示しています。

curl -X POST -d '
    {"names": [
      "projects/PROJECT_NUMBER/selectedRoutes/SELECTED_ROUTE_ID_1",
      "projects/PROJECT_NUMBER/selectedRoutes/SELECTED_ROUTE_ID_2"
    ]}' \
-H 'X-Goog-User-Project: PROJECT_NUMBER' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
"https://roads.googleapis.com/selection/v1/projects/"\
"PROJECT_NUMBER/selectedRoutes:batchDelete"

成功すると、API は空の JSON オブジェクトを返します。削除されたルートでのデータの収集は直ちに停止します。リソースの完全な削除はバックグラウンドで完了します。バッチサイズが大きい場合は、完了までに数分かかることがあります。

get オペレーションを使用して、ルートのステータスを確認します。完全削除が完了した後にリクエストを再試行すると、404 Not Found エラーが返され、リソースの削除が完了したことが確認されます。