Routes API は、ルート、距離、移動時間の計算のパフォーマンスが向上しているため、Directions API と Distance Matrix API を使用するアプリを置き換える価値があります。Routes API のほとんどの機能は、Directions API と Distance Matrix API の両方と下位互換性があります。
このガイドでは、Routes API と、Routes API が置き換えるプロダクトとの主な違いと、必要な変更を処理する方法について説明します。他の Routes API 機能の詳細については、プロダクトの概要をご覧ください。
主な改善点
このセクションでは、アプリで Routes API を使用する際に期待できる機能強化について説明します。
リクエスト上限の引き上げ
Routes API Compute Route Matrix |
|
Distance Matrix API |
|
リクエストへの迅速な対応
Compute Route Matrix 機能では、次のようなレイテンシの改善が実現します。
- 行列全体が計算される前に、レスポンスのストリーミング要素を受信します。
- フィールド マスクを使用してレスポンスの詳細をカスタマイズし、必要なデータのみをリクエストします。これは、コスト削減にも役立つベスト プラクティスです。
- トラフィックのルート計算が強化され、データ品質とレスポンス時間のトレードオフが可能になりました。
ルーティングの機能強化
コンピューティング ルート機能には、次のようなルーティングの強化機能があります。
- 距離と到着予定時刻に加えて、有料道路の情報も表示されます。
- 二輪車用ルート。
- 安全性を確保するため、経由地のウェイポイントを検証します。
- ETA の精度が向上: ウェイポイントの進行方向と道路の通行側を設定することで、ETA の精度が向上します。
必要なデータのみをリクエストする
返すフィールドを指定できるようになったため、処理時間と課金料金を削減できます。
Routes API Compute Routes Compute Route Matrix |
リクエストでは、レスポンスで返すフィールドを指定するためにフィールド マスクを使用する必要があります。フィールド マスキングにより、不要なデータがリクエストされないため、不要な処理時間と課金を回避できます。 詳細については、返すフィールドの選択をご覧ください。 |
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 と、Routes API が置き換えるサービスとの主な違いと、既存のアプリでこれらのサービスから移行する際にこれらの違いに対処する方法について説明します。
2 つのサービスではなく 1 つのサービスを呼び出す
Routes API | アプリで Compute Routes と Compute Route Matrix を使用するには、API コンソールで 1 つのサービスのみを有効にします。 詳細については、Google API コンソールでの設定をご覧ください。 |
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 へのコンバータをいくつか見つけることができます。