Routes API は、ルート、距離、移動時間の計算のパフォーマンスが向上しているため、現在 Directions API と Distance Matrix API を使用しているアプリを置き換える価値があります。Routes API のほとんどの機能は、Directions API と Distance Matrix API の両方と下位互換性があります。
このガイドでは、Routes API と置き換えるプロダクトの主な違い、必要な変更に対処する方法について説明します。Routes API のその他の機能の詳細については、プロダクトの概要をご覧ください。
主な改善点
このセクションでは、アプリで Routes API を使用する際に想定される機能強化について説明します。
リクエスト上限の引き上げ
Routes API |
|
Distance Matrix API |
|
リクエストへの迅速なレスポンス
Compute ルート マトリックス機能によって、レイテンシが次のように改善されます。
- マトリックス全体が計算される前にレスポンスのストリーミング要素を受信する。
- フィールド マスクを使用してレスポンスの詳細をカスタマイズする。必要なデータのみをリクエストします。これは、費用の削減にもつながります。
- トラフィックのルート計算の強化。データ品質とレスポンス時間のトレードオフを比較できます。
ルーティングの強化
コンピューティング ルート機能では、ルーティングが次のように拡張されます。
- 距離と到着予定時刻以外の通行料金情報。
- 二輪車のルート。
- 安全のために停車地点の地点を確認する。
- 地点の進行方向と道路の片側を設定することで、ETA の精度が向上しました。
必要なデータのみをリクエストする
どのフィールドを返すかを指定することで、処理時間と課金を削減できます。
Routes API | リクエストでは、フィールド マスクを使用して、レスポンスで返すフィールドを指定する必要があります。フィールド マスキングにより、不要なデータをリクエストせずに済み、不要な処理時間と料金が発生しないようにできます。 詳細については、返されるフィールドを選択するをご覧ください。 |
Directions API Distance Matrix API |
アプリが厳密に必要でない場合でも、フィールドのデフォルト リストを返します。これにより、不要な処理時間と課金が発生する場合があります。 |
交通状況のルート計算の強化
Routes API では、3 つのルーティング設定がサポートされており、これらの設定を使用して、トラフィック情報をリクエストする際にレスポンスのレイテンシとデータ品質のバランスを取ることができます。
詳細については、品質とレイテンシの構成をご覧ください。
TRAFFIC_UNAWARE (デフォルト) |
ライブ トラフィック データではなく、平均的なトラフィック データ(時間に依存しないトラフィック データ)を使用してルートを計算します。これにより、レスポンスのレイテンシが最小になります。この設定は、Directions API や Distance Matrix API で交通量を使用しない場合と同じです。 |
TRAFFIC_AWARE (新規) |
パフォーマンスが最適化されたライブ トラフィック品質でレイテンシを短縮。TRAFFIC_AWARE_OPTIMAL とは対照的に、この設定では最適化が適用され、レイテンシが大幅に短縮されます。この設定は Routes API でも新しく、Directions API や Distance Matrix API に対応する機能はありません。 |
TRAFFIC_AWARE_OPTIMAL |
高品質で包括的な交通データ。この設定ではレイテンシが最も大きく、Directions API と Distance Matrix API の departure_time の設定と同等です。この設定は、maps.google.com や Google マップ モバイルアプリで使用されるモードと同じです。 |
ルート計算の比較
次の表に、Routes API、Directions API、Distance Matrix API サービスのルーティング オプションを比較します。
トラフィックのオプション | Routes API | Directions API Distance Matrix API |
レイテンシ |
---|---|---|---|
リアルタイムの交通情報なし | TRAFFIC_UNAWARE |
departure_time プロパティが設定されていません |
3 つのモードの中で最短のレイテンシ。 |
ライブ交通状況が適用されています | TRAFFIC_AWARE |
同等のものはありません | Routes API によって新しいモードが追加されました。ETA の品質のコストは抑えられ、
|
高品質で包括的なリアルタイムの交通データを適用 | TRAFFIC_AWARE_OPTIMAL |
departure_time プロパティ セット |
maps.google.com と Google マップ モバイルアプリで使用されるモードと同等です。 Compute Route Matrix の場合、リクエスト内の要素数(出発地の数 × 目的地の数)は 100 以内にしてください。 |
主な違い
このセクションでは、Routes API とその代替サービスの主な違いと、既存のアプリでこれらのサービスから移行するときにこれらの違いに対処する方法について説明します。
2 つではなく 1 つのサービスを呼び出す
Routes API | API Console で、アプリで Compute Routes と Compute Route Matrix を使用するサービスを 1 つだけ有効にします。
詳しくは、Google API Console でのセットアップをご覧ください。 |
Directions API Distance Matrix API |
API Console で、Directions API と Distance Matrix API の 2 つのサービスを個別のサービスとして有効にします。 |
HTTPS POST
リクエストを使用する
Routes API | HTTP POST リクエストの一部として、リクエスト本文またはヘッダーでパラメータを渡します。例については、以下をご覧ください。 - ルートを計算する - ルート マトリックスを計算する |
Directions API Distance Matrix API |
HTTP GET リクエストを使用して URL パラメータを渡します。 |
ETA レスポンスの違い
以下の表に示すように、Routes API は ETA を返します。このとき、Directions API や Distance Matrix API サービスとは異なる duration
レスポンス プロパティを使用します。
到着予定時刻の種類 | Routes API | Directions API Distance Matrix API |
---|---|---|
ETA は時刻に依存しないトラフィックです。 |
|
これは、リクエストで
|
リアルタイムの交通状況を考慮した到着予定時刻。 |
|
リクエストで
|
ポリラインの地点
このサービスを使って、緯度と経度の座標をポリラインの地点に変換する必要がなくなりました。このサービスは POST リクエストの本文をサポートするため、URL 文字列の制限の影響を受けなくなりました。Distance Matrix API の一部のユーザーは、緯度と経度の地点をポリラインの地点に変換することで、リクエスト制限の問題に対処しました。
書式設定された住所(リバース ジオコーディング)
Routes API では、レスポンスで書式設定された住所は提供されません。フォーマット済みの住所を取得するには、このユースケース向けに構築された、より質の高い結果を提供する Geocoding API を使用します。
利用可能な移動手段
Directions API と同様に、Routes API ではルート リクエストで移動手段が指定されていない場合、DRIVE がデフォルト モードとして使用されます。ただし、リクエストでルートの移動手段を指定した場合、Routes API はリクエストの代替選択肢として、利用可能な移動手段の配列を返しません。ユースケースがこの機能に依存している場合は、Google がフォローアップできるように、機能の使用方法を説明して問題を報告してください。
レスポンス形式としての XML
Routes API では、レスポンス形式として XML は提供されません。目的に合った JSON から XML へのコンバータをオンラインでいくつか見つけることができます。