Calcola le tariffe per i pedaggi per un percorso

Quando calcoli un percorso o una matrice di percorsi, potrebbe essere opportuno prendere in considerazione eventuali pedaggi lungo il percorso. Per città selezionate, puoi calcolare la stima tariffa a pedaggio per un percorso nella valuta appropriata.

Per ottenere i pedaggi per una matrice di percorsi, consulta Calcolare le tariffe per i pedaggi per una matrice di percorsi.

Per l'elenco delle stazioni di pedaggio supportate, consulta la documentazione di TollPass.

Come vengono calcolati i pedaggi

L'API Routes calcola la tariffa del pedaggio stimata, tenendo conto di eventuali sconti sul prezzo del pedaggio o tessere disponibili per il conducente o il veicolo, nonché dei metodi di pagamento più convenienti. Se non è disponibile un prezzo per un determinato tratto, l'API Routes indica l'esistenza di un pedaggio con una tariffa sconosciuta.

Per ottenere stime dei pedaggi accurate, assicurati di includere le seguenti informazioni nella tua richiesta:

  • Il tipo di emissione del veicolo utilizzato per il percorso (VehicleEmissionType). Se non viene fornito alcun tipo di emissione, viene restituito il pedaggio per un veicolo a benzina.
  • Tutti i permessi di pedaggio di cui dispone il veicolo e il conducente (TollPass). L'API utilizza i permessi di pedaggio per determinare le tariffe accurate e restituisce i prezzi in contanti quando i permessi di pedaggio nella richiesta non sono locali per il percorso.
  • Specificare l'opzione da evitare a pedaggio, se necessario. Se vuoi evitare le strade a pedaggio dove possibile, aggiungi avoidTolls come RouteModifier.

Calcolare i pedaggi con i pedaggi

Per calcolare i pedaggi utilizzando una tessera, devi specificare le tessere nell'ambito della richiesta. L'API restituisce quindi i prezzi dei pass.

  • Se specifichi una tessera a pedaggio non valida, questa viene ignorata.

  • Se specifichi più tessere per il pedaggio come array, l'API tenta di calcolare il prezzo del percorso per ogni tessera.

Il comportamento dei pass per pedaggi può variare in base alla regione.

  • Le tariffe potrebbero essere inferiori con una tessera per il pedaggio: in alcune regioni, un conducente o un veicolo con una tessera per il pedaggio paga un pedaggio diverso rispetto a chi non ne ha una. Ad esempio, se disponi di una Ottimo lavoro! pedaggio a Seattle, WA, USA, paghi un pedaggio inferiore rispetto a quando vengono superate.

  • Per alcune strade potrebbe essere necessario un permesso di pedaggio: in alcune regioni, come l'Indonesia, esistono strade per le quali è necessario un permesso di pedaggio. Se non specifichi una tessera per il pedaggio per un percorso in cui è richiesta una tessera per il pedaggio, l'API non restituisce un prezzo del pedaggio.

Calcolare le tariffe dei pedaggi per un itinerario

L'esempio seguente utilizza il metodo computeRoutes per restituire le informazioni sui pedaggi con un prezzo stimato quando viene utilizzato un permesso per il pedaggio. In questo esempio:

  • Imposta il campo array extraComputations su TOLLS per abilitare il calcolo di informazioni sui pedaggi.

  • Specifica il tipo di veicolo e il tipo di pedaggio utilizzando il menu Campo routeModifiers della richiesta. Il prezzo del pedaggio restituito si basa sul prezzo utilizzato dal tipo di veicolo e dalla tessera specificati. Se più di uno pass viene specificato, viene restituito il prezzo meno costoso.

  • Utilizza la maschera del campo di risposta per configurare il metodo restituire informazioni sui pedaggi nella risposta. In questo esempio, la richiesta ha incluso le seguenti proprietà nella maschera del campo di risposta:

    • routes.travelAdvisory.tollInfo per restituire informazioni per l'intero percorso.

    • routes.legs.travelAdvisory.tollInfo per restituire informazioni per ogni gamba.

Richiesta di informazioni sui pedaggi

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'

Risposta contenente informazioni sul pedaggio

La risposta contiene informazioni sui pedaggi in una TollInfo (REST) o Oggetto TollInfo (gRPC). In questo ad esempio, le informazioni sui pedaggi vengono visualizzate per l'intero percorso e per ogni tratto di lungo il percorso.

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