Skip to main content
ElevenLabs Documentation Docs

Search documentation

Type to search this documentation.

On this pageOverview

Changelog

  • Sora 2 and Sora 2 Pro retired: OpenAI is discontinuing the Sora API on September 24, 2026. Both models have been removed from the Image & Video model picker and stop generating on that date. Existing generations remain available in your history. Flows and templates that use a Sora node need to be switched to another video model, such as Gemini Omni 1.1 Flash, before they can run again.
  • Seedance 1.5 Pro deprecated: ByteDance retires Seedance 1.5 Pro on November 11, 2026. The model is no longer offered for new generations and will stop working on that date. Use a Seedance 2.0 model instead.
  • Parallel tool calls: Agent prompt configuration now includes enable_parallel_tool_calls (boolean, default true). When enabled, supported models can execute multiple tools in one turn.
  • Agent models: Added gpt-6-astra to the agent LLM options.
  • Alerting: Agent alerting now supports Slack channels alongside PagerDuty and webhook notifiers.
  • Phone number search: Added a cursor-paginated phone number endpoint with filters for provider, outbound support, assigned agent and branch, label and phone number.
  • GPT Image 2.5 models: Image generation now supports gpt-image-2.5-flare and gpt-image-2.5-sunburst. Both models accept up to 10 reference images, quality levels through max, 14 fixed aspect ratios plus auto, and 1K, 2K or 4K output.
  • Cascade timeout: Speech Engine create and update requests now accept cascade_timeout_seconds (number, 2–15, default 4) to control how long ElevenLabs waits for an upstream speech engine before retrying.
  • Multi-context turn boundaries: The is_final_audio_for_turn marker is now emitted after every buffered byte for that turn, including MP3 and Opus output. Clients can use the marker as an exact turn boundary without switching to PCM.
  • v2.69.0 - Added transcriptEdit to the realtime Speech to Text wrapper, with edited text delivered through edited_transcript events. Fixed Speech Engine JWT verification for API keys with data residency suffixes. Added phoneNumbers.listV2 and Flows template methods to list and get templates and list, create and get runs. Regenerated clients and types for GPT Image 2.5, Slack agent alerting, parallel tool calls, gpt-6-astra, service account API key concurrency limits, Music zero retention, conversation filters and MCP tool approval statuses.
  • v2.69.0 - Added transcript_edit to the realtime Speech to Text wrapper, with edited text delivered through edited_transcript events. Fixed Speech Engine JWT verification for API keys with data residency suffixes, and made play raise an error when ffplay fails. Added phone_numbers.list_v2 and Flows template methods to list and get templates and list, create and get runs. Regenerated clients and types for GPT Image 2.5, Slack agent alerting, parallel tool calls, gpt-6-astra, service account API key concurrency limits, Music zero retention, conversation filters and MCP tool approval statuses.
  • v1.3.2 - Added optional --intent metadata to collect feedback on CLI usage. Added elevenlabs feedback missing-capability to report workflows that the CLI does not support.
View API changes

New endpoints

ElevenAgents

  • List phone numbers page - GET /v1/convai/v2/phone-numbers
    • Added optional page_size (integer, 1–1,000, default 100) and cursor (nullable string) pagination parameters.
    • Added optional search, label, phone_number, provider, supports_outbound, agent_id, branch_id, sort_by and sort_direction filters. sort_by accepts label or phone_number; sort_direction defaults to asc.
    • The response contains required phone_numbers (array), optional nullable next_cursor (string) and has_more (boolean, default false).

Updated endpoints

ElevenAgents

  • Create agent, Get agent and Update agent
    • Prompt configuration adds enable_parallel_tool_calls (boolean, default true). Workflow overrides accept a nullable boolean.
    • The LLM enum adds gpt-6-astra, including conversation initiation overrides.
    • Alerting integration notifiers now use integration_type to select pagerduty or slack. Slack notifiers require connection_id and channel_id (strings); channel_id accepts 1–64 characters.
  • List conversations and Resolve conversation reference
    • data_collection_params no longer accepts the missing operator. Use an empty value to match conversations where the field was not collected.
    • An empty value in dynamic_variable_params matches conversations where the variable was not set.
  • Create Speech Engine, Get Speech Engine and Update Speech Engine
    • Added cascade_timeout_seconds (number, 2–15). Create requests default to 4, update requests accept a nullable value and responses require the field.

Image and video

  • Create image generation - POST /v1/flows/image
    • Added request variants for gpt-image-2.5-flare and gpt-image-2.5-sunburst.
    • Both variants require prompt and model_id, accept up to 10 images, and add resolution (1K, 2K or 4K, default 1K).
    • quality accepts low, medium, high, xhigh or max and defaults to high. aspect_ratio accepts auto and 14 fixed ratios and defaults to 16:9.

Dubbing

Knowledge base

  • Create crawl job - POST /v1/convai/knowledge-base/crawl
    • Deprecated max_depth (integer, default 3). The field is now a no-op and no longer has minimum or maximum constraints.
    • Crawl job metadata no longer requires max_depth.

User

Schema changes

Text to Speech

  • Multi-context WebSocket audio and final messages now define is_final_audio_for_turn as occurring after all buffered bytes for the turn have been delivered.
  • Call queueing and hold audio: Added call queueing for agents at their concurrency limit. Queued callers hear hold audio and receive queue_status events until they are admitted or time out. New API methods upload or delete custom hold audio.
  • Test version metadata: Agent test results now identify the agent version they ran against and whether they included draft changes. Invocation summaries also indicate when partial resubmissions ran against different versions.
  • Model and account metadata: Agent LLM configuration now accepts gemini-3.8-flash. WhatsApp account responses identify whether the account uses the Cloud API or coexistence signup flow.
  • Music v2.5 API support: Music endpoints and SDKs now accept music_v2_5. Composition plan generation chunks support up to 6,132 characters, with up to 30 lines of 200 characters each.
  • v2.68.0 - Added methods to upload and delete agent hold audio. Regenerated types for call queueing, procedure references, draft branch creation, RAG query limits, test version metadata, gemini-3.8-flash and music_v2_5.
  • v2.68.0 - Added synchronous and asynchronous methods to upload and delete agent hold audio. Regenerated types for call queueing, procedures, draft branch creation, RAG query limits, test version metadata, gemini-3.8-flash and music_v2_5. The compose_detailed wrapper now accepts every generated music model ID and both prompt- and chunk-based composition plans.
  • v3.3.1 - Reconciles agent messages by response_id instead of event_id, preserving multiple responses around tool calls and preventing streamed parts or corrections from attaching to the wrong message.
  • v1.3.0 - Added optional --intent metadata to generated API commands. Added elevenlabs feedback missing-capability to report workflows that the CLI does not support.
  • @elevenlabs/convai-widget-core@0.18.2 and @elevenlabs/convai-widget-embed@0.18.2 - Fixed duplicate agent replies after tool and procedure calls. Streamed text replies retain Markdown formatting, and voice conversations no longer render unspoken streamed chat parts. The embed package also limits user_activity events to once per second and clears the limit when a session ends.
View API changes

New endpoints

ElevenAgents

  • Upload agent hold audio - POST /v1/convai/agents/{agent_id}/hold-audio
    • Accepts required hold_audio_file (binary) as multipart form data. The file must be MP3 or WAV, up to 40 MB and 180 seconds.
    • Returns required agent_id (string) and hold_audio (AgentHoldAudioConfig). The hold-audio object requires audio_path, audio_url, original_filename (strings), duration_secs (number) and size_bytes (integer).
  • Delete agent hold audio - DELETE /v1/convai/agents/{agent_id}/hold-audio
    • Removes the custom clip so queued callers hear the default hold tone.
    • Returns required agent_id (string).

Updated endpoints

ElevenAgents

  • Create agent, Get agent and Update agent
    • Added optional platform_settings.queueing_config (AgentQueueingConfig) with enabled (boolean, default false) and wait_timeout_seconds (integer, 1–1,800, default 180).
    • Queue configuration responses include read-only nullable hold_audio (AgentHoldAudioConfig). Agent responses also include optional default_hold_audio_url (string).
  • Get conversation - GET /v1/convai/conversations/{conversation_id}
    • Metadata adds optional nullable queue_wait_secs (number). Queue time is excluded from call_duration_secs and billed time.
  • Create agent branch - POST /v1/convai/agents/{agent_id}/branches
    • Added optional include_draft (boolean, default false). When true, a branch created from the branch tip includes the caller's draft procedure set.
  • List procedures and procedure create, get and draft endpoints
    • List items add optional referenced_tool_ids, referenced_kb_ids, referenced_procedure_ids and referenced_dynamic_variables (string arrays).
    • Agent and merge-preview responses add optional procedures, a map keyed by procedure ID.
  • List test invocations - GET /v1/convai/test-invocations
    • Added optional nullable search (string) to filter tests and folders by name.
  • Run tests on agent and Get test invocation
    • Test suite invocation and unit test run responses add optional nullable version_id (string) and optional ran_against_draft (boolean, default false).
    • Invocation summaries also add optional runs_diverged_from_version (boolean, default false).
  • POST /v1/convai/agents/{agent_id}/knowledge-base/rag-query
    • The request body adds optional nullable max_documents_length (integer, 1–50,000) and max_retrieved_rag_chunks_count (integer, 1–20) query-specific overrides.
  • Get WhatsApp account - GET /v1/convai/whatsapp-accounts/{phone_number_id}
    • Added optional account_type (WhatsAppAccountType, default cloud_api). Values are cloud_api and coexistence.
  • Calculate expected LLM usage - POST /v1/convai/agent/{agent_id}/llm-usage/calculate
    • LLMUsageCalculatorLLMResponseModel adds required price_per_message (number).

Music

  • MusicModelID adds music_v2_5 for POST /v1/music/video-to-music, POST /v1/music/plan, Compose music, POST /v1/music/detailed, POST /v1/music/detailed/stream, POST /v1/music/stream, POST /v1/music/upload and POST /v1/music/finetunes.
  • GenerationChunk.text increases maxLength from 6,000 to 6,132 characters for POST /v1/music/plan, POST /v1/music, POST /v1/music/detailed, POST /v1/music/detailed/stream, POST /v1/music/stream and POST /v1/music/upload. Section names can contain 1–100 characters, and chunks can contain up to 30 lines with 200 characters per line.

Schema changes

ElevenAgents

  • Real-time server events add queue_status. Its required queue_status_event.status accepts waiting, admitted or timed_out; timed_out precedes WebSocket close code 4300. Hold audio continues to arrive as regular audio events.
  • The LLM enum adds gemini-3.8-flash, including conversation initiation overrides.
  • Conversation system tool result unions add start_procedure_success, start_procedure_error, end_procedure_success and end_procedure_error.
  • FeaturesUsageCommonModel adds optional freeform_procedure and structured_procedure feature statuses.

Scribe v2 Medical is now generally available. It is a batch speech recognition model specialized for medical and clinical audio, billed at the same rate as Scribe v2.

Pass scribe_v2_medical as model_id on Create transcript. Keyterm prompting, entity detection, speaker diarization, and no-verbatim mode work the same way as Scribe v2.

  • Workspace-wide conversation tickets: Added List workspace tickets to retrieve conversation triage tickets across accessible agents. Filter by status or assignee and use cursor pagination to retrieve up to 100 tickets per page.
  • Dynamic variable conversation filters: List conversations and Text search conversation messages now accept repeatable dynamic_variable_params filters. Use name:op:value with eq, gt, gte, lt or lte; comparison operators require numeric values.
  • Twilio answering machine detection: Outbound telephony and batch call configurations now support optional twilio_machine_detection. Choose enable for an early human-or-machine verdict or detect_message_end to wait for a voicemail greeting to finish. Results arrive through the new answering_machine_detection webhook event.
  • Data collection value constraints: Data collection properties can now use allowed_values to name a dynamic variable containing the permitted values. The previous allowed_values_dynamic_variable field is deprecated.
  • Agent metadata: List agent branches responses now indicate when a draft was created and whether it predates the branch tip. Agent and Speech Engine summaries now require voice_id.
  • Knowledge base source URLs: Agent RAG query chunks now include required nullable source_url, containing the tracked URL for URL documents.
  • Agent response attachments: agent_response WebSocket events now include optional attachments. Each attachment requires url and name and can include mime_type.
  • API key platform limits: Service account API key responses can now include enterprise platform_limits for credits, Professional Voice Clones, and TTS, Dubbing, and Music concurrency.
  • v2.67.0 - Added dynamicVariableParams to conversation listing and text search requests. Regenerated types for Twilio answering machine detection, data collection value constraints, API key platform limits, agent branch draft metadata and knowledge base source URLs.
  • v2.67.0 - Added dynamic_variable_params to synchronous and asynchronous conversation listing and text search methods. Regenerated types for Twilio answering machine detection, data collection value constraints, API key platform limits, agent branch draft metadata and knowledge base source URLs. The real-time text-to-speech client no longer passes the internal omit sentinel to the connection.
  • v1.2.0 - Added the elevenlabs say command and its agent skill, regenerated API command bindings and made eleven_v3 the default TTS model.
View API changes

New endpoints

ElevenAgents

  • List workspace tickets - GET /v1/convai/triage-tickets
    • Lists conversation triage tickets across every agent the caller can access, ordered by most recently created first.
    • Added optional page_size (integer, 1–100, default 100), status (AgentConversationTicketStatus), assignee_user_id (string or unassigned) and cursor (string) query parameters.
    • Returns GetAgentConversationTicketsPageResponseModel.

Updated endpoints

ElevenAgents

  • List conversations - GET /v1/convai/conversations
    • Added optional nullable dynamic_variable_params (repeatable string array). Each value uses name:op:value, where op is eq, gt, gte, lt or lte.
  • Text search conversation messages - GET /v1/convai/conversations/messages/text-search
    • Added optional nullable dynamic_variable_params (repeatable string array) with the same syntax.
  • Twilio outbound call, SIP trunk outbound call, Exotel outbound call and Submit batch calling
    • telephony_call_config now uses separate input and output schemas.
    • Added optional nullable twilio_machine_detection (TwilioMachineDetectionConfig). Its mode accepts enable or detect_message_end and defaults to enable. The setting is ignored for non-Twilio providers and inbound calls.
  • Import phone number - POST /v1/convai/phone-numbers
    • Added optional nullable account_auth_token (string) for Twilio API key imports to validate inbound webhook signatures.

Schema changes

ElevenAgents

  • WebhookEventType adds answering_machine_detection.
  • AgentBranchSummary adds optional nullable draft_created_at (integer) and optional draft_is_behind_tip (boolean, default false).
  • AgentKnowledgeBaseRagChunkResponseModel adds required nullable source_url (string).
  • AgentSummaryResponseModel and SpeechEngineSummaryResponse add required voice_id (string).
  • AnalysisProperty adds optional nullable name (string) and allowed_values (AllowedValues). LiteralJsonSchemaProperty also adds allowed_values. Both deprecate allowed_values_dynamic_variable.
  • DataCollectionResultCommonModel adds optional nullable name (string).
  • WorkspaceApiKeyResponseModel adds optional nullable platform_limits (PlatformLimits).
  • MCP tool Icon adds optional nullable theme (light or dark).
  • SMBToolConfig adds send_custom_email, create_service_quote_request and create_product_quote_request parameter variants.
  • Webhook query parameter schemas and telephony call configuration now use separate input and output models.
  • agent_response WebSocket events add optional attachments (array). Each item requires url and name (strings) and accepts optional mime_type (string).

ElevenCreative

  • ReferenceVideo.studio_clip now uses StudioClipLocator instead of StudioClipReference. The fields and wire format are unchanged.
  • Phone keypad input: Agent conversation configuration now supports optional dtmf_input_settings for DTMF input. Configure the digit timeout, use # as a terminator and redact keypad entries from transcripts, logs and analysis.
  • Conversation attachment history: Get conversation transcript entries now include file_inputs, an array containing every attached file's ID, name, MIME type and URL.
  • Agent tag filtering: List agents now accepts an optional tags query parameter. Repeat the parameter to match agents with any of the supplied tags.
  • Batch campaign context: Get conversation now identifies batch calls with nullable campaign metadata containing the required campaign_id and campaign_lead_id.
  • Project pagination behavior: List Dubbing projects and List language targets now clamp page_size to 1–100. Project status filtering includes queued, and both endpoints document using next_cursor to retrieve the next page.
  • v2.66.0 - Added fileIds to sendMultimodalMessage, allowing one message to include multiple file attachments.
  • v2.66.0 - Added file_ids to send_multimodal_message, allowing one message to include multiple file attachments.
  • v0.12.2 - Preserved the onUnhandledClientToolCall callback when wiring session events. Unhandled client tool calls that expect a response now receive the automatic error response instead of remaining unresolved.
  • v1.1.0 - Regenerated API command bindings and added command-scoped request attribution for ElevenAgents workflows. These commands append cmd/<command> to the CLI User-Agent, allowing requests from workflows such as agents push and agents create to be distinguished.
View API changes

Updated endpoints

ElevenAgents

  • List agents - GET /v1/convai/agents
    • Added optional nullable tags (string array). Repeat the query parameter to match any supplied tag.
  • Create agent, Get agent and Update agent
    • Added optional nullable conversation_config.conversation.dtmf_input_settings (DTMFInputConfig). It supports dtmf_input_timeout (number, 0.5–10 seconds, default 2), hash_terminator (boolean, default true) and redact_input (boolean, default false).
    • Added optional sip_refer_play_dialtone (boolean, default true) to phone-number transfer configuration. Set it to false to keep the original call leg silent while a SIP REFER transfer completes.
    • Start- and end-procedure system tools now accept either a ProcedureVersionRef or a ProcedureDraftRef. Draft references require procedure_id (string) and set version_id to null.
  • Get conversation - GET /v1/convai/conversations/{conversation_id}
    • Added file_inputs (array of ConversationHistoryTranscriptFileInputResponseModel) to transcript entries. Each item requires file_id, original_filename, mime_type and file_url (strings).
    • Added optional nullable campaign (BatchCallingCampaignInformation) to batch-call metadata. The object requires campaign_id and campaign_lead_id (strings).
    • Added dtmf to ChatSourceMedium.
  • Conversation triage ticket issue types add incorrect_information, documentation_gap, platform_bug and wrong_action.

Music

  • Generate music detailed (POST /v1/music/detailed) and Stream music with details (POST /v1/music/detailed/stream)
    • Added optional with_waveform_visual (boolean, default false).
    • Detailed responses add nullable waveform_visual (integer array), sampled four times per second from -1000 to 1000.
  • Upload music - POST /v1/music/upload
    • Added optional with_waveform_visual (boolean, default false) and nullable waveform_visual (integer array) in the response.

ElevenCreative

Dubbing

  • List Dubbing projects - GET /v1/dubbing/project
    • page_size remains an optional integer with default 20, but values are now clamped to 1–100 instead of rejected.
    • The status filter now documents queued, preparing, ready and failed.
    • Pass the preceding response's next_cursor in cursor; omit it for the first page.
  • List language targets - GET /v1/dubbing/project/{project_id}/language
    • page_size remains an optional integer with default 20, but values are now clamped to 1–100 instead of rejected.
    • The status filter supports queued, processing, completed, stale and failed.
    • Pass the preceding response's next_cursor in cursor; omit it for the first page.

Schema changes

Workspace

  • PendingSubscriptionSwitchResponseModel.next_tier adds grant.

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.

  • Conversation triage tickets: Added APIs for creating tickets about agent performance, creating manual follow-up tickets, listing tickets, assigning workspace members, updating status and assignee, and adding ticket-level or turn-level comments.
  • Conversation observability: Realtime clients can receive a context_usage event after each completed agent turn. The event reports the model, prompt token count and model context limit.
  • v2.65.0 - Added clients and types for conversation triage tickets and lightweight conversation summaries. Conversation APIs add procedure, invalid-tool-call and sort filters; procedure APIs add agent version selection; topic APIs add evaluation detail controls and frustration sorting. The release also adds knowledge base refresh frequency, test environment and alerting integration fields, plus realtime Dubbing message types.
  • v2.65.0 - Added clients and types for conversation triage tickets and lightweight conversation summaries. Conversation APIs add procedure, invalid-tool-call and sort filters; procedure APIs add agent version selection; topic APIs add evaluation detail controls and frustration sorting. The release also adds knowledge base refresh frequency, test environment and alerting integration fields, and preserves repeated multipart fields for Speech to Text keyterms and Dubbing webhook_ids.
  • v3.3.0 - Added typed client error parsing, 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.
View API changes

New Endpoints

ElevenAgents

  • Added nine conversation triage ticket endpoints:
    • Create conversation ticket - 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.
    • List tickets - GET /v1/convai/agents/{agent_id}/triage-tickets, with cursor pagination.
    • Create manual ticket - POST /v1/convai/agents/{agent_id}/triage-tickets. The request requires qa_comment (string, 1–10,000 characters).
    • List assignable users - 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 ticket - GET /v1/convai/triage-tickets/{agentqa_ticket_id}.
    • Update ticket - PATCH /v1/convai/triage-tickets/{agentqa_ticket_id}. The request accepts optional status and nullable assignee_user_id.
    • Delete ticket - DELETE /v1/convai/triage-tickets/{agentqa_ticket_id}.
    • Add comment - POST /v1/convai/triage-tickets/{agentqa_ticket_id}/comments. The request requires comment (string, 1–10,000 characters).
    • Add turn comment - 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).

Updated Endpoints

ElevenAgents

  • Get signed URL - GET /v1/convai/conversation/get-signed-url
    • Added optional debug_events_request (boolean, default false). Debug events require editor access to the agent.
  • Get WebRTC token - GET /v1/convai/conversation/token
    • Added optional debug_events_request (boolean, default false). The legacy GET /v1/convai/conversation/get_signed_url route accepts the same parameter.
  • List conversations - GET /v1/convai/conversations
    • Added optional triggered_procedure_ids (nullable string array, maximum 50) to match conversations where any specified procedure ran.
    • Added optional include_invalid_tool_calls (boolean, default false) to include tool calls that did not run.
    • Added optional sort_direction (asc or desc, default desc) for call start time.
  • Text search conversation messages - GET /v1/convai/conversations/messages/text-search
    • Added optional triggered_procedure_ids (nullable string array, maximum 50).
    • Added optional include_invalid_tool_calls (boolean, default false).
  • Get agent conversation topics - GET /v1/convai/agents/{agent_id}/topics
    • Added optional include_evaluation_criteria (boolean, default true).
    • Added frustration to sort_by.
    • Topic responses add nullable 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.
  • List procedures (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})
    • Added optional nullable agent_version_id (string) to retrieve procedures from a specific agent version.
  • Create test and Update test
    • Added optional nullable 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.
  • Create URL document, Create crawl job and Create folder
    • Added optional nullable minimum_frequency_days (integer, 1–180) for auto-sync. The default is 7, and a stricter parent-folder frequency takes precedence.

Music

  • List Music Finetunes - GET /v1/music/finetunes
    • Increased the maximum page_size from 100 to 150. The default remains 50.

Schema Changes

ElevenAgents

  • Agent update requests add optional nullable procedures (object<string, ProcedureVersionRef>). Each value requires procedure_id and version_id (strings). An empty object removes all procedures.
  • Conversation initiation configuration adds 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.
  • Soft-timeout overrides add optional nullable additional_soft_timeout_messages (string array).
  • Constant values in analysis and schema override models now accept null.
  • Widget configuration defaults for mic_muting_enabled and transcript_enabled changed from false to true. Set them explicitly to false to preserve the previous behavior.

Workspace

  • Get user responses removed 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.
  • Direct publishing responses add optional nullable restricted_to_user_email_domains (string array).
  • Pending subscription switch responses add go to next_tier.
  • Local MCP server deprecated: The local ElevenLabs MCP server and MCP player are deprecated in favor of the hosted MCP server. Both repositories are archived and will no longer receive updates. The hosted server is available at 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.
  • Image, video and speech generation APIs: New asynchronous Flows APIs create, list and retrieve video, image and speech generations. Generation responses expose pending, generating, completed and failed states, and requests can include a webhook target for completion events.
  • Reusable media assets: New asset APIs upload, list, retrieve and delete workspace media. Image, video and audio references can use an uploaded asset, a previous generation or inline base64 data, allowing generation jobs to be chained. See References and assets.
  • Lightweight conversation summaries: Get conversation summary returns the generated title, transcript summary, call outcome and plain user or agent messages without loading the full transcript. The optional 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.
  • Conversation topic pagination and sorting: Get agent conversation topics adds optional cursor pagination and sorting. Use 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.
  • Concurrency wait queues: Agent platform settings add optional 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).
  • Turn and workflow controls: Turn configuration adds 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.
  • Background audio defaults: 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.
  • v2.64.0 - Added 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.
  • v2.64.0 - Added assets and Flows clients for asynchronous video, image and speech generation, plus merge_with_default_ignore_terms in turn configuration. On-prem session setup adds extra_setup_config for passing additional setup-message fields.
View API changes

New Endpoints

ElevenCreative

ElevenAgents

  • Get conversation summary - GET /v1/convai/conversations/{conversation_id}/summary
    • Accepts optional max_messages (integer, 1–200, default 40)
    • Returns GetConversationSummaryResponseModel with required conversation_id, agent_id, status, message_count and note
    • Plain messages contain only role (user or agent) and message; conversations over the limit return messages_omitted: true

Updated Endpoints

ElevenAgents

  • Get live count - GET /v1/convai/analytics/live-count
    • Added optional agent_ids (string array, maximum 25), which takes precedence over agent_id
  • Get agent conversation topics - GET /v1/convai/agents/{agent_id}/topics
    • Added optional page_size (integer, 1–100), cursor (string), sort_by (conversations, sentiment or success_rate) and sort_direction (asc or desc)
    • Responses add has_more (boolean, default false) and nullable next_cursor (string)

Schema Changes

ElevenAgents

  • Added optional 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)
  • Added optional schema_overrides to WorkflowToolLocator; per-node constant, dynamic variable, LLM or omit overrides take precedence over tool-level overrides
  • Added merge_with_default_ignore_terms (boolean, default false) to turn configuration and related override schemas
  • Added disable_until_first_user_message (boolean, default false) to soft-timeout configuration and related override schemas
  • Added required read-only status (success, error, blocked or skipped) to realtime agent tool response events
  • Added avaya to conversation initiation sources and avaya_api_key to authorization methods
  • Added gemini-3.6-flash and gemini-3.7-flash to supported agent LLM values
  • Changed BackgroundSoundConfig.volume default from 0.6 to 0.15 and crossfade_loop default from false to true
  • Removed CustomToolApiSchemaConfig; generated SDK users importing this type must remove the import
  • Removed scim_external_id from WorkspaceGroupResponseModel

Dubbing 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.

  • Conversation guardrail filters: List conversations adds optional 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).
  • Branch divergence status: List agent branches adds optional include_commit_status (boolean, default false). When enabled, branch summaries include nullable commits_ahead, commits_behind and merged_into_branch_id fields.
  • Conversation and tool controls: Client overrides now support 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.
  • Post-call analysis usage: Conversation charging adds an analysis breakdown with per-feature running totals and run snapshots. Transcript messages add triggered_guardrails, and conversation turns add optional producing_llm.
  • Voice search filters: Get all voices v2 adds optional gender, age, language, accent, use_cases, min_notice_period_days, include_custom_rates, include_live_moderated and high_quality query parameters.
  • v2.63.0 - Added realtime Speech to Text options for secondary languages, language and entity detection, background audio filtering, logging and single-use token authentication. Added final transcript, entity and invalid request events; fixed unaccepted terms dispatch, duplicate audio_format parameters and inclusive VAD bounds.
  • v2.62.0 - Added Dubbing bulk transcript update methods and DubbingRegenerateResponse; added conversation guardrail filters, agent branch commit status, agent alerting and MCP requestMeta support. Language target creation no longer accepts modelId.
  • v2.61.0 - Added conversation hierarchy filtering, post-call analysis charging, triggered guardrail metadata, branch merge conflict details, DTMF input redaction and Dubbing transcript uploads. Removed exported OpenAI realtime session types and run_subagent_* tool-result variants.
  • v2.63.0 - Added realtime Speech to Text options for secondary languages, language and entity detection, background audio filtering, logging and single-use token authentication. Added final transcript, entity and invalid request events; fixed unaccepted terms dispatch and now rejects connections without an API key or token.
  • v2.62.0 - Added Dubbing 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.
  • v2.61.0 - Added 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.
  • v0.12.1 - Fixed intentional text-only session disconnects being reported as ConversationStatus.ERROR.
  • v0.12.0 - Added 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.
  • v0.12.2 - Fixed an issue with path traversal.
View API changes

New Endpoints

Dubbing

  • Batch update source segments - PATCH /v1/dubbing/project/{project_id}/transcript/segments
    • Requires DubbingBulkSegmentUpdateRequest
    • Atomically updates source segment text, speaker or timing
    • Returns DubbingBulkSourceSegmentUpdateResponse with the updated segments and revision
  • Batch update target segments - PATCH /v1/dubbing/project/{project_id}/language/{language_id}/transcript/segments
    • Requires DubbingBulkTargetSegmentUpdateRequest
    • Atomically updates translations for multiple target segments
    • Returns DubbingBulkTargetSegmentUpdateResponse with the updated segments and revision

Updated Endpoints

ElevenAgents

  • List conversations - GET /v1/convai/conversations
    • Added optional parent_conversation_id (string)
    • Added optional repeatable guardrail_types (GuardrailType[]) and custom_guardrail_names (string array)
  • List agent branches - GET /v1/convai/agents/{agent_id}/branches
    • Added optional include_commit_status (boolean, default false)
    • Branch summaries add nullable commits_ahead (integer), commits_behind (integer) and merged_into_branch_id (string)

Voices

  • Get all voices v2 - GET /v2/voices
    • Added optional gender, age and accent (string) filters
    • Added optional language and use_cases (string array) filters
    • Added optional min_notice_period_days (integer), include_custom_rates, include_live_moderated and high_quality (boolean) filters

Schema Changes

ElevenAgents

  • Client override schemas add max_duration_seconds (integer) and pronunciation_dictionary_locators (array)
  • MCP server input and output schemas add request_meta maps
  • Agent platform settings add alerting; language detection adds only_at_conversation_start (boolean)
  • AnalysisCharging.last_run is now required and non-nullable; running totals add required runs (integer)
  • RAG chunk responses now require content_format and document_type
  • Test-specific tool mocks: Agent simulations and unit tests can now define tool_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.
  • Translated workflow messages: Literal Say node messages add 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.
  • Conversation version filters: List conversations and Text search conversation messages add the optional version_id query parameter (string) to filter results by agent version.
  • Knowledge base system tool: Agent configuration adds a 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.
  • Agent voice activity detection: Agent create, update, response and workflow-override schemas add vad configuration. VADConfig currently supports background_voice_detection (boolean, default false).
  • WebSocket custom LLMs: CustomLLMAPIType adds websocket.
  • File memory controls: Widget file-input configuration adds 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.
  • DTMF input redaction: 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.
  • Realtime entity detection: Scribe v2 Realtime adds the 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.
  • Voice replication across data residencies: Added 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.
  • Character metadata: Character responses add recommended_voice_ids (string array, default []), metadata adds nullable role (CharacterRole), and CharacterAge replaces middle-aged with middle_aged.
  • v0.12.1 - Includes the v0.11 tool updates and a dependency refresh that resolves 44 security alerts.
  • v0.11.0 - Added 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.
View API changes

New Endpoints

Voices

  • POST /v1/voices/{voice_id}/replicate-to-isolated-environment
    • Replicates an Instant Voice Clone or Voice Design voice into another workspace's isolated environment
    • Requires target_workspace_id (string)
    • Accepts optional preserve_voice_id (boolean, default true)
    • Returns required voice_id (string)

Updated Endpoints

ElevenAgents

  • List conversations - GET /v1/convai/conversations
    • Added optional version_id (string) query parameter
  • Text search conversation messages - GET /v1/convai/conversations/messages/text-search
    • Added optional version_id (string) query parameter
  • POST /v1/convai/agents/{agent_id}/knowledge-base/rag-query
    • Added optional use_agent_defaults (boolean, default true) request field

Schema Changes

ElevenAgents

  • Simulation and unit-test payloads add optional tool_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 output
  • Agent configuration adds knowledge_base (KnowledgeBaseToolConfig) and vad (VADConfig)
  • CustomLLMAPIType adds websocket
  • FileInputConfig adds max_files_in_memory (integer, 1–30, default 10)
  • DTMFInputConfig adds optional redact_input (boolean, default false)
  • Realtime agent configuration now defaults to eleven_realtime_v1_mini

Voices

  • Character responses add recommended_voice_ids (string array, default [])
  • Character metadata adds nullable role (CharacterRole)
  • Breaking: CharacterAge replaces middle-aged with middle_aged; clients sending the old value must migrate

Text to Speech

  • Breaking: removed AudioFilterId and audio_filter from ElevenAgents Text to Speech configuration schemas
  • WhatsApp branch and environment overrides: Outbound WhatsApp messages and outbound calls now honor branch_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.
  • Procedure APIs: Added eight public, branch-scoped operations for managing procedures. You can create, list, retrieve and remove procedures; create, retrieve or discard draft changes; and compile procedure drafts into an agent workflow. Procedure creation accepts name, content, type and trigger. An empty trigger creates a sub-procedure, while an omitted or null trigger is derived from the procedure content.
  • Knowledge base crawl jobs: Added APIs to create, list, inspect and cancel crawl jobs. Create requests require url (string) and support crawl depth, page limits, URL patterns, sitemap URLs, folder placement, automatic synchronization and removal of unavailable documents.
  • Bulk knowledge base management: Added bulk dependency checks and bulk deletion for 1–20 unique document or folder IDs. Dependency checks support pagination and dependent_type; deletion returns an independent success or failure for each ID. Setting force: true also removes dependencies and recursively deletes non-empty folders.
  • Batch call result export: Added Export batch call results to download recipients and conversation results from a terminal batch as CSV.
  • Conversation filters and analysis data: List conversations and Text search conversation messages add optional 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.
  • Referenced analysis configuration: Agent platform settings add the optional, nullable 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.
  • Procedure dependency metadata: Procedure references add trigger (string) and arrays for referenced_tool_ids, referenced_kb_ids, referenced_procedure_ids and referenced_dynamic_variables.
  • WebRTC token response: Get WebRTC token responses now require conversation_id (string) in addition to token. This is a breaking schema change for clients that validate or deserialize the response shape.
  • Knowledge base RAG results: KnowledgeBaseRagToolResultModel adds chunks (KnowledgeBaseRagChunkModel[]) for RAG-result-in-tool-result mode.
  • Draft project status: ProjectCreationMetaResponseModel.status adds draft. The project creation type now uses the shared ProjectCreationMetaType enum with the same existing values.
  • Voice accents: Added 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.
  • Webhook usage reporting: WebhookUsageType adds Flows.
  • v2.60.0 - Added 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.
  • v2.60.0 - Added the voice accents, ElevenAgents procedure, knowledge base crawl job and bulk management APIs from the latest schema. Also fixed AsyncConversation startup so it no longer blocks, and corrected list-of-primitive multipart fields to be sent as repeated form fields.
View API changes

New Endpoints

ElevenAgents

  • POST /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures
    • Creates a procedure and returns its procedure_id (string)
    • Accepts optional 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
    • Lists branch procedures with procedure_id, version_id, name, type, trigger and has_draft
    • Excludes procedure content; retrieve an individual procedure to read its content
  • GET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}
    • Accepts optional version_id (string); otherwise returns the version at the branch head
    • Returns name, content, type and trigger
  • DELETE /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}
    • Removes the procedure from the branch's draft working set
  • GET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}/draft
    • Returns the current procedure draft
  • PATCH /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}/draft
    • Creates or updates a draft
    • Requires 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
    • Discards draft changes and resets the procedure to its committed version
  • POST /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/compile
    • Compiles procedure drafts into an AgentWorkflowResponseModel
  • Create crawl job - POST /v1/convai/knowledge-base/crawl
    • Requires url (string)
    • Accepts optional 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)
  • List crawl jobs - GET /v1/convai/knowledge-base/crawl
    • Accepts optional include_job_ids (string array), page_size (integer, 1–100, default 30) and cursor (string)
  • Get crawl job - GET /v1/convai/knowledge-base/crawl/{crawl_job_id}
  • Cancel crawl job - POST /v1/convai/knowledge-base/crawl/{crawl_job_id}/cancel
  • Get dependent agents for multiple documents - POST /v1/convai/knowledge-base/dependent-agents
    • Requires document_ids (array of 1–20 unique strings)
    • Accepts optional dependent_type (KnowledgeBaseDependentType, default all), page_size (integer, 1–100, default 30) and cursor (string)
  • Bulk delete knowledge base documents - POST /v1/convai/knowledge-base/bulk-delete
    • Requires document_ids (array of 1–20 unique strings)
    • Accepts optional force (boolean, default false)
    • Returns a success or failure result for each document ID
  • Export batch call results - GET /v1/convai/batch-calling/{batch_id}/export
    • Returns terminal batch recipients and conversation results as CSV

Voices

  • GET /v1/voices/accents
    • Lists the accents available in the shared voice library
    • Accepts optional language (string) and model_id (string) query parameters
    • Each accent returns accent, language, code and name

Updated Endpoints

ElevenAgents

  • List conversations - GET /v1/convai/conversations
    • Added optional visited_agent_ids and visited_agent_branch_ids string array filters, each limited to 50 values
    • Added optional data_collection_ids and evaluation_criteria_ids string arrays to select analysis results for each summary
    • Response summaries add the optional object fields data_collection_results and evaluation_criteria_results, plus the string array tag_ids
  • Text search conversation messages - GET /v1/convai/conversations/messages/text-search
    • Added optional visited_agent_ids and visited_agent_branch_ids string array filters, each limited to 50 values
  • Get WebRTC token - GET /v1/convai/conversation/token
    • Responses now require conversation_id (string)
    • Breaking: strict response validators and deserializers must accept the new required field

Schema Changes

ElevenAgents

  • Agent platform request and response settings add the optional, nullable analysis_items field, typed as AgentAnalysisItems, for referenced evaluation and data-collection configuration
  • Procedure references add trigger (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[])

Studio

  • ProjectCreationMetaResponseModel.status adds draft
  • ProjectCreationMetaResponseModel.type now references the shared ProjectCreationMetaType enum

Workspaces

  • WebhookUsageType adds Flows
  • Music Finetunes API: Added API support for managing Music Finetunes. Five endpoints let you create a Finetune from uploaded audio, list accessible Finetunes, retrieve training status, update metadata and visibility, or delete a Finetune. All music generation SDK methods now expose finetune_id.
  • Resolve external conversation references: Added 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).
  • Query agent knowledge bases: Added 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.
  • Knowledge base content formats: Knowledge base file, text and URL responses add optional content_format (html | markdown, default html).
  • Agent voice configuration: TTS override schemas add optional client-overridable model_id (TTSConversationalModel). The default for enable_phoneme_tags changes from false to true.
  • Faster backup LLM cascade: The default cascade_timeout_seconds changes from 8 to 4 seconds. The allowed range remains 2–15 seconds.
  • Tool parameter value sources: Object tool parameters can now use dynamic_variable, constant_value or is_omitted, matching existing scalar and array controls. Constant schema overrides now accept arbitrary arrays and objects.
  • Full-response guardrails: Custom guardrails add optional evaluate_full_response_only (boolean, default false) to evaluate the complete non-TTS response once. This option requires blocking mode.
  • Twilio call recording: Telephony call configuration adds optional twilio_call_recording_enabled (boolean, default false). Recordings are stored in the connected Twilio account and the setting is ignored by other providers.
  • Widget file-upload text: Widget text configuration adds optional labels and error messages for attaching and removing files, upload failures, unsupported types, oversized files, file-count limits and the typing indicator.
  • Knowledge base sync status: Knowledge base file responses add optional auto_sync_info and refresh_status (FileRefreshStatus). Folder responses add required document_count (integer), a recursive count of non-folder documents capped at 1000.
  • Conversation text search filters: Text search conversation messages adds optional exclude_statuses and termination_reasons array query parameters.
  • LLM options: Agent LLM configuration adds gpt-5.6-sol, gpt-5.6-terra and gpt-5.6-luna. LLMReasoningEffort adds max.
  • WhatsApp typing indicators: WhatsApp account request and response schemas add optional enable_typing_indicator (boolean).
  • Single-use batch authentication: Convert speech to text adds optional 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.
  • Realtime client reliability: @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.
  • Webhook event subscriptions: Update workspace webhook requests add optional events (WorkspaceWebhookEventType[]) with voice_library_removal_notice, speech_to_text and agent_qa. Webhook responses can return the subscribed event list.
  • Usage analytics dimensions: Get workspace usage adds surface and actor to the group_by values.
  • Clear service account limits: Update service account API key accepts character_limit: "clear" to remove a monthly character limit, alongside "no_update" and integer values.
  • Alerting webhook references: Alerting webhook notifier schemas now identify a workspace webhook with required webhook_id (string) instead of embedding url, method and headers.
  • v2.59.0 - Added 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.
  • v2.59.0 - Added Music Finetunes and conversation reference resolution from the latest API schema. OnPremInitiationData also adds typed post_call_transcription_webhook and post_call_audio_webhook configurations with optional hmac_secret for signed post-call webhooks.
  • v0.11.1 - Prevented R8 and ProGuard from obfuscating outgoing WebSocket and WebRTC event fields such as text and type.
  • @elevenlabs/cli@0.5.6 - Updated default agent templates to use scribe_realtime instead of the removed elevenlabs ASR provider. Minimal templates continue to use the server default.
View API changes

New Endpoints

Music

  • List Music Finetunes - GET /v1/music/finetunes
    • Supports cursor pagination, visibility and creator filters, and sorting by creation time or name
  • Create Music Finetune - POST /v1/music/finetunes
    • Requires name and primary_genre
    • Accepts up to 50 audio files, tags, visibility and model_id
  • Get Music Finetune - GET /v1/music/finetunes/{finetune_id}
  • Update Music Finetune - PATCH /v1/music/finetunes/{finetune_id}
    • Updates name, tags, primary_genre or visibility
  • Delete Music Finetune - DELETE /v1/music/finetunes/{finetune_id}

ElevenAgents

  • GET /v1/convai/conversations/resolve
    • Requires agent_id (string) and reference (string) query parameters
    • Returns GetConversationResponseModel
  • POST /v1/convai/agents/{agent_id}/knowledge-base/rag-query
    • Requires query (string) in the request body
    • Accepts optional branch_id (string) query parameter
    • Returns AgentKnowledgeBaseRagQueryResponseModel
    • Excluded from generated SDKs

Updated Endpoints

ElevenAgents

Speech to Text

  • Convert speech to text - POST /v1/speech-to-text
    • Added optional token (string) query parameter for a single-use batch Scribe token

Text to Speech

Workspaces

  • Update workspace webhook - PATCH /v1/workspace/webhooks/{webhook_id}
    • Added optional events (WorkspaceWebhookEventType[]) request field
  • Get workspace usage - POST /v1/workspace/analytics/query/usage-by-product-over-time
    • Added surface and actor to the optional group_by array
  • Update service account API key - PATCH /v1/service-accounts/{service_account_user_id}/api-keys/{api_key_id}
    • Added "clear" to the optional character_limit field

Schema Changes

ElevenAgents

  • ElevenAgents knowledge base response schemas add optional content_format (html | markdown, default html)
  • Knowledge base file responses add optional auto_sync_info and refresh_status (FileRefreshStatus)
  • Knowledge base folder responses add required document_count (integer)
  • Agent TTS override schemas add optional model_id (TTSConversationalModel)
  • Agent TTS enable_phoneme_tags now defaults to true instead of false
  • Backup LLM cascade_timeout_seconds now defaults to 4 instead of 8 seconds
  • Agent LLM configuration adds gpt-5.6-sol, gpt-5.6-terra and gpt-5.6-luna; LLMReasoningEffort adds max
  • Custom guardrails add optional evaluate_full_response_only (boolean, default false)
  • Telephony call configuration adds optional twilio_call_recording_enabled (boolean, default false)
  • Object tool parameters add dynamic_variable, constant_value and is_omitted; constant overrides accept arbitrary array and object values
  • Widget text configuration adds optional file-upload and typing-indicator labels
  • WhatsApp account schemas add optional enable_typing_indicator (boolean)
  • Simulation and testing schemas add AutoGenerationMetadata and SimulationLibrarySettings

Music

  • Added Music Finetune request, response, pagination, visibility, creator, status and failure-reason schemas
  • All Music generation request schemas expose finetune_id to generated SDKs

Workspaces

  • Workspace webhook request and response schemas add optional events (WorkspaceWebhookEventType[])
  • Alerting webhook notifier schemas use required webhook_id (string) instead of url, method and headers
  • Per-agent sentiment analysis: Platform settings add optional sentiment_analysis (SentimentAnalysisSettings) for post-call sentiment scoring configuration per agent.
  • Auto-translate transcripts: Platform settings add optional auto_translate_transcript_to_app_language (boolean) to translate conversation transcripts to the viewer's app language in history.
  • Nested agent transfers: Workflows add push, pop and replace operations for nested agent transfers, with enable_nesting and return_when_nested controls for returning to a parent workflow.
  • Backchannel detection: Transcript user-turn models add optional ignored_as_backchannel (boolean) to mark utterances filtered as backchannels.
  • Auxiliary conversation audio: Get conversation responses add required has_auxiliary_audio (boolean) alongside existing audio flags.
  • MCP environment scoping: MCP server and tool routes add optional environment query parameter (defaults to production) on list tools, get tool, create tool config and update tool config endpoints.
  • Tool call sound override: Tool and MCP override schemas allow tool_call_sound: "off" to silence per-tool call sounds while inheriting server defaults when unset.
  • Twilio SMS routing: Twilio phone-number import requests add optional enable_sms (boolean, default on) to control inbound SMS routing during number setup.
  • User sentiment sorting: List users adds optional sort_direction and supports sorting by average_sentiment_score.
  • Knowledge base external sync: External sync schemas rename 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.
  • TTS latency setting deprecation: optimize_streaming_latency on agent TTS settings is marked deprecated and documented as a no-op.
  • Create service accounts: Added Create service account (POST /v1/service-accounts) with optional default_sharing_groups (DefaultSharingGroupConfig) for programmatic service-account provisioning.
  • List workspace members: Added Get workspace members (GET /v1/workspace/members) returning WorkspaceMemberResponseModel entries with user id, email, seat status, owner and locked flags. Service accounts are excluded.
  • Invite credit caps: Workspace invite payloads (single and bulk) add optional usage_limit for a monthly credit cap on invitees.
  • v2.57.0 - Regenerated from the latest OpenAPI schema with 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.
  • v2.58.0 - Regenerated from the latest OpenAPI schema with service account creation, workspace member listing, invite usage_limit, conversation has_auxiliary_audio, and multi-context text-to-dialogue WebSocket message types.
  • v2.57.0 - Regenerated from the latest OpenAPI schema with 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.
  • v2.58.0 - Regenerated from the latest OpenAPI schema with service account creation, workspace member listing, invite usage_limit, conversation has_auxiliary_audio, and multi-context text-to-dialogue WebSocket message types.
View API changes

New Endpoints

Workspaces

Updated Endpoints

ElevenAgents

  • Get conversation - GET /v1/convai/conversations/{conversation_id}
    • Added required has_auxiliary_audio (boolean) to response
  • List users - GET /v1/convai/users
    • Added optional sort_direction query parameter
    • Added average_sentiment_score as a sort option
  • Get tool - GET /v1/convai/tools/{tool_id}
    • Added optional environment query parameter
  • List MCP server tools - GET /v1/convai/mcp-servers/{mcp_server_id}/tools
    • Added optional environment query parameter
  • Create MCP tool config - POST /v1/convai/mcp-servers/{mcp_server_id}/tool-configs
    • Added optional environment query parameter
  • Update MCP tool config - PATCH /v1/convai/mcp-servers/{mcp_server_id}/tool-configs/{tool_name}
    • Added optional environment query parameter

Workspaces

  • Invite user - POST /v1/workspace/invites/add
    • Added optional usage_limit for monthly invitee credit cap
  • Invite multiple users - POST /v1/workspace/invites/add/bulk
    • Added optional usage_limit for monthly invitee credit cap

Schema Changes

ElevenAgents

  • System tools
    • Added run_subagent (RunSubagentToolConfig) with required agents array
  • Platform settings
    • Added optional sentiment_analysis (SentimentAnalysisSettings)
    • Added optional auto_translate_transcript_to_app_language (boolean)
  • Workflows
    • Added nested AgentTransfer modeling with AgentTransferOp push, pop and replace
    • Added enable_nesting and return_when_nested workflow flags
  • Transcripts
    • Added optional ignored_as_backchannel (boolean) on user-turn models
  • Tools and MCP
    • Added tool_call_sound: "off" override support on tool config models
    • Deprecated optimize_streaming_latency on TTS agent settings (no-op)
  • Telephony
    • Added optional enable_sms (boolean) on Twilio phone-number import requests
  • Knowledge base
    • Renamed ExternalSyncType to ExternalSyncProvider
    • Added KbExternalSyncJob, sync job trigger and type enums
    • Added optional active_sync_job on folder responses
  • Sentiment
    • Expanded SentimentAggregate with recent-window counts and average scores

Workspaces

  • Service accounts
    • Added WorkspaceCreateServiceAccountResponseModel for create responses
    • Added optional default_sharing_groups on create requests
  • Members
    • Added WorkspaceMemberResponseModel for list responses
  • Invites
    • Added optional usage_limit on single and bulk invite request bodies
  • Stream music with details: Added Stream music with details (POST /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.
  • Simulate conversation deprecation: Simulate conversation and Stream simulate conversation are deprecated in favor of Create test and Run tests on the agent.
  • Tool interruption mode: 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.
  • Numeric evaluation scoring: Evaluation criteria schemas add optional 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.
  • Conversation reasoning: Transcript and history models add optional reasoning (ConversationReasoningModel) and transcript responses add optional reasoned (boolean). Agent prompt and LLM schemas add optional enable_reasoning_summary (boolean).
  • Conversation platform billing: Conversation-related models add optional platform_charge, platform_price and platform_usage with per-category breakdown via PlatformCategory and PlatformCategoryUsage.
  • Conversation cost metadata: Conversation history metadata adds required read-only cost_fiat (number, USD).
  • Unredacted webhook events: WebhookEventType adds unredacted_transcript and unredacted_audio for webhook subscriptions that need unredacted payloads.
  • Workflow phone transfer UUI limit: UUITransferConfig.data maximum length increases from 256 to 8192 characters for RFC 7433 User-to-User Information on SIP REFER transfers.
  • Optional authentication bypass: JavaScript and Python SDK v2.56.0 add optional 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 slot tracking: Subscription-style models add optional professional_voice_slots_used_in_workspace alongside clarified group-wide professional_voice_slots_used for consolidated billing visibility.
  • Caption styling: Caption style models add blur and border-radius fields. Enter and exit animation enums add slam, scale_down and slide_in.
  • v2.56.0 - Added optional 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.
  • v2.56.0 - Added optional 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.
  • @elevenlabs/cli@0.5.5 - Agent create and update requests are now sent as raw JSON to preserve configuration round-trip fidelity.
View API changes

New Endpoints

Music

Updated Endpoints

ElevenAgents

Schema Changes

ElevenAgents

  • Tools and MCP
    • Deprecated disable_interruptions in favor of interruption_mode (allow, disable_during_tool, disable_during_tool_and_turn)
    • Added per-tool interruption_mode overrides on MCP and tool override models
  • Evaluation and analysis
    • Added optional scoring_mode, max_score and score_instructions on evaluation criteria
    • Added optional numeric score on evaluation results
    • Added optional call_success_score and success_score on conversation analysis payloads
  • Transcripts and reasoning
    • Added optional reasoning (ConversationReasoningModel) on transcript and history models
    • Added optional reasoned (boolean) on transcript responses
    • Added optional enable_reasoning_summary (boolean) on agent prompt and LLM schemas
  • Billing and metadata
    • Added optional platform_charge, platform_price and platform_usage on conversation models
    • Added required read-only cost_fiat (USD) on conversation history metadata
  • Webhooks
    • Added unredacted_transcript and unredacted_audio to WebhookEventType
  • Workflows
    • Increased UUITransferConfig.data max length from 256 to 8192 characters

Workspaces

  • Billing
    • Added optional professional_voice_slots_used_in_workspace on subscription-style models

ElevenCreative Studio

  • Captions
    • Added blur and border-radius fields on caption style models
    • Added slam, scale_down and slide_in animation types
  • Branch merge and rebase previews: Added Preview merged configuration (GET /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.
  • Branch usage metrics: List agent branches branch summary responses add optional calls_7d (integer) with seven-day call volume per branch.
  • Auth connection status: Workspace auth connection response models replace OAuth-only 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.
  • Tool response filtering: HTTP and agent tool configuration schemas add optional response_filter to trim tool responses before they reach the LLM, with response_filter_mode and response_filters on related override models.
  • Workflow phone transfers: Workflow phone-number transfer nodes add optional uui (UUITransferConfig) for RFC 7433 hex User-to-User Information on SIP REFER transfers.
  • Telephony agent assignment: Twilio, Exotel and SIP trunk phone-number import request schemas add optional agent_id (string) to assign an agent during number setup.
  • Turn transcription on disabled interruptions: Turn configuration schemas add optional transcribe_on_disabled_interruptions (boolean, default false) to control whether user speech is transcribed when interruptions are disabled.
  • Conversation sentiment: Conversation summary schemas add optional sentiment_analysis. Conversation user models add optional sentiment with frustrated-conversation references.
  • Combined multichannel output: Convert speech to text adds optional 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.
  • Third-party API key disabling policy: Added Set workspace third-party disabling policy (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).
  • Bearer auth connection updates: Update workspace auth connection request union adds UpdateBearerAuthRequest for bearer token credential updates.
  • Workspace permissions: Permission enums add conversation_privacy_manage and synthid_detector. Workspace group models add optional scim_group (string).
  • v2.55.0 - Regenerated from the latest OpenAPI schema with branch merge and rebase preview clients, branch call-volume metrics, auth connection status fields, tool response filtering types, speech-to-text combined multichannel output, and workspace third-party API key disabling policy.
  • v2.55.0 - Regenerated from the latest OpenAPI schema with branch merge and rebase preview clients, branch call-volume metrics, auth connection status fields, tool response filtering models, speech-to-text combined multichannel output, and workspace third-party API key disabling policy.
  • v0.10.0 - Exposed reconciled message transcript as StateFlow. Deprecated text and agent callbacks in favor of event-id variants.
  • v0.11.0 - Added audio frame callback for per-frame audio inspection during conversations.
  • v3.2.2 - Fixed LiveKit room delegate method implementation for correct room event handling.
View API changes

New Endpoints

ElevenAgents

  • GET /v1/convai/agents/{agent_id}/branches/{source_branch_id}/merge-preview - Preview merged configuration before merge
  • GET /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase-preview - Preview rebased configuration before rebase

Workspaces

  • POST /v1/workspaces/api-keys/third-party-disabling - Set workspace third-party API key disabling policy

Updated Endpoints

ElevenAgents

  • List agent branches - GET /v1/convai/agents/{agent_id}/branches
    • Branch summary responses add optional calls_7d (integer)
  • Preview merged configuration - GET /v1/convai/agents/{agent_id}/branches/{source_branch_id}/merge-preview
    • Returns MergePreviewResponseModel with merged config, overridden_fields and source_identical_to_target
  • Preview rebased configuration - GET /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase-preview
    • Returns MergePreviewResponseModel with rebased config preview

Speech to Text

  • Convert speech to text - POST /v1/speech-to-text
    • Added optional multichannel_output_style (separate | combined) when use_multi_channel is enabled
    • Word-level responses include channel_index per word in multichannel mode

Workspaces

Schema Changes

ElevenAgents

  • Auth connections
    • Replaced OAuthConnectionStatus with AuthConnectionStatus (active, refresh_failed, revoked, credential_invalid)
    • Added optional status, status_detail and status_updated_at on auth connection response models
  • Tools and workflows
    • Added optional response_filter on HTTP and agent tool configs
    • Added optional uui (UUITransferConfig) on transfer-related workflow models
  • Turn configuration
    • Added optional transcribe_on_disabled_interruptions (boolean, default false)
  • Telephony imports
    • Added optional agent_id on Twilio, Exotel and SIP trunk import request schemas
  • Conversation models
    • Added optional sentiment_analysis on conversation summary types
    • Added optional sentiment on conversation user models

Text to Speech

  • Clarified language_code is ignored when unsupported and not supported on multilingual_v2

Workspaces

  • API keys
    • Added optional third_party_disable_allowed (boolean) on create, patch and response models
  • Permissions
    • Added conversation_privacy_manage and synthid_detector
  • Groups
    • Added optional scim_group (string) on workspace group models
  • Branch rebase: Added POST /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase to rebase a branch onto the latest main while preserving branch-specific changes. Agent version parent models add optional rebased_from_version_id (string) to track the source version after a rebase.
  • Conversation product filtering: List conversations and Text search conversation messages add optional conversation_product_type query parameter (agents | speech_engine) to filter results by product. Conversation models introduce ConversationProduct for this distinction.
  • Conversation termination filtering: List conversations adds optional termination_reasons query parameter (array of strings) to filter conversations by how they ended.
  • Per-agent topic discovery: Create agent and Update agent platform settings add optional topic_discovery (TopicDiscoverySettings) for per-agent topic discovery configuration.
  • Background sound configuration: Agent platform and conversation configuration models add optional background_sound (BackgroundSoundConfig) for ambient audio during conversations.
  • Turn interruption ignore terms: Turn configuration schemas add optional interruption_ignore_terms (array of strings) to suppress turn detection on specific phrases.
  • Soft timeout filler randomization: Soft timeout configuration adds optional randomize_fillers (boolean) to shuffle filler messages across soft timeouts. Soft timeout message and LLM prompt override fields now support dynamic variables.
  • Transcript user identifiers: Transcript message models add optional user_identifier (string) on user-authored messages.
  • Simulation success conditions: Agent simulation test schemas add optional success_conditions (array, up to 30 items). The legacy success_condition field is deprecated in favor of the array form.
  • Agent test repeat limit: Run tests on the agent raises the maximum repeat_count from 20 to 50.
  • Tool schema dynamic allowed values: ElevenAgents tool JSON schema properties add optional allowed_values_dynamic_variable (string) for server-verified LLM value picks sourced from dynamic variables.
  • Widget signed URL docs: Get widget updates conversation_signature documentation to reference /v1/convai/conversation/get_signed_url.
  • Higher-quality output formats: Generate music, Generate music detailed and Stream music add mp3_48000_240 and mp3_48000_320 to supported output_format values. When output_format is auto, v2 models now default to mp3_48000_192 instead of mp3_48000_128.
  • Section duration flag clarification: respect_sections_durations applies only with composition_plan on music_v1. On music_v2, section durations are always enforced and this flag is ignored.
  • Composition plan schema split: Music request composition_plan uses a oneOf union of MusicPrompt and CompositionPlan. The former is used for music_v1 composition plans and the latter for music_v2.
  • Project list filters: List dubs adds optional dubbing_statuses, dubbing_models, target_language_codes and creation_sources array query parameters for filtered listing. The order_by parameter now accepts name in addition to created_at.
  • Lock and disable reasons: Workspace and API key models add LockReason and optional disable_reason fields. Workspace group settings add optional scim_frozen (boolean) for SCIM-managed freeze state.
  • Caption animations: Studio caption enter and exit animation enums add pop, slide_up and slide_down.
  • v2.54.0 - Regenerated from the latest OpenAPI schema with branch rebase client support, conversation list and text-search conversation_product_type and termination_reasons filters, dubbing list multi-value filters, music-specific output_format types, topic discovery settings, and removal of coaching-related exported types.
  • v2.53.1 - Restored optional values in DynamicVariablesConfig records that were incorrectly narrowed in v2.53.0.
  • v2.54.0 - Regenerated from the latest OpenAPI schema with branch rebase client support, conversation list and text-search filters, dubbing list multi-value filters, music output format updates, topic discovery settings, and removal of coaching-related exported types. ElevenLabs and AsyncElevenLabs now accept headers and follow_redirects passthrough to the base client.
  • v0.10.0 - Added Music v2 model and endpoints, MCP tool annotations for all 24 tools, Python 3.14 support, Singapore data residency, EU/IN residency shorthand aliases, graceful shutdown handling for client disconnections, and fixes for voice preview creation and output directory path resolution.
View API changes

New Endpoints

ElevenAgents

  • POST /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase - Rebases a branch onto the latest main while preserving branch-specific changes

Updated Endpoints

ElevenAgents

  • List conversations - GET /v1/convai/conversations
    • Added optional conversation_product_type query parameter (agents | speech_engine)
    • Added optional termination_reasons query parameter (array of strings)
  • Text search conversation messages - GET /v1/convai/conversations/messages/text-search
    • Added optional conversation_product_type query parameter (agents | speech_engine)
  • Get widget - GET /v1/convai/agents/{agent_id}/widget
    • Updated conversation_signature documentation to reference /v1/convai/conversation/get_signed_url
  • Run tests on the agent - POST /v1/convai/agents/{agent_id}/run-tests
    • Raised maximum repeat_count from 20 to 50

Dubbing

  • List dubs - GET /v1/dubbing
    • Added optional dubbing_statuses, dubbing_models, target_language_codes and creation_sources query parameters
    • order_by now accepts name in addition to created_at

Music

Schema Changes

ElevenAgents

  • Agent branches and versions
    • Added optional rebased_from_version_id on agent version parent models
  • Platform and conversation configuration
    • Added optional topic_discovery (TopicDiscoverySettings) on platform settings request and response models
    • Added optional background_sound (BackgroundSoundConfig)
  • Turn and timeout configuration
    • Added optional interruption_ignore_terms (array of strings) on turn config schemas
    • Added optional randomize_fillers (boolean) on soft timeout config
  • Transcripts and simulation
    • Added optional user_identifier (string) on transcript user messages
    • Added optional success_conditions (array, max 30); deprecated success_condition
  • Tool JSON schema properties
    • Added optional allowed_values_dynamic_variable (string)

Music

  • Composition plans
    • composition_plan request field uses oneOf (MusicPrompt | CompositionPlan)
    • Clarified respect_sections_durations behavior for music_v1 vs music_v2

Workspaces

  • Added LockReason enum and optional disable_reason fields
  • Added optional scim_frozen (boolean) on workspace group settings

ElevenCreative Studio

  • Caption animation enums add pop, slide_up and slide_down

Removed Schemas

ElevenAgents

  • Removed coaching-related settings schemas (CoachedAgentSettings, CoachingAgentSettings, NoCoachingSettings)

Music v2 is now available via the ElevenLabs API. Set model_id to music_v2 on Generate music, Stream music, Generate music detailed and Upload music to use the new model. Music v2 introduces chunk-based composition plans built from GenerationChunk and AudioRefChunk segments, giving you finer control over structure, pacing and arrangement than the prompt-based music_v1 flow.

Use music_v2 composition plans on generation and upload requests, or generate a plan first via the composition-plan endpoint. Request and response bodies accept either v1 or v2 plan shapes, so you can migrate endpoint by endpoint. MusicPrompt remains available for music_v1 only.

  • Upload timestamps: Upload music accepts optional with_timestamps; responses may include words_timestamps.
  • Run conversation evaluation: Added Run conversation evaluation endpoint (POST /v1/convai/conversations/{conversation_id}/analysis/evaluations/run) to rerun a single evaluation criterion against a completed conversation using RunConversationEvaluationsRequest.
  • Workflow entry behavior: Workflow override-agent nodes add optional entry_behavior (generate_immediately, wait_for_user, auto) to control whether the sub-agent speaks first or waits for user input.
  • End procedure system tool: Added end_procedure system tool configuration with matching error statuses. The start_procedure tool adds already_active to its error statuses.
  • Transfer TTS overrides: AgentTransfer, workflow standalone agent nodes and successful transfer_to_agent tool results add optional preserve_client_tts_overrides (boolean) to keep client-side TTS overrides after a transfer.
  • Interaction budget enum: InteractionBudget removes async and adds 5_minutes, 10_minutes and 1_hour. Update any configs or SDK enums that still reference async.
  • Custom guardrail model selection: Custom guardrail configuration adds optional model with Gemini, Claude and GPT variants. Guardrail config also adds optional history_message_count (integer).
  • Phone number list filters: List phone numbers adds optional provider, agent_id and branch_id query parameters to filter imported numbers.
  • WhatsApp account filtering: List WhatsApp accounts adds optional agent_id query parameter to filter accounts by assigned agent.
  • Topic time range filters: Get agent conversation topics adds optional from_unix_secs and to_unix_secs query parameters to bound topic discovery results.
  • SIP codec configuration: Outbound SIP trunk request and response models add optional enabled_codecs (MediaCodec enum).
  • Memory tool types: Added LoadableMemoryEntry and LoadMemoryEntryToolErrorStatus schemas for memory-tool error handling.
  • Agent test batch limits: Agent test attach, run and resubmit request schemas raise maximum attached tests from 1000 to 5000.
  • Phoneme tag support: Agent TTS settings add optional enable_phoneme_tags (boolean) for opt-in V3 SSML phoneme handling.
  • Array schema omit overrides: Array JSON schema properties add optional is_omitted (mutually exclusive with other value sources). ConstantSchemaOverride can use array constant values.
  • Transfer error context: Transfer-to-number error payloads can include optional agent_message (string).
  • Service account API key updates: Update service account API key no longer requires a request body. Edit fields support partial updates via no_update and nullable name, including permissions and character_limit.
  • Usage timezone bucketing: Workspace usage-by-product-over-time requests add optional time_zone (IANA timezone string) with clarified interval_seconds bucket rules.
  • History source filter: History list and detail source filters add Flows.
  • Project voice references: Project models, chapter TTS nodes, voice lists and voice statistics shift to project_voice_ref_id as the canonical voice field. Former voice_id fields remain on responses as deprecated, read-only mirrors for compatibility.
  • Speaker library diarization: Convert speech to text adds optional use_speaker_library (boolean, default false) for batch transcription diarization.
  • Shared voice sorting: List shared voices sort query parameter gains an explicit enum, created_date default and updated description.
  • v2.53.0 - Regenerated from the latest OpenAPI schema with conversation evaluation rerun support, music v2 composition-plan unions, workflow entry_behavior, phone number and WhatsApp list filters, topic time-range parameters, alerting schema updates, studio project_voice_ref_id fields, and expanded agent test batch limits.
  • v2.53.0 - Regenerated from the latest OpenAPI schema with conversation evaluation rerun support, music v2 composition plans, workflow entry behavior and end-procedure tools, telephony filter parameters, alerting and service-account partial-update models, and studio voice reference fields.
  • v3.2.1 - Added Singapore data residency support and enabled singlePeerConnection for WebRTC sessions.
View API changes

New Endpoints

ElevenAgents

  • Run conversation evaluation - POST /v1/convai/conversations/{conversation_id}/analysis/evaluations/run
    • Request body uses RunConversationEvaluationsRequest to rerun a single evaluation criterion

Updated Endpoints

ElevenAgents

Music

Speech to Text

  • Convert speech to text - POST /v1/speech-to-text
    • Added optional use_speaker_library query parameter (boolean, default false)

Voices

  • List shared voices - GET /v1/shared-voices
    • sort query parameter now uses an explicit enum with created_date default

Schema Changes

ElevenAgents

  • Workflow override-agent nodes
    • Added optional entry_behavior enum (generate_immediately, wait_for_user, auto)
  • System tools
    • Added end_procedure tool config and error statuses
  • Transfer and interaction schemas
    • Added optional preserve_client_tts_overrides on transfers and transfer tool results
    • InteractionBudget removes async; adds 5_minutes, 10_minutes, 1_hour
  • Guardrails and TTS
    • Custom guardrails add optional model and history_message_count
    • Agent TTS settings add optional enable_phoneme_tags
  • Telephony
    • SIP trunk models add optional enabled_codecs (MediaCodec enum)
  • Memory and code tools
    • Added LoadableMemoryEntry and LoadMemoryEntryToolErrorStatus
  • Agent testing
    • Raised attached test limits from 1000 to 5000 on run and resubmit requests
  • Tool JSON schema properties
    • Array properties add optional is_omitted

Workspaces

  • Service accounts
    • API key PATCH supports partial updates with no_update sentinels
  • Usage and history
    • Usage-by-product-over-time adds optional time_zone
    • History source filters add Flows

Music

  • Composition plans
    • Added chunk-based CompositionPlan, GenerationChunk and AudioRefChunk for music_v2
    • Request and response bodies accept anyOf v1 or v2 plan shapes

ElevenCreative Studio

  • Project voice models
    • Added project_voice_ref_id as canonical voice reference
    • Deprecated read-only voice_id mirrors retained on responses
  • v1 model removal: The eleven_monolingual_v1 and eleven_multilingual_v1 models are deprecated and will be removed on July 9, 2026. Migrate to eleven_multilingual_v2 or another current model before removal. See deprecated models for replacement suggestions.
  • Scribe v1 removal: The scribe_v1 model is deprecated and will be removed on July 9, 2026. Migrate to scribe_v2 or scribe_v2_realtime before removal. See deprecated models for replacement suggestions.
  • Turn model configuration: TurnConfig and TurnConfigWorkflowOverride add optional turn_model (turn_v2 or turn_v3, default turn_v3) to select the turn detection model version per agent or workflow node.
  • Soft timeout filler messages: SoftTimeoutConfig and SoftTimeoutConfigWorkflowOverride add optional additional_soft_timeout_messages (array of strings, up to 7) and max_soft_timeouts_per_generation (integer, 1–8, default 1). The primary message applies to the first timeout; subsequent timeouts use the additional messages or a built-in filler.
  • ASR provider default: The default ASRConversationalConfig.provider value changes from elevenlabs to scribe_realtime. The elevenlabs value remains in the enum but is deprecated.
  • Conversation product field: Get conversation details response adds optional conversation_product (string, default agent) to identify the product that handled the conversation.
  • Knowledge base external sync: Knowledge base file and folder response models add optional external_sync_info (Google Drive sync metadata via ExternalFileSyncInfo / ExternalFolderSyncInfo) and optional is_frozen (boolean) to indicate whether synced content can be edited.
  • Tool schema omit overrides: ConvAI tool JSON schema properties add optional is_omitted (boolean) and OmitSchemaOverride with source: omit, allowing fields to be explicitly omitted from tool payloads.
  • Procedure guardrails: Procedure version schemas add optional guardrails.
  • URL secret auth connections: Workspace auth connection create, list and response unions add url_secret (UrlSecretAuthResponse) as a supported auth connection type for tools that fetch secrets from a URL.
  • Agent QA Evaluations webhooks: WebhookUsageType adds Agent QA Evaluations as a webhook usage category for agent quality-assurance event delivery.
  • Safesearch adult metadata: Get project publishing_read responses add optional safesearch_adult (nullable boolean) on DirectPublishingReadResponseModel for direct publishing content classification.
  • v2.52.0 - Regenerated from the latest OpenAPI schema with turn_model and soft timeout filler fields on turn configs, knowledge base external sync types, OmitSchemaOverride for tool schemas, UrlSecretAuthResponse, conversation_product on conversation responses, text-to-dialogue enable_logging support, and updated AsrProvider defaults.
  • v2.51.0 - Added workspace API key revoke client, ConversationSentimentAnalysis and SystemEvaluationCriteria types, CustomLlmAuthConnection for HTTP tool auth, procedure tool config types, ResourceAccessInfoAccessSource, and conversation list/search filters for workflow_node_entered_id and topic_ids.
  • v2.52.0 - Regenerated from the latest OpenAPI schema with turn model and soft timeout config updates, knowledge base external sync models, tool schema omit overrides, URL secret auth connections, conversation conversation_product, text-to-dialogue enable_logging support, and updated ASR provider defaults.
  • v2.51.0 - Regenerated from the latest OpenAPI schema with workspace API key revoke, conversation sentiment and system evaluation types, procedure tool configuration models, and updated conversation filtering parameters.
View API changes

Updated Endpoints

ElevenAgents

  • Get conversation details - GET /v1/convai/conversations/{conversation_id}
    • Response adds optional conversation_product (string, default agent)
  • Get knowledge base document - GET /v1/convai/knowledge-base/{documentation_id}
    • Response adds optional external_sync_info and is_frozen on file models

Text to Dialogue

Schema Changes

ElevenAgents

  • TurnConfig and TurnConfigWorkflowOverride
    • Added optional turn_model enum (turn_v2, turn_v3, default turn_v3)
  • SoftTimeoutConfig and SoftTimeoutConfigWorkflowOverride
    • Added optional additional_soft_timeout_messages (array of strings, max 7)
    • Added optional max_soft_timeouts_per_generation (integer, 1–8, default 1)
  • ASRConversationalConfig
    • Default provider changed from elevenlabs to scribe_realtime
    • elevenlabs provider value deprecated
  • Procedure version schemas
    • Added optional guardrails
  • Knowledge base file and folder response models
    • Added optional external_sync_info and is_frozen
  • Tool JSON schema properties
    • Added optional is_omitted and OmitSchemaOverride (source: omit)

Workspaces

  • Auth connection unions
    • Added url_secret (UrlSecretAuthResponse)
  • WebhookUsageType enum
    • Added Agent QA Evaluations

ElevenCreative Studio

  • DirectPublishingReadResponseModel
    • Added optional safesearch_adult (nullable boolean)
  • Exotel telephony integration: Added Exotel as a first-class telephony provider alongside Twilio and SIP trunking. New Exotel outbound call endpoint (POST /v1/convai/exotel/outbound-call) initiates outbound calls via the Exotel Connect API with agent_id, agent_phone_number_id, to_number, optional conversation_initiation_client_data and optional telephony_call_config. Exotel phone number create, list, get and update schemas are available, and exotel is added to TelephonyProvider, conversation initiation source and transfer result enums.
  • Workflow-aware agent transfers: AgentTransfer now allows a nullable agent_id so transfers can stay on the current agent, adds optional node_id to start at a specific node in the destination workflow, and only requires condition. Successful transfer_to_agent tool results can include nullable to_node, aligning transfers with workflow-node targets.
  • Agent test repeat runs: Run tests on the agent accepts optional repeat_count (integer, 1–20, default 1) to run each test multiple times. When repeat_count is greater than 1, responses include bucketing_status and result_groups for grouped summaries. Unit test create, update and summary schemas add optional conversation_initiation_source so tests can simulate a specific channel.
  • Conversation filtering: List conversations adds optional workflow_node_entered_id (string) to filter conversations that entered a given workflow node. Text search conversation messages adds optional topic_ids (array of strings) to filter by topic IDs assigned during topic discovery.
  • Agent versioning query parameters deprecated: enable_versioning on create agent and enable_versioning_if_not_enabled on update agent are marked deprecated. All agents are versioned and these parameters are ignored.
  • Procedure compiler mode: Removed append from ProcedureCompilerMode.
  • Revoke API key: Added revoke API key endpoint (DELETE /v1/workspaces/api-keys/revoke) with required api_key_name query parameter to revoke a workspace API key by name. This endpoint is destructive and requires additional account permissions, even though the documentation is public. Contact your ElevenLabs representative to enable it for your account.
  • Resource access disclosure: Resource access response models add optional access_source (creator, explicit, workspace_default, workspace_admin) so clients can disclose why a user has access to a shared resource.
  • Larger upload limit: Convert speech to text now accepts audio and video files up to 5.0GB, increased from 3.0GB.
  • hCaptcha support: Dub a video or audio file request body adds optional hcaptcha_token (string) for bot protection on dubbing project creation.
  • Zip render format: RenderType adds zip alongside existing output formats such as mp4, aac, mp3, wav, aaf, tracks_zip and clips_zip.
View API changes

New Endpoints

ElevenAgents

  • Exotel outbound call - POST /v1/convai/exotel/outbound-call
    • Request body requires agent_id, agent_phone_number_id and to_number
    • Optional conversation_initiation_client_data and telephony_call_config

Workspaces

  • Revoke API key - DELETE /v1/workspaces/api-keys/revoke
    • Required query parameter api_key_name (string)
    • Requires additional account permissions. Contact your ElevenLabs representative to enable access.

Updated Endpoints

ElevenAgents

  • List conversations - GET /v1/convai/conversations
    • Added optional workflow_node_entered_id query parameter (string)
  • Text search conversation messages - GET /v1/convai/conversations/messages/text-search
    • Added optional topic_ids query parameter (array of strings)
  • Create agent - POST /v1/convai/agents/create
    • Deprecated optional enable_versioning query parameter (boolean, ignored)
  • Update agent - PATCH /v1/convai/agents/{agent_id}
    • Deprecated optional enable_versioning_if_not_enabled query parameter (boolean, ignored)
  • Run tests on the agent - POST /v1/convai/agents/{agent_id}/run-tests
    • Added optional repeat_count (integer, 1–20, default 1)
    • Response adds bucketing_status and result_groups when repeat runs are grouped

Speech to Text

Dubbing

Schema Changes

ElevenAgents

  • AgentTransfer
    • agent_id is now nullable and optional
    • Added optional node_id (string)
    • Only condition is required
  • ProcedureCompilerMode
    • Removed append; only skills remains
  • TelephonyProvider enum
    • Added exotel
  • Unit test schemas
    • Added optional conversation_initiation_source on create, update and summary models

Workspaces

  • Resource access models
    • Added optional access_source enum (creator, explicit, workspace_default, workspace_admin)

Dubbing

  • RenderType enum
    • Added zip

Showing the 20 most recent of 97 entries. Append /llms.txt to the changelog URL for the complete index.

Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu