Análise de Chunks
Analisa a qualidade de um chunk existente ou candidato e retorna uma nota de 0 a 10
Você pode testar esta rota diretamente em nossa documentação interativa.
Se a nota for menor que 5, o endpoint pode criar issues automaticamente e devolver os detalhes no mesmo retorno.
Endpoint
POST /api/externalAPIs/public/advisor/chunkAdvisor
Parâmetros
ID do host.
UUID do chunk a ser analisado.
Conteúdo candidato para análise sem persistência.
Modelo LLM a ser usado.
Provider LLM a ser usado.
Timeout em milissegundos para a chamada LLM.
Envie exatamente um entre chunkId e content.
Exemplo
curl -X POST {{BASE_URL}}/api/externalAPIs/public/advisor/chunkAdvisor \
-H "Authorization: Bearer {{TOKEN}}" \
-H "Content-Type: application/json" \
-d '{
"chunkId": "bf047297-ff98-4b4d-b6b7-07f8f50ca36c",
"hostId": "b302f8ad-991b-411c-beb3-12cd648c95cc"
}'
curl -X POST {{BASE_URL}}/api/externalAPIs/public/advisor/chunkAdvisor \
-H "Authorization: Bearer {{TOKEN}}" \
-H "Content-Type: application/json" \
-d '{
"content": "Texto de exemplo do candidato a chunk para validar qualidade.",
"hostId": "b302f8ad-991b-411c-beb3-12cd648c95cc"
}'
Resposta
O retorno agora vem envelopado no formato { code, data, message }.
Os campos da análise (score, issueData, costControl, etc.) ficam dentro de data.
{
"code": 200,
"data": {
"score": 4.9,
"fromCache": false,
"cachedAt": "2026-03-17T17:00:44.069Z",
"issueTriggered": false,
"issueData": {
"persisted": false,
"reportId": null,
"addedCount": 0,
"keptCount": 0,
"updatedCount": 0,
"resolvedCount": 0,
"reopenedCount": 0,
"added": [],
"kept": [],
"updated": [],
"createdIssuesCount": 0,
"skippedDuplicateIssuesCount": 0,
"detectedIssuesCount": 10,
"issues": [
{
"snippet": "Suporte técnico: resolvemos problemas.",
"practice": "1. Tamanho ideal dos chunks",
"problemDescription": "O chunk tem apenas 13 tokens, o que é muito pequeno para ter contexto semântico relevante.",
"recommendation": "Aumente o tamanho do chunk para incluir mais informações relevantes e contexto semântico.",
"score": 5
}
]
},
"costControl": {
"usage": {
"inputTokens": 2191,
"outputTokens": 893,
"totalTokens": 3084
},
"cost": {
"totalCost": 0.00171463,
"currency": "USD",
"pricingVersion": "v1_2026_03"
},
"control": {
"decision": "allow",
"reasons": []
},
"references": {
"caller": "advisor/chunks/chunkAdvisor"
},
"reconciliation": {
"available": true,
"withinTolerance": true,
"reason": "ok"
}
}
},
"message": "OK"
}
Campos da Resposta
Código HTTP retornado pela API (ex.: 200).
Mensagem de status da resposta (ex.: OK).
Payload da análise do chunk.
Cache de 40 segundos. Aguarde pelo menos 40 segundos após alterações no Chunk antes de solicitar nova análise.
Para sugestões detalhadas de alteração, use o endpoint Insight por Demanda.
Erros
| Código | Descrição |
|---|---|
400 | Erro de validação (ex.: envie exatamente um entre chunkId e content) |
401 | Token ausente ou inválido |
403 | Credenciais inválidas ou token ausente |
500 | Erro interno do servidor |