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

# 创建智能体

POST https://api.elevenlabs.io/v1/convai/agents/create
Content-Type: application/json

根据配置对象创建智能体

Reference: https://elevenlabs.io/docs/eleven-agents/api-reference/agents/create

## Servers

- `https://api.elevenlabs.io` (Production, default)
- `https://api.us.elevenlabs.io` (Production US)
- `https://api.eu.residency.elevenlabs.io` (Production EU)
- `https://api.in.residency.elevenlabs.io` (Production India)
- `https://api.sg.residency.elevenlabs.io` (Production Singapore)

## Request

### Query parameters

- `enable_versioning` (boolean, optional, default: true, deprecated) — 已弃用：所有智能体均已版本化。此参数将被忽略。

### Body (application/json)

This endpoint expects an object.

- `conversation_config` (ConversationalConfig, required) — 智能体的对话配置
- `platform_settings` (AgentPlatformSettingsRequestModel, optional) — 智能体平台设置是指所有与对话编排和内容无关的设置。
- `workflow` (AgentWorkflowRequestModel, optional) — 智能体的 workflow。用于定义会话流程以及智能体如何与工具交互。
- `name` (string, optional) — 便于查找智能体的名称
- `tags` (list of string, optional) — 帮助分类和筛选智能体的标签

## Response

### 200

成功响应

- `agent_id` (string, required) — 已创建智能体的 ID

## Errors

### 422 Agents Create Request Unprocessable Entity Error

验证错误。

- `detail` (list of ValidationError, optional)

## Types

### ConversationalConfig

- `asr` (AsrConversationalConfig, optional) — Configuration for conversational transcription
- `turn` (TurnConfig, optional) — Configuration for turn detection
- `tts` (TtsConversationalConfigOutput, optional) — Configuration for conversational text to speech
- `conversation` (ConversationConfigOutput, optional) — Configuration for conversational events
- `language_presets` (map from string to LanguagePresetOutput, optional) — 对话语言预设
- `vad` (VadConfig, optional) — Configuration for voice activity detection
- `agent` (AgentConfig, optional) — 智能体专属配置

### AgentPlatformSettingsRequestModel

- `evaluation` (EvaluationSettingsInput, optional) — 评估设置
- `widget` (WidgetConfig, optional) — Configuration for the widget
- `data_collection` (map from string to AnalysisProperty, optional) — 数据收集设置
- `data_collection_scopes` (map from string to enum, optional) — 按数据收集项 ID 设置范围。缺失的键默认使用对话范围。
  - Allowed values: `conversation`, `agent`
- `analysis_items` (AgentAnalysisItemsInput, optional) — 通过引用关联的评估和数据收集项。None 表示智能体尚未迁移到分析项（不同于已迁移但为空的集合）；在这种情况下，读取操作会回退到旧版 evaluation/data_collection 字段。
- `overrides` (ConversationInitiationClientDataConfigInput, optional) — 发起对话时对智能体的额外覆盖设置
- `workspace_overrides` (AgentWorkspaceOverridesInput, optional) — 智能体的工作区覆盖设置
- `testing` (AgentTestingSettings, optional) — 智能体测试配置
- `archived` (boolean, optional, default: false) — 智能体是否已归档
- `guardrails` (GuardrailsV1Input, optional) — 智能体的安全护栏配置
- `summary_language` (string, optional) — 所有对话分析输出（摘要、标题、评估理由、数据收集理由）所用的语言。未设置时，将根据对话推断语言。必须是支持的对话语言之一。
- `auto_translate_transcript_to_app_language` (boolean, optional) — 启用后，查看者打开转写页面时，对话转写会自动翻译为其应用语言。未设置或设为 false 时，转写将以原始语言显示，除非查看者手动选择翻译。
- `auth` (AuthSettings, optional) — 身份验证设置
- `call_limits` (AgentCallLimits, optional) — Call limits for the agent
- `queueing_config` (AgentQueueingConfig, optional) — Concurrency wait-queue config for the agent
- `privacy` (PrivacyConfigInput, optional) — 智能体隐私设置
- `trust_context` (enum, optional, default: unknown) — 智能体运行所在的信任上下文。
  - Allowed values: `unknown`, `low`, `high`
- `analysis_llm` (enum, optional) — 用于通话后分析（评估和数据收集）的默认 LLM 模型
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `topic_discovery` (TopicDiscoverySettings, optional) — 每个智能体的话题发现配置
- `sentiment_analysis` (SentimentAnalysisSettings, optional) — 每个智能体的通话后情感分析配置
- `alerting` (AlertingSettings, optional) — 覆盖工作区设置的智能体级告警配置。

### AgentWorkflowRequestModel

- `edges` (map from string to WorkflowEdgeModelInput, optional)
- `nodes` (map from string to AgentWorkflowRequestModelNodesValue, optional)
- `prevent_subagent_loops` (boolean, optional, default: false) — 是否防止 workflow 执行中出现循环。

### ValidationError

- `loc` (list of ValidationErrorLocItem, required)
- `msg` (string, required)
- `type` (string, required)

### AsrConversationalConfig

- `quality` ("high", optional) — 转录质量
- `provider` (enum, optional, default: scribe_realtime) — 转录服务提供商
  - Allowed values: `elevenlabs`, `scribe_realtime`, `scribe_v2_turbo`
- `user_input_audio_format` (enum, optional, default: pcm_16000) — 要转录音频的格式
  - Allowed values: `pcm_8000`, `pcm_16000`, `pcm_22050`, `pcm_24000`, `pcm_44100`, `pcm_48000`, `ulaw_8000`
- `keywords` (list of string, optional) — 用于提高预测概率的关键词

### TurnConfig

- `turn_timeout` (double, optional, default: 7) — 再次联系用户前等待用户回复的最长时间
- `initial_wait_time` (double, optional) — How long the agent will wait for the user to start the conversation if the first message is empty. If not set, uses the regular turn_timeout.
- `silence_end_call_timeout` (double, optional, default: -1) — 用户最后一次说话后终止通话前的最长等待时间
- `turn_eagerness` (enum, optional, default: normal) — 控制智能体的响应积极程度。Low = 较不积极（等待更久），Standard = 默认积极程度，High = 更积极（响应更快）。
  - Allowed values: `patient`, `normal`, `eager`
- `spelling_patience` (enum, optional, default: auto) — 控制用户逐个拼读数字和命名实体时，智能体是否应更耐心等待。Auto = 基于模型判断，Off = 不额外等待。
  - Allowed values: `auto`, `off`
- `speculative_turn` (boolean, optional, default: false) — 启用后，在达到完整轮次置信度前的静音期间开始生成 LLM 回复，以降低感知延迟。可能增加 LLM 成本。
- `retranscribe_on_turn_timeout` (boolean, optional, default: false) — 启用后，如果 VAD 未检测到语音，会在轮次超时时尝试重新转录累计音频。为当前智能体或 workflow 节点启用期间，将停用静音折扣计费。
- `turn_model` (enum, optional, default: turn_v3) — 要使用的轮次检测模型版本。
  - Allowed values: `turn_v2`, `turn_v3`
- `interruption_ignore_terms` (list of string, optional) — 用户说出时不应触发打断的词条列表（例如“gotcha”“understood”）。使用不区分大小写的精确匹配。
- `interruption_ignore_term_languages` (list of string, optional) — 已启用预设忽略词类别的语言代码。明确存储，避免根据词条重叠推断显示内容。
- `merge_with_default_ignore_terms` (boolean, optional, default: false) — 启用后，除 interruption_ignore_terms 外，还会使用为 interruption_ignore_term_languages 精选的默认词条。
- `transcribe_on_disabled_interruptions` (boolean, optional, default: false) — 禁用打断时，仍会转写用户所说内容，以便带入下一轮。关闭后，不可打断轮次期间的用户语音将被忽略，且不会触发新一轮。
- `soft_timeout_config` (SoftTimeoutConfig, optional) — Configuration for soft timeout functionality. Provides immediate feedback during longer LLM responses.

### TtsConversationalConfigOutput

- `model_id` (enum, optional, default: eleven_v4_turbo) — 用于 TTS 的模型
  - Allowed values: `eleven_turbo_v2`, `eleven_turbo_v2_5`, `eleven_flash_v2`, `eleven_flash_v2_5`, `eleven_multilingual_v2`, `eleven_v3_conversational`, `eleven_v4`, `eleven_v4_turbo`
- `voice_id` (string, optional, default: cjVigY5qzO86Huf0OWal) — 用于 TTS 的音色 ID。
- `supported_voices` (list of SupportedVoice, optional) — 智能体额外支持的音色
- `expressive_mode` (boolean, optional, default: true) — 启用后，应用富表现力音频标签提示词。非 v3 模型会自动禁用。
- `suggested_audio_tags` (list of SuggestedAudioTag, optional) — 用于增强富有表现力语音的建议音频标签（适用于 eleven_v3 和 eleven_v3_conversational 模型）。智能体仍可使用此处未列出的其他标签。
- `agent_output_audio_format` (enum, optional, default: pcm_16000) — TTS 使用的音频格式
  - Allowed values: `pcm_8000`, `pcm_16000`, `pcm_22050`, `pcm_24000`, `pcm_44100`, `pcm_48000`, `ulaw_8000`
- `optimize_streaming_latency` (integer, optional) — 已弃用：此字段无效，将被忽略。
- `stability` (double, optional, default: 0.5) — 生成语音的稳定性
- `speed` (double, optional, default: 1) — 生成语音的速度
- `similarity_boost` (double, optional, default: 0.8) — 生成语音的相似度增强
- `text_normalisation_type` (enum, optional, default: system_prompt) — 将文本转为语音前把数字转换为文字的方法。设为 SYSTEM_PROMPT 时，系统提示词会更新为包含规范化说明。设为 ELEVENLABS 时，文本会在生成后规范化，这会略微增加延迟。
  - Allowed values: `system_prompt`, `elevenlabs`
- `pronunciation_dictionary_locators` (list of PydanticPronunciationDictionaryVersionLocator, optional) — 发音词典定位器
- `enable_phoneme_tags` (boolean, optional, default: true) — 选择为 V3 模型启用 SSML 音素标签处理。启用后，音素标签（内联及来自发音词典的标签）会先解析为内联 IPA，再发送给模型。
- `audio_effects` (EffectsSpecOutput, optional) — 可选的 TTS 效果规格：滤镜预设、距离（近讲 EQ）和环境（卷积混响）。

### ConversationConfigOutput

- `text_only` (boolean, optional, default: false) — 启用后将不处理音频，仅使用文本，可避免音频计费。
- `max_duration_seconds` (integer, optional, default: 600) — 单次对话的最长时长，单位为秒
- `client_events` (list of enum, optional) — 将发送至客户端的事件
  - Allowed values: `conversation_initiation_metadata`, `asr_initiation_metadata`, `ping`, `audio`, `interruption`, `user_transcript`, `tentative_user_transcript`, `agent_response`, `agent_response_correction`, `client_tool_call`, `mcp_tool_call`, `mcp_connection_status`, `agent_tool_request`, `agent_tool_response`, `agent_tool_response_full_payload`, `agent_response_metadata`, `vad_score`, `agent_chat_response_part`, `client_error`, `guardrail_triggered`, `dtmf_request`, `agent_response_complete`, `context_usage`, `internal_turn_probability`, `internal_tentative_agent_response`
- `file_input` (FileInputConfig, optional) — Configuration for file input (image/PDF uploads) during conversations.
- `monitoring_enabled` (boolean, optional, default: false) — 通过 WebSocket 启用对话实时监控
- `monitoring_events` (list of enum, optional) — 将发送至监控连接的事件。
  - Allowed values: `conversation_initiation_metadata`, `asr_initiation_metadata`, `ping`, `audio`, `interruption`, `user_transcript`, `tentative_user_transcript`, `agent_response`, `agent_response_correction`, `client_tool_call`, `mcp_tool_call`, `mcp_connection_status`, `agent_tool_request`, `agent_tool_response`, `agent_tool_response_full_payload`, `agent_response_metadata`, `vad_score`, `agent_chat_response_part`, `client_error`, `guardrail_triggered`, `dtmf_request`, `agent_response_complete`, `context_usage`, `internal_turn_probability`, `internal_tentative_agent_response`
- `dtmf_input_settings` (DtmfInputConfig, optional) — Configure DTMF (keypad) input collection during phone calls
- `background_sound` (BackgroundSoundConfig, optional) — Configuration for background sound during conversations.
- `source_attribution` (boolean, optional, default: false) — 启用后，若存在知识库内容，将要求 LLM 报告所使用的来源。

### LanguagePresetOutput

- `overrides` (ConversationConfigClientOverrideOutput, required) — 语言预设的覆盖设置
- `first_message_translation` (LanguagePresetTranslation, optional) — 第一条消息的翻译
- `soft_timeout_translation` (LanguagePresetTranslation, optional) — 软超时消息的翻译

### VadConfig

### AgentConfig

- `first_message` (string, optional, default: ) — 非空时，为智能体首先说出的消息。为空时，智能体会等待用户发起对话。
- `language` (string, optional, default: en) — 智能体语言，用于 ASR 和 TTS
- `hinglish_mode` (boolean, optional, default: false) — 启用后，智能体会在印地语、马拉雅拉姆语、泰卢固语或卡纳达语回复中混用英语单词和短语。
- `dynamic_variables` (any, optional)
- `disable_first_message_interruptions` (boolean, optional, default: false) — 如果为 true，在发送第一条消息期间，用户无法打断智能体。
- `max_conversation_duration_message` (string, optional, default: ) — 非空时，为达到最长对话时长后智能体发送的消息。
- `text_behavior_overrides` (map from string to BehaviorOverride, optional) — 文本对话的每个渠道响应行为覆盖选项。未设置时使用内置渠道默认值。
- `prompt` (PromptAgentApiModelOutput, optional) — 智能体的提示词

### EvaluationSettingsInput

用于评估智能体性能的设置。 智能体将根据一组标准进行评估，成功定义为满足其中某些标准的组合。

- `criteria` (list of PromptEvaluationCriteria, optional) — 用于评估智能体的各项条件

### WidgetConfig

- `variant` (enum, optional, default: full) — 组件变体
  - Allowed values: `tiny`, `compact`, `full`, `expandable`
- `placement` (enum, optional, default: bottom-right) — 小组件在屏幕上的位置
  - Allowed values: `top-left`, `top`, `top-right`, `bottom-left`, `bottom`, `bottom-right`
- `expandable` (enum, optional, default: never) — 小组件是否可展开
  - Allowed values: `never`, `mobile`, `desktop`, `always`
- `avatar` (WidgetConfigAvatar, optional) — 小组件的头像
- `feedback_mode` (enum, optional, default: none) — 组件的反馈模式
  - Allowed values: `none`, `during`, `end`
- `end_feedback` (WidgetEndFeedbackConfig, optional) — Configuration for feedback collected at the end of the conversation
- `bg_color` (string, optional, default: #ffffff) — 小组件的背景色
- `text_color` (string, optional, default: #000000) — 组件的文本颜色
- `btn_color` (string, optional, default: #000000) — 小组件的按钮颜色
- `btn_text_color` (string, optional, default: #ffffff) — 小组件的按钮文本颜色
- `border_color` (string, optional, default: #e1e1e1) — 小组件的边框颜色
- `focus_color` (string, optional, default: #000000) — 组件的焦点颜色
- `border_radius` (integer, optional) — 小组件的边框圆角
- `btn_radius` (integer, optional) — 小组件的按钮圆角
- `action_text` (string, optional) — 小组件的操作文本
- `start_call_text` (string, optional) — 小部件的开始通话文本
- `end_call_text` (string, optional) — 组件的结束通话文本
- `expand_text` (string, optional) — 组件的展开文本
- `listening_text` (string, optional) — 智能体正在聆听时显示的文本
- `speaking_text` (string, optional) — 智能体正在说话时显示的文本
- `shareable_page_text` (string, optional) — 分享时显示的文本
- `shareable_page_show_terms` (boolean, optional, default: true) — 是否在可分享页面显示条款和条件
- `terms_text` (string, optional) — 要显示的条款与条件文本
- `terms_html` (string, optional) — 要显示的条款和条件 HTML
- `terms_key` (string, optional) — 用于显示条款与条件的键
- `show_avatar_when_collapsed` (boolean, optional) — 小组件折叠时是否显示头像
- `disable_banner` (boolean, optional, default: false) — 是否禁用横幅
- `override_link` (string, optional) — 小组件的覆盖链接
- `markdown_link_allowed_hosts` (list of AllowlistItem, optional) — 允许用于可点击 Markdown 链接的主机名列表。使用 \{ hostname: '\*' } 可允许任何域名。留空表示不允许任何链接。
- `markdown_link_include_www` (boolean, optional, default: true) — 是否自动包含允许主机的 www. 变体
- `markdown_link_allow_http` (boolean, optional, default: true) — 允许的主机是否除 https:// 外也允许 http://
- `mic_muting_enabled` (boolean, optional, default: true) — 是否启用麦克风静音
- `transcript_enabled` (boolean, optional, default: true) — 小组件是否应在对话进行时显示转录文本
- `text_input_enabled` (boolean, optional, default: true) — 用户是否应能够发送文本消息
- `conversation_mode_toggle_enabled` (boolean, optional, default: false) — 是否在小组件中启用会话模式切换
- `default_expanded` (boolean, optional, default: false) — 小组件是否应默认展开
- `always_expanded` (boolean, optional, default: false) — 小组件是否应始终展开
- `dismissible` (boolean, optional, default: false) — 用户是否可关闭小组件
- `show_agent_status` (boolean, optional, default: false) — 是否在使用工具时显示智能体的处理中、完成和错误状态
- `show_conversation_id` (boolean, optional, default: true) — 断开连接后是否显示会话 ID。
- `strip_audio_tags` (boolean, optional, default: true) — 是否从消息中移除音频标记。
- `syntax_highlight_theme` (enum, optional) — 代码块语法高亮主题。未设置时默认由小组件自动检测。
  - Allowed values: `light`, `dark`
- `text_contents` (WidgetTextContents, optional) — 小组件的文本内容
- `styles` (WidgetStyles, optional) — 组件样式
- `show_resize_button` (boolean, optional, default: true) — 是否显示调整大小按钮
- `end_confirmation_enabled` (boolean, optional, default: false) — 结束聊天或通话前是否要求用户确认
- `language_selector` (boolean, optional, default: false) — 是否显示语言选择器
- `supports_text_only` (boolean, optional, default: true) — 小组件是否可切换为纯文本模式
- `custom_avatar_path` (string, optional) — 自定义头像路径
- `language_presets` (map from string to WidgetLanguagePreset, optional) — 小组件语言预设

### AnalysisProperty

用于通话后分析的数据收集属性，支持可选的逐项 LLM 覆盖。 TODO：迁移至组合方式（value_schema: LiteralJsonSchemaProperty + llm），而非 继承，以便未来能顺利泛化至对象/数组架构。

- `type` (enum, required)
  - Allowed values: `boolean`, `string`, `integer`, `number`
- `description` (string, optional, default: ) — 属性描述。设置后，LLM 将根据此描述提供值。不能与 dynamic_variable、is_system_provided、constant_value 和 is_omitted 同时使用。
- `enum` (list of string, optional) — List of allowed string values for string type parameters
- `is_system_provided` (boolean, optional, default: false) — 如果为 true，该值将在运行时由系统填充。供 API Integration Webhook 工具用于模板化。与 description、dynamic_variable、constant_value 和 is_omitted 互斥。
- `dynamic_variable` (string, optional, default: ) — 用于此属性值的动态变量名称。不能与 description、is_system_provided、constant_value 和 is_omitted 同时使用。
- `allowed_values` (AllowedValues, optional) — 针对 LLM 提供值的服务端拒绝保护：运行时会拒绝此对象指定的允许集合以外的任何值，且不会将该集合以枚举形式提供给 LLM。仅当值来源为 `description` 时支持；与 dynamic_variable、is_system_provided、constant_value 或 is_omitted 结合使用会被拒绝。
- `constant_value` (AnalysisPropertyConstantValue, optional) — 用于此属性的常量值。与 description、dynamic_variable、is_system_provided 和 is_omitted 互斥。
- `is_omitted` (boolean, optional, default: false) — 如果为 true，此参数将完全从请求中省略。仅对可选参数有效。与 description、dynamic_variable、is_system_provided 和 constant_value 互斥。
- `name` (string, optional) — 此数据收集项的名称。
- `llm` (enum, optional) — 用于此分析项的 LLM 模型。未设置时，使用智能体的 analysis_llm 默认值。
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `allowed_values_dynamic_variable` (string, optional, default: , deprecated) — 已弃用：请改用 `allowed_values`。设置后，LLM 会提供值，但运行时会拒绝此动态变量持有的列表中不存在的任何值（必须是 JSON 数组，例如 ["ws_alpha", "ws_beta"]）。用于让 LLM 从服务器验证的集合中选择（例如当前用户允许访问的 ID）。需要 description；不能与 dynamic_variable、is_system_provided、constant_value 和 is_omitted 同时使用。

### AgentAnalysisItemsInput

- `evaluation_criteria` (list of AgentAnalysisItemsInputEvaluationCriteriaItem, optional)
- `data_collection` (list of AgentAnalysisItemsInputDataCollectionItem, optional)

### ConversationInitiationClientDataConfigInput

- `conversation_config_override` (ConversationConfigClientOverrideConfigInput, optional) — 对话配置覆盖选项
- `custom_llm_extra_body` (boolean, optional, default: false) — 是否包含自定义 LLM 额外请求体
- `enable_conversation_initiation_client_data_from_webhook` (boolean, optional, default: false) — 是否启用来自 webhook 的会话发起客户端数据
- `enable_starting_workflow_node_id_from_client` (boolean, optional, default: false) — 客户端是否可在初始化客户端数据中传递 starting_workflow_node_id；如果为 false，传递该字段将导致对话无法启动。
- `enable_procedure_ids_from_client` (boolean, optional, default: false) — 客户端是否可在初始化客户端数据中传递 procedure_ids，以选择可用于对话的智能体流程；如果为 false，传递该字段将导致对话无法启动。

### AgentWorkspaceOverridesInput

- `conversation_initiation_client_data_webhook` (ConversationInitiationClientDataWebhook, optional) — 用于发送对话发起客户端数据的 webhook。
- `webhooks` (ConvAiWebhooks, optional)

### AgentTestingSettings

智能体测试配置的设置。

- `attached_tests` (list of AttachedTestModel, optional) — 应为此智能体运行的测试 ID 列表

### GuardrailsV1Input

- `version` ("1", optional)
- `focus` (FocusGuardrail, optional)
- `prompt_injection` (PromptInjectionGuardrail, optional)
- `content` (ContentGuardrailInput, optional)
- `custom` (CustomGuardrailInput, optional) — Container for custom guardrails, matching ModerationGuardrail pattern

### AuthSettings

- `enable_auth` (boolean, optional, default: false) — 设为 true 时，开始与智能体对话需要已签名令牌。
- `allowlist` (list of AllowlistItem, optional) — 允许与智能体发起对话的主机列表。
- `require_origin_header` (boolean, optional, default: false) — 启用后，将拒绝没有 origin 标头的连接。如果允许列表为空，此选项无效。
- `shareable_token` (string, optional) — 可用于与智能体开始对话的共享令牌

### AgentCallLimits

- `agent_concurrency_limit` (integer, optional, default: -1) — 最大并发对话数。-1 表示无上限
- `daily_limit` (integer, optional, default: 100000) — 每天最大对话数
- `bursting_enabled` (boolean, optional, default: true) — 是否启用突发并发。如果为 true，则允许超出工作区并发限制，最高可达限制的 3 倍。超出限制时，调用将按双倍费率收费。

### AgentQueueingConfig

- `enabled` (boolean, optional, default: false) — 当智能体达到并发限制时，将来电者置于等待队列中，而非立即拒绝。除非明确设置此字段，否则新建智能体默认启用排队。
- `wait_timeout_seconds` (integer, optional, default: 180) — 来电者在队列中被拒绝前的最长等待时间
- `hold_audio` (AgentHoldAudioConfig, optional) — 向队列中的来电者播放的自定义等待音频；未设置时，来电者将听到默认等待音。只读：通过智能体等待音频端点上传文件进行设置。

### PrivacyConfigInput

- `record_voice` (boolean, optional, default: true) — 是否录制会话
- `retention_days` (integer, optional, default: -1) — 对话保留天数。-1 表示不限制保留时间
- `delete_transcript_and_pii` (boolean, optional, default: false) — 是否删除转录文本和 PII
- `delete_audio` (boolean, optional, default: false) — 是否删除音频
- `apply_to_existing_conversations` (boolean, optional, default: false) — 是否将隐私设置应用于现有对话
- `zero_retention_mode` (boolean, optional, default: false) — 是否启用零保留模式，即不存储 PII 数据
- `conversation_history_redaction` (ConversationHistoryRedactionConfig, optional) — Config for PII redaction in the conversation history

### TopicDiscoverySettings

每个智能体的话题发现配置。频率和分析窗口由内部管理；此项仅提供面向客户的开关。

### SentimentAnalysisSettings

### AlertingSettings

适用于智能体和工作区级别的告警配置。 每个监控器的阈值和自动解决设置按以下顺序级联：智能体 → 工作区 → 系统默认值。

- `monitor_configs` (map from string to AlertingMonitorConfig, optional) — 按监控器名称编排的告警配置。
- `auto_resolve_after_inactive_minutes` (integer, optional) — 警报自动解决前可保持不活跃状态的分钟数。未设置的值将沿用下一层的设置。
- `notifiers` (list of AlertingSettingsNotifiersItem, optional) — 告警生命周期通知的发送渠道。与其他层叠加，并按 ``webhook_id``、PagerDuty ``connection_id`` 或 Slack ``(connection_id, channel_id)`` 去重。

### WorkflowEdgeModelInput

- `source` (string, required) — 源节点 ID。
- `target` (string, required) — 目标节点 ID。
- `forward_condition` (WorkflowEdgeModelInputForwardCondition, optional) — Condition that must be met for the edge to be traversed in the forward direction (source to target).
- `backward_condition` (WorkflowEdgeModelInputBackwardCondition, optional) — Condition that must be met for the edge to be traversed in the backward direction (target to source).

### AgentWorkflowRequestModelNodesValue

- `type`: `end`
  - `edge_order` (list of string, optional) — 出边的 ID，按应评估的顺序排列。
  - `outcome` (enum, optional, default: success) — 到达此结束节点时，是以成功还是失败结束对话。
    - Allowed values: `success`, `failure`
  - `position` (PositionInput, optional) — 节点在 workflow 中的位置。
- `type`: `override_agent`
  - `label` (string, required) — 整个 UI 中使用的人类可读节点标签。
  - `additional_knowledge_base` (list of KnowledgeBaseLocator, optional) — 子智能体可访问的其他知识库文档。这些文档会与主智能体的文档一同使用。
  - `additional_prompt` (string, optional) — 此子智能体的具体目标。该目标会添加到系统提示词中，可用于进一步优化智能体在此特定上下文中的行为。
  - `additional_tool_ids` (list of string, optional) — 子智能体可访问的其他工具 ID。将与主智能体的工具一同使用。
  - `conversation_config` (ConversationalConfigApiModelWorkflowOverrideInput, optional) — Configuration overrides applied while the subagent is conducting the conversation.
  - `edge_order` (list of string, optional) — 出边的 ID，按应评估的顺序排列。
  - `entry_behavior` (enum, optional, default: auto) — 决定此节点进入后应立即生成响应，还是等待用户输入。设为 "auto" 时，将根据前一节点的类型决定行为：在 "say" 和 "start" 节点后使用 "wait_for_user"，其他情况使用 "generate_immediately"。
    - Allowed values: `generate_immediately`, `wait_for_user`, `auto`
  - `position` (PositionInput, optional) — 节点在 workflow 中的位置。
- `type`: `phone_number`
  - `transfer_destination` (WorkflowPhoneNumberNodeModelInputTransferDestination, required)
  - `custom_sip_headers` (list of WorkflowPhoneNumberNodeModelInputCustomSipHeadersItem, optional) — 转接通话时包含的自定义 SIP 请求头。每个请求头可以是静态值或动态变量引用。
  - `edge_order` (list of string, optional) — 出边的 ID，按应评估的顺序排列。
  - `position` (PositionInput, optional) — 节点在 workflow 中的位置。
  - `post_dial_digits` (WorkflowPhoneNumberNodeModelInputPostDialDigits, optional) — 通话接通后发送的 DTMF 按键（例如，分机号使用 'ww1234'）。可以是静态值或动态变量引用。使用 'w' 表示暂停 0.5 秒。仅支持 Twilio 转接。
  - `sip_refer_play_dialtone` (boolean, optional, default: true) — 设为 True 时，在 SIP REFER 转接完成期间，原始通话线路会播放回铃音。该音调会通过 RTP 传输给执行 REFER 的 SIP 对端，因此如果接收系统（如 SBC 或呼叫中心）不应听到该音调，请禁用此项。禁用后，呼叫方在转接完成前将听到静音。仅适用于 SIP REFER 转接。
  - `transfer_type` (enum, optional, default: conference)
    - Allowed values: `blind`, `conference`, `sip_refer`
  - `uui` (UuiTransferConfig, optional) — 附加到 SIP REFER 转接的用户间信息（User-to-User Information，RFC 7433）。可在转接过程中携带 CRM 标识符或升级原因等通话上下文。
- `type`: `standalone_agent`
  - `agent_id` (string, optional) — 要将对话转接至的智能体 ID。None 表示在当前智能体内转接。
  - `branch_id` (string, optional) — 目标智能体的可选分支 ID。设为 None 时，沿用目标智能体的流量部署；若设置了 node_id，则使用其主分支。
  - `delay_ms` (integer, optional, default: 0) — Artificial delay in milliseconds applied before transferring the conversation.
  - `edge_order` (list of string, optional) — 出边的 ID，按应评估的顺序排列。
  - `enable_transferred_agent_first_message` (boolean, optional, default: false) — 是否允许转接后的智能体在转接后发送其配置的首条消息。
  - `node_id` (string, optional) — 目标智能体 workflow 中的可选目标节点 ID。设置后，转接将从该节点开始，而非默认入口节点。
  - `position` (PositionInput, optional) — 节点在 workflow 中的位置。
  - `preserve_client_tts_overrides` (boolean, optional, default: false) — 定义是否将 TTS 客户端覆盖设置沿用至被转接的智能体。
  - `preserve_voice_settings` (boolean, optional, default: false) — 定义是否将基础音色、TTS 模型和音色设置沿用至被转接的智能体。
  - `transfer_message` (string, optional) — 开始转接前发送给用户的可选消息。
- `type`: `start`
  - `edge_order` (list of string, optional) — 出边的 ID，按应评估的顺序排列。
  - `position` (PositionInput, optional) — 节点在 workflow 中的位置。
- `type`: `tool`
  - `edge_order` (list of string, optional) — 出边的 ID，按应评估的顺序排列。
  - `position` (PositionInput, optional) — 节点在 workflow 中的位置。
  - `tools` (list of WorkflowToolLocator, optional) — 要并行执行的工具列表。所有工具均成功执行时，整个节点才视为成功。
- `type`: `say`
  - `label` (string, required) — 整个 UI 中使用的人类可读节点标签。
  - `message` (WorkflowSayNodeModelInputMessage, required) — 此节点朗读的消息。使用 `literal` 指定精确文本，或使用 `prompt` 让 LLM 根据描述生成消息。
  - `additional_knowledge_base` (list of KnowledgeBaseLocator, optional) — 除智能体文档外，此节点生成消息时可供 LLM 使用的知识库文档。
  - `additional_prompt` (string, optional) — 为与子智能体节点保持一致而接受此项，但不会使用。请在 `message.prompt` 中描述消息，或通过 `conversation_config.agent.prompt.prompt` 替换系统提示词。
  - `additional_tool_ids` (list of string, optional) — 为与子智能体节点保持一致而接受此项，但不会使用。say 节点无法调用工具。
  - `conversation_config` (ConversationalConfigApiModelWorkflowOverrideInput, optional) — 此节点说话时应用的配置覆盖项，例如音色；对于提示词消息，还包括 LLM 和系统提示词。
  - `edge_order` (list of string, optional) — 出边的 ID，按应评估的顺序排列。
  - `position` (PositionInput, optional) — 节点在 workflow 中的位置。
  - `wait_for_speech_completion` (boolean, optional, default: false) — 设为 true 时，只有在消息完整朗读后，workflow 才会进入下一个节点。
  - `wait_for_user_response` (boolean, optional, default: false) — 设为 true 时，节点会先朗读消息，再等待用户回复，然后评估出边，以便根据回复进行分支。如果用户保持沉默，workflow 会在轮次超时后继续。
- `type`: `update_state`
  - `label` (string, required) — 整个 UI 中使用的人类可读节点标签。
  - `updates` (list of WorkflowStateUpdateInput, required) — workflow 到达此节点时应用的状态更新。每个节点最多接受 50 项更新。
  - `edge_order` (list of string, optional) — 出边的 ID，按应评估的顺序排列。
  - `position` (PositionInput, optional) — 节点在 workflow 中的位置。

### ValidationErrorLocItem

- string
- integer

### SoftTimeoutConfig

Configuration for soft timeout functionality during LLM response generation.

- `timeout_seconds` (double, optional, default: -1) — 等待 LLM 响应时显示预定义消息前的秒数。设为 -1 可禁用。
- `message` (string, optional, default: Hhmmmm...yeah.) — 等待 LLM 响应时，首次达到软超时时显示的消息。支持动态变量（例如 \{\{system\_\_time}}、\{\{custom\_variable}}）。
- `additional_soft_timeout_messages` (list of string, optional) — 同一次 LLM 生成中后续软超时时使用的额外静态填充消息。首次超时使用 `message`。如果配置的消息少于 `max_soft_timeouts_per_generation`，会重复最后一条配置的消息；否则使用内置填充消息。
- `use_llm_generated_message` (boolean, optional, default: false) — 启用后，将动态生成软超时消息，而非使用静态消息。
- `randomize_fillers` (boolean, optional, default: false) — 启用后，在每轮开始时随机打乱静态软超时消息的顺序。仅在 use_llm_generated_message 为 false 时适用。
- `max_soft_timeouts_per_generation` (integer, optional, default: 1) — 等待单次 LLM 响应期间允许发送的最大填充消息数。每隔 timeout_seconds 触发一次，直到 LLM 开始流式返回内容或达到此限制。
- `llm_generated_message_prompt_override` (string, optional) — 启用 use\_llm\_generated\_message 时，用于生成软超时填充消息的自定义提示词。最近的对话上下文将作为单独的用户消息提供。未设置时将使用默认提示词。支持动态变量（例如 \{\{system\_\_time}}、\{\{custom\_variable}}）。
- `disable_until_first_user_message` (boolean, optional, default: false) — 设为 true 时，在对话至少包含一条真实用户消息前，将不使用软超时填充语。避免在智能体开场轮次中使用填充语（例如 workflow 立即生成，或用户说话前调用工具）。

### SupportedVoice

- `label` (string, required)
- `voice_id` (string, required)
- `description` (string, optional)
- `language` (string, optional)
- `model_family` (enum, optional)
  - Allowed values: `turbo`, `flash`, `multilingual`, `v3_conversational`, `v4`, `v4_turbo`
- `optimize_streaming_latency` (integer, optional)
- `stability` (double, optional)
- `speed` (double, optional)
- `similarity_boost` (double, optional)

### SuggestedAudioTag

- `tag` (string, required) — Audio tag to use (for best performance, 1-2 words, e.g., 'happy', 'excited')
- `description` (string, optional) — 何时使用此标签的可选说明

### PydanticPronunciationDictionaryVersionLocator

供其他文档引用特定词典及其版本的定位符。 这是 PronunciationDictionaryVersionLocatorDBModel 的 pydantic 版本。 用于确保与其他智能体数据模型兼容。

- `pronunciation_dictionary_id` (string, required) — 发音词典的 ID
- `version_id` (string, optional) — 发音词典版本的 ID

### EffectsSpecOutput

应用于生成语音的音频效果：滤镜预设、感知距离、混响 环境、背景噪声底音和立体声声像。将所有字段保留为默认值， 即可获得未经处理的音频。

- `distance` (double, required, default: 0) — 说话者听起来与麦克风的距离，范围为 0（近，不变）至 1（远）。值越高，低频和高频衰减越多；设置环境后，干声与混响之间的平衡会更偏向混响。
- `send_level` (double, required, default: 1) — 输入混响的语音比例，范围为 0（无）至 1（全部）。仅在设置 `environment_id` 时生效；0 会关闭混响。
- `pan` (double, required, default: 0) — 音色的立体声位置，范围从 -1（最左）经 0（居中）到 1（最右）。仅音色会进行声像定位；混响和背景噪声保持居中。
- `filter_preset_id` (string, optional) — 为语音增添音色特征的滤镜预设 ID，例如 `phone` 或 `old_radio`。使用 `GET /v1/audio-effects/catalog` 列出有效 ID。
- `environment_id` (string, optional) — 将语音置于特定空间中的混响环境 ID，例如 `small_room` 或 `hall`。使用 `GET /v1/audio-effects/catalog` 列出有效 ID。混响以立体声渲染，并会在语音结束后添加最长数秒的余响。
- `background_noise_id` (string, optional) — 在语音下方循环播放的背景噪声底音 ID，例如 `cafe` 或 `keyboard`。使用 `GET /v1/audio-effects/catalog` 列出有效 ID。

### FileInputConfig

- `enabled` (boolean, optional, default: true) — 启用后，如果 LLM 支持多模态输入，用户可在聊天中附加图片、PDF 或文本文件。
- `max_files_in_memory` (integer, optional, default: 10) — 对话期间保留在内存中的最新文件数量。较旧文件会被总结并释放其字节数据。
- `max_files_per_conversation` (integer, optional, default: 10) — 用户在一次对话中可上传的文件总数。上传按文件计费。使用 -1 表示不限，或设为大于等于 max_files_in_memory 的值。

### DtmfInputConfig

Configuration for DTMF (keypad) input collection during phone calls.

- `dtmf_input_timeout` (double, optional, default: 2) — 等待额外 DTMF 按键的超时时间（秒）。
- `hash_terminator` (boolean, optional, default: true) — 如果为 true，按下 # 会立即完成 DTMF 输入。
- `redact_input` (boolean, optional, default: false) — 如果为 true，将在转录文本、对话日志和分析中用脱敏标记替换来电者的 DTMF（键盘）输入。智能体复述或传递给工具的数字不受影响。

### BackgroundSoundConfig

- `source_type` ("preset", optional) — 背景声音源类型。
- `source_id` (enum, optional) — 声音源标识符。
  - Allowed values: `office2`, `office1`, `restaurant`, `city`, `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
- `volume` (double, optional, default: 0.15) — 背景音量级别（0.01 至 1.0）。
- `crossfade_loop` (boolean, optional, default: true) — 在循环边界应用交叉淡化，避免声音循环时出现爆音。

### ConversationConfigClientOverrideOutput

- `asr` (AsrConversationalConfigOverride, optional) — Configuration for conversational transcription
- `turn` (TurnConfigOverride, optional) — Configuration for turn detection
- `tts` (TtsConversationalConfigOverride, optional) — Configuration for conversational text to speech
- `conversation` (ConversationConfigOverride, optional) — Configuration for conversational events
- `agent` (AgentConfigOverrideOutput, optional) — 智能体专属配置

### LanguagePresetTranslation

- `source_hash` (string, required)
- `text` (string, required)

### BehaviorOverride

- `verbosity` (enum, optional) — 详细程度覆盖设置。未设置时使用底层默认值。
  - Allowed values: `auto`, `concise`, `thorough`
- `output_format` (enum, optional) — 输出格式覆盖值。未设置时使用底层默认值。
  - Allowed values: `mp3_22050_32`, `mp3_44100_32`, `mp3_44100_64`, `mp3_44100_96`, `mp3_44100_128`, `mp3_44100_192`, `pcm_16000`, `pcm_22050`, `pcm_24000`, `pcm_44100`, `ulaw_8000`
- `interaction_budget` (enum, optional) — 交互预算覆盖设置。未设置时使用底层默认值。
  - Allowed values: `realtime`, `5_minutes`, `10_minutes`, `1_hour`

### PromptAgentApiModelOutput

- `prompt` (string, optional, default: ) — 智能体的提示词
- `llm` (enum, optional) — 用于结合提示词和聊天记录进行查询的 LLM。使用数据驻留时，该 LLM 必须受数据驻留环境支持
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `reasoning_effort` (enum, optional) — 模型的推理强度。仅部分模型支持。
  - Allowed values: `none`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`
- `thinking_budget` (integer, optional) — 用于思考的最大 token 数。模型支持时，设为 0 可关闭。
- `enable_reasoning_summary` (boolean, optional, default: false) — 启用模型推理摘要。禁用后，如可行，将不向提供商请求摘要，以加快 TTFB。不兼容 ZRM。
- `temperature` (double, optional) — LLM 的 temperature。默认为 0。设为 null 可从 LLM 请求中完全省略此参数（适用于拒绝 temperature 字段的自定义 LLM）。
- `max_tokens` (integer, optional, default: -1) — 若大于 0，则为 LLM 可预测的最大 token 数
- `tool_ids` (list of string, optional) — 智能体使用的工具 ID 列表。
- `tool_ids_strict` (boolean, optional, default: false) — 仅作为对话覆盖项生效，在允许覆盖 tool_ids 时均可使用。为 true 时，覆盖后的 tool_ids 是对话中允许使用的完整工具列表，包括 workflow 节点上的工具。在智能体上设置时会被忽略。
- `built_in_tools` (BuiltInToolsOutput, optional) — Built-in system tools to be used by the agent
- `enable_parallel_tool_calls` (boolean, optional, default: true) — 启用并行工具调用。启用后，智能体可在单个轮次中并行执行多个工具。并非所有模型都支持。
- `mcp_server_ids` (list of string, optional) — 供智能体使用的 MCP 服务器 ID 列表
- `native_mcp_server_ids` (list of string, optional) — 供智能体使用的原生 MCP 服务器 ID 列表
- `knowledge_base` (list of KnowledgeBaseLocator, optional) — 供智能体使用的知识库列表
- `custom_llm` (CustomLlm, optional) — 当 LLM 字段设为 'CUSTOM_LLM' 时，自定义 LLM 的定义
- `ignore_default_personality` (boolean, optional) — 是否从系统提示词中移除默认人格描述
- `rag` (RagConfigOutput, optional) — Configuration for RAG
- `timezone` (string, optional) — 用于在系统提示词中显示当前时间的时区。设置后，系统提示词会按此时区包含当前时间。必须是有效的时区名称（如 'America/New_York'、'Europe/London'、'UTC'）。建议设置以获得准确的时间感知回复；否则，除非通过动态变量或工具提供，智能体不会知道当前日期和时间，可能导致时间引用错误或幻觉。
- `backup_llm_config` (PromptAgentApiModelOutputBackupLlmConfig, optional) — Configuration for backup LLM cascading. Can be disabled, use system defaults, or specify custom order.
- `cascade_timeout_seconds` (double, optional, default: 4) — 切换至备用 LLM 前等待的秒数。必须介于 2 至 15 秒。
- `tools` (list of PromptAgentApiModelOutputToolsItem, optional, deprecated) — 智能体在对话过程中可使用的工具列表，请改用 tool_ids。

### PromptEvaluationCriteria

使用转录文本和提示词评估是否达成目标，并返回是/否答案

- `id` (string, required) — 评估标准的唯一标识符
- `name` (string, required)
- `conversation_goal_prompt` (string, required) — 智能体用于评估对话的提示词
- `type` ("prompt", optional) — 评估标准类型
- `use_knowledge_base` (boolean, optional, default: false) — 评估提示词时是否使用智能体的知识库。
- `scope` (enum, optional, default: conversation) — 评估此条件时使用的转录文本上下文范围。'conversation' 使用完整转录文本；'agent' 仅使用定义该智能体处于活跃状态的部分。
  - Allowed values: `conversation`, `agent`
- `llm` (enum, optional) — 用于此评估标准的 LLM 模型。未设置时，使用智能体的 analysis_llm 默认值。
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `scoring_mode` (enum, optional, default: binary) — 此标准的评分方式。'binary' 会得到成功、失败或未知；'numeric_uniform' 会在 [0, max_score] 范围内返回数值，并将其归一化为汇总对话成功率。
  - Allowed values: `binary`, `numeric_uniform`
- `max_score` (integer, optional, default: 100) — 数值评分范围的最大值（最小值始终为 0）。仅在 scoring_mode 为 'numeric_uniform' 时使用。
- `score_instructions` (string, optional) — 可选的自由文本说明，用于描述如何在数值量表上赋值。仅当 scoring_mode 为 'numeric_uniform' 时使用。

### WidgetConfigAvatar

小组件的头像

- `type`: `orb`
  - `color_1` (string, optional, default: #2792dc) — 头像的第一个颜色
  - `color_2` (string, optional, default: #9ce6e6) — 头像的第二种颜色
- `type`: `url`
  - `custom_url` (string, optional, default: ) — 头像的自定义 URL
- `type`: `image`
  - `url` (string, optional, default: ) — 头像的 URL

### WidgetEndFeedbackConfig

- `type` ("rating", optional) — 在对话结束时收集的反馈类型

### AllowlistItem

- `hostname` (string, required) — 允许来源的主机名

### WidgetTextContents

- `main_label` (string, optional) — Call to action displayed inside the compact and full variants.
- `start_call` (string, optional) — 开始通话按钮的文本和 ARIA 标签。
- `start_chat` (string, optional) — 开始聊天按钮的文本和 ARIA 标签（仅文本）
- `new_call` (string, optional) — 新建通话按钮的文本和 ARIA 标签。当来电者已完成至少 1 次通话、准备开始下一次通话时显示。
- `end_call` (string, optional) — 结束通话按钮的文本和 ARIA 标签。
- `mute_microphone` (string, optional) — 麦克风静音按钮的 ARIA 标签。
- `change_language` (string, optional) — 切换语言下拉菜单的 ARIA 标签。
- `collapse` (string, optional) — 折叠按钮的 ARIA 标签。
- `expand` (string, optional) — 展开按钮的 ARIA 标签。
- `copied` (string, optional) — 用户使用复制按钮复制值时显示的文本。
- `accept_terms` (string, optional) — 接受条款按钮的文本和 ARIA 标签。
- `dismiss_terms` (string, optional) — 取消条款按钮的文本和 ARIA 标签。
- `listening_status` (string, optional) — 智能体聆听时显示的状态。
- `speaking_status` (string, optional) — 智能体说话时显示的状态。
- `connecting_status` (string, optional) — 智能体连接时显示的状态。
- `chatting_status` (string, optional) — 智能体聊天时显示的状态（仅文本）
- `queue_waiting_status` (string, optional) — 在队列中等待可用智能体时显示的状态。
- `queue_waiting_status_short` (string, optional) — 等待可用智能体时显示的简短状态。
- `input_label` (string, optional) — ARIA label for the text message input.
- `input_placeholder` (string, optional) — 短信输入框的占位文本。
- `input_placeholder_text_only` (string, optional) — 短信输入框的占位文本（仅文本）
- `input_placeholder_new_conversation` (string, optional) — 开始新对话时短信输入框的占位文本（仅文本）
- `user_ended_conversation` (string, optional) — 用户结束对话时显示的提示消息。
- `agent_ended_conversation` (string, optional) — 智能体结束对话时显示的提示消息。
- `conversation_id` (string, optional) — 对话 ID 旁使用的文本标签。
- `error_occurred` (string, optional) — 发生错误时使用的文本标签。
- `queue_timed_out` (string, optional) — 队列等待超时时显示的错误消息。
- `copy_id` (string, optional) — 复制 ID 按钮使用的文本和 ARIA 标签。
- `initiate_feedback` (string, optional) — 提示用户提供反馈的文本。
- `request_follow_up_feedback` (string, optional) — 请求补充反馈详情的文本。
- `thanks_for_feedback` (string, optional) — 感谢用户提供反馈的文本。
- `thanks_for_feedback_details` (string, optional) — 用于说明用户反馈价值的附加说明文字。
- `follow_up_feedback_placeholder` (string, optional) — 后续反馈输入框的占位文本。
- `submit` (string, optional) — 提交按钮的文本和 ARIA 标签。
- `go_back` (string, optional) — 返回按钮的文本和 ARIA 标签。
- `send_message` (string, optional) — 发送消息按钮的文本和 ARIA 标签。
- `text_mode` (string, optional) — 切换至文本模式按钮的文本和 ARIA 标签。
- `voice_mode` (string, optional) — 切换到语音模式按钮的文本和 ARIA 标签。
- `switched_to_text_mode` (string, optional) — 切换到文本模式时显示的 Toast 通知。
- `switched_to_voice_mode` (string, optional) — 切换到语音模式时显示的 Toast 通知。
- `copy` (string, optional) — 复制按钮的文本和 ARIA 标签。
- `download` (string, optional) — 下载按钮的文本和 ARIA 标签。
- `wrap` (string, optional) — 自动换行切换按钮的文本和 ARIA 标签。
- `agent_working` (string, optional) — 智能体正在处理工具调用时显示的状态文本。
- `agent_done` (string, optional) — 智能体完成处理工具调用时显示的状态文本。
- `agent_error` (string, optional) — 智能体在工具调用期间遇到错误时显示的状态文本。
- `attach_file` (string, optional) — 附加文件按钮的文本和 ARIA 标签。
- `remove_file` (string, optional) — ARIA label for the remove file button.
- `file_upload_error` (string, optional) — 文件上传失败时显示的错误消息。
- `file_type_unsupported` (string, optional) — 选择不支持的文件类型时显示的错误消息，后接可接受类型列表。
- `file_too_large` (string, optional) — 文件超过最大大小限制时显示的错误消息。
- `file_limit_reached` (string, optional) — 对话达到最大文件数量时显示的错误消息。
- `typing_indicator` (string, optional) — 智能体正在输入时显示的状态文本。
- `rich_content_unavailable` (string, optional) — 无法渲染富内容时显示的备用消息。

### WidgetStyles

- `base` (string, optional) — 基础背景色。
- `base_hover` (string, optional) — 基础背景在悬停时的颜色。
- `base_active` (string, optional) — 基础背景在激活（点击）时的颜色。
- `base_border` (string, optional) — 基础背景上的边框颜色。
- `base_subtle` (string, optional) — 基础背景上的次要文本颜色。
- `base_primary` (string, optional) — 基础背景上的主文本颜色。
- `base_error` (string, optional) — 基础背景上的错误文本颜色。
- `accent` (string, optional) — 强调背景色。
- `accent_hover` (string, optional) — 强调背景在悬停时的颜色。
- `accent_active` (string, optional) — 强调背景在激活（点击）时的颜色。
- `accent_border` (string, optional) — 强调背景上的边框颜色。
- `accent_subtle` (string, optional) — 强调背景上的次要文本颜色。
- `accent_primary` (string, optional) — 强调背景上的主文本颜色。
- `overlay_padding` (double, optional) — 视口边缘的内边距。
- `button_radius` (double, optional) — 按钮圆角半径。
- `input_radius` (double, optional) — 输入字段圆角半径。
- `bubble_radius` (double, optional) — 聊天气泡圆角半径。
- `sheet_radius` (double, optional) — 面板的默认圆角半径。
- `compact_sheet_radius` (double, optional) — 紧凑模式下面板的圆角半径。
- `dropdown_sheet_radius` (double, optional) — 下拉面板圆角半径。

### WidgetLanguagePreset

- `text_contents` (WidgetTextContents, optional) — 所选语言的文本内容
- `text_contents_translation` (WidgetTextContentsTranslation, optional) — 文本内容翻译缓存
- `terms_text` (string, optional) — 以此语言显示的条款与条件文本
- `terms_html` (string, optional) — 以此语言显示的条款和条件 HTML
- `terms_key` (string, optional) — 用于显示该语言条款与条件的键
- `terms_translation` (WidgetTermsTranslation, optional) — 术语翻译缓存

### AllowedValues

- `dynamic_variable` (string, required) — 动态变量名称，必须解析为包含允许值的 JSON 数组，例如 ["ws_alpha", "ws_beta"]。系统变量仅在解析为列表时有效。

### AnalysisPropertyConstantValue

用于此属性的常量值。与 description、dynamic_variable、is_system_provided 和 is_omitted 互斥。

- string
- integer
- double
- boolean

### AgentAnalysisItemsInputEvaluationCriteriaItem

- `source`: `system`
  - `analysis_item_id` (enum, required) — 引用的内置系统评估项 ID。
    - Allowed values: `__system_eval_criteria_sentiment`, `__system_eval_criteria_frustration`
  - `scope` (enum, optional, default: conversation) — 运行此项时使用的转录上下文（'conversation' 或 'agent'）。
    - Allowed values: `conversation`, `agent`
  - `weight` (double, optional) — 汇总评分的可选相对权重。
- `source`: `user`
  - `analysis_item_id` (string, required) — 引用的用户评估项 ID。
  - `additional_version_ids` (list of string, optional) — 额外运行以供比较（A/B）的项目版本。这些版本会执行并存储，但不参与评分；主要 version_id 才会参与评分。
  - `scope` (enum, optional, default: conversation) — 运行此项时使用的转录上下文（'conversation' 或 'agent'）。
    - Allowed values: `conversation`, `agent`
  - `version_id` (string, optional) — 用于评分结果的主项目版本。None 表示跟踪项目最新发布的版本。
  - `weight` (double, optional) — 汇总评分的可选相对权重。

### AgentAnalysisItemsInputDataCollectionItem

- `source`: `system`
  - `analysis_item_id` ("__system_data_collection_topic", required) — 引用的内置系统数据收集项 ID。
  - `scope` (enum, optional, default: conversation) — 运行此项时使用的转录上下文（'conversation' 或 'agent'）。
    - Allowed values: `conversation`, `agent`
- `source`: `user`
  - `analysis_item_id` (string, required) — 引用的用户数据收集项 ID。
  - `scope` (enum, optional, default: conversation) — 运行此项时使用的转录上下文（'conversation' 或 'agent'）。
    - Allowed values: `conversation`, `agent`
  - `version_id` (string, optional) — 固定的项目版本。None 表示跟踪项目最新发布的版本。

### ConversationConfigClientOverrideConfigInput

- `asr` (AsrConversationalConfigOverrideConfig, optional) — Configures overrides for nested fields.
- `turn` (TurnConfigOverrideConfig, optional) — Configures overrides for nested fields.
- `tts` (TtsConversationalConfigOverrideConfig, optional) — Configures overrides for nested fields.
- `conversation` (ConversationConfigOverrideConfig, optional) — Configures overrides for nested fields.
- `agent` (AgentConfigOverrideConfig, optional) — Configures overrides for nested fields.

### ConversationInitiationClientDataWebhook

- `url` (string, required) — 用于发送 webhook 的 URL
- `request_headers` (map from string to ConversationInitiationClientDataWebhookRequestHeadersValue, required) — 随 webhook 请求发送的标头

### ConvAiWebhooks

- `post_call_webhook_id` (string, optional)
- `events` (list of enum, optional) — 通过 webhook 发送的事件类型列表。可选值：transcript、audio、call_initiation_failure、answering_machine_detection、unredacted_transcript、unredacted_audio。
  - Allowed values: `transcript`, `audio`, `call_initiation_failure`, `answering_machine_detection`, `unredacted_transcript`, `unredacted_audio`
- `transcript_format` (enum, optional, default: json) — 转录 webhook 的格式。
  - Allowed values: `json`, `opentelemetry`
- `exclude_transcript` (boolean, optional, default: false) — 设为 true 时，JSON 通话后转写 webhook 将省略逐轮转写内容。仍会发送分析、元数据和其他对话字段。对 OpenTelemetry 转写格式无效。
- `send_audio` (boolean, optional, deprecated) — 已弃用：请改用 'events' 字段。是否通过 ConvAI 对话的通话后 webhook 发送音频数据

### AttachedTestModel

- `test_id` (string, required)
- `workflow_node_id` (string, optional)

### FocusGuardrail

- `is_enabled` (boolean, optional, default: false)

### PromptInjectionGuardrail

- `is_enabled` (boolean, optional, default: false)

### ContentGuardrailInput

- `execution_mode` (enum, optional, default: streaming)
  - Allowed values: `streaming`, `blocking`
- `config` (ContentConfig, optional)
- `trigger_action` (ContentGuardrailInputTriggerAction, optional)

### CustomGuardrailInput

Container for custom guardrails, matching ModerationGuardrail pattern

- `config` (CustomGuardrailsConfigInput, optional) — Config container for custom guardrails list

### AgentHoldAudioConfig

为在智能体队列中等待的来电者循环播放的自定义等待音频。 通过智能体等待音频端点上传文件设置。在创建或更新智能体的请求中传入的值将被忽略。

- `audio_path` (string, required) — 上传片段的存储路径
- `audio_url` (string, required) — 已上传片段的公开 CDN URL
- `original_filename` (string, required) — 用户提供的已上传片段文件名
- `duration_secs` (double, required) — 上传片段的时长，单位为秒
- `size_bytes` (integer, required) — 上传片段大小（字节）

### ConversationHistoryRedactionConfig

- `enabled` (boolean, optional, default: false) — 是否启用对话历史记录脱敏
- `entities` (list of enum, optional) — 要从对话转录、音频和分析中脱敏的实体。使用顶级类型，如 'name'、'email_address'，或使用点表示法指定子类型，如 'name.full_name'。
  - Allowed values: `name`, `name.name_given`, `name.name_family`, `name.name_other`, `email_address`, `contact_number`, `dob`, `age`, `religious_belief`, `political_opinion`, `sexual_orientation`, `ethnicity_race`, `marital_status`, `occupation`, `physical_attribute`, `language`, `username`, `password`, `url`, `organization`, `financial_id`, `financial_id.payment_card`, `financial_id.payment_card.payment_card_number`, `financial_id.payment_card.payment_card_expiration_date`, `financial_id.payment_card.payment_card_cvv`, `financial_id.bank_account`, `financial_id.bank_account.bank_account_number`, `financial_id.bank_account.bank_routing_number`, `financial_id.bank_account.swift_bic_code`, `financial_id.financial_id_other`, `location`, `location.location_address`, `location.location_city`, `location.location_postal_code`, `location.location_coordinate`, `location.location_state`, `location.location_country`, `location.location_other`, `date`, `date_interval`, `unique_id`, `unique_id.government_issued_id`, `unique_id.account_number`, `unique_id.vehicle_id`, `unique_id.healthcare_number`, `unique_id.healthcare_number.medical_record_number`, `unique_id.healthcare_number.health_plan_beneficiary_number`, `unique_id.device_id`, `unique_id.unique_id_other`, `medical`, `medical.medical_condition`, `medical.medication`, `medical.medical_procedure`, `medical.medical_measurement`, `medical.medical_other`
- `excluded_data_collection_ids` (list of string, optional) — 提取值未脱敏的数据收集项 ID。其理由仍会脱敏。

### AlertingMonitorConfig

- `enabled` (boolean, optional) — 此监控器是否已启用且可发送通知
- `threshold` (double, optional) — 此监控器可发送通知的失败率阈值。
- `relative_increase_threshold` (double, optional) — 此监控器触发通知所需超过近期基线的相对增幅（0.2 = 高于基线 20%，0 = 任意失败）。对于 conversation_volume_drop，表示必须缺失的常规音量比例，范围为 0.1 至 0.9（0.5 = 一半）。
- `min_failure_count` (integer, optional) — 此监控器触发前，时间窗口内所需的最少失败次数。
- `min_history_bucket_count` (integer, optional) — 峰值检测触发前，末尾需具有流量的最小时间桶数。
- `min_sample_count` (integer, optional) — 此监控器触发前，时间窗口内所需的最少样本数。
- `suspect_trigger_threshold` (integer, optional) — 在回溯窗口内，将可疑项升级为警报所需的可疑时间桶数量。
- `auto_resolve_after_inactive_minutes` (integer, optional) — 警报自动解决前可保持不活跃状态的分钟数。

### AlertingSettingsNotifiersItem

- `type`: `webhook`
  - `webhook_id` (string, required) — 用于发送警报生命周期通知的工作区 webhook ID。
- `type`: `integration`
  - `connection_id` (string, required) — 用于发送警报生命周期通知的工作区集成连接 ID。该连接的集成必须具备监控能力，并与 ``integration_type`` 匹配。
  - `channel_id` (string, optional) — 用于发布警报通知的 Slack 频道 ID，例如 ``C0123456789``。当 ``integration_type`` 为 ``slack`` 时必填。Slack 应用必须是该频道成员，并拥有 ``chat:write`` 权限范围；对于尚未加入的公开频道，则需拥有 ``chat:write.public`` 权限范围。
  - `integration_type` (enum, optional) — 要发送到的集成。服务器将省略的值视为 ``pagerduty``。
    - Allowed values: `pagerduty`, `slack`

### WorkflowEdgeModelInputForwardCondition

- `type`: `expression`
  - `expression` (AstNodeInput, required) — 要评估的表达式。
  - `label` (string, optional) — 可选的易读条件标签，供整个 UI 使用。
- `type`: `llm`
  - `condition` (string, required) — Condition to evaluate
  - `label` (string, optional) — 可选的易读条件标签，供整个 UI 使用。
- `type`: `result`
  - `successful` (boolean, required) — 先前执行的工具节点中所有工具是否均执行成功。
  - `label` (string, optional) — 可选的易读条件标签，供整个 UI 使用。
- `type`: `unconditional`
  - `label` (string, optional) — 可选的易读条件标签，供整个 UI 使用。

### WorkflowEdgeModelInputBackwardCondition

- `type`: `expression`
  - `expression` (AstNodeInput, required) — 要评估的表达式。
  - `label` (string, optional) — 可选的易读条件标签，供整个 UI 使用。
- `type`: `llm`
  - `condition` (string, required) — Condition to evaluate
  - `label` (string, optional) — 可选的易读条件标签，供整个 UI 使用。
- `type`: `result`
  - `successful` (boolean, required) — 先前执行的工具节点中所有工具是否均执行成功。
  - `label` (string, optional) — 可选的易读条件标签，供整个 UI 使用。
- `type`: `unconditional`
  - `label` (string, optional) — 可选的易读条件标签，供整个 UI 使用。

### PositionInput

- `x` (double, optional, default: 0)
- `y` (double, optional, default: 0)

### KnowledgeBaseLocator

- `type` (enum, required) — 知识库类型
  - Allowed values: `file`, `url`, `text`, `folder`
- `name` (string, required) — 知识库名称
- `id` (string, required) — 知识库的 ID
- `usage_mode` (enum, optional, default: auto) — 知识库使用模式
  - Allowed values: `prompt`, `auto`

### ConversationalConfigApiModelWorkflowOverrideInput

- `asr` (AsrConversationalConfigWorkflowOverride, optional) — Configuration for conversational transcription
- `turn` (TurnConfigWorkflowOverride, optional) — Configuration for turn detection
- `tts` (TtsConversationalConfigWorkflowOverrideInput, optional) — Configuration for conversational text to speech
- `conversation` (ConversationConfigWorkflowOverrideInput, optional) — Configuration for conversational events
- `language_presets` (map from string to LanguagePresetInput, optional) — 对话语言预设
- `vad` (VadConfigWorkflowOverride, optional) — Configuration for voice activity detection
- `agent` (AgentConfigApiModelWorkflowOverrideInput, optional) — 智能体专属配置

### WorkflowPhoneNumberNodeModelInputTransferDestination

- `type`: `phone`
  - `phone_number` (string, required)
- `type`: `phone_dynamic_variable`
  - `phone_number` (string, required)
- `type`: `sip_uri`
  - `sip_uri` (string, required)
- `type`: `sip_uri_dynamic_variable`
  - `sip_uri` (string, required)

### WorkflowPhoneNumberNodeModelInputCustomSipHeadersItem

- `type`: `dynamic`
  - `key` (string, required) — SIP 请求头名称（例如 'X-Customer-ID'）
  - `value` (string, required) — 要解析的动态变量名称
- `type`: `static`
  - `key` (string, required) — SIP 请求头名称（例如 'X-Customer-ID'）
  - `value` (string, required) — 标头值

### WorkflowPhoneNumberNodeModelInputPostDialDigits

- `type`: `dynamic`
  - `value` (string, required) — 要解析的动态变量名称
- `type`: `static`
  - `value` (string, required) — 通话接通后发送的 DTMF 按键（例如，分机号使用 'ww1234'）

### UuiTransferConfig

用于 SIP REFER 转接的用户间信息（User-to-User Information）封装（RFC 7433）。 出站载荷采用十六进制编码（RFC 7433 唯一规定的编码）。协议判别维度允许通过配置表达各平台格式（Talkdesk、Genesys 等），而非分散使用转接标记。还可在此添加更多维度（ASCII 编码、标头名称、用途/内容参数），无需修改转接模型。

- `data` (string, required) — 在 SIP REFER 转接中发送的 UUI 载荷。支持内联动态变量，并会在转接时进行十六进制编码。
- `protocol_discriminator` (string, optional) — 可选的单八位组协议区分符（2 个十六进制数字，例如 '00'）。Genesys Cloud 等平台需要此项，否则会剥离有效负载的第一个八位组。对于需要纯十六进制有效负载的 Talkdesk 等平台，请留空。
- `protocol_discriminator_mode` (enum, optional, default: prefix) — 如何附加 protocol\_discriminator。'prefix' 会将该字节前置到十六进制载荷（User-to-User=XX\<hex>;encoding=hex）；'pd\_parameter' 会将其作为单独参数发送（User-to-User=\<hex>;pd=XX;encoding=hex）。未设置 protocol\_discriminator 时将忽略此项。
  - Allowed values: `prefix`, `pd_parameter`

### WorkflowToolLocator

- `tool_id` (string, required)
- `schema_overrides` (map from string to WorkflowToolLocatorSchemaOverridesValue, optional) — 在工具自身配置基础上应用的每节点参数覆盖选项。键为带点的参数路径（webhook 工具的键以前缀 path_params./query_params./request_body. 开头）。其优先级高于工具自身已定义的任何覆盖选项。

### WorkflowSayNodeModelInputMessage

此节点朗读的消息。使用 `literal` 指定精确文本，或使用 `prompt` 让 LLM 根据描述生成消息。

- `type`: `literal`
  - `text` (string, required) — 智能体朗读的精确文本。支持 `{{variable_name}}` 动态变量占位符。
  - `text_translations` (map from string to TranslatedString, optional) — `text` 的翻译，以语言代码为键。当对话语言存在对应条目时，将朗读其值而非 `text`。
- `type`: `prompt`
  - `prompt` (string, required) — LLM 应生成消息的描述。此节点处于活动状态时，会附加到智能体的系统提示词中。

### WorkflowStateUpdateInput

- `variable_name` (string, required) — 要赋值的动态变量名称。
- `expression` (AstNodeInput, required) — 其结果将赋给变量的表达式。可组合常量、其他动态变量、LLM 提取的值和运算符。
- `type` ("dynamic_variable", optional)
- `required` (boolean, optional, default: true) — 设为 false 时，LLM 可能省略此更新所依赖的值。此更新将被跳过，变量保留当前值。

### AsrConversationalConfigOverride

- `keywords` (list of string, optional) — 用于提高预测概率的关键词

### TurnConfigOverride

- `soft_timeout_config` (SoftTimeoutConfigOverride, optional) — Configuration for soft timeout functionality. Provides immediate feedback during longer LLM responses.

### TtsConversationalConfigOverride

- `model_id` (enum, optional, default: eleven_v4_turbo) — 用于 TTS 的模型
  - Allowed values: `eleven_turbo_v2`, `eleven_turbo_v2_5`, `eleven_flash_v2`, `eleven_flash_v2_5`, `eleven_multilingual_v2`, `eleven_v3_conversational`, `eleven_v4`, `eleven_v4_turbo`
- `voice_id` (string, optional) — 用于 TTS 的音色 ID。
- `supported_voices` (list of SupportedVoice, optional) — 智能体额外支持的音色
- `stability` (double, optional) — 生成语音的稳定性
- `speed` (double, optional) — 生成语音的速度
- `similarity_boost` (double, optional) — 生成语音的相似度增强
- `pronunciation_dictionary_locators` (list of PydanticPronunciationDictionaryVersionLocator, optional) — 发音词典定位器

### ConversationConfigOverride

- `text_only` (boolean, optional) — 启用后将不处理音频，仅使用文本，可避免音频计费。
- `max_duration_seconds` (integer, optional) — 单次对话的最长时长，单位为秒

### AgentConfigOverrideOutput

- `first_message` (string, optional) — 非空时，为智能体首先说出的消息。为空时，智能体会等待用户发起对话。
- `language` (string, optional) — 智能体语言，用于 ASR 和 TTS
- `max_conversation_duration_message` (string, optional) — 非空时，为达到最长对话时长后智能体发送的消息。
- `prompt` (PromptAgentApiModelOverrideOutput, optional) — 智能体的提示词

### BuiltInToolsOutput

可提供给对话式智能体的系统工具。 特意未命名为 ConversationalBuiltInTools：BuiltInToolsInput 和 BuiltInToolsOutput 是公开 API 规范和生成的 SDK 的一部分。

- `transfer_to_agent` (SystemToolConfigOutput, optional) — 转接至智能体工具
- `end_call` (SystemToolConfigOutput, optional) — 结束通话工具
- `language_detection` (SystemToolConfigOutput, optional) — 语言检测工具
- `transfer_to_number` (SystemToolConfigOutput, optional) — 转接至号码工具
- `skip_turn` (SystemToolConfigOutput, optional) — 跳过回合工具
- `play_keypad_touch_tone` (SystemToolConfigOutput, optional) — 播放 DTMF 工具
- `voicemail_detection` (SystemToolConfigOutput, optional) — 语音信箱检测工具。

### CustomLlm

- `url` (string, required) — 兼容 Chat Completions 的端点 URL
- `model_id` (string, optional) — 当 URL 提供多个模型时使用的模型 ID
- `api_key` (CustomLlmApiKey, optional) — 用于身份验证的 API 密钥。可以是工作区密钥引用 \{'secret\_id': '...'}，也可以是环境变量引用 \{'env\_var\_label': '...'}。
- `auth_connection` (CustomLlmAuthConnection, optional) — 用于认证的可选工作区身份验证连接。仅支持生成 Authorization Bearer 令牌的身份验证连接；不支持 Basic 认证、mTLS、自定义标头和 URL 密钥认证连接。
- `request_headers` (map from string to CustomLlmRequestHeadersValue, optional) — 请求中应包含的请求头
- `api_version` (string, optional) — 请求使用的 API 版本
- `api_type` (enum, optional, default: chat_completions) — 要使用的 API 类型（chat_completions、responses 或 websocket）
  - Allowed values: `chat_completions`, `responses`, `websocket`

### RagConfigOutput

- `enabled` (boolean, optional, default: false)
- `embedding_model` (enum, optional, default: e5_mistral_7b_instruct)
  - Allowed values: `e5_mistral_7b_instruct`, `multilingual_e5_large_instruct`
- `max_vector_distance` (double, optional, default: 0.6) — 检索文档块的最大向量距离。
- `max_documents_length` (integer, optional, default: 50000) — 从 RAG 检索的文档块最大总长度。
- `max_retrieved_rag_chunks_count` (integer, optional, default: 20) — 初始从向量存储中检索的最大 RAG 文档块数。随后会按向量距离和总长度进一步筛选。
- `num_candidates` (integer, optional) — ANN 向量搜索中评估的候选项数量。数值越高，结果越好，但延迟也越高。建议最小值为 100。禁用时使用默认值。
- `query_rewrite_prompt_override` (string, optional) — 在 RAG 检索前改写用户查询的自定义提示词。对话历史将自动附加在末尾。未设置时将使用默认提示词。
- `knowledge_base_tool_info` (KnowledgeBaseToolInfo, optional) — 设置后，智能体将使用 knowledge_base 工具，而非旧版 knowledge_base_rag 工具。None 表示智能体未启用此功能。

### PromptAgentApiModelOutputBackupLlmConfig

Configuration for backup LLM cascading. Can be disabled, use system defaults, or specify custom order.

- `preference`: `default`
- `preference`: `disabled`
- `preference`: `override`
  - `order` (list of enum, required)
    - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`

### PromptAgentApiModelOutputToolsItem

工具类型

- `type`: `api_integration_webhook`
  - `api_integration_connection_id` (string, required)
  - `api_integration_id` (string, required)
  - `assignments` (list of DynamicVariableAssignment, required) — Configuration for extracting values from tool responses and assigning them to dynamic variables
  - `description` (string, required) — 说明何时应使用该工具及其功能。
  - `dynamic_variables` (DynamicVariablesConfig, required) — Configuration for dynamic variables
  - `execution_mode` (enum, required, default: immediate) — 决定工具的执行时机和方式：'immediate' 会在 LLM 请求时立即执行工具；'post_tool_speech' 会等待智能体说完后再执行；'async' 会在后台运行工具且不阻塞，最适合耗时较长的操作。
    - Allowed values: `immediate`, `post_tool_speech`, `async`
  - `interruption_mode` (enum, required, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `name` (string, required)
  - `pre_tool_speech` (enum, required, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, required, default: 20) — 等待工具调用完成的最长时间，单位为秒。必须介于 5 秒和 300 秒之间（含）。
  - `tool_call_sound_behavior` (enum, required, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, required, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `tool_version` (string, required, default: 1.0.0) — API 集成工具的版本。
  - `disable_interruptions` (boolean, required, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
  - `force_pre_tool_speech` (boolean, required, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。
  - `api_schema_overrides` (ApiIntegrationWebhookOverrides, optional) — 应用于基础 api_schema 之上的用户覆盖项。
  - `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
- `type`: `client`
  - `description` (string, required) — 说明何时应使用该工具及其功能。
  - `name` (string, required)
  - `assignments` (list of DynamicVariableAssignment, optional) — Configuration for extracting values from tool responses and assigning them to dynamic variables
  - `dynamic_variables` (DynamicVariablesConfig, optional) — Configuration for dynamic variables
  - `execution_mode` (enum, optional, default: immediate) — 决定工具的执行时机和方式：'immediate' 会在 LLM 请求时立即执行工具；'post_tool_speech' 会等待智能体说完后再执行；'async' 会在后台运行工具且不阻塞，最适合耗时较长的操作。
    - Allowed values: `immediate`, `post_tool_speech`, `async`
  - `expects_response` (boolean, optional, default: false) — 如果为 true，调用此工具会阻塞对话，直到客户端返回响应并传递给 llm。如果为 false，则不会等待客户端响应，而是继续对话。这适合向用户展示内容而不阻塞对话。
  - `interruption_mode` (enum, optional, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `parameters` (ObjectJsonSchemaPropertyOutput, optional) — 传递给客户端的所有参数的 Schema
  - `pre_tool_speech` (enum, optional, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — 等待工具调用完成的最长时间（秒）。必须介于 1 到 120 秒之间（含），或设为 -1 以无限期等待客户端响应（需要 expects_response）。
  - `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。
- `type`: `mcp`
  - `value` (any, required)
- `type`: `smb`
  - `value` (any, required)
- `type`: `system`
  - `name` (string, required)
  - `params` (SystemToolConfigOutputParams, required)
  - `assignments` (list of DynamicVariableAssignment, optional) — Configuration for extracting values from tool responses and assigning them to dynamic variables
  - `description` (string, optional, default: ) — 说明何时应使用该工具及其功能。留空则使用针对该工具类型优化的默认说明。
  - `interruption_mode` (enum, optional, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `pre_tool_speech` (enum, optional, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — 等待工具调用完成的最长时间，单位为秒。
  - `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。
- `type`: `webhook`
  - `api_schema` (WebhookToolApiSchemaConfigOutput, required) — 出站 webhook 的架构，包括参数和 URL 规范。
  - `description` (string, required) — 说明何时应使用该工具及其功能。
  - `name` (string, required)
  - `assignments` (list of DynamicVariableAssignment, optional) — Configuration for extracting values from tool responses and assigning them to dynamic variables
  - `dynamic_variables` (DynamicVariablesConfig, optional) — Configuration for dynamic variables
  - `execution_mode` (enum, optional, default: immediate) — 决定工具的执行时机和方式：'immediate' 会在 LLM 请求时立即执行工具；'post_tool_speech' 会等待智能体说完后再执行；'async' 会在后台运行工具且不阻塞，最适合耗时较长的操作。
    - Allowed values: `immediate`, `post_tool_speech`, `async`
  - `follow_redirects` (boolean, optional, default: false) — 是否解析端点重定向并返回最终响应。会跟随 1 次重定向，并以不带请求体的 GET 请求访问；此工具中配置的任何内容（标头、身份验证、客户端证书）都不会发送到重定向目标。端点和重定向目标均必须使用 HTTPS。不支持 API 集成工具。
  - `follow_redirects_allowed_domains` (list of string, optional) — 重定向可能指向的域名，例如 'test.example.com'。跟随重定向时必填，列表外的目标将被拒绝。
  - `interruption_mode` (enum, optional, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `pre_tool_speech` (enum, optional, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — 等待工具调用完成的最长时间，单位为秒。必须介于 5 秒和 300 秒之间（含）。
  - `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。

### WidgetTextContentsTranslation

- `source` (map from string to string, optional) — 每个翻译字段所依据的源文本
- `text` (map from string to string, optional) — 每个已翻译字段上次自动翻译的输出

### WidgetTermsTranslation

- `source_hash` (string, required)
- `text` (string, required)

### AsrConversationalConfigOverrideConfig

- `keywords` (boolean, optional, default: false) — 是否允许覆盖 keywords 字段。

### TurnConfigOverrideConfig

- `soft_timeout_config` (SoftTimeoutConfigOverrideConfig, optional) — Configures overrides for nested fields.

### TtsConversationalConfigOverrideConfig

- `model_id` (boolean, optional, default: false) — 是否允许覆盖 model_id 字段。
- `voice_id` (boolean, optional, default: false) — 是否允许覆盖 voice_id 字段。
- `supported_voices` (boolean, optional, default: false) — 是否允许覆盖 supported_voices 字段。
- `stability` (boolean, optional, default: false) — 是否允许覆盖 stability 字段。
- `speed` (boolean, optional, default: false) — 是否允许覆盖 speed 字段。
- `similarity_boost` (boolean, optional, default: false) — 是否允许覆盖 similarity_boost 字段。
- `pronunciation_dictionary_locators` (boolean, optional, default: false) — 是否允许覆盖 pronunciation_dictionary_locators 字段。

### ConversationConfigOverrideConfig

- `text_only` (boolean, optional, default: false) — 是否允许覆盖 text_only 字段。
- `max_duration_seconds` (boolean, optional, default: false) — 是否允许覆盖 max_duration_seconds 字段。

### AgentConfigOverrideConfig

- `first_message` (boolean, optional, default: false) — 是否允许覆盖 first_message 字段。
- `language` (boolean, optional, default: false) — 是否允许覆盖 language 字段。
- `max_conversation_duration_message` (boolean, optional, default: false) — 是否允许覆盖 max_conversation_duration_message 字段。
- `prompt` (PromptAgentApiModelOverrideConfig, optional) — Configures overrides for nested fields.

### ConversationInitiationClientDataWebhookRequestHeadersValue

- string
- Conv AI Secret Locator: ConvAiSecretLocator

### ContentConfig

- `sexual` (ContentThresholdGuardrail, optional)
- `violence` (ContentThresholdGuardrail, optional)
- `harassment` (ContentThresholdGuardrail, optional)
- `self_harm` (ContentThresholdGuardrail, optional)
- `profanity` (ContentThresholdGuardrail, optional)
- `religion_or_politics` (ContentThresholdGuardrail, optional)
- `medical_and_legal_information` (ContentThresholdGuardrail, optional)

### ContentGuardrailInputTriggerAction

- `type`: `end_call`
- `type`: `retry`
  - `feedback` (string, optional, default: Your response was blocked by a guardrail that blocks content that matches this condition/category: '{{trigger_reason}}' During your next turn you must tell the user "I'm sorry but I can't answer that question, would you like to know something else?".) — 触发安全护栏后重试时注入智能体的自定义反馈。

### CustomGuardrailsConfigInput

Config container for custom guardrails list

- `configs` (list of CustomGuardrailConfig, optional)

### AstNodeInput

- `type`: `add_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。
- `type`: `and_operator`
  - `children` (list of AstNodeInput, required) — Child nodes of the logical operator.
- `type`: `boolean_literal`
  - `value` (boolean, required) — 此字面量的值。
- `type`: `conditional_operator`
  - `condition` (AstNodeInput, required) — Condition deciding which expression should be selected.
  - `falseExpression` (AstNodeInput, required) — 条件为 false 时选择的表达式。
  - `trueExpression` (AstNodeInput, required) — 条件为 true 时选择的表达式。
- `type`: `div_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。
- `type`: `dynamic_variable`
  - `name` (string, required) — 动态变量名称。
- `type`: `eq_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。
- `type`: `gt_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。
- `type`: `gte_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。
- `type`: `llm`
  - `value_schema` (LlmLiteralJsonSchemaProperty, optional) — 描述 LLM 应提取值的 JSON Schema。
  - `prompt` (string, optional, deprecated) — 用于评估为布尔值的提示词。已弃用，请改用布尔模式。
- `type`: `lt_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。
- `type`: `lte_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。
- `type`: `mul_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。
- `type`: `neq_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。
- `type`: `null_literal`
- `type`: `number_literal`
  - `value` (AstNumberNodeInputValue, required) — 此字面量的值。
- `type`: `or_operator`
  - `children` (list of AstNodeInput, required) — Child nodes of the logical operator.
- `type`: `string_literal`
  - `value` (string, required) — 此字面量的值。
- `type`: `sub_operator`
  - `left` (AstNodeInput, required) — 二元运算符的左操作数。
  - `right` (AstNodeInput, required) — 二元运算符的右操作数。

### AsrConversationalConfigWorkflowOverride

- `quality` ("high", optional) — 转录质量
- `provider` (enum, optional, default: scribe_realtime) — 转录服务提供商
  - Allowed values: `elevenlabs`, `scribe_realtime`, `scribe_v2_turbo`
- `user_input_audio_format` (enum, optional, default: pcm_16000) — 要转录音频的格式
  - Allowed values: `pcm_8000`, `pcm_16000`, `pcm_22050`, `pcm_24000`, `pcm_44100`, `pcm_48000`, `ulaw_8000`
- `keywords` (list of string, optional) — 用于提高预测概率的关键词

### TurnConfigWorkflowOverride

- `turn_timeout` (double, optional) — 再次联系用户前等待用户回复的最长时间
- `initial_wait_time` (double, optional) — How long the agent will wait for the user to start the conversation if the first message is empty. If not set, uses the regular turn_timeout.
- `silence_end_call_timeout` (double, optional) — 用户最后一次说话后终止通话前的最长等待时间
- `turn_eagerness` (enum, optional, default: normal) — 控制智能体的响应积极程度。Low = 较不积极（等待更久），Standard = 默认积极程度，High = 更积极（响应更快）。
  - Allowed values: `patient`, `normal`, `eager`
- `spelling_patience` (enum, optional, default: auto) — 控制用户逐个拼读数字和命名实体时，智能体是否应更耐心等待。Auto = 基于模型判断，Off = 不额外等待。
  - Allowed values: `auto`, `off`
- `speculative_turn` (boolean, optional) — 启用后，在达到完整轮次置信度前的静音期间开始生成 LLM 回复，以降低感知延迟。可能增加 LLM 成本。
- `retranscribe_on_turn_timeout` (boolean, optional) — 启用后，如果 VAD 未检测到语音，会在轮次超时时尝试重新转录累计音频。为当前智能体或 workflow 节点启用期间，将停用静音折扣计费。
- `turn_model` (enum, optional, default: turn_v3) — 要使用的轮次检测模型版本。
  - Allowed values: `turn_v2`, `turn_v3`
- `interruption_ignore_terms` (list of string, optional) — 用户说出时不应触发打断的词条列表（例如“gotcha”“understood”）。使用不区分大小写的精确匹配。
- `interruption_ignore_term_languages` (list of string, optional) — 已启用预设忽略词类别的语言代码。明确存储，避免根据词条重叠推断显示内容。
- `merge_with_default_ignore_terms` (boolean, optional) — 启用后，除 interruption_ignore_terms 外，还会使用为 interruption_ignore_term_languages 精选的默认词条。
- `transcribe_on_disabled_interruptions` (boolean, optional) — 禁用打断时，仍会转写用户所说内容，以便带入下一轮。关闭后，不可打断轮次期间的用户语音将被忽略，且不会触发新一轮。
- `soft_timeout_config` (SoftTimeoutConfigWorkflowOverride, optional) — Configuration for soft timeout functionality. Provides immediate feedback during longer LLM responses.

### TtsConversationalConfigWorkflowOverrideInput

- `model_id` (enum, optional, default: eleven_v4_turbo) — 用于 TTS 的模型
  - Allowed values: `eleven_turbo_v2`, `eleven_turbo_v2_5`, `eleven_flash_v2`, `eleven_flash_v2_5`, `eleven_multilingual_v2`, `eleven_v3_conversational`, `eleven_v4`, `eleven_v4_turbo`
- `voice_id` (string, optional) — 用于 TTS 的音色 ID。
- `supported_voices` (list of SupportedVoice, optional) — 智能体额外支持的音色
- `expressive_mode` (boolean, optional) — 启用后，应用富表现力音频标签提示词。非 v3 模型会自动禁用。
- `suggested_audio_tags` (list of SuggestedAudioTag, optional) — 用于增强富有表现力语音的建议音频标签（适用于 eleven_v3 和 eleven_v3_conversational 模型）。智能体仍可使用此处未列出的其他标签。
- `agent_output_audio_format` (enum, optional, default: pcm_16000) — TTS 使用的音频格式
  - Allowed values: `pcm_8000`, `pcm_16000`, `pcm_22050`, `pcm_24000`, `pcm_44100`, `pcm_48000`, `ulaw_8000`
- `optimize_streaming_latency` (integer, optional) — 已弃用：此字段无效，将被忽略。
- `stability` (double, optional) — 生成语音的稳定性
- `speed` (double, optional) — 生成语音的速度
- `similarity_boost` (double, optional) — 生成语音的相似度增强
- `text_normalisation_type` (enum, optional, default: system_prompt) — 将文本转为语音前把数字转换为文字的方法。设为 SYSTEM_PROMPT 时，系统提示词会更新为包含规范化说明。设为 ELEVENLABS 时，文本会在生成后规范化，这会略微增加延迟。
  - Allowed values: `system_prompt`, `elevenlabs`
- `pronunciation_dictionary_locators` (list of PydanticPronunciationDictionaryVersionLocator, optional) — 发音词典定位器
- `enable_phoneme_tags` (boolean, optional) — 选择为 V3 模型启用 SSML 音素标签处理。启用后，音素标签（内联及来自发音词典的标签）会先解析为内联 IPA，再发送给模型。
- `audio_effects` (EffectsSpecInput, optional) — 可选的 TTS 效果规格：滤镜预设、距离（近讲 EQ）和环境（卷积混响）。

### ConversationConfigWorkflowOverrideInput

- `text_only` (boolean, optional) — 启用后将不处理音频，仅使用文本，可避免音频计费。
- `max_duration_seconds` (integer, optional) — 单次对话的最长时长，单位为秒
- `client_events` (list of enum, optional) — 将发送至客户端的事件
  - Allowed values: `conversation_initiation_metadata`, `asr_initiation_metadata`, `ping`, `audio`, `interruption`, `user_transcript`, `tentative_user_transcript`, `agent_response`, `agent_response_correction`, `client_tool_call`, `mcp_tool_call`, `mcp_connection_status`, `agent_tool_request`, `agent_tool_response`, `agent_tool_response_full_payload`, `agent_response_metadata`, `vad_score`, `agent_chat_response_part`, `client_error`, `guardrail_triggered`, `dtmf_request`, `agent_response_complete`, `context_usage`, `internal_turn_probability`, `internal_tentative_agent_response`
- `file_input` (FileInputConfigWorkflowOverride, optional) — Configuration for file input (image/PDF uploads) during conversations.
- `monitoring_enabled` (boolean, optional) — 通过 WebSocket 启用对话实时监控
- `monitoring_events` (list of enum, optional) — 将发送至监控连接的事件。
  - Allowed values: `conversation_initiation_metadata`, `asr_initiation_metadata`, `ping`, `audio`, `interruption`, `user_transcript`, `tentative_user_transcript`, `agent_response`, `agent_response_correction`, `client_tool_call`, `mcp_tool_call`, `mcp_connection_status`, `agent_tool_request`, `agent_tool_response`, `agent_tool_response_full_payload`, `agent_response_metadata`, `vad_score`, `agent_chat_response_part`, `client_error`, `guardrail_triggered`, `dtmf_request`, `agent_response_complete`, `context_usage`, `internal_turn_probability`, `internal_tentative_agent_response`
- `dtmf_input_settings` (DtmfInputConfig, optional) — Configure DTMF (keypad) input collection during phone calls
- `background_sound` (BackgroundSoundConfigWorkflowOverride, optional) — Configuration for background sound during conversations.
- `source_attribution` (boolean, optional) — 启用后，若存在知识库内容，将要求 LLM 报告所使用的来源。

### LanguagePresetInput

- `overrides` (ConversationConfigClientOverrideInput, required) — 语言预设的覆盖设置
- `first_message_translation` (LanguagePresetTranslation, optional) — 第一条消息的翻译
- `soft_timeout_translation` (LanguagePresetTranslation, optional) — 软超时消息的翻译

### VadConfigWorkflowOverride

### AgentConfigApiModelWorkflowOverrideInput

- `first_message` (string, optional) — 非空时，为智能体首先说出的消息。为空时，智能体会等待用户发起对话。
- `language` (string, optional) — 智能体语言，用于 ASR 和 TTS
- `hinglish_mode` (boolean, optional) — 启用后，智能体会在印地语、马拉雅拉姆语、泰卢固语或卡纳达语回复中混用英语单词和短语。
- `dynamic_variables` (DynamicVariablesConfigWorkflowOverride, optional) — Configuration for dynamic variables
- `disable_first_message_interruptions` (boolean, optional) — 如果为 true，在发送第一条消息期间，用户无法打断智能体。
- `max_conversation_duration_message` (string, optional) — 非空时，为达到最长对话时长后智能体发送的消息。
- `text_behavior_overrides` (map from string to BehaviorOverride, optional) — 文本对话的每个渠道响应行为覆盖选项。未设置时使用内置渠道默认值。
- `prompt` (PromptAgentApiModelWorkflowOverrideInput, optional) — 智能体的提示词

### WorkflowToolLocatorSchemaOverridesValue

- `source`: `constant`
  - `constant_value` (ConstantSchemaOverrideConstantValue, optional) — 要使用的常量值
- `source`: `dynamic_variable`
  - `dynamic_variable` (string, required) — 要使用的动态变量名称
- `source`: `llm`
  - `prompt` (string, optional) — LLM 的提示词覆盖内容。未提供时，使用原始架构描述。
- `source`: `omit`

### TranslatedString

- `value` (string, required)

### SoftTimeoutConfigOverride

- `message` (string, optional) — 等待 LLM 响应时，首次达到软超时时显示的消息。支持动态变量（例如 \{\{system\_\_time}}、\{\{custom\_variable}}）。
- `additional_soft_timeout_messages` (list of string, optional) — 同一次 LLM 生成中后续软超时时使用的额外静态填充消息。首次超时使用 `message`。如果配置的消息少于 `max_soft_timeouts_per_generation`，会重复最后一条配置的消息；否则使用内置填充消息。

### PromptAgentApiModelOverrideOutput

- `prompt` (string, optional) — 智能体的提示词
- `llm` (enum, optional) — 用于结合提示词和聊天记录进行查询的 LLM。使用数据驻留时，该 LLM 必须受数据驻留环境支持
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `tool_ids` (list of string, optional) — 智能体使用的工具 ID 列表。
- `tool_ids_strict` (boolean, optional) — 仅作为对话覆盖项生效，在允许覆盖 tool_ids 时均可使用。为 true 时，覆盖后的 tool_ids 是对话中允许使用的完整工具列表，包括 workflow 节点上的工具。在智能体上设置时会被忽略。
- `native_mcp_server_ids` (list of string, optional) — 供智能体使用的原生 MCP 服务器 ID 列表
- `knowledge_base` (list of KnowledgeBaseLocator, optional) — 供智能体使用的知识库列表

### SystemToolConfigOutput

系统工具是用于调用服务器系统方法的工具

- `name` (string, required)
- `params` (SystemToolConfigOutputParams, required)
- `type` ("system", optional) — 工具类型
- `description` (string, optional, default: ) — 说明何时应使用该工具及其功能。留空则使用针对该工具类型优化的默认说明。
- `response_timeout_secs` (integer, optional, default: 20) — 等待工具调用完成的最长时间，单位为秒。
- `interruption_mode` (enum, optional, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
  - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
- `pre_tool_speech` (enum, optional, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
  - Allowed values: `auto`, `force`, `off`
- `assignments` (list of DynamicVariableAssignment, optional) — Configuration for extracting values from tool responses and assigning them to dynamic variables
- `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
  - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
- `tool_call_sound_behavior` (enum, optional, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
  - Allowed values: `auto`, `always`
- `tool_error_handling_mode` (enum, optional, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
  - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
- `disable_interruptions` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
- `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。

### CustomLlmApiKey

用于身份验证的 API 密钥。可以是工作区密钥引用 \{'secret\_id': '...'}，也可以是环境变量引用 \{'env\_var\_label': '...'}。

- Conv AI Secret Locator: ConvAiSecretLocator
- Conv AI Env Var Locator: ConvAiEnvVarLocator

### CustomLlmAuthConnection

用于认证的可选工作区身份验证连接。仅支持生成 Authorization Bearer 令牌的身份验证连接；不支持 Basic 认证、mTLS、自定义标头和 URL 密钥认证连接。

- Auth Connection Locator: AuthConnectionLocator
- Environment Auth Connection Locator: EnvironmentAuthConnectionLocator

### CustomLlmRequestHeadersValue

- string
- Conv AI Secret Locator: ConvAiSecretLocator
- Conv AI Dynamic Variable: ConvAiDynamicVariable
- Conv AI Env Var Locator: ConvAiEnvVarLocator

### KnowledgeBaseToolInfo

- `enabled_strategies` (list of enum, optional) — 向模型公开的搜索策略。不能为空。
  - Allowed values: `cat`, `keyword`, `semantic`, `ls`

### DynamicVariableAssignment

Configuration for extracting values from tool responses and assigning them to dynamic variables.

- `dynamic_variable` (string, required) — 要分配提取值的动态变量名称
- `value_path` (string, required) — 用于从源中提取值的点表示法路径（例如 'user.name' 或 'data.0.id'）
- `source` ("response", optional) — 提取值的来源。目前仅支持 'response'。
- `sanitize` (boolean, optional, default: false) — 如果为 true，此赋值的值会在发送给 LLM 和转录文本前从工具响应中移除，但仍会用于变量赋值处理。
- `preserve_native_type` (boolean, optional, default: false) — 如果为 true，从工具响应中提取的非标量值（列表、对象）将以原生类型存储，而非转换为 JSON 字符串。启用后，可将提取的数组直接用作列表动态变量。

### DynamicVariablesConfig

- `dynamic_variable_placeholders` (map from string to any, optional) — 动态变量占位符及其值的字典。

### ApiIntegrationWebhookOverrides

- `schema_overrides` (map from string to ApiIntegrationWebhookOverridesSchemaOverridesValue, optional)
- `response_filter_mode` (enum, optional, default: all) — 控制工具响应在对智能体可见前的过滤方式。
  - Allowed values: `all`, `allow`, `hide_all`
- `response_filters` (list of string, optional)
- `request_headers` (map from string to ApiIntegrationWebhookOverridesRequestHeadersValue, optional)

### ObjectJsonSchemaPropertyOutput

- `description` (string, optional, default: )
- `dynamic_variable` (string, optional, default: ) — 设置后，整个参数将在运行时从此动态变量填充。与 description（由 LLM 提供的值）、constant_value 和 is_omitted 互斥。
- `constant_value` (map from string to any, optional) — 设置后，整个对象将在运行时使用此常量 JSON 值。与 description（由 LLM 提供的对象）、dynamic_variable 和 is_omitted 互斥。
- `is_omitted` (boolean, optional, default: false) — 如果为 true，此参数将完全从请求中省略。仅对可选参数有效。与 description、dynamic_variable 和 constant_value 互斥。
- `type` ("object", optional)
- `required` (list of string, optional)
- `properties` (map from string to ObjectJsonSchemaPropertyOutputPropertiesValue, optional)
- `required_constraints` (RequiredConstraints, optional) — 适用于必填字段的 anyOf/allOf 组合约束包装器。

### SystemToolConfigOutputParams

- `system_tool_type`: `end_call`
- `system_tool_type`: `end_procedure`
  - `procedures` (map from string to EndProcedureToolConfigProceduresValue, optional)
- `system_tool_type`: `knowledge_base`
  - `enabled_strategies` (list of enum, optional)
    - Allowed values: `cat`, `keyword`, `semantic`, `ls`
- `system_tool_type`: `knowledge_base_rag`
- `system_tool_type`: `language_detection`
  - `only_at_conversation_start` (boolean, optional, default: false) — 如果前 2 轮用户发言未发生语言切换，之后的切换尝试将失败，对话将保持当前语言。如果在这几轮中发生语言切换，之后仍可切换。启用此项可降低错误切换的可能性。
- `system_tool_type`: `play_keypad_touch_tone`
  - `suppress_turn_after_dtmf` (boolean, optional, default: false) — 如果为 true，智能体播放 DTMF 音后不会继续生成语音。这可防止智能体语音干扰 IVR 系统。
  - `use_out_of_band_dtmf` (boolean, optional, default: true) — 将 DTMF 音作为带外 RTP 事件（RFC 4733）发送，而非带内音频。仅对通过 SIP 中继导入的号码生效。
- `system_tool_type`: `skip_turn`
  - `wait_timeout_secs` (double, optional, default: -1) — 调用 skip_turn 后，智能体生成上下文跟进前的等待秒数。等待期间，"静默后结束对话"计时器会暂停。-1 可禁用等待：调用 skip_turn 后，智能体会保持静默，直到调用方发言，且该计时器会继续运行。仅适用于语音对话。
- `system_tool_type`: `start_procedure`
  - `procedures` (map from string to StartProcedureToolConfigProceduresValue, optional)
- `system_tool_type`: `transfer_to_agent`
  - `transfers` (list of AgentTransferOutput, required)
- `system_tool_type`: `transfer_to_number`
  - `transfers` (list of PhoneNumberTransfer, required)
  - `enable_client_message` (boolean, optional, default: true) — 是否在客户等待转接时播放消息。为保持向后兼容，默认为 true。
- `system_tool_type`: `voicemail_detection`
  - `voicemail_message` (string, optional) — 检测到语音信箱时留下的可选消息。未提供时，检测到语音信箱后将立即结束通话。支持动态变量（例如 \{\{system\_\_time}}、\{\{system\_\_call\_duration\_secs}}、\{\{custom\_variable}}）。

### WebhookToolApiSchemaConfigOutput

- `url` (string, required) — 将发送 webhook 的 URL。可包含路径参数，例如 [https://example.com/agents/\{agent\_id}](https://example.com/agents/\{agent_id})
- `request_headers` (map from string to WebhookToolApiSchemaConfigOutputRequestHeadersValue, optional) — 请求中应包含的请求头
- `method` (enum, optional, default: GET) — webhook 使用的 HTTP 方法
  - Allowed values: `GET`, `POST`, `PUT`, `PATCH`, `DELETE`
- `path_params_schema` (map from string to LiteralJsonSchemaProperty, optional) — 路径参数的 Schema（如有）。键应与 URL 中的占位符匹配。
- `query_params_schema` (QueryParamsJsonSchemaOutput, optional) — 查询参数的 Schema（如有）。这些参数将作为查询参数添加到 URL 末尾。注意：查询参数中的属性必须全部为字面量类型。
- `request_body_schema` (ObjectJsonSchemaPropertyOutput, optional) — 请求正文参数的 Schema（如有）。用于 POST/PATCH/PUT 请求。该 Schema 应为作为 JSON 正文发送的对象。
- `response_body_schema` (ObjectJsonSchemaPropertyOutput, optional) — 描述预期响应正文结构的 Schema。仅用于文档，不会提供给 LLM。
- `response_filter` (ResponseFilter, optional) — 在 LLM 查看回复前应用的可选允许列表过滤器，避免大型回复污染上下文。默认为完整回复。
- `content_type` (enum, optional, default: application/json) — Content type for the request body. Only applies to POST/PUT/PATCH requests.
  - Allowed values: `application/json`, `application/x-www-form-urlencoded`
- `auth_resolved_params` (list of string, optional) — 从身份验证连接而非 path_params_schema 解析的 URL 占位符（例如通过 UrlSecretAuthConnection 注入的密钥）。
- `auth_connection` (WebhookToolApiSchemaConfigOutputAuthConnection, optional) — 用于向此 webhook 进行身份验证的可选认证连接

### SoftTimeoutConfigOverrideConfig

- `message` (boolean, optional, default: false) — 是否允许覆盖 message 字段。
- `additional_soft_timeout_messages` (boolean, optional, default: false) — 是否允许覆盖 additional_soft_timeout_messages 字段。

### PromptAgentApiModelOverrideConfig

- `prompt` (boolean, optional, default: false) — 是否允许覆盖 prompt 字段。
- `llm` (boolean, optional, default: false) — 是否允许覆盖 llm 字段。
- `tool_ids` (boolean, optional, default: false) — 是否允许覆盖 tool_ids 字段。
- `tool_ids_strict` (boolean, optional, default: false) — 是否允许覆盖 tool_ids_strict 字段。
- `native_mcp_server_ids` (boolean, optional, default: false) — 是否允许覆盖 native_mcp_server_ids 字段。
- `knowledge_base` (boolean, optional, default: false) — 是否允许覆盖 knowledge_base 字段。

### ConvAiSecretLocator

用于引用智能体密钥存储中的密钥。

- `secret_id` (string, required)

### ContentThresholdGuardrail

- `is_enabled` (boolean, optional, default: false)
- `threshold` (ContentThresholdGuardrailThreshold, optional)

### CustomGuardrailConfig

单个自定义护栏配置

- `name` (string, required) — 此防护措施面向用户的名称。
- `prompt` (string, required) — 说明要屏蔽内容的指令，例如“不要谈论政治”。
- `is_enabled` (boolean, optional, default: false)
- `execution_mode` (enum, optional, default: streaming)
  - Allowed values: `streaming`, `blocking`
- `model` (enum, optional, default: gemini-3.1-flash-lite) — 用于自定义防护规则评估的 LLM 模型。
  - Allowed values: `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `claude-haiku-4-5`, `claude-sonnet-4-6`, `gpt-5.4-nano`, `gpt-5.4-mini`
- `history_message_count` (integer, optional, default: 0) — 安全护栏在评估回复前可见的最近历史量，按用户消息计数（其中也包括智能体回复）。安全护栏始终会收到一份以待评估回复结尾的 \<conversation\_history> 转录文本，并标记为 'AGENT \[current reply]:'。0（默认）不添加此前历史记录（仅该行）；1 会从最新用户消息起添加。
- `trigger_action` (CustomGuardrailConfigTriggerAction, optional)
- `evaluate_full_response_only` (boolean, optional, default: false) — 针对完整的非 TTS 响应评估一次，而非针对累积的部分响应。需要阻塞模式。

### LlmLiteralJsonSchemaProperty

- `type` (LlmLiteralJsonSchemaPropertyType, required)
- `description` (string, required)
- `enum` (list of string, optional) — List of allowed string values for string type parameters

### AstNumberNodeInputValue

此字面量的值。

- double
- integer

### SoftTimeoutConfigWorkflowOverride

- `timeout_seconds` (double, optional) — 等待 LLM 响应时显示预定义消息前的秒数。设为 -1 可禁用。
- `message` (string, optional) — 等待 LLM 响应时，首次达到软超时时显示的消息。支持动态变量（例如 \{\{system\_\_time}}、\{\{custom\_variable}}）。
- `additional_soft_timeout_messages` (list of string, optional) — 同一次 LLM 生成中后续软超时时使用的额外静态填充消息。首次超时使用 `message`。如果配置的消息少于 `max_soft_timeouts_per_generation`，会重复最后一条配置的消息；否则使用内置填充消息。
- `use_llm_generated_message` (boolean, optional) — 启用后，将动态生成软超时消息，而非使用静态消息。
- `randomize_fillers` (boolean, optional) — 启用后，在每轮开始时随机打乱静态软超时消息的顺序。仅在 use_llm_generated_message 为 false 时适用。
- `max_soft_timeouts_per_generation` (integer, optional) — 等待单次 LLM 响应期间允许发送的最大填充消息数。每隔 timeout_seconds 触发一次，直到 LLM 开始流式返回内容或达到此限制。
- `llm_generated_message_prompt_override` (string, optional) — 启用 use\_llm\_generated\_message 时，用于生成软超时填充消息的自定义提示词。最近的对话上下文将作为单独的用户消息提供。未设置时将使用默认提示词。支持动态变量（例如 \{\{system\_\_time}}、\{\{custom\_variable}}）。
- `disable_until_first_user_message` (boolean, optional) — 设为 true 时，在对话至少包含一条真实用户消息前，将不使用软超时填充语。避免在智能体开场轮次中使用填充语（例如 workflow 立即生成，或用户说话前调用工具）。

### EffectsSpecInput

应用于生成语音的音频效果：滤镜预设、感知距离、混响 环境、背景噪声底音和立体声声像。将所有字段保留为默认值， 即可获得未经处理的音频。

- `filter_preset_id` (string, optional) — 为语音增添音色特征的滤镜预设 ID，例如 `phone` 或 `old_radio`。使用 `GET /v1/audio-effects/catalog` 列出有效 ID。
- `distance` (double, optional, default: 0) — 说话者听起来与麦克风的距离，范围为 0（近，不变）至 1（远）。值越高，低频和高频衰减越多；设置环境后，干声与混响之间的平衡会更偏向混响。
- `environment_id` (string, optional) — 将语音置于特定空间中的混响环境 ID，例如 `small_room` 或 `hall`。使用 `GET /v1/audio-effects/catalog` 列出有效 ID。混响以立体声渲染，并会在语音结束后添加最长数秒的余响。
- `background_noise_id` (string, optional) — 在语音下方循环播放的背景噪声底音 ID，例如 `cafe` 或 `keyboard`。使用 `GET /v1/audio-effects/catalog` 列出有效 ID。
- `send_level` (double, optional, default: 1) — 输入混响的语音比例，范围为 0（无）至 1（全部）。仅在设置 `environment_id` 时生效；0 会关闭混响。
- `pan` (double, optional, default: 0) — 音色的立体声位置，范围从 -1（最左）经 0（居中）到 1（最右）。仅音色会进行声像定位；混响和背景噪声保持居中。

### FileInputConfigWorkflowOverride

- `enabled` (boolean, optional) — 启用后，如果 LLM 支持多模态输入，用户可在聊天中附加图片、PDF 或文本文件。
- `max_files_in_memory` (integer, optional) — 对话期间保留在内存中的最新文件数量。较旧文件会被总结并释放其字节数据。
- `max_files_per_conversation` (integer, optional) — 用户在一次对话中可上传的文件总数。上传按文件计费。使用 -1 表示不限，或设为大于等于 max_files_in_memory 的值。

### BackgroundSoundConfigWorkflowOverride

- `source_type` ("preset", optional) — 背景声音源类型。
- `source_id` (enum, optional) — 声音源标识符。
  - Allowed values: `office2`, `office1`, `restaurant`, `city`, `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
- `volume` (double, optional) — 背景音量级别（0.01 至 1.0）。
- `crossfade_loop` (boolean, optional) — 在循环边界应用交叉淡化，避免声音循环时出现爆音。

### ConversationConfigClientOverrideInput

- `asr` (AsrConversationalConfigOverride, optional) — Configuration for conversational transcription
- `turn` (TurnConfigOverride, optional) — Configuration for turn detection
- `tts` (TtsConversationalConfigOverride, optional) — Configuration for conversational text to speech
- `conversation` (ConversationConfigOverride, optional) — Configuration for conversational events
- `agent` (AgentConfigOverrideInput, optional) — 智能体专属配置

### DynamicVariablesConfigWorkflowOverride

- `dynamic_variable_placeholders` (map from string to any, optional) — 动态变量占位符及其值的字典。

### PromptAgentApiModelWorkflowOverrideInput

- `prompt` (string, optional) — 智能体的提示词
- `llm` (enum, optional) — 用于结合提示词和聊天记录进行查询的 LLM。使用数据驻留时，该 LLM 必须受数据驻留环境支持
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `reasoning_effort` (enum, optional) — 模型的推理强度。仅部分模型支持。
  - Allowed values: `none`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`
- `thinking_budget` (integer, optional) — 用于思考的最大 token 数。模型支持时，设为 0 可关闭。
- `enable_reasoning_summary` (boolean, optional) — 启用模型推理摘要。禁用后，如可行，将不向提供商请求摘要，以加快 TTFB。不兼容 ZRM。
- `temperature` (double, optional) — LLM 的 temperature。默认为 0。设为 null 可从 LLM 请求中完全省略此参数（适用于拒绝 temperature 字段的自定义 LLM）。
- `max_tokens` (integer, optional) — 若大于 0，则为 LLM 可预测的最大 token 数
- `tool_ids` (list of string, optional) — 智能体使用的工具 ID 列表。
- `tool_ids_strict` (boolean, optional) — 仅作为对话覆盖项生效，在允许覆盖 tool_ids 时均可使用。为 true 时，覆盖后的 tool_ids 是对话中允许使用的完整工具列表，包括 workflow 节点上的工具。在智能体上设置时会被忽略。
- `built_in_tools` (BuiltInToolsWorkflowOverrideInput, optional) — Built-in system tools to be used by the agent
- `enable_parallel_tool_calls` (boolean, optional) — 启用并行工具调用。启用后，智能体可在单个轮次中并行执行多个工具。并非所有模型都支持。
- `mcp_server_ids` (list of string, optional) — 供智能体使用的 MCP 服务器 ID 列表
- `native_mcp_server_ids` (list of string, optional) — 供智能体使用的原生 MCP 服务器 ID 列表
- `knowledge_base` (list of KnowledgeBaseLocator, optional) — 供智能体使用的知识库列表
- `custom_llm` (CustomLlm, optional) — 当 LLM 字段设为 'CUSTOM_LLM' 时，自定义 LLM 的定义
- `ignore_default_personality` (boolean, optional) — 是否从系统提示词中移除默认人格描述
- `rag` (RagConfigWorkflowOverrideInput, optional) — Configuration for RAG
- `timezone` (string, optional) — 用于在系统提示词中显示当前时间的时区。设置后，系统提示词会按此时区包含当前时间。必须是有效的时区名称（如 'America/New_York'、'Europe/London'、'UTC'）。建议设置以获得准确的时间感知回复；否则，除非通过动态变量或工具提供，智能体不会知道当前日期和时间，可能导致时间引用错误或幻觉。
- `backup_llm_config` (PromptAgentApiModelWorkflowOverrideInputBackupLlmConfig, optional) — Configuration for backup LLM cascading. Can be disabled, use system defaults, or specify custom order.
- `cascade_timeout_seconds` (double, optional) — 切换至备用 LLM 前等待的秒数。必须介于 2 至 15 秒。
- `tools` (list of PromptAgentApiModelWorkflowOverrideInputToolsItem, optional) — 智能体在对话过程中可使用的工具列表，请改用 tool_ids。

### ConstantSchemaOverrideConstantValue

要使用的常量值

- string
- integer
- double
- boolean
- list of any
- map from string to any

### ConvAiEnvVarLocator

用于通过标签引用环境变量。

- `env_var_label` (string, required)

### AuthConnectionLocator

用于引用工作区身份验证连接存储中的身份验证连接。

- `auth_connection_id` (string, required)

### EnvironmentAuthConnectionLocator

通过标签引用类型为 'auth_connection' 的环境变量。 运行时会解析为当前环境的认证连接， 并回退到默认环境。

- `env_var_label` (string, required)

### ConvAiDynamicVariable

用于引用动态变量。

- `variable_name` (string, required)

### ApiIntegrationWebhookOverridesSchemaOverridesValue

- `source`: `constant`
  - `constant_value` (ConstantSchemaOverrideConstantValue, optional) — 要使用的常量值
- `source`: `dynamic_variable`
  - `dynamic_variable` (string, required) — 要使用的动态变量名称
- `source`: `llm`
  - `prompt` (string, optional) — LLM 的提示词覆盖内容。未提供时，使用原始架构描述。
- `source`: `omit`

### ApiIntegrationWebhookOverridesRequestHeadersValue

- string
- Conv AI Dynamic Variable: ConvAiDynamicVariable

### ObjectJsonSchemaPropertyOutputPropertiesValue

- Literal JSON Schema Property: LiteralJsonSchemaProperty
- Object JSON Schema Property Output: ObjectJsonSchemaPropertyOutput
- Array JSON Schema Property Output: ArrayJsonSchemaPropertyOutput

### RequiredConstraints

适用于必填字段的 anyOf/allOf 组合约束包装器。

- `any_of` (list of RequiredConstraint, optional)
- `all_of` (list of RequiredConstraint, optional)

### EndProcedureToolConfigProceduresValue

- Procedure Version Ref: ProcedureVersionRef
- Procedure Draft Ref: ProcedureDraftRef

### StartProcedureToolConfigProceduresValue

- Procedure Version Ref: ProcedureVersionRef
- Procedure Draft Ref: ProcedureDraftRef

### AgentTransferOutput

- `condition` (string, required)
- `agent_id` (string, optional)
- `branch_id` (string, optional)
- `node_id` (string, optional)
- `delay_ms` (integer, optional, default: 0)
- `transfer_message` (string, optional)
- `enable_transferred_agent_first_message` (boolean, optional, default: false)
- `is_workflow_node_transfer` (boolean, optional, default: false)
- `preserve_client_tts_overrides` (boolean, optional, default: false) — 定义是否将 TTS 客户端覆盖设置沿用至被转接的智能体。
- `preserve_voice_settings` (boolean, optional, default: false) — 定义是否将基础音色、TTS 模型和音色设置沿用至被转接的智能体。

### PhoneNumberTransfer

- `transfer_destination` (PhoneNumberTransferTransferDestination, required)
- `condition` (string, required)
- `custom_sip_headers` (list of PhoneNumberTransferCustomSipHeadersItem, optional) — 转接通话时包含的自定义 SIP 请求头。每个请求头可以是静态值或动态变量引用。
- `transfer_type` (enum, optional, default: conference)
  - Allowed values: `blind`, `conference`, `sip_refer`
- `sip_refer_play_dialtone` (boolean, optional, default: true) — 设为 True 时，在 SIP REFER 转接完成期间，原始通话线路会播放回铃音。该音调会通过 RTP 传输给执行 REFER 的 SIP 对端，因此如果接收系统（如 SBC 或呼叫中心）不应听到该音调，请禁用此项。禁用后，呼叫方在转接完成前将听到静音。仅适用于 SIP REFER 转接。
- `uui` (UuiTransferConfig, optional) — 附加到 SIP REFER 转接的用户间信息（User-to-User Information，RFC 7433）。可在转接过程中携带 CRM 标识符或升级原因等通话上下文。
- `post_dial_digits` (PhoneNumberTransferPostDialDigits, optional) — 通话接通后发送的 DTMF 按键（例如，分机号使用 'ww1234'）。可以是静态值或动态变量引用。使用 'w' 表示暂停 0.5 秒。仅支持 Twilio 转接。
- `phone_number` (string, optional, deprecated)

### WebhookToolApiSchemaConfigOutputRequestHeadersValue

- string
- Conv AI Secret Locator: ConvAiSecretLocator
- Conv AI Dynamic Variable: ConvAiDynamicVariable
- Conv AI Env Var Locator: ConvAiEnvVarLocator

### LiteralJsonSchemaProperty

字面量 JSON 类型的 Schema 属性。重要提示：以下字段只能设置其中一个：description（LLM 提供值）、dynamic_variable（来自变量的值）、is_system_provided（系统提供值）、constant_value（固定值）或 is_omitted（省略参数）。这些字段互斥。

- `type` (LiteralJsonSchemaPropertyType, required)
- `description` (string, optional, default: ) — 属性描述。设置后，LLM 将根据此描述提供值。不能与 dynamic_variable、is_system_provided、constant_value 和 is_omitted 同时使用。
- `enum` (list of string, optional) — List of allowed string values for string type parameters
- `is_system_provided` (boolean, optional, default: false) — 如果为 true，该值将在运行时由系统填充。供 API Integration Webhook 工具用于模板化。与 description、dynamic_variable、constant_value 和 is_omitted 互斥。
- `dynamic_variable` (string, optional, default: ) — 用于此属性值的动态变量名称。不能与 description、is_system_provided、constant_value 和 is_omitted 同时使用。
- `allowed_values` (AllowedValues, optional) — 针对 LLM 提供值的服务端拒绝保护：运行时会拒绝此对象指定的允许集合以外的任何值，且不会将该集合以枚举形式提供给 LLM。仅当值来源为 `description` 时支持；与 dynamic_variable、is_system_provided、constant_value 或 is_omitted 结合使用会被拒绝。
- `constant_value` (LiteralJsonSchemaPropertyConstantValue, optional) — 用于此属性的常量值。与 description、dynamic_variable、is_system_provided 和 is_omitted 互斥。
- `is_omitted` (boolean, optional, default: false) — 如果为 true，此参数将完全从请求中省略。仅对可选参数有效。与 description、dynamic_variable、is_system_provided 和 constant_value 互斥。
- `allowed_values_dynamic_variable` (string, optional, default: , deprecated) — 已弃用：请改用 `allowed_values`。设置后，LLM 会提供值，但运行时会拒绝此动态变量持有的列表中不存在的任何值（必须是 JSON 数组，例如 ["ws_alpha", "ws_beta"]）。用于让 LLM 从服务器验证的集合中选择（例如当前用户允许访问的 ID）。需要 description；不能与 dynamic_variable、is_system_provided、constant_value 和 is_omitted 同时使用。

### QueryParamsJsonSchemaOutput

- `properties` (map from string to LiteralJsonSchemaProperty, required)
- `required` (list of string, optional)

### ResponseFilter

Configuration for filtering tool responses before they are visible to the agent.

- `mode` (enum, optional, default: all) — 控制工具响应的过滤方式。'all' 返回完整响应，'allow' 仅返回指定路径，'hide_all' 隐藏整个响应。
  - Allowed values: `all`, `allow`, `hide_all`
- `filters` (list of string, optional) — 当 mode 为 'allow' 时要包含的点表示法路径（例如 ['ticket.id', 'ticket.status']）。
- `content_type` ("application/json", optional) — Content type for response filtering. Only 'application/json' responses are filtered.

### WebhookToolApiSchemaConfigOutputAuthConnection

用于向此 webhook 进行身份验证的可选认证连接

- Auth Connection Locator: AuthConnectionLocator
- Environment Auth Connection Locator: EnvironmentAuthConnectionLocator

### ContentThresholdGuardrailThreshold

- double
- "low"
- "medium"
- "high"

### CustomGuardrailConfigTriggerAction

- `type`: `end_call`
- `type`: `retry`
  - `feedback` (string, optional, default: Your response was blocked by a guardrail that blocks content that matches this condition/category: '{{trigger_reason}}' During your next turn you must tell the user "I'm sorry but I can't answer that question, would you like to know something else?".) — 触发安全护栏后重试时注入智能体的自定义反馈。

### LlmLiteralJsonSchemaPropertyType

- "boolean"
- "string"
- "integer"
- "number"
- list of string

### AgentConfigOverrideInput

- `first_message` (string, optional) — 非空时，为智能体首先说出的消息。为空时，智能体会等待用户发起对话。
- `language` (string, optional) — 智能体语言，用于 ASR 和 TTS
- `max_conversation_duration_message` (string, optional) — 非空时，为达到最长对话时长后智能体发送的消息。
- `prompt` (PromptAgentApiModelOverrideInput, optional) — 智能体的提示词

### BuiltInToolsWorkflowOverrideInput

- `transfer_to_agent` (SystemToolConfigInput, optional) — 转接至智能体工具
- `end_call` (SystemToolConfigInput, optional) — 结束通话工具
- `language_detection` (SystemToolConfigInput, optional) — 语言检测工具
- `transfer_to_number` (SystemToolConfigInput, optional) — 转接至号码工具
- `skip_turn` (SystemToolConfigInput, optional) — 跳过回合工具
- `play_keypad_touch_tone` (SystemToolConfigInput, optional) — 播放 DTMF 工具
- `voicemail_detection` (SystemToolConfigInput, optional) — 语音信箱检测工具。

### RagConfigWorkflowOverrideInput

- `enabled` (boolean, optional)
- `embedding_model` (enum, optional, default: e5_mistral_7b_instruct)
  - Allowed values: `e5_mistral_7b_instruct`, `multilingual_e5_large_instruct`
- `max_vector_distance` (double, optional) — 检索文档块的最大向量距离。
- `max_documents_length` (integer, optional) — 从 RAG 检索的文档块最大总长度。
- `max_retrieved_rag_chunks_count` (integer, optional) — 初始从向量存储中检索的最大 RAG 文档块数。随后会按向量距离和总长度进一步筛选。
- `num_candidates` (integer, optional) — ANN 向量搜索中评估的候选项数量。数值越高，结果越好，但延迟也越高。建议最小值为 100。禁用时使用默认值。
- `query_rewrite_prompt_override` (string, optional) — 在 RAG 检索前改写用户查询的自定义提示词。对话历史将自动附加在末尾。未设置时将使用默认提示词。
- `knowledge_base_tool_info` (KnowledgeBaseToolInfo, optional) — 设置后，智能体将使用 knowledge_base 工具，而非旧版 knowledge_base_rag 工具。None 表示智能体未启用此功能。

### PromptAgentApiModelWorkflowOverrideInputBackupLlmConfig

Configuration for backup LLM cascading. Can be disabled, use system defaults, or specify custom order.

- Backup Llm Default: BackupLlmDefault
- Backup Llm Disabled: BackupLlmDisabled
- Backup Llm Override: BackupLlmOverride

### PromptAgentApiModelWorkflowOverrideInputToolsItem

工具类型

- `type`: `api_integration_webhook`
  - `api_integration_connection_id` (string, required)
  - `api_integration_id` (string, required)
  - `description` (string, required) — 说明何时应使用该工具及其功能。
  - `name` (string, required)
  - `api_schema_overrides` (ApiIntegrationWebhookOverrides, optional) — 应用于基础 api_schema 之上的用户覆盖项。
  - `assignments` (list of DynamicVariableAssignment, optional) — Configuration for extracting values from tool responses and assigning them to dynamic variables
  - `dynamic_variables` (DynamicVariablesConfig, optional) — Configuration for dynamic variables
  - `execution_mode` (enum, optional, default: immediate) — 决定工具的执行时机和方式：'immediate' 会在 LLM 请求时立即执行工具；'post_tool_speech' 会等待智能体说完后再执行；'async' 会在后台运行工具且不阻塞，最适合耗时较长的操作。
    - Allowed values: `immediate`, `post_tool_speech`, `async`
  - `interruption_mode` (enum, optional, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `pre_tool_speech` (enum, optional, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — 等待工具调用完成的最长时间，单位为秒。必须介于 5 秒和 300 秒之间（含）。
  - `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `tool_version` (string, optional, default: 1.0.0) — API 集成工具的版本。
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。
- `type`: `client`
  - `description` (string, required) — 说明何时应使用该工具及其功能。
  - `name` (string, required)
  - `assignments` (list of DynamicVariableAssignment, optional) — Configuration for extracting values from tool responses and assigning them to dynamic variables
  - `dynamic_variables` (DynamicVariablesConfig, optional) — Configuration for dynamic variables
  - `execution_mode` (enum, optional, default: immediate) — 决定工具的执行时机和方式：'immediate' 会在 LLM 请求时立即执行工具；'post_tool_speech' 会等待智能体说完后再执行；'async' 会在后台运行工具且不阻塞，最适合耗时较长的操作。
    - Allowed values: `immediate`, `post_tool_speech`, `async`
  - `expects_response` (boolean, optional, default: false) — 如果为 true，调用此工具会阻塞对话，直到客户端返回响应并传递给 llm。如果为 false，则不会等待客户端响应，而是继续对话。这适合向用户展示内容而不阻塞对话。
  - `interruption_mode` (enum, optional, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `parameters` (ObjectJsonSchemaPropertyInput, optional) — 传递给客户端的所有参数的 Schema
  - `pre_tool_speech` (enum, optional, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — 等待工具调用完成的最长时间（秒）。必须介于 1 到 120 秒之间（含），或设为 -1 以无限期等待客户端响应（需要 expects_response）。
  - `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。
- `type`: `mcp`
  - `value` (any, required)
- `type`: `smb`
  - `value` (any, required)
- `type`: `system`
  - `name` (string, required)
  - `params` (SystemToolConfigInputParams, required)
  - `assignments` (list of DynamicVariableAssignment, optional) — Configuration for extracting values from tool responses and assigning them to dynamic variables
  - `description` (string, optional, default: ) — 说明何时应使用该工具及其功能。留空则使用针对该工具类型优化的默认说明。
  - `interruption_mode` (enum, optional, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `pre_tool_speech` (enum, optional, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — 等待工具调用完成的最长时间，单位为秒。
  - `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。
- `type`: `webhook`
  - `api_schema` (WebhookToolApiSchemaConfigInput, required) — 出站 webhook 的架构，包括参数和 URL 规范。
  - `description` (string, required) — 说明何时应使用该工具及其功能。
  - `name` (string, required)
  - `assignments` (list of DynamicVariableAssignment, optional) — Configuration for extracting values from tool responses and assigning them to dynamic variables
  - `dynamic_variables` (DynamicVariablesConfig, optional) — Configuration for dynamic variables
  - `execution_mode` (enum, optional, default: immediate) — 决定工具的执行时机和方式：'immediate' 会在 LLM 请求时立即执行工具；'post_tool_speech' 会等待智能体说完后再执行；'async' 会在后台运行工具且不阻塞，最适合耗时较长的操作。
    - Allowed values: `immediate`, `post_tool_speech`, `async`
  - `follow_redirects` (boolean, optional, default: false) — 是否解析端点重定向并返回最终响应。会跟随 1 次重定向，并以不带请求体的 GET 请求访问；此工具中配置的任何内容（标头、身份验证、客户端证书）都不会发送到重定向目标。端点和重定向目标均必须使用 HTTPS。不支持 API 集成工具。
  - `follow_redirects_allowed_domains` (list of string, optional) — 重定向可能指向的域名，例如 'test.example.com'。跟随重定向时必填，列表外的目标将被拒绝。
  - `interruption_mode` (enum, optional, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `pre_tool_speech` (enum, optional, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — 等待工具调用完成的最长时间，单位为秒。必须介于 5 秒和 300 秒之间（含）。
  - `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。

### ArrayJsonSchemaPropertyOutput

- `description` (string, optional, default: )
- `dynamic_variable` (string, optional, default: ) — 设置后，整个参数将在运行时从此动态变量填充。与 description（由 LLM 提供的值）、constant_value 和 is_omitted 互斥。
- `constant_value` (list of any, optional) — 设置后，整个数组将在运行时使用此常量值。与 description（由 LLM 提供的数组）、dynamic_variable 和 is_omitted 互斥。
- `is_omitted` (boolean, optional, default: false) — 如果为 true，此参数将完全从请求中省略。仅对可选参数有效。与 description、dynamic_variable 和 constant_value 互斥。
- `type` ("array", optional)
- `items` (ArrayJsonSchemaPropertyOutputItems, optional) — 数组元素的 Schema。

### RequiredConstraint

必须全部存在才能满足此约束的一组字段。

- `required` (list of string, required)

### ProcedureVersionRef

- `procedure_id` (string, required) — 流程 ID
- `version_id` (string, required) — 过程版本的版本 ID。

### ProcedureDraftRef

- `procedure_id` (string, required) — 流程 ID
- `version_id` (any, optional)

### PhoneNumberTransferTransferDestination

- `type`: `phone`
  - `phone_number` (string, required)
- `type`: `phone_dynamic_variable`
  - `phone_number` (string, required)
- `type`: `sip_uri`
  - `sip_uri` (string, required)
- `type`: `sip_uri_dynamic_variable`
  - `sip_uri` (string, required)

### PhoneNumberTransferCustomSipHeadersItem

- `type`: `dynamic`
  - `key` (string, required) — SIP 请求头名称（例如 'X-Customer-ID'）
  - `value` (string, required) — 要解析的动态变量名称
- `type`: `static`
  - `key` (string, required) — SIP 请求头名称（例如 'X-Customer-ID'）
  - `value` (string, required) — 标头值

### PhoneNumberTransferPostDialDigits

- `type`: `dynamic`
  - `value` (string, required) — 要解析的动态变量名称
- `type`: `static`
  - `value` (string, required) — 通话接通后发送的 DTMF 按键（例如，分机号使用 'ww1234'）

### LiteralJsonSchemaPropertyType

- "boolean"
- "string"
- "integer"
- "number"
- list of string

### LiteralJsonSchemaPropertyConstantValue

用于此属性的常量值。与 description、dynamic_variable、is_system_provided 和 is_omitted 互斥。

- string
- integer
- double
- boolean

### PromptAgentApiModelOverrideInput

- `prompt` (string, optional) — 智能体的提示词
- `llm` (enum, optional) — 用于结合提示词和聊天记录进行查询的 LLM。使用数据驻留时，该 LLM 必须受数据驻留环境支持
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `tool_ids` (list of string, optional) — 智能体使用的工具 ID 列表。
- `tool_ids_strict` (boolean, optional) — 仅作为对话覆盖项生效，在允许覆盖 tool_ids 时均可使用。为 true 时，覆盖后的 tool_ids 是对话中允许使用的完整工具列表，包括 workflow 节点上的工具。在智能体上设置时会被忽略。
- `native_mcp_server_ids` (list of string, optional) — 供智能体使用的原生 MCP 服务器 ID 列表
- `knowledge_base` (list of KnowledgeBaseLocator, optional) — 供智能体使用的知识库列表

### SystemToolConfigInput

系统工具是用于调用服务器系统方法的工具

- `name` (string, required)
- `params` (SystemToolConfigInputParams, required)
- `type` ("system", optional) — 工具类型
- `description` (string, optional, default: ) — 说明何时应使用该工具及其功能。留空则使用针对该工具类型优化的默认说明。
- `response_timeout_secs` (integer, optional, default: 20) — 等待工具调用完成的最长时间，单位为秒。
- `interruption_mode` (enum, optional, default: allow) — 控制用户在此次工具调用前后能否打断智能体。'allow'（默认）允许用户随时打断，'disable_during_tool' 仅在工具运行期间禁止打断，'disable_during_tool_and_turn' 会在工具运行期间及其后的智能体响应期间禁止打断。
  - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
- `pre_tool_speech` (enum, optional, default: auto) — 控制调用此工具前智能体是否说话。'auto'（默认）会根据近期工具延迟决定，'force' 始终要求智能体说话，'off' 无论延迟如何都完全禁用。
  - Allowed values: `auto`, `force`, `off`
- `assignments` (list of DynamicVariableAssignment, optional) — Configuration for extracting values from tool responses and assigning them to dynamic variables
- `tool_call_sound` (enum, optional) — 工具执行期间播放的预定义工具调用音效类型。未指定时，不播放工具调用音效。
  - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
- `tool_call_sound_behavior` (enum, optional, default: auto) — 决定工具调用提示音何时播放。'auto' 仅在工具调用前有语音时播放，'always' 会在每次工具调用时播放。
  - Allowed values: `auto`, `always`
- `tool_error_handling_mode` (enum, optional, default: auto) — 控制工具错误在共享给智能体前的处理方式。'auto' 会根据工具类型决定处理方式（原生集成会生成摘要，其他工具会隐藏），'summarized' 会发送由 LLM 生成的摘要，'passthrough' 会发送原始错误，'hide' 不会向智能体共享错误。
  - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
- `disable_interruptions` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `interruption_mode`。如果为 true，当此工具运行时，用户无法打断智能体。
- `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — 已弃用：请改用 `pre_tool_speech`。如果为 true，智能体会在调用工具前发言。

### BackupLlmDefault

- `preference` ("default", optional)

### BackupLlmDisabled

- `preference` ("disabled", optional)

### BackupLlmOverride

- `order` (list of enum, required)
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `preference` ("override", optional)

### ObjectJsonSchemaPropertyInput

- `property_kind` (enum, optional, default: object)
  - Allowed values: `array`, `object`
- `description` (string, optional, default: )
- `dynamic_variable` (string, optional, default: ) — 设置后，整个参数将在运行时从此动态变量填充。与 description（由 LLM 提供的值）、constant_value 和 is_omitted 互斥。
- `constant_value` (map from string to any, optional) — 设置后，整个对象将在运行时使用此常量 JSON 值。与 description（由 LLM 提供的对象）、dynamic_variable 和 is_omitted 互斥。
- `is_omitted` (boolean, optional, default: false) — 如果为 true，此参数将完全从请求中省略。仅对可选参数有效。与 description、dynamic_variable 和 constant_value 互斥。
- `type` ("object", optional)
- `required` (list of string, optional)
- `properties` (map from string to ObjectJsonSchemaPropertyInputPropertiesValue, optional)
- `required_constraints` (RequiredConstraints, optional) — 适用于必填字段的 anyOf/allOf 组合约束包装器。

### SystemToolConfigInputParams

- `system_tool_type`: `end_call`
- `system_tool_type`: `end_procedure`
  - `procedures` (map from string to EndProcedureToolConfigProceduresValue, optional)
- `system_tool_type`: `knowledge_base`
  - `enabled_strategies` (list of enum, optional)
    - Allowed values: `cat`, `keyword`, `semantic`, `ls`
- `system_tool_type`: `knowledge_base_rag`
- `system_tool_type`: `language_detection`
  - `only_at_conversation_start` (boolean, optional, default: false) — 如果前 2 轮用户发言未发生语言切换，之后的切换尝试将失败，对话将保持当前语言。如果在这几轮中发生语言切换，之后仍可切换。启用此项可降低错误切换的可能性。
- `system_tool_type`: `play_keypad_touch_tone`
  - `suppress_turn_after_dtmf` (boolean, optional, default: false) — 如果为 true，智能体播放 DTMF 音后不会继续生成语音。这可防止智能体语音干扰 IVR 系统。
  - `use_out_of_band_dtmf` (boolean, optional, default: true) — 将 DTMF 音作为带外 RTP 事件（RFC 4733）发送，而非带内音频。仅对通过 SIP 中继导入的号码生效。
- `system_tool_type`: `skip_turn`
  - `wait_timeout_secs` (double, optional, default: -1) — 调用 skip_turn 后，智能体生成上下文跟进前的等待秒数。等待期间，"静默后结束对话"计时器会暂停。-1 可禁用等待：调用 skip_turn 后，智能体会保持静默，直到调用方发言，且该计时器会继续运行。仅适用于语音对话。
- `system_tool_type`: `start_procedure`
  - `procedures` (map from string to StartProcedureToolConfigProceduresValue, optional)
- `system_tool_type`: `transfer_to_agent`
  - `transfers` (list of AgentTransferInput, required)
- `system_tool_type`: `transfer_to_number`
  - `transfers` (list of PhoneNumberTransfer, required)
  - `enable_client_message` (boolean, optional, default: true) — 是否在客户等待转接时播放消息。为保持向后兼容，默认为 true。
- `system_tool_type`: `voicemail_detection`
  - `voicemail_message` (string, optional) — 检测到语音信箱时留下的可选消息。未提供时，检测到语音信箱后将立即结束通话。支持动态变量（例如 \{\{system\_\_time}}、\{\{system\_\_call\_duration\_secs}}、\{\{custom\_variable}}）。

### WebhookToolApiSchemaConfigInput

- `url` (string, required) — 将发送 webhook 的 URL。可包含路径参数，例如 [https://example.com/agents/\{agent\_id}](https://example.com/agents/\{agent_id})
- `request_headers` (map from string to WebhookToolApiSchemaConfigInputRequestHeadersValue, optional) — 请求中应包含的请求头
- `method` (enum, optional, default: GET) — webhook 使用的 HTTP 方法
  - Allowed values: `GET`, `POST`, `PUT`, `PATCH`, `DELETE`
- `path_params_schema` (map from string to LiteralJsonSchemaProperty, optional) — 路径参数的 Schema（如有）。键应与 URL 中的占位符匹配。
- `query_params_schema` (QueryParamsJsonSchemaInput, optional) — 查询参数的 Schema（如有）。这些参数将作为查询参数添加到 URL 末尾。注意：查询参数中的属性必须全部为字面量类型。
- `request_body_schema` (ObjectJsonSchemaPropertyInput, optional) — 请求正文参数的 Schema（如有）。用于 POST/PATCH/PUT 请求。该 Schema 应为作为 JSON 正文发送的对象。
- `response_body_schema` (ObjectJsonSchemaPropertyInput, optional) — 描述预期响应正文结构的 Schema。仅用于文档，不会提供给 LLM。
- `response_filter` (ResponseFilter, optional) — 在 LLM 查看回复前应用的可选允许列表过滤器，避免大型回复污染上下文。默认为完整回复。
- `content_type` (enum, optional, default: application/json) — Content type for the request body. Only applies to POST/PUT/PATCH requests.
  - Allowed values: `application/json`, `application/x-www-form-urlencoded`
- `auth_resolved_params` (list of string, optional) — 从身份验证连接而非 path_params_schema 解析的 URL 占位符（例如通过 UrlSecretAuthConnection 注入的密钥）。
- `auth_connection` (WebhookToolApiSchemaConfigInputAuthConnection, optional) — 用于向此 webhook 进行身份验证的可选认证连接

### ArrayJsonSchemaPropertyOutputItems

数组元素的 Schema。

- Literal JSON Schema Property: LiteralJsonSchemaProperty
- Object JSON Schema Property Output: ObjectJsonSchemaPropertyOutput
- Array JSON Schema Property Output: ArrayJsonSchemaPropertyOutput

### ObjectJsonSchemaPropertyInputPropertiesValue

- Literal JSON Schema Property: LiteralJsonSchemaProperty
- Object JSON Schema Property Input: ObjectJsonSchemaPropertyInput
- Array JSON Schema Property Input: ArrayJsonSchemaPropertyInput

### AgentTransferInput

- `condition` (string, required)
- `agent_id` (string, optional)
- `branch_id` (string, optional)
- `node_id` (string, optional)
- `delay_ms` (integer, optional, default: 0)
- `transfer_message` (string, optional)
- `enable_transferred_agent_first_message` (boolean, optional, default: false)
- `is_workflow_node_transfer` (boolean, optional, default: false)
- `preserve_client_tts_overrides` (boolean, optional, default: false) — 定义是否将 TTS 客户端覆盖设置沿用至被转接的智能体。
- `preserve_voice_settings` (boolean, optional, default: false) — 定义是否将基础音色、TTS 模型和音色设置沿用至被转接的智能体。

### WebhookToolApiSchemaConfigInputRequestHeadersValue

- string
- Conv AI Secret Locator: ConvAiSecretLocator
- Conv AI Dynamic Variable: ConvAiDynamicVariable
- Conv AI Env Var Locator: ConvAiEnvVarLocator

### QueryParamsJsonSchemaInput

- `properties` (map from string to LiteralJsonSchemaProperty, required)
- `required` (list of string, optional)

### WebhookToolApiSchemaConfigInputAuthConnection

用于向此 webhook 进行身份验证的可选认证连接

- Auth Connection Locator: AuthConnectionLocator
- Environment Auth Connection Locator: EnvironmentAuthConnectionLocator

### ArrayJsonSchemaPropertyInput

- `property_kind` (enum, optional, default: array)
  - Allowed values: `array`, `object`
- `description` (string, optional, default: )
- `dynamic_variable` (string, optional, default: ) — 设置后，整个参数将在运行时从此动态变量填充。与 description（由 LLM 提供的值）、constant_value 和 is_omitted 互斥。
- `constant_value` (list of any, optional) — 设置后，整个数组将在运行时使用此常量值。与 description（由 LLM 提供的数组）、dynamic_variable 和 is_omitted 互斥。
- `is_omitted` (boolean, optional, default: false) — 如果为 true，此参数将完全从请求中省略。仅对可选参数有效。与 description、dynamic_variable 和 constant_value 互斥。
- `type` ("array", optional)
- `items` (ArrayJsonSchemaPropertyInputItems, optional) — 数组元素的 Schema。

### ArrayJsonSchemaPropertyInputItems

数组元素的 Schema。

- Literal JSON Schema Property: LiteralJsonSchemaProperty
- Object JSON Schema Property Input: ObjectJsonSchemaPropertyInput
- Array JSON Schema Property Input: ArrayJsonSchemaPropertyInput

## Examples

**Request**

```json
{}
```

**Response**

```json
{
  "agent_id": "J3Pbu5gP6NNKBscdCdwB"
}
```

**SDK Code**

```python
import requests

url = "https://api.elevenlabs.io/v1/convai/agents/create"

querystring = {"enable_versioning":"true"}

payload = {}
headers = {"Content-Type": "application/json"}

response = requests.post(url, json=payload, headers=headers, params=querystring)

print(response.json())
```

```javascript
const url = 'https://api.elevenlabs.io/v1/convai/agents/create?enable_versioning=true';
const options = {method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{}'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://api.elevenlabs.io/v1/convai/agents/create?enable_versioning=true"

	payload := strings.NewReader("{}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.elevenlabs.io/v1/convai/agents/create?enable_versioning=true")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{}"

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://api.elevenlabs.io/v1/convai/agents/create?enable_versioning=true")
  .header("Content-Type", "application/json")
  .body("{}")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://api.elevenlabs.io/v1/convai/agents/create?enable_versioning=true', [
  'body' => '{}',
  'headers' => [
    'Content-Type' => 'application/json',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.elevenlabs.io/v1/convai/agents/create?enable_versioning=true");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = ["Content-Type": "application/json"]
let parameters = [] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://api.elevenlabs.io/v1/convai/agents/create?enable_versioning=true")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```