For the
deepgram/* models and reson8/prerecorded. Returns 400 (model_config is only allowed with deepgram models and reson8/prerecorded) if used with other models.model_config is forwarded directly — Telnyx does not validate individual options.
Commonly Used Options
Example
model_config can be sent as a JSON string in the multipart form field. The server parses it before forwarding.
Unvalidated Pass-Through
Any Deepgram query parameter can be passed. If Deepgram adds new options, they work immediately without a Telnyx API update. Conversely, invalid keys are forwarded and may cause Deepgram to return an error. Refer to Deepgram’s API reference for the full list of supported parameters.Diarization
Setdiarize: true to label who speaks each word. Works with all deepgram/* models, including the -medical variants, and with reson8/prerecorded. Other models reject model_config, so they return no speaker information.
Diarization quality depends on the audio. It works best when each speaker has enough speech.
Use diarize, not diarize_model. Telnyx’s Deepgram deployment does not support diarize_model (for example latest or v2) and returns 400 Deepgram API error: Bad Request: Unknown diarization model.
Enabling diarize does not change billing.
Multichannel
Setmultichannel: true to transcribe each channel of a multichannel file (for example, a stereo call recording with one party per channel) independently. Deepgram requests accept only mp3 and wav files.
- Each segment gets a
channelindex, starting at 0. A single-channel file returns nochannelfield. - Segments from all channels are merged into one
segmentslist, ordered bystart. - Silent channels produce no segments, but are still billed: billing counts every channel in the file.
- Without
multichannel, a stereo file is mixed down and transcribed as one channel.
multichannel: true bills 146 s. Without multichannel, the same file bills once.
Combine with diarization
diarize and multichannel combine. Speaker IDs are per channel: each channel numbers its speakers from 0. Identify a speaker by the pair (channel, speaker), never by speaker alone.
speakers: [0], but they are different people: speaker 0 on channel 0 and speaker 0 on channel 1. See Response Format for every field.
Reson8
reson8/prerecorded accepts only these two options. Any other key returns a 400.
diarize, verbose_json returns the whole transcript as one segment with its word timestamps.