Method: computeRouteMatrix

出発地と目的地のリストを受け取ると、出発地と目的地の組み合わせごとにルート情報が含まれるストリームを返します。

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

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

  • 使用可能なすべてのフィールドのフィールド マスク(手動検査用): X-Goog-FieldMask: *
  • ルートの所要時間、距離、要素のステータス、状態、要素のインデックスのフィールド マスク(本番環境の設定例): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

フィールドマスクに status を含めることが重要です。含めないと、すべてのメッセージが OK と表示されます。以下の理由により、ワイルドカード(*)レスポンス フィールド マスクの使用はおすすめしません。

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

HTTP リクエスト

POST https://routespreferred.googleapis.com/v1:computeRouteMatrix

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

リクエストの本文

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

JSON 表現
{
  "origins": [
    {
      object (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string
}
フィールド
origins[]

object (RouteMatrixOrigin)

必須。送信元の配列。レスポンス マトリックスの行を決定します。出発地と目的地のカーディナリティには、いくつかのサイズ制限が適用されます。

  • 要素数(出発地 × 目的地)は、いずれの場合も 625 以下にする必要があります。
  • routePreference が TRAFFIC_AWARE_OPTIMAL に設定されている場合、要素の数(origin × destination)は 100 以下である必要があります。
  • placeId として指定するウェイポイント(出発地と目的地)の数は 50 以下にする必要があります。
destinations[]

object (RouteMatrixDestination)

必須。レスポンス マトリックスの列を決定する宛先の配列。

travelMode

enum (RouteTravelMode)

省略可。移動手段を指定します。

routingPreference

enum (RoutingPreference)

省略可。ルートの計算方法を指定します。サーバーは、選択したルーティング設定を使用してルートを計算しようとします。ルーティング設定によってエラーや余分なレイテンシが発生した場合は、エラーが返されます。このオプションを指定できるのは、travelModeDRIVE または TWO_WHEELER の場合のみです。それ以外の場合は、リクエストが失敗します。

departureTime

string (Timestamp format)

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

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

レスポンスの本文

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

認可スコープ

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

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

詳しくは、OAuth 2.0 の概要をご覧ください。