> ## 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.

# List DICT MED operation statuses

> Enumerates durable MED operation-intent statuses — the operator surface: no pending status, including MANUAL_REVIEW, is invisible. Optional status/kind facets; cursor-paginated (the underlying table is actively mutated by the sweep, so an offset page could skip or repeat a row). Same sanitized per-item projection as GET /operations/{id}.



## OpenAPI

````yaml /en/openapi/v3-current/spi-dict.yaml get /api/v1/dict/operations
openapi: 3.1.0
info:
  contact:
    email: contact@lerian.studio
    name: Lerian Studio
    url: https://lerian.studio
  description: >-
    OpenAPI 3.1 surface for the DICT (Diretório de Identificadores de Contas
    Transacionais) capability of Lerian SPI, the direct integration between the
    institution and the Brazilian Instant Payment System (SPI/Pix). It covers
    the PIX key lifecycle, portability and ownership claims, the MED 2.0 dispute
    surface (infraction reports, refunds, fraud markers, and funds recoveries),
    antifraud statistics, synchronous DICT reports, and the internal operations
    that keep the key directory consistent.
  license:
    name: Lerian Studio General License
  title: Lerian SPI — DICT API
  version: 1.0.0
servers:
  - url: https://spi.sandbox.lerian.net
security: []
tags:
  - description: 'PIX key lifecycle: register, list, search, lookup, delete, and statistics.'
    name: Keys
  - description: >-
      PIX key portability and ownership claims through their full lifecycle
      (initiate, confirm, reject, cancel, acknowledge, complete).
    name: Claims
  - description: 'DICT infraction reports: list and retrieve.'
    name: Infractions
  - description: 'DICT refund requests: create, list, and retrieve.'
    name: Refunds
  - description: 'PIX fraud markers: create, list, and statistics.'
    name: Fraud Markers
  - description: >-
      Durable MED operation-intent status: the operationId every
      create/lifecycle-transition backlog route returns or references on every
      outcome, queryable independently of the business resource.
    name: Operations
  - description: >-
      Synchronous reports over Lerian SPI's own DICT record: COUNT(*) summaries
      of keys (by type/status) and claims (by type/status + open-past-deadline).
      COUNT-only — DICT holds no money.
    name: Reports
  - description: >-
      Internal DICT operations: reconciliation runs, claim deadline processing,
      and orphaned-key cleanup.
    name: Internal
paths:
  /api/v1/dict/operations:
    get:
      tags:
        - Operations
      summary: List DICT MED operation statuses
      description: >-
        Enumerates durable MED operation-intent statuses — the operator surface:
        no pending status, including MANUAL_REVIEW, is invisible. Optional
        status/kind facets; cursor-paginated (the underlying table is actively
        mutated by the sweep, so an offset page could skip or repeat a row).
        Same sanitized per-item projection as GET /operations/{id}.
      operationId: listRegulatoryOperations
      parameters:
        - description: >-
            Optional facet: restrict to operations in this status. Omit for any
            status.
          explode: false
          in: query
          name: status
          schema:
            description: >-
              Optional facet: restrict to operations in this status. Omit for
              any status.
            enum:
              - ''
              - RESERVED
              - SUBMITTED
              - CONFIRMED
              - SYNC_PENDING
              - REJECTED
              - UNKNOWN_OUTCOME
              - MANUAL_REVIEW
              - ABANDONED
              - COMPLETED
              - LOCAL_FAILURE
            type: string
        - description: >-
            Optional facet: restrict to operations for this MED resource kind.
            Omit for any kind.
          explode: false
          in: query
          name: kind
          schema:
            description: >-
              Optional facet: restrict to operations for this MED resource kind.
              Omit for any kind.
            enum:
              - ''
              - infraction
              - refund
              - fraud_marker
              - funds_recovery
            type: string
        - description: Page size (default 25, max 100).
          explode: false
          in: query
          name: limit
          schema:
            default: 25
            description: Page size (default 25, max 100).
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - description: >-
            Opaque continuation token from a prior page's nextCursor; omit for
            the first page.
          explode: false
          in: query
          name: cursor
          schema:
            description: >-
              Opaque continuation token from a prior page's nextCursor; omit for
              the first page.
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegulatoryOperationListResponse'
                description: One page of durable MED operation-intent statuses.
          description: OK
        '404':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Not Found
        '422':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Unprocessable Entity
        '500':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Internal Server Error
        default:
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Error
      security:
        - BearerAuth: []
components:
  schemas:
    RegulatoryOperationListResponse:
      additionalProperties: false
      properties:
        items:
          description: >-
            Durable MED operation-intent statuses for the requested filter/page
            window — the SAME projection GET /operations/{id} returns per item.
          items:
            $ref: '#/components/schemas/RegulatoryOperationResponse'
          type: array
        limit:
          description: Effective page size applied to this response.
          format: int64
          type: integer
        nextCursor:
          description: >-
            Opaque continuation token for the next page; absent when no further
            page remains.
          type: string
      required:
        - items
        - limit
      type: object
    Detail:
      additionalProperties: false
      properties:
        code:
          description: >-
            Stable, machine-readable domain error code scoped to the emitting
            service (format: <SERVICE>-NNNN).
          type: string
        correlationId:
          description: Request-scoped correlation identifier echoing X-Request-ID.
          examples:
            - req-7a3f9c2e
          type: string
        detail:
          description: >-
            A human-readable explanation specific to this occurrence of the
            problem.
          examples:
            - Property foo is required but is missing.
          type: string
        errors:
          description: Optional list of individual error details
          items:
            $ref: '#/components/schemas/ErrorDetail'
          type:
            - array
            - 'null'
        instance:
          description: >-
            A URI reference that identifies the specific occurrence of the
            problem.
          examples:
            - https://example.com/error-log/abc123
          format: uri
          type: string
        status:
          description: HTTP status code
          examples:
            - 400
          format: int64
          type: integer
        title:
          description: >-
            A short, human-readable summary of the problem type. This value
            should not change between occurrences of the error.
          examples:
            - Bad Request
          type: string
        type:
          default: about:blank
          description: A URI reference to human-readable documentation for the error.
          examples:
            - https://example.com/errors/example
          format: uri
          type: string
        upstream:
          $ref: '#/components/schemas/Upstream'
          description: >-
            RFC 9457 extension member: the error a proxied third-party provider
            reported. Absent unless the emitting service explicitly surfaced
            one.
      required:
        - correlationId
      type: object
    RegulatoryOperationResponse:
      additionalProperties: false
      properties:
        bacen:
          $ref: '#/components/schemas/BACENEnvelopeResponse'
          description: >-
            BACEN's own sanitized operational envelope for the last interaction
            this operation recorded (correlation id + response time only, never
            payload); omitted when no BACEN interaction has landed yet.
        bacenResourceId:
          description: >-
            BACEN-assigned resource UUID, once known; absent while a create's
            outcome is still unresolved.
          examples:
            - 550e8400-e29b-41d4-a716-446655440000
          type: string
        createdAt:
          description: Operation reservation timestamp (RFC 3339, UTC).
          examples:
            - '2026-06-14T12:00:00Z'
          type: string
        kind:
          description: MED resource kind this operation concerns.
          enum:
            - infraction
            - refund
            - fraud_marker
            - funds_recovery
          examples:
            - infraction
          type: string
        operationId:
          description: This attempt's own identity; never the business resource's id.
          examples:
            - 01930000-0000-7000-8000-000000000000
          type: string
        requestFingerprint:
          description: >-
            Lowercase-hex SHA-256 of this operation's own canonical request —
            never the request body itself. Required as the digest field of a
            MANUAL_REVIEW resolution decision (ATTACH_BACEN_RESOURCE or
            CONFIRM_NOT_APPLIED) so the resolution callback can authenticate it
            is targeting the right operation.
          examples:
            - 2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
          type: string
        status:
          description: >-
            Durable operation-intent lifecycle state — OUR attempt's status,
            distinct from the business resource's own BACEN-reported status.
            LOCAL_FAILURE means the attempt never reached BACEN (a local
            dependency fault, e.g. the DICT signer) — never BACEN's own verdict.
          enum:
            - RESERVED
            - SUBMITTED
            - CONFIRMED
            - SYNC_PENDING
            - REJECTED
            - UNKNOWN_OUTCOME
            - MANUAL_REVIEW
            - ABANDONED
            - COMPLETED
            - LOCAL_FAILURE
          examples:
            - UNKNOWN_OUTCOME
          type: string
        updatedAt:
          description: Last status-transition timestamp (RFC 3339, UTC).
          examples:
            - '2026-06-14T12:00:00Z'
          type: string
        verb:
          description: BACEN verb this operation reserved.
          enum:
            - create
            - update
            - acknowledge
            - close
            - cancel
            - refund
          examples:
            - create
          type: string
      required:
        - operationId
        - kind
        - verb
        - status
        - requestFingerprint
        - createdAt
        - updatedAt
      type: object
    ErrorDetail:
      additionalProperties: false
      properties:
        location:
          description: >-
            Where the error occurred, e.g. 'body.items[3].tags' or
            'path.thing-id'
          type: string
        message:
          description: Error message text
          type: string
        value:
          description: The value at the given location
      type: object
    Upstream:
      additionalProperties: false
      properties:
        code:
          description: The upstream provider's own error code, verbatim.
          examples:
            - E4001
          type: string
        message:
          description: >-
            The upstream provider's own error message, verbatim (bounded, never
            its raw response body).
          examples:
            - account not found at provider
          type: string
      type: object
    BACENEnvelopeResponse:
      additionalProperties: false
      properties:
        correlationId:
          description: >-
            BACEN's own correlation identifier for its most recent interaction
            on this record — the wire value, distinct from any request-scoped
            echo.
          examples:
            - a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4
          type: string
        lastModified:
          description: >-
            BACEN's own LastModified for this resource (RFC 3339, UTC) — the
            version this response reflects; present only on the MED resources
            (infraction, refund, fraud marker, funds recovery).
          examples:
            - '2026-06-14T12:00:00Z'
          type: string
        responseTime:
          description: >-
            Instant BACEN answered its most recent interaction on this record,
            RFC 3339 (UTC); omitted when BACEN's response carried no parseable
            instant.
          examples:
            - '2026-06-14T12:00:00Z'
          type: string
      required:
        - correlationId
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      description: JWT bearer token issued by the identity provider.
      scheme: bearer
      type: http

````