Calcola le tariffe

Quando esegui il calcolo di un percorso o di una matrice di route, è opportuno prendere in considerazione eventuali tariffe a pedaggio per il percorso. Per alcune città, puoi calcolare la tariffa pedaggio stimata per un percorso nella valuta appropriata.

Consulta l'elenco delle località a pedaggio supportate di seguito.

Come vengono calcolati i pedaggi

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

Per calcolare con precisione le informazioni sui pedaggi, l'API Routes offre la possibilità di specificare:

  • 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.
  • Eventuali pedaggi per l'autista o il veicolo eventualmente applicabile (TollPass). Se non vengono specificati i pedaggi, l'API restituisce il prezzo in contanti.
  • avoidTolls come RouteModifier per evitare strade a pedaggio.

Calcolo del pedaggio quando si usa un pedaggio

In alcune aree geografiche, un autista o un veicolo con un pedaggio paga un pedaggio diverso da quello di coloro che non hanno un pass. Ad esempio, se hai un pass pedaggio Good To Go! a Seattle, WA, USA, pagherai un costo inferiore rispetto a quello se non hai un pass.

Alcune regioni, come l'Indonesia, hanno strade che richiedono un pedaggio. Se il pass per i pedaggi non è specificato per un percorso in cui è richiesto, non viene restituito alcun prezzo.

Se specifichi un pedaggio come parte della richiesta, l'API tenta di restituire il prezzo del pass:

  • Se specifichi un pedaggio non valido, il pass viene ignorato.

  • Puoi specificare più pedaggi come array. L'API tenta di calcolare il prezzo del pass per il percorso di ogni pass.

Calcola i pedaggi per un percorso

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

  • Imposta il campo dell'array extraComputations su TOLLS per abilitare il calcolo delle informazioni sui pedaggi.

  • Specifica il tipo di veicolo e il tipo di pass pedaggio utilizzando il campo routeModifiers della richiesta. Il prezzo del pedaggio restituito si basa sui prezzi utilizzati dal tipo e dal pass del veicolo specificati. Se vengono specificati più pass, viene restituito il prezzo meno costoso.

  • Utilizza la maschera del campo di risposta per configurare il metodo per la restituzione delle informazioni sul pedaggio nella risposta. In questo esempio, la richiesta includeva le seguenti proprietà nella maschera del campo di risposta:

    • campo routes.travelAdvisory.tollInfo per restituire le 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 un oggetto TollInfo (REST) o TollInfo (gRPC). In questo esempio vengono restituite le informazioni sui pedaggi per l'intero percorso e per ogni tratto del 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
            }
          ]
        }
      }
    }
  ]
}

Calcola i pedaggi per una matrice di percorsi

L'esempio seguente utilizza il metodo computeRouteMatrix per restituire informazioni sui pedaggi su un percorso con un prezzo stimato quando viene utilizzato un pedaggio:

  • Imposta il campo dell'array extraComputations su TOLLS per abilitare il calcolo delle informazioni sui pedaggi.

  • Specifica il tipo di veicolo e il tipo di pedaggio utilizzando il campo routeModifiers dei tappe origine della richiesta. Il prezzo del pedaggio restituito si basa sui prezzi utilizzati dal tipo e dal pass del veicolo specificati. Se vengono specificati più pass, viene restituito il prezzo meno costoso.

  • Utilizza la maschera del campo di risposta per configurare il metodo per la restituzione delle informazioni sul pedaggio nella risposta. Specifica routes.travelAdvisory.tollInfo per restituire informazioni per l'intero percorso.

Richiesta di informazioni sul pedaggio per una matrice di percorso

curl -X POST -d '{
"origins": [
  {
    "waypoint": {
      "location": {
        "latLng": {
          "latitude":42.340173523716736,
          "longitude":-71.05997968330408
        }
      }
    },
    "routeModifiers": {
      "vehicleInfo":{
        "emissionType": "GASOLINE"
      },
      "tollPasses": [
        "US_MA_EZPASSMA",
        "US_WA_GOOD_TO_GO"
      ]
    }
  }
],
"destinations": [
  {
    "waypoint": {
      "location": {
        "latLng": {
          "latitude":42.075698891472804,
          "longitude": -72.59806562080408
        }
      }
    }
  }
],
"travelMode": "DRIVE",
"extraComputations": ["TOLLS"]
}' \
-H 'Content-Type: application/json' \
-H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: originIndex,destinationIndex,travel_advisory.tollInfo,duration,distanceMeters,status' \
'https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix'

Risposta per informazioni sul pedaggio tramite matrice del percorso

La risposta contiene informazioni sui pedaggi in un oggetto TollInfo (REST) o TollInfo (gRPC).

Per configurare il metodo per la restituzione delle informazioni sui pedaggi, utilizza la maschera del campo di risposta per impostare il campo travelAdvisory.tollInfo nella maschera.

[
  {
    "originIndex": 0,
    "destinationIndex": 0,
    "status": {},
    "distanceMeters": 150338,
    "duration": "5382s",
    "travelAdvisory": {
      "tollInfo": {
        "estimatedPrice": [
          {
            "currencyCode": "USD",
            "units": "4",
            "nanos": 400000000
           }
        ]
      }
    }
  }
]

Località pedaggi supportate

Le informazioni sul pedaggio sono attualmente disponibili per le seguenti località:

Codice regionePaese/regioneStato/città/strada a pedaggio
AR Argentina Buenos Aires
AU Australia Brisbane
AU Australia Sydney
BR Brasile A livello nazionale
ID Indonesia A livello nazionale
IN India A livello nazionale
MX Messico Città del Messico
IT USA Alabama
IT USA Alaska
IT USA California
IT USA Colorado
IT USA Delaware
IT USA Florida
IT USA Illinois
IT USA Iowa
IT USA Indiana
IT USA Kansas
IT USA Louisiana
IT USA Maine
IT USA Maryland
IT USA Massachusetts
IT USA Michigan
IT USA Minnesota
IT USA Missouri
IT USA New Hampshire
IT USA New Jersey
IT USA New York
IT USA Carolina del Nord
IT USA Ohio
IT USA Pennsylvania
IT USA Rhode Island
IT USA Carolina del Sud
IT USA Texas
IT USA Utah
IT USA Virginia
IT USA Washington
IT USA West Virginia

Queste informazioni verranno aggiornate man mano che saranno disponibili altri dati pedaggi.