Рассчитать плату за проезд по маршруту

Разработчики Европейской экономической зоны (ЕЭЗ)

При расчёте маршрута или матрицы маршрутов может потребоваться учесть любые сборы за проезд по нему. Для некоторых городов можно рассчитать предполагаемую стоимость проезда по маршруту в соответствующей валюте.

Чтобы рассчитать размер платы за проезд по матрице маршрута, см. раздел Рассчитать размер платы за проезд по матрице маршрута .

Список поддерживаемых пунктов взимания платы см. в справке по TollPass .

Как рассчитываются сборы

API Routes рассчитывает предполагаемую стоимость проезда с учётом любых скидок или проездных билетов, доступных водителю или автомобилю, а также наиболее удобных способов оплаты. Если для данного маршрута нет доступной стоимости проезда, API Routes указывает на наличие платного проезда с неизвестной стоимостью.

Чтобы получить точную оценку стоимости проезда, обязательно укажите в своем запросе следующую информацию:

  • Тип выбросов транспортного средства, используемого на маршруте ( VehicleEmissionType ). Если тип выбросов не указан, возвращается плата за проезд для транспортного средства с бензиновым двигателем.
  • Все проездные билеты, имеющиеся у транспортного средства и водителя ( TollPass ). API использует проездные билеты для определения точной стоимости проезда и возвращает наличные цены, если проездные билеты в запросе не относятся к маршруту.
  • При необходимости укажите, что нужно избегать платных дорог . Если вы хотите по возможности избегать платных дорог, добавьте avoidTolls в качестве RouteModifier .

Рассчитать стоимость проезда с помощью проездного билета

Для расчёта платы за проезд с использованием проездного билета необходимо указать все проездные билеты в запросе. API затем возвращает стоимость проездных билетов.

  • Если указан недействительный проездной билет, он будет проигнорирован.

  • Если указать несколько платных проездов в виде массива, API попытается рассчитать цену маршрута для каждого проезда.

Принципы действия пропусков могут различаться в зависимости от региона.

  • Тарифы могут быть ниже при наличии проездного билета : в некоторых регионах для водителя или транспортного средства с проездным билетом действуют иные тарифы, чем для тех, у кого нет проездного билета. Например, если у вас есть проездной Good To Go! в Сиэтле, штат Вашингтон, США, вы заплатите меньше, чем без проездного билета.

  • На некоторых дорогах может потребоваться платный проезд : в некоторых регионах, например, в Индонезии, есть дороги, на которых требуется платный проезд. Если вы не укажете платный проезд для маршрута, где он требуется, API не вернет стоимость проезда.

Рассчитать стоимость проезда по маршруту

В следующем примере метод computeRoutes используется для возврата информации о платном проезде с предполагаемой стоимостью проезда. В этом примере вы:

  • Установите для поля массива extraComputations значение TOLLS чтобы включить расчет информации о платных дорогах.

  • Укажите тип транспортного средства и тип проездного билета, используя поле routeModifiers запроса. Возвращаемая стоимость проезда рассчитывается на основе цен, используемых для указанного типа транспортного средства и проездного билета. Если указано несколько проездных билетов, возвращается цена по самому дешевому тарифу.

  • Используйте маску поля ответа , чтобы настроить метод возврата информации о платных проездах. В этом примере запрос включал следующие свойства в маску поля ответа:

    • Поле routes.travelAdvisory.tollInfo для возврата информации обо всем маршруте.

    • routes.legs.travelAdvisory.tollInfo для возврата информации по каждому этапу.

Запрос информации о платных дорогах

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'

Ответ, содержащий информацию о платных дорогах

Ответ содержит информацию о платных дорогах в объекте TollInfo (REST) или TollInfo (gRPC). В этом примере возвращается информация о платных дорогах для всего маршрута и для каждого его участка.

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