Skip to main content
POST
/
api
/
v1
/
transcriptions
Create a new transcription request
curl --request POST \
  --url https://{subdomain}.mindhunters.ai/api/v1/transcriptions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form voice_url=https://example.com/audio.mp3 \
  --form possible_language=en \
  --form 'possible_conversation=Customer support call' \
  --form reference_id=CALL-12345 \
  --form 'customer_voice_url=<string>' \
  --form email=agent@example.com \
  --form 'customer_phone=+1234567890' \
  --form customer_email=customer@example.com \
  --form webhook_url=https://example.com/webhook \
  --form webhook_header_token=token123 \
  --form qa_agent_uuid=153580ac-af27-4c77-aa59-02e9f9b8fe1a \
  --form coaching_agent_uuid=6d4adde3-8fb0-4893-87e1-83f950723f4e \
  --form voice_file=@example-file
{
  "success": true,
  "message": "Transcription request submitted successfully",
  "data": {
    "uuid": "550e8400-e29b-41d4-a716-446655440000",
    "reference_id": "CALL-12345",
    "status": "pending",
    "s3_file_path": "https://s3.amazonaws.com/bucket/transcriptions/uuid.mp3",
    "s3_file_url": "https://s3.amazonaws.com/bucket/transcriptions/uuid.mp3",
    "created_at": "2023-11-07T05:31:56Z",
    "qa_agent_uuid": "153580ac-af27-4c77-aa59-02e9f9b8fe1a",
    "coaching_agent_uuid": "6d4adde3-8fb0-4893-87e1-83f950723f4e"
  }
}

Authorizations

Authorization
string
header
required

Use a Bearer token to access these API endpoints. Example: "Bearer {your-token}"

Body

multipart/form-data
voice_file
file | null

Audio file to transcribe (max 128MB)

voice_url
string<uri> | null

URL to audio file

Example:

"https://example.com/audio.mp3"

possible_language
string | null

Expected language of the audio

Maximum length: 10
Example:

"en"

possible_conversation
string | null

Context about the conversation

Example:

"Customer support call"

reference_id
string | null

External reference ID

Maximum length: 255
Example:

"CALL-12345"

customer_voice_url
string<uri> | null

Customer's voice URL for reference

email
string<email> | null

Human agent email. If this email matches a real user in our system, we will link the transcription to that user account.

Maximum length: 255
Example:

"agent@example.com"

customer_phone
string | null

Customer's phone number. The system will first check if a contact with this phone number exists and automatically assign that contact to the transcription. If no contact found by phone, it will check customer_email.

Maximum length: 255
Example:

"+1234567890"

customer_email
string<email> | null

Customer's email address. The system will check if a contact with this email exists (if not found by phone first) and automatically assign that contact to the transcription.

Maximum length: 255
Example:

"customer@example.com"

webhook_url
string<uri> | null

Webhook URL to receive completion notification. When transcription is completed, we will POST the results to this URL.

Example:

"https://example.com/webhook"

webhook_header_token
string | null

Token to be sent as 'Bearer {token}' in Authorization header when calling your webhook

Example:

"token123"

qa_agent_uuid
string<uuid> | null

UUID of the QA agent template to use. If omitted, the system will fall back to default selection.

Example:

"153580ac-af27-4c77-aa59-02e9f9b8fe1a"

coaching_agent_uuid
string<uuid> | null

UUID of the coaching agent template to use. If omitted, the system will fall back to default selection.

Example:

"6d4adde3-8fb0-4893-87e1-83f950723f4e"

Response

Created

success
boolean
Example:

true

message
string
Example:

"Transcription request submitted successfully"

data
object