For AI agents: a documentation index is available at the root level at /llms.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Merge and search triage tickets: Merge tickets folds up to 50 open tickets from the same agent into one target ticket. Merged tickets keep the status merged and reference the target through merged_into_ticket_id. List tickets and List workspace tickets add a case-insensitive search parameter that matches ticket titles, descriptions, comments and turn comments, and each result includes a search_match excerpt showing where the query matched.
Workflow End node outcomes: Workflow End nodes accept an outcome of success (default) or failure, so a workflow can record whether a conversation ended successfully. The conversation error type adds workflow_end_failure.
Call queueing enabled for new agents: New agents are created with call queueing enabled unless platform_settings.queueing_config.enabled is set explicitly. Existing agents keep their current setting.
Post-call audio webhook retries: When Enable retries is on, post_call_audiowebhooks are retried on the same schedule as transcription webhooks. Audio payloads over 50 MiB are not retried, and queued audio retries are capped at 400 MiB per webhook.
Strict tool overrides: The conversation override tool_ids_strict makes an overridden tool_ids list the complete set of tools available in the conversation, including tools on workflow nodes. It is ignored when set on the agent itself.
Widget end confirmation: The widget can ask users to confirm before ending a chat or call. Enable it with end_confirmation_enabled in the widget configuration or the end-confirmation attribute.
Text to Speech
Audio effects: Text to Speech and Text to Dialogue requests accept an optional audio_effects object. It applies a filter preset, perceived distance, a reverb environment, a looped background noise bed and stereo panning to the generated audio. List valid preset, environment and background noise IDs with GET /v1/audio-effects/catalog. Reverb and non-zero panning produce stereo audio and are rejected for ulaw_*, alaw_* and pcm_* output formats. Effects do not change the cost of a request.
Speech to Text
Turn prediction commit strategy: The realtime Speech to Text WebSocket adds turn_prediction as a commit_strategy value. In addition to silence-based segmentation, it commits a segment as soon as the model predicts the speaker has finished their turn. It is the default for models that predict turns, and partial transcripts from those models include turn_probability. See transcripts and commit strategies.
Voices
Voice collections API: Voice collections can now be managed through the API. Create, list, update and delete collections, and add or remove voices. See List voice collections.
Workspaces
Basic seat fallback: Update member accepts allow_downgrade_to_basic_seat. When unlocking a user whose original seat type has no seats available, the user is moved to a basic seat instead of the request failing.
Workspace ID on user: Get user returns the workspace_id of the workspace the API key belongs to.
SDK releases
JavaScript SDK
v2.72.0 - Added clients for voice collections, the audio effects catalog and triage ticket merging. Text to Speech and Text to Dialogue methods accept audio_effects, triage ticket list methods add search and filters, and the realtime Speech to Text client adds the turn_prediction commit strategy.
Python SDK
v2.72.0 - Added clients for voice collections, the audio effects catalog and triage ticket merging. Text to Speech and Text to Dialogue methods accept audio_effects, triage ticket list methods add search and filters, and the realtime Speech to Text client adds the turn_prediction commit strategy. play() and save() now accept any iterable of audio chunks, such as a list or tuple. RealtimeEvents.CLOSE handlers receive a dictionary with the WebSocket close code and reason; handlers without parameters continue to work.
ElevenLabs CLI
v1.5.0 - Regenerated API commands, adding voice collections, the audio effects catalog, triage ticket merging and agent merge proposals.
Packages
@elevenlabs/client@1.27.0 and @elevenlabs/react@1.17.0 - Added a previousText option to Scribe.connect() and useScribe() in microphone mode. The text is sent with the first audio chunk to give the model context, such as existing document text, for casing, punctuation and sentence continuation. MediaDeviceOutput now receives libsampleratePath, so output resampling uses the same custom libsamplerate bundle path as MediaDeviceInput.
@elevenlabs/convai-widget-core@0.19.0 and @elevenlabs/convai-widget-embed@0.19.0 - Added an optional confirmation dialog before ending a chat or call, enabled with the end-confirmation attribute or end_confirmation_enabled config, with customizable text. Added carousel rich content with scrollable item cards that can include an image, subtitle, description and actions. Carousels remain in the transcript after a reply, without their actions. Rich content is now shown during voice calls when the transcript is visible.
API
View API changes
New endpoints
ElevenAgents
Merge tickets - POST /v1/convai/triage-tickets/{agentqa_ticket_id}/merge - Merge open tickets into the target ticket. Requires source_ticket_ids (string array, 1–50 items) and returns the target ticket.
Voices
List voice collections - GET /v1/voices/collections - List the voice collections the caller can access, sorted by title.
Create voice collection - POST /v1/voices/collections - Create a collection with required title and icon (string, maximum 1,000 characters each).
Get voice collection - GET /v1/voices/collections/{collection_id} - Retrieve a collection with its title, icon and the caller’s permission_on_resource (admin, editor, commenter or viewer).
Update voice collection - PATCH /v1/voices/collections/{collection_id} - Update the optional title or icon.
GET /v1/audio-effects/catalog - List the available filter_presets, environments and background_noises. Each entry has an ID, a name and a nullable description.
Workflow End nodes add outcome (success or failure, default success). The field is required in responses.
Standalone workflow agent nodes and agent transfer configurations add nullable branch_id (string) to target a specific branch of the destination agent. When unset, the transfer follows the target agent’s traffic deployment. Transfer tool results add a configured branch reason.
Added optional search (string, maximum 200 characters) and merged_into_ticket_id (string) query parameters.
Ticket responses add nullable merged_into_ticket_id and nullable search_match with field (title, description, comment or turn_comment), snippet, highlight_start, highlight_end and nullable turn_index.
List workspace tickets - Added optional agent_id, sources, priorities, sort_by (created_at or priority, default created_at), owner_user_id, issue_type, label, merged_into_ticket_id and search query parameters.
List tests - Added optional created_by_user_id (string). Use @me for the authenticated user.
List test invocations - Added optional test_id (string), version_id (string), start_time and end_time (integer, Unix seconds, inclusive) query parameters.