---
title: "Update Voice Configuration"
method: PATCH
path: "/v1/voice_configurations/{voice_configuration_id}"
tags: ["Voice Configurations"]
---

# Update Voice Configuration

`PATCH /v1/voice_configurations/{voice_configuration_id}`

## Path parameters

- `voice_configuration_id` string, uuid, required

## Request body

- UpdateVoiceConfiguration
  - `name` string, nullable
  - `llm_aggregation_timeout_seconds` number, nullable
  - `speech_to_text` UpdateSpeechToTextConfig
    - `provider` string, nullable
    - `watson_stt_config` UpdateWatsonSTTConfig
      - `api_url` string, nullable
      - `model` string, nullable
      - `api_key` string, nullable
      - `bearer_token` string, nullable
      - `background_audio_suppression` number, nullable — Background audio suppression level (0.0 to 1.0). Default 0.0
      - `language_customization_id` string, nullable — Language customization ID
      - `inactivity_timeout` integer, nullable — Seconds of inactivity before the service stops listening. Default 30
      - `profanity_filter` boolean, nullable — Filter profanity in the transcript. Default true
      - `smart_formatting` boolean, nullable — Enable smart formatting (beta). Default false
      - `speaker_labels` boolean, nullable — Enable speaker labels (beta). Default false
      - `redaction` boolean, nullable — Enable PII redaction (beta). Default false
      - `low_latency` boolean, nullable — Enable low latency mode. Default false
      - `learning_opt_out` boolean, nullable — Opt out of data collection for learning. Default true
      - `watson_metadata` string, nullable — Value for x-watson-metadata header.
      - `smart_formatting_version` integer, nullable — Version of smart formatting to use.
      - `customization_weight` number, nullable — Weight for custom language model (0.0 to 1.0). Default 0.5
      - `character_insertion_bias` number, nullable — Bias for character insertion (-1.0 to 1.0). Default 0.0
      - `end_of_phrase_silence_time` number, nullable — Seconds of silence that indicate end of a phrase. Default 0.8
    - `emotech_stt_config` UpdateEmotechSTTConfig
      - `api_url` string, nullable
      - `api_key` string, nullable
      - `positive_speech_threshold` number, nullable — Confidence threshold above which audio is classified as speech, default is 0.25
      - `negative_speech_threshold` number, nullable — Confidence threshold below which audio is classified as non-speech, default is 0.25
      - `partial_interval` integer, nullable — Time interval (in ms) between partial transcription results, default is 500 ms.
      - `silence_threshold` integer, nullable — Silence duration (in ms) after speech used to determine end of utterance, default is 1500 ms.
    - `deepgram_stt_config` UpdateDeepgramSTTConfig
      - `api_url` string, nullable
      - `api_key` string, nullable
      - `model` string, nullable
      - `keyterm` string[], nullable — Key terms to boost recognition of
      - `mip_opt_out` boolean, nullable — Opt out of model improvement program
      - `channels` integer, nullable — Number of audio channels
      - `diarize` boolean, nullable — Enable speaker diarization
      - `dictation` boolean, nullable — Enable dictation mode
      - `endpointing` integer, nullable — Endpointing silence duration in seconds, or false to disable
      - `extra` string[], nullable — Extra parameters to pass to Deepgram
      - `interim_results` boolean, nullable — Enable interim results
      - `keywords` string[], nullable — Keywords to detect
      - `language` string, nullable — BCP-47 language tag
      - `multichannel` boolean, nullable — Transcribe each audio channel independently
      - `numerals` boolean, nullable — Convert numbers from written to numerical form
      - `profanity_filter` boolean, nullable — Filter profanity
      - `punctuate` boolean, nullable — Add punctuation and capitalization
      - `redact` string, nullable — Redact sensitive information
      - `replace` string[], nullable — Replace specified terms
      - `search` string[], nullable — Search for specific terms
      - `smart_format` boolean, nullable — Apply smart formatting to the transcript
      - `tag` string[], nullable — Tag for the request
      - `utterance_end_ms` integer, nullable — How long Deepgram will wait to send UtteranceEnd message after word has been transcribed
      - `vad_events` boolean, nullable — Enable Deepgram's voice activity detection events
      - `version` string, nullable — API version
      - `eager_eot_threshold` number, nullable — End-of-turn confidence required to fire an eager EOT event, between (0.3 - 0.9)
      - `eot_threshold` number, nullable — End-of-turn confidence required to finish a turn, between (0.5 - 0.9)
      - `eot_timeout_ms` integer, nullable — A turn will be finished when this much time (ms) has passed after speech, regardless of EOT confidence
  - `text_to_speech` UpdateTextToSpeechConfig
    - `provider` string, nullable
    - `watson_tts_config` UpdateWatsonTTSConfig
      - `api_url` string, nullable
      - `api_key` string, nullable
      - `bearer_token` string, nullable
      - `voice` string, nullable
      - `rate_percentage` integer, nullable — Rate percentage for speech synthesis, default is 0
      - `pitch_percentage` integer, nullable — Pitch percentage for speech synthesis, default is 0
      - `language` string, nullable — Language code for the voice, e.g., 'en-US'
      - `customization_id` string, nullable — Custom ID for the Watson TTS service
      - `meta_id` string, nullable — Meta ID for the Watson TTS service
      - `learning_opt_out` boolean, nullable — Set to true to opt out of data collection for learning purposes
    - `emotech_tts_config` UpdateEmotechTTSConfig
      - `api_url` string, nullable
      - `api_key` string, nullable
      - `voice` string, nullable
    - `elevenlabs_tts_config` UpdateElevenLabsTTSConfig
      - `model_id` string, nullable
      - `voice_id` string, nullable
      - `api_key` string, nullable
      - `apply_text_normalization` string, nullable
      - `language_code` string, nullable
      - `optimize_streaming_latency` integer, nullable
      - `apply_language_text_normalization` boolean, nullable
      - `pronunciation_dictionary_locators` UpdateElevenLabsPronounciationDict[], nullable
        - `pronunciation_dictionary_id` string, nullable — ID of the pronunciation dictionary
        - `version_id` string, nullable — Version ID of the pronunciation dictionary
      - `seed` integer, nullable
      - `previous_text` string, nullable
      - `next_text` string, nullable
      - `voice_settings` UpdateElevenLabsVoiceSettings
        - `speed` number, nullable — Speech speed
        - `style` number, nullable — Style factor
        - `stability` number, nullable — Stability factor
        - `similarity_boost` number, nullable — Similarity boost factor
        - `use_speaker_boost` boolean, nullable — Whether to use speaker boost
    - `deepgram_tts_config` UpdateDeepgramTTSConfig
      - `api_key` string, nullable, required — Deepgram API key.
      - `mip_opt_out` boolean, nullable — Opt out of model improvement program.
      - `model` string, nullable — The ID (canonical name) of the Deepgram model to use.
      - `language` string, nullable — An optional UI indicator to help the UI show different languages.
  - `language` string, nullable — Default language code, e.g., 'en-us'
  - `additional_languages` object, nullable — Additional language configurations keyed by language code
  - `dtmf_input` UpdateDTMFInputConfig
    - `inter_digit_timeout_ms` integer, nullable
    - `termination_key` string, nullable
    - `maximum_count` integer, nullable
    - `ignore_speech` boolean, nullable
  - `vad` UpdateVADConfig
    - `enabled` boolean, nullable
    - `provider` string, nullable, required
    - `silero_vad_config` UpdateSileroVADConfig
      - `confidence` number, nullable
      - `start_seconds` number, nullable
      - `stop_seconds` number, nullable
      - `min_volume` number, nullable
  - `user_idle_handler` UserIdleHandlerConfig
    - `enabled` boolean, nullable — Enable idle handling. If false, we disconnect on timeout without playing a prompt.
    - `idle_timeout` integer, nullable — Idle timeout in seconds before triggering the handler (default 7s).
    - `idle_max_reprompts` integer, nullable — How many times to replay before ending the session (0 = end immediately).
    - `idle_timeout_message` string, nullable — Message to play on idle; language-specific variants may override this.
  - `agent_idle_handler` UpdateAgentIdleHandler
    - `pre_hold_message` string, nullable — The text to play for the user before playing on-hold audio
    - `hold_message` string, nullable — The text to play to the user periodically while on hold
    - `typing_enabled` boolean, nullable
    - `typing_duration_seconds` integer, nullable
    - `audio_clip_id` 'guitar_1' | 'listen_1'
    - `hold_audio_seconds` integer, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/ibm/apis/wxo-server-api.md) · [All operations](https://skmtc.net/ibm/apis/wxo-server-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ibm/wxo-server-api/revisions/82c114c37196/schema)
