Ejemplo 1 – Peaje de una ruta sencilla
En este ejemplo, tenemos un simple cálculo de peaje para una ruta de 3 puntos en un tramo de la Autopista Ayrton Senna en São Paulo, procedente de la respuesta de la Directions API de Google Maps, cuya solicitud original era la siguiente:
https://maps.googleapis.com/maps/api/directions/json?origin=-23.465395,-46.375007&waypoints=-23.465957,-46.371015&destination=-23.467154, -46.365598&mode=driving&key={API_KEY}
La respuesta de la API Directions se utilizará como body en la solicitud al endpoint https://api.maplink.global/toll/v1/directions, como en el ejemplo siguiente:
curl -X POST "https://api.maplink.global/toll/v1/directions?vehicleType=TRUCK_WITH_TWO_DOUBLE_AXLES" -H "Authorization: Bearer 3O0d0YjOL72Roqp5CrnGwh5yvgKH" -H "Content-Type: application/json" -d @C:\temp\Directions_Response.json
Dónde:
vehicleType
– Tipo de vehículo que calcula el peaje;Directions_Response.json
– Respuesta de la Directions API que contiene la ruta.
La respuesta llegará en formato JSON.
Los peajes de cada ruta se obtendrán de results
.
Si la Directions API se procesa con rutas alternativas, devolverá 3 results
, con 1 resultado para cada ruta.
Dentro de cada results
se devolverá un objeto legs
que corresponde a la propia ruta. El objeto contendrá el valor total de la ruta en totalCost
y un objeto tolls
con los valores e información de cada peaje de la ruta. También se devolverá el campo vehicleType
, que indica el vehículo utilizado en ese tramo.
Cada objeto devuelto en peajes representa un peaje y contendrá la siguiente información:
name
– Nombre del peaje;address
– Dirección de peaje;city
– Ciudad de peaje;state
– Objeto que contiene el nombre del estado (name
) y su acrónimo (code
);country
– País de peaje;concession
– Concesionario responsable del peaje;coordinates
– Coordenadas (latitud y longitud) del peaje;price
– Precio por peaje;serviceTypes
– Array com códigos para integração com sistemas de pagamento automático. Atualmente disponível apenas no Brasil;serviceId
– Código para la integración;name
– Descripción del código de servicio.
A continuación encontrará la respuesta completa:
{ "results": [ { "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", "coordinates": { "latitude": -23.4656821, "longitude": -46.3727036 }, "serviceTypes": [ { "serviceId": "80", "name": "Via Facil" }, { "serviceId": "35350700329000103", "name": "ANTTCODE" } ], "price": 7.8 } ], "legTotalCost": 7.8 }, { "tolls": [], "legTotalCost": 0 } ], "totalCost": 7.8 } ] }