Lorsque vous calculez un itinéraire ou une matrice d'itinéraires, vous pouvez prendre en compte les frais de péage sur l'itinéraire. Pour certaines villes, vous pouvez calculer l'estimation des frais de péage pour un itinéraire dans la devise appropriée.
Pour connaître les péages d'une matrice d'itinéraires, consultez la section Calculer les frais de péage pour une matrice d'itinéraires.
Pour obtenir la liste des points de péage acceptés, consultez la documentation de référence sur TollPass.
Calcul des péages
L'API Routes calcule l'estimation des frais de péage en tenant compte des remises ou des pass de péage proposés pour le conducteur ou le véhicule, ainsi que des modes de paiement les plus pratiques. Si aucun prix de péage n'est disponible pour un itinéraire donné, l'API Routes indique l'existence d'un péage dont les frais sont inconnus.
Pour obtenir des estimations précises des péages, veillez à inclure les informations suivantes dans votre demande:
- Type d'émission du véhicule utilisé pour l'itinéraire (
VehicleEmissionType
). Si aucun type d'émission n'est indiqué, le péage pour un véhicule à essence est renvoyé. - Toutes les cartes de péage que le véhicule et le conducteur ont utilisées utilisent (
TollPass
). L'API utilise les pass de péage pour déterminer précisément les frais de péage et renvoie des prix en espèces si la requête ne comporte pas de péage local sur l'itinéraire. - Si nécessaire, précisez comment éviter les péages. Si vous souhaitez éviter autant que possible les routes à péage, ajoutez
avoidTolls
en tant queRouteModifier
.
Calculer des péages à l'aide d'un pass de péage
Pour calculer les péages à l'aide d'un pass de péage, spécifiez tous les pass dans la requête. L'API renvoie ensuite les prix de la carte.
Si vous spécifiez un titre de péage non valide, il est ignoré.
Si vous spécifiez plusieurs pass de péage dans un tableau, l'API tente de calculer le prix de l'itinéraire pour chaque titre.
Le comportement des pass de péage peut varier d'une région à l'autre.
Les tarifs peuvent être inférieurs avec une carte de péage: dans certaines régions, les frais de péage sont différents pour les conducteurs ou les véhicules disposant d'un pass. Par exemple, si vous avez un titre de péage Good To Go! à Seattle, Washington, aux États-Unis, le péage sera moins élevé que si vous n'avez pas de pass.
Certaines routes nécessitent un péage: certaines régions, comme l'Indonésie, possèdent des routes qui nécessitent un péage. Si vous ne spécifiez pas de pass de péage pour un itinéraire qui en exige un, l'API ne renvoie pas de prix de péage.
Calculer les frais de péage pour un itinéraire
L'exemple suivant utilise la méthode computeRoutes
pour renvoyer les informations sur les péages ainsi qu'une estimation du prix lorsqu'un télépéage est utilisé. Dans cet exemple, vous:
Définissez le champ de tableau
extraComputations
surTOLLS
pour permettre le calcul des informations sur les péages.Spécifiez le type de véhicule et le type de télépéage à l'aide du champ
routeModifiers
de la requête. Le prix des péages affiché est basé sur le prix utilisé pour le type de véhicule et la carte spécifiés. Si plusieurs cartes sont spécifiées, le tarif le moins cher est renvoyé.Utilisez le masque de champ de réponse pour configurer la méthode de façon à renvoyer les informations sur les péages dans la réponse. Dans cet exemple, la requête a inclus les propriétés suivantes dans le masque de champ de réponse:
routes.travelAdvisory.tollInfo
pour renvoyer des informations sur l'ensemble de l'itinéraire.routes.legs.travelAdvisory.tollInfo
pour renvoyer des informations sur chaque étape.
Demande d'informations sur les péages
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'
Réponse contenant des informations sur les péages
La réponse contient des informations sur les péages dans un objet TollInfo (REST) ou TollInfo (gRPC). Dans cet exemple, vous renvoyez les informations sur les péages pour l'intégralité de l'itinéraire et pour chaque section de l'itinéraire.
{ "routes": [ { "legs": [ { "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ], "distanceMeters": 150338, "duration": "6650s", "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ] }