Recursos da API
Ocorrências
Acompanhe o rastreamento e as ocorrências de um pedido na API Frete Barato.
O endpoint de tracking permite consultar as ocorrências e o status de entrega de um pedido despachado por meio da Frete Barato.
Endpoint
https://admin.fretebarato.com/{{plataforma}}/tracking/v1/json/{{customer_id}}
Consulte uma ocorrência
O exemplo abaixo consulta por chave de acesso da nota fiscal. Veja também as .
curl -X POST "https://admin.fretebarato.com/{{plataforma}}/tracking/v1/json/{{customer_id}}" \
-H "Authorization: Bearer xxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-H "User-Agent: MinhaAplicacao ([email protected])" \
-d '{
"cnpj": "31913883000154",
"nota_fiscal_id": "99999999999999999999999999999999999999999999"
}'
$url = "https://admin.fretebarato.com/{{plataforma}}/tracking/v1/json/{{customer_id}}";
$payload = array(
"cnpj" => "31913883000154",
"nota_fiscal_id" => "99999999999999999999999999999999999999999999"
);
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$headers = array(
"Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxx",
"Content-Type: application/json",
"User-Agent: MinhaAplicacao ([email protected])"
);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($payload));
$response = curl_exec($curl);
curl_close($curl);
{
"cnpj": "31913883000154",
"nota_fiscal_id": "99999999999999999999999999999999999999999999"
}
{
"invoice": {
"nota_fiscal_id": "99999999999999999999999999999999999999999999",
"texto": "SOLICITACAO EM ROTA",
"dataOcorrencia": "2024-02-28T07:12:00",
"ocorrenciaCodigo": "02",
"dataOcorrenciaPrev": "2024-02-29T00:00:00",
"dataOcorrenciaEntrega": "2024-02-28T07:12:00",
"trackCode": "ONT000000000",
"timeline": [
{
"texto": "TRANSFERENCIA DE VOLUMES PARA ENTREGA",
"data": "2024-02-27T21:37:00",
"ocorrenciaCodigo": "32"
},
{
"texto": "RECEBIMENTO DE TRANSFERENCIA ENTRE UNIDADES",
"data": "2024-02-28T04:50:00",
"ocorrenciaCodigo": "17"
},
{
"texto": "SOLICITACAO EM ROTA",
"data": "2024-02-28T07:12:00",
"ocorrenciaCodigo": "02"
}
],
"fiscal": {
"nota_fiscal_id": "99999999999999999999999999999999999999999999",
"numero": "30822",
"pedido": "54874",
"serie": "1",
"data": "2024-02-26T17:07:27"
},
"transporte": {
"cnpj": "23820639001352"
},
"destino": {
"nome": "Bruno",
"cpfcnpj": "00000000000",
"email": "[email protected]",
"address": {
"cep": "04202010",
"uf": "sp",
"cidade": "Sao Paulo"
}
},
"emitente": {
"cnpj": "31913883000154",
"razao_social": "Frete Barato",
"nome_fantasia": "Frete Barato"
}
}
}
Headers
| Key | Value |
|---|---|
Authorization | Bearer {{token}} |
Content-Type | application/json |
User-Agent | Aplicação (e-mail para contato técnico) |
Consulte por diferentes identificadores
A consulta de ocorrências pode ser feita por três identificadores diferentes.
| Parâmetro | Tipo | Obrigatório | Observação |
|---|---|---|---|
cnpj | Numérico | Sim | CNPJ do emitente. Deve conter exatamente 14 caracteres numéricos |
nota_fiscal_id | Numérico | Sim | Chave de acesso. Deve conter exatamente 44 caracteres numéricos |
| Parâmetro | Tipo | Obrigatório | Observação |
|---|---|---|---|
cnpj | Numérico | Sim | CNPJ do emitente. Deve conter exatamente 14 caracteres numéricos |
numero_nota_fiscal | Numérico | Sim | Número da nota fiscal |
| Parâmetro | Tipo | Obrigatório | Observação |
|---|---|---|---|
cnpj | Numérico | Sim | CNPJ do emitente. Deve conter exatamente 14 caracteres numéricos |
numero_pedido | Numérico | Sim | Número/ID do pedido no integrador (Shopify, Nuvemshop, Bling, etc.) |
O CNPJ informado no payload precisa estar vinculado ao Customer Token utilizado na autenticação. Caso contrário, a API retorna
401.Parâmetros do response
| Parâmetro | Tipo | Comportamento |
|---|---|---|
invoice.texto | String | Descrição da ocorrência atual |
invoice.dataOcorrencia | String | Data/hora da ocorrência atual |
invoice.ocorrenciaCodigo | String | Código da ocorrência atual |
invoice.trackCode | String | Código de rastreio |
invoice.timeline | Array | Histórico de ocorrências do pedido |
invoice.fiscal | Object | Dados fiscais (número, pedido, série, data) |
invoice.transporte | Object | Dados da transportadora |
invoice.destino | Object | Dados do destinatário |
invoice.emitente | Object | Dados do emitente |
Trate os erros
| Response | Tipo | Quando ocorre |
|---|---|---|
400 | Bad Request | Payload inválido, emitente não informado ou atributos incompletos |
401 | Unauthorized | Falha de autenticação ou CNPJ não autorizado no token |
404 | Not Found | Pedido/nota fiscal não encontrado |
406 | Not Acceptable | JSON inválido no corpo da requisição |
Exemplos de erro
{
"message": "Emitente não informado",
"code": 400
}
{
"message": "Invalid attributes",
"code": 400
}
{
"message": "Authentication failure",
"code": 401
}
{
"message": "No results found",
"code": 404
}
{
"message": "Invalid Params (JSON)",
"code": 406
}

