Directions API(従来版)または Distance Matrix API(従来版)から移行する

欧州経済領域(EEA)のデベロッパー

このガイドでは、Directions API または Distance Matrix API を使用するアプリを、Routes API を使用するように移行する方法について説明します。Routes API の詳細については、プロダクトの概要をご覧ください。

移行に関する請求のベスト プラクティス

このガイダンスは、API の使用量が 2 番目の料金に移行するほど多い場合に適用されます。新しいバージョンの API に移行すると、別の SKU で課金されます。移行月の費用増加を回避するには、本番環境で新しい API への切り替えをできるだけ月初に行うことをおすすめします。これにより、移行月に最も費用対効果の高い月額料金階層に到達できます。料金階層については、料金ページと料金に関するよくある質問をご覧ください。

REST API エンドポイントを更新する

新しい Routes API エンドポイントを使用するようにコードを更新する

Directions API から

Directions API https://maps.googleapis.com/maps/api/directions/outputFormat?parameters
Routes API https://routes.googleapis.com/directions/v2:computeRoutes

Distance Matrix API から

Distance Matrix API https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters
Routes API https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix

URL パラメータを変換して HTTPS リクエスト本文を使用する

Directions API と Distance Matrix API では、構成プロパティを URL パラメータとして HTTP GET リクエストに渡します。たとえば、Directions API の場合は次のようになります。

https://maps.googleapis.com/maps/api/directions/outputFormat?parameters

Routes API では、HTTP POST リクエストの一部として、リクエスト本文またはヘッダーでパラメータを渡します。例については、次をご覧ください。

ポリライン エンコードされたウェイポイントを位置情報のウェイポイントに変換する

Directions API(従来版)では、エンコードされたポリラインとしてウェイポイントを指定できます。これにより、URL の上限である 16,384 文字に多数のウェイポイントを収めることができます。Routes API では、ウェイポイントを緯度 / 経度座標として REST または gRPC リクエスト本文で送信できるため、この機能は必要ありません。例については、ルート マトリックスを計算するドキュメントの HTTP の例、または中間ウェイポイントを指定するドキュメントの中間ウェイポイントを定義するをご覧ください。

パラメータを変換する

次の表に、Directions API と Distance Matrix API のパラメータのうち、名前が変更または変更されたパラメータ、または GA リリースでサポートされていないパラメータを示します。これらのパラメータを使用している場合は、コードを更新してください。

リクエスト パラメータの変換

Directions または 距離行列 のパラメータ Routes API パラメータ メモ
alternatives computeAlternativeRoutes
arrival_time arrivalTime TRANSIT モードでのみ使用できます。departureTime と同時に使用することはできません。
avoid routeModifiers
departure_time departureTime arrivalTime と同時に使用することはできません。
language languageCode Compute Routes でのみサポートされます。
mode travelMode

GET URL クエリ パラメータの代わりに、RouteTravelMode 値(DRIVE、TWO_WHEELER、WALK、TRANSIT、TRUCK、または computeRoutes の場合は BICYCLE)を使用して、computeRoutes または computeRouteMatrix HTTP POST JSON リクエスト本文に渡されます。TWO_WHEELER、TRANSIT、TRUCK のサポートを追加しました。

region regionCode
traffic_model trafficModel 詳細
transit_mode "travelMode": "TRANSIT" Directions API(レガシー)では、乗換案内ルートにおいて、同じ移動手段(徒歩や乗換など)を使用する区間が 1 つのステップと見なされ、その移動手段の個々の経路はサブステップに格納されます。一方、Routes API では、すべての移動手段でステップは一貫して 1 つのナビゲーション指示になります。つまり、各ナビゲーション指示がステップです。 1 つの移動手段に複数のステップがある場合、Routes API は、その移動手段のステップの概要を含むメタデータを `stepsOverview` で提供します。このメタデータをリクエストするには、`routes.legs.stepsOverview` フィールド マスクを使用します。詳細
transit_routing_preference transitRoutingPreference 詳細
units units 詳細
waypoints intermediates エンコードされたポリラインのサポートを削除しました。
ウェイポイントの optimize=true "optimizeWaypointOrder": "true" 詳細

レスポンス パラメータの変換

Directions または 距離行列 のパラメータ Routes API パラメータ メモ
copyrights

回答に含まれていません。結果をユーザーに表示する際には、次の文を含める必要があります。

Powered by Google, ©YEAR Google

次に例を示します。

Powered by Google, ©2022 Google

distance distanceMeters 距離はメートル単位でのみ表示されます。
duration_in_traffic duration Routes API では削除されました。duration を使用してください。
status 利用できません。API によって報告されたエラーには、HTTP レスポンス コードを使用します。詳細については、リクエスト エラーを処理するをご覧ください。
geocoded_waypoints geocoding_results Compute Routes でのみサポートされます。住所として指定されたウェイポイントのジオコーディング レスポンス情報のみが含まれます。
bounds viewport
legs.end_address 利用できません。

高精度のルート案内を行うには、座標ではなくプレイス ID を使用します。プレイス ID には、ルートを正しいアクセス ポイントにスナップするデータが含まれています。

  • 住所から始める場合: Place Autocomplete または Geocoding API を使用して、住所をプレイス ID に解決します。
  • 座標から始める場合: 目的地を検索を使用して、より意味のある場所を指定することを検討してください。座標から住所を取得するだけでは、複雑になり、不正確なスナップにつながる可能性があります。Routes API は、座標を住所にリバース ジオコーディングしません。
legs.start_address 利用できません。
overview_polyline polyline
summary description
waypoint_order optimizedIntermediateWaypointIndex