Listar vendas
Devolve as vendas da conta em páginas, com filtro por estado, método, produto, período e parâmetros de origem.
GEThttps://api.navenaut.com/sales/
Autenticação
A sessão do painel autentica esta rota, e ela é lida de forma autoritativa: não há parâmetro em que o chamador aponte para outra conta.
Esta rota não exige escopo nomeado — o que não quer dizer que ela seja aberta: sem a credencial acima ela recusa.
Exige sessão de vendedor. A lista é sempre a da conta da sessão: não há filtro que alcance a venda de outro vendedor.
Parâmetros
Consulta
| Nome | Tipo | Descrição |
|---|---|---|
state | um de: `pending`, `credited`, `under_review`, `refused`, `cancelled` | Só as vendas neste estado. |
method | um de: `pix`, `card`, `boleto`, `wallet` | Só as vendas pagas por este método. |
walletBrand | um de: `apple_pay`, `google_pay`, `paypal` | — |
productId | texto (uuid) | Só as vendas deste produto. |
from | texto (date-time) | Começo do período, inclusive. |
to | texto (date-time) | Fim do período, inclusive. |
term | texto | Busca livre sobre os dados do comprador. |
affiliateOnly | booleano | Só as vendas que vieram por indicação. |
coproductionOnly | booleano | — |
src | texto | Filtra pelo parâmetro de origem src registrado na visita. |
sck | texto | Filtra pelo parâmetro de origem sck registrado na visita. |
utm_source | texto | Filtra pela origem UTM registrada na visita: de onde o comprador veio. |
utm_medium | texto | Filtra pelo meio UTM registrado na visita: por que canal ele veio. |
utm_campaign | texto | Filtra pela campanha UTM registrada na visita. |
utm_content | texto | Filtra pela variação de criativo UTM registrada na visita. |
utm_term | texto | Filtra pelo termo UTM registrado na visita. |
s1 | texto | Filtra pelo parâmetro livre s1 registrado na visita. Ele é seu: a Naut só o guarda e o devolve. |
s2 | texto | Filtra pelo parâmetro livre s2 registrado na visita. |
s3 | texto | Filtra pelo parâmetro livre s3 registrado na visita. |
page | inteiro | Qual página trazer, começando em 1. |
pageSize | inteiro | Quantas vendas por página, até 100. |
anchor | texto (uuid) | Fixa a paginação numa venda, para que uma venda nova não desloque as páginas seguintes. |
Respostas
200 · sucesso
{
"anchor": "exemplo",
"creditedViewerLegCents": 129900,
"page": 1,
"pageCount": 0,
"pageSize": 1,
"rows": [
{
"buyerEmail": "comprador@exemplo.com.br",
"buyerName": "exemplo",
"cardBrand": "exemplo",
"currency": "BRL",
"hasAffiliate": true,
"hasCoproducer": true,
"hasSplit": true,
"method": "pix",
"occurredAt": "2026-01-15T12:00:00.000Z",
"offerName": "exemplo",
"productName": "exemplo",
"publicId": "7K3M9XABCD",
"reversal": {
"full": true,
"grossCents": 129900,
"kind": "refund",
"viewerCents": 129900
},
"saleId": "0f2a4e6c-91c4-4e1b-9a3d-5b7c2e8f4a06",
"saleTotalCents": 129900,
"state": "pending",
"strategy": [
{
"amountCents": 129900,
"kind": "bump",
"offerName": "exemplo",
"productName": "exemplo"
}
],
"viaApi": true,
"view": "participant",
"viewerLegCents": 129900,
"viewerLegRole": "produtor",
"walletBrand": "exemplo"
}
],
"totalCount": 0
}400 · requisição inválida
A janela pedida não é válida: from precisa vir antes de to, e as duas datas precisam formar um período que a busca aceite.
Erros desta rota
| Status | Código | Quando | O que fazer |
|---|---|---|---|
| 400 | SALES_WINDOW_INVALID | A janela pedida não é válida: from depois de to, data que a busca não consegue ler, ou período mais largo do que ela aceita de uma vez. | Corrija as duas datas e reenvie. Para períodos longos, quebre em janelas menores e pagine cada uma. |
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.