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

# Enviar uma ou duas propostas para o trilho de folha

> Envia de forma síncrona o conjunto completo de uma ou duas propostas por meio de inclusao-garantias (Manual 001 v1.9 §3.1). X-Idempotency é obrigatório e durável.

| caso | resultado | chamada de rede |
|---|---|---|
| mesma chave + mesmo corpo, resultado conhecido | 200 repetições da resposta armazenada | não |
| mesma chave + corpo diferente | 422 entidade não processável | não |
| nova chave + mesma solicitação | 409 conflito | não |
| nova tentativa com resultado desconhecido | repita o envio não resolvido com os mesmos IDs de proposta | pode chamar a rede com os mesmos IDs de proposta |



## OpenAPI

````yaml pt/openapi/v3-current/consignado.yaml post /v1/consignado/leilao/solicitacoes/{id_solicitacao}/propostas
openapi: 3.1.0
info:
  contact:
    email: contact@lerian.studio
    name: Lerian Studio
    url: https://lerian.studio
  description: >-
    Superfície OpenAPI 3.1 para Lerian Consignado — Dataprev. o API cobre
    credenciais tenant e configuração de rede, margem do trabalhador, leilões e
    licitações de empréstimos, registro e ciclo de vida do contrato, confirmação
    de desembolso, portabilidade, refinanciamento, renegociação, garantias FGTS,
    reconciliação, fundos, atribuições, uso, rendimento e assinaturas de
    eventos. o material secreto é gravado no armazenamento secreto tenant e
    nunca é devolvido por nenhuma operação.
  license:
    name: Lerian Studio General License
  title: Lerian Consignado API
  version: v1.0.0
servers:
  - url: https://consignado.sandbox.lerian.net
security:
  - BearerAuth: []
tags:
  - description: >-
      Custódia de credenciais do Dataprev e configuração pública do rail por
      tenant (upload, status, rotação, revogação, código do solicitante e URL
      base do portal do trabalhador)
    name: Credentials
  - description: >-
      Uso do gateway consignado no escopo do tenant: agregação de unidades
      faturáveis ​​com preço por competência
    name: Consignado Usage
  - description: >-
      Per-tenant plano de controle de assinatura do streaming-hub (listar,
      criar, obter, girar, revogar e testar a entrega)
    name: Subscriptions
  - description: >-
      Superfície folha de pagamento da rail Dataprev: leituras de saldo e
      autorização FGTS, execução de garantias FGTS, suspensão de contrato,
      reativação e alteração de prazo, documentos contratuais próprios da rede e
      leituras sob demanda de transações, escriturações, repasses e rescisões
      trabalhistas
    name: Consignado Rail
  - description: >-
      Superfície de comando da rede síncrona: as operações que um bancarizador
      sem o credor realizam sobre HTTP. cada um compartilha sua implementação de
      comando com o gatilho de evento de credor equivalente.
    name: Consignado Rail Commands
  - description: >-
      Confirmação de desembolso de propriedade do gateway: um banco cliente
      registrando o dinheiro que ALREADY pagou a um trabalhador. ele não cruza
      nenhuma fronteira governamental e não representa nenhuma operação
      Dataprev.
    name: Consignado Disbursement
  - description: >
      Taxa de transferência da rail Dataprev de saída de autoatendimento
      per-tenant: leia e defina o próprio requests-per-second deste tenant,
      incluindo uma pausa deliberada em zero
    name: Consignado Throughput
paths:
  /v1/consignado/leilao/solicitacoes/{id_solicitacao}/propostas:
    post:
      tags:
        - Consignado Rail Commands
      summary: Enviar uma ou duas propostas para o trilho de folha
      description: >-
        Envia de forma síncrona o conjunto completo de uma ou duas propostas por
        meio de inclusao-garantias (Manual 001 v1.9 §3.1). X-Idempotency é
        obrigatório e durável.


        | caso | resultado | chamada de rede |

        |---|---|---|

        | mesma chave + mesmo corpo, resultado conhecido | 200 repetições da
        resposta armazenada | não |

        | mesma chave + corpo diferente | 422 entidade não processável | não |

        | nova chave + mesma solicitação | 409 conflito | não |

        | nova tentativa com resultado desconhecido | repita o envio não
        resolvido com os mesmos IDs de proposta | pode chamar a rede com os
        mesmos IDs de proposta |
      operationId: submitConsignadoBid
      parameters:
        - description: >-
            Canonical positive int64 Dataprev solicitação identifier, bounded by
            9223372036854775807. Leading-zero aliases are normalized before
            idempotency fingerprinting.
          in: path
          name: id_solicitacao
          required: true
          schema:
            description: >-
              Canonical positive int64 Dataprev solicitação identifier, bounded
              by 9223372036854775807. Leading-zero aliases are normalized before
              idempotency fingerprinting.
            examples:
              - '18406'
            maxLength: 19
            minLength: 1
            pattern: >-
              ^([1-9][0-9]{0,17}|[1-8][0-9]{18}|9[01][0-9]{17}|92[01][0-9]{16}|922[0-2][0-9]{15}|9223[0-2][0-9]{14}|92233[0-6][0-9]{13}|922337[01][0-9]{12}|92233720[0-2][0-9]{10}|922337203[0-5][0-9]{9}|9223372036[0-7][0-9]{8}|92233720368[0-4][0-9]{7}|922337203685[0-3][0-9]{6}|9223372036854[0-6][0-9]{5}|92233720368547[0-6][0-9]{4}|922337203685477[0-4][0-9]{3}|9223372036854775[0-7][0-9]{2}|922337203685477580[0-6]|9223372036854775807)$
            type: string
        - description: >-
            Required durable replay key, scoped by authenticated tenant and
            bounded like the service's other indexed opaque request references.
          in: header
          name: X-Idempotency
          required: true
          schema:
            description: >-
              Required durable replay key, scoped by authenticated tenant and
              bounded like the service's other indexed opaque request
              references.
            examples:
              - idem-bid-2026-07-31-0001
            maxLength: 128
            minLength: 1
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BidRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BidResponse'
          description: OK
          headers:
            X-Idempotency-Replayed:
              schema:
                description: >-
                  True when PostgreSQL durable state supplied the response
                  without another rail submission.
                type: string
        '409':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: >-
            The idempotency key or solicitação identity conflicts with durable
            state.
        '422':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/BidRefusalError'
          description: >-
            The request or durable replay was refused by a named local or
            Dataprev rail rule.
        '501':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Client bid submission is disabled for this deployment.
        default:
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Detail'
          description: Error
      security:
        - BearerAuth: []
components:
  schemas:
    BidRequest:
      additionalProperties: false
      properties:
        matricula:
          description: >-
            Employment bond matrícula echoed from the discovered solicitação and
            checked against its durable snapshot.
          examples:
            - EMP-7K9M2P
          maxLength: 30
          minLength: 1
          type: string
        propostas:
          items:
            $ref: '#/components/schemas/BidProposalRequest'
          maxItems: 2
          minItems: 1
          type: array
      required:
        - matricula
        - propostas
      type: object
    BidResponse:
      additionalProperties: false
      properties:
        idSolicitacao:
          description: Dataprev solicitação identifier addressed by the bid.
          examples:
            - '18406'
          type: string
        propostas:
          items:
            $ref: '#/components/schemas/BidProposalResponse'
          type:
            - array
            - 'null'
        submittedAt:
          description: UTC instant when the full rail outcome was durably recorded.
          examples:
            - '2026-07-31T12:00:00Z'
          format: date-time
          type: string
      required:
        - idSolicitacao
        - submittedAt
        - propostas
      type: object
    Detail:
      additionalProperties: false
      properties:
        code:
          description: >-
            Stable, machine-readable domain error code scoped to the emitting
            service (format: <SERVICE>-NNNN).
          examples:
            - ERR-0001
          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
    BidRefusalError:
      additionalProperties: false
      properties:
        code:
          description: >-
            Stable, machine-readable domain error code scoped to the emitting
            service (format: <SERVICE>-NNNN).
          examples:
            - ERR-0001
          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
        refusal:
          $ref: '#/components/schemas/BidRefusalExtension'
          description: >-
            Exact durable refusal. Local refusals publish source, field, rule,
            and detail; Dataprev refusals additionally require a bounded code.
            Provider free text is never published.
        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:
        - refusal
      type: object
    BidProposalRequest:
      additionalProperties: false
      properties:
        contatos:
          description: >-
            Optional client contacts, at most one for each client-owned type 1
            through 4. The server always injects the required tenant portal URL
            as type 0.
          items:
            $ref: '#/components/schemas/BidContactRequest'
          maxItems: 4
          type:
            - array
            - 'null'
        dataHoraValidadeProposta:
          description: Proposal validity instant, RFC 3339 UTC.
          examples:
            - '2030-01-01T10:00:00Z'
          format: date-time
          type: string
        numeroParcelas:
          description: Number of instalments, capped by Manual 001 v1.9 §3.1.1.
          examples:
            - 12
          format: int64
          maximum: 96
          minimum: 1
          type: integer
        percVerbaRescisoriaGarantia:
          description: Optional severance-pay percentage pledged as collateral.
          examples:
            - '15.00'
          maxLength: 6
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        temGarantias:
          description: Whether this proposal pledges FGTS collateral.
          examples:
            - true
          type: boolean
        valorCETAnual:
          description: Annual total effective cost in percent.
          examples:
            - '11.00'
          maxLength: 10
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        valorCETMensal:
          description: Monthly total effective cost in percent.
          examples:
            - '0.90'
          maxLength: 10
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        valorEmprestimo:
          description: Principal plus financed costs as an exact decimal string.
          examples:
            - '2160.00'
          maxLength: 13
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        valorIOF:
          description: IOF amount as an exact decimal string.
          examples:
            - '10.00'
          maxLength: 10
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        valorLiberado:
          description: Amount released to the worker as an exact decimal string.
          examples:
            - '2000.00'
          maxLength: 13
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        valorMultaRescisoriaGarantiaFgts:
          description: Optional rescission-penalty amount pledged as collateral.
          examples:
            - '300.00'
          maxLength: 13
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        valorParcela:
          description: Instalment amount as an exact decimal string.
          examples:
            - '180.00'
          maxLength: 13
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        valorSaldoDisponivelGarantiaFgts:
          description: Optional consignable FGTS balance pledged as collateral.
          examples:
            - '600.00'
          maxLength: 13
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        valorTaxaAnual:
          description: Annual interest rate in percent.
          examples:
            - '10.00'
          maxLength: 10
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
        valorTaxaMensal:
          description: Monthly interest rate in percent.
          examples:
            - '0.80'
          maxLength: 10
          pattern: ^[0-9]+(\.[0-9]{1,2})?$
          type: string
      required:
        - dataHoraValidadeProposta
        - numeroParcelas
        - valorParcela
        - valorLiberado
        - valorEmprestimo
        - valorIOF
        - valorTaxaAnual
        - valorCETAnual
        - valorTaxaMensal
        - valorCETMensal
        - temGarantias
      type: object
    BidProposalResponse:
      additionalProperties: false
      properties:
        accepted:
          description: True only when the rail's codigo equals BD.
          examples:
            - true
          type: boolean
        codigo:
          description: >-
            Bounded per-proposal rail outcome code. The complete trimmed
            upstream value must match the safe shape; malformed values are
            suppressed whole, never rewritten into another code. Upstream free
            text is never returned or persisted.
          examples:
            - BD
          maxLength: 32
          pattern: ^[A-Za-z0-9_-]*$
          type: string
        dataHoraValidadeProposta:
          description: Proposal validity instant echoed by Dataprev.
          examples:
            - '2030-01-01T10:00:00Z'
          format: date-time
          type: string
        numeroProposta:
          description: Server-minted proposal identity echoed by Dataprev.
          examples:
            - 7K9M2P4R6T8V3W5X2Y4Z
          type: string
      required:
        - numeroProposta
        - accepted
        - codigo
        - dataHoraValidadeProposta
      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
    BidRefusalExtension:
      oneOf:
        - $ref: '#/components/schemas/BidLocalRefusalExtension'
        - $ref: '#/components/schemas/BidDataprevRefusalExtension'
    BidContactRequest:
      additionalProperties: false
      properties:
        contato:
          description: >-
            Client-supplied contact value. Type 1 uses
            <telefone>?text=<URL-encoded text>. The gateway separately injects
            the tenant portal URL.
          examples:
            - bidder@example.com
          maxLength: 255
          minLength: 1
          type: string
        tipo:
          description: >-
            Optional client contact type: 1 WhatsApp, 2 phone, 3 email, 4 other.
            Type 0 is server-owned and refused in the body.
          examples:
            - 3
          format: int64
          maximum: 4
          minimum: 1
          type: integer
      required:
        - tipo
        - contato
      type: object
    BidLocalRefusalExtension:
      additionalProperties: false
      properties:
        detail:
          description: Bounded client-safe explanation of the refusal.
          examples:
            - matricula must match the discovered solicitacao
          type: string
        field:
          description: Request field refused by the local rail rule.
          examples:
            - matricula
          type: string
        rule:
          description: Stable local rail-rule identifier.
          examples:
            - MATRICULA_MATCH
          type: string
        source:
          description: Stable local refusal provenance.
          enum:
            - local
          type: string
      required:
        - source
        - field
        - rule
        - detail
      type: object
    BidDataprevRefusalExtension:
      additionalProperties: false
      properties:
        code:
          description: Required bounded Dataprev code; provider free text is never exposed.
          examples:
            - OL
          maxLength: 32
          type: string
        detail:
          description: >-
            Bounded client-safe explanation; provider free text is never
            exposed.
          examples:
            - the rail refused the proposal set
          type: string
        field:
          description: Stable field classification for the Dataprev refusal.
          examples:
            - rail
          type: string
        rule:
          description: Stable gateway classification of the Dataprev refusal.
          examples:
            - DATAPREV_412
          type: string
        source:
          description: Stable Dataprev refusal provenance.
          enum:
            - dataprev
          type: string
      required:
        - source
        - code
        - field
        - rule
        - detail
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      description: JWT bearer token issued by the identity provider.
      scheme: bearer
      type: http

````