> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nlbs.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Consultar sinais da análise

> Sinais de risco detectados na análise, com contagens por pilar.



## OpenAPI

````yaml https://api.nlbs.ai/api/openapi.json get /analyses/{analysis_uuid}/signals
openapi: 3.1.0
info:
  description: >-
    API de AML da NL Labs AI. Use apikeys Bearer para os endpoints protegidos.
    As sondas /live e /ready são públicas.
  title: NL Labs AI
  version: 0.1.0
servers:
  - url: https://api.nlbs.ai/api
security:
  - ApiKeyAuth: []
tags:
  - description: >-
      Endpoints de verificação de saúde em tempo de execução e atualização das
      fontes.
    name: health
  - description: >-
      Endpoints de busca de entidades canônicas usados antes de iniciar
      análises.
    name: entities
  - description: >-
      Endpoints de criação, consulta e sub-recursos (grafo, sinais, eventos,
      explicação, snapshot) de análises de AML.
    name: analyses
  - description: >-
      Endpoints de criação, consulta e regeneração de parágrafos de relatórios
      regulatórios (Motor 2).
    name: reports
  - description: Endpoints do catálogo versionado de regras determinísticas.
    name: rules
  - description: Endpoints do catálogo versionado de referências regulatórias.
    name: regulatory
  - description: Operações de configuração de endpoints de webhook e eventos de entrega.
    name: webhooks
paths:
  /analyses/{analysis_uuid}/signals:
    get:
      tags:
        - analyses
      summary: Consultar sinais da análise
      description: Sinais de risco detectados na análise, com contagens por pilar.
      operationId: get_analysis_signals
      parameters:
        - description: UUID da execução da análise.
          in: path
          name: analysis_uuid
          required: true
          schema:
            description: UUID da execução da análise.
            format: uuid
            title: UUID da Análise
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AnalysisSignalsResponse'
          description: Resposta bem-sucedida.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Apikey Bearer ausente, malformada, expirada ou inválida.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: A apikey autenticada não tem o escopo necessário.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Análise não encontrada.
        '422':
          description: >-
            Corpo da requisição, parâmetro de rota, parâmetro de query ou regra
            de negócio inválidos.
      security:
        - HTTPBearer: []
components:
  schemas:
    AnalysisSignalsResponse:
      properties:
        counts:
          $ref: '#/components/schemas/SignalCounts'
          description: Contagem de sinais por pilar.
        signals:
          description: Lista de sinais detectados.
          items:
            $ref: '#/components/schemas/SignalResult'
          title: Signals
          type: array
      required:
        - signals
        - counts
      title: AnalysisSignalsResponse
      type: object
      description: >-
        Sinais de risco detectados na análise, com contagens agregadas por
        pilar.
    ErrorResponse:
      properties:
        detail:
          description: Mensagem pública estável de erro.
          examples:
            - Resource not found.
          title: Detail
          type: string
      required:
        - detail
      title: ErrorResponse
      type: object
    SignalCounts:
      properties:
        by_pillar:
          additionalProperties:
            $ref: '#/components/schemas/PillarSignalCount'
          title: By Pillar
          type: object
        score_sum:
          anyOf:
            - type: number
            - pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
              type: string
          title: Score Sum
        total:
          title: Total
          type: integer
      required:
        - total
        - score_sum
      title: SignalCounts
      type: object
      description: Contagem de sinais por pilar de risco.
    SignalResult:
      description: >-
        Saída auditável de uma checagem completa de sinal, incluindo
        modificadores em nível de sinal.
      properties:
        adjusted_score:
          anyOf:
            - type: number
            - pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
              type: string
          title: Adjusted Score
        applied_aggravants:
          items:
            $ref: '#/components/schemas/AppliedModifier'
          title: Applied Aggravants
          type: array
        applied_attenuants:
          items:
            $ref: '#/components/schemas/AppliedModifier'
          title: Applied Attenuants
          type: array
        assessed_entity_id:
          exclusiveMinimum: 0
          title: Assessed Entity Id
          type: integer
        band_floor:
          anyOf:
            - $ref: '#/components/schemas/RiskLevel'
            - type: 'null'
        base_score:
          anyOf:
            - type: number
            - pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
              type: string
          title: Base Score
        code:
          title: Code
          type: string
        evidences:
          items:
            $ref: '#/components/schemas/Evidence'
          title: Evidences
          type: array
        graph_paths:
          items: {}
          title: Graph Paths
          type: array
        identified:
          title: Identified
          type: boolean
        kind:
          $ref: '#/components/schemas/SignalKind'
          default: observable
        limitations:
          items:
            $ref: '#/components/schemas/DataRequirement'
          title: Limitations
          type: array
        name:
          title: Name
          type: string
        observed_entity_ids:
          items:
            type: integer
          title: Observed Entity Ids
          type: array
        pillar:
          anyOf:
            - $ref: '#/components/schemas/PillarCode'
            - type: 'null'
        root_entity_id:
          exclusiveMinimum: 0
          title: Root Entity Id
          type: integer
        severity:
          $ref: '#/components/schemas/SignalSeverity'
        signal_multiplier:
          anyOf:
            - type: number
            - pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
              type: string
          title: Signal Multiplier
        version:
          title: Version
          type: string
      required:
        - code
        - name
        - version
        - root_entity_id
        - assessed_entity_id
        - identified
        - severity
        - pillar
        - base_score
        - signal_multiplier
        - adjusted_score
      title: SignalResult
      type: object
    PillarSignalCount:
      properties:
        count:
          title: Count
          type: integer
        score_sum:
          anyOf:
            - type: number
            - pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
              type: string
          title: Score Sum
      required:
        - count
        - score_sum
      title: PillarSignalCount
      type: object
      description: Contagem de sinais para um pilar de risco específico.
    AppliedModifier:
      description: Modificador aplicado a um sinal, técnica ou pilar global.
      properties:
        code:
          title: Code
          type: string
        direction:
          $ref: '#/components/schemas/ModifierDirection'
        evidences:
          items:
            $ref: '#/components/schemas/Evidence'
          title: Evidences
          type: array
        limitations:
          items:
            $ref: '#/components/schemas/DataRequirement'
          title: Limitations
          type: array
        multiplier_delta:
          anyOf:
            - type: number
            - pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
              type: string
          title: Multiplier Delta
        name:
          title: Name
          type: string
        scope:
          $ref: '#/components/schemas/ModifierScope'
      required:
        - code
        - name
        - scope
        - direction
        - multiplier_delta
      title: AppliedModifier
      type: object
    RiskLevel:
      description: >-
        Classes finais de risco de AML usadas pela camada de pontuação da
        metodologia.
      enum:
        - low
        - medium
        - high
        - critical
      title: RiskLevel
      type: string
    Evidence:
      additionalProperties: false
      description: >-
        Objeto de evidência genérico com chave, rótulo, tipo e payload original
        explícitos. Esse contrato é propositalmente genérico pra que cada
        sinal/modificador possa anexar os objetos reais usados como evidência
        (por exemplo, transações ou registros de processo) sem impor um schema
        rígido nessa camada.
      properties:
        content:
          title: Content
        description:
          title: Description
          type: string
        key:
          title: Key
          type: string
        label:
          title: Label
          type: string
        metadata:
          additionalProperties: true
          title: Metadata
          type: object
        type:
          $ref: '#/components/schemas/EvidenceType'
      required:
        - key
        - label
        - description
        - type
        - content
      title: Evidence
      type: object
    SignalKind:
      description: Tipo de execução do sinal da metodologia.
      enum:
        - observable
        - meta
      title: SignalKind
      type: string
    DataRequirement:
      description: >-
        Requisito estruturado de dados para entidades da metodologia. `fields`
        lista os campos de contexto esperados e `justification` registra por que
        esse conjunto de campos é necessário para o comportamento do detector ou
        modificador.
      properties:
        fields:
          items:
            type: string
          title: Fields
          type: array
        justification:
          default: ''
          title: Justification
          type: string
      title: DataRequirement
      type: object
    PillarCode:
      description: Pilares oficiais de risco de AML mensuráveis do Motor 1 v1.
      enum:
        - sanc
        - estru
        - jud
        - pep
        - juris
      title: PillarCode
      type: string
    SignalSeverity:
      description: >-
        Nível de severidade base usado pelos sinais do Motor 1 e pelo código
        legado de metodologia.
      enum:
        - clean
        - enrichment
        - low
        - medium
        - medium_high
        - high
        - very_high
        - critical
      title: SignalSeverity
      type: string
    ModifierDirection:
      description: Se um modificador aumenta ou reduz a força do risco.
      enum:
        - aggravate
        - attenuate
      title: ModifierDirection
      type: string
    ModifierScope:
      description: Nível de cálculo em que um agravante ou atenuante atua.
      enum:
        - signal
        - technique
        - global_pillar
      title: ModifierScope
      type: string
    EvidenceType:
      description: >-
        Categoria de alto nível do payload de evidência usado pelas avaliações
        de metodologia.
      enum:
        - transaction
        - transaction_groups
        - corporate_ownership_partners
        - ubo_resolution
        - corporate_participation_fanout
        - serial_company_opening
        - organization_stability
        - qsa_full_replacement
        - simples_exclusion
        - cadastral_precariousness
        - thin_file_routing
        - mlro_escalation
        - sanctionary
        - organization_registration
        - cnae_mismatch
        - cadastral_cnae_mismatch
        - sensitive_activity_cnae
        - nonprofit_legal_nature
        - isolated_controller_interposition
        - control_cycle
        - process
        - warrant
        - sanction
        - restriction
        - watchlist_entry
        - territorial_jurisdiction
        - official_publication_control_intent
        - public_service_link
        - public_servant_private_management
        - public_quarantine_private_activity
        - risk_composition
        - political_exposure
        - official_publication
        - administrative_condemnation
        - regulatory_enforcement
        - object
        - other
      title: EvidenceType
      type: string
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````