Calcular tarifas de pedágio

Ao calcular uma rota ou uma matriz de rotas, considere as tarifas de pedágio da rota. Para algumas cidades, você pode calcular a taxa estimada de pedágio para uma rota na moeda apropriada.

Veja a lista de locais de pedágio compatíveis abaixo.

Como os pedágios são calculados

A API Routes calcula a taxa de pedágio estimada, considerando os descontos ou passes de pedágio disponíveis para o motorista ou veículo e as formas de pagamento mais convenientes. Se não houver preços de pedágio disponíveis para uma determinada rota, a API Routes indicará a existência de uma tarifa com tarifa desconhecida.

Para calcular com precisão as informações de pedágio, a API Routes oferece a opção de especificar:

  • O tipo de emissão do veículo usado no trajeto (VehicleEmissionType). Se nenhum tipo de emissão for informado, o pedágio de um veículo com combustível será retornado.
  • Todos os pedágios do motorista ou veículo que podem ser aplicados (TollPass). Se nenhum pedágio for especificado, a API vai retornar o preço em dinheiro.
  • avoidTolls como um RouteModifier para evitar pedágios.

Como calcular pedágios ao usar um passe de pedágio

Em algumas regiões, um motorista ou veículo com pedágio paga um pedágio diferente dos que não têm. Por exemplo, se você tiver um pedágio Good to Go! em Seattle, WA, EUA, pagará um pedágio menor do que se não tiver um passe.

Algumas regiões, como a Indonésia, têm vias que exigem pedágio. Se uma tag de pedágio não for especificada para um trajeto em que uma passagem é obrigatória, nenhum preço será retornado.

Se você especificar um pedágio como parte da solicitação, a API tentará retornar o preço do cartão:

  • Se você especificar um passe de pedágio inválido, ele será ignorado.

  • É possível especificar vários pedágios como uma matriz. A API tenta calcular o preço do cartão para cada rota.

Calcular tarifas de pedágio de um trajeto

O exemplo a seguir usa o método computeRoutes para retornar informações de pedágio com um preço estimado quando uma passagem de pedágio é usada. Neste exemplo, você:

  • Defina o campo da matriz extraComputations como TOLLS para ativar o cálculo de informações de pedágio.

  • Especifique os tipos de veículo e de pedágio usando o campo routeModifiers da solicitação. O preço retornado é calculado com base nos preços usados pelo tipo de veículo e pela passagem especificados. Se mais de uma passagem for especificada, o preço mais barato será retornado.

  • Use a máscara de campo de resposta para configurar o método para retornar informações de pedágio na resposta. Neste exemplo, a solicitação incluiu as seguintes propriedades na máscara de campo de resposta:

    • routes.travelAdvisory.tollInfo para retornar informações de toda a rota.

    • routes.legs.travelAdvisory.tollInfo para retornar informações para cada trecho.

Solicitação de informações de pedágio

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'

Resposta contendo informações de pedágio

A resposta contém informações sobre pedágios em um objeto TollInfo (REST) ou TollInfo (gRPC). Neste exemplo, você retorna informações de pedágio para toda a rota e para cada trecho da rota.

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

Calcular taxas de pedágio para uma matriz de trajetos

O exemplo a seguir usa o método computeRouteMatrix para retornar informações de pedágio em uma rota com preço estimado quando uma passagem de pedágio é usada:

  • Defina o campo da matriz extraComputations como TOLLS para ativar o cálculo de informações de pedágio.

  • Especifique os tipos de veículo e de pedágio usando o campo routeModifiers dos waypoints origin da solicitação. O preço de pedágio retornado tem como base o preço usado pelo tipo de veículo e pela passagem especificados. Se for especificado mais de um cartão, o preço mais barato será retornado.

  • Use a máscara de campo de resposta para configurar o método para retornar informações de pedágio na resposta. Especifique routes.travelAdvisory.tollInfo para retornar informações de todo o trajeto.

Solicitação de informações sobre pedágios da matriz de trajetos

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'

Resposta para informações de pedágio da matriz de rota

A resposta contém informações sobre pedágios em um objeto TollInfo (REST) ou TollInfo (gRPC).

Para configurar o método para retornar informações de pedágio, use a máscara de campo de resposta para definir o campo travelAdvisory.tollInfo na máscara.

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

Locais de pedágio com suporte

No momento, as informações de pedágios estão disponíveis para os seguintes locais:

Código da regiãoPaís/regiãoEstado/cidade/via com pedágio
AR Argentina Buenos Aires
AU Austrália Brisbane
AU Austrália Sydney
BR Brasil No país inteiro
ID Indonésia No país inteiro
IN Índia No país inteiro
MX México Cidade do México
EUA Estados Unidos Alabama
EUA Estados Unidos Alasca
EUA Estados Unidos Califórnia
EUA Estados Unidos Colorado
EUA Estados Unidos Delaware
EUA Estados Unidos Flórida
EUA Estados Unidos Illinois
EUA Estados Unidos Iowa
EUA Estados Unidos Indiana
EUA Estados Unidos Kansas
EUA Estados Unidos Louisiana
EUA Estados Unidos Maine
EUA Estados Unidos Maryland
EUA Estados Unidos Massachusetts
EUA Estados Unidos Michigan
EUA Estados Unidos Minnesota
EUA Estados Unidos Missouri
EUA Estados Unidos New Hampshire
EUA Estados Unidos Nova Jersey
EUA Estados Unidos Nova York
EUA Estados Unidos Carolina do Norte
EUA Estados Unidos Ohio
EUA Estados Unidos Pensilvânia
EUA Estados Unidos Rhode Island
EUA Estados Unidos Carolina do Sul
EUA Estados Unidos Texas
EUA Estados Unidos Utah
EUA Estados Unidos Virgínia
EUA Estados Unidos Washington
EUA Estados Unidos West Virginia

Essas informações serão atualizadas à medida que mais dados de pedágio forem disponibilizados.