ルートまたはルート マトリックスを計算する場合は、ルート上の通行料金を考慮することをおすすめします。一部の都市では、ルートの通行料の見積もりを適切な通貨で計算できます。
ルート マトリックスの通行料を取得するには、ルート マトリックスの通行料金を計算するをご覧ください。
サポートされている通行料の場所の一覧については、TollPass のリファレンスをご覧ください。
通行料金の計算方法
Routes API は、ドライバーまたは車両が利用できる通行料金の割引やパス、最も便利な支払い方法を考慮して、通行料金の見積もりを計算します。特定のルートで利用可能な通行料金がない場合は、Routes API は不明な料金の通行料金の存在を示します。
正確な通行料の見積もりを取得するには、リクエストに次の情報を含めてください。
- ルートで使用される車両の排出量タイプ(
VehicleEmissionType
)。排出量タイプが指定されていない場合、ガソリン車の通行料が返されます。 - 車両とドライバーが持っているすべての通行料パス(
TollPass
)。API は通行料パスを使用して正確な通行料を決定し、リクエスト内の通行料パスがルート内にない場合は現金価格を返します。 - 必要に応じて有料道路を避けるように指定します。可能であれば有料道路を避けるようにするには、
avoidTolls
をRouteModifier
として追加します。
通行料パスを使用して通行料金を計算する
通行料パスを使用して通行料を計算するには、リクエストの一部として通行料パスを指定します。API はパスの料金を返します。
無効な通行料パスを指定した場合、そのパスは無視されます。
複数の料金パスを配列として指定すると、API は各パスの経路の料金を計算しようとします。
通行料パスの動作は地域によって異なる場合があります。
通行料金が通行料パスで割引になる場合がある: 地域によっては、通行料パスを持っているドライバーや車両は、パスを持っていないドライバーや車両とは異なる通行料を支払う場合があります。たとえば、米国ワシントン州シアトルで Good To Go! 通行料パスを持っている場合、パスを持っていない場合よりも通行料が割引されます。
一部の道路では通行料パスが必要になる場合があります: インドネシアなど、一部の地域では通行料パスが必要な道路があります。通行料パスが必要なルートに通行料パスを指定しないと、API は通行料を返しません。
ルートの通行料金を計算する
次の例では、computeRoutes
メソッドを使用して、通行料パスを使用した場合の通行料の概算を返します。この例では、次の操作を行います。
通行料情報の計算を有効にするには、
extraComputations
配列フィールドをTOLLS
に設定します。リクエストの
routeModifiers
フィールドを使用して、車両のタイプと通行料パスのタイプを指定します。返される通行料金は、指定された車両タイプとパスで使用される料金に基づいています。複数のパスが指定されている場合は、最も低価格の料金が返されます。レスポンス フィールド マスクを使用して、レスポンスで通行料情報を返すメソッドを構成します。この例では、リクエストのレスポンス フィールド マスクに次のプロパティが含まれています。
routes.travelAdvisory.tollInfo
フィールド: ルート全体の情報を返します。routes.legs.travelAdvisory.tollInfo
: 各区間の情報を返します。
通行料金情報のリクエスト
curl -X POST -d '{ "origin":{ "location":{ "latLng":{ "latitude":42.340173523716736, "longitude":-71.05997968330408 } } }, "destination":{ "location":{ "latLng":{ "latitude":42.075698891472804, "longitude": -72.59806562080408 } } }, "travelMode": "DRIVE", "extraComputations": ["TOLLS"], "routeModifiers":{ "vehicleInfo":{ "emissionType": "GASOLINE" }, "tollPasses": [ "US_MA_EZPASSMA", "US_WA_GOOD_TO_GO" ] } }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.travelAdvisory.tollInfo,routes.legs.travelAdvisory.tollInfo' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
通行料に関する情報を含むレスポンス
レスポンスには、TollInfo(REST)または TollInfo(gRPC)オブジェクトの料金に関する情報が含まれます。この例では、ルート全体とルートの各区間について通行料金情報を返します。
{ "routes": [ { "legs": [ { "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ], "distanceMeters": 150338, "duration": "6650s", "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ] }