Skip to main content

Introduction

In this tutorial, we will cover how to get a speech-to-text transcription of your calls using Voice API and TeXML. Before starting, please ensure your Voice API or TeXML application is correctly configured.

Video Tutorial

Learn how to implement real-time Speech-to-Text recognition in your voice applications:
This video shows how to capture and process spoken input from callers using Telnyx’s Speech-to-Text API.

Supported engines

Telnyx offers several speech-to-text engines that can be used to process the audio from the call into a transcription:
  • Google (default) - Google speech-to-text engine that offers additional features like interim results.
  • Telnyx - In-house Telnyx speech-to-text engine with significantly better transcription accuracy and lower latency.
  • Deepgram - Deepgram speech-to-text engine with 3 models (nova-2, nova-3 and flux) that can be set using transcription_model setting.
  • Azure - Azure speech-to-text engine with a strong support for multiple languages and accents.
  • xAI - xAI Grok STT engine with the xai/grok-stt model.
  • AssemblyAI - AssemblyAI Universal-3.6 Pro engine with the assemblyai/universal-3-6-pro model ID. The legacy aliases assemblyai/universal-3-5-pro and assemblyai/universal-streaming also run Universal-3.6 Pro.
  • Speechmatics - Speechmatics real-time engine with the speechmatics/standard model (high accuracy with multilingual and bilingual language packs) or speechmatics/linden-1 (preview, vendor-hosted, 67 language codes, no auto-detect; defaults to en).
  • Soniox - Soniox real-time engine with the soniox/stt-rt-v4 model. Automatic language detection with interim results and endpointing support.
  • Parakeet - Self-hosted NVIDIA Parakeet engine with the nvidia/parakeet-v3 (automatic multilingual detection) and omi-health/omi-med-stt-v1 (English-only medical) models. Final transcripts only.
  • Cohere - Self-hosted Cohere engine with the cohere/ar-stt model. Arabic and English transcription only; requires an explicit ar or en language — no auto-detect.
  • Reson8 - Reson8 turn-based engine with the reson8/turns model. Automatic language detection across 10 European languages; transcripts are delivered per turn of speech.
  • Humain - Humain real-time engine with the humain/realtime model. Arabic and English transcription with Arabic/English code-switching (codeswitch or auto).

Voice API

The transcription can be enabled for the Voice API calls using a dedicated endpoint in the following way:
Don’t forget to update YOUR_API_KEY here.
The results are sent as a webhook delivered to the webhook defined for the Voice API application:

TeXML

You can enable transcription on your TeXML calls by including a <Transcription> verb in the TeXML instructions:
The transcription results are sent in the callback in the following format: