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

# Liberar as reservas de uma transação

> Use este endpoint para liberar todas as reservas que uma transação retém em uma única chamada, referenciando-as pelo `transactionId` do ledger — fase dois do fluxo de reserva em duas fases. A resposta informa quantas reservas foram transicionadas em `flipped`. Um valor de `flipped` igual a `0` é um sucesso válido e idempotente — a transação não retinha nenhuma reserva aberta.



## OpenAPI

````yaml pt/openapi/v3-current/tracer.yaml post /v1/reservations/transaction/{transaction_id}/release
openapi: 3.1.0
info:
  title: API Tracer
  description: >-
    Referência completa da API para os serviços do Tracer, incluindo validação
    de transações, gerenciamento de regras, limites de gastos e eventos de
    auditoria para conformidade SOX/GLBA.
  version: 1.0.1
servers:
  - url: https://tracer.sandbox.lerian.net
security:
  - ApiKeyAuth: []
  - BearerAuth: []
tags:
  - name: Health API
    description: >-
      Endpoints de verificação de integridade para sondas de vivacidade e
      prontidão. Estes endpoints não requerem autenticação.
  - name: Validations API
    description: >-
      Endpoints de validação de transações. A meta de desempenho é inferior a
      80ms (p99). As validações são idempotentes por `requestId` — uma
      requisição duplicada retorna o resultado em cache com HTTP 200, enquanto
      uma requisição nova retorna HTTP 201. Nenhum header de idempotência é
      necessário.
  - name: Rules API
    description: >-
      Endpoints de gerenciamento de regras de validação. As regras utilizam
      expressões CEL (Common Expression Language).
  - name: Limits API
    description: >-
      Endpoints de gerenciamento de limites de gastos. Os limites controlam os
      valores das transações por escopo e período.
  - name: Reservations API
    description: >-
      Endpoints de reserva de capacidade de transação em duas fases. Uma reserva
      retém capacidade contra os limites de gastos; uma confirmação a consolida
      e uma liberação a devolve. Confirmar e liberar são idempotentes.
  - name: Audit Events API
    description: >-
      Endpoints de trilha de auditoria para conformidade SOX/GLBA. Todas as
      decisões de validação e alterações de configuração são registradas.
paths:
  /v1/reservations/transaction/{transaction_id}/release:
    post:
      tags:
        - Reservations API
      summary: Liberar as reservas de uma transação
      description: >-
        Use este endpoint para liberar todas as reservas que uma transação retém
        em uma única chamada, referenciando-as pelo `transactionId` do ledger —
        fase dois do fluxo de reserva em duas fases. A resposta informa quantas
        reservas foram transicionadas em `flipped`. Um valor de `flipped` igual
        a `0` é um sucesso válido e idempotente — a transação não retinha
        nenhuma reserva aberta.
      operationId: releaseReservationByTransaction
      parameters:
        - $ref: '#/components/parameters/TransactionId'
        - $ref: '#/components/parameters/ContentType'
        - $ref: '#/components/parameters/XApiKey'
        - $ref: '#/components/parameters/XRequestId'
      responses:
        '200':
          description: Indica que as reservas da transação foram liberadas.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionActionResponse'
              example:
                transactionId: 019c96a0-1071-7a0d-9916-a831221de252
                status: RELEASED
                flipped: 2
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorFormat'
              examples:
                Error0007:
                  $ref: '#/components/examples/Error0007'
        '401':
          description: Não Autorizado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorFormat'
              examples:
                ErrorUnauthenticated:
                  $ref: '#/components/examples/ErrorUnauthenticated'
        '500':
          description: Erro Interno do Servidor
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorFormat'
              examples:
                Error0004:
                  $ref: '#/components/examples/Error0004'
components:
  parameters:
    TransactionId:
      name: transaction_id
      in: path
      description: >-
        O ID de correlação da transação do ledger cujas reservas você deseja
        confirmar ou liberar.
      required: true
      example: 019c96a0-1071-7a0d-9916-a831221de252
      schema:
        type: string
        format: uuid
    ContentType:
      name: Content-Type
      in: header
      description: O tipo de mídia do recurso. Deve ser `application/json`.
      required: true
      example: application/json
      schema:
        type: string
    XApiKey:
      name: X-API-Key
      in: header
      description: >-
        A chave de API para autenticação. **Este header é obrigatório para todos
        os endpoints, exceto verificações de integridade**.
      required: true
      schema:
        type: string
    XRequestId:
      name: X-Request-Id
      in: header
      description: Um identificador único usado para rastrear cada requisição.
      required: false
      example: 019c96a0-10ce-75fc-a273-dc799079a99c
      schema:
        type: string
        format: uuid
  schemas:
    TransactionActionResponse:
      type: object
      description: Corpo devolvido pelos endpoints de confirmar e liberar por transação.
      required:
        - transactionId
        - status
        - flipped
      properties:
        transactionId:
          type: string
          format: uuid
          description: A transação do ledger cujas reservas foram transicionadas.
        status:
          type: string
          enum:
            - CONFIRMED
            - RELEASED
          description: O estado terminal ao qual as reservas foram resolvidas.
        flipped:
          type: integer
          description: >-
            Quantas reservas foram transicionadas. Um valor de 0 é uma operação
            nula válida e idempotente — a transação não retinha nenhuma reserva
            aberta.
    ErrorFormat:
      type: object
      description: A mensagem de erro da resposta.
      required:
        - code
        - title
        - message
      properties:
        code:
          type: string
          description: Um identificador único e estável para o erro.
        title:
          type: string
          description: Um breve resumo do problema.
        message:
          type: string
          description: Orientação detalhada para resolver o erro.
        fields:
          type: object
          additionalProperties: true
          description: Informações adicionais sobre os campos que causaram o erro.
  examples:
    Error0007:
      summary: Invalid Path Parameter
      value:
        code: TRC-0007
        title: Invalid Path Parameter
        message: >-
          The provided ID is not a valid UUID format. Please verify the ID and
          try again.
    ErrorUnauthenticated:
      summary: Unauthorized
      value:
        code: Unauthenticated
        title: Unauthorized
        message: >-
          API Key missing or invalid. Provide a valid API Key in the X-API-Key
          header.
    Error0004:
      summary: Internal Server Error
      value:
        code: TRC-0004
        title: Internal Server Error
        message: >-
          An unexpected error occurred. Please try again later or contact
          support if the issue persists.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: >-
        Autenticação por API Key. Usada por implantações single-tenant
        (`MULTI_TENANT_ENABLED=false`). Enviada em todas as requisições `/v1/*`.
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Autenticação JWT bearer. Usada por implantações multi-tenant
        (`MULTI_TENANT_ENABLED=true`). O JWT é emitido pelo Access Manager e
        deve conter o claim `tenantId` — o Tracer resolve o tenant a partir do
        token, não de qualquer cabeçalho ou campo do corpo.

````