Transcribe spoken audio into text using STT models.
Speech-to-text (STT) transcribes audio into text. You send the audio inline as base64 inside the JSON body — there is no multipart upload — and the model returns a transcript.
Audio goes under input_audio, either inline as base64 plus its container
format, or as a reference to a file you already uploaded to the
Files API. Send one or the other, not both.
| Field | Type | Required | Description |
|---|---|---|---|
model | string | Yes | An STT model slug — filter the catalog with ?modality=transcription |
input_audio.data | string | Yes, unless file_id is set | Base64-encoded audio bytes |
input_audio.format | string | With data | One of wav, mp3, flac, m4a, ogg, webm, aac |
input_audio.file_id | string | Yes, unless data is set | Id of an uploaded audio file. The format is taken from the stored file, so you don't send one |
language | string | No | BCP-47 language hint, e.g. "ar", "fr", "en" — improves accuracy |
temperature | number | No | Sampling temperature, 0–1 (0 = deterministic) |
Transcribing the same clip more than once? Upload it and reference it by id — the bytes travel over the wire once instead of on every call:
Arabic (Modern Standard Arabic and Algerian Darija), French, and English are priority targets. Darija accuracy depends on the underlying model — check the model detail page for supported languages.
STT is billed in DA per second of audio processed (audio seconds are rounded up). Rates vary by model — see the pricing reference and the model catalog.