---
title: "Assign A Channel Target"
method: POST
path: "/api/v1/channels/{channel_id}/targets"
tags: ["channels.targets"]
---

# Assign A Channel Target

`POST /api/v1/channels/{channel_id}/targets`

## Path parameters

- `channel_id` integer, required

## Request body

- ChannelTargetCreateRequest — Request model to create a channel target.
  - `agent_id` integer, required — The internal ID of the agent associated with the channel target
  - `channel_id` integer, required — The internal ID of the channel associated with the channel target
  - `target` string, required — The name of the channel target. Must correspond to an organization-level target (available targets can be fetched from `/channels/available-targets`).
  - `target_mode` 'voice' | 'chat' | 'sms' | 'email' | 'whatsapp', required — Available modes (communication methods) for channel targets.
  - `fallback_target` string, nullable — The fallback for the channel target (currently only supported for "voice" mode)
  - `is_test` boolean — Whether the channel target is intended for testing. If true, any sessions created through this target will be labeled as a test session (i.e., will not be included in dashboard data and can easily be filtered out in the Sessions screen in the SyllableConsole).

## Response `200`

Successful Response

- ChannelTargetResponse — Response model for channel target operations. A channel target links a channel to an agent, allowing users to communicate with the agent through that channel. For more information, see [Console docs](https://docs.syllable.ai/Resources/Channels).
  - `agent_id` integer, required — The internal ID of the agent associated with the channel target
  - `channel_id` integer, required — The internal ID of the channel associated with the channel target
  - `target` string, required — The name of the channel target. Must correspond to an organization-level target (available targets can be fetched from `/channels/available-targets`).
  - `target_mode` 'voice' | 'chat' | 'sms' | 'email' | 'whatsapp', required — Available modes (communication methods) for channel targets.
  - `fallback_target` string, nullable — The fallback for the channel target (currently only supported for "voice" mode)
  - `is_test` boolean — Whether the channel target is intended for testing. If true, any sessions created through this target will be labeled as a test session (i.e., will not be included in dashboard data and can easily be filtered out in the Sessions screen in the SyllableConsole).
  - `id` integer, required — The internal ID of the channel target
  - `channel_name` string, required — The name of the channel associated with the channel target
  - `updated_at` string, date-time, required — Timestamp of the most recent update to the channel target
  - `last_updated_by` string, required — Email of the user who last updated the channel target
  - `agent` AgentResponse — Response model for agent operations. When a user interacts with the Syllable system, they do so by communicating with an agent. An agent is linked to a prompt, a custom message, and one or more channel targets to define its behavior and capabilities. For more information, see [Console docs](https://docs.syllable.ai/workspaces/Agents).
    - `name` string, required — The agent name
    - `description` string, nullable — The agent description
    - `label` string, nullable — The agent label (DEPRECATED - use labels instead.)
    - `labels` string[], nullable — The agent labels
    - `type` string, required — The agent type. Must be "ca_v1" currently.
    - `prompt_id` integer, required — ID of the prompt associated with the agent
    - `prompt_version_number` integer, nullable — Optional pin to a specific version of the prompt (prompt history version number). When omitted or null, the agent tracks the latest/current version of the prompt. When set, the agent runs that specific prompt version. Must reference an existing version of the agent's prompt.
    - `custom_message_id` integer, nullable — Internal ID of the custom message that should be delivered at the beginning of a conversation with the agent
    - `language_group_id` integer, nullable — Internal ID of the language group associated with the agent
    - `bridge_phrases_id` integer, nullable — Internal ID of the bridge phrases config associated with the agent
    - `timezone` string, required — The time zone in which the agent operates
    - `prompt_tool_defaults` AgentToolDefaults[] — Agent-level static parameter values for the agent's tools, overriding any tool-level defaults
      - `tool_name` string, required — The name of the tool
      - `default_values` AgentToolFieldDefault[], required — The default values for fields used in the tool
        - `field_name` string, required — The name of the field
        - `default_value` string, required — The default value for the field
    - `languages` string[] — BCP 47 codes of languages the agent supports. (DEPRECATED - pass an empty list here and use language group ID to link agent to a language group instead.)
    - `variables` object, required — Custom context variables for the conversation session. Keys should be prefixed with "vars.".
    - `tool_headers` object, nullable, required — Optional headers to include in tool calls for agent. (It is discouraged to use this field for "Authorization" headers, as values here are not encrypted. Instead, set up a service with either basic, bearer, or custom header auth; attach the appropriate tools to that service, and the attached tools will automatically use the auth configured on the service.)
    - `agent_initiated` boolean — Whether the agent initiates conversation with a user after the custom_message is delivered
    - `stt_provider` string, nullable — Speech-to-text provider for the agent.
    - `wait_sound` string, nullable — Sound to play while waiting for a response from the LLM.
    - `enable_verbal_language_change` boolean — Enables Dynamic Language Switching - when true and a voice group is configured, callers may switch among group languages by speaking at any point in the conversation (in addition to DTMF in response to the language menu).
    - `id` integer, required — Internal ID of the agent
    - `updated_at` string, date-time, required — Timestamp of most recent update
    - `last_updated_by` string, nullable, required — Email of the user who last updated the agent
    - `prompt` PromptResponse — Response model for prompt operations. A prompt defines the behavior of an agent by delivering instructions to the LLM about how the agent should behave. A prompt can be linked to one or more agents. A prompt can also be linked to tools to allow an agent using it to use those tools. For more information, see [Console docs](https://docs.syllable.ai/Resources/Prompts).
      - `name` string, required — The prompt name
      - `description` string, nullable — The description of the prompt
      - `type` string, required — The type of the prompt
      - `context` string, nullable — The prompt text that will be sent to the LLM at the beginning of the conversation
      - `tools` string[] — Names of the tools to which the prompt has access (DEPRECATED - use information from full tools field instead)
      - `llm_config` PromptLlmConfig, required — LLM configuration for a prompt.
        - `provider` 'anthropic' | 'azure_openai' | 'google' | 'openai' — LLM API provider.
        - `model` string — Name of the model. Must match the deployment name in Azure AI Studio.
        - `version` string, nullable — Deprecated model version. This value is ignored and resolved automatically.
        - `api_version` string, nullable — Version of the provider's API.
        - `temperature` number, nullable — Temperature parameter for the model. Determines randomness of responses - higher is more random, lower is more focused. Must be between 0.0 and 2.0, inclusive.
        - `seed` integer, nullable — Controls the reproducibility of the job. The LLM will give the same or similar responses given the same inputs in multiple conversations with the same seed.
      - `session_end_enabled` boolean — Whether session end functionality is enabled for this prompt
      - `session_end_tool_id` integer, nullable — ID of the optional session end tool associated with the prompt
      - `edit_comments` string, nullable — The comments for the most recent edit to the prompt
      - `id` integer, required — The internal ID of the prompt
      - `last_updated` string, nullable, required — The last updated date of the prompt
      - `last_updated_by` string, nullable — Email address of the user who most recently updated the prompt
      - `session_end_tool` DaoToolResponse
        - `name` string, required — The name of the tool
        - `definition` ToolDefinition, required — A tool that can be called from an LLM during the conversation. See https://docs.syllable.ai/Resources/Tools.
          - `type` 'action' | 'endpoint' | 'context' | 'log', nullable — The action to take when the LLM calls the tool.
          - `tool` InternalTool, required — A tool definition to be used by the OpenAI API.
            - `type` 'function' — Always `function`.
            - `function` ToolFunction, required — A function available to an agent. See: - https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/function-calling
              - …
          - `endpoint` ToolHttpEndpoint — The configuration for an HTTP API call by a tool.
            - `url` string, required — The endpoint URL of the external service to call.
            - `method` 'get' | 'post' | 'put' | 'delete', required — The HTTP method to use for a tool HTTP request.
            - `argument_location` 'body' | 'form' | 'path' | 'query', required — The location of the argument in a tool HTTP request. 'body' is used for JSON data in the POST request body. 'form' is used for form data in the POST request body. 'path' is used for URL path parameters. 'query' is used for query parameters in the URL.
            - `timeout` number, nullable — Timeout in seconds for the HTTP request. Default 20 seconds when not set.
          - `context` Context
            - `task` union — Task implementation details
              - …
          - `defaults` union — The default values for the parameters of the function/tool call.
            - unknown
            - object
          - `static_parameters` StaticToolParameter[], nullable — Parameters for the tool whose values should be set at config time (i.e., not provided by the LLM).
            - `name` string, required — The name of the parameter - must be unique within the tool.
            - `description` string, nullable — The description of the parameter.
            - `required` boolean, required — Whether the parameter is required to have a value assigned.
            - `type` 'string' | 'int' | 'boolean' | 'data_source_list', required — The expected type for a static tool parameter.
            - `default` string, nullable — The default value for the parameter. If `type` is string, must be a string. If `type` is int, must be an int. If `type` is boolean, must be a boolean. If `type` is data_source_list, must be a list of strings (data source names).
          - `result` unknown
          - `options` ToolOptions — The options for a tool call.
            - `propagate_tool_result` boolean — Whether the tool call result should be propagated to the caller.
        - `service_id` integer, required — Internal ID of the service to which the tool belongs
        - `id` integer, required — The internal ID of the tool
        - `last_updated_comments` string, nullable — Comments for the most recent edit to the tool.
        - `service_name` string, nullable — The name of the service to which the tool belongs
        - `prompts_info` ToolPromptInfo[], nullable — IDs and names of the prompts linked to the tool
          - `id` integer, required — The ID of the prompt
          - `name` string, required — The name of the prompt
        - `agents_info` ToolAgentInfo[], nullable — IDs and names of the agents linked to the tool via a prompt
          - `id` integer, required — The internal ID of the agent
          - `name` string, required — The name of the agent
        - `last_updated` string, date-time, required — The timestamp of the most recent update to the tool
        - `last_updated_by` string, required — The email of the user who last updated the tool
        - `version_number` integer, required — Highest tools_history snapshot version for this tool; the tools row defaults to 1.
      - `agent_count` integer, nullable — The number of agents using the prompt
      - `version_number` integer, nullable — The version number of the current version of the prompt
      - `tools_full` ToolResponse[], nullable — Full definitions of tools to which the prompt has access
        - `name` string, required — The name of the tool
        - `definition` ToolDefinition, required — A tool that can be called from an LLM during the conversation. See https://docs.syllable.ai/Resources/Tools.
          - `type` 'action' | 'endpoint' | 'context' | 'log', nullable — The action to take when the LLM calls the tool.
          - `tool` InternalTool, required — A tool definition to be used by the OpenAI API.
            - `type` 'function' — Always `function`.
            - `function` ToolFunction, required — A function available to an agent. See: - https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/function-calling
              - …
          - `endpoint` ToolHttpEndpoint — The configuration for an HTTP API call by a tool.
            - `url` string, required — The endpoint URL of the external service to call.
            - `method` 'get' | 'post' | 'put' | 'delete', required — The HTTP method to use for a tool HTTP request.
            - `argument_location` 'body' | 'form' | 'path' | 'query', required — The location of the argument in a tool HTTP request. 'body' is used for JSON data in the POST request body. 'form' is used for form data in the POST request body. 'path' is used for URL path parameters. 'query' is used for query parameters in the URL.
            - `timeout` number, nullable — Timeout in seconds for the HTTP request. Default 20 seconds when not set.
          - `context` Context
            - `task` union — Task implementation details
              - …
          - `defaults` union — The default values for the parameters of the function/tool call.
            - unknown
            - object
          - `static_parameters` StaticToolParameter[], nullable — Parameters for the tool whose values should be set at config time (i.e., not provided by the LLM).
            - `name` string, required — The name of the parameter - must be unique within the tool.
            - `description` string, nullable — The description of the parameter.
            - `required` boolean, required — Whether the parameter is required to have a value assigned.
            - `type` 'string' | 'int' | 'boolean' | 'data_source_list', required — The expected type for a static tool parameter.
            - `default` string, nullable — The default value for the parameter. If `type` is string, must be a string. If `type` is int, must be an int. If `type` is boolean, must be a boolean. If `type` is data_source_list, must be a list of strings (data source names).
          - `result` unknown
          - `options` ToolOptions — The options for a tool call.
            - `propagate_tool_result` boolean — Whether the tool call result should be propagated to the caller.
        - `service_id` integer, required — Internal ID of the service to which the tool belongs
        - `id` integer, required — The internal ID of the tool
        - `last_updated_comments` string, nullable — Comments for the most recent edit to the tool.
        - `service_name` string, nullable — The name of the service to which the tool belongs
        - `prompts_info` ToolPromptInfo[], nullable — IDs and names of the prompts linked to the tool
          - `id` integer, required — The ID of the prompt
          - `name` string, required — The name of the prompt
        - `agents_info` ToolAgentInfo[], nullable — IDs and names of the agents linked to the tool via a prompt
          - `id` integer, required — The internal ID of the agent
          - `name` string, required — The name of the agent
        - `last_updated` string, date-time, required — The timestamp of the most recent update to the tool
        - `last_updated_by` string, required — The email of the user who last updated the tool
        - `version_number` integer, required — Highest tools_history snapshot version for this tool; the tools row defaults to 1.
        - `validation_issues` ValidationIssue[], nullable — Validation issues found in the tool definition. Warnings and infos are informational; errors block the save.
          - `id` string, required — Stable machine-readable identifier (kebab-case)
          - `severity` 'info' | 'warning' | 'error'
          - `message` string, required — Human-readable description
          - `path` string, nullable — JSONPath-style location (e.g. $.context.task.steps[2])
          - `value` string, nullable — The offending value, when it adds clarity
    - `custom_message` CustomMessageResponse — Response model for custom message operations. A custom message is a pre-configured message delivered by an agent (e.g. as a greeting at the beginning of a conversation, or as an email template with subject and body). Multiple agents can use the same custom message. Greeting-type messages may have rules for time-based variants; email templates have a subject and body only. For more information, see [Console docs](https://docs.syllable.ai/Resources/Messages).
      - `name` string, required — The name of the custom message
      - `type` 'greeting' | 'email_template' — Type of custom message. Greeting is for voice; email_template is for email (subject + body).
      - `preamble` string, nullable — An optional preamble that will be delivered before the main message, regardless of whether the current time and date match a rule or the system uses the default message. Cannot contain the "{{ language.mode }}" tag. In the case of a voice conversation, the user will not be able to interrupt the preamble. Can be used for e.g. legal disclaimers that the user must always see/hear.
      - `text` string, required — The default message that the agent will deliver if no rules are set or no rules match the current timestamp. For email_template, this is the body.
      - `subject` string, nullable — Email subject. Required for email_template (in type_config); ignored otherwise.
      - `label` string, nullable — The label of the custom message
      - `repeat_after_language_change` boolean, required — If true, if the caller changes language using the language menu in the custom message, the message will be repeated in the new language (not including the language menu).
      - `rules` CustomMessageRule[] — Rules for time-specific message variants
        - `description` string, required — The description of the rule
        - `time_range_start` string, nullable — The start of the time range for the rule in 24-hour format hh:mm (should be null for "all day" cases)
        - `time_range_end` string, nullable — The end of the time range for the rule in 24-hour format hh:mm (should be null for "all day" cases)
        - `date` string, nullable — The date for the rule in YYYY-MM-DD format
        - `days_of_week` DayOfWeek[], nullable — The days of the week for the rule
        - `invert` boolean, required — Whether the rule logic should be inverted (i.e. "not")
        - `text` string, required — Message text associated with the rule
      - `id` integer, required — The ID of the custom message
      - `updated_at` string, date-time, required — Timestamp of the most recent update to the custom message
      - `agent_count` integer, nullable — The number of agents using the custom message
      - `last_updated_by` string, required — The email address of the user who most recently updated the custom message
    - `channel_targets` ChannelTargetResponse[], nullable — Channel targets associated with the agent
    - `tools` ToolResponse[], nullable — Tools associated with the agent
      - `name` string, required — The name of the tool
      - `definition` ToolDefinition, required — A tool that can be called from an LLM during the conversation. See https://docs.syllable.ai/Resources/Tools.
        - `type` 'action' | 'endpoint' | 'context' | 'log', nullable — The action to take when the LLM calls the tool.
        - `tool` InternalTool, required — A tool definition to be used by the OpenAI API.
          - `type` 'function' — Always `function`.
          - `function` ToolFunction, required — A function available to an agent. See: - https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/function-calling
            - `name` string, required — The name of the function/tool call.
            - `description` string, required — The description of the tool.
            - `parameters` unknown, required
        - `endpoint` ToolHttpEndpoint — The configuration for an HTTP API call by a tool.
          - `url` string, required — The endpoint URL of the external service to call.
          - `method` 'get' | 'post' | 'put' | 'delete', required — The HTTP method to use for a tool HTTP request.
          - `argument_location` 'body' | 'form' | 'path' | 'query', required — The location of the argument in a tool HTTP request. 'body' is used for JSON data in the POST request body. 'form' is used for form data in the POST request body. 'path' is used for URL path parameters. 'query' is used for query parameters in the URL.
          - `timeout` number, nullable — Timeout in seconds for the HTTP request. Default 20 seconds when not set.
        - `context` Context
          - `task` union — Task implementation details
            - union
              - …
            - union[]
              - …
        - `defaults` union — The default values for the parameters of the function/tool call.
          - unknown
          - object
        - `static_parameters` StaticToolParameter[], nullable — Parameters for the tool whose values should be set at config time (i.e., not provided by the LLM).
          - `name` string, required — The name of the parameter - must be unique within the tool.
          - `description` string, nullable — The description of the parameter.
          - `required` boolean, required — Whether the parameter is required to have a value assigned.
          - `type` 'string' | 'int' | 'boolean' | 'data_source_list', required — The expected type for a static tool parameter.
          - `default` string, nullable — The default value for the parameter. If `type` is string, must be a string. If `type` is int, must be an int. If `type` is boolean, must be a boolean. If `type` is data_source_list, must be a list of strings (data source names).
        - `result` unknown
        - `options` ToolOptions — The options for a tool call.
          - `propagate_tool_result` boolean — Whether the tool call result should be propagated to the caller.
      - `service_id` integer, required — Internal ID of the service to which the tool belongs
      - `id` integer, required — The internal ID of the tool
      - `last_updated_comments` string, nullable — Comments for the most recent edit to the tool.
      - `service_name` string, nullable — The name of the service to which the tool belongs
      - `prompts_info` ToolPromptInfo[], nullable — IDs and names of the prompts linked to the tool
        - `id` integer, required — The ID of the prompt
        - `name` string, required — The name of the prompt
      - `agents_info` ToolAgentInfo[], nullable — IDs and names of the agents linked to the tool via a prompt
        - `id` integer, required — The internal ID of the agent
        - `name` string, required — The name of the agent
      - `last_updated` string, date-time, required — The timestamp of the most recent update to the tool
      - `last_updated_by` string, required — The email of the user who last updated the tool
      - `version_number` integer, required — Highest tools_history snapshot version for this tool; the tools row defaults to 1.
      - `validation_issues` ValidationIssue[], nullable — Validation issues found in the tool definition. Warnings and infos are informational; errors block the save.
        - `id` string, required — Stable machine-readable identifier (kebab-case)
        - `severity` 'info' | 'warning' | 'error'
        - `message` string, required — Human-readable description
        - `path` string, nullable — JSONPath-style location (e.g. $.context.task.steps[2])
        - `value` string, nullable — The offending value, when it adds clarity
    - `language_group` LanguageGroupResponse — Response model for voice group operations. A voice group is a collection of language, voice, and DTMF configuration that can be linked to an agent to define the languages and voices it supports. For more information, see [Console docs](https://docs.syllable.ai/Resources/VoiceGroups).
      - `name` string, required — The name of the language group.
      - `description` string, nullable — Description of the language group.
      - `language_configs` LanguageConfig[], required — Voice and DTMF configurations for each language in the group.
        - `language_code` 'yue-HK' | 'en-US' | 'ko-KR' | 'zh-CN' | 'fa-IR' | 'es-US' | 'th-TH' | 'vi-VN' | 'bs-BA' | 'sw-KE' | 'ru-RU' | 'hi-IN' | 'gu-IN' | 'ar-XA' | 'fr-FR' | 'ja-JP' | 'ne-NP', required — BCP 47 codes of languages that Syllable supports.
        - `voice_provider` 'OpenAI' | 'ElevenLabs' | 'Google', required — TTS provider for an agent voice.
        - `voice_display_name` 'Achernar (English)' | 'Achernar (Gujarati)' | 'Achernar (Arabic)' | 'Achernar (French)' | 'Achernar (Japanese)' | 'Achernar (Hindi)' | 'Achernar (Korean)' | 'Achernar (Mandarin)' | 'Achernar (Spanish)' | 'Achernar (Thai)' | 'Achernar (Vietnamese)' | 'Alice' | 'Alloy' | 'Aoede (English)' | 'Aoede (Gujarati)' | 'Aoede (Arabic)' | 'Aoede (French)' | 'Aoede (Japanese)' | 'Aoede (Hindi)' | 'Aoede (Korean)' | 'Aoede (Mandarin)' | 'Aoede (Russian)' | 'Aoede (Spanish)' | 'Aoede (Thai)' | 'Aoede (Vietnamese)' | 'Ash' | 'Bill' | 'Brian' | 'Callirrhoe (English)' | 'Callirrhoe (Gujarati)' | 'Callirrhoe (Arabic)' | 'Callirrhoe (French)' | 'Callirrhoe (Japanese)' | 'Callirrhoe (Hindi)' | 'Callirrhoe (Korean)' | 'Callirrhoe (Mandarin)' | 'Callirrhoe (Spanish)' | 'Callirrhoe (Thai)' | 'Callirrhoe (Vietnamese)' | 'Callum' | 'Charlie' | 'Charlotte' | 'Charon (English)' | 'Charon (Gujarati)' | 'Charon (Arabic)' | 'Charon (French)' | 'Charon (Japanese)' | 'Charon (Hindi)' | 'Charon (Korean)' | 'Charon (Mandarin)' | 'Charon (Russian)' | 'Charon (Spanish)' | 'Charon (Thai)' | 'Charon (Vietnamese)' | 'Chris' | 'cmn-TW-Wavenet-A' | 'Coral' | 'Daniel' | 'Echo' | 'en-US-Neural2-D' | 'en-US-Neural2-F' | 'en-US-Neural2-J' | 'en-US-Studio-O' | 'Eric' | 'es-US-Neural2-A' | 'es-US-Neural2-B' | 'Fable' | 'Fenrir (English)' | 'Fenrir (Gujarati)' | 'Fenrir (Arabic)' | 'Fenrir (French)' | 'Fenrir (Japanese)' | 'Fenrir (Hindi)' | 'Fenrir (Korean)' | 'Fenrir (Mandarin)' | 'Fenrir (Russian)' | 'Fenrir (Spanish)' | 'Fenrir (Thai)' | 'Fenrir (Vietnamese)' | 'George' | 'Jessica' | 'ko-KR-Neural2-A' | 'Kore (English)' | 'Kore (Gujarati)' | 'Kore (Arabic)' | 'Kore (French)' | 'Kore (Japanese)' | 'Kore (Hindi)' | 'Kore (Korean)' | 'Kore (Mandarin)' | 'Kore (Russian)' | 'Kore (Spanish)' | 'Kore (Thai)' | 'Kore (Vietnamese)' | 'Laura' | 'Leda (English)' | 'Leda (Gujarati)' | 'Leda (Arabic)' | 'Leda (French)' | 'Leda (Japanese)' | 'Leda (Hindi)' | 'Leda (Korean)' | 'Leda (Mandarin)' | 'Leda (Russian)' | 'Leda (Spanish)' | 'Leda (Thai)' | 'Leda (Vietnamese)' | 'Liam' | 'Lily' | 'Matilda' | 'Nova' | 'Onyx' | 'Orus (English)' | 'Orus (Gujarati)' | 'Orus (Arabic)' | 'Orus (French)' | 'Orus (Japanese)' | 'Orus (Hindi)' | 'Orus (Korean)' | 'Orus (Mandarin)' | 'Orus (Russian)' | 'Orus (Spanish)' | 'Orus (Thai)' | 'Orus (Vietnamese)' | 'Puck (English)' | 'Puck (Gujarati)' | 'Puck (Arabic)' | 'Puck (French)' | 'Puck (Japanese)' | 'Puck (Hindi)' | 'Puck (Korean)' | 'Puck (Mandarin)' | 'Puck (Russian)' | 'Puck (Spanish)' | 'Puck (Thai)' | 'Puck (Vietnamese)' | 'River' | 'Roger' | 'Sarah' | 'Sage' | 'Shimmer' | 'Umbriel (English)' | 'Umbriel (Gujarati)' | 'Umbriel (Arabic)' | 'Umbriel (French)' | 'Umbriel (Japanese)' | 'Umbriel (Hindi)' | 'Umbriel (Korean)' | 'Umbriel (Mandarin)' | 'Umbriel (Spanish)' | 'Umbriel (Thai)' | 'Umbriel (Vietnamese)' | 'Vindemiatrix (English)' | 'Vindemiatrix (Gujarati)' | 'Vindemiatrix (Arabic)' | 'Vindemiatrix (French)' | 'Vindemiatrix (Japanese)' | 'Vindemiatrix (Hindi)' | 'Vindemiatrix (Korean)' | 'Vindemiatrix (Mandarin)' | 'Vindemiatrix (Spanish)' | 'Vindemiatrix (Thai)' | 'Vindemiatrix (Vietnamese)' | 'vi-VN-Neural2-A' | 'Will' | 'yue-HK-Standard-C' | 'Zephyr (English)' | 'Zephyr (Gujarati)' | 'Zephyr (Arabic)' | 'Zephyr (French)' | 'Zephyr (Japanese)' | 'Zephyr (Hindi)' | 'Zephyr (Korean)' | 'Zephyr (Mandarin)' | 'Zephyr (Russian)' | 'Zephyr (Spanish)' | 'Zephyr (Thai)' | 'Zephyr (Vietnamese)', required — Display names of voices that Syllable supports.
        - `voice_speed` number, nullable — Speed of the voice in the range of 0.25 to 4.0 (OpenAI and Google) or 0.7 to 1.2 (ElevenLabs). Standard speed is 1.0.
        - `voice_pitch` number, nullable — Pitch of the voice in the range of -20.0 to 20.0. 20 means increase 20 semitones from the original pitch. -20 means decrease 20 semitones from the original pitch. 0 means use the original pitch. Only supported for Google configs.
        - `dtmf_code` integer, required — DTMF code that should be used for the language in the menu generated from the language group.
      - `skip_current_language_in_message` boolean, required — Whether a custom message using the language group to generate a language DTMF menu should skip the agent's current language in the menu.
      - `id` integer, required — The ID of the language group to update.
      - `edit_comments` string, nullable — Comments for the most recent edit to the language group.
      - `agents_info` LanguageGroupAgentInfo[], nullable — IDs and names of the agents linked to the language group
        - `id` integer, required — The ID of the agent
        - `name` string, required — The name of the agent
      - `updated_at` string, date-time, required — Timestamp of the last update to the language group.
      - `last_updated_by` string, required — Email of the user who last updated the language group.
  - `a2p_verified` boolean, nullable — Twilio US A2P messaging-path configuration snapshot from the last explicit verify; null if never checked.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/asksyllable/apis/syllablesdk.md) · [All operations](https://skmtc.net/asksyllable/apis/syllablesdk/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/asksyllable/syllablesdk/versions/ac3228f980bb/schema)
