Skip to main content

Transcription Streaming API

Use stream=true with response_format=json to receive the final transcript over SSE.

POST /v1/audio/transcriptions

Set KITSCH_OPENAI_BASE_URL to your Audio API URL ending in /v1.

curl "$KITSCH_OPENAI_BASE_URL/audio/transcriptions" \
-H "Authorization: Bearer $KITSCH_API_KEY" \
-F "file=@speech.wav" -F "model=kitsch-stt-v1" \
-F "response_format=json" -F "stream=true"

Response​

Content-Type: text/event-stream.

event: transcript.text.done
data: {"type":"transcript.text.done","text":"Hello.","usage":{"type":"duration","seconds":1}}

transcript.text.done contains the final text. usage.seconds is the audio duration.