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

# Upload CSV (replace or append)

> Upload CSV to add recipients to a list.
- replace=True: replace all existing entries with CSV contents
- replace=False: append CSV entries to existing list
- use_template: if true, CSV must use template columns (phone_number, name, metadata_1, metadata_2, metadata_3)



## OpenAPI

````yaml api-reference/openapi.json post /recipient-lists/{recipient_list_id}/recipients/upload-csv
openapi: 3.1.0
info:
  title: Kathan API
  description: Building a fundamentally new kind of world for Conversational AI.
  version: 2.0.1
servers:
  - url: https://api.staging.kathan.tech
    description: Staging
security: []
tags:
  - name: Assistants
    description: Create and manage AI voice agents. Configure voice, LLM, knowledge bases.
  - name: Phone Numbers
    description: Configure and attach phone numbers to assistants. Twilio & Vobiz.
  - name: Calls
    description: Call logs, recordings, and outbound call management.
  - name: Knowledge Bases
    description: Upload documents, create knowledge bases, attach to assistants.
  - name: Campaigns
    description: Create and run outbound campaigns. Attach recipient lists, start/pause.
  - name: Recipient Lists
    description: Contact lists for campaigns. Create from CSV, manage recipients.
  - name: Chat
    description: Text chat with assistants. Create sessions, send messages.
  - name: API Keys
    description: Create and manage API keys for authentication.
  - name: Organizations
    description: Organization and team management. Invites, members.
  - name: Credits
    description: Usage credits and billing.
  - name: Users
    description: User profile and account management.
paths:
  /recipient-lists/{recipient_list_id}/recipients/upload-csv:
    post:
      tags:
        - Recipient Lists
        - Recipient Lists
      summary: Upload CSV (replace or append)
      description: >-
        Upload CSV to add recipients to a list.

        - replace=True: replace all existing entries with CSV contents

        - replace=False: append CSV entries to existing list

        - use_template: if true, CSV must use template columns (phone_number,
        name, metadata_1, metadata_2, metadata_3)
      operationId: >-
        upload_csv_to_list_recipient_lists__recipient_list_id__recipients_upload_csv_post
      parameters:
        - name: recipient_list_id
          in: path
          required: true
          schema:
            type: string
            title: Recipient List Id
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              $ref: >-
                #/components/schemas/Body_upload_csv_to_list_recipient_lists__recipient_list_id__recipients_upload_csv_post
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                title: >-
                  Response Upload Csv To List Recipient Lists  Recipient List
                  Id  Recipients Upload Csv Post
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - BearerAuth: []
          XUserId: []
components:
  schemas:
    Body_upload_csv_to_list_recipient_lists__recipient_list_id__recipients_upload_csv_post:
      properties:
        file:
          type: string
          format: binary
          title: File
        replace:
          type: boolean
          title: Replace
          default: true
        use_template:
          type: boolean
          title: Use Template
          description: If true, validate CSV against template columns
          default: false
      type: object
      required:
        - file
      title: >-
        Body_upload_csv_to_list_recipient_lists__recipient_list_id__recipients_upload_csv_post
    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
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: API key authentication.
    XUserId:
      type: apiKey
      in: header
      name: X-User-ID
      description: Required user id for API key requests.

````