Routes API を使用する理由
Routes API を使用すると、交通機関の詳細、最新の交通状況と道路状況、ルート設定を使用して、正確なルートやルート情報を取得できます。
さまざまな交通機関の種類と機能
車両が向かっている方角
乗車または降車する道路の側
交通状況と通行止め
危険な地域を避ける、安全な集荷場所を指定するなど、安全に関する懸念
通行料やルートのメタデータ(時間、距離、燃費など)などのオプション機能を使用して、ルーティングのニーズに応じてレイテンシ、品質、費用のバランスを取る
配車スケジュールに最も効率的なルートを決定することもできます。次に例を示します。
一連のパッケージを回収するワーカーを割り当てる最適な方法
最終目的地に荷物を配送するのに最適な倉庫を特定する
Routes API でできること
Routes API を使用すると、主に次の 2 つのカテゴリのルーティング情報を取得できます。
ある場所から 1 つまたは複数の目的地までのルート
複数の出発地と目的地間の可能な経路のマトリックス。
1 つまたは複数の目的地の経路を取得する
Routes API の Compute Routes
メソッドを使用すると、地点間の次のことを計算できます。
さまざまな交通手段のルートを検索できます。また、1 つまたは複数の目的地を指定することもできます。
移動モード(交通機関、車、2 輪車、徒歩、自転車など)。
一連のウェイポイント。最も効率的な順序で移動するように最適化できます。
出発地、目的地、ウェイポイントを指定できる方法が複数ある:
テキスト文字列。例: 「Chicago, IL」、「Darwin, NT, Australia」、「1800 Amphitheatre Parkway, Mountain View, CA 94043」、「CWF6+FWX Mountain View, California」
プレイス ID
緯度と経度の座標(車両の向きを含む場合もあります)
ニーズと目標に基づいてルート オプションを微調整します。
車のエンジンの種類(ディーゼル、電気、ハイブリッド、ガソリン)に応じて、燃料やエネルギー効率の良いルートを選択します。詳細については、環境に優しいルートを取得するをご覧ください。
トラフィック計算にきめ細かいオプションを設定して、品質とレイテンシのトレードオフを決定できます。詳細については、トラフィック データを含める方法と含めるかどうかを指定するをご覧ください。
ウェイポイントの車両の進行方向(走行方向)と道路の通行側の情報を設定すると、予定到着時刻の精度が向上します。詳しくは、車両の進行方向と道路の側面を指定するをご覧ください。
通過地点とターミナルの場所、安全な経由地を指定します。詳しくは、ルート上の停留所を設定するとルートの通過ポイントを設定するをご覧ください。
ルートの距離と到着予定時刻とともに、通行料に関する情報をリクエストします。詳しくは、ルートの通行料を計算するをご覧ください。
フィールド マスクを使用して必要なデータのみをリクエストすることで、レイテンシと品質を制御できます。これにより、不要な処理時間を回避し、リクエストの請求レートを抑えることができます。詳しくは、返す情報を選択するをご覧ください。
可能なルートのマトリックスを取得する
Routes API の Compute Route Matrix
メソッドは、複数の出発地と目的地の間の推奨ルートに関する情報のマトリックスを提供します。この情報には、距離や到着予定時刻が含まれており、ビジネスニーズに基づいて最適な出発地と目的地を選択できます。リクエストできる距離データは次のとおりです。
選択した移動モードの距離
距離(キロメートルまたはマイル)
渋滞時の推定所要時間
距離データを使用すると、複数の可能な出発地と目的地の間で乗客、荷物、労働者をルーティングする最も効率的な方法を決定できます。
行列全体が計算される前にレスポンスの要素をストリーミングすることで、レスポンスのレイテンシを短縮できます。
サーバーサイド リクエストごとに複数の出発地と目的地を指定できます。出発地の数と目的地の数の積は最大 625 です。
Routes API の仕組み
Routes API には、ComputeRoutes
と ComputeRouteMatrix
の 2 つのメソッドがあります。
ComputeRoutes
Routes API の ComputeRoutes
メソッドは、リクエストの詳細を含む JSON リクエスト本文を含む HTTP POST リクエストを受け入れます。必須項目は、出発地、目的地、旅行モード、返すフィールドを指定するフィールド マスクです。
例
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 で使用可能なリソースと、返されるデータを示します。
データリソース | 返されたデータ | 返品形式 |
---|---|---|
ComputeRoutes | ルート、区間、ステップを返します。リクエストに応じて、代替ルートも返します。 | JSON |
ComputeRouteMatrix | 1 つの出発地ウェイポイントから 1 つの目的地ウェイポイントまでのルートの配列を返します。 |
Routes API の使用方法
1 | セットアップする | まず、Google Cloud プロジェクトを設定するから始め、その後の設定手順を完了します。 |
2 | ルートを計算してレスポンスを確認する | 詳細については、ルートを取得するとルート レスポンスを確認するをご覧ください。 |
3 | ルートの行列を計算してレスポンスを確認する | 詳細については、ルート マトリックスを取得するとルート マトリックスのレスポンスを確認するをご覧ください。 |
利用可能なクライアント ライブラリ
Routes API で使用可能なクライアント ライブラリの一覧については、クライアント ライブラリをご覧ください。