Relatórios da Esteira e do Kanban

Extração segura dos relatórios operacionais do CRM usando token API escopado para relatórios. A API identifica o ambiente pelo token e não aceita troca de ambiente por query string.

Base

URLs de acesso

Use a URL relativa quando a chamada sair do próprio CRM. Para integração externa autorizada, use a URL HTTPS do CRM.

Same-origin: /api/crm
Produção:    https://lunascrm.com.br/api/crm
Auth

Token API de relatórios

No CRM, acesse Configurações > Admin > Ambientes, clique em Gerenciar no ambiente e depois em Gerar novo no campo Token API de relatórios. Use esse valor no header Authorization. O header x-ambiente é recomendado como conferência e, se enviado, precisa bater com o token.

Authorization: Bearer <token-api-de-relatorios>
x-ambiente: <id-ou-nome-do-ambiente>
Bloqueio contra vazamento de dados

Não envie ambiente, ambienteId, ambiente_id, targetAmbiente ou target_ambiente na query ou no body. A API retorna erro se detectar tentativa de sobrescrever o ambiente.

GET

/reports/esteira

Extrai propostas da Esteira com os mesmos limites de permissão do usuário logado.

GET /api/crm/reports/esteira

Parâmetros

Campo Tipo Descrição
data_iniciodateInício do período em YYYY-MM-DD.
data_fimdateFim do período em YYYY-MM-DD.
created_fromdateAlias aceito para data inicial.
created_todateAlias aceito para data final.
statusstringFiltra pelo status da proposta.
banco ou bankstringFiltra pelo banco.
conveniostringFiltra pelo convênio.
produtostringFiltra pelo produto.
vendedorstringFiltra pelo vendedor, respeitando permissões.
searchstringBusca por cliente, CPF, telefone ou identificadores.
esteirastringFiltra pelo agrupamento da esteira quando disponível.
produto_portabilidadestringFiltra produto de portabilidade.
limitnumberPadrão 10000, máximo 50000.
offsetnumberDeslocamento para paginação.
formatstringjson ou xlsx.

Exemplo

curl "https://lunascrm.com.br/api/crm/reports/esteira?data_inicio=2026-05-01&data_fim=2026-05-04&limit=1000" \
  -H "Authorization: Bearer <token-api-de-relatorios>" \
  -H "x-ambiente: <id-ou-nome-do-ambiente>"

Resposta JSON

{
  "success": true,
  "data": {
    "ambiente_id": "<id-do-ambiente>",
    "periodo": {
      "tipo": "custom",
      "inicio": "2026-05-01",
      "fim": "2026-05-04",
      "mes": null,
      "ano": null
    },
    "total": 123,
    "limit": 10000,
    "offset": 0,
    "hasMore": false,
    "resumo": {
      "valor_liquido": 0,
      "valor_bruto": 0,
      "valor_cliente": 0,
      "comissao_prevista": 0,
      "pagos": 0,
      "cancelados": 0
    },
    "rows": []
  }
}
GET

/reports/kanban

Extrai cards do Kanban com filtros de funil, etapa, banco aprovado e busca textual.

GET /api/crm/reports/kanban

Parâmetros

Campo Tipo Descrição
data_iniciodateInício do período em YYYY-MM-DD.
data_fimdateFim do período em YYYY-MM-DD.
created_fromdateAlias aceito para data inicial.
created_todateAlias aceito para data final.
pipeline_idstringFiltra pelo funil.
stage_idstringFiltra pela etapa do funil.
searchstringBusca por cliente, CPF, telefone ou título do card.
approved_bankstringFiltra pelo banco aprovado.
sort_bystringupdated_desc, updated_asc, created_desc, created_asc, value_desc ou value_asc.
limitnumberPadrão 10000, máximo 50000.
offsetnumberDeslocamento para paginação.
formatstringjson ou xlsx.

Exemplo

curl "https://lunascrm.com.br/api/crm/reports/kanban?data_inicio=2026-05-01&data_fim=2026-05-04&sort_by=updated_desc" \
  -H "Authorization: Bearer <token-api-de-relatorios>" \
  -H "x-ambiente: <id-ou-nome-do-ambiente>"

Resposta JSON

{
  "success": true,
  "data": {
    "ambiente_id": "<id-do-ambiente>",
    "periodo": {
      "tipo": "custom",
      "inicio": "2026-05-01",
      "fim": "2026-05-04",
      "mes": null,
      "ano": null
    },
    "total": 42,
    "limit": 10000,
    "offset": 0,
    "hasMore": false,
    "resumo": {
      "valor_cards": 0,
      "valor_aprovado": 0
    },
    "rows": []
  }
}
Erros

Códigos principais

Status Código Quando acontece
400REPORT_AMBIENTE_OVERRIDE_BLOCKEDA chamada tentou trocar o ambiente por query ou body.
401TOKEN_INVALIDToken ausente, inválido, inativo ou expirado.
403REPORT_TOKEN_AMBIENTE_MISMATCHToken API e x-ambiente não apontam para o mesmo ambiente.
403FORBIDDENToken autenticado sem permissão dashboard_relatorios.
Segurança

Regras de uso

Escopo do ambiente

O token API libera apenas os relatórios do ambiente dono do token. Não há leitura cruzada entre grupos.

Paginação

Use limit, offset e hasMore para exportações grandes. O limite máximo é 50000.

Excel

Envie format=xlsx para receber um arquivo Excel com os mesmos filtros do JSON.

Ambiente

O ambiente é resolvido pelo token API. O header x-ambiente funciona como conferência opcional e bloqueia divergência.