April 27, 2026
ElevenAgents
agent_response_complete WebSocket event: A new agent_response_complete client event fires exactly once when an agent's response is fully delivered -- after all LLM generation, tool call chains, and audio playback complete. The event lets clients reliably detect end of turn for batching messages, wake-word activation, or post-turn UI updates. The event is suppressed while async tool tasks are still running and is not emitted on agents configured with turn_timeout or soft_timeout. Added a new AGENT_RESPONSE_COMPLETE value to the ClientEvent enum and a corresponding AgentResponseCompleteClientEvent response model.
Pre-tool speech mode: Added a new pre_tool_speech field (PreToolSpeechMode enum, default auto) on MCP server configuration and per-tool overrides. Replaces the now-deprecated force_pre_tool_speech boolean. Values: auto decides whether the agent speaks before the tool call based on recent tool latency, force always asks the agent to speak, and off opts out entirely.
Tool dispatch respects execution mode: Workflow tool dispatch nodes now correctly respect each nested tool's execution_mode. If any tool in a dispatch node uses POST_TOOL_SPEECH, the workflow waits for the current turn's audio to be fully exposed before executing the dispatch.
MCP response timeout: Added a response_timeout_secs field (integer, default 30, min 5, max 120) on MCP server configuration and per-tool overrides, controlling the maximum time to wait for each MCP tool call to complete.
Agent trust context: Added a trust_context field on agent platform settings (AgentTrustContext enum: unknown | low | high, default unknown). low is for agents serving untrusted external participants, where outputs should be vetted and tool access scoped; high is for agents serving the owner where full tool access is appropriate; unknown covers agents created before this feature.
Source attribution toggle: Added a source_attribution boolean (default false) on conversation config. When enabled and knowledge base content is present, the LLM is instructed to report which sources it used.
Test sharing mode filter: The list tests endpoint now accepts a sharing_mode query parameter (all | shared_with_me, default all) to filter tests and folders to only those shared with the current user that they did not create.
Tool icons and execution metadata: Added icons (array of Icon) and execution (ToolExecution) fields to the Tool schema. Icon includes src, mimeType, and sizes for UI display, and ToolExecution.taskSupport (forbidden | optional | required) declares how the tool participates in tasks.
Procedure compiler default: The ProcedureCompilerMode default has changed from deterministic to append, and the llm value has been removed. Existing agents that explicitly set deterministic are unaffected.
RAG and knowledge base attribution metadata: Added used_static_kb_document_ids (array of strings) on ConversationHistoryTranscriptCommonModel and ConversationHistoryTranscriptResponseModel, and used_chunk_ids on RagRetrievalInfo, surfacing exactly which knowledge base documents and RAG chunks contributed to each transcript turn.
Dynamic variable refactor: dynamic_variables and dynamic_variable_placeholders now reference unified DynamicVariableValueType-Input / DynamicVariableValueType-Output schemas (replacing the prior DynamicVariableContainerValueType-* schemas), with broader support for nested and list values. DynamicVariableAssignment gained a preserve_native_type field to keep typed values rather than coercing to strings.
Audio Isolation
- History endpoints: Two new endpoints expose your audio isolation history.
List audio isolation history (
GET /v1/audio-isolation/history) returns a paginated list of all your audio isolation generations. Supportspage_size,page, andsearchquery parameters. - Delete audio isolation history item (
DELETE /v1/audio-isolation/history/{history_item_id}) deletes a specific item and its associated media files.
Speech to Text
- Realtime keyterms and verbatim mode: The Scribe realtime WebSocket now accepts a
keytermsparameter (array of strings, max 50 entries of up to 20 characters each) to bias the model toward specific terms, and ano_verbatimboolean to remove filler words, false starts, and disfluencies from transcripts. Both parameters are echoed back in thesession_startedevent. Available across the JavaScript SDK, Python SDK, and the@elevenlabs/clientbrowser/Node client SDK.
SDK Releases
Python SDK
- v2.45.0 - Fern regeneration for the April 27, 2026 API schema, including audio isolation history endpoints, tool executions, MCP
pre_tool_speechandresponse_timeout_secs, and theagent_response_completeclient event. Also includes a fix to the notebook install hint in the README. - v2.44.0 - Fern regeneration for the April 21, 2026 API schema, picking up the
trust_contextfield,pre_tool_speechmode, asset transcription support, and MCP response timeout configuration.
JavaScript SDK
- v2.45.0 - Added
keyterms(string array, max 50 keyterms of up to 20 chars each) andnoVerbatim(boolean) options on the Scribe realtime client.keytermsare sent as repeated query parameters on the WebSocket URL to bias transcription, andnoVerbatimremoves filler words and disfluencies. Both fields are also added to the typedConfiginterface for thesession_startedecho. Also includes the April 27, 2026 Fern regeneration (#376). - v2.44.0 - Fern regeneration for the April 21, 2026 API schema, picking up the
trust_contextfield,pre_tool_speechmode, and MCP response timeout configuration.
Swift SDK
- v3.1.4 - Fixed an issue where the local microphone kept publishing after an agent disconnected (silence timeout or
end_calltool).onAgentDisconnectednow disconnects the LiveKit room and tears down conversation state, withonDisconnectfiring an.agentreason.ConnectionManaging.onAgentDisconnectedis nowasync. Removed the unusedConversationConnectionManagerwrapper.
Packages
- @elevenlabs/client@1.3.1 - Fixed the agent tool-call sound being interpreted as user speech and interrupting the agent during tool execution.
- @elevenlabs/client@1.3.0 - Added support for the upload conversation file endpoint, letting clients attach files to an in-progress conversation directly from the client SDK.
- @elevenlabs/react@1.2.1, @elevenlabs/react@1.2.0 - Updated to
@elevenlabs/client@1.3.1/@elevenlabs/client@1.3.0, picking up the tool-call sound fix and conversation file upload support. - @elevenlabs/react-native@1.1.3, @elevenlabs/react-native@1.1.2 - Updated to the latest
@elevenlabs/clientfor the same fixes. - @elevenlabs/convai-widget-core@0.11.6, @elevenlabs/convai-widget-embed@0.11.6 - Updated to
@elevenlabs/client@1.3.1for the tool-call sound fix. - @elevenlabs/convai-widget-core@0.11.5, @elevenlabs/convai-widget-embed@0.11.5 - Updated to
@elevenlabs/client@1.3.0for conversation file upload support.
API
Fetched April 28, 2026

