---
title: "Speech to text over WebSocket"
method: GET
path: "/speech-to-text/transcription"
tags: ["Speech To Text over WebSockets"]
---

# Speech to text over WebSocket

`GET /speech-to-text/transcription`

Open a WebSocket connection to stream audio and receive transcriptions in real-time. Authentication is provided via the standard `Authorization: Bearer <API_KEY>` header.

Supported engines: `Azure`, `Deepgram`, `Google`, `Telnyx`, `xAI`, `Speechmatics`, `Soniox`, `Parakeet`, `Humain`, `Reson8`, `Cohere`.

**Connection flow:**
1. Open WebSocket with query parameters specifying engine, input format, and language.
2. Send binary audio frames (mp3, wav, linear16, or linear32 format, per `input_format`).
3. Receive JSON transcript frames with `transcript`, `is_final`, and `confidence` fields.
4. Close connection when done.

## Query parameters

- `transcription_engine` 'Azure' | 'Deepgram' | 'Google' | 'Telnyx' | 'xAI' | 'Speechmatics' | 'Soniox' | 'Parakeet' | 'Humain' | 'Reson8' | 'Cohere', required
- `input_format` 'mp3' | 'wav' | 'linear16' | 'linear32', required
- `sample_rate` integer
- `language` string
- `interim_results` boolean
- `model` union
  - 'fast'
  - 'deepgram/nova-2' | 'deepgram/nova-3'
  - 'latest_long' | 'latest_short' | 'command_and_search' | 'phone_call' | 'video' | 'default' | 'medical_conversation' | 'medical_dictation'
  - 'openai/whisper-tiny' | 'openai/whisper-large-v3-turbo'
  - 'xai/grok-stt'
  - 'speechmatics/standard'
  - 'soniox/stt-rt-v4'
  - 'nvidia/parakeet-v3' | 'omi-health/omi-med-stt-v1'
  - 'humain/realtime'
  - 'reson8/turns'
  - 'cohere/ar-stt'
- `endpointing` integer
- `redact` string
- `keyterm` string
- `keywords` string

## Response `200`

WebSocket upgrade successful — this response is not returned directly. See 101 for frame documentation.

## Other responses

- `101` — WebSocket connection established. Communication proceeds via binary audio frames (client) and JSON transcript frames (server). **Client → Server:** Binary audio data (mp3, wav, linear16, or linear32, per `input_format`). **Server → Client:** See `TranscriptFrame` and `SttErrorFrame` schemas.
- `400` — Invalid parameters — engine not supported or missing required fields.
- `401` — Authentication failed — missing or invalid Authorization header.
- `422` — Unprocessable entity. The request was well-formed but could not be processed due to semantic errors. This includes validation errors, invalid parameter values and business logic violations.

## Changes

> 81 revisions in range; 1 not diffed.

- **2026-09-21** `1581f4d44566` — 1 info
  - added the enum value `omi-health/omi-med-stt-v1` to the property `oneOf[#/components/schemas/parakeet_models]/` of the `query` request parameter `model`
- **2026-09-16** `a6a61a29ecdd` — 1 breaking, 4 info
  - the response property `oneOf[#/components/schemas/TranscriptFrame]/confidence` became nullable for the status `101`
  - added the new optional `query` request parameter `sample_rate`
  - added the new enum value `Cohere` to the `query` request parameter `transcription_engine`
  - added the new enum value `linear16` to the `query` request parameter `input_format`
  - …1 more
- **2026-07-30** `924fbdb1e5a1` — 1 info
  - added the new enum value `Reson8` to the `query` request parameter `transcription_engine`
- **2026-07-22** `ce9e90fc16f3` — 1 info
  - added the new enum value `Humain` to the `query` request parameter `transcription_engine`
- **2026-07-13** `afc3349ad4f1` — 1 breaking, 1 info
  - removed the enum value `parakeet/tdt-0.6b-v3` from the property `oneOf[#/components/schemas/parakeet_models]/` of the `query` request parameter `model`
  - added the enum value `nvidia/parakeet-v3` to the property `oneOf[#/components/schemas/parakeet_models]/` of the `query` request parameter `model`

[Full history](https://skmtc.dev/team-telnyx/apis/telnyx-api-2/changes/speech-to-text/transcription/get.md)

---

[API](https://skmtc.dev/team-telnyx/apis/telnyx-api-2.md) · [All operations](https://skmtc.dev/team-telnyx/apis/telnyx-api-2/llms.txt) · [OpenAPI document](https://skmtc.dev/team-telnyx/apis/telnyx-api-2/revisions/f6e9ed754d05?raw)
