Update Nova-3 Keyterms Mid-Stream from the SDKs, Play Audio from the CLI, and Deepgram Skills v1.7.0
Deepgram Python SDK v7.13.0, JavaScript SDK v5.15.0, and Java SDK
v0.11.1 let you reconfigure an active Nova-3 stream without reconnecting,
including keyterms and numerals, and add custom Think-provider messages for
Voice Agent sessions. Go SDK v3.9.0, .NET SDK v7.1.3, Rust SDK v0.12.0 and v0.13.0,
Deepgram CLI v0.3.3, and Deepgram skills v1.7.0 are also available.
Each Configure message replaces the stream’s keyterms and turns formatting
features on or off through a features object, for example
"features": { "numerals": true }. Updating keyterms mid-stream is available
on the global endpoint (api.deepgram.com) only. For limits and error
behavior, see Configure.
Python SDK v7.13.0
Deepgram Python SDK v7.13.0 adds
connection.send_configure(ListenV1Configure(...)) to change keyterms and
formatting options such as numerals on a live Listen V1 stream. Most Configure
rejections arrive as typed ListenV1Error responses. Voice Agent sessions can
exchange experimental custom Think-provider payloads with
send_custom_to_think_provider(...) and AgentV1CustomFromThinkProvider
responses, which require a configured custom Think-provider WebSocket endpoint.
For release details, see deepgram-python-sdk v7.13.0.
JavaScript SDK v5.15.0
Deepgram JavaScript SDK v5.15.0 adds sendConfigure({ type: "Configure", ... })
for live Listen V1 streams, with most rejections delivered as typed
ListenV1Error messages, and the experimental sendCustomToThinkProvider(...)
for Voice Agent sessions.
WebSocket connection errors now retry through the configured
reconnectAttempts budget unless your application closed the socket. For
custom transports, the retry budget resets after a connection stays open for
the default five-second stable period.
For release details, see deepgram-js-sdk v5.15.0.
Java SDK v0.11.1
Deepgram Java SDK v0.11.1 adds sendConfigure(ListenV1Configure) for live
Listen V1 streams and onErrorMessage(...) for typed server errors. When no
typed handler is registered, onError(...) receives a
ListenV1ErrorException that carries the server error. Voice Agent sessions
gain the experimental sendCustomToThinkProvider(...) and
onCustomFromThinkProvider(...), which require a custom Think-provider wss://
endpoint.
For release details, see deepgram-java-sdk v0.11.1.
Go SDK v3.9.0
Deepgram Go SDK v3.9.0 supports the current Voice Agent function-call
protocol with typed function requests, responses, and cancellation events.
Function settings accept arbitrary JSON Schema properties, and client-side
functions can omit an endpoint. The Management client adds create, read,
update, and delete endpoints for reusable Voice Agent configurations and
Agent template variables. Configurations are stored and returned as JSON
strings, and an update to a configuration replaces its metadata only.
For release details, see deepgram-go-sdk v3.9.0.
.NET SDK v7.1.3
Deepgram .NET SDK v7.1.3 makes LiveSchema.Model optional on the Listen V1
WebSocket. Connect no longer throws NullReferenceException when you omit
the model. Keyterms with an explicit non-Nova-3 model still fail validation
with DeepgramException.
For release details, see deepgram-dotnet-sdk 7.1.3.
Rust SDK v0.13.0
Deepgram Rust SDK v0.13.0 adds Text Intelligence
analysis, SRT and WebVTT caption helpers, Voice Agent Flux and Aura speak
settings with integer expressivity, typed Voice Agent server events, model
listing that includes outdated models, streaming TTS options, named Aura-2
models, and self-hosted distribution credential management. Pre-recorded and
streaming responses expose extra metadata, and Entity::raw_value preserves
the spoken text before formatting.
It also fixes a streaming worker that stopped when the idle timer fired without keep-alive, a Flux TTS deadlock on terminal errors under backpressure, and usage requests that omit the audio meter group.
This pre-1.0 release includes breaking changes:
Details::durationandDetails::total_audioare nowOption<f64>, andDetails::channelsandDetails::streamsare nowOption<usize>. An absent value means the meter group was omitted, which is different from zero usage.- Management and
Auth::grantcalls now use the configured base URL. To keep sending them to the hosted API from a custom-base-URL setup, create a separate client withDeepgram::new(api_key). A base URL with a path prefix must end in/. - Streaming metadata and
StreamResponse::TerminalResponseare non-exhaustive. Pattern matches must include.., and you can’t build these types with struct literals. - Named Whisper models and redaction values parse to their own variants, so
code that matched them as
CustomIdorOthermust match the named variants. Speak::speak_to_fileno longer prints a success message to stdout.
For release details, see deepgram-rust-sdk 0.13.0.
Rust SDK v0.12.0
Deepgram Rust SDK v0.12.0 fixes a hang on /v1/listen and /v2/listen
streaming sessions when the response channel filled up, delivers the terminal
transport error to your code, and preserves unknown streaming frames.
WebSocket requests now send the full authority in the Host header.
This pre-1.0 release includes a behavior change: sending data on an ended
/v1/listen session now returns Err, where v0.11.0 returned Ok(()).
For release details, see deepgram-rust-sdk 0.12.0.
Deepgram CLI v0.3.3
Deepgram CLI v0.3.3 adds two flags to dg speak. --play sends audio to
your system player (ffplay, afplay, paplay, or aplay) and works with
-o to save and play in one command. --list-voices lists the available
text-to-speech voices and their languages.
dg skills now installs Deepgram skills v1.7.0 from a pinned, hash-checked
bundle, installs and removes only the skill folders the CLI owns, and cleans up
skill files it can prove an earlier 0.3.x release wrote.
For release details, see deepgram/cli v0.3.3.
Deepgram skills v1.7.0
Deepgram skills give AI coding assistants such as Claude Code, Cursor, and
Codex up-to-date Deepgram API, SDK, and CLI guidance. The deepgram plugin now
lists 14 skills, including the speech-to-text, text-to-speech,
voice-agent, audio-intelligence, text-intelligence, browser-agent, and
cli skills added in v1.6.0.
v1.7.0 updates all 14 skills for the September API, SDK, and CLI changes,
including Flux TTS pause markers and Early Access pronunciation overrides, the Flux STT Warning
message and mid-stream numerals, the Voice Agent reusable-configuration and
agent-variable endpoints, and FunctionCallCancelled. The skills also correct
which SDKs support each feature and add the EU, Australia, and India regional
endpoints.
Install with npx skills add deepgram/skills or dg skills. For release
details, see deepgram/skills v1.7.0.
Earlier releases
These releases, from September 14 through October 5, did not get their own changelog entries:
- Python SDK
v7.10.0, JavaScript SDKv5.12.0, and Java SDKv0.10.1add Voice AgentFunctionCallCancelledevents and thedefer_until_eotfunction setting. JavaScript streaming sockets also supportfor await...of. - Python SDK
v7.11.0, JavaScript SDKv5.13.0, and Java SDKv0.10.2turn Numerals on or off during a Flux STT stream withConfigure. - Python SDK
v7.12.0, JavaScript SDKv5.14.0, and Java SDKv0.11.0add Flux TTS pause markers for batch synthesis and Early Access pronunciation overrides; see Speed, Pause, and Pronunciation. Python also adds typed Flux STTWarningmessages. - Go SDK
v3.8.0adds a Flux TTS client for batch and WebSocket synthesis, andForceEndTurnfor Flux STT. Go SDKv3.7.1fixes Speak V1 WebSocket metadata and theClearcontrol message. - .NET SDK
v7.1.2surfaces unknown WebSocket server frames through theUnhandledevent and adds opt-inDeepgramWebSocketExceptionerrors for rejected WebSocket upgrades. - Rust SDK
v0.11.0adds therustls-tls-native-rootsfeature andDeepgram::tls_configfor TLS-inspecting proxies and private CAs. This release includes a breaking change: a Fluxwss://connection behind a private CA that worked onv0.10.1only because another crate enabled native roots now fails withUntrustedTlsCertificateuntil you enablerustls-tls-native-rootsor passDeepgram::tls_config. - Deepgram CLI
v0.3.2keeps stdout parseable for scripts and corrects advertised command examples.