The ElevenLabs CLI v1.0.0 is now available. Every ElevenLabs API operation is available as a subcommand, with JSON, table, YAML and CSV output, automatic pagination and shell completion.
The CLI also provides local configuration workflows for ElevenAgents. Store agent, tool and test configurations as files, synchronize them with push and pull commands, manage branches, run tests, install ElevenLabs UI components and select a data residency region.
Procedures are now generally available in ElevenAgents. A procedure contains task-specific instructions and a trigger that determines when they apply. During a conversation, the agent loads the relevant procedure, allowing one agent to handle distinct tasks without placing every instruction in its system prompt.
Use free-form procedures when the agent can adapt the wording or order of instructions. Use structured procedures when steps must run in a defined order. Both types can be used alongside workflows on the same agent.
Learn when to use procedures and how they compare with prompts and workflows.
Write natural-language instructions that the agent can adapt to the conversation.
Define typed steps that the agent follows in a consistent order.
context_usage event after each completed agent turn. The event reports the model, prompt token count and model context limit.keyterms and Dubbing webhook_ids.expects_response handling and type-safe tool results. WebRTC startup now becomes ready when the agent joins instead of waiting for audio-track subscription. The release also hardens URL handling, suppresses unknown-event noise and removes realtime-thread allocation from software mute processing.@elevenlabs/react-native.webRtc.iceTransportPolicy. Set it to relay to restrict WebRTC ICE candidates to TURN relays on networks that block direct UDP traffic.onContextUsage callback and ContextUsageEvent type. React exposes the callback through useConversation. React Native now resolves through its package export condition instead of browser-global detection.onExternalAgentDisconnected and onMCPToolApprovalRequest. WebRTC now uses the selected input device, preserves mute state when switching microphones and fails setup if initiation data cannot be sent. The widget adds concurrency queue status, optional language selection on the collapsed trigger and first-message rendering for agents that support both text and voice.POST /v1/convai/triage-tickets. The request requires conversation_id (string) and accepts qa_comment (nullable string, 1–10,000 characters) and up to 200 turn comments.GET /v1/convai/agents/{agent_id}/triage-tickets, with cursor pagination.POST /v1/convai/agents/{agent_id}/triage-tickets. The request requires qa_comment (string, 1–10,000 characters).GET /v1/convai/agents/{agent_id}/triage-tickets/assignable-users. The response lists non-service-account workspace members and whether each member has access to the agent.GET /v1/convai/triage-tickets/{agentqa_ticket_id}.PATCH /v1/convai/triage-tickets/{agentqa_ticket_id}. The request accepts optional status and nullable assignee_user_id.DELETE /v1/convai/triage-tickets/{agentqa_ticket_id}.POST /v1/convai/triage-tickets/{agentqa_ticket_id}/comments. The request requires comment (string, 1–10,000 characters).POST /v1/convai/triage-tickets/{agentqa_ticket_id}/turn-comments. The request requires zero-based turn_index (integer) and comment (string, 1–10,000 characters).GET /v1/convai/conversation/get-signed-url
debug_events_request (boolean, default false). Debug events require editor access to the agent.GET /v1/convai/conversation/token
debug_events_request (boolean, default false). The legacy GET /v1/convai/conversation/get_signed_url route accepts the same parameter.GET /v1/convai/conversations
triggered_procedure_ids (nullable string array, maximum 50) to match conversations where any specified procedure ran.include_invalid_tool_calls (boolean, default false) to include tool calls that did not run.sort_direction (asc or desc, default desc) for call start time.GET /v1/convai/conversations/messages/text-search
triggered_procedure_ids (nullable string array, maximum 50).include_invalid_tool_calls (boolean, default false).GET /v1/convai/agents/{agent_id}/topics
include_evaluation_criteria (boolean, default true).frustration to sort_by.success_rate (number), while the overall response adds aggregated_run_count (integer, default 0).from_unix_secs is floored to the start of its UTC day. A bounded range aggregates completed daily discovery runs; omitting both bounds returns the latest run.GET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures) and Get procedure (GET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id})
agent_version_id (string) to retrieve procedures from a specific agent version.environment (string) to response, simulation and tool-call unit test schemas. The value selects environment-specific URLs, headers and auth connections; it defaults to production.minimum_frequency_days (integer, 1–180) for auto-sync. The default is 7, and a stricter parent-folder frequency takes precedence.GET /v1/music/finetunes
page_size from 100 to 150. The default remains 50.procedures (object<string, ProcedureVersionRef>). Each value requires procedure_id and version_id (strings). An empty object removes all procedures.enable_procedure_ids_from_client (boolean, default false). Initiation data adds optional nullable procedure_ids (string array); an empty array disables all procedures for the starting agent.ClientEvent adds context_usage.additional_soft_timeout_messages (string array).null.mic_muting_enabled and transcript_enabled changed from false to true. Set them explicitly to false to preserve the previous behavior.xi_api_key from UserResponseModel.ResourceMetadataResponseModel.role_to_group_ids now accepts custom role IDs as keys instead of restricting keys to admin, editor, commenter and viewer.restricted_to_user_email_domains (string array).go to next_tier.https://api.elevenlabs.io/v1/mcp, signs in with your ElevenLabs account through OAuth and requires no local installation or API key. See the hosted MCP server documentation for setup instructions for Claude, Cursor and other MCP clients.pending, generating, completed and failed states, and requests can include a webhook target for completion events.max_messages query parameter is an integer from 1 to 200 (default 40); longer conversations set messages_omitted to true. Useful for agents that need to preserve context.page_size (integer, 1–100), cursor (string), sort_by (conversations, sentiment or success_rate) and sort_direction (asc or desc). Responses add has_more and nullable next_cursor.queueing (AgentQueueingConfig). Set enabled to true to hold callers when the agent reaches its concurrency limit; wait_timeout_seconds is an integer up to 1,800 (default 180).merge_with_default_ignore_terms (boolean, default false) to combine custom interruption terms with curated defaults. Soft timeouts add disable_until_first_user_message (boolean, default false), and workflow tool locators add optional schema_overrides for per-node parameter overrides.BackgroundSoundConfig.volume now defaults to 0.15 instead of 0.6, and crossfade_loop now defaults to true instead of false. Set these fields explicitly to retain the previous behavior.client.assets for uploading, listing, retrieving and deleting assets, plus client.flows for asynchronous video, image and speech generation. Turn configuration adds mergeWithDefaultIgnoreTerms. Removed CustomToolApiSchemaConfig and scimExternalId from WorkspaceGroupResponseModel.merge_with_default_ignore_terms in turn configuration. On-prem session setup adds extra_setup_config for passing additional setup-message fields.disconnected consistently and prevents late callbacks from clearing a newer session. The widget renders quick replies and links inline, restores Markdown in voice transcripts and fixes language menu positioning inside container-query layouts.useScribe reconnection.POST /v1/flows/videoGET /v1/flows/videoGET /v1/flows/video/{generation_id}POST /v1/flows/imageGET /v1/flows/imageGET /v1/flows/image/{generation_id}POST /v1/flows/text-to-speechGET /v1/flows/text-to-speechGET /v1/flows/text-to-speech/{generation_id}POST /v1/assetsGET /v1/assetsGET /v1/assets/{asset_id}DELETE /v1/assets/{asset_id}GET /v1/convai/conversations/{conversation_id}/summary
max_messages (integer, 1–200, default 40)GetConversationSummaryResponseModel with required conversation_id, agent_id, status, message_count and notemessages contain only role (user or agent) and message; conversations over the limit return messages_omitted: trueGET /v1/convai/analytics/live-count
agent_ids (string array, maximum 25), which takes precedence over agent_idGET /v1/convai/agents/{agent_id}/topics
page_size (integer, 1–100), cursor (string), sort_by (conversations, sentiment or success_rate) and sort_direction (asc or desc)has_more (boolean, default false) and nullable next_cursor (string)queueing (AgentQueueingConfig) to agent platform settings. It contains enabled (boolean, default false) and wait_timeout_seconds (integer greater than 0 and at most 1,800, default 180)schema_overrides to WorkflowToolLocator; per-node constant, dynamic variable, LLM or omit overrides take precedence over tool-level overridesmerge_with_default_ignore_terms (boolean, default false) to turn configuration and related override schemasdisable_until_first_user_message (boolean, default false) to soft-timeout configuration and related override schemasstatus (success, error, blocked or skipped) to realtime agent tool response eventsavaya to conversation initiation sources and avaya_api_key to authorization methodsgemini-3.6-flash and gemini-3.7-flash to supported agent LLM valuesBackgroundSoundConfig.volume default from 0.6 to 0.15 and crossfade_loop default from false to trueCustomToolApiSchemaConfig; generated SDK users importing this type must remove the importscim_external_id from WorkspaceGroupResponseModelDubbing v2 is now available through the API. It translates audio and video into more than 90 languages while preserving each speaker’s voice, tone and pacing.
The new project-based API keeps source transcripts and translations as editable JSON. Create a project from a file or URL, add one or more target languages, edit individual transcript segments or translations, then regenerate only the regions that changed. Follow the Dubbing quickstart to create your first dub.
Create your first Dubbing v2 project and generate a translated audio track.
Edit source transcripts and translations, then regenerate changed regions.
Explore Dubbing project, language and transcript endpoints.
guardrail_types (GuardrailType[]) and custom_guardrail_names (string array) query parameters. The existing conversation hierarchy can now be filtered with optional parent_conversation_id (string).include_commit_status (boolean, default false). When enabled, branch summaries include nullable commits_ahead, commits_behind and merged_into_branch_id fields.max_duration_seconds and pronunciation_dictionary_locators. MCP server configuration adds request_meta for passing MCP _meta values to tool calls, and webhook tool timeouts now support up to 300 seconds.analysis breakdown with per-feature running totals and run snapshots. Transcript messages add triggered_guardrails, and conversation turns add optional producing_llm.gender, age, language, accent, use_cases, min_notice_period_days, include_custom_rates, include_live_moderated and high_quality query parameters.audio_format parameters and inclusive VAD bounds.DubbingRegenerateResponse; added conversation guardrail filters, agent branch commit status, agent alerting and MCP requestMeta support. Language target creation no longer accepts modelId.run_subagent_* tool-result variants.update_segments methods and DubbingRegenerateResponse; added guardrail_types, custom_guardrail_names, include_commit_status and MCP request_meta support. Dubbing segment updates now use request body models, and language target creation no longer accepts model_id.parent_conversation_id, analysis charging, triggered guardrail metadata, branch merge conflicts, DTMF input redaction and Dubbing transcript uploads. Removed OpenAI realtime session types and run_subagent_* result models.ConversationStatus.ERROR.ConversationConfig.useMediaStream for routing conversation audio through the Android media stream. Remote normal WebSocket closures now report DisconnectionDetails.Agent, while locally initiated closures report DisconnectionDetails.User.PATCH /v1/dubbing/project/{project_id}/transcript/segments
DubbingBulkSegmentUpdateRequestDubbingBulkSourceSegmentUpdateResponse with the updated segments and revisionPATCH /v1/dubbing/project/{project_id}/language/{language_id}/transcript/segments
DubbingBulkTargetSegmentUpdateRequestDubbingBulkTargetSegmentUpdateResponse with the updated segments and revisionGET /v1/convai/conversations
parent_conversation_id (string)guardrail_types (GuardrailType[]) and custom_guardrail_names (string array)GET /v1/convai/agents/{agent_id}/branches
include_commit_status (boolean, default false)commits_ahead (integer), commits_behind (integer) and merged_into_branch_id (string)GET /v2/voices
gender, age and accent (string) filterslanguage and use_cases (string array) filtersmin_notice_period_days (integer), include_custom_rates, include_live_moderated and high_quality (boolean) filtersmax_duration_seconds (integer) and pronunciation_dictionary_locators (array)request_meta mapsalerting; language detection adds only_at_conversation_start (boolean)AnalysisCharging.last_run is now required and non-nullable; running totals add required runs (integer)content_format and document_typetool_mock_overrides, keyed by tool ID, to replace shared mocks for one test. ToolResponseMockConfig also adds optional is_error (boolean, default false) so a mock can exercise tool-failure paths.text_translations, a map of language keys to TranslatedString objects. The field is optional on input and required on output, so strict response validators must accept it.version_id query parameter (string) to filter results by agent version.knowledge_base system tool with configurable enabled_strategies (SearchStrategy[]). Agent knowledge base RAG queries add optional use_agent_defaults (boolean, default true); set it to false to use neutral retrieval settings while retaining the agent’s embedding model.vad configuration. VADConfig currently supports background_voice_detection (boolean, default false).CustomLLMAPIType adds websocket.max_files_in_memory (integer, 1–30, default 10). Files beyond the limit are summarized and released from memory; max_files_per_conversation must be -1 or at least the memory limit.DTMFInputConfig adds optional redact_input (boolean, default false) to replace caller keypad digits in transcripts, conversation logs and analysis. Digits repeated by the agent or passed to tools remain unchanged.entity_detection query option. It accepts all, one entity type or category, or an array of types and categories, and emits detected entities in committed_transcript_entities events. See the entity detection guide for supported categories.POST /v1/voices/{voice_id}/replicate-to-isolated-environment for copying an Instant Voice Clone or Voice Design voice to a workspace in the same consolidated billing group. Requests require target_workspace_id (string) and accept preserve_voice_id (boolean, default true); responses return the target voice_id.recommended_voice_ids (string array, default []), metadata adds nullable role (CharacterRole), and CharacterAge replaces middle-aged with middle_aged.onAgentReasoningResponsePart, which receives streaming agent reasoning events with start, delta and stop types.show_resize_button and the show-resize-button embed attribute. Set either to false to hide the widget header’s expand and collapse control.enableLogging option to Scribe.connect and useScribe. Setting it to false starts an enterprise zero-retention session. The Scribe session_started type now reports enable_logging; the unused disable_logging field was removed.simulate_conversation with configurable simulated-user behavior, evaluation criteria, transcript output and pass/fail analysis. The speech_to_text tool now defaults to scribe_v2, and voice_clone now sends audio file contents instead of path strings.POST /v1/voices/{voice_id}/replicate-to-isolated-environment
target_workspace_id (string)preserve_voice_id (boolean, default true)voice_id (string)GET /v1/convai/conversations
version_id (string) query parameterGET /v1/convai/conversations/messages/text-search
version_id (string) query parameterPOST /v1/convai/agents/{agent_id}/knowledge-base/rag-query
use_agent_defaults (boolean, default true) request fieldtool_mock_overrides maps; ToolResponseMockConfig adds optional is_error (boolean, default false)SayNodeLiteralMessage adds text_translations (map of TranslatedString); the field is optional on input and required on outputknowledge_base (KnowledgeBaseToolConfig) and vad (VADConfig)CustomLLMAPIType adds websocketFileInputConfig adds max_files_in_memory (integer, 1–30, default 10)DTMFInputConfig adds optional redact_input (boolean, default false)eleven_realtime_v1_minirecommended_voice_ids (string array, default [])role (CharacterRole)CharacterAge replaces middle-aged with middle_aged; clients sending the old value must migrateAudioFilterId and audio_filter from ElevenAgents Text to Speech configuration schemasbranch_id and environment passed in conversation_initiation_client_data. Overrides are validated before anything is sent — an unknown branch or environment is rejected with an error — and persist for the conversation, so a customer’s reply resumes on the requested branch and environment. See the WhatsApp guide for examples.name, content, type and trigger. An empty trigger creates a sub-procedure, while an omitted or null trigger is derived from the procedure content.url (string) and support crawl depth, page limits, URL patterns, sitemap URLs, folder placement, automatic synchronization and removal of unavailable documents.dependent_type; deletion returns an independent success or failure for each ID. Setting force: true also removes dependencies and recursively deletes non-empty folders.visited_agent_ids and visited_agent_branch_ids array filters, each limited to 50 values. List requests also accept data_collection_ids and evaluation_criteria_ids to include corresponding results in each conversation summary. Summaries add optional data_collection_results, evaluation_criteria_results and tag_ids.analysis_items field, typed as AgentAnalysisItems, to attach evaluation and data-collection items by reference. A null value indicates that the agent still uses the legacy inline fields; an empty value indicates a migrated agent with no attached items.trigger (string) and arrays for referenced_tool_ids, referenced_kb_ids, referenced_procedure_ids and referenced_dynamic_variables.conversation_id (string) in addition to token. This is a breaking schema change for clients that validate or deserialize the response shape.KnowledgeBaseRagToolResultModel adds chunks (KnowledgeBaseRagChunkModel[]) for RAG-result-in-tool-result mode.ProjectCreationMetaResponseModel.status adds draft. The project creation type now uses the shared ProjectCreationMetaType enum with the same existing values.GET /v1/voices/accents to list the accents available in the shared voice library. Results can be filtered by language and model_id, and each accent returns its accent, language, code and human-readable name. The accent value can be passed to the accent query parameter on Get shared voices to filter shared voices.WebhookUsageType adds Flows.voices.accents.get to list voice accents in the shared voice library, along with the ElevenAgents procedure, knowledge base crawl job and bulk management APIs and the referenced analysis configuration from the latest schema.AsyncConversation startup so it no longer blocks, and corrected list-of-primitive multipart fields to be sent as repeated form fields.onAudioAlignment on WebRTC transports by forwarding alignment metadata from audio messages while leaving audio playback on the LiveKit track.@elevenlabs/client@1.15.2.POST /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures
procedure_id (string)name (string, maximum 200 characters), content (string), type (ProcedureType, default free_form) and trigger (nullable string)GET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures
procedure_id, version_id, name, type, trigger and has_draftGET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}
version_id (string); otherwise returns the version at the branch headname, content, type and triggerDELETE /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}
GET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}/draft
PATCH /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}/draft
name (string, maximum 200 characters), content (string, maximum 50,000 characters) and type (ProcedureType); accepts optional trigger (nullable string)DELETE /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}/draft
POST /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/compile
AgentWorkflowResponseModelPOST /v1/convai/knowledge-base/crawl
url (string)max_depth (integer, 1–5, default 3), max_pages (integer, 1–10,000, default 1000), pattern (string), sitemap_urls (string array), parent_folder_id (string), enable_auto_sync (boolean, default false) and auto_remove (boolean, default false)GET /v1/convai/knowledge-base/crawl
include_job_ids (string array), page_size (integer, 1–100, default 30) and cursor (string)GET /v1/convai/knowledge-base/crawl/{crawl_job_id}POST /v1/convai/knowledge-base/crawl/{crawl_job_id}/cancelPOST /v1/convai/knowledge-base/dependent-agents
document_ids (array of 1–20 unique strings)dependent_type (KnowledgeBaseDependentType, default all), page_size (integer, 1–100, default 30) and cursor (string)POST /v1/convai/knowledge-base/bulk-delete
document_ids (array of 1–20 unique strings)force (boolean, default false)GET /v1/convai/batch-calling/{batch_id}/export
GET /v1/voices/accents
language (string) and model_id (string) query parametersaccent, language, code and nameGET /v1/convai/conversations
visited_agent_ids and visited_agent_branch_ids string array filters, each limited to 50 valuesdata_collection_ids and evaluation_criteria_ids string arrays to select analysis results for each summarydata_collection_results and evaluation_criteria_results, plus the string array tag_idsGET /v1/convai/conversations/messages/text-search
visited_agent_ids and visited_agent_branch_ids string array filters, each limited to 50 valuesGET /v1/convai/conversation/token
conversation_id (string)analysis_items field, typed as AgentAnalysisItems, for referenced evaluation and data-collection configurationtrigger (string), referenced_tool_ids (string array), referenced_kb_ids (string array), referenced_procedure_ids (string array) and referenced_dynamic_variables (string array)KnowledgeBaseRagToolResultModel adds chunks (KnowledgeBaseRagChunkModel[])ProjectCreationMetaResponseModel.status adds draftProjectCreationMetaResponseModel.type now references the shared ProjectCreationMetaType enumWebhookUsageType adds Flowsfinetune_id.GET /v1/convai/conversations/resolve to resolve a Slack message URL or Zendesk ticket URL to a conversation. Requests require agent_id and reference query parameters (strings).POST /v1/convai/agents/{agent_id}/knowledge-base/rag-query for read-only RAG queries against an agent’s knowledge base. The request requires query (string), accepts optional branch_id (string), and returns ranked chunks with document, chunk, text and vector-distance metadata. This endpoint is excluded from generated SDKs.content_format (html | markdown, default html).model_id (TTSConversationalModel). The default for enable_phoneme_tags changes from false to true.cascade_timeout_seconds changes from 8 to 4 seconds. The allowed range remains 2–15 seconds.dynamic_variable, constant_value or is_omitted, matching existing scalar and array controls. Constant schema overrides now accept arbitrary arrays and objects.evaluate_full_response_only (boolean, default false) to evaluate the complete non-TTS response once. This option requires blocking mode.twilio_call_recording_enabled (boolean, default false). Recordings are stored in the connected Twilio account and the setting is ignored by other providers.auto_sync_info and refresh_status (FileRefreshStatus). Folder responses add required document_count (integer), a recursive count of non-folder documents capped at 1000.exclude_statuses and termination_reasons array query parameters.gpt-5.6-sol, gpt-5.6-terra and gpt-5.6-luna. LLMReasoningEffort adds max.enable_typing_indicator (boolean).token (string) as an alternative to API key or bearer authentication. Create the single-use token with POST /v1/single-use-token/batch_scribe; it expires after 15 minutes.@elevenlabs/client now reports microphone setup and malformed server errors through RealtimeEvents.ERROR, releases microphone resources after setup failures and connection closure, and drops late microphone frames after socket teardown.include_archived (boolean, default true).events (WorkspaceWebhookEventType[]) with voice_library_removal_notice, speech_to_text and agent_qa. Webhook responses can return the subscribed event list.surface and actor to the group_by values.character_limit: "clear" to remove a monthly character limit, alongside "no_update" and integer values.webhook_id (string) instead of embedding url, method and headers.music.finetunes methods to list, create, get, update and delete Music Finetunes. Also added conversation reference resolution, archived pronunciation dictionary filtering and single-use Speech to Text tokens.OnPremInitiationData also adds typed post_call_transcription_webhook and post_call_audio_webhook configurations with optional hmac_secret for signed post-call webhooks.@elevenlabs/client@1.15.1 Scribe Realtime fixes.text and type.scribe_realtime instead of the removed elevenlabs ASR provider. Minimal templates continue to use the server default.GET /v1/music/finetunes
POST /v1/music/finetunes
name and primary_genremodel_idGET /v1/music/finetunes/{finetune_id}PATCH /v1/music/finetunes/{finetune_id}
name, tags, primary_genre or visibilityDELETE /v1/music/finetunes/{finetune_id}GET /v1/convai/conversations/resolve
agent_id (string) and reference (string) query parametersGetConversationResponseModelPOST /v1/convai/agents/{agent_id}/knowledge-base/rag-query
query (string) in the request bodybranch_id (string) query parameterAgentKnowledgeBaseRagQueryResponseModelGET /v1/convai/conversations/messages/text-search
exclude_statuses and termination_reasons array query parametersPOST /v1/speech-to-text
token (string) query parameter for a single-use batch Scribe tokenGET /v1/pronunciation-dictionaries
include_archived (boolean, default true) query parameterPATCH /v1/workspace/webhooks/{webhook_id}
events (WorkspaceWebhookEventType[]) request fieldPOST /v1/workspace/analytics/query/usage-by-product-over-time
surface and actor to the optional group_by arrayPATCH /v1/service-accounts/{service_account_user_id}/api-keys/{api_key_id}
"clear" to the optional character_limit fieldcontent_format (html | markdown, default html)auto_sync_info and refresh_status (FileRefreshStatus)document_count (integer)model_id (TTSConversationalModel)enable_phoneme_tags now defaults to true instead of falsecascade_timeout_seconds now defaults to 4 instead of 8 secondsgpt-5.6-sol, gpt-5.6-terra and gpt-5.6-luna; LLMReasoningEffort adds maxevaluate_full_response_only (boolean, default false)twilio_call_recording_enabled (boolean, default false)dynamic_variable, constant_value and is_omitted; constant overrides accept arbitrary array and object valuesenable_typing_indicator (boolean)AutoGenerationMetadata and SimulationLibrarySettingsfinetune_id to generated SDKsevents (WorkspaceWebhookEventType[])webhook_id (string) instead of url, method and headerssentiment_analysis (SentimentAnalysisSettings) for post-call sentiment scoring configuration per agent.auto_translate_transcript_to_app_language (boolean) to translate conversation transcripts to the viewer’s app language in history.enable_nesting and return_when_nested controls for returning to a parent workflow.ignored_as_backchannel (boolean) to mark utterances filtered as backchannels.has_auxiliary_audio (boolean) alongside existing audio flags.environment query parameter (defaults to production) on list tools, get tool, create tool config and update tool config endpoints.tool_call_sound: "off" to silence per-tool call sounds while inheriting server defaults when unset.enable_sms (boolean, default on) to control inbound SMS routing during number setup.sort_direction and supports sorting by average_sentiment_score.ExternalSyncType to ExternalSyncProvider, add sync job trigger and type enums with KbExternalSyncJob, and folder responses can include active_sync_job for in-flight or terminal sync status.optimize_streaming_latency on agent TTS settings is marked deprecated and documented as a no-op.POST /v1/service-accounts) with optional default_sharing_groups (DefaultSharingGroupConfig) for programmatic service-account provisioning.GET /v1/workspace/members) returning WorkspaceMemberResponseModel entries with user id, email, seat status, owner and locked flags. Service accounts are excluded.usage_limit for a monthly credit cap on invitees.run_subagent system tool types, per-agent sentiment analysis settings, nested agent transfer workflow models, knowledge base external sync types, and MCP environment query parameters.usage_limit, conversation has_auxiliary_audio, and multi-context text-to-dialogue WebSocket message types.run_subagent system tool models, per-agent sentiment analysis settings, nested agent transfer workflow models, knowledge base external sync types, and MCP environment query parameters.usage_limit, conversation has_auxiliary_audio, and multi-context text-to-dialogue WebSocket message types.onPing callback exposing ping events and estimated ping_ms for connection latency monitoring.onPing callback from @elevenlabs/client@1.15.0 in React hooks.@elevenlabs/client@1.15.0.POST /v1/service-accountsGET /v1/workspace/membersGET /v1/convai/conversations/{conversation_id}
has_auxiliary_audio (boolean) to responseGET /v1/convai/users
sort_direction query parameteraverage_sentiment_score as a sort optionGET /v1/convai/tools/{tool_id}
environment query parameterGET /v1/convai/mcp-servers/{mcp_server_id}/tools
environment query parameterPOST /v1/convai/mcp-servers/{mcp_server_id}/tool-configs
environment query parameterPATCH /v1/convai/mcp-servers/{mcp_server_id}/tool-configs/{tool_name}
environment query parameterPOST /v1/workspace/invites/add
usage_limit for monthly invitee credit capPOST /v1/workspace/invites/add/bulk
usage_limit for monthly invitee credit caprun_subagent (RunSubagentToolConfig) with required agents arraysentiment_analysis (SentimentAnalysisSettings)auto_translate_transcript_to_app_language (boolean)AgentTransfer modeling with AgentTransferOp push, pop and replaceenable_nesting and return_when_nested workflow flagsignored_as_backchannel (boolean) on user-turn modelstool_call_sound: "off" override support on tool config modelsoptimize_streaming_latency on TTS agent settings (no-op)enable_sms (boolean) on Twilio phone-number import requestsExternalSyncType to ExternalSyncProviderKbExternalSyncJob, sync job trigger and type enumsactive_sync_job on folder responsesSentimentAggregate with recent-window counts and average scoresWorkspaceCreateServiceAccountResponseModel for create responsesdefault_sharing_groups on create requestsWorkspaceMemberResponseModel for list responsesusage_limit on single and bulk invite request bodiesPOST /v1/music/detailed/stream) for SSE streaming of composed audio plus detailed metadata, including composition plan, song metadata, base64 audio chunks and optional word timestamps via with_timestamps.disable_interruptions is deprecated across agent tool and MCP server schemas. Use interruption_mode (ToolInterruptionMode: allow, disable_during_tool, disable_during_tool_and_turn) instead, with per-tool overrides via interruption_mode on tool override models.scoring_mode (binary | numeric_uniform), optional max_score (integer) and optional score_instructions (string). Evaluation results add optional numeric score. Conversation analysis payloads add optional call_success_score and success_score.reasoning (ConversationReasoningModel) and transcript responses add optional reasoned (boolean). Agent prompt and LLM schemas add optional enable_reasoning_summary (boolean).platform_charge, platform_price and platform_usage with per-category breakdown via PlatformCategory and PlatformCategoryUsage.cost_fiat (number, USD).WebhookEventType adds unredacted_transcript and unredacted_audio for webhook subscriptions that need unredacted payloads.UUITransferConfig.data maximum length increases from 256 to 8192 characters for RFC 7433 User-to-User Information on SIP REFER transfers.disableAuth / disable_auth on Speech Engine WebSocket clients. This is intended for integrations that protect the connection through other means, such as IP allowlisting or custom authentication headers, rather than API key authentication.professional_voice_slots_used_in_workspace alongside clarified group-wide professional_voice_slots_used for consolidated billing visibility.slam, scale_down and slide_in.disableAuth on Speech Engine WebSocket clients. Regenerated from the latest OpenAPI schema with music detailed streaming, tool interruption_mode, evaluation scoring modes, conversation reasoning and platform billing fields.disable_auth on Speech Engine WebSocket clients. Regenerated from the latest OpenAPI schema with music detailed streaming, tool interruption_mode, evaluation scoring modes, conversation reasoning and platform billing fields.POST /v1/music/detailed/streamPOST /v1/convai/agents/{agent_id}/simulate-conversation
POST /v1/convai/agents/{agent_id}/simulate-conversation/stream
disable_interruptions in favor of interruption_mode (allow, disable_during_tool, disable_during_tool_and_turn)interruption_mode overrides on MCP and tool override modelsscoring_mode, max_score and score_instructions on evaluation criteriascore on evaluation resultscall_success_score and success_score on conversation analysis payloadsreasoning (ConversationReasoningModel) on transcript and history modelsreasoned (boolean) on transcript responsesenable_reasoning_summary (boolean) on agent prompt and LLM schemasplatform_charge, platform_price and platform_usage on conversation modelscost_fiat (USD) on conversation history metadataunredacted_transcript and unredacted_audio to WebhookEventTypeUUITransferConfig.data max length from 256 to 8192 charactersprofessional_voice_slots_used_in_workspace on subscription-style modelsslam, scale_down and slide_in animation typesGET /v1/convai/agents/{agent_id}/branches/{source_branch_id}/merge-preview) and preview rebased configuration (GET /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase-preview) to inspect merged or rebased agent configuration before committing. Both return MergePreviewResponseModel with the resulting config, overridden_fields, and source_identical_to_target.calls_7d (integer) with seven-day call volume per branch.OAuthConnectionStatus with shared AuthConnectionStatus (active, refresh_failed, revoked, credential_invalid). Bearer, Basic, mTLS, custom header, OAuth, OAuth2 JWT, Slack, URL secret and WhatsApp auth responses add optional status, status_detail and status_updated_at fields.response_filter to trim tool responses before they reach the LLM, with response_filter_mode and response_filters on related override models.uui (UUITransferConfig) for RFC 7433 hex User-to-User Information on SIP REFER transfers.agent_id (string) to assign an agent during number setup.transcribe_on_disabled_interruptions (boolean, default false) to control whether user speech is transcribed when interruptions are disabled.sentiment_analysis. Conversation user models add optional sentiment with frustrated-conversation references.multichannel_output_style (separate default | combined) when use_multi_channel is enabled. Set combined to receive a single transcript with all channels merged and sorted by time instead of per-channel transcripts. Word-level responses include channel_index on each word when multichannel mode is active.language_code behavior: TTS request schemas clarify that unsupported language_code values are ignored rather than rejected, and that language_code is not supported on multilingual_v2 models.POST /v1/workspaces/api-keys/third-party-disabling) for workspace-wide control over whether API key holders can self-disable keys via the third-party disable endpoint. Workspace API key create, patch and response models add optional third_party_disable_allowed (boolean).UpdateBearerAuthRequest for bearer token credential updates.conversation_privacy_manage and synthid_detector. Workspace group models add optional scim_group (string).sendFeedback(like, eventId?) accepts an optional event_id to rate a specific past message. canSendFeedback now reflects connection state so feedback can be sent for any message while the session is live.sendFeedback accepts null as the first argument to clear feedback on an event (score: null).sendFeedback changes from @elevenlabs/client@1.13.0 and @elevenlabs/client@1.14.0 in React hooks.@elevenlabs/client@1.13.0–1.14.0 and @elevenlabs/react@1.8.0–1.9.0.@elevenlabs/client@1.13.0–1.14.0.StateFlow. Deprecated text and agent callbacks in favor of event-id variants.GET /v1/convai/agents/{agent_id}/branches/{source_branch_id}/merge-preview - Preview merged configuration before mergeGET /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase-preview - Preview rebased configuration before rebasePOST /v1/workspaces/api-keys/third-party-disabling - Set workspace third-party API key disabling policyGET /v1/convai/agents/{agent_id}/branches
calls_7d (integer)GET /v1/convai/agents/{agent_id}/branches/{source_branch_id}/merge-preview
MergePreviewResponseModel with merged config, overridden_fields and source_identical_to_targetGET /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase-preview
MergePreviewResponseModel with rebased config previewPOST /v1/speech-to-text
multichannel_output_style (separate | combined) when use_multi_channel is enabledchannel_index per word in multichannel modePOST /v1/workspaces/api-keys/third-party-disabling
PATCH /v1/workspace/auth-connections/{auth_connection_id}
UpdateBearerAuthRequestOAuthConnectionStatus with AuthConnectionStatus (active, refresh_failed, revoked, credential_invalid)status, status_detail and status_updated_at on auth connection response modelsresponse_filter on HTTP and agent tool configsuui (UUITransferConfig) on transfer-related workflow modelstranscribe_on_disabled_interruptions (boolean, default false)agent_id on Twilio, Exotel and SIP trunk import request schemassentiment_analysis on conversation summary typessentiment on conversation user modelslanguage_code is ignored when unsupported and not supported on multilingual_v2third_party_disable_allowed (boolean) on create, patch and response modelsconversation_privacy_manage and synthid_detectorscim_group (string) on workspace group models