> ## Documentation Index
> Fetch the complete documentation index at: https://docs.blindsight.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Create App Component



## OpenAPI

````yaml /api-reference/openapi.json post /api/runtime-security/apps/{app_uuid}/components
openapi: 3.1.0
info:
  title: Blindsight API
  version: 0.1.0
  description: >-
    The full Blindsight REST surface, generated from the running application.
    Replace the server host with your own deployment.


    For the Runtime Security integration surface (scan, proxy, tool calls) see
    the Runtime Security spec, which is hand written and carries worked
    examples.
servers:
  - url: https://api.your-blindsight.com
    description: Your Blindsight deployment
security: []
paths:
  /api/runtime-security/apps/{app_uuid}/components:
    post:
      tags:
        - runtime-security-apps
      summary: Create App Component
      operationId: >-
        create_app_component_api_runtime_security_apps__app_uuid__components_post
      parameters:
        - name: app_uuid
          in: path
          required: true
          schema:
            type: string
            title: App Uuid
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppComponentCreate'
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppComponentRead'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    AppComponentCreate:
      properties:
        key:
          type: string
          maxLength: 64
          minLength: 1
          pattern: ^[a-z][a-z0-9_]*$
          title: Key
        name:
          type: string
          maxLength: 128
          minLength: 1
          title: Name
        kind:
          type: string
          enum:
            - llm
            - tool
            - retrieval
            - router
            - guardrail
            - output
            - custom
          title: Kind
        description:
          anyOf:
            - type: string
              maxLength: 2048
            - type: 'null'
          title: Description
        icon:
          anyOf:
            - type: string
              maxLength: 32
            - type: 'null'
          title: Icon
        color:
          anyOf:
            - type: string
              maxLength: 16
            - type: 'null'
          title: Color
        position_x:
          type: number
          title: Position X
          default: 0
        position_y:
          type: number
          title: Position Y
          default: 0
        connects_to:
          items:
            type: string
          type: array
          title: Connects To
        metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Metadata
      type: object
      required:
        - key
        - name
        - kind
      title: AppComponentCreate
    AppComponentRead:
      properties:
        id:
          type: string
          title: Id
        key:
          type: string
          title: Key
        name:
          type: string
          title: Name
        kind:
          type: string
          enum:
            - llm
            - tool
            - retrieval
            - router
            - guardrail
            - output
            - custom
          title: Kind
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
        icon:
          anyOf:
            - type: string
            - type: 'null'
          title: Icon
        color:
          anyOf:
            - type: string
            - type: 'null'
          title: Color
        position_x:
          type: number
          title: Position X
        position_y:
          type: number
          title: Position Y
        connects_to:
          items:
            type: string
          type: array
          title: Connects To
        metadata:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Metadata
        event_count_recent:
          type: integer
          title: Event Count Recent
          default: 0
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
      type: object
      required:
        - id
        - key
        - name
        - kind
        - position_x
        - position_y
        - created_at
        - updated_at
      title: AppComponentRead
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError

````