Skip to main content
POST
/
api
/
v1
/
assistants
/
{assistant_id}
/
voice-samples
/
upload
{
  "detail": [
    {
      "loc": [
        "<string>"
      ],
      "msg": "<string>",
      "type": "<string>"
    }
  ]
}

Documentation Index

Fetch the complete documentation index at: https://docs.burki.dev/llms.txt

Use this file to discover all available pages before exploring further.

This endpoint allows you to upload audio samples for voice cloning. The uploaded sample will be processed and prepared for creating cloned voices using supported TTS providers.

Path Parameters

  • assistant_id (integer, required): The unique identifier of the assistant to associate the voice sample with.

Form Data

The request must be sent as multipart/form-data.
  • file (file, required): The audio file to upload. Supported formats: MP3, WAV, FLAC, M4A, OGG.
  • name (string, optional): Custom name for the voice sample. Defaults to filename if not provided.
  • description (string, optional): Description of the voice sample.
  • tags (string, optional): Comma-separated tags for organizing voice samples.

File Requirements

  • Formats: MP3, WAV, FLAC, M4A, OGG
  • Size: Maximum 50MB
  • Duration: 10 seconds to 10 minutes
  • Quality: 22kHz+ sample rate, 128kbps+ bit rate recommended
  • Content: Clear speech, single speaker, minimal background noise

Response

A successful upload returns the voice sample object with processing status.
Response
{
  "success": true,
  "voice_sample": {
    "id": 123,
    "name": "Professional Voice Sample",
    "filename": "professional_voice.wav",
    "status": "uploaded",
    "created_at": "2024-01-15T10:30:00Z"
  }
}

Example Request

cURL
curl -X POST "https://api.burki.dev/api/v1/assistants/123/voice-samples/upload" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@voice_sample.wav" \
  -F "name=Professional Voice" \
  -F "description=Clear professional speaking voice" \
  -F "tags=professional,clear,business"

Error Responses

400 Bad Request - Invalid file or parameters:
{
  "detail": "File too large (max 50MB)"
}
413 Payload Too Large - File exceeds size limit:
{
  "detail": "Audio file exceeds maximum size limit"
}
422 Unprocessable Entity - Invalid audio format:
{
  "detail": "Unsupported audio format: audio/mpeg3"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

assistant_id
integer
required

Body

multipart/form-data
file
file
required
name
string | null
description
string | null
tags
string | null

Response

Successful Response