Visão geral
O objeto rulesExecutionSummary é retornado sempre que o motor de regras é executado: em Criar transação, Criar pessoa, Criar empresa, Criar entidade, Criar evento e nos payloads de webhooks de eventos de análise de risco. Ele resume quais regras deram match (hit), quais não (no hit), as ações executadas e metadados de pontuação.Onde aparece
| Contexto | Local |
|---|---|
Criar transação (sync, executeRules: true, padrão) | Raiz da resposta — summary completo após as regras terminarem |
Criar transação (async, asyncRules=true) | Raiz — summary placeholder; asyncRules: true, rulesEvaluationStatus: "queued" |
| Criar pessoa/empresa/entidade (quando a matriz de risco roda) | Raiz da resposta e rulesResult.rulesExecutionSummary |
| Criar evento (quando as regras rodam) | Raiz da resposta e rulesResult.rulesExecutionSummary |
| Webhooks de análise de risco | payload.rulesExecutionSummary |
Campos
| Campo | Tipo | Descrição |
|---|---|---|
| rulesHit | array | Regras cujas condições foram atendidas. Cada item inclui ruleId, ruleExternalId (quando configurado), riskMatrixId / riskMatrixName quando a regra pertence a uma matriz (multi-matriz e rastreabilidade em auditoria), além de name, description, score, priority, category, status, conditions e opcionalmente actions. |
| rulesNoHit | array | Regras avaliadas mas cujas condições não foram atendidas. Mesma estrutura de cada item de rulesHit. |
| actionsExecuted | object | Presente apenas quando pelo menos uma ação foi executada. Ações agregadas de todas as regras que deram hit. |
| totalScore | number | Soma do score de todas as regras que deram hit (excluindo regras shadow). |
| scoreResult | object | Score normalizado e label: rawScore, normalizedScore e opcionalmente label (name, range, minScore, maxScore). |
| riskMatrixName | string | Nome da matriz de risco executada. |
| executionTimeMs | number | Tempo de execução do motor de regras em milissegundos. |
| trigger | string | Evento que disparou a avaliação (ex.: manual_evaluation, entity_created, enrichment_completed, created). |
| matchedRulesCount | number | Número de regras que deram match (equivalente a rulesHit.length). |
| riskMatricesExecuted | array | Opcional. Uma entrada por matriz de risco que contribuiu com regras avaliadas nesta execução: score bruto, contagem de regras com hit e metadados de label por matriz. É adicionado quando a API enriquece o resumo após a avaliação (por exemplo fluxos com várias matrizes ou análise persistida). Omitido quando não se aplica ou vem vazio. |
Item de rulesHit / rulesNoHit
| Campo | Tipo | Descrição |
|---|---|---|
| ruleId | string | UUID da regra (linha persistida). |
| ruleExternalId | string | null | Código de negócio da regra quando configurado (ex.: RG-ENTITY-1). |
| riskMatrixId | string | null | UUID da matriz de risco à qual a regra pertence, ou null se não estiver associada a uma matriz. |
| riskMatrixName | string | null | Nome de exibição da matriz quando o contexto de execução inclui labels das matrizes. |
| name | string | Nome da regra. |
| description | string | Descrição da regra. |
| score | number | null | Pontos da regra quando dá hit. |
| priority | number | null | Prioridade da regra. |
| category | string | Categoria da regra. |
| status | string | Status da regra (ex.: active, shadow). |
| conditions | array | Condições avaliadas: cada { field, value, operator? }. |
| actions | object | Em rulesHit: ações executadas. Em rulesNoHit: ações configuradas. Ver abaixo. |
actions (dentro de cada regra)
| Campo | Tipo | Descrição |
|---|---|---|
| alerts | array | Definições de alertas: name, type, severity, description. |
| suggestion | string | Tipo de sugestão: BLOCK, SUSPEND ou FLAG. |
| status | string | Status da transação quando a ação updateEntityStatus define status (regras transacionais). Em regras de entidade pode refletir status de entidade quando aplicável. |
| originEntityStatus | string | Opcional. Status da entidade origem quando a regra define originEntityStatus em updateEntityStatus (regras transacionais). Omitido se não configurado ou não aplicado. |
| destinationEntityStatus | string | Opcional. Status da entidade destino quando a regra define destinationEntityStatus em updateEntityStatus (regras transacionais). Omitido se não configurado ou não aplicado. |
| assignedUser | object | { userId: string } se a regra atribui um usuário. |
| customKeys | array | Chaves de ações personalizadas (ex.: para workflows). |
actionsExecuted (raiz)
| Campo | Tipo | Descrição |
|---|---|---|
| alerts | array | Todas as alertas das regras que deram hit. Cada alerta pode incluir ruleId, ruleExternalId e investigationId (atribuído após a consolidação; null na resposta imediata). |
| suggestion | string | Sugestão vencedora por peso: BLOCK, SUSPEND ou FLAG. |
| status | string | Status final da transação quando regras transacionais aplicam updateEntityStatus.status (regra vencedora por peso). |
| originEntityStatus | string | Opcional. Status final da entidade origem quando regras aplicam originEntityStatus (regras transacionais). Omitido se não aplicado. |
| destinationEntityStatus | string | Opcional. Status final da entidade destino quando regras aplicam destinationEntityStatus (regras transacionais). Omitido se não aplicado. |
| assignedUser | object | { userId: string } se alguma regra atribuiu um usuário. |
| customKeys | array | Todas as chaves de ações personalizadas das regras que deram hit. |
riskMatricesExecuted (cada item do array)
| Campo | Tipo | Descrição |
|---|---|---|
| riskMatrixId | string | null | UUID da matriz, ou null para regras não vinculadas a uma linha de matriz. |
| riskMatrixName | string | null | Nome de exibição da matriz (resolvido na execução ou a partir de metadados da organização). |
| rawScore | number | Soma dos scores das regras com hit nessa matriz (hits não shadow), mesma base do desdobramento por matriz em auditorias. |
| matchedRules | number | Quantidade de regras com hit para essa matriz nesta execução. |
| labelName | string | null | Nome do rótulo de risco aplicado à contribuição dessa matriz (quando houve resolução de rótulos). |
| labelColor | string | null | Cor em hex ou token para UI quando existir. |
| labelSeverity | string | null | Severidade: low, medium, high ou critical, quando resolvida. |
| matrixNormalizedScore | number | null | Score normalizado 0–100 dessa matriz quando disponível. |
Exemplo completo
O exemplo a seguir mostra rulesExecutionSummary com todos os campos preenchidos como viriam em uma resposta da API ou em um webhook.Exemplo mínimo (nenhuma regra dá hit)
Quando nenhuma regra dá match, ainda assim são retornadosrulesHit, rulesNoHit, totalScore e metadados; actionsExecuted é omitido quando vazio.
Notas
- riskMatricesExecuted não é produzido apenas pelo motor de regras; a API mescla no
rulesExecutionSummaryquando existe um desdobramento de score por matriz. Em respostas com uma única matriz pode bastar riskMatrixName na raiz sem este array. - investigationId em
actionsExecuted.alertsé atribuído de forma assíncrona após a consolidação de alertas; na resposta imediata da API énull. - scoreResult.normalizedScore é o valor 0–100 persistido na entidade ou no audit; totalScore (e scoreResult.rawScore) é a soma bruta dos scores das regras.
- Os valores de trigger incluem:
manual_evaluation,entity_created,enrichment_completed,created,updated, entre outros conforme o contexto.check_completedfoi removido (2026-06-04) — useenrichment_completedpara regras pós-screening. - Regras transacionais
updateEntityStatus: uma regra pode definirstatus(transação),originEntityStatuse/oudestinationEntityStatusseparadamente.rulesHit[].actionsreflete o configurado na regra que deu match (inclui ações de status diferidas).actionsExecutedna raiz agrega o status de transação vencedor e os status de entidade origem/destino aplicados na execução. Clientes que só leemstatuspermanecem compatíveis; os novos campos são opcionais.