Cuando calcules una ruta o una matriz de rutas, es posible que debas tener en cuenta los peajes de la ruta. En algunas ciudades, puedes calcular la tarifa de peaje estimada para una ruta en la moneda correspondiente.
Para obtener peajes para una matriz de rutas, consulta Cómo calcular los peajes de una matriz de rutas.
Para obtener la lista de las ubicaciones de peaje compatibles, 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 peaje disponibles para el conductor o el vehículo, y las formas 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 precisas de peajes, 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 ningún tipo de emisión, se muestra el peaje de un vehículo a gasolina. - Todos los pases de peaje que tienen el vehículo y el conductor (
TollPass
). La API usa los pases de peaje para determinar tarifas de peaje precisas y muestra precios en efectivo cuando los pases de peaje en la solicitud no son locales para la ruta. - Especifica evitar peajes si es necesario. Si deseas evitar rutas con peaje siempre que sea posible, agrega
avoidTolls
comoRouteModifier
.
Cómo calcular los peajes con un pase de peaje
Para calcular los peajes con un pase de peaje, especifica los pases de peaje como parte de la solicitud. Luego, la API muestra los precios de los pases.
Si especificas un pase de peaje no válido, se ignorará.
Si especificas varios pases de peaje como un array, la API intentará calcular el precio de la ruta para cada pase.
El comportamiento de los pases de peaje puede variar según la región.
Las tarifas pueden ser más bajas con un pase de peaje: En algunas regiones, un conductor o un vehículo con un pase de peaje paga un peaje diferente al de quienes no tienen un pase. Por ejemplo, si tienes un pase de peaje Good To Go! en Seattle, Washington, EE.UU., pagarás un peaje más bajo que si no tienes un pase.
Es posible que algunas rutas requieran un pase de peaje: Algunas regiones, como Indonesia, tienen rutas que requieren un pase de peaje. 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.
Calcula los peajes de una ruta
En el siguiente ejemplo, se usa el método computeRoutes
para mostrar información sobre peajes con un precio estimado cuando se usa un pase de peaje. En este ejemplo, debes hacer lo siguiente:
Establece el campo del array
extraComputations
enTOLLS
para habilitar el cálculo de la información de peaje.Especifica el tipo de vehículo y el tipo de pase de peaje con el campo
routeModifiers
de 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 para que muestre la información de peaje en la respuesta. En este ejemplo, la solicitud incluyó las siguientes propiedades en la máscara de campo de respuesta:
campo
routes.travelAdvisory.tollInfo
para mostrar información de toda la rutaroutes.legs.travelAdvisory.tollInfo
para mostrar información para cada tramo.
Solicitud de información sobre peajes
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 peajes
La respuesta contiene información sobre los peajes en un objeto TollInfo (REST) o TollInfo (gRPC). En este ejemplo, se muestra información sobre los peajes de toda la ruta y de cada tramo.
{ "routes": [ { "legs": [ { "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ], "distanceMeters": 150338, "duration": "6650s", "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ] }