> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

### ElevenAgents

- **Merge and search triage tickets**: [Merge tickets](/docs/api-reference/triage-tickets/merge) 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](/docs/api-reference/triage-tickets/list) and [List workspace tickets](/docs/api-reference/triage-tickets/list-for-workspace) 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](/docs/eleven-agents/guides/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_audio` [webhooks](/docs/eleven-agents/workflows/post-call-webhooks) 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](/docs/api-reference/text-to-speech/convert) and [Text to Dialogue](/docs/api-reference/text-to-dialogue/convert) 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](/docs/api-reference/speech-to-text/v-1-speech-to-text-realtime) 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](/docs/eleven-api/guides/how-to/speech-to-text/realtime/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](/docs/api-reference/voices/collections/list).

### Workspaces

- **Basic seat fallback**: [Update member](/docs/api-reference/workspace/members/update) 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](/docs/api-reference/user/get) returns the `workspace_id` of the workspace the API key belongs to.

### SDK releases

#### JavaScript SDK

- [v2.72.0](https://github.com/elevenlabs/elevenlabs-js/releases/tag/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](https://github.com/elevenlabs/elevenlabs-python/releases/tag/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](https://github.com/elevenlabs/cli/releases/tag/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](https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs%2Fclient%401.27.0) and [@elevenlabs/react@1.17.0](https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs%2Freact%401.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/react-native@1.2.29](https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs%2Freact-native%401.2.29) - Updated to `@elevenlabs/client@1.27.0` and `@elevenlabs/react@1.17.0`.
- [@elevenlabs/convai-widget-core@0.19.0](https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs%2Fconvai-widget-core%400.19.0) and [@elevenlabs/convai-widget-embed@0.19.0](https://github.com/elevenlabs/packages/releases/tag/%40elevenlabs%2Fconvai-widget-embed%400.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

<Accordion title="View API changes">

## New endpoints

### ElevenAgents

- [Merge tickets](/docs/api-reference/triage-tickets/merge) - `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](/docs/api-reference/voices/collections/list) - `GET /v1/voices/collections` - List the voice collections the caller can access, sorted by title.
- [Create voice collection](/docs/api-reference/voices/collections/create) - `POST /v1/voices/collections` - Create a collection with required `title` and `icon` (string, maximum 1,000 characters each).
- [Get voice collection](/docs/api-reference/voices/collections/get) - `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](/docs/api-reference/voices/collections/update) - `PATCH /v1/voices/collections/{collection_id}` - Update the optional `title` or `icon`.
- [Delete voice collection](/docs/api-reference/voices/collections/delete) - `DELETE /v1/voices/collections/{collection_id}`
- [Add voice to collection](/docs/api-reference/voices/collections/add-voice) - `POST /v1/voices/collections/{collection_id}/voice/{voice_id}`
- [Remove voice from collection](/docs/api-reference/voices/collections/remove-voice) - `DELETE /v1/voices/collections/{collection_id}/voice/{voice_id}`

### Audio effects

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

## Updated endpoints

### ElevenAgents

- [Create agent](/docs/api-reference/agents/create), [Get agent](/docs/api-reference/agents/get) and [Update agent](/docs/api-reference/agents/update)
  - 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.
  - Prompt override configurations add `tool_ids_strict` (boolean, default `false`).
  - TTS configuration `effects` add `pan` (number, -1 to 1, default `0`). The `seed` field is deprecated and has no effect.
- [Get widget config](/docs/api-reference/widget/get) - Added `end_confirmation_enabled` (boolean, default `false`).
- [List tickets](/docs/api-reference/triage-tickets/list)
  - 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](/docs/api-reference/triage-tickets/list-for-workspace) - 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](/docs/api-reference/tests/list) - Added optional `created_by_user_id` (string). Use `@me` for the authenticated user.
- [List test invocations](/docs/api-reference/tests/test-invocations/list) - Added optional `test_id` (string), `version_id` (string), `start_time` and `end_time` (integer, Unix seconds, inclusive) query parameters.
- [Update agent branch](/docs/api-reference/agents/branches/update) - Added optional `auto_rebase` (boolean). Branch responses add `auto_rebase` (boolean, default `false`).
- [Get conversation details](/docs/api-reference/conversations/get)
  - Twilio, SIP trunk and Exotel phone call metadata add nullable `call_result` with `answered`, `voicemail`, `busy`, `no_answer` and `failed` values.
  - Batch call metadata adds nullable `cold_attempt` (integer) and nullable `conversation_type` (`initial`, `retry`, `callback` or `redirect`).
  - The conversation error type adds `workflow_end_failure`.
- Knowledge base auto-sync `auto_discover` is deprecated and no longer has any effect.

### Text to Speech

- [Create speech](/docs/api-reference/text-to-speech/convert), [Stream speech](/docs/api-reference/text-to-speech/stream), [Create speech with timing](/docs/api-reference/text-to-speech/convert-with-timestamps) and [Stream speech with timing](/docs/api-reference/text-to-speech/stream-with-timestamps)
  - Added optional nullable `audio_effects` with `filter_preset_id` (string), `distance` (number, 0–1, default `0`), `environment_id` (string), `background_noise_id` (string), `send_level` (number, 0–1, default `1`) and `pan` (number, -1 to 1, default `0`).
  - Unknown effect IDs return `404`. Stereo effects return `400` for `ulaw_*`, `alaw_*` and `pcm_*` output formats.

### Text to Dialogue

- [Create dialogue](/docs/api-reference/text-to-dialogue/convert), [Stream dialogue](/docs/api-reference/text-to-dialogue/stream), [Create dialogue with timestamps](/docs/api-reference/text-to-dialogue/convert-with-timestamps) and [Stream dialogue with timestamps](/docs/api-reference/text-to-dialogue/stream-with-timestamps) - Added optional nullable `audio_effects`, matching the Text to Speech endpoints.

### Speech to Text

- [Realtime Speech to Text](/docs/api-reference/speech-to-text/v-1-speech-to-text-realtime)
  - The `commit_strategy` query parameter adds `turn_prediction`, alongside `manual` and `vad`.
  - `partial_transcript` messages add optional `turn_probability` (number), sent only for models that predict turns.

### Music

- `POST /v1/music/video-to-music` - Responses add a `song-id` header with the ID of the generated song.

### History

- [List generated items](/docs/api-reference/history/list) - The history item `source` enum adds `VoicePreview`.

### Workspace and user

- [Update member](/docs/api-reference/workspace/members/update) - Added optional `allow_downgrade_to_basic_seat` (boolean, default `false`).
- [Get user](/docs/api-reference/user/get) - Added required `workspace_id` (string).
- Service account API key permissions add `voice_collections_read` and `voice_collections_write`.

</Accordion>