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. Supports page_size, page, and search query 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 keyterms parameter (array of strings, max 50 entries of up to 20 characters each) to bias the model toward specific terms, and a no_verbatim boolean to remove filler words, false starts, and disfluencies from transcripts. Both parameters are echoed back in the session_started event. Available across the JavaScript SDK, Python SDK, and the @elevenlabs/client browser/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_speech and response_timeout_secs, and the agent_response_complete client 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_context field, pre_tool_speech mode, 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) and noVerbatim (boolean) options on the Scribe realtime client. keyterms are sent as repeated query parameters on the WebSocket URL to bias transcription, and noVerbatim removes filler words and disfluencies. Both fields are also added to the typed Config interface for the session_started echo. 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_context field, pre_tool_speech mode, 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_call tool). onAgentDisconnected now disconnects the LiveKit room and tears down conversation state, with onDisconnect firing an .agent reason. ConnectionManaging.onAgentDisconnected is now async. Removed the unused ConversationConnectionManager wrapper.

Packages

API

New Endpoints

Updated Endpoints

ElevenAgents

  • Create agent, Get agent, Update agent

    • Added trust_context field (AgentTrustContext enum: unknown | low | high, default unknown) on AgentPlatformSettingsRequestModel
    • Added source_attribution field (boolean, default false) on ConversationConfig
  • Update MCP server configuration, Create MCP server

    • Added pre_tool_speech field (PreToolSpeechMode enum: auto | force | off, default auto)
    • Added response_timeout_secs field (integer, default 30, min 5, max 120)
  • Create configuration override, Update configuration override

    • Added pre_tool_speech field (PreToolSpeechMode enum, nullable, optional)
    • Added response_timeout_secs field (integer, nullable, optional)
    • Added response_mocks field on MCPToolConfigOverride-Input / MCPToolConfigOverride-Output
    • Marked force_pre_tool_speech as deprecated; use pre_tool_speech instead
  • List tests

    • Added optional sharing_mode query parameter (TestSharingMode enum: all | shared_with_me, default all)
  • Simulate conversation, Stream simulate conversation

    • Refactored dynamic_variables and dynamic_variable_placeholders payloads to reference unified DynamicVariableValueType-Input / DynamicVariableValueType-Output schemas with broader nested and list value support
  • Tool schema

    • Added icons field (array of Icon, nullable) for UI display
    • Added execution field (ToolExecution, nullable) including taskSupport (forbidden | optional | required)
  • ClientEvent enum

    • Added agent_response_complete value with new AgentResponseCompleteClientEvent response model
  • ProcedureCompilerMode enum

    • Default changed from deterministic to append
    • Removed llm value
  • ConversationHistoryTranscriptCommonModel, ConversationHistoryTranscriptResponseModel

    • Added used_static_kb_document_ids field (array of strings)
  • RagRetrievalInfo

    • Added used_chunk_ids field (array of strings)
  • DynamicVariableAssignment

    • Added preserve_native_type field (boolean) for keeping typed values instead of coercing to strings
  • Workflow nodes

    • Added auto_advance_after_first_response field on relevant workflow node schemas
  • Tool configuration documentation

    • Added response_body_schema field for documenting expected response shape

Workspaces

  • GetUserSubscriptionResponseModel

    • Added max_credit_limit_extension field
  • Get workspace usage by product over time

    • Tightened request validation: start_time and end_time minimums raised to 2020-01-01, with descriptions added on both fields. The endpoint summary was renamed to Get Workspace Usage.

Other

  • New shared Currency enum with values eur, inr, usd, replacing inline currency strings in several schemas.
  • New AssetTranscription and AssetTranscriptionData schemas extend asset models with transcription support.
  • New PendingBlocksMetadataModel and PendingExternalAudiosMetadataModel provide richer metadata on pending tasks.
  • New InVPC value added to source-related enums.
  • Transcription keyterms now have explicit length restrictions in the spec.
  • New MemoryEntrySearchResult, ConversationSource, and ManualSource schemas added.