Routes API に移行する理由

Routes API は、ルート、距離、移動時間の計算のパフォーマンスが向上しているため、現在 Directions API と Distance Matrix API を使用しているアプリを置き換える価値があります。Routes API のほとんどの機能は、Directions API と Distance Matrix API の両方と下位互換性があります。

このガイドでは、Routes API と置き換えるプロダクトの主な違い、必要な変更に対処する方法について説明します。Routes API のその他の機能の詳細については、プロダクトの概要をご覧ください。

主な改善点

このセクションでは、アプリで Routes API を使用する際に想定される機能強化について説明します。

リクエスト上限の引き上げ

Routes API
  • TRAFFIC_AWARE_OPTIMAL を指定しない限り、要素の最大数は 625 です。
  • TRAFFIC_AWARE_OPTIMAL を含む要素の最大数は 100 個です。拡張ルーティング設定をご覧ください。
  • プレイス ID を使用した地点(出発地 + 目的地)を最大 50 個。
Distance Matrix API
  • 1 回のリクエストにつき、出発地は最大 25 か所、目的地は最大 25 か所です。
  • サーバーサイドのリクエストごとに最大 100 個の要素(出発地の数 × 目的地の数)。

リクエストへの迅速なレスポンス

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 APIDirections APIDistance Matrix API サービスのルーティング オプションを比較します。

トラフィックのオプション Routes API Directions API
Distance Matrix API
レイテンシ
リアルタイムの交通情報なし TRAFFIC_UNAWARE departure_time プロパティが設定されていません 3 つのモードの中で最短のレイテンシ。
ライブ交通状況が適用されています TRAFFIC_AWARE 同等のものはありません

Routes API によって新しいモードが追加されました。ETA の品質のコストは抑えられ、TRAFFIC_UNAWARE より若干レイテンシが高くなります。

TRAFFIC_AWARE_OPTIMAL よりもはるかに低いレイテンシです。

高品質で包括的なリアルタイムの交通データを適用 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 は時刻に依存しないトラフィックです。

TRAFFIC_UNAWARE を使用して設定します。

  • duration レスポンス プロパティに含まれる ETA。
  • durationstaticDuration のレスポンス プロパティには、同じ値が含まれます。

これは、リクエストで departure_time が設定されていないことを意味します。

  • duration レスポンス プロパティに含まれる ETA。
  • duration_in_traffic レスポンス プロパティは返されません。
リアルタイムの交通状況を考慮した到着予定時刻。

TRAFFIC_AWARE または TRAFFIC_AWARE_OPTIMAL を使用して設定します。

  • リアルタイムのトラフィックを考慮した ETA は、duration レスポンス プロパティに含まれています。
  • staticDuration レスポンス プロパティには、交通状況を考慮せずにルートを走行した時間が含まれます。
  • duration_in_traffic プロパティは返されなくなりました。

リクエストで departure_time を使用して設定します。

  • リアルタイムのトラフィックを考慮した ETA は、duration_in_traffic レスポンス プロパティに含まれています。

ポリラインの地点

このサービスを使って、緯度と経度の座標をポリラインの地点に変換する必要がなくなりました。このサービスは POST リクエストの本文をサポートするため、URL 文字列の制限の影響を受けなくなりました。Distance Matrix API の一部のユーザーは、緯度と経度の地点をポリラインの地点に変換することで、リクエスト制限の問題に対処しました。

書式設定された住所(リバース ジオコーディング)

Routes API では、レスポンスで書式設定された住所は提供されません。フォーマット済みの住所を取得するには、このユースケース向けに構築された、より質の高い結果を提供する Geocoding API を使用します。

利用可能な移動手段

Directions API と同様に、Routes API ではルート リクエストで移動手段が指定されていない場合、DRIVE がデフォルト モードとして使用されます。ただし、リクエストでルートの移動手段を指定した場合、Routes API はリクエストの代替選択肢として、利用可能な移動手段の配列を返しません。ユースケースがこの機能に依存している場合は、Google がフォローアップできるように、機能の使用方法を説明して問題を報告してください。

レスポンス形式としての XML

Routes API では、レスポンス形式として XML は提供されません。目的に合った JSON から XML へのコンバータをオンラインでいくつか見つけることができます。