Routes API の概要

Routes API は、HTTPS リクエストを受け入れ、2 地点間の最適なルートか、異なる出発地と目的地間のルートのマトリックスに対する距離と移動時間を返すサービスです。

Routes API を使用する理由

Routes API では、交通機関の詳細、最新の交通状況や道路状況、経路の設定を使用して、正確なルートとルート情報を取得できます。

  • 各種移動手段の種類と機能

  • 車両の進行方向

  • 乗り降りする道路の片側

  • 交通状況と通行止め

  • 危険な場所を避ける、安全な乗車エリアを指定するなど、安全上の懸念がある場合

  • 通行料金や、所要時間、距離、燃料効率などのルート メタデータなどのオプション機能を使用して、ルーティングのニーズ全体でレイテンシ、品質、費用のバランスを取る

次のように、ディスパッチ スケジューリングで最も効率的なルートを決定することもできます。

  • 一連の荷物を集荷する一連の作業者を割り当てる最適な方法

  • 最終的な配送先への荷物の発送元に最適な倉庫を決定する

Routes API でできること

Routes API では、次の 2 つの主要カテゴリのルート情報を取得できます。

  • ロケーションから単一または複数の宛先へのルート

  • 多数の出発地と目的地を結ぶ可能なルートのマトリックス

単一または複数の目的地のルートを取得する

Routes API の Compute Routes メソッドを使用すると、位置間を計算できます。

  • さまざまな移動方法のルートを取得して、1 つまたは複数の目的地へのルートを取得します。

    • 交通機関、自動車、二輪車、徒歩、自転車などの移動手段。

    • 一連のウェイポイント。最も効率的な移動順序に最適化できます。

  • 出発地、目的地、地点を指定する複数の方法:

    • テキスト文字列。例: 「Chicago, IL」、「Darwin, NT, Australia」、「1800 Amphitheatre Parkway, Mountain View, CA 94043」、「CWF6+FWX Mountain View, California」

    • プレイス ID

    • 緯度と経度の座標(必要に応じて車両の向きを含む)

  • ニーズや目標に応じてルート オプションを微調整します。

  • フィールド マスクを使用して必要なデータのみをリクエストすることで、レイテンシと品質を制御します。これにより、不要な処理時間を回避し、課金レートを高めることができます。詳しくは、返される情報を選択するをご覧ください。

候補となるルートのマトリックスを取得する

Routes API の Compute Route Matrix メソッドは、複数の出発地と目的地の間の推奨ルートに関する情報のマトリックス(距離や到着予定時刻など)を提供し、ビジネスニーズに基づいて最適な出発地と目的地を選択するのに役立ちます。次の種類の距離データをリクエストできます。

  • 選択した移動手段の距離

  • 距離(キロメートルまたはマイル)

  • 渋滞中の推定移動時間

距離データを使用すると、考えられる複数の出発地と目的地の間で乗客、出荷、作業員をルーティングする最も効率的な方法を決定できます。

マトリックス全体が計算される前にレスポンスの要素をストリーミングすると、レスポンスのレイテンシを短縮できます。

1 つのサーバーサイドのリクエストに対して、出発地の数 × 目的地の数 × 625 で、複数の出発地と目的地を指定できます。

Routes API の仕組み

Routes API には、ComputeRouteComputeRouteMatrix の 2 つのメソッドがあります。

ComputeRoute

Routes API の ComputeRoute メソッドは、リクエストの詳細を含む JSON リクエスト本文を持つ HTTP POST リクエストを受け入れます。必須ののは、origin、destination、travelMode、返されるフィールドを指定するためのフィールド マスクです。

curl -X POST -d '{
    "origin": {
      "address": "1800 Amphitheatre Parkway, Mountain View, CA 94043"
    },
    "destination": {
      "address": "Sloat Blvd &, Upper Great Hwy, San Francisco, CA 94132"
    },
  "travelMode": "DRIVE"
  }' \
  -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
  -H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters' \
  'https://routes.googleapis.com/directions/v2:computeRoutes'

サービスはリクエストされたルートを計算し、リクエストしたフィールドを返します。

ComputeRouteMatrix

Routes API ComputeRouteMatrix は、リクエストの詳細を含む JSON リクエスト本文を持つ HTTP POST リクエストを受け入れます。1 つ以上の出発地、2 つ以上の目的地、travelMode、返すフィールドを指定するためのフィールド マスクが必要です。

curl -X POST -d '{
  "origins": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420761,
            "longitude": -122.081356
          }
        }
      }
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.403184,
            "longitude": -122.097371
          }
        }
      }
    }
  ],
  "destinations": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420999,
            "longitude": -122.086894
          }
        }
      }
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.383047,
            "longitude": -122.044651
          }
        }
      }
    }
  ],
  "travelMode": "DRIVE"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status,condition' \
'https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix'

レスポンスには、出発地と目的地のすべてのウェイポイントを組み合わせた可能なルートが含まれます。

関連情報

次の表に、Routes API で利用可能なリソースと返されるデータを示します。

データリソース 返されたデータ 戻り値の形式
ComputeRoute ルートのルート、区間、歩数を、代替ルートとともに返します。 JSON
ComputeRouteMatrix 出発地の 1 つの地点から目的地の 1 つの地点までのルートの配列を返します。

Routes API の使用方法

1 セットアップする 最初に Google Cloud プロジェクトをセットアップするに進み、以下の設定手順を完了します。
2 ルートを計算して回答を確認する 詳しくは、ルートを取得するルートのレスポンスを確認するをご覧ください。
3 ルートのマトリックスを計算して回答を確認する 詳しくは、ルート マトリックスを取得するルート マトリックスのレスポンスを確認するをご覧ください。

利用可能なクライアント ライブラリ

Routes API で使用可能なクライアント ライブラリのリストについては、クライアント ライブラリをご覧ください。

次のステップ