- HTTP リクエスト
- リクエストの本文
- レスポンスの本文
- RouteMatrixOrigin
- RouteMatrixDestination
- ExtraComputation
- RouteMatrixElementCondition
- LocalizedValues
出発地と目的地のリストを受け取り、出発地と目的地の組み合わせごとにルート情報を含むストリームを返します。
注: この方法では、入力でレスポンス フィールド マスクを指定する必要があります。レスポンス フィールド マスクを指定するには、URL パラメータ $fields
または fields
を使用するか、HTTP/gRPC ヘッダー X-Goog-FieldMask
を使用します(使用可能な URL パラメータとヘッダーをご覧ください)。値は、フィールドパスのカンマ区切りリストです。フィールドパスの作成方法について詳しくは、こちらのドキュメントをご覧ください。
たとえば、このメソッドの場合:
- 使用可能なすべてのフィールドのフィールド マスク(手動検査の場合):
X-Goog-FieldMask: *
- ルートの所要時間、距離、要素のステータス、条件、要素インデックスのフィールド マスク(本番環境の設定例):
X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration
フィールド マスクには必ず status
を含めてください。そうしないと、すべてのメッセージに問題がないように見えます。ワイルドカード(*
)レスポンス フィールド マスクの使用は、次の理由によりおすすめしません。
- 必要なフィールドのみを選択すると、サーバーの計算サイクルが減り、より低いレイテンシで結果を返すことができます。
- 本番環境ジョブで必要なフィールドのみを選択することで、安定したレイテンシ パフォーマンスが保証されます。今後、レスポンス フィールドが追加される可能性があります。また、それらの新しいフィールドでは計算時間が増える可能性があります。すべてのフィールドを選択したり、トップレベルですべてのフィールドを選択すると、新しいフィールドが自動的にレスポンスに含まれるため、パフォーマンスが低下する可能性があります。
- 必要なフィールドのみを選択すると、レスポンス サイズが小さくなり、ネットワーク スループットが向上します。
HTTP リクエスト
POST https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix
この URL は gRPC Transcoding 構文を使用します。
リクエスト本文
リクエストの本文には、次の構造のデータが含まれます。
JSON 表現 |
---|
{ "origins": [ { object ( |
フィールド | |
---|---|
origins[] |
必須。オリジンの配列。レスポンス マトリックスの行を決定します。出発地と目的地の基数には、サイズに関するいくつかの制限が適用されます。
|
destinations[] |
必須。デスティネーションの配列。レスポンス マトリックスの列を決定します。 |
travelMode |
省略可。移動手段を指定します。 |
routingPreference |
省略可。ルートの計算方法を指定します。サーバーは、選択されたルーティング設定を使用してルートを計算しようとします。ルーティング設定がエラーになるか、レイテンシが非常に長い場合は、エラーが返されます。このオプションは、 |
departureTime |
省略可。出発時刻。この値を設定しない場合、この値はデフォルトでリクエストを行った時刻になります。注: 過去の RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: |
arrivalTime |
省略可。到着時刻。注: RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: |
languageCode |
省略可。「en-US」や「sr-Latn」などの BCP-47 言語コード。詳しくは、Unicode ロケール識別子をご覧ください。サポートされている言語の一覧については、言語のサポートをご覧ください。この値を指定しない場合、最初のオリジンの場所から表示言語が推定されます。 |
regionCode |
省略可。ccTLD(「トップレベル ドメイン」)の 2 文字の値として指定される地域コード。詳しくは、国コード トップレベル ドメインをご覧ください。 |
units |
省略可。表示フィールドの測定単位を指定します。 |
extraComputations[] |
省略可。リクエストの完了に使用できる追加の計算のリスト。注: このような計算の追加により、レスポンスに追加のフィールドが返される場合があります。これらの追加フィールドは、レスポンスで返されるフィールド マスクでも指定する必要があります。 |
trafficModel |
省略可。渋滞時間の計算に使用する前提条件を指定します。この設定は、 |
transitPreferences |
省略可。 |
レスポンスの本文
v2.computeRouteMatrix API で出発地と目的地のペアに対して計算されたルート情報が格納されます。このプロトコルはクライアントにストリーミングできます。
成功すると、レスポンスの本文に次の構造のデータが含まれます。
JSON 表現 |
---|
{ "status": { object ( |
フィールド | |
---|---|
status |
この要素のエラー ステータス コード。 |
condition |
ルートが見つかったかどうかを示します。ステータスとは無関係。 |
distanceMeters |
ルートの移動距離(メートル単位)。 |
duration |
ルートの移動に必要な時間の長さ。 「 |
staticDuration |
交通状況を考慮しないルートの移動時間。 「 |
travelAdvisory |
ルートに関する追加情報。例: 制限情報や通行料金情報 |
fallbackInfo |
サーバーが、この特定の出発地と目的地のペアに対して与えられた設定に基づいてルートを計算できない場合、別の計算モードを使用するようフォールバックすることがあります。フォールバック モードが使用されている場合、このフィールドにはフォールバック レスポンスに関する詳細情報が含まれます。それ以外の場合、このフィールドは設定されません。 |
localizedValues |
|
originIndex |
リクエストに含まれるオリジンのゼロベースのインデックス。 |
destinationIndex |
リクエスト内の宛先のゼロベースのインデックス。 |
RouteMatrixOrigin
ComputeRouteMatrixRequest の単一の送信元
JSON 表現 |
---|
{ "waypoint": { object ( |
フィールド | |
---|---|
waypoint |
必須。出発地の地点 |
routeModifiers |
省略可。これを出発地とするすべてのルートの修飾子 |
RouteMatrixDestination
ComputeRouteMatrixRequest の単一の宛先
JSON 表現 |
---|
{
"waypoint": {
object ( |
フィールド | |
---|---|
waypoint |
必須。目的地の地点 |
ExtraComputation
リクエストの実行中に実行する追加の計算。
列挙型 | |
---|---|
EXTRA_COMPUTATION_UNSPECIFIED |
使用されません。この値を含むリクエストは失敗します。 |
TOLLS |
マトリックス要素の通行料金情報。 |
RouteMatrixElementCondition
返されるルートの条件。
列挙型 | |
---|---|
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED |
要素の status が OK でない場合にのみ使用されます。 |
ROUTE_EXISTS |
ルートが見つかり、要素に対応する情報が入力されました。 |
ROUTE_NOT_FOUND |
ルートが見つかりませんでした。経路情報を含むフィールド(distanceMeters や duration など)は、要素内で入力されません。 |
LocalizedValues
特定のプロパティのテキスト表現。
JSON 表現 |
---|
{ "distance": { object ( |
フィールド | |
---|---|
distance |
テキスト形式で表された移動距離。 |
duration |
交通状況を考慮したテキスト形式で表された所要時間。注: 交通情報がリクエストされなかった場合、この値は staticDuration と同じ値になります。 |
staticDuration |
交通状況を考慮せずにテキスト形式で表された所要時間。 |
transitFare |
テキスト形式で表された運賃。 |