Gdy obliczasz trasę lub macierz tras, możesz wziąć pod uwagę wszelkie opłaty naliczane na trasie. W wybranych miastach możesz obliczyć szacunkowy koszt opłaty za przejazd autostradą w odpowiedniej walucie.
Aby uzyskać opłaty za przejazd dla macierzy tras, zapoznaj się z artykułem Obliczanie opłat za przejazd dla macierzy tras.
Listę obsługiwanych lokalizacji znajdziesz w dokumentacji TollPass.
Jak obliczamy opłaty drogowe
Interfejs Routes API oblicza szacowaną opłatę za przejazd, biorąc pod uwagę wszelkie zniżki i bilety dostępne dla kierowcy lub pojazdu, a także najwygodniejsze formy płatności. Jeśli nie ma dostępnej ceny za przejazd na danej trasie, interfejs Routes API wskazuje, że opłata za przejazd jest nieznana.
Aby uzyskać dokładne szacunki opłat za przejazd, w prośbie uwzględnij te informacje:
- Rodzaj emisji pojazdu używanego na danej trasie
(
VehicleEmissionType
). Jeśli nie podano rodzaju emisji, zwracana jest opłata za pojazd spalany benzyną. - Wszystkie winiety pobierane przez pojazd i kierowcę za pomocą
TollPass
. Interfejs API wykorzystuje informacje o opłatach, aby określić dokładne opłaty za przejazd, i zwraca gotówkową kwotę, jeśli winiety nie dotyczą trasy. - W razie potrzeby określ, czy chcesz unikać opłat za przejazd autostradami. Jeśli chcesz unikać dróg płatnych, dodaj
avoidTolls
jakoRouteModifier
.
Obliczanie opłat za przejazd przy użyciu karty do poboru opłat
Aby obliczyć opłaty za przejazd za pomocą karty do poboru opłat, podaj karty do poboru opłat w ramach żądania. Interfejs API zwraca ceny biletów.
Jeśli podasz nieprawidłową kartę, zostanie ona zignorowana.
Jeśli podasz wiele kart w tablicy, interfejs API spróbuje obliczyć cenę trasy dla każdej z nich.
Sposób działania winiety na drogi może się różnić w zależności od regionu.
Stawki mogą być niższe z pozwoleniem na wjazd: w niektórych regionach kierowca lub pojazd z pozwoleniem na opłaty pobiera inne opłaty niż osoby, które nie mają takiego winiety. Jeśli na przykład masz kartę Good To Go! w Seattle w stanie Waszyngton w Stanach Zjednoczonych, płacisz niższe opłaty niż w przypadku braku karty.
Na niektórych drogach może być wymagana opłata drogowa: w niektórych regionach, takich jak Indonezja, na drogach wymagana jest opłata drogowa. Jeśli nie określisz karty do poboru opłat za przejazd dla trasy, na której jest ona wymagana, interfejs API nie zwróci ceny za przejazd.
Obliczanie opłat drogowych za połączenia drogowe
W tym przykładzie metoda computeRoutes
zwraca informacje o opłatach drogowych wraz z szacowaną ceną, gdy używana jest karta poboru opłat. W tym przykładzie:
Aby umożliwić obliczanie informacji o opłatach, w polu tablicy
extraComputations
ustawTOLLS
.W polu
routeModifiers
żądania określ typ pojazdu i typ karty do poboru opłat. Zwrócona cena za przejazd jest obliczana na podstawie cen stosowanych przez określony typ pojazdu i winietę. Jeśli podano więcej niż 1 kartę, zwracana jest cena najtańsza.Aby skonfigurować metodę zwracania informacji o opłatach w odpowiedzi, użyj maski pola odpowiedzi. W tym przykładzie żądanie zawierało te właściwości w polu odpowiedzi:
routes.travelAdvisory.tollInfo
, aby zwrócić informacje o całym przebiegu trasy.routes.legs.travelAdvisory.tollInfo
, aby zwrócić informacje o każdym etapie.
Prośba o informacje o opłatach drogowych
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'
Odpowiedź zawierająca informacje o opłatach
Odpowiedź zawiera informacje o opłatach drogowych w obiekcie TollInfo (REST) lub TollInfo (gRPC). W tym przykładzie zwracane są informacje o opłatach dla całej trasy i każdego jej etapu.
{ "routes": [ { "legs": [ { "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ], "distanceMeters": 150338, "duration": "6650s", "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ] }