Workflow starting node override: Conversations can now be started at a specific workflow node by passing starting_workflow_node_id in the conversation initiation client data. This is gated by an opt-in enable_starting_workflow_node_id_from_client field in the agent’s platform override settings. When enabled, clients can specify which node to begin a conversation at, which is useful for agent memory and longer-term WebSocket use cases. If the specified node does not exist, the conversation falls back to the default entry point.
Post-call analysis LLM configuration: Agent platform settings now include an analysis_llm field (default: gemini-2.5-flash) that sets the default LLM for post-call analysis, including evaluation criteria and data collection. Individual data collection properties can override this default with a per-item llm field via the new AnalysisProperty schema, giving fine-grained control over which model processes each analysis item.
New LLM options: Added gpt-5.4 to the list of available LLM providers for agent configuration. Added xhigh to the LLMReasoningEffort enum for extended reasoning on supported models.
Null literal in workflow expressions: Workflow conditional expressions now support null comparisons via the new ASTNullNode type, enabling branches like “if variable is null” in workflow logic.
Get secret by ID: A new get secret endpoint (GET /v1/convai/secrets/{secret_id}) retrieves a single workspace secret by its ID. The list secrets endpoint also now accepts a search query parameter to filter secrets by name prefix.
Searchable phone numbers in batch calling: The batch calling form in the dashboard now includes a searchable phone number selector, making it easier to find the right outbound number when configuring batch calls.
detect_speaker_roles parameter (boolean, default false). When enabled alongside diarize=true, speaker labels are returned as agent and customer instead of speaker_0, speaker_1. This cannot be used with use_multi_channel=true. Usage incurs an additional 10% surcharge on the base transcription cost.inputs[].text values per request. Longer requests may terminate early in streaming responses or return a validation error.POST /v1/workspace/analytics/query/usage-by-product-over-time) returns credit usage broken down by product type over time. Results are returned in a tabular structure with configurable interval_seconds, group_by dimensions, and filters. The previous GET /v1/usage/character-stats endpoint has been deprecated in favor of this new endpoint.@elevenlabs/client@1.2.1 - Fixed conversation startup readiness so onConnect runs after the session is marked connected and React has synchronized conversationRef. Also exposed and forwarded onConversationCreated for consumers that need the created Conversation instance before onConnect.
@elevenlabs/react@1.1.1 - Fixed conversation startup readiness and exposed onConversationCreated callback, matching the @elevenlabs/client@1.2.1 changes.
@elevenlabs/react-native@1.1.1, @elevenlabs/convai-widget-core@0.11.4, @elevenlabs/convai-widget-embed@0.11.4 - Updated to @elevenlabs/client@1.2.1 with conversation startup fixes.
GET /v1/convai/secrets/{secret_id}POST /v1/workspace/analytics/query/usage-by-product-over-time - Get workspace credit usage by product over timeGET /v1/usage/character-stats - Deprecated in favor of POST /v1/workspace/analytics/query/usage-by-product-over-timePOST /v1/dubbing/resource/{dubbing_id}/language, POST /v1/dubbing/resource/{dubbing_id}/speaker/{speaker_id}/segment, PATCH /v1/dubbing/resource/{dubbing_id}/segment/{segment_id}/{language}, and others) are now deprecatedCreate agent, Get agent, Update agent
analysis_llm field (LLM enum, default: gemini-2.5-flash) to AgentPlatformSettings for configuring the default post-call analysis modelAnalysisProperty schema with an optional per-item llm override fieldstarting_workflow_node_id field (string, nullable) to conversation initiation client dataenable_starting_workflow_node_id_from_client field (boolean, default false) to ConversationInitiationClientDataConfigexternal_link field (string, nullable) to batch call recordssearch query parameter (string) for filtering secrets by name prefixLLM enum
gpt-5.4, gpt-5.4-2026-03-05LLMReasoningEffort enum
xhighWorkflow expressions (ASTNode)
null_literal discriminator value and ASTNullNode schema for null comparisonsArray tool parameters (ArrayJsonSchemaProperty)
dynamic_variable field (string, optional) for populating arrays from dynamic variables at runtimeconstant_value field (array, nullable) for setting constant array valuesitems field is no longer required (has a default schema)MCP tool config overrides
MCPToolConfigOverride-Output schema (input/output split)detect_speaker_roles field (boolean, default false) for agent/customer speaker role detectionConvert text to dialogue, Stream text to dialogue
inputs description with 2,000 character per-request recommendationavatar_context field from request bodyQualityPresetType enum schema. The highest value has been removed from dialogue quality presets; use ultra instead.AudioNativeResponse - Removed transcription field from responseUserResponseModel - Backward compatible schema update