Toll

Estructura de respuesta – Endpoint independiente

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.

En este ejemplo tenemos una ruta simple que pasa por la caseta de peaje de Tres Marías en México. Utilizaremos el endpoint independiente para obtener el cálculo del peaje.

La ruta fue generada por la API Routes de Google y está en formato de polyline.

Solicitud

Dado que la ruta fue generada por una API de Google, deberá establecer el parámetro source en GMAPS. Si la ruta fue generada por la API Trip, o por algún otro servicio, no será necesario informar el parámetro source.

En billing lo definiremos como FREE_FLOW, para obtener el retorno tanto de peajes como de pórticos. Si el valor es DEFAULT, solo se devolverán los peajes convencionales (casetas).

El parámetro legs es una matriz de objetos donde cada objeto representa una sección de la ruta. En cada tramo debemos definir el parámetro points, que contiene las coordenadas que componen el recorrido. En este caso sólo tendremos un leg que corresponde a todo el recorrido. Las coordenadas de la ruta están en formato de string, codificadas como una polyline.

Para cada objeto contenido en legs, deberá informar el tipo de vehículo utilizado para esa sección. En el parámetro vehicleType definiremos que la ruta se realizará con un camión de cuatro ejes dobles, para ello utilizaremos el valor TRUCK_WITH_FOUR_DOUBLE_AXLES. En el parámetro condition, estableceremos billingType como NORMAL y period como NORMAL.

La solicitud completa se puede encontrar a continuación:

{
    "source": "GMAPS",
    "billing": "FREE_FLOW",
    "legs": [
        {
            "vehicleType": "TRUCK_WITH_FOUR_DOUBLE_AXLES",
            "condition": {
                "period": "NORMAL",
                "billingType": "NORMAL"
            },
            "points": "gzwtBnkk|Q_EoAGqDyAKiIh@cID_HcGiA}H_@iLCcHd@wMhAqSTuGbAcO|Dak@vBcJ|FiJtZyTfJ{GrHkExD{BrBEbAZfAxAdLlRbO~WhFtGrJ|FfYzOvGdCfDWpFcCdPgGrFG~H~AtWjG~G~AnD?fB_@~CyBrJiMnTmYvJ}LlEuB~CSpJ\\hEeAvGoGnFsHhBiFbBqExCyChGuF~GaDrG{@rGgBtUuJdNiFtOwCzDp@zBdCzAzBjBnAjD`@vKQfCqA`CqE`AcFeA}DwBgEAcDbBmClCkC`@_Dm@iCqCkBaFJkFYwFmE}B{FcBaHTgDjBwCpMsH~EaB~LVrE~@zCvEnAbAfB^dF[nDh@hFpEjPhKbEhArIZ|Hs@tC~@vIrHdIhDlIj@nI@~DfAfB`BvAvD@pGo@`Qf@|F`Sjh@`InTzCnLhAtCrBdClExB~HTdOwExRuG|KsCvRuA~HeC`a@gVxJaFtCObI`@~FhA~CvCbBtFdCzFzDbCxBd@zDAzOOnCj@hFfDfMrJhLtF|g@xQfg@nQbTvHpFrBrD`CtCfDvIpOpOrMlb@b\\|NdLjInFxc@fLzKzF|KvGzIdGlCpD|JxZ`ElMnFtKtWnf@dTt`@jKrRxDhEli@na@dE|FdBpFnDxe@rAzPtBnF~EdE|KbDvj@tOvCzAvGrF|GhFpE|@|DUfHsAxE\\bG`CtFXlHi@bDf@hGbElJlGbJtB~JWzNcCpGiDrFaJ|EqHlKwJvUmThKmMhC}BhEsAlJ_DlFuE`J_JpB}EpFuTGwFiB_LFeElBuKWyFcDiLi@iK]qTbEcN|EkM|CoDxNsHrH{DtCoEl@{EqA_Zk@sG}A}HiOs_@m@uFnDqPjDaOGiND}MhBkEhEeDzCyCdAgCfDoKlGyIpAgF@{Fm@yLbAqFfF{KxAwJr@cK}CuSv@cKSiG_EyKwAuFWsLDaPt@eA|Ak@rCh@fApB?bBkDbI@rGdUxi@~HtMtA|E`Bhg@vDl`@lAfKdBlFbJxQxChLdGjZtL`[|BzSjZhm@hEhEdMnIhBpC`BlGtE~PxJbJdNzKfDtDdApC`ElMrSjYxQxV|AnFj@tHpBrc@gA~QRjE~AtHhAlFtAxCxAvAnCnAfPh@jFtA~CbCdBrCjAxEFxEC|Nd@xCnBbDnCzAbC`@vEB|DyBdD{Dx@A`Ar@b@xD\\xAvKx[lCrJ\\Vh@Slw@iGvc@mCNIDIhTmEfScG|CoAi@UeCGYs@rAcC`@o@UOwBd@yC|AoJvBv@vDHb@RhAcAX}@VkBf@"
        }
    ]
}

Respuesta

En la respuesta tendremos los siguientes campos:

  • totalCost – Valor total del peaje en todo el recorrido;
  • legs – Array de objetos donde cada objeto representa un tramo de la ruta. Cada leg de la respuesta corresponde a un leg  de la solicitud. Se devolverán los siguientes campos en cada objeto:
    • tolls – Objeto con los valores e información de cada peaje en el tramo correspondiente. Cada objeto devuelto en tolls 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.
    • legTotalCost – Costo total del peaje para la sección;
    • vehicleType – Tipo de vehículo considerado para el tramo;
    • calculationDate – Fecha y hora consideradas para el tramo, en formato de timestamp;
    • condition – Si se utiliza el parámetro condition en la solicitud, se devolverá este objeto que contiene el billingType y period se consideraron para el tramo.

A continuación encontrará la respuesta completa:

{
    "legs": [
        {
            "tolls": [
                {
                    "id": "1910",
                    "name": "Pórtico - Cuicuilco",
                    "address": "Anillo Periférico Boulevard Adolfo López Mateos",
                    "city": "Ciudad de México",
                    "state": {
                        "name": "Ciudad de México",
                        "code": "Ciudad de México"
                    },
                    "country": "México",
                    "concession": " ",
                    "direction": "EAST",
                    "coordinates": {
                        "latitude": 19.302997,
                        "longitude": -99.176205
                    },
                    "serviceTypes": [],
                    "price": 0.00
                },
                {
                    "id": "1909",
                    "name": "Pórtico - Caminero (insurgentes)",
                    "address": "Anillo Periférico",
                    "city": "Ciudad de México",
                    "state": {
                        "name": "Ciudad de México",
                        "code": "Ciudad de México"
                    },
                    "country": "México",
                    "concession": " ",
                    "direction": "EAST",
                    "coordinates": {
                        "latitude": 19.301797,
                        "longitude": -99.166269
                    },
                    "serviceTypes": [],
                    "price": 0.00
                },
                {
                    "id": "2602",
                    "name": "Pórtico - Viaducto Tlalpan (V.E.T.)",
                    "address": "Ciudad de México - Cuernavaca",
                    "city": "Ciudad de México",
                    "state": {
                        "name": "Ciudad de México",
                        "code": "Ciudad de México"
                    },
                    "country": "México",
                    "concession": " ",
                    "direction": "SOUTH",
                    "coordinates": {
                        "latitude": 19.23586718,
                        "longitude": -99.14526105
                    },
                    "serviceTypes": [],
                    "price": 0.00
                },
                {
                    "id": "1878",
                    "name": "Caseta - Tres Marías",
                    "address": "Autopista México - Cuernavaca",
                    "city": "Tres Marías",
                    "state": {
                        "name": "Morelos",
                        "code": "Morelos"
                    },
                    "country": "México",
                    "concession": "CAPUFE",
                    "direction": "WEST",
                    "coordinates": {
                        "latitude": 19.05632,
                        "longitude": -99.241111
                    },
                    "serviceTypes": [],
                    "price": 111.00
                }
            ],
            "legTotalCost": 111.00,
            "vehicleType": "TRUCK_WITH_FOUR_DOUBLE_AXLES",
            "condition": {
                "billingType": "NORMAL",
                "period": "NORMAL"
            },
            "calculationDate": 1743709167209
        }
    ],
    "totalCost": 111.00
}