Skip to main content
POST
Transcribe audio file with automatic language detection

Authorizations

X-API-Key
string
header
required

API key used for authentication and usage tracking.

Body

multipart/form-data
upload_file
file
required

Audio file to transcribe. Supported formats: AAC, AIFF, FLAC, MP3, MP4, MOV, OGG, Opus, WAV, WebM. Maximum file size: 100MB. Empty files are rejected.

medical_domain
boolean
default:false

When enabled, English audio is transcribed for medical dictation: misheard clinical terms (drug names, conditions, procedures) are corrected with a medical language model, and an opening or ending one transcriber dropped (patient name, chart number, date of birth) is recovered. Adds some latency. Other languages are transcribed as standard. When disabled or omitted, the standard transcription is returned.

speaker_diarization
boolean
default:true

Speaker diarization identifies different speakers in the audio. When enabled, each utterance includes a speaker identifier (e.g., 1, 2).

emotion_signal
boolean
default:false

Emotion detection for each utterance. When enabled, each utterance includes an emotion signal detected from the speaker's voice.

accent_signal
boolean
default:false

Accent detection for each utterance. When enabled, each utterance includes an accent signal detected from the speaker's voice.

deepfake_signal
boolean
default:false

Synthetic voice (deepfake) detection for each utterance. When enabled, each utterance includes a deepfake_score indicating the likelihood that the speech is AI-generated. The score ranges from 0.0 (likely natural) to 1.0 (likely synthetic).

pii_phi_tagging
boolean
default:false

PII/PHI tagging in utterance text. When enabled, personally identifiable information and personal health information are wrapped with appropriate tags in the transcription text.

language
string

Optional language hint as a case-insensitive ISO 639-1 code (e.g. "en", "fr"). BCP 47 region/script subtags (e.g. "en-US") are accepted; only the primary language subtag is used. When omitted, the language is detected automatically for each utterance.

Pattern: ^[A-Za-z]{2,3}([-_][A-Za-z0-9]+)*$
config
string

Optional JSON-encoded STT configuration. A field that has a matching top-level form parameter overrides it; an omitted field falls back to the form parameter. Supply custom_terms here, e.g. config={"custom_terms":["Modulate",{"term":"Velma","pronunciations":["VEL-muh"]}]}.

Response

Transcription completed successfully

text
string
required

The complete transcribed text from the audio file, containing all utterances concatenated together. This provides a full transcript of the audio content. Always present; may be an empty string when no speech was recognized.

Example:

"Hello everyone. Welcome to the meeting."

duration_ms
integer
required

The total duration of the processed audio in milliseconds. This value represents the actual audio duration and is used for usage tracking and billing purposes.

Required range: x >= 0
Example:

45000

utterances
object[]
required

Array of individual utterances detected in the audio, ordered by start time. Each utterance represents a continuous segment of speech, potentially from a specific speaker if diarization is enabled. Always present; may be an empty array when no speech was recognized.