# Padrão de Retorno

A requisição retornará um json completo, sempre com as mesmas chaves e com o array de rastreamento padronizado.

## Descrição dos dados retornados

Ao fim desta página, você terá o exemplo de json retornado. Agora, vamos explicar o seu formato.

{% hint style="info" %}
**Importante**: Cada transportadora fornece diferentes conjuntos de dados, portanto, nem todos os campos do JSON serão sempre preenchidos. Algumas transportadoras podem retornar o endereço de entrega, enquanto outras não. Ainda assim, a LogAPI devolve todos os campos em sua resposta, mesmo que alguns estejam vazios.
{% endhint %}

A resposta é composta por:

* `cost` é o preço do frete.
* `trackingCode` é o codigo de rastreamento.
* `type` é a modalidade de entrega.
* `deliveryEstimate` é a previsão de entrega.
* `invoice` contém os dados da nota fiscal.
* `cte` é o número do conhecimento de transporte eletrônico.
* `sender` possuí os dados do remetente.
* `recipient` possuí os dados do destinatário.
* `weight` contém o peso.
* `dimensions` contém a altura, largura e comprimento.
* `volume` é a cubagem do pacote.
* `carrierLogo` é a logo em PNG da transportadora.
* `postDate` é a data de postagem.
* `tracking` é o array dos eventos de rastreamento:
  * `date` é a data do evento.
  * `title` é o nome do evento na transportadora.
  * `description` é a descrição fornecida pela transportadora.
  * `location` o local que informaram o evento.
  * **`status` é o status padronizado da LogAPI.**&#x20;
  * **`details` descrevem o status padronizado em português.**
* `originalData` contém o json original completo retornado pela transportadora.

## Status padronizado LogAPI

Cada transportadora nomeia o evento de rastreamento de forma própria. Por exemplo, para o evento "saiu para entrega", temos:

* **Correios**: "saiu para entrega"
* **Jadlog**: "em rota"
* **Braspress**: "em rota para entrega"
* **Total Express**: "104"

Esses eventos indicam a mesma situação: a entrega está a caminho do endereço final. Para simplificar, a LogAPI mantém um tabelamento de status para cada transportadora, convertendo as informações originais em um status padrão.

Para o exemplo acima, todos esses eventos são nomeados como **OutForDelivery**. Nossa resposta incluí ainda uma descrição, assim:

```json
{
            "date": "2024-11-06T13:19:38-03:00",
            "timezone": "America/Sao_Paulo",
            "utcOffset": "-03:00",
            "title": "Saiu para entrega",
            "description": "1 volume em processo de entrega ao destinatário",
            "location": "QGL - RS",
            "status": "OutForDelivery",
            "details": {
                "statusText": "Saiu para Entrega",
                "description": "O pacote saiu para ser entregue",
                "toDo": "Certificar-se de que alguém está disponível para receber."
            }
}
```

Portanto, você não precisa criar nenhum mapa de andamentos em sua aplicação. Utilize nossos campos **status** e **details** para mostrar as informações em seu sistema.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ajuda.logapi.com.br/intergrando-logapi/padrao-de-retorno.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
