Freight

Exemplo 6 – Integração com a Toll for Maps API

O serviço Freight API pode ser integrado com a Toll for Maps API, portanto além do retorno das tarifas de pedágios, será fornecido também o cálculo do frete.

O processo consiste em apenas adicionar os parâmetros da Freight API no body da requisição para a Toll for Maps APIs. 

Não será necessário incluir o parâmetro distance, pois essa a distância percorrida já estará na resposta da Directions API.

O exemplo a seguir exibe uma requisição de um rota entre São Paulo – SP e Campinas – SP, a ser percorrida por um caminhão com 4 eixos duplos, incluindo cálculo de pedágios e frete (Carga: Granel sólido / Tipo de operação: D). 

Endpoint utilizado: https://api.maplink.global/toll/v1/directions?vehicleType={TIPO_VEICULO} (Método: POST)

No body da requisição deve ser informado a resposta da Directions API, acrescentado com os parâmetros da Freight API, conforme o exemplo abaixo:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
{
//Resposta da Directions API
"maplink": {
"freight": {
"operationType": [
"D"
],
"goodsType": [
"GRANEL_SOLIDO"
],
"axis": [
"4"
],
"roundTrip": false,
"backEmpty": false,
"otherCosts": [
{
"name": "ICMS",
"type": "PERCENT",
"value": "5"
},
{
"name": "Lucro",
"type": "PERCENT",
"value": "20"
},
{
"name": "TaxaFixa",
"type": "FIXED",
"value": "500"
}
],
"date": "2021-10-02"
}
}
}
{ //Resposta da Directions API "maplink": { "freight": { "operationType": [ "D" ], "goodsType": [ "GRANEL_SOLIDO" ], "axis": [ "4" ], "roundTrip": false, "backEmpty": false, "otherCosts": [ { "name": "ICMS", "type": "PERCENT", "value": "5" }, { "name": "Lucro", "type": "PERCENT", "value": "20" }, { "name": "TaxaFixa", "type": "FIXED", "value": "500" } ], "date": "2021-10-02" } } }
{
    //Resposta da Directions API 
    "maplink": {
        "freight": {
            "operationType": [
                "D"
            ],
            "goodsType": [
                "GRANEL_SOLIDO"
            ],
            "axis": [
                "4"
            ],
            "roundTrip": false,
            "backEmpty": false,
            "otherCosts": [
                {
                    "name": "ICMS",
                    "type": "PERCENT",
                    "value": "5"
                },
                {
                    "name": "Lucro",
                    "type": "PERCENT",
                    "value": "20"
                },
                {
                    "name": "TaxaFixa",
                    "type": "FIXED",
                    "value": "500"
                }
            ],
            "date": "2021-10-02"
        }
    }
}

A resposta completa pode ser conferida abaixo:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
{
"results": [
{
"legs": [
{
"tolls": [
{
"id": "13",
"name": "Pedágio - Campo Limpo",
"address": "SP 348 - Rod. dos Bandeirantes",
"city": "Campo Limpo",
"state": {
"name": "São Paulo",
"code": "SP"
},
"country": "Brasil",
"concession": "Autoban",
"direction": "NORTH",
"coordinates": {
"latitude": -23.3260346,
"longitude": -46.8231453
},
"serviceTypes": [
{
"serviceId": "48",
"name": "Via Facil"
},
{
"serviceId": "35353480390470101",
"name": "ANTTCODE"
}
],
"price": 31.80
},
{
"id": "73",
"name": "Pedágio - Valinhos Norte",
"address": "SP 330 - Rod. Anhanguera Km 82",
"city": "Valinhos",
"state": {
"name": "São Paulo",
"code": "SP"
},
"country": "Brasil",
"concession": "Autoban",
"direction": "NORTHWEST",
"coordinates": {
"latitude": -23.01295484,
"longitude": -47.0230555
},
"serviceTypes": [
{
"serviceId": "50",
"name": "Via Facil"
},
{
"serviceId": "35353300820000101",
"name": "ANTTCODE"
}
],
"price": 31.50
}
],
"legTotalCost": 63.30
}
],
"freight": {
"source": "RESOLUÇÃO No 5.949, DE 13 DE JULHO DE 2021",
"results": {
"D": {
"4": {
"GRANEL_SOLIDO": {
"value": 369.97,
"otherCosts": {
"ICMS": 18.50,
"Lucro": 74.00,
"TaxaFixa": 500
}
}
}
}
},
"minimumFreight": 369.97,
"minimumFreightWithCosts": 962.47
},
"totalCost": 63.30,
"routeFreightCost": 1025.77
}
]
}
{ "results": [ { "legs": [ { "tolls": [ { "id": "13", "name": "Pedágio - Campo Limpo", "address": "SP 348 - Rod. dos Bandeirantes", "city": "Campo Limpo", "state": { "name": "São Paulo", "code": "SP" }, "country": "Brasil", "concession": "Autoban", "direction": "NORTH", "coordinates": { "latitude": -23.3260346, "longitude": -46.8231453 }, "serviceTypes": [ { "serviceId": "48", "name": "Via Facil" }, { "serviceId": "35353480390470101", "name": "ANTTCODE" } ], "price": 31.80 }, { "id": "73", "name": "Pedágio - Valinhos Norte", "address": "SP 330 - Rod. Anhanguera Km 82", "city": "Valinhos", "state": { "name": "São Paulo", "code": "SP" }, "country": "Brasil", "concession": "Autoban", "direction": "NORTHWEST", "coordinates": { "latitude": -23.01295484, "longitude": -47.0230555 }, "serviceTypes": [ { "serviceId": "50", "name": "Via Facil" }, { "serviceId": "35353300820000101", "name": "ANTTCODE" } ], "price": 31.50 } ], "legTotalCost": 63.30 } ], "freight": { "source": "RESOLUÇÃO No 5.949, DE 13 DE JULHO DE 2021", "results": { "D": { "4": { "GRANEL_SOLIDO": { "value": 369.97, "otherCosts": { "ICMS": 18.50, "Lucro": 74.00, "TaxaFixa": 500 } } } } }, "minimumFreight": 369.97, "minimumFreightWithCosts": 962.47 }, "totalCost": 63.30, "routeFreightCost": 1025.77 } ] }
{
    "results": [
        {
            "legs": [
                {
                    "tolls": [
                        {
                            "id": "13",
                            "name": "Pedágio - Campo Limpo",
                            "address": "SP 348 - Rod. dos Bandeirantes",
                            "city": "Campo Limpo",
                            "state": {
                                "name": "São Paulo",
                                "code": "SP"
                            },
                            "country": "Brasil",
                            "concession": "Autoban",
                            "direction": "NORTH",
                            "coordinates": {
                                "latitude": -23.3260346,
                                "longitude": -46.8231453
                            },
                            "serviceTypes": [
                                {
                                    "serviceId": "48",
                                    "name": "Via Facil"
                                },
                                {
                                    "serviceId": "35353480390470101",
                                    "name": "ANTTCODE"
                                }
                            ],
                            "price": 31.80
                        },
                        {
                            "id": "73",
                            "name": "Pedágio - Valinhos Norte",
                            "address": "SP 330 - Rod. Anhanguera Km 82",
                            "city": "Valinhos",
                            "state": {
                                "name": "São Paulo",
                                "code": "SP"
                            },
                            "country": "Brasil",
                            "concession": "Autoban",
                            "direction": "NORTHWEST",
                            "coordinates": {
                                "latitude": -23.01295484,
                                "longitude": -47.0230555
                            },
                            "serviceTypes": [
                                {
                                    "serviceId": "50",
                                    "name": "Via Facil"
                                },
                                {
                                    "serviceId": "35353300820000101",
                                    "name": "ANTTCODE"
                                }
                            ],
                            "price": 31.50
                        }
                    ],
                    "legTotalCost": 63.30
                }
            ],
            "freight": {
                "source": "RESOLUÇÃO No 5.949, DE 13 DE JULHO DE 2021",
                "results": {
                    "D": {
                        "4": {
                            "GRANEL_SOLIDO": {
                                "value": 369.97,
                                "otherCosts": {
                                    "ICMS": 18.50,
                                    "Lucro": 74.00,
                                    "TaxaFixa": 500
                                }
                            }
                        }
                    }
                },
                "minimumFreight": 369.97,
                "minimumFreightWithCosts": 962.47
            },
            "totalCost": 63.30,
            "routeFreightCost": 1025.77
        }
    ]
}