Cuando calculas una ruta o una matriz de rutas, es posible que desees tener en cuenta las tarifas de peaje de la ruta. En ciertas ciudades, puedes calcular la tarifa estimada de una ruta en la moneda correspondiente.
Si deseas obtener peajes para una matriz de rutas, consulta Cómo calcular las tarifas de peajes de una matriz de rutas.
Si deseas ver la lista de ubicaciones de peajes admitidas, consulta la referencia de TollPass.
Cómo se calculan los peajes
La API de Routes calcula la tarifa de peaje estimada y tiene en cuenta los descuentos o pases de peajes disponibles para el conductor o el vehículo, además de 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 de peajes precisas, asegúrate de incluir la siguiente información en tu solicitud:
- El tipo de emisión del vehículo utilizado en la ruta
(
VehicleEmissionType
). Si no se proporciona el tipo de emisión, se devuelve el peaje de un vehículo que usa gasolina. - Todos los pases de peaje que tienen el vehículo y el conductor con (
TollPass
). La API los usa para determinar las tarifas de peajes precisas y devuelve precios en efectivo cuando los pases de peaje de la solicitud no son locales de la ruta. - Especifica la opción de evitar peajes, en caso de ser necesario. Si deseas evitar las 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, debes especificarlos 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 se especifican varios pases de peajes como un array, la API intenta calcular el precio de la ruta para cada pase.
El comportamiento de los peajes 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 lo tienen. Por ejemplo, si tienes un pase de peaje Good To Go! en Seattle, WA, EE.UU., el peaje será más bajo que si no tuvieras un pase.
Algunas rutas pueden requerir 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 es obligatorio hacerlo, la API no mostrará ningún precio de peaje.
Cómo calcular las tarifas de peaje de una ruta
En el siguiente ejemplo, se usa el método computeRoutes
para mostrar información de peajes con un precio estimado cuando se usa un pase de peaje. En este ejemplo, hiciste lo siguiente:
Establece el campo de array
extraComputations
enTOLLS
para habilitar el cálculo de la información de peajes.Especifica el tipo de vehículo y de pase de peaje en el campo
routeModifiers
de la solicitud. El precio de peaje que se muestra se basa en el precio 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 devolución de información de peaje en la respuesta. En este ejemplo, la solicitud incluyó las siguientes propiedades en la máscara de campo de respuesta:
routes.travelAdvisory.tollInfo
para mostrar información de toda la ruta.routes.legs.travelAdvisory.tollInfo
para mostrar la información de cada segmento
Solicitud de información de 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 incluye información de peajes
La respuesta contiene información sobre los peajes en un objeto TollInfo (REST) o TollInfo (gRPC). En este ejemplo, devuelves información sobre peajes 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 } ] } } } ] }