Toll

Ejemplo 1 – Endpoint independiente

En este ejemplo, tenemos una ruta simple que pasa por el peaje de Itaquaquecetuba. Utilizaremos el endpoint independiente para calcular los peajes.

El parámetro legs es una array de objetos donde cada objeto representa una sección de la ruta. En cada leg, debemos definir el parámetro points, que contiene las coordenadas que componen la ruta. En este caso, sólo tenemos un leg que corresponde a toda la ruta.

En vehicleType hemos decidido que queremos hacer la ruta con un camión de doble eje, TRUCK_WITH_TWO_DOUBLE_AXLES .

Si utiliza la Trip API, la respuesta obtenida de Trip puede utilizarse como solicitud a la Toll API, simplemente añadiendo el parámetro vehicleType a cada leg.

Nota: El endpoint independiente sólo se recomienda si utiliza routers de terceros. Si utiliza la Trip API, puede obtener los peajes en la misma solicitud. Si utilizas la Directions API de Google, te recomendamos que utilices la Toll for Maps API.

En los siguientes ejemplos, se utilizará la integración con la Trip API, pero el formato de respuesta será el mismo tanto para el endpoint independiente como para Toll for Maps.

A continuación figura la solicitud 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"
        }
    ]
}

La respuesta llegará en formato JSON.

En totalCost tenemos el importe total de los peajes de toda la ruta. Dentro de cada tramo se devolverá un objeto tolls con los valores e información de cada peaje del tramo correspondiente, y legTotalCost que muestra el valor total de los peajes de ese tramo. 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 con códigos para la integración con sistemas de pago automático. Actualmente sólo está disponible en Brasil;
    • serviceId – Código para la integración;
    • name – Descripción del código de servicio.

A continuación encontrará la respuesta completa:

{
    "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
}