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

# Search the evidence trail

> Searches the evidence trail by period, consultation id, BACEN control code or document. Each item is a consultation that has an evidence trail, most recently accepted first. To read the records of one consultation, use `GET /v1/src/evidence/consultations/{id}`.



## OpenAPI

````yaml /pt/openapi/v3-current/src.yaml post /v1/src/evidence
openapi: 3.1.0
info:
  description: >-
    API for Lerian SRC, which sends your institution's restriction consultations
    to BACEN's BC Protege+ and keeps the evidence of each consultation.
  title: Lerian SRC API
  version: 1.0.0
servers:
  - url: https://api.example.com
    description: Replace the example host with your deployment's address.
security:
  - m2m: []
tags:
  - description: >-
      Asynchronous restriction consultations (accept → pending →
      completed/failed).
    name: consultation
  - description: >-
      Client-decision records (exceptional proceed, refusal explanation) —
      single-purpose, write-once.
    name: decision
  - description: Regulatory evidence trail — search, reconstruction, chained correction.
    name: evidence
  - description: Aggregated numeric view per institution.
    name: dashboard
  - description: Status of the institution's regulatory credential.
    name: credential
  - description: >-
      Operator cases — the backlog `openOperatorCases` counts, and the act that
      closes one.
    name: operator
paths:
  /v1/src/evidence:
    post:
      tags:
        - evidence
      summary: Search the evidence trail
      description: >-
        Searches the evidence trail by period, consultation id, BACEN control
        code or document. Each item is a consultation that has an evidence
        trail, most recently accepted first. To read the records of one
        consultation, use `GET /v1/src/evidence/consultations/{id}`.
      operationId: searchEvidence
      parameters:
        - description: Optional correlation id (UUID) propagated through logs/traces.
          in: header
          name: X-Request-ID
          schema:
            description: Optional correlation id (UUID) propagated through logs/traces.
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EvidenceSearchRequestBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EvidenceSearchListBody'
          description: OK
        '400':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          description: Bad Request
        '401':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          description: Unauthorized
        '403':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          description: Forbidden
        '422':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          description: Unprocessable Entity
        '429':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          description: Too Many Requests
        '500':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
          description: Internal Server Error
      security:
        - m2m:
            - src:evidence:read
components:
  schemas:
    EvidenceSearchRequestBody:
      additionalProperties: false
      properties:
        consultationId:
          description: Filter by one consultation (UUID). A non-UUID returns 422 SRC-0002.
          examples:
            - 0192f5c4-1c2f-7c3a-8a1b-9f2e3d4c5b6a
          type: string
        controlCode:
          description: >-
            Filter by the consultation control code assigned by BACEN
            (NumCtrlSRC).
          maxLength: 64
          type: string
        cursor:
          description: >-
            Opaque pagination cursor from a previous page. An invalid cursor
            returns 400 SRC-0001.
          type: string
        document:
          description: >-
            Filter by consulted document, unmasked: CPF (11 numeric digits) or
            CNPJ (14 characters, 12 alphanumeric [0-9A-Z] plus 2 numeric check
            digits).
          pattern: ^([0-9]{11}|[0-9A-Z]{12}[0-9]{2})$
          type: string
        from:
          description: >-
            Inclusive lower bound on acceptance time (RFC3339 date-time).
            Unparseable returns 400 SRC-0001.
          examples:
            - '2026-08-01T00:00:00Z'
          type: string
        limit:
          default: 50
          description: Page size (1..200).
          examples:
            - 50
          format: int64
          maximum: 200
          minimum: 1
          type: integer
        to:
          description: >-
            Inclusive upper bound on acceptance time (RFC3339 date-time).
            Unparseable returns 400 SRC-0001; earlier than from returns 422
            SRC-0002.
          examples:
            - '2026-08-31T23:59:59Z'
          type: string
      type: object
    EvidenceSearchListBody:
      additionalProperties: false
      properties:
        items:
          description: The page's consultation projections, most recently accepted first.
          items:
            $ref: '#/components/schemas/EvidenceSearchItemBody'
          type:
            - array
            - 'null'
        limit:
          description: Effective page size this request was served with.
          examples:
            - 50
          format: int64
          type: integer
        nextCursor:
          description: Opaque cursor for the following page; null on the last page.
          type:
            - string
            - 'null'
        prevCursor:
          description: >-
            Opaque cursor for the preceding page; null (backwards paging is
            served by neither cursor endpoint of this service).
          type:
            - string
            - 'null'
      required:
        - items
        - limit
        - nextCursor
        - prevCursor
      type: object
    ProblemDetails:
      additionalProperties: false
      properties:
        code:
          type: string
        correlationId:
          examples:
            - req-7a3f9c2e
          type: string
        detail:
          examples:
            - check digits are invalid for the declared documentType
          type: string
        details:
          additionalProperties: {}
          type: object
        instance:
          examples:
            - /v1/src/consultations
          type: string
        status:
          examples:
            - 400
          format: int64
          type: integer
        title:
          examples:
            - Bad Request
          type: string
        traceId:
          examples:
            - a1b2c3d4
          type: string
        type:
          type: string
        violations:
          items:
            $ref: '#/components/schemas/Violation'
          type:
            - array
            - 'null'
      required:
        - type
        - title
        - status
        - detail
        - instance
        - traceId
        - correlationId
        - violations
      type: object
    EvidenceSearchItemBody:
      additionalProperties: false
      properties:
        acceptedAt:
          description: Acceptance instant (RFC3339).
          format: date-time
          type: string
        bcbControlCode:
          description: >-
            BACEN control code (NumCtrlSRC); null while the consultation has
            none.
          type:
            - string
            - 'null'
        concludedAt:
          description: Conclusion instant; null while pending.
          format: date-time
          type:
            - string
            - 'null'
        consultationId:
          description: Consultation identifier.
          examples:
            - 0192f5c4-1c2f-7c3a-8a1b-9f2e3d4c5b6a
          type: string
        documentMasked:
          description: Masked consulted document.
          examples:
            - 529******25
          type: string
        status:
          description: 'Lifecycle state: pending | completed | failed.'
          examples:
            - completed
          type: string
      required:
        - consultationId
        - documentMasked
        - bcbControlCode
        - status
        - acceptedAt
        - concludedAt
      type: object
    Violation:
      additionalProperties: false
      properties:
        code:
          type: string
        field:
          examples:
            - document
          type: string
        reason:
          examples:
            - check digits are invalid for the declared documentType
          type: string
      required:
        - field
        - reason
      type: object
  securitySchemes:
    m2m:
      flows:
        clientCredentials:
          scopes:
            src:consultation:read: Read/list consultations
            src:consultation:write: Create restriction consultations
            src:credential:read: Read regulatory-credential status
            src:dashboard:read: Read the aggregated numeric dashboard
            src:decision:write: >-
              File the institution's record against a consultation — exceptional
              proceed (§1º) or refusal explanation (§2º)
            src:evidence:correct: Append a chained correction to an evidence trail
            src:evidence:read: Search and reconstruct the evidence trail
            src:operator:close: >-
              Close an open operator case so it leaves the openOperatorCases
              backlog
            src:operator:read: List the operator cases
          tokenUrl: https://access-manager.example.com/oauth2/token
      type: oauth2

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.