Calculer les frais de péage pour un itinéraire

Lorsque vous calculez un itinéraire ou une matrice de routes, vous devrez peut-être tenir compte des frais de péage sur l’itinéraire. Pour certaines villes, vous pouvez calculer le montant estimé des péages pour un itinéraire dans la devise appropriée.

Pour connaître les péages d'un itinéraire, consultez l'article Calculer les frais de péage pour une matrice d'itinéraires

Pour obtenir la liste des zones de péage disponibles, consultez la documentation de référence sur TollPass :

Calcul des péages

L'API Routes calcule les frais de péage estimés, en tenant compte de toutes les remises ou cartes de péage disponibles 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 moyennant des frais inconnus.

Pour obtenir des estimations précises des péages, veillez à inclure les informations suivantes : dans votre demande:

  • Le type d'émissions 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 le suivant : renvoyé.
  • Tous les badges de péage dont dispose le véhicule et le conducteur à l'aide de (TollPass). L'API utilise les badges de péage pour déterminer les tarifs de péage précis et renvoie les prix en espèces lorsque les badges de péage de la requête ne sont pas locaux par rapport à l'itinéraire.
  • Spécifiez "Éviter les péages", si nécessaire. Si vous souhaitez éviter les routes à péage possible, ajoutez avoidTolls en tant que RouteModifier.

Calculer les péages à l'aide d'un télépéage

Pour calculer les péages à l'aide d'une carte de péage, vous devez spécifier les cartes de péage dans la requête. L'API renvoie ensuite les prix des cartes.

  • Si vous spécifiez un titre de péage non valide, il est ignoré.

  • Si vous spécifiez plusieurs pass de péage sous forme de tableau, l'API tente calculer le prix de l'itinéraire pour chaque pass.

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, un conducteur ou un véhicule disposant d'une carte de péage paie des frais de péage différents de ceux qui n'en ont pas. Par exemple, si vous disposez d'une carte de péage Good To Go! à Seattle (Washington, États-Unis), vous payez un péage inférieur à celui que vous paieriez sans carte.

  • Certaines routes peuvent nécessiter une carte de péage : dans certaines régions, comme l'Indonésie, certaines routes nécessitent une carte de péage. Si vous n'indiquez pas de télépéage pour nécessitant un télépéage, 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 classe computeRoutes pour obtenir des informations sur les péages avec une estimation lorsqu'un télépéage est utilisé. Dans cet exemple, vous :

  • Définissez le champ de tableau extraComputations sur TOLLS pour activer le calcul d'informations sur les péages.

  • Spécifiez le type de véhicule et le type de carte de péage à l'aide du champ routeModifiers de la requête. Les prix de péage renvoyés sont basés sur le prix utilisé pour le type de véhicule et le pass spécifiés. Si plusieurs cartes sont spécifiées, le prix le moins cher est renvoyé.

  • Utilisez le masque de champ de réponse pour configurer la méthode afin qu'elle renvoie des informations sur les péages dans la réponse. Dans cet exemple, la requête incluait les propriétés suivantes dans le masque de champ de réponse :

    • le champ routes.travelAdvisory.tollInfo pour renvoyer des informations pour le l'intégralité de l'itinéraire.

    • routes.legs.travelAdvisory.tollInfo pour renvoyer des informations pour chaque jambe.

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 une TollInfo (REST) ou TollInfo (gRPC). Dans cet exemple, vous renvoyez des informations sur les péages pour l'ensemble de l'itinéraire et pour chaque section.

{
  "routes": [
    {
      "legs": [
        {
          "travelAdvisory": {
            "tollInfo": {
              "estimatedPrice": [
                {
                  "currencyCode": "USD",
                  "units": "4",
                  "nanos": 400000000
                }
              ]
            }
          }
        }
      ],
      "distanceMeters": 150338,
      "duration": "6650s",
      "travelAdvisory": {
        "tollInfo": {
          "estimatedPrice": [
            {
              "currencyCode": "USD",
              "units": "4",
              "nanos": 400000000
            }
          ]
        }
      }
    }
  ]
}