ガイドAPIリファレンス
ガイド

ルートハンドルの使用方法

ルートハンドルを生成するには、ルート計算リクエストでreturn=routeHandleを指定する必要があります。

curl -gX GET 'https://router.hereapi.com/v8/routes?'\
'origin=52.550028,13.302349&'\
'destination=52.553272,13.305195&'\
'return=routeHandle&'\
'transportMode=car&'\
'apiKey=YOUR_API_KEY'
{
  "routes": [
    {
      "id": "84cfeded-3a5c-4cc2-8b74-1dce40f36710",
      "sections": [
        {
          ...
        }
      ],
      "routeHandle": "{ROUTE_HANDLE}"
    }
  ]
}

ハンドルにはルートのパスが保存されますが、リクエストで送信したパラメーター (transportModedepartureTimeなど) は保存されません。

ルートハンドルを使用する

以前に生成されたrouteHandleを使用してルートを再現するには、他の必要なパラメーターとともにハンドルを/v8/routes/エンドポイントに送信する必要があります。

curl -gX GET 'https://router.hereapi.com/v8/routes/{ROUTE_HANDLE}?'\
'transportMode=car&'\
'apiKey=YOUR_API_KEY'

元のリクエストで使用されたパラメーターと同じものを送信する必要はありません。例については、このチュートリアルを参照してください。

ルートハンドルの無効化

routeHandleは、ルート上のマップデータの変更やサービスの変更により無効になる可能性があり、その場合、サービスは次のエラーでレスポンスします。

{
  "title": "Invalid request",
  "status": 400,
  "code": "E605201",
  "cause": "RouteHandle not valid (anymore). (Re-)calculate route to retrieve new handle.",
  "action": "",
  "correlationId": "bf58bdea-ae23-49f5-8323-ad3a05fafb33"
}

通常は元のルートを再計算して、このユースケースへの対処を準備する必要があります。

ルートハンドルの制限

ルートハンドル形式の制限により、250セクションを超えるルートハンドルがサポートされていません。