Oblicz opłaty za przejazd

Deweloperzy z Europejskiego Obszaru Gospodarczego (EOG)

Podczas obliczania trasy lub macierzy tras możesz uwzględnić opłaty za przejazd drogą płatną. W przypadku wybranych miast możesz obliczyć szacunkową opłatę za przejazd na trasie w odpowiedniej walucie.

Listę obsługiwanych lokalizacji, w których pobierane są opłaty za przejazd, znajdziesz w dokumentacji TollPass.

Jak obliczane są opłaty za przejazd

Routes API oblicza szacunkową opłatę za przejazd, uwzględniając wszelkie rabaty lub winiety dostępne dla kierowcy lub pojazdu oraz najwygodniejsze formy płatności. Jeśli dla danej trasy nie ma dostępnej ceny za przejazd, interfejs Routes API wskazuje istnienie opłaty drogowej o nieznanej wysokości.

Aby uzyskać dokładne szacunki opłat, w prośbie podaj te informacje:

  • Typ emisji pojazdu używanego na trasie (VehicleEmissionType). Jeśli nie podano typu emisji, zwracana jest opłata za przejazd pojazdem zasilanym benzyną.
  • Wszystkie urządzenia do płatności za przejazd, które ma pojazd i kierowca, za pomocą tollPasses. Interfejs API używa winiet do określania dokładnych opłat za przejazd i zwraca ceny w gotówce, gdy winiety w żądaniu nie są lokalne dla trasy.
  • W razie potrzeby wskaż, że chcesz unikać opłat. Jeśli chcesz w miarę możliwości unikać dróg płatnych, dodaj avoidTolls jako RouteModifier.

Obliczanie opłat za przejazd przy użyciu karty opłat

Aby obliczyć opłaty za przejazd przy użyciu winiety, w ramach żądania musisz podać informacje o winietach. Następnie interfejs API zwraca ceny karnetów.

  • Jeśli podasz nieprawidłowy identyfikator urządzenia do pobierania opłat, zostanie on zignorowany.
  • Jeśli podasz wiele winiet w postaci tablicy, interfejs API spróbuje obliczyć cenę trasy dla każdej z nich.

Sposób działania winiet może się różnić w zależności od regionu.

  • Ceny mogą być niższe w przypadku korzystania z karty opłat za przejazd: w niektórych regionach kierowca lub pojazd z kartą opłat za przejazd płaci inną opłatę niż osoby, które nie mają takiej karty. Jeśli na przykład masz Good To Go! w Seattle w stanie Waszyngton w Stanach Zjednoczonych, zapłacisz niższe opłaty niż w przypadku braku karty.
  • Na niektórych drogach może być wymagana winieta: w niektórych regionach, np. w Indonezji, są drogi, na których wymagana jest winieta. Jeśli nie określisz winiety dla trasy, na której jest ona wymagana, interfejs API nie zwróci ceny przejazdu.

Obliczanie opłat drogowych na trasie

Aby obliczyć opłaty za przejazd na trasie, wykonaj te czynności:

  • Ustaw właściwość extraComputations na TOLLS.
  • Określ typ pojazdu i typ winiety za pomocą właściwości routeModifiers.
  • Aby obliczyć opłaty za przejazd na całej trasie, w właściwości travelAdvisory żądania podaj wartość fields. Informacje o opłatach za przejazd na całej trasie możesz wyświetlić, odczytując wartość route.travelAdvisory.tollInfo.
  • Aby obliczyć opłaty za przejazd poszczególnymi odcinkami trasy, w właściwości fields żądania wyślij prośbę legs. Informacje o opłatach za przejazd poszczególnymi odcinkami trasy możesz wyświetlić, odczytując route.legs[i].travelAdvisory.tollInfo.

Przykład

Poniższy przykład żądania pokazuje, jak poprosić o opłaty za przejazd na trasie:

const requestWithTolls = {
  origin: 'Kirkland, WA',
  destination: 'University of Washington',
  travelMode: 'DRIVING',
  extraComputations: ['TOLLS'],
  routeModifiers: {
    vehicleInfo: {
      emissionType: 'GASOLINE',
    },
    tollPasses: ['US_WA_GOOD_TO_GO'],
  },
  fields: ['path', 'legs', 'distanceMeters', 'durationMillis', 'travelAdvisory'],
};