Quando usar
Use este endpoint quando você quer só a leitura interpretada do relatório: o parecer de cada seção (texto, score, nível de risco e destaques) e o resumo da deliberação do comitê, sem trazer os payloads pesados de integração. Casos típicos:- Alimentar um agente de IA ou um LLM do seu lado com contexto barato, em vez de mandar o relatório inteiro.
- Montar uma tela de resumo executivo no seu sistema.
- Verificar se os pareceres já terminaram antes de convocar o comitê.
- Buscar o detalhe depois de receber o webhook
COMMITTEE_FINISHED.
Para os dados completos do relatório, use
GET /v2/report/{id}. Para os votos individuais dos agentes e a auditoria da deliberação, use GET /committee/deliberations/{reportId}.Autenticação
Bearer JWT no headerAuthorization. Um id de outra organização retorna 404.
Parâmetros
| Nome | Local | Tipo | Obrigatório | Descrição |
|---|---|---|---|---|
id | path | string | sim | ID do relatório. |
section | query | string | não | Filtra o parecer de uma seção. Sem o parâmetro, retorna todos os pareceres concluídos. Um valor que não seja um tipo de seção válido retorna 400. |
BASIC_INFORMATION, LOCATION, RELATIONS, SCORE, PROCESSES, CERTIFICATES, LICENSES_AUTHORIZATIONS, PEP, SANCTIONS, MEDIA_EXPOSURE, CRIMINAL_RECORD, SOCIAL_ASSISTANCE_PROGRAMS, SECTOR, SCR, SCR_SUMMARY, PEFIN, REFIN, PROTESTS, BAD_CHECK, PAST_DUE_DEBT, BALANCE_SHEET.
Filtrar por um tipo de seção que existe mas não produz parecer (por exemplo
SUMMARY, DRE ou CREDIT_POLICY) não é erro: a requisição retorna 200 com insights vazio. O mesmo vale para uma seção com parecer que ainda não terminou. Lista completa dos tipos e quais recebem parecer em Consultar Seção por Tipo.Resposta
O envelope é o mesmo com ou sem filtro; comsection, o array insights vem com um único item.
| Campo | Descrição |
|---|---|
reportId | ID do relatório. |
document | CPF ou CNPJ analisado. |
committee.status | RUNNING, DONE, ERROR, SKIPPED ou null (comitê nunca convocado). |
committee.decision | APPROVED, REJECTED, REQUIRES_ALCADA ou NEEDS_INFO. |
committee.result | Resultado consolidado: síntese do Presidente, opiniões dos agentes, confiança, custo e duração. |
committee.at | Quando a deliberação terminou. |
insights[] | Um item por seção com parecer concluído. |
insights[].section | Tipo da seção. |
insights[].score | Score do parecer daquela seção. |
insights[].riskLevel | Nível de risco atribuído pelo parecer. |
insights[].parecer | Texto do parecer. |
insights[].highlights | Destaques estruturados da seção. |
insights[].at | Quando o parecer foi gerado. |
Só entram no array as seções com parecer concluído. Um relatório ainda em processamento retorna
insights vazio ou parcial, e committee.status null. Isso é o esperado, não é erro.curl --location 'https://gyra-core.gyramais.com.br/report/6612a7f30000000000000001/insights' \
--header 'Authorization: Bearer {seu_token_jwt}'
curl --location 'https://gyra-core.gyramais.com.br/report/6612a7f30000000000000001/insights?section=PROCESSES' \
--header 'Authorization: Bearer {seu_token_jwt}'
fetch("https://gyra-core.gyramais.com.br/report/6612a7f30000000000000001/insights", {
method: "GET",
headers: { "Authorization": "Bearer {seu_token_jwt}" },
})
.then(res => res.json())
.then(console.log)
import requests
url = "https://gyra-core.gyramais.com.br/report/6612a7f30000000000000001/insights"
headers = {"Authorization": "Bearer {seu_token_jwt}"}
params = {"section": "PROCESSES"} # opcional
response = requests.get(url, headers=headers, params=params)
print(response.json())
{
"reportId": "6612a7f3a19b467000000000",
"document": "43591367000130",
"committee": {
"status": "DONE",
"decision": "REJECTED",
"result": {
"decision": "REJECTED",
"synthesis": {
"decision": "REJECTED",
"resumo": "Comitê confirma negativa da política: CNPJ suspenso, passivos de R$ 6,8 milhões em Pefin e Refin, processos judiciais de R$ 8,3 milhões e ausência total de gestão ativa inviabilizam qualquer concessão.",
"reasoning": "A política de crédito negou a operação com score mínimo e a decisão é integralmente confirmada. A empresa apresenta situação cadastral suspensa desde junho de 2026, inatividade tri...",
"proximaAcao": "Arquivar o processo e não retomar sem regularização cadastral comprovada.",
"limitReview": null,
"dissentLog": [
{
"agent": "Compliance",
"divergedHow": "Recomendou aprovação com base exclusivamente na ausência de sanções regulatórias, desconsiderando os fatores críticos de insolvência, suspensão cadastral e descontinuidade operacional que são determinantes para a decisão final."
}
],
"confidence": 0.97,
"monitoringItems": [],
"infoGapsBeforeDecision": [],
"conditions": [],
"alcadaLevel": null
},
"agentOpinions": [
{
"agent": "cadastral",
"agentLabel": "Cadastral",
"score": 1,
"resumo": "Recomenda negar. Situação cadastral suspensa, massa crítica de passivos e saída total de diretores tornam o perfil inviável para crédito.",
"redFlags": [
{
"severity": "CRITICAL",
"label": "CNPJ suspenso e diretoria esvaziada",
"detail": "Situação cadastral suspensa desde junho de 2026 e inatividade tributária desde maio de 2026, com saída simultânea de todos os diretores no mesmo período, indicando descontinuidade operacional e de gestão."
},
{
"severity": "CRITICAL",
"label": "Passivos financeiros de alta materialidade",
"detail": "Pefin de R$ 4,6 milhões e Refin de R$ 2,1 milhões com ocorrências recentíssimas (janeiro e junho de 2026), além de 10 processos judiciais passivos totalizando R$ 8,3 milhões com o mais recente em julho de 2026."
},
{
"severity": "WARNING",
"label": "Certidão estadual não emitida",
"detail": "A certidão negativa junto à Secretaria da Fazenda Estadual não pôde ser emitida, possivelmente associada ao status suspenso perante o fisco, sem que a materialidade do eventual débito seja conhecida."
}
],
"positiveFactors": [
{
"label": "Operação real identificada na web",
"detail": "A empresa possui marketplace ativo de equipamentos pesados usados com presença verificada no Brasil e em países da América Latina, endereço e identidade cadastral confirmados por múltiplas fontes independentes."
},
{
"label": "Regularidade federal e trabalhista",
"detail": "Certidões negativas de FGTS, PGFN, débitos trabalhistas e CNJ emitidas sem pendências, indicando ausência de passivos federais diretos nessas esferas."
},
{
"label": "Localização e CNAE coerentes",
"detail": "Sede em edifício corporativo de alto padrão na Berrini, compatível com atividade de agenciamento e intermediação; entorno com mais de 9 mil CNPJs ativos e mesmo CNAE predominante."
}
],
"confidence": 0.82,
"infoGaps": [
"Identidade e regularidade dos novos diretores ou controladores após saída dos anteriores em maio de 2026.",
"Valor e natureza do débito estadual subjacente à certidão não emitida."
],
"recommendation": "REJECT",
"model": "claude-sonnet-4-6",
"costUsd": 0.14448185,
"sectionsSeen": [
"BASIC_INFORMATION",
"CERTIFICATES",
"LOCATION",
"LICENSES_AUTHORIZATIONS"
],
"parecer": "Texto completo do parecer do agente..."
},
{
"agent": "societario",
"agentLabel": "Societário",
"score": 3,
"resumo": "Recomenda negar. Estrutura societária com saída coletiva de diretores, cadastro suspenso e rede de relacionamentos com padrão de endereço fiscal de conveniência.",
"redFlags": [
{
"severity": "CRITICAL",
"label": "Saída coletiva de diretores e suspensão cadastral",
"detail": "Todos os diretores saíram simultaneamente em maio de 2026, coincidindo com a suspensão do cadastro federal e a classificação como empresa não ativa, indicando descontinuidade operacional intencional em empresa com menos de cinco anos de existência."
},
{
"severity": "CRITICAL",
"label": "Endereço fiscal de conveniência com passivos elevados",
"detail": "O endereço da empresa é compartilhado por 99 entidades, 40 delas em alerta, com empresas inativas registrando passivos federais de aproximadamente R$ 3,6 milhões e R$ 1,1 milhão, caracterizando padrão de domicílio fiscal de fachada."
},
{
"severity": "WARNING",
"label": "Sócios com restrições em bureau de crédito",
"detail": "Dois sócios pessoas físicas do quadro societário direto possuem restrições registradas em bureau de crédito, sem detalhamento de valores, o que agrava o risco dado o porte diminuto da empresa e a situação cadastral já fragilizada."
}
],
"positiveFactors": [
{
"label": "Ausência de exposição política e sanções",
"detail": "Nenhum membro do quadro societário ou do grupo econômico apresenta vínculos com pessoas politicamente expostas ou sanções nacionais e internacionais registradas."
}
],
"confidence": 0.72,
"infoGaps": [
"Valores e natureza das restrições de bureau dos sócios pessoas físicas não foram detalhados.",
"Identidade e perfil dos novos controladores após os ciclos de rotatividade societária não estão disponíveis."
],
"recommendation": "REJECT",
"model": "claude-sonnet-4-6",
"costUsd": 0.0277494,
"sectionsSeen": [
"RELATIONS"
],
"parecer": "Texto completo do parecer do agente..."
}
],
"confidence": 0.97,
"models": {
"specialists": "claude-sonnet-4-6",
"synthesizer": "claude-sonnet-4-6"
},
"costUsd": 0.3572285,
"durationMs": 46040,
"trigger": "MANUAL",
"deliberationId": "6612a7f388b90e3600000000",
"finishedAt": "2026-07-31T17:50:16.725Z"
},
"at": "2026-07-31T17:50:16.725Z"
},
"insights": [
{
"section": "SANCTIONS",
"score": 10,
"riskLevel": "LOW",
"parecer": "Texto do parecer da seção...",
"highlights": null,
"at": "2026-07-31T13:43:12.307Z"
},
{
"section": "BASIC_INFORMATION",
"score": 2,
"riskLevel": "CRITICAL",
"parecer": "Texto do parecer da seção...",
"highlights": null,
"at": "2026-07-31T13:43:08.482Z"
}
]
}
{
"reportId": "6612a7f30000000000000001",
"document": "43591367000130",
"committee": {
"status": null,
"decision": null,
"result": null,
"at": null
},
"insights": []
}
{
"code": 400,
"message": "section must be one of the following values: BASIC_INFORMATION, SUMMARY, SCR, ..."
}
{
"code": 404,
"message": "Relatório não encontrado."
}
Próximos passos
Comitê de Crédito IA
Como os pareceres viram uma decisão.
Convocar Comitê
Levar o relatório a comitê sob demanda.
Pareceres GYRA+ IA
O que é um parecer de seção.
Seções do Relatório
Catálogo de seções e seus tipos.

