Method: computeCustomRoutes

終点と中間地点のセット、および経路の目標を指定すると、その経路の目標に最適な経路が計算されます。最速ルートと最短ルートを参照ルートとして返します。

注: この方法では、入力のレスポンス フィールド マスクを指定する必要があります。レスポンス フィールド マスクを指定するには、URL パラメータ $fields または fields を使用するか、HTTP/gRPC ヘッダー X-Goog-FieldMask を使用します(使用可能な URL パラメータとヘッダーをご覧ください)。値は、フィールドパスのカンマ区切りのリストです。詳しくは、フィールドパスの作成方法に関するドキュメントをご覧ください。

たとえば、このメソッドでは次のようになります。

  • 使用可能なすべてのフィールドのフィールド マスク(手動検査の場合): X-Goog-FieldMask: *
  • ルートの距離、所要時間、トークン、通行料金情報のフィールド マスク: X-Goog-FieldMask: routes.route.distanceMeters,routes.route.duration,routes.token,routes.route.travelAdvisory.tollInfo

ワイルドカード(*)レスポンス フィールド マスクの使用や、トップレベルでのフィールド マスク(routes)の指定は、次の理由からおすすめしません。

  • 必要なフィールドのみを選択することで、サーバーの計算サイクルが節約され、低レイテンシで結果が返されるようになります。
  • 本番環境ジョブで必要なフィールドのみを選択することで、安定したレイテンシ パフォーマンスが保証されます。今後、レスポンス フィールドがさらに追加される可能性があります。また、それらの新しいフィールドでは、余分な計算時間が必要になる可能性があります。すべてのフィールドを選択した場合、または上位レベルですべてのフィールドを選択した場合、新しいフィールドが自動的にレスポンスに含まれるため、パフォーマンスが低下する可能性があります。
  • 必要なフィールドのみを選択すると、レスポンス サイズが小さくなり、ネットワーク スループットが高くなります。

HTTP リクエスト

POST https://routespreferred.googleapis.com/v1alpha:computeCustomRoutes

この URL は gRPC Transcoding 構文を使用します。

リクエスト本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "intermediates": [
    {
      object (Waypoint)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "polylineQuality": enum (PolylineQuality),
  "polylineEncoding": enum (PolylineEncoding),
  "departureTime": string,
  "routeModifiers": {
    object (RouteModifiers)
  },
  "routeObjective": {
    object (RouteObjective)
  },
  "languageCode": string,
  "units": enum (Units)
}
フィールド
origin

object (Waypoint)

必須。出発地の地点。

destination

object (Waypoint)

必須。目的地の地点。

intermediates[]

object (Waypoint)

(省略可)経路上の一連の地点(終点は除く)。停車場所または通過地点です。最大 25 個の中間地点がサポートされています。

travelMode

enum (RouteTravelMode)

(省略可)移動手段を指定します。現在、DRIVE のみがサポートされています。

routingPreference

enum (RoutingPreference)

(省略可)ルートの計算方法を指定します。サーバーは、選択されたルーティング設定を使用してルートを計算します。ルーティング設定によりエラーまたは余分なレイテンシが発生した場合は、エラーが返されます。将来的には、推奨されるオプションでは有効な結果が得られない場合に別のオプションを使用するフォールバック メカニズムが実装される可能性があります。このオプションは、travelModeDRIVE または TWO_WHEELER の場合にのみ指定できます。それ以外の場合は、リクエストが失敗します。

polylineQuality

enum (PolylineQuality)

(省略可)ポリラインの品質に関する好みを指定します。

polylineEncoding

enum (PolylineEncoding)

(省略可)ポリラインの優先エンコードを指定します。

departureTime

string (Timestamp format)

(省略可)出発時刻。値を設定しない場合、この値はデフォルトでリクエストを行った時刻になります。この値を、すでに発生した時刻に設定すると、リクエストは失敗します。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

routeModifiers

object (RouteModifiers)

(省略可)ルートの計算方法に影響を与える一連の条件。

routeObjective

object (RouteObjective)

必須。最適化で重視するルート目標。

languageCode

string

(省略可)「en-US」や「sr-Latn」などの BCP-47 言語コード。詳しくは、http://www.unicode.org/reports/tr35/#Unicode_locale_identifier を参照してください。サポートされている言語の一覧については、言語サポートをご覧ください。この値を指定しない場合、表示言語はルート リクエストの場所から推定されます。

units

enum (Units)

(省略可)表示フィールドの測定単位を指定します。これには、NavigationInstructioninstruction フィールドが含まれます。ルート、区間、ステップ距離、所要時間に使用される測定単位は、この値の影響を受けません。この値を指定しない場合、表示単位はリクエストの場所から推測されます。

レスポンスの本文

成功した場合、レスポンスの本文には ComputeCustomRoutesResponse のインスタンスが含まれます。

認証スコープ

次の OAuth スコープが必要です。

  • https://www.googleapis.com/auth/maps-platform.routespreferred

詳細については、OAuth 2.0 の概要をご覧ください。