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

# Query the entries the Câmara PAG holds

> Issues a PAG0113 "IF consulta Lançamentos na Câmara PAG" to the Câmara PAG (Catálogo de Serviços do SFN v5.13, Vol II). Asks the câmara which entries it holds for this institution on a movement date. Every optional field in the body is a FILTER that narrows the universe returned (RSTR0007); supplying none asks for all of them. ⚠️ The answer NEVER includes a message the câmara refused for a format or basic-consistency error (RPAG0004), so an empty result means "no entry matches these filters" and never "nothing was sent". The instruction is minted, built, signed, encrypted and durably recorded BEFORE anything reaches the queue, so this returns 202 with the control number the câmara will echo; the answer (PAG0113R1) arrives asynchronously and is read back with getPAG0113. A deployment with no send leg configured answers 503 with SILOC-0023; one whose dispatcher is not running answers 503 with SILOC-0024.



## OpenAPI

````yaml /en/openapi/v3-current/siloc.yaml post /api/v1/siloc/outbound/entry-queries
openapi: 3.1.0
info:
  description: >-
    OpenAPI 3.1 surface for Lerian SILOC, the participant-side rail connecting
    the institution to Núclea's SILOC deferred-net interbank settlement.
  title: Lerian SILOC API
  version: 1.0.0
servers:
  - url: https://siloc.sandbox.lerian.net
security: []
paths:
  /api/v1/siloc/outbound/entry-queries:
    post:
      tags:
        - Câmara control
      summary: Query the entries the Câmara PAG holds
      description: >-
        Issues a PAG0113 "IF consulta Lançamentos na Câmara PAG" to the Câmara
        PAG (Catálogo de Serviços do SFN v5.13, Vol II). Asks the câmara which
        entries it holds for this institution on a movement date. Every optional
        field in the body is a FILTER that narrows the universe returned
        (RSTR0007); supplying none asks for all of them. ⚠️ The answer NEVER
        includes a message the câmara refused for a format or basic-consistency
        error (RPAG0004), so an empty result means "no entry matches these
        filters" and never "nothing was sent". The instruction is minted, built,
        signed, encrypted and durably recorded BEFORE anything reaches the
        queue, so this returns 202 with the control number the câmara will echo;
        the answer (PAG0113R1) arrives asynchronously and is read back with
        getPAG0113. A deployment with no send leg configured answers 503 with
        SILOC-0023; one whose dispatcher is not running answers 503 with
        SILOC-0024.
      operationId: submitPAG0113
      parameters:
        - description: >-
            Idempotency key for this state-changing request (required, max 255
            characters).
          in: header
          name: X-Idempotency
          required: true
          schema:
            description: >-
              Idempotency key for this state-changing request (required, max 255
              characters).
            maxLength: 255
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PAG0113Payload'
        required: true
      responses:
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagControlBodyPAG0113Payload'
          description: Accepted
        '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:
    PAG0113Payload:
      additionalProperties: false
      properties:
        DtAgendt:
          description: >-
            Data Agendamento (xs:date, [0..1]). A filter on the date an entry
            was scheduled to settle (RSTR0011).
          type: string
        DtMovto:
          description: Data Movimento (xs:date, [1..1]).
          type: string
        HrIni:
          description: >-
            Hora Início (xs:time, HH:MM:SS, [0..1]). A filter: omitting it means
            the câmara's opening time that day (RPAG0006).
          type: string
        NumCtrlPAGOr:
          description: >-
            Número Controle PAG Original (ControleIF, [0..1]). A filter: naming
            it returns only that entry (RPAG0005).
          type: string
        SitLancPAG:
          description: >-
            Situação Lançamento PAG (SitLancPAG, [0..1]). A filter, checked
            against the live set BACEN's Dicionário de Domínios publishes: AGE,
            CAN, COM, ENF or REJ (PEC and PED retired in 2002).
          type: string
        TpDeb_Cred:
          description: >-
            Tipo Débito ou Crédito (TpDebCred, [0..1]). A filter: C (crédito) or
            D (débito). Omit to ask for both.
          type: string
      required:
        - DtMovto
      type: object
    PagControlBodyPAG0113Payload:
      additionalProperties: false
      properties:
        answer:
          $ref: '#/components/schemas/PAGControlAnswerResponse'
          description: What the câmara answered; omitted until it has answered.
        answerAbsent:
          description: >-
            True only on an ANSWERED message whose answer body this rail does
            not hold. The câmara did answer; what it wrote is not here, and the
            missing answer block is that absence, never an empty answer. Omitted
            otherwise.
          type: boolean
        answeredAt:
          description: When the câmara's answer was applied; omitted until it is.
          format: date-time
          type: string
        attempts:
          description: Queue-put attempts made so far.
          format: int64
          type: integer
        codMsg:
          description: The SFN instruction code this row carries, e.g. PAG0112.
          type: string
        dispatchedAt:
          description: When the frame reached the send queue; omitted until it has.
          format: date-time
          type: string
        id:
          description: Outbound message id.
          format: uuid
          type: string
        lastError:
          description: >-
            Why the last queue put failed, or — on REFUSED — the CodErro values
            the câmara marked, verbatim. Omitted when neither applies.
          type: string
        numCtrlIF:
          description: >-
            The control number this institution issued (NumCtrlIF). The câmara
            echoes it on the answer, which is what correlates the two.
          type: string
        nuop:
          description: The BCMSG operation number of the frame.
          type: string
        request:
          $ref: '#/components/schemas/PAG0113Payload'
          description: The request exactly as it was submitted, projected verbatim.
        status:
          description: >-
            Lifecycle state. REFUSED means the câmara received the instruction
            and returned its E twin; FAILED means this rail could not deliver
            it. Both are terminal and they are different facts.
          enum:
            - SUBMITTED
            - DISPATCHED
            - ANSWERED
            - REFUSED
            - FAILED
          type: string
        submittedAt:
          description: When the instruction was recorded.
          format: date-time
          type: string
      required:
        - request
        - id
        - codMsg
        - numCtrlIF
        - nuop
        - status
        - attempts
        - submittedAt
      type: object
    Detail:
      additionalProperties: true
      properties:
        code:
          description: >-
            Stable, machine-readable domain error code scoped to the emitting
            service (format: <SERVICE>-NNNN).
          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.
      type: object
    PAGControlAnswerResponse:
      additionalProperties: false
      properties:
        codMsg:
          description: The answer's own code, e.g. PAG0112R1.
          type: string
        entries:
          description: >-
            The PAG0113 result, in the order the câmara sent it; empty for every
            other code. An empty list means no entry matched the filters — never
            that no instruction was sent, because the câmara never presents a
            message it refused (RPAG0004).
          items:
            $ref: '#/components/schemas/PAGQueriedEntryResponse'
          type: array
        movementDate:
          description: Data Movimento.
          format: date
          type: string
        numCtrlPAG:
          description: >-
            Número Controle PAG: the câmara's own control number for what it
            registered. Omitted on the two consultations (PAG0113, PAG0114),
            whose answers register nothing to number.
          type: string
        pagAt:
          description: 'Data Hora PAG: the câmara''s clock, verbatim.'
          format: date-time
          type: string
        periods:
          description: >-
            The PAG0114 synthetic statement, one row per operational period, in
            the order the câmara sent it; empty for every other code.
          items:
            $ref: '#/components/schemas/PAGStatementPeriodResponse'
          type: array
      required:
        - codMsg
        - pagAt
        - movementDate
        - entries
        - periods
      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
    PAGQueriedEntryResponse:
      additionalProperties: false
      properties:
        codMsgOr:
          description: >-
            Código Mensagem Original: the code of the instruction this entry
            came from, e.g. PAG0107.
          type: string
        ispbIFCtrapart:
          description: 'ISPB IF Contraparte: the counterparty institution.'
          type: string
        numCtrlPAGOr:
          description: >-
            Número Controle PAG Original: the câmara's own control number for
            this entry, and the value a cancellation (PAG0112) or a devolução
            (PAG0111) names.
          type: string
        scheduleDate:
          description: >-
            Data Agendamento: the day this entry is scheduled to settle. Omitted
            when the câmara sent none.
          format: date
          type: string
        sitLancPAG:
          description: >-
            Situação Lançamento PAG, exactly as the câmara wrote it. Its values
            are published in BACEN's separate Dicionário de Domínios, each with
            its own activation and deactivation dates, so this rail neither
            decodes it nor asserts a settlement outcome from it.
          type: string
        situationAt:
          description: 'Data Hora Situação: the câmara''s clock for this entry''s situação.'
          format: date-time
          type: string
        tpDebCred:
          description: >-
            Tipo Débito ou Crédito, verbatim: C or D in the set BACEN publishes
            today.
          type: string
        vlrLanc:
          description: >-
            Valor Lançamento, as the decimal STRING the câmara wrote — never
            re-rendered through a number, so no centavo moves between the wire
            and this field.
          type: string
      required:
        - codMsgOr
        - tpDebCred
        - ispbIFCtrapart
        - numCtrlPAGOr
        - situationAt
        - sitLancPAG
        - vlrLanc
      type: object
    PAGStatementPeriodResponse:
      additionalProperties: false
      properties:
        balance:
          description: >-
            Saldo Período: the câmara's own closing balance for the period, as
            it wrote it. This rail does not derive it and does not check that it
            reconciles.
          type: string
        codPerOperac:
          description: Código Período Operacional, verbatim.
          type: string
        complementaryDeposits:
          description: Total Depósito Complementar Período, as the câmara wrote it.
          type: string
        initialDeposit:
          description: Valor Depósito Inicial Período, as the câmara wrote it.
          type: string
        totalCredits:
          description: Valor Total Lançamento Crédito, as the câmara wrote it.
          type: string
        totalDebits:
          description: Valor Total Lançamento Débito, as the câmara wrote it.
          type: string
      required:
        - codPerOperac
        - initialDeposit
        - complementaryDeposits
        - totalDebits
        - totalCredits
        - balance
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      description: JWT bearer token issued by the identity provider.
      scheme: bearer
      type: http

````