Registrar eventos de visita
Registra até cem eventos de uma visita num pedido só. Os parâmetros de origem enviados aqui são os que a venda vai carregar depois.
POSThttps://api.navenaut.com/track/
Autenticação
Rota pública: não exige credencial. A ausência é declarada, não omissão.
Esta rota não exige autenticação. Ela é chamada da página do comprador, que não tem sessão, e por isso ela não lê nem devolve dado de conta nenhuma.
Parâmetros
Corpo da requisição
application/json.
| Campo | Tipo | Descrição |
|---|---|---|
eventsobrigatório | arranjo de objeto | Os eventos em si, de um a cem por pedido. Cada um traz o tipo e o instante em que aconteceu. |
landingPath | texto | O caminho da página em que a visita começou. |
params | objeto | Os parâmetros de origem da visita. São esses os campos que aparecem depois no filtro de vendas. |
referrer | texto | De onde a visita veio, quando o navegador informa. |
sessionId | texto (uuid) | O identificador desta sessão de navegação. |
visitorId | texto (uuid) | O identificador do visitante que você gerou no navegador. É ele que liga visitas diferentes à mesma pessoa. |
{
"events": [
{
"kind": "pageview",
"occurredAt": "2026-01-15T12:00:00.000Z",
"path": "exemplo",
"payload": null,
"productRef": "0f2a4e6c-91c4-4e1b-9a3d-5b7c2e8f4a06"
}
],
"landingPath": "exemplo",
"params": {
"s1": "exemplo",
"s2": "exemplo",
"s3": "exemplo",
"sck": "exemplo",
"src": "exemplo",
"utm_campaign": "exemplo",
"utm_content": "exemplo",
"utm_medium": "exemplo",
"utm_source": "exemplo",
"utm_term": "exemplo"
},
"referrer": "exemplo",
"sessionId": "0f2a4e6c-91c4-4e1b-9a3d-5b7c2e8f4a06",
"visitorId": "0f2a4e6c-91c4-4e1b-9a3d-5b7c2e8f4a06"
}Respostas
200 · sucesso
{
"sessionId": "0f2a4e6c-91c4-4e1b-9a3d-5b7c2e8f4a06",
"visitorId": "0f2a4e6c-91c4-4e1b-9a3d-5b7c2e8f4a06"
}400 · requisição inválida
O lote de eventos não passou na validação; nada foi registrado.
Erros desta rota
| Status | Código | Quando | O que fazer |
|---|---|---|---|
| 400 | TRACKING_BATCH_INVALID | O lote não passou na validação: veio vazio, passou de cem eventos, ou algum evento está sem o tipo ou sem o instante. A recusa é do lote INTEIRO, e nada foi registrado; nenhum evento do lote entrou pela metade. | Corrija o lote e reenvie. Quebre lotes acima de cem em pedidos menores. Reenviar o mesmo lote sem corrigir devolve o mesmo 400, e reenviar um lote já aceito registra os eventos de novo, então guarde o que já foi aceito. |
Os códigos são estáveis e fazem parte do contrato. A lista completa, com todos os vocabulários, está na tabela de erros.