Cuando calculas una ruta o una matriz de rutas, es posible que desees tener en cuenta las tarifas de peaje de la ruta. En algunas ciudades, puedes calcular la tarifa de peaje estimada para una ruta en la moneda correspondiente.
Para obtener los peajes de una matriz de rutas, consulta Cómo calcular las tarifas de peaje para una matriz de rutas.
Para obtener la lista de ubicaciones de peaje admitidas, consulta la referencia de TollPass.
Cómo se calculan los peajes
La API de Routes calcula la tarifa de peaje estimada, teniendo en cuenta los descuentos o pases de precios de peaje disponibles para el conductor o el vehículo, y los métodos de pago más convenientes. Si no hay un precio de peaje disponible para una ruta determinada, la API de Routes indica la existencia de un peaje con una tarifa desconocida.
Para obtener estimaciones de peaje precisas, asegúrate de incluir la siguiente información en tu solicitud:
- El tipo de emisión del vehículo que se usa para la ruta
(
VehicleEmissionType). Si no se proporciona un tipo de emisión, se muestra el peaje para un vehículo a gasolina. - Todos los telepeajes que tienen el vehículo y el conductor con
(
TollPass). La API usa los telepeajes para determinar las tarifas de peaje precisas y muestra los precios en efectivo cuando los telepeajes de la solicitud no son locales para la ruta. - Especifica evitar peajes, si es necesario. Si quieres evitar las rutas con peaje siempre que sea posible, agrega
avoidTollscomoRouteModifier.
Calcular peajes con un telepeaje
Para calcular los peajes con telepeaje, debes especificar los telepeajes como parte de la solicitud. Luego, la API muestra los precios de los pases.
Si especificas un pase de peaje no válido, se ignora.
Si especificas varios telepeajes como un array, la API intenta calcular el precio de la ruta para cada telepeaje.
El comportamiento de los telepeajes puede variar según la región.
Las tarifas pueden ser más bajas con un telepeaje: En algunas regiones, un conductor o vehículo con un telepeaje paga un peaje diferente al de quienes no tienen un telepeaje. Por ejemplo, si tienes un telepeaje Good To Go! en Seattle, Washington, EE.UU., pagas un peaje más bajo que si no tienes un pase.
Es posible que algunas rutas requieran un telepeaje: Algunas regiones, como Indonesia, tienen rutas que requieren un telepeaje. Si no especificas un pase de peaje para una ruta en la que se requiere un pase de peaje, la API no muestra un precio de peaje.
Cómo calcular las tarifas de peaje para una ruta
En el siguiente ejemplo, se usa el
computeRoutes
método para mostrar información sobre el peaje con un
precio estimado cuando se usa un telepeaje. En este ejemplo, haces lo siguiente:
Establece el campo del array
extraComputationsenTOLLSpara habilitar el cálculo de la información sobre el peaje.Especifica el tipo de vehículo y el tipo de telepeaje con el campo
routeModifiersde la solicitud. El precio del peaje que se muestra se basa en los precios que usa el tipo de vehículo y el pase especificados. Si se especifica más de un pase, se muestra el precio más económico.Usa la máscara de campo de respuesta para configurar el método de modo que muestre información sobre el peaje en la respuesta. En este ejemplo, la solicitud incluyó las siguientes propiedades en la máscara de campo de respuesta:
Campo
routes.travelAdvisory.tollInfopara mostrar información de toda la ruta.routes.legs.travelAdvisory.tollInfopara mostrar información de cada tramo.
Solicitud de información sobre el peaje
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'
Respuesta que contiene información sobre el peaje
La respuesta contiene información sobre los peajes en un TollInfo (REST) o TollInfo (gRPC). En este ejemplo, se muestra información sobre el peaje para toda la ruta y para cada tramo de la ruta.
{ "routes": [ { "legs": [ { "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ], "distanceMeters": 150338, "duration": "6650s", "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ] }