> ## 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 a participant

> Registers a participant in the tenant's catalog. RBAC: participants:write. tenantId is derived from the validated identity, never the payload. connectivityOk and lastConnectivityAt are read-only (managed by the test-connectivity flow).



## OpenAPI

````yaml en/openapi/v3-current/slc.yaml post /v1/participants
openapi: 3.0.3
info:
  title: Lerian SLC API
  description: >-
    API for Lerian SLC — the participant-side rail that connects the institution
    to Núclea's SLC deferred-net card settlement. It covers settlement-operation
    intake and lifecycle, clearing positions, the participant and arrangement
    registry, transmission recovery and connectivity to Núclea, BYOK Model-A
    signing-key import, and tenant-scoped webhooks.
  version: v1.0.0
servers:
  - url: https://slc.sandbox.lerian.net
security: []
tags:
  - name: Admin
    description: Tenant configuration and dead-letter administration.
  - name: Clearing
    description: Deferred-net clearing positions for the settlement institution.
  - name: Connectivity
    description: >-
      Transmission recovery drains, retransmission, and connectivity probes to
      Núclea.
  - name: Operations
    description: Settlement operation intake, lifecycle, and state history.
  - name: Participants
    description: Participant registry for the tenant.
  - name: Arrangements
    description: Card and scheme arrangements per participant.
  - name: SigningKey
    description: BYOK Model-A signing-key import for message signing.
  - name: Webhooks
    description: Tenant-scoped webhook subscriptions, deliveries, and replay.
paths:
  /v1/participants:
    post:
      tags:
        - Participants
      summary: Create a participant
      description: >-
        Registers a participant in the tenant's catalog. RBAC:
        participants:write. tenantId is derived from the validated identity,
        never the payload. connectivityOk and lastConnectivityAt are read-only
        (managed by the test-connectivity flow).
      operationId: createParticipant
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/http.CreateParticipantRequest'
        description: Participant to create
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http.ParticipantResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http.ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http.ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http.ErrorResponse'
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http.ErrorResponse'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/http.ErrorResponse'
      security:
        - BearerAuth: []
components:
  schemas:
    http.CreateParticipantRequest:
      properties:
        active:
          type: boolean
        bcbCode:
          maxLength: 10
          type: string
        document:
          maxLength: 14
          type: string
        ispb:
          type: string
        metadata:
          additionalProperties: {}
          type: object
        name:
          maxLength: 255
          type: string
        nucleaCode:
          maxLength: 20
          type: string
        type:
          type: string
      required:
        - name
        - type
      type: object
    http.ParticipantResponse:
      properties:
        active:
          type: boolean
        bcbCode:
          type: string
        connectivityOk:
          type: boolean
        createdAt:
          type: string
        document:
          type: string
        id:
          type: string
        ispb:
          type: string
        lastConnectivityAt:
          type: string
        metadata:
          additionalProperties: {}
          type: object
        name:
          type: string
        nucleaCode:
          type: string
        type:
          type: string
        updatedAt:
          type: string
      type: object
    http.ErrorResponse:
      properties:
        code:
          type: string
        details:
          additionalProperties: {}
          type: object
        message:
          type: string
        title:
          type: string
      type: object
  securitySchemes:
    BearerAuth:
      description: 'Bearer token authentication (format: "Bearer {token}")'
      in: header
      name: Authorization
      type: apiKey

````