Skip to content

Transcriptions (Speech-to-Text)

Uses the standard Transcriptions protocol format.

POST https://wrouter.ai/v1/audio/transcriptions

Request must be multipart/form-data.

Form fields

FieldTypeRequiredNotes
filefilemp3 mp4 m4a wav webm flac …, ≤ 25 MB
modelstringe.g. whisper-1, gpt-4o-transcribe, paraformer-v2
languagestringISO-639-1 (e.g. en, zh); auto-detect if omitted
promptstringStyle/glossary hint
response_formatstringjson (default), text, srt, verbose_json, vtt
temperaturenumber0–1, default 0
timestamp_granularitiesarray["word"] or ["segment"]; requires response_format=verbose_json

Examples

bash
curl https://wrouter.ai/v1/audio/transcriptions \
  -H "Authorization: Bearer $WROUTER_API_KEY" \
  -F file=@./meeting.mp3 \
  -F model=whisper-1 \
  -F language=en \
  -F response_format=srt
python
from openai import OpenAI
client = OpenAI(api_key="sk-...", base_url="https://wrouter.ai/v1")
with open("audio.mp3","rb") as f:
    text = client.audio.transcriptions.create(
        model="whisper-1",
        file=f,
        language="en",
    ).text

Translations

POST /v1/audio/translations translates any-language audio into English. Same fields, but language is ignored.