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

# Create an inbound source config

> Provisions an inbound source config for the authenticated
tenant. Every config is guarded against the configured inbound
discovery reserve before persistence; a violation surfaces 422
POLLING_BUDGET_EXCEEDED.



## OpenAPI

````yaml en/openapi/v3-current/sta.yaml post /v1/inbound-source-configs
openapi: 3.0.3
info:
  title: Lerian STA API
  description: >-
    API for Lerian STA — the participant-side rail that connects the institution
    to Banco Central do Brasil's STA (Sistema de Transferencia de Arquivos)
    file-exchange system. It covers outbound and inbound file transfers, BACEN
    credential management, inbound source polling configuration, and the tenant
    trust-store for message-signing certificates.
  version: v1.0.0
servers:
  - url: https://sta.sandbox.lerian.net
security:
  - BearerAuth: []
tags:
  - name: transfers
    description: >-
      Outbound and inbound STA file transfers — creation, listing, read,
      cancellation, retry, and urgent-processing marking.
  - name: trust-store
    description: >-
      Tenant trust-store X.509 certificate lifecycle: listing, upload, deletion,
      and status summary.
  - name: credentials
    description: >-
      BACEN STA credential management: creation, read, update, rotation,
      revocation, and connectivity testing.
  - name: inbound-source-configs
    description: >-
      Inbound source polling configuration: creation, read, update, deletion,
      manual poll triggering, and discovery reserve usage.
  - name: health
    description: Service health and readiness reporting.
paths:
  /v1/inbound-source-configs:
    post:
      tags:
        - inbound-source-configs
      summary: Create an inbound source config
      description: |-
        Provisions an inbound source config for the authenticated
        tenant. Every config is guarded against the configured inbound
        discovery reserve before persistence; a violation surfaces 422
        POLLING_BUDGET_EXCEEDED.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/http.CreateInboundSourceConfigRequest'
        description: inbound source config payload
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http.InboundSourceConfigView'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
components:
  schemas:
    http.CreateInboundSourceConfigRequest:
      properties:
        bacenSystemCode:
          type: string
        bacenSystemFilterCode:
          type: string
        credentialId:
          description: >-
            CredentialID is the UUID of the BACEN credential used to fetch
            inbound

            documents of this source. MANDATORY: every inbound source fetches
            with a

            credential. The uuid tag rejects a malformed value at the boundary
            (400);

            the domain constructor rejects uuid.Nil (422 via the
            reserve/invariant

            path).
          type: string
        displayName:
          type: string
        intervalSeconds:
          maximum: 1800
          minimum: 15
          type: integer
        maxFileSizeBytes:
          minimum: 1
          type: integer
        retentionDays:
          maximum: 3650
          minimum: 1
          type: integer
        sourceProduct:
          type: string
        urgencyEnabled:
          description: >-
            UrgencyEnabled opts this inbound source into urgent inbound
            processing.

            Defaults false. Operator-settable.
          type: boolean
      required:
        - bacenSystemCode
        - credentialId
        - intervalSeconds
        - sourceProduct
      type: object
    http.InboundSourceConfigView:
      properties:
        bacenSystemCode:
          type: string
        bacenSystemFilterCode:
          type: string
        createdAt:
          type: string
        credentialId:
          description: >-
            CredentialID is the UUID string of the BACEN credential bound to
            this

            inbound source (mandatory and always present).
          type: string
        deletedAt:
          type: string
        displayName:
          type: string
        id:
          type: string
        intervalSeconds:
          type: integer
        isEnabled:
          type: boolean
        maxFileSizeBytes:
          type: integer
        retentionDays:
          type: integer
        sourceProduct:
          type: string
        updatedAt:
          type: string
        urgencyEnabled:
          type: boolean
      type: object
  securitySchemes:
    BearerAuth:
      description: 'Bearer token authentication (format: "Bearer {token}")'
      in: header
      name: Authorization
      type: apiKey

````