終点と中間地点のセットに基づいて、主要経路と代替経路(省略可)を返します。
注: このメソッドでは、入力でレスポンス フィールド マスクを指定する必要があります。レスポンス フィールド マスクは、URL パラメータ $fields
または fields
を使用するか、HTTP/gRPC ヘッダー X-Goog-FieldMask
を使用して指定できます(使用可能な URL パラメータとヘッダーをご覧ください)。値はフィールドパスのカンマ区切りのリストです。詳しくは、フィールド パスの作成方法をご覧ください。
たとえば、このメソッドでは次のようになります。
- 使用可能なすべての項目のフィールド マスク(手動検査用):
X-Goog-FieldMask: *
- ルートレベルの所要時間、距離、ポリラインのフィールド マスク(本番環境の設定例):
X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline
以下の理由により、ワイルドカード(*
)レスポンス フィールド マスクを使用したり、トップレベル(routes
)でフィールド マスクを指定したりすることはおすすめしません。
- 必要なフィールドのみを選択することで、サーバーの計算サイクルが節約され、低レイテンシで結果を返すことができます。
- 本番環境のジョブに必要なフィールドのみを選択することで、安定したレイテンシ パフォーマンスを確保できます。今後、レスポンス フィールドがさらに追加される可能性があります。また、このような新しいフィールドでは計算時間が増加する可能性があります。すべてのフィールドを選択した場合や、トップレベルのすべてのフィールドを選択した場合、新しく追加したフィールドが自動的にレスポンスに含まれるため、パフォーマンスが低下する可能性があります。
- 必要なフィールドのみを選択すると、レスポンス サイズが小さくなり、ネットワーク スループットが向上します。
HTTP リクエスト
POST https://routespreferred.googleapis.com/v1:computeRoutes
この URL は gRPC Transcoding 構文を使用します。
リクエストの本文
リクエストの本文には、次の構造のデータが含まれます。
JSON 表現 |
---|
{ "origin": { object ( |
フィールド | |
---|---|
origin |
必須。出発地の地点。 |
destination |
必須。目的地の地点。 |
intermediates[] |
省略可。ルート上のウェイポイントのセット(終点を除く)。停車地点または通過地点。最大 25 個の中間地点がサポートされます。 |
travelMode |
省略可。移動手段を指定します。 |
routingPreference |
省略可。ルートの計算方法を指定します。サーバーは、選択されたルーティング設定を使用してルートの計算を試みます。ルーティング設定によってエラーや余分なレイテンシが発生した場合は、エラーが返されます。将来的には、優先されるオプションから有効な結果が得られない場合に別のオプションを使用するフォールバック メカニズムが実装される可能性があります。このオプションは、 |
polylineQuality |
省略可。ポリラインの品質に関する設定を指定します。 |
polylineEncoding |
省略可。ポリラインの優先エンコードを指定します。 |
departureTime |
省略可。出発時刻。この値を設定しない場合、この値はデフォルトでリクエストを行った時刻になります。すでに発生している時刻に設定すると、リクエストは失敗します。 RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: |
computeAlternativeRoutes |
経路に加えて代替経路を計算するかどうかを指定します。 |
routeModifiers |
省略可。ルートの計算方法に影響を与える条件のセット。 |
languageCode |
省略可。「en-US」や「sr-Latn」などの BCP-47 言語コード。詳しくは、http://www.unicode.org/reports/tr35/#Unicode_locale_identifier を参照してください。サポートされている言語の一覧については、言語サポートをご覧ください。この値を指定しない場合、表示言語は経路リクエストの場所から推定されます。 |
units |
省略可。表示フィールドの測定単位を指定します。これには、 |
optimizeWaypointOrder |
OptimizeWaypointOrder が true に設定されている場合は、経路の総コストを最小限に抑えるために、指定された中間地点の並べ替えが試行されます。いずれかの中間地点が地点を経由する場合、リクエストは失敗します。ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index を使用して、新しい順序を見つけます。 |
レスポンスの本文
成功した場合、レスポンスの本文には ComputeRoutesResponse
のインスタンスが含まれます。
承認スコープ
次の OAuth スコープが必要です。
https://www.googleapis.com/auth/maps-platform.routespreferred
詳しくは、OAuth 2.0 の概要をご覧ください。