Olá!
A API post_analytics_surveys_aggregates_query não retorna surveys individualmente, apenas agregações (contagem, métricas sumarizadas).
Ou seja, ela não é confiável para capturar cada survey concluída.
Quando a survey está em transição entre In-Progress → Completed, especialmente quando associada a:
-
Interações com wrap-up atrasado,
-
Avaliações finalizadas após o término da sessão,
-
Fluxos que fecham a conexão antes da gravação do registro analítico,
o registro ainda não aparece nos agregados, mas já existe no detalhe da conversa.
Por isso, quando você pesquisa usando o ConversationId, o retorno aparece:
→ Você está consultando o registro detalhado, não os agregados.
O que está acontecendo
-
O status da survey pode estar Partial ou Finished, porém ainda não contabilizado no dataset de agregação.
-
O dataset usado pelo endpoint de agregados tem atraso de indexação (latência analítica).
-
As surveys só aparecem na API APÓS serem consolidadas, o que pode levar até algumas horas dependendo do volume.
Como resolver
Para obter todos os surveys individualmente e sem perdas, use este endpoint:
Exemplo de filtro recomendado:
Recomendação Prática
| Método |
Pode perder surveys? |
Para quê serve |
post_analytics_surveys_aggregates_query |
Sim |
Relatórios sumarizados |
post_analytics_surveys_query |
Não |
Extrair todos os surveys |
Buscar por conversationId |
Não, mas inviável para volume |
Correção pontual de dados |
Resumo da Resposta
O problema ocorre porque o endpoint usado consulta dados agregados que podem estar:
Para garantir nenhuma perda, use o endpoint de consulta detalhada (surveys/query), filtrando por surveyState.
------------------------------
Fernando Sotto dos Santos
Consultor Grupo Casas Bahia
------------------------------