Exemplo 1 – Endpoint independente
Nesse exemplo, temos uma rota simples que passa pelo pedágio de Itaquaquecetuba. Iremos utilizar o endpoint independente para obter o cálculo dos pedágios.
O parâmetro legs
é um array de objetos onde cada objeto representa um trecho da rota. Em cada leg
, devemos definir o parâmetro points
, que contém as coordenadas que compõem a rota. No caso, teremos apenas uma leg
que corresponde a rota inteira.
Em vehicleType
definimos que queremos realizar a rota com um caminhão de dois eixos duplos, TRUCK_WITH_TWO_DOUBLE_AXLES
.
Caso utilize a Trip API, a resposta obtida na Trip poderá ser usada como requisição para a Toll API, bastando apenas adicionar o parâmetro vehicleType
em cada leg
.
Nota: O endpoint independente só é recomendável caso você utilize roteirizadores de terceiros. Caso utilize a Trip API, é possível obter os pedágios na mesma requisição. Caso utilize a Directions API do Google, o recomendável é que você utilize a Toll for Maps API.
Nos próximos exemplos, será utilizado a integração com a Trip API, porém o formato da resposta será o mesmo, tanto para o endpoint independente, quanto para a Toll for Maps.
Abaixo a requisição completa:
{ "legs": [ { "points": [ { "latitude": -23.465395, "longitude": -46.375007 }, { "latitude": -23.465957, "longitude": -46.371015 }, { "latitude": -23.467154, "longitude": -46.36559 } ], "vehicleType": "TRUCK_WITH_TWO_DOUBLE_AXLES" } ] }
A resposta virá no formato JSON.
Em totalCost
temos o valor total dos pedágios em toda a rota. Dentro de cada leg será retornado um objeto tolls
com os valores e informações de cada pedágio no trecho correspondente, e a legTotalCost
que mostra o valor total de pedágios naquele trecho. Também será retornado o campo vehicleType
que indica o veículo utilizado nesse trecho.
Cada objeto retornado em tolls representa um pedágio e irá conter as seguintes informações:
name
– Nome do pedágio;address
– Endereço do pedágio;city
– Cidade do pedágio;state
– Objeto contendo o nome do estado (name
) e sua sigla (code
);country
– País do pedágio;concession
– Concessionária responsável pelo pedágio;coordinates
– Coordenadas (latitude e longitude) do pedágio;price
– Valor por pedágio;serviceTypes
– Array com códigos para integração com sistemas de pagamento automático. Atualmente disponível apenas no Brasil;serviceId
– Código para a integração;name
– Descrição do código do serviço.
A resposta completa encontra-se abaixo:
{ "legs": [ { "tolls": [ { "id": "17", "name": "Pedágio - Itaquaquecetuba Leste", "address": "SP 070 - Rod. Ayrton Senna - Km 32,9", "city": "Itaquaquecetuba", "state": { "name": "São Paulo", "code": "SP" }, "country": "Brasil", "concession": "Ecopistas", "direction": "EAST", "coordinates": { "latitude": -23.4656821, "longitude": -46.3727036 }, "serviceTypes": [ { "serviceId": "80", "name": "Via Facil" }, { "serviceId": "35350700329000103", "name": "ANTTCODE" } ], "price": 10.40 } ], "legTotalCost": 10.40, "vehicleType": "TRUCK_WITH_TWO_DOUBLE_AXLES" } ], "totalCost": 10.40 }