Default values for the {{placeholders}} in the configured text, used when the session supplies none (the map replaces as a whole), and on_missing for a placeholder with neither: keep leaves it as written (default), empty renders it as empty text, reject refuses the session.
Read shape of the voice section. The ASR fields that moved to the asr
section stay mirrored here, deprecated, so clients written before the split
keep reading them.
Facts the platform tells the agent on its own, one switch per fact.
The same mechanism as a guardrail with the opposite sign: a guardrail is
a prompt addition that constrains, a context switch is one that informs.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Fish Audio","description":"Documentation for Fish Audio APIs, SDKs, models, voice cloning, real-time streaming, and self-hosting.","colors":{"primary":"#0e0e0e","light":"#9b90e8","dark":"#09090b"},"logo":{"light":"https://mintcdn.com/hanabiaiinc/amYp9Dj31LtlHliX/logo/light.png?fit=max\u0026auto=format\u0026n=amYp9Dj31LtlHliX\u0026q=85\u0026s=305973cd6a8d11dbf36d1ec682ee845e","dark":"https://mintcdn.com/hanabiaiinc/amYp9Dj31LtlHliX/logo/dark.png?fit=max\u0026auto=format\u0026n=amYp9Dj31LtlHliX\u0026q=85\u0026s=b79bd889db9ac1aae939834596e8a22f"},"favicon":"https://mintcdn.com/hanabiaiinc/-WxHANLOAmlTUwdM/favicon.svg?fit=max\u0026auto=format\u0026n=-WxHANLOAmlTUwdM\u0026q=85\u0026s=dc65d9f44bda0f5b8277c48dd9c979c3","navbar":{"links":[{"href":"https://discord.gg/dF9Db2Tt3Y","label":"Community"},{"href":"mailto:support@fish.audio","label":"Support"}],"primary":{"type":"button","label":"Sign Up","href":"https://fish.audio/auth/?redirect=/app/"}},"footer":{"socials":{"website":"https://fish.audio","github":"https://github.com/fishaudio","x":"https://x.com/fishaudio","linkedin":"https://www.linkedin.com/company/fish-audio","discord":"https://discord.gg/dF9Db2Tt3Y"},"links":[{"header":"About","items":[{"label":"Research","href":"https://openaudio.com/"},{"label":"Careers","href":"mailto:hr@fish.audio"},{"label":"Blog","href":"https://fish.audio/blog"}]},{"header":"Resources","items":[{"label":"API Status","href":"https://status.fish.audio"},{"label":"Open Source","href":"https://github.com/fishaudio"},{"label":"Changelog","href":"https://docs.fish.audio/developer-guide/getting-started/changelog"}]},{"header":"Legal","items":[{"label":"Privacy Policy","href":"https://fish.audio/privacy"},{"label":"Terms of Service","href":"https://fish.audio/terms"},{"label":"Report Abuse","href":"mailto:support@fish.audio?subject=%5BReport+Abuse%5D+MODEL+NAME\u0026amp;body=Please+provide+a+detailed+description+of+the+abuse+you+are+reporting."}]}]},"fonts":{"family":"Onest"},"integrations":{"amplitude":{"apiKey":"39daf30712f00da6ea5283bc21e7084e"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity"],"display":"header"},"interaction":{"drilldown":true},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"hanabiaiinc","hasAudioNarration":false,"actualSubdomain":"hanabiaiinc","customDomains":["docs.fish.audio"],"gitSource":{"type":"github","owner":"fishaudio","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adf939a97dcd8815dac5716","collectionId":"c3bd58b2-e275-4a0e-aa2a-84eb41462f11","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adf939a97dcd8815dac5716"},"feedback":{"thumbs":true,"edits":true,"issues":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6adf939a97dcd8815dac5716","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"default","tag":"API Reference","count":78},{"language":"default","tag":"Agents API","count":49},{"language":"default","tag":"Agents","count":46},{"language":"default","tag":"Resources","count":40},{"language":"default","tag":"Overview","count":30},{"language":"default","tag":"REST API","count":14},{"language":"default","tag":"Core Features","count":14},{"language":"default","tag":"Tests","count":13},{"language":"default","tag":"Cookbook","count":12},{"language":"default","tag":"Build","count":10}]},"assistantConfig":{"enableAskAiButton":true,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"support@fish.audio","showHelpButton":true}},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":true},"customCss":[{"filePath":"custom.css","content":"*{scrollbar-width:thin;scrollbar-color:rgba(120,120,120,.4) transparent}::-webkit-scrollbar{width:6px;height:6px;background:0 0!important}::-webkit-scrollbar-thumb{background:rgba(120,120,120,.5);border-radius:999px;opacity:0;transition:opacity .2s ease}:active::-webkit-scrollbar-thumb,:hover::-webkit-scrollbar-thumb{opacity:1}img[src*=\"/images/\"]{background:0 0!important}.prompt-card{display:grid;cursor:pointer;outline:0}.prompt-card .card{transition:border-color .15s ease}.prompt-card:focus-visible .card,.prompt-card:hover .card{border-color:rgb(var(--primary))!important}.dark .prompt-card:focus-visible .card,.dark .prompt-card:hover .card{border-color:rgb(var(--primary-light))!important}.prompt-card-hint{position:absolute;top:1rem;right:1rem;padding:.3rem .6rem;border-radius:9999px;font-size:.75rem;line-height:1;color:rgb(var(--gray-500));background:rgba(120,120,120,.12);opacity:0;transition:opacity .15s ease;pointer-events:none}.prompt-card:focus-visible .prompt-card-hint,.prompt-card:hover .prompt-card-hint,.prompt-card[data-state=copied] .prompt-card-hint,.prompt-card[data-state=failed] .prompt-card-hint{opacity:1}.prompt-card[data-state=copied] .prompt-card-hint{color:rgb(var(--primary));background:rgb(var(--primary)/.12)}.dark .prompt-card[data-state=copied] .prompt-card-hint{color:rgb(var(--primary-light));background:rgb(var(--primary-light)/.16)}"}],"page":{"pagePath":"api-reference/endpoint/agent/update-draft-config","slug":"/api-reference/endpoint/agent/update-draft-config","pageMetadata":{"openapi":"patch /v1/agent/agents/{agent_id}/config","title":"Update Draft Config","description":"Patch the draft configuration section by section; omitted sections keep\ntheir value.","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/update-draft-config"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Patch the draft configuration section by section; omitted sections keep\\ntheir value.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"openapi":"patch /v1/agent/agents/{agent_id}/config","title":"Update Draft Config","description":"Patch the draft configuration section by section; omitted sections keep\ntheir value.","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/update-draft-config"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"summary":"Update Draft Config","description":"Patch the draft configuration section by section; omitted sections keep\ntheir value.","security":["1862bf0a-29d1-4b6d-b516-7dec1c18891a"],"parameters":["c0da3904-1269-4a80-837d-fedebcfc1f99"],"requestBody":"51bb07a5-e71d-4f84-ac3a-38ebeb0e1ddb","responses":{"200":"ca592b14-9d78-4a27-9934-374e281e591f","401":"31f49aa9-8e16-4300-a226-479574f61933","403":"0d4c2a60-0e39-4f1f-a4e1-24566aafc313","404":"29688c20-94dd-404e-ba0f-2691a7bec649","409":"ca229e72-3bba-4bf7-b04f-62761d0983f6","422":"090bc48c-7600-4960-972c-ade3c304b861","503":"0a9a86e0-cd45-41dd-8ec2-b29f70c8b964"},"tags":["Agents"],"x-codeSamples":[{"lang":"bash","label":"Update Draft Config","source":"curl --request PATCH \\\n --url https://api.fish.audio/v1/agent/agents/\u003cagent-id>/config \\\n --header 'Authorization: Bearer \u003ctoken>' \\\n --header 'Content-Type: application/json' \\\n --data '{\n \"prompt\": {\n \"system_prompt\": \"You are the receptionist for Fish Dental.\"\n },\n \"webhooks\": {\n \"post_call\": [\n {\n \"url\": \"https://example.com/hooks/fish\",\n \"secret\": \"\u003csigning-secret>\"\n }\n ]\n }\n }'"}],"method":"patch","type":"path","servers":["39cecf54-e58d-4ac2-ab28-6d00babdd859"],"path":"/v1/agent/agents/{agent_id}/config","baseUrlOptions":["https://api.fish.audio"],"title":"Update Draft Config","codeSamples":[{"label":"Update Draft Config","lang":"bash","source":"curl --request PATCH \\\n --url https://api.fish.audio/v1/agent/agents/\u003cagent-id>/config \\\n --header 'Authorization: Bearer \u003ctoken>' \\\n --header 'Content-Type: application/json' \\\n --data '{\n \"prompt\": {\n \"system_prompt\": \"You are the receptionist for Fish Dental.\"\n },\n \"webhooks\": {\n \"post_call\": [\n {\n \"url\": \"https://example.com/hooks/fish\",\n \"secret\": \"\u003csigning-secret>\"\n }\n ]\n }\n }'"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{"c0da3904-1269-4a80-837d-fedebcfc1f99":{"in":"path","name":"agent_id","description":"","required":true,"schema":{"title":"Agent Id","type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"},"deprecated":false}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"prompt":{"oneOf":[{"type":"object","title":"PublicAgentPromptPatch","properties":{"system_prompt":{"oneOf":[{"type":"string","title":"System Prompt","description":"Limited to 32000 tokens (o200k_base); keeping it under 2000 tokens is recommended for latency and cost.","maxLength":500000,"uniqueKey":"prompt.oneOf.0.system_prompt.oneOf.0","typeLabel":"string"},{"type":"null","title":"System Prompt","description":"Limited to 32000 tokens (o200k_base); keeping it under 2000 tokens is recommended for latency and cost.","uniqueKey":"prompt.oneOf.0.system_prompt.oneOf.1","typeLabel":"null"}],"uniqueKey":"prompt.oneOf.0.system_prompt","typeLabel":"string | null"},"first_message_mode":{"oneOf":[{"type":"string","title":"First Message Mode","enum":["off","fixed","prompt"],"uniqueKey":"prompt.oneOf.0.first_message_mode.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"First Message Mode","uniqueKey":"prompt.oneOf.0.first_message_mode.oneOf.1","typeLabel":"null"}],"uniqueKey":"prompt.oneOf.0.first_message_mode","typeLabel":"enum\u003cstring> | null"},"first_message":{"oneOf":[{"type":"string","title":"First Message","maxLength":10000,"uniqueKey":"prompt.oneOf.0.first_message.oneOf.0","typeLabel":"string"},{"type":"null","title":"First Message","uniqueKey":"prompt.oneOf.0.first_message.oneOf.1","typeLabel":"null"}],"uniqueKey":"prompt.oneOf.0.first_message","typeLabel":"string | null"},"first_message_prompt":{"oneOf":[{"type":"string","title":"First Message Prompt","maxLength":10000,"uniqueKey":"prompt.oneOf.0.first_message_prompt.oneOf.0","typeLabel":"string"},{"type":"null","title":"First Message Prompt","uniqueKey":"prompt.oneOf.0.first_message_prompt.oneOf.1","typeLabel":"null"}],"uniqueKey":"prompt.oneOf.0.first_message_prompt","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"prompt.oneOf.0","typeLabel":"PublicAgentPromptPatch · object"},{"type":"null","uniqueKey":"prompt.oneOf.1","typeLabel":"null"}],"uniqueKey":"prompt","typeLabel":"PublicAgentPromptPatch · object | null"},"voice":{"oneOf":[{"type":"object","title":"PublicAgentVoicePatch","properties":{"voice_id":{"oneOf":[{"type":"string","title":"Voice Id","maxLength":256,"uniqueKey":"voice.oneOf.0.voice_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Voice Id","uniqueKey":"voice.oneOf.0.voice_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice.oneOf.0.voice_id","typeLabel":"string | null"},"speaking_language":{"oneOf":[{"type":"string","title":"Speaking Language","enum":["en","ja","zh","ko","es","fr","de","pt","it","nl","ar","hi","id","tr","ru","bg","sr","hr","cs","sk","pl","uk","ro","hu","el","sv","da","no","fi","et","lv","lt","ca","he","fa","ur","kk","ka","hy","bn","ta","te","kn","mr","gu","pa","ne","th","vi","ms","tl","af"],"uniqueKey":"voice.oneOf.0.speaking_language.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Speaking Language","uniqueKey":"voice.oneOf.0.speaking_language.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice.oneOf.0.speaking_language","typeLabel":"enum\u003cstring> | null"},"expressive":{"oneOf":[{"type":"boolean","title":"Expressive","uniqueKey":"voice.oneOf.0.expressive.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Expressive","uniqueKey":"voice.oneOf.0.expressive.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice.oneOf.0.expressive","typeLabel":"boolean | null"},"speed":{"oneOf":[{"type":"number","title":"Speed","maximum":2,"minimum":0.5,"uniqueKey":"voice.oneOf.0.speed.oneOf.0","typeLabel":"number"},{"type":"null","title":"Speed","uniqueKey":"voice.oneOf.0.speed.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice.oneOf.0.speed","typeLabel":"number | null"},"tts_model":{"oneOf":[{"type":"string","title":"Tts Model","enum":["s2.1-pro","drama-3"],"uniqueKey":"voice.oneOf.0.tts_model.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Tts Model","uniqueKey":"voice.oneOf.0.tts_model.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice.oneOf.0.tts_model","typeLabel":"enum\u003cstring> | null"},"pronunciation_dictionary_ids":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"voice.oneOf.0.pronunciation_dictionary_ids.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Pronunciation Dictionary Ids","maxItems":3,"uniqueKey":"voice.oneOf.0.pronunciation_dictionary_ids.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Pronunciation Dictionary Ids","uniqueKey":"voice.oneOf.0.pronunciation_dictionary_ids.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice.oneOf.0.pronunciation_dictionary_ids","typeLabel":"string[] | null"}},"additionalProperties":false,"uniqueKey":"voice.oneOf.0","typeLabel":"PublicAgentVoicePatch · object"},{"type":"null","uniqueKey":"voice.oneOf.1","typeLabel":"null"}],"uniqueKey":"voice","typeLabel":"PublicAgentVoicePatch · object | null"},"asr":{"oneOf":[{"type":"object","title":"PublicAgentAsrPatch","properties":{"model":{"oneOf":[{"type":"string","title":"Model","enum":["deepgram:nova-3","elevenlabs:scribe_v2_realtime","elevenlabs:scribe_v2_medical","fish_audio:transcribe-stream-1"],"uniqueKey":"asr.oneOf.0.model.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Model","uniqueKey":"asr.oneOf.0.model.oneOf.1","typeLabel":"null"}],"uniqueKey":"asr.oneOf.0.model","typeLabel":"enum\u003cstring> | null"},"multilingual":{"oneOf":[{"type":"boolean","title":"Multilingual","uniqueKey":"asr.oneOf.0.multilingual.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Multilingual","uniqueKey":"asr.oneOf.0.multilingual.oneOf.1","typeLabel":"null"}],"uniqueKey":"asr.oneOf.0.multilingual","typeLabel":"boolean | null"},"strict_language":{"oneOf":[{"type":"boolean","title":"Strict Language","description":"Enforces voice.speaking_language whatever multilingual says: speech recognized as another language reaches the agent as [unintelligible speech]. Language is detected per utterance, so a short or heavily accented phrase in the speaking language can occasionally be detected as another language and replaced too. With deepgram:nova-3, speech in another language is usually not transcribed at all. Only enable it when you explicitly need to stop the agent from understanding other languages.","uniqueKey":"asr.oneOf.0.strict_language.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Strict Language","description":"Enforces voice.speaking_language whatever multilingual says: speech recognized as another language reaches the agent as [unintelligible speech]. Language is detected per utterance, so a short or heavily accented phrase in the speaking language can occasionally be detected as another language and replaced too. With deepgram:nova-3, speech in another language is usually not transcribed at all. Only enable it when you explicitly need to stop the agent from understanding other languages.","uniqueKey":"asr.oneOf.0.strict_language.oneOf.1","typeLabel":"null"}],"uniqueKey":"asr.oneOf.0.strict_language","typeLabel":"boolean | null"},"keyterms":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"asr.oneOf.0.keyterms.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Keyterms","maxItems":50,"uniqueKey":"asr.oneOf.0.keyterms.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Keyterms","uniqueKey":"asr.oneOf.0.keyterms.oneOf.1","typeLabel":"null"}],"uniqueKey":"asr.oneOf.0.keyterms","typeLabel":"string[] | null"}},"additionalProperties":false,"uniqueKey":"asr.oneOf.0","typeLabel":"PublicAgentAsrPatch · object"},{"type":"null","uniqueKey":"asr.oneOf.1","typeLabel":"null"}],"uniqueKey":"asr","typeLabel":"PublicAgentAsrPatch · object | null"},"conversation":{"oneOf":[{"type":"object","title":"PublicAgentConversationPatch","properties":{"max_duration_seconds":{"oneOf":[{"type":"integer","title":"Max Duration Seconds","maximum":3600,"minimum":60,"uniqueKey":"conversation.oneOf.0.max_duration_seconds.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Max Duration Seconds","uniqueKey":"conversation.oneOf.0.max_duration_seconds.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.max_duration_seconds","typeLabel":"integer | null"},"response_wait_ms":{"oneOf":[{"type":"integer","title":"Response Wait Ms","maximum":2000,"minimum":300,"uniqueKey":"conversation.oneOf.0.response_wait_ms.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Response Wait Ms","uniqueKey":"conversation.oneOf.0.response_wait_ms.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.response_wait_ms","typeLabel":"integer | null"},"eagerness":{"oneOf":[{"type":"string","title":"Eagerness","enum":["relaxed","balanced","eager"],"uniqueKey":"conversation.oneOf.0.eagerness.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Eagerness","uniqueKey":"conversation.oneOf.0.eagerness.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.eagerness","typeLabel":"enum\u003cstring> | null"},"response_max_wait_ms":{"oneOf":[{"type":"integer","title":"Response Max Wait Ms","maximum":4000,"minimum":0,"uniqueKey":"conversation.oneOf.0.response_max_wait_ms.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Response Max Wait Ms","uniqueKey":"conversation.oneOf.0.response_max_wait_ms.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.response_max_wait_ms","typeLabel":"integer | null"},"interruptible":{"oneOf":[{"type":"boolean","title":"Interruptible","uniqueKey":"conversation.oneOf.0.interruptible.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Interruptible","uniqueKey":"conversation.oneOf.0.interruptible.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.interruptible","typeLabel":"boolean | null"},"interruption_sensitivity":{"oneOf":[{"type":"string","title":"Interruption Sensitivity","enum":["low","balanced","high"],"uniqueKey":"conversation.oneOf.0.interruption_sensitivity.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Interruption Sensitivity","uniqueKey":"conversation.oneOf.0.interruption_sensitivity.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.interruption_sensitivity","typeLabel":"enum\u003cstring> | null"},"interruption_ignore_phrases":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"conversation.oneOf.0.interruption_ignore_phrases.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Interruption Ignore Phrases","maxItems":50,"uniqueKey":"conversation.oneOf.0.interruption_ignore_phrases.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Interruption Ignore Phrases","uniqueKey":"conversation.oneOf.0.interruption_ignore_phrases.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.interruption_ignore_phrases","typeLabel":"string[] | null"},"speculative_response":{"oneOf":[{"type":"boolean","title":"Speculative Response","uniqueKey":"conversation.oneOf.0.speculative_response.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Speculative Response","uniqueKey":"conversation.oneOf.0.speculative_response.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.speculative_response","typeLabel":"boolean | null"},"reengage_enabled":{"oneOf":[{"type":"boolean","title":"Reengage Enabled","uniqueKey":"conversation.oneOf.0.reengage_enabled.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Reengage Enabled","uniqueKey":"conversation.oneOf.0.reengage_enabled.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.reengage_enabled","typeLabel":"boolean | null"},"hangup_after_seconds":{"oneOf":[{"type":"integer","title":"Hangup After Seconds","maximum":3600,"minimum":10,"uniqueKey":"conversation.oneOf.0.hangup_after_seconds.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Hangup After Seconds","uniqueKey":"conversation.oneOf.0.hangup_after_seconds.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.hangup_after_seconds","typeLabel":"integer | null"},"hangup_farewell_mode":{"oneOf":[{"type":"string","title":"Hangup Farewell Mode","description":"What the agent says before a silence hangup. `off` (default) hangs up without a word, `generated` says a short goodbye, `fixed` says hangup_farewell_message. A `fixed` mode with an empty message falls back to `generated`. If the caller speaks during the goodbye, the call goes on.","enum":["generated","fixed","off"],"uniqueKey":"conversation.oneOf.0.hangup_farewell_mode.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Hangup Farewell Mode","description":"What the agent says before a silence hangup. `off` (default) hangs up without a word, `generated` says a short goodbye, `fixed` says hangup_farewell_message. A `fixed` mode with an empty message falls back to `generated`. If the caller speaks during the goodbye, the call goes on.","uniqueKey":"conversation.oneOf.0.hangup_farewell_mode.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.hangup_farewell_mode","typeLabel":"enum\u003cstring> | null"},"hangup_farewell_message":{"oneOf":[{"type":"string","title":"Hangup Farewell Message","description":"The goodbye said verbatim in the `fixed` hangup_farewell_mode, at most 500 characters. `{{variable}}` placeholders are filled in for each session. \"\" clears it.","uniqueKey":"conversation.oneOf.0.hangup_farewell_message.oneOf.0","typeLabel":"string"},{"type":"null","title":"Hangup Farewell Message","description":"The goodbye said verbatim in the `fixed` hangup_farewell_mode, at most 500 characters. `{{variable}}` placeholders are filled in for each session. \"\" clears it.","uniqueKey":"conversation.oneOf.0.hangup_farewell_message.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.hangup_farewell_message","typeLabel":"string | null"},"record_audio":{"oneOf":[{"type":"boolean","title":"Record Audio","uniqueKey":"conversation.oneOf.0.record_audio.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Record Audio","uniqueKey":"conversation.oneOf.0.record_audio.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.record_audio","typeLabel":"boolean | null"},"timezone":{"oneOf":[{"type":"string","title":"Timezone","maxLength":64,"uniqueKey":"conversation.oneOf.0.timezone.oneOf.0","typeLabel":"string"},{"type":"null","title":"Timezone","uniqueKey":"conversation.oneOf.0.timezone.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.timezone","typeLabel":"string | null"},"transfer_destinations":{"oneOf":[{"type":"array","items":{"additionalProperties":false,"properties":{"type":{"default":"phone","enum":["phone","sip"],"title":"Type","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"label":{"default":"","title":"Label","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].label","typeLabel":"string"},"phone_number":{"oneOf":[{"type":"string","title":"Phone Number","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].phone_number.oneOf.0","typeLabel":"string"},{"type":"null","title":"Phone Number","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].phone_number.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].phone_number","typeLabel":"string | null"},"sip_uri":{"oneOf":[{"type":"string","title":"Sip Uri","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].sip_uri.oneOf.0","typeLabel":"string"},{"type":"null","title":"Sip Uri","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].sip_uri.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].sip_uri","typeLabel":"string | null"},"description":{"default":"","title":"Description","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].description","typeLabel":"string"},"mode":{"default":"cold","enum":["cold","warm"],"title":"Mode","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].mode","typeLabel":"enum\u003cstring>"},"warm_connect":{"default":"confirm","enum":["confirm","briefing","direct"],"title":"Warm Connect","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].warm_connect","typeLabel":"enum\u003cstring>"},"warm_briefing_instructions":{"default":"","title":"Warm Briefing Instructions","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].warm_briefing_instructions","typeLabel":"string"},"warm_ring_timeout_seconds":{"default":30,"title":"Warm Ring Timeout Seconds","type":"integer","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].warm_ring_timeout_seconds","typeLabel":"integer"},"warm_confirm_timeout_seconds":{"default":60,"title":"Warm Confirm Timeout Seconds","type":"integer","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].warm_confirm_timeout_seconds","typeLabel":"integer"},"warm_human_detection":{"default":false,"description":"Applies to warm transfers whose warm_connect is `confirm` or `briefing`, and is ignored for cold transfers and `direct`. When true, once the destination answers, the agent stays silent until the other side speaks, then classifies the pickup. A person is briefed as usual. Voicemail or an IVR (phone menu) ends the transfer as failed. A hold queue or silence keeps the agent waiting until `warm_confirm_timeout_seconds` ends the attempt as unreachable. A failed transfer follows `on_failure`. Leave it off for destinations whose people are only reachable through a phone menu, because the menu stops the transfer.","title":"Warm Human Detection","type":"boolean","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].warm_human_detection","typeLabel":"boolean"},"warm_consult_uses_agent_settings":{"default":true,"description":"Compatibility option for warm transfers whose warm_connect is `confirm` or `briefing`, ignored for cold transfers and `direct`. Absent or true (recommended): on the call in which the agent briefs the destination, the agent uses the same turn-taking (response timing: `eagerness`, `response_wait_ms` and `response_max_wait_ms`), interruption (`interruption_sensitivity` and `interruption_ignore_phrases`) and language (`voice.speaking_language`) settings as on the call with the caller. False: that call keeps the older fixed behavior. Destinations that existed before this setting were set to false so their behavior did not change. Either way the destination can always interrupt the agent on that call, whatever `interruptible` is set to. A destination sent without the field keeps the value of the existing destination it replaces (same label, else a renamed one with the same phone number or SIP URI) and is true when it is new. Send true to switch a destination to the agent's settings.","title":"Warm Consult Uses Agent Settings","type":"boolean","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].warm_consult_uses_agent_settings","typeLabel":"boolean"},"on_failure":{"additionalProperties":false,"properties":{"action":{"default":"return_to_agent","enum":["return_to_agent","end_call"],"title":"Action","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].on_failure.action","typeLabel":"enum\u003cstring>"},"message":{"default":"","title":"Message","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].on_failure.message","typeLabel":"string"}},"title":"AgentTransferOnFailurePatch","type":"object","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].on_failure","typeLabel":"AgentTransferOnFailurePatch · object"},"announcement_mode":{"default":"generated","enum":["generated","fixed","off"],"title":"Announcement Mode","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].announcement_mode","typeLabel":"enum\u003cstring>"},"announcement_message":{"default":"","title":"Announcement Message","type":"string","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX].announcement_message","typeLabel":"string"}},"title":"AgentTransferDestinationPatch","type":"object","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0.items.[INDEX]","typeLabel":"AgentTransferDestinationPatch · object"},"title":"Transfer Destinations","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.0","typeLabel":"AgentTransferDestinationPatch · object[]"},{"type":"null","title":"Transfer Destinations","uniqueKey":"conversation.oneOf.0.transfer_destinations.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.transfer_destinations","typeLabel":"AgentTransferDestinationPatch · object[] | null"},"transfer_refuse_questions":{"oneOf":[{"type":"boolean","title":"Transfer Refuse Questions","uniqueKey":"conversation.oneOf.0.transfer_refuse_questions.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Transfer Refuse Questions","uniqueKey":"conversation.oneOf.0.transfer_refuse_questions.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.transfer_refuse_questions","typeLabel":"boolean | null"},"outbound":{"oneOf":[{"type":"object","title":"AgentOutboundPatch","properties":{"amd_enabled":{"default":true,"title":"Amd Enabled","type":"boolean","uniqueKey":"conversation.oneOf.0.outbound.oneOf.0.amd_enabled","typeLabel":"boolean"},"voicemail":{"oneOf":[{"type":"object","title":"AgentOutboundVoicemailPatch","properties":{"action":{"default":"hangup","enum":["hangup","leave_message","leave_prompt_message"],"title":"Action","type":"string","uniqueKey":"conversation.oneOf.0.outbound.oneOf.0.voicemail.oneOf.0.action","typeLabel":"enum\u003cstring>"},"message":{"default":"","maxLength":10000,"title":"Message","type":"string","uniqueKey":"conversation.oneOf.0.outbound.oneOf.0.voicemail.oneOf.0.message","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"conversation.oneOf.0.outbound.oneOf.0.voicemail.oneOf.0","typeLabel":"AgentOutboundVoicemailPatch · object"},{"type":"null","uniqueKey":"conversation.oneOf.0.outbound.oneOf.0.voicemail.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.outbound.oneOf.0.voicemail","typeLabel":"AgentOutboundVoicemailPatch · object | null"}},"additionalProperties":false,"uniqueKey":"conversation.oneOf.0.outbound.oneOf.0","typeLabel":"AgentOutboundPatch · object"},{"type":"null","uniqueKey":"conversation.oneOf.0.outbound.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.outbound","typeLabel":"AgentOutboundPatch · object | null"},"keypad_menu":{"oneOf":[{"type":"object","title":"AgentKeypadMenuPatch","properties":{"enabled":{"default":false,"title":"Enabled","type":"boolean","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.enabled","typeLabel":"boolean"},"prompt":{"default":"","title":"Prompt","type":"string","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.prompt","typeLabel":"string"},"options":{"default":[],"items":{"additionalProperties":false,"properties":{"key":{"title":"Key","type":"string","isRequired":true,"uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.options.items.[INDEX].key","typeLabel":"string"},"value":{"title":"Value","type":"string","isRequired":true,"uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.options.items.[INDEX].value","typeLabel":"string"}},"required":["key","value"],"title":"AgentKeypadMenuOptionPatch","type":"object","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.options.items.[INDEX]","typeLabel":"AgentKeypadMenuOptionPatch · object"},"maxItems":12,"title":"Options","type":"array","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.options","typeLabel":"AgentKeypadMenuOptionPatch · object[]"},"accept_speech":{"default":true,"title":"Accept Speech","type":"boolean","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.accept_speech","typeLabel":"boolean"},"variable":{"default":"menu_choice","title":"Variable","type":"string","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.variable","typeLabel":"string"},"no_input_timeout_seconds":{"default":5,"maximum":15,"minimum":2,"title":"No Input Timeout Seconds","type":"integer","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.no_input_timeout_seconds","typeLabel":"integer"},"max_attempts":{"default":2,"maximum":3,"minimum":1,"title":"Max Attempts","type":"integer","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.max_attempts","typeLabel":"integer"},"retry_message":{"default":"","title":"Retry Message","type":"string","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.retry_message","typeLabel":"string"},"fallback_value":{"default":"","title":"Fallback Value","type":"string","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0.fallback_value","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.0","typeLabel":"AgentKeypadMenuPatch · object"},{"type":"null","uniqueKey":"conversation.oneOf.0.keypad_menu.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.keypad_menu","typeLabel":"AgentKeypadMenuPatch · object | null"},"keypad_input":{"oneOf":[{"type":"object","title":"AgentKeypadInputPatch","properties":{"enabled":{"default":false,"title":"Enabled","type":"boolean","uniqueKey":"conversation.oneOf.0.keypad_input.oneOf.0.enabled","typeLabel":"boolean"},"terminator":{"default":"#","enum":["#","*","none"],"title":"Terminator","type":"string","uniqueKey":"conversation.oneOf.0.keypad_input.oneOf.0.terminator","typeLabel":"enum\u003cstring>"},"inter_digit_timeout_seconds":{"default":2,"maximum":10,"minimum":1,"title":"Inter Digit Timeout Seconds","type":"integer","uniqueKey":"conversation.oneOf.0.keypad_input.oneOf.0.inter_digit_timeout_seconds","typeLabel":"integer"}},"additionalProperties":false,"uniqueKey":"conversation.oneOf.0.keypad_input.oneOf.0","typeLabel":"AgentKeypadInputPatch · object"},{"type":"null","uniqueKey":"conversation.oneOf.0.keypad_input.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.keypad_input","typeLabel":"AgentKeypadInputPatch · object | null"},"echo_guard":{"oneOf":[{"type":"object","title":"AgentEchoGuardPatch","description":"Echo guard. For the first 3 seconds after the agent first starts talking in a call, the caller cannot interrupt it and anything the caller says while the agent is talking is not heard. This stops the agent's own voice, echoing back from a speakerphone or laptop, from cutting it off. Per channel: true on, false off, null uses the default (on for web_voice and phone_inbound, off for phone_outbound). Channels you send replace the stored value, null on a channel resets it to the default, channels you leave out are kept. null resets every channel.","properties":{"web_voice":{"oneOf":[{"type":"boolean","title":"Web Voice","description":"Voice calls in a browser or app (web widget, SDK, test calls). Null uses the default (on).","uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0.web_voice.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Web Voice","description":"Voice calls in a browser or app (web widget, SDK, test calls). Null uses the default (on).","uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0.web_voice.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0.web_voice","typeLabel":"boolean | null"},"phone_inbound":{"oneOf":[{"type":"boolean","title":"Phone Inbound","description":"Inbound phone calls. Null uses the default (on).","uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0.phone_inbound.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Phone Inbound","description":"Inbound phone calls. Null uses the default (on).","uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0.phone_inbound.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0.phone_inbound","typeLabel":"boolean | null"},"phone_outbound":{"oneOf":[{"type":"boolean","title":"Phone Outbound","description":"Outbound phone calls. Null uses the default (off).","uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0.phone_outbound.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Phone Outbound","description":"Outbound phone calls. Null uses the default (off).","uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0.phone_outbound.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0.phone_outbound","typeLabel":"boolean | null"}},"additionalProperties":false,"uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.0","typeLabel":"AgentEchoGuardPatch · object"},{"type":"null","description":"Echo guard. For the first 3 seconds after the agent first starts talking in a call, the caller cannot interrupt it and anything the caller says while the agent is talking is not heard. This stops the agent's own voice, echoing back from a speakerphone or laptop, from cutting it off. Per channel: true on, false off, null uses the default (on for web_voice and phone_inbound, off for phone_outbound). Channels you send replace the stored value, null on a channel resets it to the default, channels you leave out are kept. null resets every channel.","uniqueKey":"conversation.oneOf.0.echo_guard.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.oneOf.0.echo_guard","typeLabel":"AgentEchoGuardPatch · object | null"}},"additionalProperties":false,"uniqueKey":"conversation.oneOf.0","typeLabel":"PublicAgentConversationPatch · object"},{"type":"null","uniqueKey":"conversation.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation","typeLabel":"PublicAgentConversationPatch · object | null"},"tools":{"oneOf":[{"type":"object","title":"PublicAgentToolsPatch","properties":{"enabled":{"oneOf":[{"type":"boolean","title":"Enabled","uniqueKey":"tools.oneOf.0.enabled.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Enabled","uniqueKey":"tools.oneOf.0.enabled.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools.oneOf.0.enabled","typeLabel":"boolean | null"},"tool_ids":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"tools.oneOf.0.tool_ids.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Tool Ids","description":"Replaces the attached tool set wholesale. Every id must be an existing tool in the agent's workspace, else 422.","uniqueKey":"tools.oneOf.0.tool_ids.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Tool Ids","description":"Replaces the attached tool set wholesale. Every id must be an existing tool in the agent's workspace, else 422.","uniqueKey":"tools.oneOf.0.tool_ids.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools.oneOf.0.tool_ids","typeLabel":"string[] | null"},"system_tools":{"oneOf":[{"type":"object","title":"PublicSystemToolsPatch","properties":{"hang_up_call":{"oneOf":[{"type":"boolean","title":"Hang Up Call","uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Hang Up Call","uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call","typeLabel":"boolean | null"},"hang_up_call_farewell_mode":{"oneOf":[{"type":"string","title":"Hang Up Call Farewell Mode","enum":["generated","fixed","off"],"uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call_farewell_mode.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Hang Up Call Farewell Mode","uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call_farewell_mode.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call_farewell_mode","typeLabel":"enum\u003cstring> | null"},"hang_up_call_farewell_message":{"oneOf":[{"type":"string","title":"Hang Up Call Farewell Message","maxLength":1000,"uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call_farewell_message.oneOf.0","typeLabel":"string"},{"type":"null","title":"Hang Up Call Farewell Message","uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call_farewell_message.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call_farewell_message","typeLabel":"string | null"},"hang_up_call_refuse_questions":{"oneOf":[{"type":"boolean","title":"Hang Up Call Refuse Questions","uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call_refuse_questions.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Hang Up Call Refuse Questions","uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call_refuse_questions.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools.oneOf.0.system_tools.oneOf.0.hang_up_call_refuse_questions","typeLabel":"boolean | null"}},"additionalProperties":false,"uniqueKey":"tools.oneOf.0.system_tools.oneOf.0","typeLabel":"PublicSystemToolsPatch · object"},{"type":"null","uniqueKey":"tools.oneOf.0.system_tools.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools.oneOf.0.system_tools","typeLabel":"PublicSystemToolsPatch · object | null"}},"additionalProperties":false,"uniqueKey":"tools.oneOf.0","typeLabel":"PublicAgentToolsPatch · object"},{"type":"null","uniqueKey":"tools.oneOf.1","typeLabel":"null"}],"uniqueKey":"tools","typeLabel":"PublicAgentToolsPatch · object | null"},"webhooks":{"oneOf":[{"type":"object","title":"PublicAgentWebhooksPatch","properties":{"conversation_init":{"oneOf":[{"type":"object","title":"PublicConversationInitWebhookPayload","description":"Pre-call webhook for inbound phone calls: called while the call is being set up; the response's dynamic_variables render into the published prompt before the agent speaks. An explicit null removes it. Takes effect after the next publish.","required":["url"],"properties":{"url":{"maxLength":4000,"minLength":1,"title":"Url","type":"string","isRequired":true,"uniqueKey":"webhooks.oneOf.0.conversation_init.oneOf.0.url","typeLabel":"string"},"secret":{"oneOf":[{"type":"string","title":"Secret","description":"Optional HMAC-SHA256 signing secret (X-Fish-Webhook-Signature). Write-only: reads report `has_secret` instead of the value. Omit it (or send null) to keep the secret already stored for the same url; send an empty string to remove it.","maxLength":256,"uniqueKey":"webhooks.oneOf.0.conversation_init.oneOf.0.secret.oneOf.0","typeLabel":"string"},{"type":"null","title":"Secret","description":"Optional HMAC-SHA256 signing secret (X-Fish-Webhook-Signature). Write-only: reads report `has_secret` instead of the value. Omit it (or send null) to keep the secret already stored for the same url; send an empty string to remove it.","uniqueKey":"webhooks.oneOf.0.conversation_init.oneOf.0.secret.oneOf.1","typeLabel":"null"}],"uniqueKey":"webhooks.oneOf.0.conversation_init.oneOf.0.secret","typeLabel":"string | null"},"timeout_seconds":{"default":5,"description":"How long the platform waits for the endpoint before connecting the call without variables.","maximum":8,"minimum":1,"title":"Timeout Seconds","type":"number","uniqueKey":"webhooks.oneOf.0.conversation_init.oneOf.0.timeout_seconds","typeLabel":"number"}},"additionalProperties":false,"uniqueKey":"webhooks.oneOf.0.conversation_init.oneOf.0","typeLabel":"PublicConversationInitWebhookPayload · object"},{"type":"null","description":"Pre-call webhook for inbound phone calls: called while the call is being set up; the response's dynamic_variables render into the published prompt before the agent speaks. An explicit null removes it. Takes effect after the next publish.","uniqueKey":"webhooks.oneOf.0.conversation_init.oneOf.1","typeLabel":"null"}],"uniqueKey":"webhooks.oneOf.0.conversation_init","typeLabel":"PublicConversationInitWebhookPayload · object | null"},"post_call":{"oneOf":[{"type":"array","items":{"additionalProperties":false,"properties":{"url":{"maxLength":4000,"minLength":1,"title":"Url","type":"string","isRequired":true,"uniqueKey":"webhooks.oneOf.0.post_call.oneOf.0.items.[INDEX].url","typeLabel":"string"},"secret":{"oneOf":[{"type":"string","title":"Secret","description":"Optional HMAC-SHA256 signing secret (X-Fish-Webhook-Signature). Write-only: reads report `has_secret` instead of the value. Omit it (or send null) to keep the secret already stored for the same url; send an empty string to remove it.","maxLength":256,"uniqueKey":"webhooks.oneOf.0.post_call.oneOf.0.items.[INDEX].secret.oneOf.0","typeLabel":"string"},{"type":"null","title":"Secret","description":"Optional HMAC-SHA256 signing secret (X-Fish-Webhook-Signature). Write-only: reads report `has_secret` instead of the value. Omit it (or send null) to keep the secret already stored for the same url; send an empty string to remove it.","uniqueKey":"webhooks.oneOf.0.post_call.oneOf.0.items.[INDEX].secret.oneOf.1","typeLabel":"null"}],"uniqueKey":"webhooks.oneOf.0.post_call.oneOf.0.items.[INDEX].secret","typeLabel":"string | null"}},"required":["url"],"title":"PublicPostCallWebhookPayload","type":"object","uniqueKey":"webhooks.oneOf.0.post_call.oneOf.0.items.[INDEX]","typeLabel":"PublicPostCallWebhookPayload · object"},"title":"Post Call","description":"Up to 5 endpoints, each receiving every post-call event. Replaces the configured list wholesale; a single object is still accepted and is stored as a one-element list, and null (or an empty list) clears every endpoint. URLs must be unique.","maxItems":5,"uniqueKey":"webhooks.oneOf.0.post_call.oneOf.0","typeLabel":"PublicPostCallWebhookPayload · object[]"},{"type":"null","title":"Post Call","description":"Up to 5 endpoints, each receiving every post-call event. Replaces the configured list wholesale; a single object is still accepted and is stored as a one-element list, and null (or an empty list) clears every endpoint. URLs must be unique.","uniqueKey":"webhooks.oneOf.0.post_call.oneOf.1","typeLabel":"null"}],"uniqueKey":"webhooks.oneOf.0.post_call","typeLabel":"PublicPostCallWebhookPayload · object[] | null"}},"additionalProperties":false,"uniqueKey":"webhooks.oneOf.0","typeLabel":"PublicAgentWebhooksPatch · object"},{"type":"null","uniqueKey":"webhooks.oneOf.1","typeLabel":"null"}],"uniqueKey":"webhooks","typeLabel":"PublicAgentWebhooksPatch · object | null"},"knowledge_base":{"oneOf":[{"type":"object","title":"PublicAgentKnowledgeBasePatch","properties":{"enabled":{"oneOf":[{"type":"boolean","title":"Enabled","description":"Whether the agent retrieves from its attached sources. Defaults to true when omitted alongside a non-empty knowledge_source_ids; send false explicitly to attach sources without using them yet.","uniqueKey":"knowledge_base.oneOf.0.enabled.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Enabled","description":"Whether the agent retrieves from its attached sources. Defaults to true when omitted alongside a non-empty knowledge_source_ids; send false explicitly to attach sources without using them yet.","uniqueKey":"knowledge_base.oneOf.0.enabled.oneOf.1","typeLabel":"null"}],"uniqueKey":"knowledge_base.oneOf.0.enabled","typeLabel":"boolean | null"},"knowledge_source_ids":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"knowledge_base.oneOf.0.knowledge_source_ids.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Knowledge Source Ids","description":"Replaces the attached knowledge sources wholesale. Every id must be an existing knowledge source visible to the agent, else 422.","uniqueKey":"knowledge_base.oneOf.0.knowledge_source_ids.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Knowledge Source Ids","description":"Replaces the attached knowledge sources wholesale. Every id must be an existing knowledge source visible to the agent, else 422.","uniqueKey":"knowledge_base.oneOf.0.knowledge_source_ids.oneOf.1","typeLabel":"null"}],"uniqueKey":"knowledge_base.oneOf.0.knowledge_source_ids","typeLabel":"string[] | null"}},"additionalProperties":false,"uniqueKey":"knowledge_base.oneOf.0","typeLabel":"PublicAgentKnowledgeBasePatch · object"},{"type":"null","uniqueKey":"knowledge_base.oneOf.1","typeLabel":"null"}],"uniqueKey":"knowledge_base","typeLabel":"PublicAgentKnowledgeBasePatch · object | null"},"analysis":{"oneOf":[{"type":"object","title":"PublicAgentAnalysisPatch","properties":{"summary":{"oneOf":[{"type":"object","title":"PublicAgentAnalysisSummaryPatch","properties":{"enabled":{"default":true,"title":"Enabled","type":"boolean","uniqueKey":"analysis.oneOf.0.summary.oneOf.0.enabled","typeLabel":"boolean"},"prompt":{"oneOf":[{"type":"string","title":"Prompt","maxLength":1000,"uniqueKey":"analysis.oneOf.0.summary.oneOf.0.prompt.oneOf.0","typeLabel":"string"},{"type":"null","title":"Prompt","uniqueKey":"analysis.oneOf.0.summary.oneOf.0.prompt.oneOf.1","typeLabel":"null"}],"uniqueKey":"analysis.oneOf.0.summary.oneOf.0.prompt","typeLabel":"string | null"},"language":{"default":"en","enum":["en","ja","zh","ko","es","fr","de","pt","it","nl","ar","hi","id","tr","ru","bg","sr","hr","cs","sk","pl","uk","ro","hu","el","sv","da","no","fi","et","lv","lt","ca","he","fa","ur","kk","ka","hy","bn","ta","te","kn","mr","gu","pa","ne","th","vi","ms","tl","af"],"title":"Language","type":"string","uniqueKey":"analysis.oneOf.0.summary.oneOf.0.language","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"analysis.oneOf.0.summary.oneOf.0","typeLabel":"PublicAgentAnalysisSummaryPatch · object"},{"type":"null","uniqueKey":"analysis.oneOf.0.summary.oneOf.1","typeLabel":"null"}],"uniqueKey":"analysis.oneOf.0.summary","typeLabel":"PublicAgentAnalysisSummaryPatch · object | null"},"data_fields":{"oneOf":[{"type":"array","items":{"additionalProperties":false,"properties":{"name":{"pattern":"^[a-z][a-z0-9_]{0,63}$","title":"Name","type":"string","isRequired":true,"uniqueKey":"analysis.oneOf.0.data_fields.oneOf.0.items.[INDEX].name","typeLabel":"string"},"type":{"default":"text","enum":["boolean","text","number","enum"],"title":"Type","type":"string","uniqueKey":"analysis.oneOf.0.data_fields.oneOf.0.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"description":{"default":"","maxLength":500,"title":"Description","type":"string","uniqueKey":"analysis.oneOf.0.data_fields.oneOf.0.items.[INDEX].description","typeLabel":"string"},"enum_options":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"analysis.oneOf.0.data_fields.oneOf.0.items.[INDEX].enum_options.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Enum Options","uniqueKey":"analysis.oneOf.0.data_fields.oneOf.0.items.[INDEX].enum_options.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Enum Options","uniqueKey":"analysis.oneOf.0.data_fields.oneOf.0.items.[INDEX].enum_options.oneOf.1","typeLabel":"null"}],"uniqueKey":"analysis.oneOf.0.data_fields.oneOf.0.items.[INDEX].enum_options","typeLabel":"string[] | null"}},"required":["name"],"title":"PublicAgentAnalysisDataField","type":"object","uniqueKey":"analysis.oneOf.0.data_fields.oneOf.0.items.[INDEX]","typeLabel":"PublicAgentAnalysisDataField · object"},"title":"Data Fields","maxItems":20,"uniqueKey":"analysis.oneOf.0.data_fields.oneOf.0","typeLabel":"PublicAgentAnalysisDataField · object[]"},{"type":"null","title":"Data Fields","uniqueKey":"analysis.oneOf.0.data_fields.oneOf.1","typeLabel":"null"}],"uniqueKey":"analysis.oneOf.0.data_fields","typeLabel":"PublicAgentAnalysisDataField · object[] | null"},"criteria":{"oneOf":[{"type":"array","items":{"additionalProperties":false,"properties":{"name":{"pattern":"^[a-z][a-z0-9_]{0,63}$","title":"Name","type":"string","isRequired":true,"uniqueKey":"analysis.oneOf.0.criteria.oneOf.0.items.[INDEX].name","typeLabel":"string"},"description":{"default":"","maxLength":500,"title":"Description","type":"string","uniqueKey":"analysis.oneOf.0.criteria.oneOf.0.items.[INDEX].description","typeLabel":"string"}},"required":["name"],"title":"PublicAgentAnalysisCriterion","type":"object","uniqueKey":"analysis.oneOf.0.criteria.oneOf.0.items.[INDEX]","typeLabel":"PublicAgentAnalysisCriterion · object"},"title":"Criteria","maxItems":10,"uniqueKey":"analysis.oneOf.0.criteria.oneOf.0","typeLabel":"PublicAgentAnalysisCriterion · object[]"},{"type":"null","title":"Criteria","uniqueKey":"analysis.oneOf.0.criteria.oneOf.1","typeLabel":"null"}],"uniqueKey":"analysis.oneOf.0.criteria","typeLabel":"PublicAgentAnalysisCriterion · object[] | null"}},"additionalProperties":false,"uniqueKey":"analysis.oneOf.0","typeLabel":"PublicAgentAnalysisPatch · object"},{"type":"null","uniqueKey":"analysis.oneOf.1","typeLabel":"null"}],"uniqueKey":"analysis","typeLabel":"PublicAgentAnalysisPatch · object | null"},"guardrails":{"oneOf":[{"type":"object","title":"PublicAgentGuardrailsPatch","properties":{"focus":{"oneOf":[{"type":"boolean","title":"Focus","uniqueKey":"guardrails.oneOf.0.focus.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Focus","uniqueKey":"guardrails.oneOf.0.focus.oneOf.1","typeLabel":"null"}],"uniqueKey":"guardrails.oneOf.0.focus","typeLabel":"boolean | null"},"manipulation":{"oneOf":[{"type":"boolean","title":"Manipulation","uniqueKey":"guardrails.oneOf.0.manipulation.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Manipulation","uniqueKey":"guardrails.oneOf.0.manipulation.oneOf.1","typeLabel":"null"}],"uniqueKey":"guardrails.oneOf.0.manipulation","typeLabel":"boolean | null"}},"additionalProperties":false,"uniqueKey":"guardrails.oneOf.0","typeLabel":"PublicAgentGuardrailsPatch · object"},{"type":"null","uniqueKey":"guardrails.oneOf.1","typeLabel":"null"}],"uniqueKey":"guardrails","typeLabel":"PublicAgentGuardrailsPatch · object | null"},"context":{"oneOf":[{"type":"object","title":"PublicAgentContextPatch","properties":{"current_time":{"oneOf":[{"type":"boolean","title":"Current Time","uniqueKey":"context.oneOf.0.current_time.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Current Time","uniqueKey":"context.oneOf.0.current_time.oneOf.1","typeLabel":"null"}],"uniqueKey":"context.oneOf.0.current_time","typeLabel":"boolean | null"}},"additionalProperties":false,"uniqueKey":"context.oneOf.0","typeLabel":"PublicAgentContextPatch · object"},{"type":"null","uniqueKey":"context.oneOf.1","typeLabel":"null"}],"uniqueKey":"context","typeLabel":"PublicAgentContextPatch · object | null"},"llm":{"oneOf":[{"type":"object","title":"PublicAgentLLMPatch","properties":{"model":{"oneOf":[{"type":"string","title":"Model","enum":["google/gemini-3.5-flash-lite","google/gemini-3.6-flash","google/gemini-3.8-flash","google/gemini-3.6-flash-priority","google/gemini-3.8-flash-priority","google/gemini-2.5-flash","google/gemma-4-26b-a4b-it","anthropic/claude-haiku-4.5","anthropic/claude-sonnet-4.6","anthropic/claude-opus-5.5","anthropic/claude-fable-5.1","openai/gpt-5.6-luna","openai/gpt-6-luna","openai/gpt-5","openai/gpt-6.1-sol","openai/gpt-6-astra","openai/gpt-4o","openai/gpt-4.1"],"uniqueKey":"llm.oneOf.0.model.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"Model","uniqueKey":"llm.oneOf.0.model.oneOf.1","typeLabel":"null"}],"uniqueKey":"llm.oneOf.0.model","typeLabel":"enum\u003cstring> | null"},"custom":{"oneOf":[{"type":"object","title":"PublicAgentLLMCustomConfig","description":"Your own OpenAI-compatible endpoint; mutually exclusive with `model`, explicit null reverts to the platform model.","required":["base_url","model"],"properties":{"base_url":{"maxLength":2000,"minLength":1,"title":"Base Url","type":"string","isRequired":true,"uniqueKey":"llm.oneOf.0.custom.oneOf.0.base_url","typeLabel":"string"},"model":{"maxLength":256,"minLength":1,"title":"Model","type":"string","isRequired":true,"uniqueKey":"llm.oneOf.0.custom.oneOf.0.model","typeLabel":"string"},"api_key":{"oneOf":[{"type":"string","title":"Api Key","description":"Sent to your endpoint as the Authorization bearer token; write-only, reads return null. Required when introducing `custom`; omit to keep the stored key when updating.","maxLength":4096,"minLength":1,"uniqueKey":"llm.oneOf.0.custom.oneOf.0.api_key.oneOf.0","typeLabel":"string"},{"type":"null","title":"Api Key","description":"Sent to your endpoint as the Authorization bearer token; write-only, reads return null. Required when introducing `custom`; omit to keep the stored key when updating.","uniqueKey":"llm.oneOf.0.custom.oneOf.0.api_key.oneOf.1","typeLabel":"null"}],"uniqueKey":"llm.oneOf.0.custom.oneOf.0.api_key","typeLabel":"string | null"},"headers":{"oneOf":[{"type":"object","title":"Headers","description":"Extra headers sent on every request to your endpoint, such as `x-vercel-protection-bypass`. Reads return the stored map. Omit to keep the stored headers, `{}` clears them.","additionalProperties":{"type":"string","uniqueKey":"llm.oneOf.0.custom.oneOf.0.headers.oneOf.0.additionalProperties","typeLabel":"string"},"uniqueKey":"llm.oneOf.0.custom.oneOf.0.headers.oneOf.0","typeLabel":"Headers · object"},{"type":"null","title":"Headers","description":"Extra headers sent on every request to your endpoint, such as `x-vercel-protection-bypass`. Reads return the stored map. Omit to keep the stored headers, `{}` clears them.","uniqueKey":"llm.oneOf.0.custom.oneOf.0.headers.oneOf.1","typeLabel":"null"}],"uniqueKey":"llm.oneOf.0.custom.oneOf.0.headers","typeLabel":"Headers · object | null"}},"additionalProperties":false,"uniqueKey":"llm.oneOf.0.custom.oneOf.0","typeLabel":"PublicAgentLLMCustomConfig · object"},{"type":"null","description":"Your own OpenAI-compatible endpoint; mutually exclusive with `model`, explicit null reverts to the platform model.","uniqueKey":"llm.oneOf.0.custom.oneOf.1","typeLabel":"null"}],"uniqueKey":"llm.oneOf.0.custom","typeLabel":"PublicAgentLLMCustomConfig · object | null"}},"additionalProperties":false,"uniqueKey":"llm.oneOf.0","typeLabel":"PublicAgentLLMPatch · object"},{"type":"null","uniqueKey":"llm.oneOf.1","typeLabel":"null"}],"uniqueKey":"llm","typeLabel":"PublicAgentLLMPatch · object | null"},"variables":{"oneOf":[{"type":"object","title":"PublicAgentVariablesPatch","description":"Default values for the {{placeholders}} in the configured text, used when the session supplies none (the map replaces as a whole), and on_missing for a placeholder with neither: keep leaves it as written (default), empty renders it as empty text, reject refuses the session.","properties":{"defaults":{"oneOf":[{"type":"object","title":"Defaults","additionalProperties":{"oneOf":[{"type":"string","uniqueKey":"variables.oneOf.0.defaults.oneOf.0.additionalProperties.oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"variables.oneOf.0.defaults.oneOf.0.additionalProperties.oneOf.1","typeLabel":"integer"},{"type":"number","uniqueKey":"variables.oneOf.0.defaults.oneOf.0.additionalProperties.oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"variables.oneOf.0.defaults.oneOf.0.additionalProperties.oneOf.3","typeLabel":"boolean"}],"uniqueKey":"variables.oneOf.0.defaults.oneOf.0.additionalProperties","typeLabel":"string | integer | number | boolean"},"uniqueKey":"variables.oneOf.0.defaults.oneOf.0","typeLabel":"Defaults · object"},{"type":"null","title":"Defaults","uniqueKey":"variables.oneOf.0.defaults.oneOf.1","typeLabel":"null"}],"uniqueKey":"variables.oneOf.0.defaults","typeLabel":"Defaults · object | null"},"on_missing":{"oneOf":[{"type":"string","title":"On Missing","enum":["keep","empty","reject"],"uniqueKey":"variables.oneOf.0.on_missing.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","title":"On Missing","uniqueKey":"variables.oneOf.0.on_missing.oneOf.1","typeLabel":"null"}],"uniqueKey":"variables.oneOf.0.on_missing","typeLabel":"enum\u003cstring> | null"}},"additionalProperties":false,"uniqueKey":"variables.oneOf.0","typeLabel":"PublicAgentVariablesPatch · object"},{"type":"null","description":"Default values for the {{placeholders}} in the configured text, used when the session supplies none (the map replaces as a whole), and on_missing for a placeholder with neither: keep leaves it as written (default), empty renders it as empty text, reject refuses the session.","uniqueKey":"variables.oneOf.1","typeLabel":"null"}],"uniqueKey":"variables","typeLabel":"PublicAgentVariablesPatch · object | null"}},"title":"PublicAgentConfigPatchPayload","type":"object","uniqueKey":"","typeLabel":"PublicAgentConfigPatchPayload · object"},"examples":{"Example":{"title":"Example","value":{"prompt":{"system_prompt":"\u003cstring>","first_message":"\u003cstring>","first_message_prompt":"\u003cstring>"},"voice":{"voice_id":"\u003cstring>","expressive":true,"speed":1.25,"pronunciation_dictionary_ids":["\u003cstring>"]},"asr":{"multilingual":true,"strict_language":true,"keyterms":["\u003cstring>"]},"conversation":{"max_duration_seconds":1830,"response_wait_ms":1150,"response_max_wait_ms":2000,"interruptible":true,"interruption_ignore_phrases":["\u003cstring>"],"speculative_response":true,"reengage_enabled":true,"hangup_after_seconds":1805,"hangup_farewell_message":"\u003cstring>","record_audio":true,"timezone":"\u003cstring>","transfer_destinations":[{"type":"phone","label":"","phone_number":"\u003cstring>","sip_uri":"\u003cstring>","description":"","mode":"cold","warm_connect":"confirm","warm_briefing_instructions":"","warm_ring_timeout_seconds":30,"warm_confirm_timeout_seconds":60,"warm_human_detection":false,"warm_consult_uses_agent_settings":true,"on_failure":{"action":"return_to_agent","message":""},"announcement_mode":"generated","announcement_message":""}],"transfer_refuse_questions":true,"outbound":{"amd_enabled":true,"voicemail":{"action":"hangup","message":""}},"keypad_menu":{"enabled":false,"prompt":"","options":[],"accept_speech":true,"variable":"menu_choice","no_input_timeout_seconds":5,"max_attempts":2,"retry_message":"","fallback_value":""},"keypad_input":{"enabled":false,"terminator":"#","inter_digit_timeout_seconds":2},"echo_guard":{"web_voice":true,"phone_inbound":true,"phone_outbound":true}},"tools":{"enabled":true,"tool_ids":["\u003cstring>"],"system_tools":{"hang_up_call":true,"hang_up_call_farewell_message":"\u003cstring>","hang_up_call_refuse_questions":true}},"webhooks":{"conversation_init":{"url":"\u003cstring>","secret":"\u003cstring>","timeout_seconds":5},"post_call":[{"url":"\u003cstring>","secret":"\u003cstring>"}]},"knowledge_base":{"enabled":true,"knowledge_source_ids":["\u003cstring>"]},"analysis":{"summary":{"enabled":true,"prompt":"\u003cstring>","language":"en"},"data_fields":[{"name":"\u003cstring>","type":"text","description":"","enum_options":["\u003cstring>"]}],"criteria":[{"name":"\u003cstring>","description":""}]},"guardrails":{"focus":true,"manipulation":true},"context":{"current_time":true},"llm":{"custom":{"base_url":"\u003cstring>","model":"\u003cstring>","api_key":"\u003cstring>","headers":{}}},"variables":{"defaults":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"ca592b14-9d78-4a27-9934-374e281e591f":{"description":"Request fulfilled, document follows","headers":{},"content":{"application/json":{"schema":{"properties":{"agent_id":{"title":"Agent Id","type":"string","isRequired":true,"uniqueKey":"agent_id","typeLabel":"string"},"config_hash":{"description":"Content hash of the draft; equal to a version's config_hash when the draft has no unpublished changes.","title":"Config Hash","type":"string","isRequired":true,"uniqueKey":"config_hash","typeLabel":"string"},"prompt":{"properties":{"system_prompt":{"default":"","title":"System Prompt","type":"string","uniqueKey":"prompt.system_prompt","typeLabel":"string"},"first_message_mode":{"default":"prompt","enum":["off","fixed","prompt"],"title":"First Message Mode","type":"string","uniqueKey":"prompt.first_message_mode","typeLabel":"enum\u003cstring>"},"first_message":{"default":"Hi! Thanks for calling — how can I help you today?","title":"First Message","type":"string","uniqueKey":"prompt.first_message","typeLabel":"string"},"first_message_prompt":{"default":"Greet the caller and ask what you can help with.","title":"First Message Prompt","type":"string","uniqueKey":"prompt.first_message_prompt","typeLabel":"string"}},"title":"AgentPromptConfig","type":"object","isRequired":true,"uniqueKey":"prompt","typeLabel":"AgentPromptConfig · object"},"voice":{"description":"Read shape of the voice section. The ASR fields that moved to the asr\nsection stay mirrored here, deprecated, so clients written before the split\nkeep reading them.","properties":{"voice_id":{"default":"b347db033a6549378b48d00acb0d06cd","title":"Voice Id","type":"string","uniqueKey":"voice.voice_id","typeLabel":"string"},"speaking_language":{"default":"en","enum":["en","ja","zh","ko","es","fr","de","pt","it","nl","ar","hi","id","tr","ru","bg","sr","hr","cs","sk","pl","uk","ro","hu","el","sv","da","no","fi","et","lv","lt","ca","he","fa","ur","kk","ka","hy","bn","ta","te","kn","mr","gu","pa","ne","th","vi","ms","tl","af"],"title":"Speaking Language","type":"string","uniqueKey":"voice.speaking_language","typeLabel":"enum\u003cstring>"},"expressive":{"default":false,"title":"Expressive","type":"boolean","uniqueKey":"voice.expressive","typeLabel":"boolean"},"speed":{"default":1,"maximum":2,"minimum":0.5,"title":"Speed","type":"number","uniqueKey":"voice.speed","typeLabel":"number"},"tts_model":{"default":"s2.1-pro","enum":["s2.1-pro","drama-3"],"title":"Tts Model","type":"string","uniqueKey":"voice.tts_model","typeLabel":"enum\u003cstring>"},"pronunciation_dictionary_ids":{"items":{"type":"string","uniqueKey":"voice.pronunciation_dictionary_ids.items.[INDEX]","typeLabel":"string"},"title":"Pronunciation Dictionary Ids","type":"array","uniqueKey":"voice.pronunciation_dictionary_ids","typeLabel":"string[]"}},"title":"AgentVoiceConfigView","type":"object","isRequired":true,"uniqueKey":"voice","typeLabel":"AgentVoiceConfigView · object"},"asr":{"description":"The asr section as the public API reads it: without the console-only\nnoise cancellation and speaker label switches.","properties":{"model":{"default":"deepgram:nova-3","enum":["deepgram:nova-3","elevenlabs:scribe_v2_realtime","elevenlabs:scribe_v2_medical","fish_audio:transcribe-stream-1"],"title":"Model","type":"string","uniqueKey":"asr.model","typeLabel":"enum\u003cstring>"},"multilingual":{"default":false,"title":"Multilingual","type":"boolean","uniqueKey":"asr.multilingual","typeLabel":"boolean"},"strict_language":{"default":false,"description":"Enforces voice.speaking_language whatever multilingual says: speech recognized as another language reaches the agent as [unintelligible speech]. Language is detected per utterance, so a short or heavily accented phrase in the speaking language can occasionally be detected as another language and replaced too. With deepgram:nova-3, speech in another language is usually not transcribed at all. Only enable it when you explicitly need to stop the agent from understanding other languages.","title":"Strict Language","type":"boolean","uniqueKey":"asr.strict_language","typeLabel":"boolean"},"keyterms":{"items":{"type":"string","uniqueKey":"asr.keyterms.items.[INDEX]","typeLabel":"string"},"maxItems":50,"title":"Keyterms","type":"array","uniqueKey":"asr.keyterms","typeLabel":"string[]"}},"title":"PublicAgentAsrConfig","type":"object","isRequired":true,"uniqueKey":"asr","typeLabel":"PublicAgentAsrConfig · object"},"conversation":{"properties":{"max_duration_seconds":{"default":1800,"title":"Max Duration Seconds","type":"integer","uniqueKey":"conversation.max_duration_seconds","typeLabel":"integer"},"response_wait_ms":{"default":550,"title":"Response Wait Ms","type":"integer","uniqueKey":"conversation.response_wait_ms","typeLabel":"integer"},"eagerness":{"default":"balanced","enum":["relaxed","balanced","eager"],"title":"Eagerness","type":"string","uniqueKey":"conversation.eagerness","typeLabel":"enum\u003cstring>"},"response_max_wait_ms":{"oneOf":[{"type":"integer","title":"Response Max Wait Ms","uniqueKey":"conversation.response_max_wait_ms.oneOf.0","typeLabel":"integer"},{"type":"null","title":"Response Max Wait Ms","uniqueKey":"conversation.response_max_wait_ms.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.response_max_wait_ms","typeLabel":"integer | null"},"interruptible":{"default":true,"title":"Interruptible","type":"boolean","uniqueKey":"conversation.interruptible","typeLabel":"boolean"},"interruption_sensitivity":{"default":"balanced","enum":["low","balanced","high"],"title":"Interruption Sensitivity","type":"string","uniqueKey":"conversation.interruption_sensitivity","typeLabel":"enum\u003cstring>"},"interruption_ignore_phrases":{"default":[],"items":{"type":"string","uniqueKey":"conversation.interruption_ignore_phrases.items.[INDEX]","typeLabel":"string"},"title":"Interruption Ignore Phrases","type":"array","uniqueKey":"conversation.interruption_ignore_phrases","typeLabel":"string[]"},"speculative_response":{"default":true,"title":"Speculative Response","type":"boolean","uniqueKey":"conversation.speculative_response","typeLabel":"boolean"},"reengage_enabled":{"default":false,"title":"Reengage Enabled","type":"boolean","uniqueKey":"conversation.reengage_enabled","typeLabel":"boolean"},"hangup_after_seconds":{"default":60,"title":"Hangup After Seconds","type":"integer","uniqueKey":"conversation.hangup_after_seconds","typeLabel":"integer"},"hangup_farewell_mode":{"default":"off","description":"What the agent says before a silence hangup. `off` (default) hangs up without a word, `generated` says a short goodbye, `fixed` says hangup_farewell_message. A `fixed` mode with an empty message falls back to `generated`. If the caller speaks during the goodbye, the call goes on.","enum":["generated","fixed","off"],"title":"Hangup Farewell Mode","type":"string","uniqueKey":"conversation.hangup_farewell_mode","typeLabel":"enum\u003cstring>"},"hangup_farewell_message":{"default":"","description":"The goodbye said verbatim in the `fixed` hangup_farewell_mode, at most 500 characters. `{{variable}}` placeholders are filled in for each session. \"\" clears it.","title":"Hangup Farewell Message","type":"string","uniqueKey":"conversation.hangup_farewell_message","typeLabel":"string"},"record_audio":{"default":true,"title":"Record Audio","type":"boolean","uniqueKey":"conversation.record_audio","typeLabel":"boolean"},"timezone":{"default":"","title":"Timezone","type":"string","uniqueKey":"conversation.timezone","typeLabel":"string"},"transfer_destinations":{"default":[],"items":{"properties":{"type":{"default":"phone","enum":["phone","sip"],"title":"Type","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"label":{"default":"","title":"Label","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].label","typeLabel":"string"},"phone_number":{"oneOf":[{"type":"string","title":"Phone Number","uniqueKey":"conversation.transfer_destinations.items.[INDEX].phone_number.oneOf.0","typeLabel":"string"},{"type":"null","title":"Phone Number","uniqueKey":"conversation.transfer_destinations.items.[INDEX].phone_number.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.transfer_destinations.items.[INDEX].phone_number","typeLabel":"string | null"},"sip_uri":{"oneOf":[{"type":"string","title":"Sip Uri","uniqueKey":"conversation.transfer_destinations.items.[INDEX].sip_uri.oneOf.0","typeLabel":"string"},{"type":"null","title":"Sip Uri","uniqueKey":"conversation.transfer_destinations.items.[INDEX].sip_uri.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.transfer_destinations.items.[INDEX].sip_uri","typeLabel":"string | null"},"description":{"default":"","title":"Description","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].description","typeLabel":"string"},"mode":{"default":"cold","enum":["cold","warm"],"title":"Mode","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].mode","typeLabel":"enum\u003cstring>"},"warm_connect":{"default":"confirm","enum":["confirm","briefing","direct"],"title":"Warm Connect","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].warm_connect","typeLabel":"enum\u003cstring>"},"warm_briefing_instructions":{"default":"","title":"Warm Briefing Instructions","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].warm_briefing_instructions","typeLabel":"string"},"warm_ring_timeout_seconds":{"default":30,"title":"Warm Ring Timeout Seconds","type":"integer","uniqueKey":"conversation.transfer_destinations.items.[INDEX].warm_ring_timeout_seconds","typeLabel":"integer"},"warm_confirm_timeout_seconds":{"default":60,"title":"Warm Confirm Timeout Seconds","type":"integer","uniqueKey":"conversation.transfer_destinations.items.[INDEX].warm_confirm_timeout_seconds","typeLabel":"integer"},"warm_human_detection":{"default":false,"description":"Applies to warm transfers whose warm_connect is `confirm` or `briefing`, and is ignored for cold transfers and `direct`. When true, once the destination answers, the agent stays silent until the other side speaks, then classifies the pickup. A person is briefed as usual. Voicemail or an IVR (phone menu) ends the transfer as failed. A hold queue or silence keeps the agent waiting until `warm_confirm_timeout_seconds` ends the attempt as unreachable. A failed transfer follows `on_failure`. Leave it off for destinations whose people are only reachable through a phone menu, because the menu stops the transfer.","title":"Warm Human Detection","type":"boolean","uniqueKey":"conversation.transfer_destinations.items.[INDEX].warm_human_detection","typeLabel":"boolean"},"warm_consult_uses_agent_settings":{"default":true,"description":"Compatibility option for warm transfers whose warm_connect is `confirm` or `briefing`, ignored for cold transfers and `direct`. Absent or true (recommended): on the call in which the agent briefs the destination, the agent uses the same turn-taking (response timing: `eagerness`, `response_wait_ms` and `response_max_wait_ms`), interruption (`interruption_sensitivity` and `interruption_ignore_phrases`) and language (`voice.speaking_language`) settings as on the call with the caller. False: that call keeps the older fixed behavior. Destinations that existed before this setting were set to false so their behavior did not change. Either way the destination can always interrupt the agent on that call, whatever `interruptible` is set to. A destination sent without the field keeps the value of the existing destination it replaces (same label, else a renamed one with the same phone number or SIP URI) and is true when it is new. Send true to switch a destination to the agent's settings.","title":"Warm Consult Uses Agent Settings","type":"boolean","uniqueKey":"conversation.transfer_destinations.items.[INDEX].warm_consult_uses_agent_settings","typeLabel":"boolean"},"on_failure":{"properties":{"action":{"default":"return_to_agent","enum":["return_to_agent","end_call"],"title":"Action","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].on_failure.action","typeLabel":"enum\u003cstring>"},"message":{"default":"","title":"Message","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].on_failure.message","typeLabel":"string"}},"title":"AgentTransferOnFailure","type":"object","uniqueKey":"conversation.transfer_destinations.items.[INDEX].on_failure","typeLabel":"AgentTransferOnFailure · object"},"announcement_mode":{"default":"generated","enum":["generated","fixed","off"],"title":"Announcement Mode","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].announcement_mode","typeLabel":"enum\u003cstring>"},"announcement_message":{"default":"","title":"Announcement Message","type":"string","uniqueKey":"conversation.transfer_destinations.items.[INDEX].announcement_message","typeLabel":"string"}},"title":"AgentTransferDestination","type":"object","uniqueKey":"conversation.transfer_destinations.items.[INDEX]","typeLabel":"AgentTransferDestination · object"},"title":"Transfer Destinations","type":"array","uniqueKey":"conversation.transfer_destinations","typeLabel":"AgentTransferDestination · object[]"},"transfer_refuse_questions":{"default":true,"title":"Transfer Refuse Questions","type":"boolean","uniqueKey":"conversation.transfer_refuse_questions","typeLabel":"boolean"},"outbound":{"oneOf":[{"type":"object","title":"AgentOutboundConfig","description":"Deprecated (2026-09-07): kept for compatibility only. `amd_enabled` and\n`voicemail` no longer change call behavior; outbound calls greet as soon as\nthe callee answers, and `answered_by` is always `unknown`.","properties":{"amd_enabled":{"default":true,"title":"Amd Enabled","type":"boolean","uniqueKey":"conversation.outbound.oneOf.0.amd_enabled","typeLabel":"boolean"},"voicemail":{"oneOf":[{"type":"object","title":"AgentOutboundVoicemailConfig","description":"Deprecated (2026-09-07): answering-machine detection was removed from the\ncall runtime, so voicemail actions never fire. The node is still accepted\nand stored so existing configs and API callers keep working; the worker\nno longer receives it.","properties":{"action":{"default":"hangup","enum":["hangup","leave_message","leave_prompt_message"],"title":"Action","type":"string","uniqueKey":"conversation.outbound.oneOf.0.voicemail.oneOf.0.action","typeLabel":"enum\u003cstring>"},"message":{"default":"","title":"Message","type":"string","uniqueKey":"conversation.outbound.oneOf.0.voicemail.oneOf.0.message","typeLabel":"string"}},"uniqueKey":"conversation.outbound.oneOf.0.voicemail.oneOf.0","typeLabel":"AgentOutboundVoicemailConfig · object"},{"type":"null","uniqueKey":"conversation.outbound.oneOf.0.voicemail.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.outbound.oneOf.0.voicemail","typeLabel":"AgentOutboundVoicemailConfig · object | null"}},"uniqueKey":"conversation.outbound.oneOf.0","typeLabel":"AgentOutboundConfig · object"},{"type":"null","uniqueKey":"conversation.outbound.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.outbound","typeLabel":"AgentOutboundConfig · object | null"},"keypad_menu":{"description":"Keypad menu for inbound phone calls. Before the agent's first turn it\nspeaks `prompt` in the agent's voice, collects one key press (or, with\n`accept_speech`, the option's value said aloud) and stores the chosen\noption's `value` in the dynamic variable named by `variable`. The system\nprompt, first message, transfer texts, farewell and webhook tools can use\n`{{variable}}` to act on the choice. Outbound calls, web, API and test\nsessions skip the menu, and the variable renders from its default.","properties":{"enabled":{"default":false,"title":"Enabled","type":"boolean","uniqueKey":"conversation.keypad_menu.enabled","typeLabel":"boolean"},"prompt":{"default":"","title":"Prompt","type":"string","uniqueKey":"conversation.keypad_menu.prompt","typeLabel":"string"},"options":{"default":[],"items":{"properties":{"key":{"default":"","title":"Key","type":"string","uniqueKey":"conversation.keypad_menu.options.items.[INDEX].key","typeLabel":"string"},"value":{"default":"","title":"Value","type":"string","uniqueKey":"conversation.keypad_menu.options.items.[INDEX].value","typeLabel":"string"}},"title":"AgentKeypadMenuOption","type":"object","uniqueKey":"conversation.keypad_menu.options.items.[INDEX]","typeLabel":"AgentKeypadMenuOption · object"},"title":"Options","type":"array","uniqueKey":"conversation.keypad_menu.options","typeLabel":"AgentKeypadMenuOption · object[]"},"accept_speech":{"default":true,"title":"Accept Speech","type":"boolean","uniqueKey":"conversation.keypad_menu.accept_speech","typeLabel":"boolean"},"variable":{"default":"menu_choice","title":"Variable","type":"string","uniqueKey":"conversation.keypad_menu.variable","typeLabel":"string"},"no_input_timeout_seconds":{"default":5,"title":"No Input Timeout Seconds","type":"integer","uniqueKey":"conversation.keypad_menu.no_input_timeout_seconds","typeLabel":"integer"},"max_attempts":{"default":2,"title":"Max Attempts","type":"integer","uniqueKey":"conversation.keypad_menu.max_attempts","typeLabel":"integer"},"retry_message":{"default":"","title":"Retry Message","type":"string","uniqueKey":"conversation.keypad_menu.retry_message","typeLabel":"string"},"fallback_value":{"default":"","title":"Fallback Value","type":"string","uniqueKey":"conversation.keypad_menu.fallback_value","typeLabel":"string"}},"title":"AgentKeypadMenu","type":"object","uniqueKey":"conversation.keypad_menu","typeLabel":"AgentKeypadMenu · object"},"keypad_input":{"description":"Keypad input for phone calls: digits the caller types during the\nconversation reach the agent as one user turn, ended by `terminator` or\nby a pause of `inter_digit_timeout_seconds` (`none`: the pause only).","properties":{"enabled":{"default":false,"title":"Enabled","type":"boolean","uniqueKey":"conversation.keypad_input.enabled","typeLabel":"boolean"},"terminator":{"default":"#","enum":["#","*","none"],"title":"Terminator","type":"string","uniqueKey":"conversation.keypad_input.terminator","typeLabel":"enum\u003cstring>"},"inter_digit_timeout_seconds":{"default":2,"title":"Inter Digit Timeout Seconds","type":"integer","uniqueKey":"conversation.keypad_input.inter_digit_timeout_seconds","typeLabel":"integer"}},"title":"AgentKeypadInput","type":"object","uniqueKey":"conversation.keypad_input","typeLabel":"AgentKeypadInput · object"},"echo_guard":{"oneOf":[{"type":"object","title":"AgentEchoGuard","description":"Echo guard. For the first 3 seconds after the agent first starts talking in a call, the caller cannot interrupt it and anything the caller says while the agent is talking is not heard. This stops the agent's own voice, echoing back from a speakerphone or laptop, from cutting it off. Per channel: true on, false off, null uses the default (on for web_voice and phone_inbound, off for phone_outbound).","properties":{"web_voice":{"oneOf":[{"type":"boolean","title":"Web Voice","description":"Voice calls in a browser or app (web widget, SDK, test calls). Null uses the default (on).","uniqueKey":"conversation.echo_guard.oneOf.0.web_voice.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Web Voice","description":"Voice calls in a browser or app (web widget, SDK, test calls). Null uses the default (on).","uniqueKey":"conversation.echo_guard.oneOf.0.web_voice.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.echo_guard.oneOf.0.web_voice","typeLabel":"boolean | null"},"phone_inbound":{"oneOf":[{"type":"boolean","title":"Phone Inbound","description":"Inbound phone calls. Null uses the default (on).","uniqueKey":"conversation.echo_guard.oneOf.0.phone_inbound.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Phone Inbound","description":"Inbound phone calls. Null uses the default (on).","uniqueKey":"conversation.echo_guard.oneOf.0.phone_inbound.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.echo_guard.oneOf.0.phone_inbound","typeLabel":"boolean | null"},"phone_outbound":{"oneOf":[{"type":"boolean","title":"Phone Outbound","description":"Outbound phone calls. Null uses the default (off).","uniqueKey":"conversation.echo_guard.oneOf.0.phone_outbound.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Phone Outbound","description":"Outbound phone calls. Null uses the default (off).","uniqueKey":"conversation.echo_guard.oneOf.0.phone_outbound.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.echo_guard.oneOf.0.phone_outbound","typeLabel":"boolean | null"}},"uniqueKey":"conversation.echo_guard.oneOf.0","typeLabel":"AgentEchoGuard · object"},{"type":"null","description":"Echo guard. For the first 3 seconds after the agent first starts talking in a call, the caller cannot interrupt it and anything the caller says while the agent is talking is not heard. This stops the agent's own voice, echoing back from a speakerphone or laptop, from cutting it off. Per channel: true on, false off, null uses the default (on for web_voice and phone_inbound, off for phone_outbound).","uniqueKey":"conversation.echo_guard.oneOf.1","typeLabel":"null"}],"uniqueKey":"conversation.echo_guard","typeLabel":"AgentEchoGuard · object | null"}},"title":"AgentConversationConfig","type":"object","isRequired":true,"uniqueKey":"conversation","typeLabel":"AgentConversationConfig · object"},"tools":{"properties":{"enabled":{"default":true,"title":"Enabled","type":"boolean","uniqueKey":"tools.enabled","typeLabel":"boolean"},"tool_ids":{"items":{"type":"string","uniqueKey":"tools.tool_ids.items.[INDEX]","typeLabel":"string"},"title":"Tool Ids","type":"array","uniqueKey":"tools.tool_ids","typeLabel":"string[]"},"system_tools":{"properties":{"hang_up_call":{"default":false,"title":"Hang Up Call","type":"boolean","uniqueKey":"tools.system_tools.hang_up_call","typeLabel":"boolean"},"hang_up_call_farewell_mode":{"default":"generated","enum":["generated","fixed","off"],"title":"Hang Up Call Farewell Mode","type":"string","uniqueKey":"tools.system_tools.hang_up_call_farewell_mode","typeLabel":"enum\u003cstring>"},"hang_up_call_farewell_message":{"default":"","title":"Hang Up Call Farewell Message","type":"string","uniqueKey":"tools.system_tools.hang_up_call_farewell_message","typeLabel":"string"},"hang_up_call_refuse_questions":{"default":false,"title":"Hang Up Call Refuse Questions","type":"boolean","uniqueKey":"tools.system_tools.hang_up_call_refuse_questions","typeLabel":"boolean"}},"title":"AgentSystemToolsConfig","type":"object","uniqueKey":"tools.system_tools","typeLabel":"AgentSystemToolsConfig · object"}},"title":"PublicAgentToolsConfig","type":"object","isRequired":true,"uniqueKey":"tools","typeLabel":"PublicAgentToolsConfig · object"},"webhooks":{"properties":{"conversation_init":{"oneOf":[{"type":"object","title":"PublicConversationInitWebhook","required":["url"],"properties":{"url":{"title":"Url","type":"string","isRequired":true,"uniqueKey":"webhooks.conversation_init.oneOf.0.url","typeLabel":"string"},"has_secret":{"default":false,"description":"Whether a signing secret is configured; the value itself is never returned.","title":"Has Secret","type":"boolean","uniqueKey":"webhooks.conversation_init.oneOf.0.has_secret","typeLabel":"boolean"},"timeout_seconds":{"default":5,"title":"Timeout Seconds","type":"number","uniqueKey":"webhooks.conversation_init.oneOf.0.timeout_seconds","typeLabel":"number"}},"uniqueKey":"webhooks.conversation_init.oneOf.0","typeLabel":"PublicConversationInitWebhook · object"},{"type":"null","uniqueKey":"webhooks.conversation_init.oneOf.1","typeLabel":"null"}],"uniqueKey":"webhooks.conversation_init","typeLabel":"PublicConversationInitWebhook · object | null"},"post_call":{"items":{"properties":{"url":{"title":"Url","type":"string","isRequired":true,"uniqueKey":"webhooks.post_call.items.[INDEX].url","typeLabel":"string"},"has_secret":{"default":false,"description":"Whether a signing secret is configured; the value itself is never returned.","title":"Has Secret","type":"boolean","uniqueKey":"webhooks.post_call.items.[INDEX].has_secret","typeLabel":"boolean"}},"required":["url"],"title":"PublicPostCallWebhook","type":"object","uniqueKey":"webhooks.post_call.items.[INDEX]","typeLabel":"PublicPostCallWebhook · object"},"title":"Post Call","type":"array","uniqueKey":"webhooks.post_call","typeLabel":"PublicPostCallWebhook · object[]"}},"title":"PublicAgentWebhooksConfig","type":"object","isRequired":true,"uniqueKey":"webhooks","typeLabel":"PublicAgentWebhooksConfig · object"},"knowledge_base":{"properties":{"enabled":{"default":false,"title":"Enabled","type":"boolean","uniqueKey":"knowledge_base.enabled","typeLabel":"boolean"},"knowledge_source_ids":{"items":{"type":"string","uniqueKey":"knowledge_base.knowledge_source_ids.items.[INDEX]","typeLabel":"string"},"title":"Knowledge Source Ids","type":"array","uniqueKey":"knowledge_base.knowledge_source_ids","typeLabel":"string[]"}},"title":"PublicAgentKnowledgeBaseConfig","type":"object","isRequired":true,"uniqueKey":"knowledge_base","typeLabel":"PublicAgentKnowledgeBaseConfig · object"},"analysis":{"properties":{"summary":{"properties":{"enabled":{"default":true,"title":"Enabled","type":"boolean","uniqueKey":"analysis.summary.enabled","typeLabel":"boolean"},"prompt":{"oneOf":[{"type":"string","title":"Prompt","maxLength":1000,"uniqueKey":"analysis.summary.prompt.oneOf.0","typeLabel":"string"},{"type":"null","title":"Prompt","uniqueKey":"analysis.summary.prompt.oneOf.1","typeLabel":"null"}],"uniqueKey":"analysis.summary.prompt","typeLabel":"string | null"},"language":{"default":"en","enum":["en","ja","zh","ko","es","fr","de","pt","it","nl","ar","hi","id","tr","ru","bg","sr","hr","cs","sk","pl","uk","ro","hu","el","sv","da","no","fi","et","lv","lt","ca","he","fa","ur","kk","ka","hy","bn","ta","te","kn","mr","gu","pa","ne","th","vi","ms","tl","af"],"title":"Language","type":"string","uniqueKey":"analysis.summary.language","typeLabel":"enum\u003cstring>"}},"title":"AgentAnalysisSummaryConfig","type":"object","uniqueKey":"analysis.summary","typeLabel":"AgentAnalysisSummaryConfig · object"},"data_fields":{"items":{"properties":{"name":{"pattern":"^[a-z][a-z0-9_]{0,63}$","title":"Name","type":"string","isRequired":true,"uniqueKey":"analysis.data_fields.items.[INDEX].name","typeLabel":"string"},"type":{"default":"text","enum":["boolean","text","number","enum"],"title":"Type","type":"string","uniqueKey":"analysis.data_fields.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"description":{"default":"","maxLength":500,"title":"Description","type":"string","uniqueKey":"analysis.data_fields.items.[INDEX].description","typeLabel":"string"},"enum_options":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"analysis.data_fields.items.[INDEX].enum_options.oneOf.0.items.[INDEX]","typeLabel":"string"},"title":"Enum Options","uniqueKey":"analysis.data_fields.items.[INDEX].enum_options.oneOf.0","typeLabel":"string[]"},{"type":"null","title":"Enum Options","uniqueKey":"analysis.data_fields.items.[INDEX].enum_options.oneOf.1","typeLabel":"null"}],"uniqueKey":"analysis.data_fields.items.[INDEX].enum_options","typeLabel":"string[] | null"}},"required":["name"],"title":"AgentAnalysisDataField","type":"object","uniqueKey":"analysis.data_fields.items.[INDEX]","typeLabel":"AgentAnalysisDataField · object"},"maxItems":20,"title":"Data Fields","type":"array","uniqueKey":"analysis.data_fields","typeLabel":"AgentAnalysisDataField · object[]"},"criteria":{"items":{"properties":{"name":{"pattern":"^[a-z][a-z0-9_]{0,63}$","title":"Name","type":"string","isRequired":true,"uniqueKey":"analysis.criteria.items.[INDEX].name","typeLabel":"string"},"description":{"default":"","maxLength":500,"title":"Description","type":"string","uniqueKey":"analysis.criteria.items.[INDEX].description","typeLabel":"string"}},"required":["name"],"title":"AgentAnalysisCriterion","type":"object","uniqueKey":"analysis.criteria.items.[INDEX]","typeLabel":"AgentAnalysisCriterion · object"},"maxItems":10,"title":"Criteria","type":"array","uniqueKey":"analysis.criteria","typeLabel":"AgentAnalysisCriterion · object[]"}},"title":"AgentAnalysisConfig","type":"object","isRequired":true,"uniqueKey":"analysis","typeLabel":"AgentAnalysisConfig · object"},"guardrails":{"properties":{"focus":{"default":false,"title":"Focus","type":"boolean","uniqueKey":"guardrails.focus","typeLabel":"boolean"},"manipulation":{"default":false,"title":"Manipulation","type":"boolean","uniqueKey":"guardrails.manipulation","typeLabel":"boolean"}},"title":"AgentGuardrailsConfig","type":"object","isRequired":true,"uniqueKey":"guardrails","typeLabel":"AgentGuardrailsConfig · object"},"context":{"description":"Facts the platform tells the agent on its own, one switch per fact.\nThe same mechanism as a guardrail with the opposite sign: a guardrail is\na prompt addition that constrains, a context switch is one that informs.","properties":{"current_time":{"default":true,"title":"Current Time","type":"boolean","uniqueKey":"context.current_time","typeLabel":"boolean"}},"title":"AgentContextConfig","type":"object","isRequired":true,"uniqueKey":"context","typeLabel":"AgentContextConfig · object"},"llm":{"properties":{"model":{"default":"google/gemini-3.6-flash","enum":["google/gemini-3.5-flash-lite","google/gemini-3.6-flash","google/gemini-3.8-flash","google/gemini-3.6-flash-priority","google/gemini-3.8-flash-priority","google/gemini-2.5-flash","google/gemma-4-26b-a4b-it","anthropic/claude-haiku-4.5","anthropic/claude-sonnet-4.6","anthropic/claude-opus-5.5","anthropic/claude-fable-5.1","openai/gpt-5.6-luna","openai/gpt-6-luna","openai/gpt-5","openai/gpt-6.1-sol","openai/gpt-6-astra","openai/gpt-4o","openai/gpt-4.1"],"title":"Model","type":"string","uniqueKey":"llm.model","typeLabel":"enum\u003cstring>"},"custom":{"oneOf":[{"type":"object","title":"AgentLLMCustomConfigRedacted","description":"Read entity: the stored api_key never leaves the collection. The headers\nread back as stored, like the non-credential headers of a webhook tool.","required":["base_url","model"],"properties":{"base_url":{"minLength":1,"title":"Base Url","type":"string","isRequired":true,"uniqueKey":"llm.custom.oneOf.0.base_url","typeLabel":"string"},"model":{"minLength":1,"title":"Model","type":"string","isRequired":true,"uniqueKey":"llm.custom.oneOf.0.model","typeLabel":"string"},"api_key":{"default":null,"title":"Api Key","type":"null","uniqueKey":"llm.custom.oneOf.0.api_key","typeLabel":"null"},"headers":{"oneOf":[{"type":"object","title":"Headers","additionalProperties":{"type":"string","uniqueKey":"llm.custom.oneOf.0.headers.oneOf.0.additionalProperties","typeLabel":"string"},"uniqueKey":"llm.custom.oneOf.0.headers.oneOf.0","typeLabel":"Headers · object"},{"type":"null","title":"Headers","uniqueKey":"llm.custom.oneOf.0.headers.oneOf.1","typeLabel":"null"}],"uniqueKey":"llm.custom.oneOf.0.headers","typeLabel":"Headers · object | null"}},"uniqueKey":"llm.custom.oneOf.0","typeLabel":"AgentLLMCustomConfigRedacted · object"},{"type":"null","uniqueKey":"llm.custom.oneOf.1","typeLabel":"null"}],"uniqueKey":"llm.custom","typeLabel":"AgentLLMCustomConfigRedacted · object | null"}},"title":"AgentLLMConfigRedacted","type":"object","isRequired":true,"uniqueKey":"llm","typeLabel":"AgentLLMConfigRedacted · object"},"updated_at":{"format":"date-time","title":"Updated At","type":"string","isRequired":true,"uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"},"variables":{"description":"Defaults for `{{name}}` placeholders and what a placeholder without a value does.","properties":{"defaults":{"additionalProperties":{"oneOf":[{"type":"string","uniqueKey":"variables.defaults.additionalProperties.oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"variables.defaults.additionalProperties.oneOf.1","typeLabel":"integer"},{"type":"number","uniqueKey":"variables.defaults.additionalProperties.oneOf.2","typeLabel":"number"},{"type":"boolean","uniqueKey":"variables.defaults.additionalProperties.oneOf.3","typeLabel":"boolean"}],"uniqueKey":"variables.defaults.additionalProperties","typeLabel":"string | integer | number | boolean"},"title":"Defaults","type":"object","uniqueKey":"variables.defaults","typeLabel":"Defaults · object"},"on_missing":{"default":"keep","enum":["keep","empty","reject"],"title":"On Missing","type":"string","uniqueKey":"variables.on_missing","typeLabel":"enum\u003cstring>"}},"title":"AgentVariablesConfig","type":"object","uniqueKey":"variables","typeLabel":"AgentVariablesConfig · object"}},"required":["agent_id","config_hash","prompt","voice","asr","conversation","tools","webhooks","knowledge_base","analysis","guardrails","context","llm","updated_at"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"agent_id":"\u003cstring>","config_hash":"\u003cstring>","prompt":{"system_prompt":"","first_message_mode":"prompt","first_message":"Hi! Thanks for calling — how can I help you today?","first_message_prompt":"Greet the caller and ask what you can help with."},"voice":{"voice_id":"b347db033a6549378b48d00acb0d06cd","speaking_language":"en","expressive":false,"speed":1,"tts_model":"s2.1-pro","pronunciation_dictionary_ids":["\u003cstring>"]},"asr":{"model":"deepgram:nova-3","multilingual":false,"strict_language":false,"keyterms":["\u003cstring>"]},"conversation":{"max_duration_seconds":1800,"response_wait_ms":550,"eagerness":"balanced","response_max_wait_ms":123,"interruptible":true,"interruption_sensitivity":"balanced","interruption_ignore_phrases":[],"speculative_response":true,"reengage_enabled":false,"hangup_after_seconds":60,"hangup_farewell_mode":"off","hangup_farewell_message":"","record_audio":true,"timezone":"","transfer_destinations":[],"transfer_refuse_questions":true,"outbound":{"amd_enabled":true,"voicemail":{"action":"hangup","message":""}},"keypad_menu":{"enabled":false,"prompt":"","options":[],"accept_speech":true,"variable":"menu_choice","no_input_timeout_seconds":5,"max_attempts":2,"retry_message":"","fallback_value":""},"keypad_input":{"enabled":false,"terminator":"#","inter_digit_timeout_seconds":2},"echo_guard":{"web_voice":true,"phone_inbound":true,"phone_outbound":true}},"tools":{"enabled":true,"tool_ids":["\u003cstring>"],"system_tools":{"hang_up_call":false,"hang_up_call_farewell_mode":"generated","hang_up_call_farewell_message":"","hang_up_call_refuse_questions":false}},"webhooks":{"conversation_init":{"url":"\u003cstring>","has_secret":false,"timeout_seconds":5},"post_call":[{"url":"\u003cstring>","has_secret":false}]},"knowledge_base":{"enabled":false,"knowledge_source_ids":["\u003cstring>"]},"analysis":{"summary":{"enabled":true,"prompt":"\u003cstring>","language":"en"},"data_fields":[{"name":"\u003cstring>","type":"text","description":"","enum_options":["\u003cstring>"]}],"criteria":[{"name":"\u003cstring>","description":""}]},"guardrails":{"focus":false,"manipulation":false},"context":{"current_time":true},"llm":{"model":"google/gemini-3.6-flash","custom":{"base_url":"\u003cstring>","model":"\u003cstring>","api_key":null,"headers":{}}},"updated_at":"2023-11-07T05:31:56Z","variables":{"defaults":{},"on_missing":"keep"}}}},"exampleType":"generated"}},"exampleType":"generated"},"31f49aa9-8e16-4300-a226-479574f61933":{"description":"No permission -- see authorization schemes","headers":{},"content":{"application/json":{"schema":{"properties":{"status":{"title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"message":{"title":"Message","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","title":"Reason","uniqueKey":"reason.oneOf.0","typeLabel":"string"},{"type":"null","title":"Reason","uniqueKey":"reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"reason","typeLabel":"string | null"}},"required":["status","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"message":"\u003cstring>","reason":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"0d4c2a60-0e39-4f1f-a4e1-24566aafc313":{"description":"Request forbidden -- authorization will not help","headers":{},"content":{"application/json":{"schema":{"properties":{"status":{"title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"message":{"title":"Message","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","title":"Reason","uniqueKey":"reason.oneOf.0","typeLabel":"string"},{"type":"null","title":"Reason","uniqueKey":"reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"reason","typeLabel":"string | null"}},"required":["status","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"message":"\u003cstring>","reason":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"29688c20-94dd-404e-ba0f-2691a7bec649":{"description":"Nothing matches the given URI","headers":{},"content":{"application/json":{"schema":{"properties":{"status":{"title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"message":{"title":"Message","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","title":"Reason","uniqueKey":"reason.oneOf.0","typeLabel":"string"},{"type":"null","title":"Reason","uniqueKey":"reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"reason","typeLabel":"string | null"}},"required":["status","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"message":"\u003cstring>","reason":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"ca229e72-3bba-4bf7-b04f-62761d0983f6":{"description":"Request conflict","headers":{},"content":{"application/json":{"schema":{"properties":{"status":{"title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"message":{"title":"Message","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","title":"Reason","uniqueKey":"reason.oneOf.0","typeLabel":"string"},{"type":"null","title":"Reason","uniqueKey":"reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"reason","typeLabel":"string | null"}},"required":["status","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"message":"\u003cstring>","reason":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"090bc48c-7600-4960-972c-ade3c304b861":{"description":"","headers":{},"content":{"application/json":{"schema":{"properties":{"status":{"title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"message":{"title":"Message","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","title":"Reason","uniqueKey":"reason.oneOf.0","typeLabel":"string"},{"type":"null","title":"Reason","uniqueKey":"reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"reason","typeLabel":"string | null"}},"required":["status","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"message":"\u003cstring>","reason":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"0a9a86e0-cd45-41dd-8ec2-b29f70c8b964":{"description":"The server cannot process the request due to a high load","headers":{},"content":{"application/json":{"schema":{"properties":{"status":{"title":"Status","type":"integer","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"message":{"title":"Message","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"reason":{"oneOf":[{"type":"string","title":"Reason","uniqueKey":"reason.oneOf.0","typeLabel":"string"},{"type":"null","title":"Reason","uniqueKey":"reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"reason","typeLabel":"string | null"}},"required":["status","message"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"status":123,"message":"\u003cstring>","reason":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"1862bf0a-29d1-4b6d-b516-7dec1c18891a":{"BearerAuth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"39cecf54-e58d-4ac2-ab28-6d00babdd859":{"description":"Fish Audio API","url":"https://api.fish.audio"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"hanabiaiinc","siteName":"Fish Audio","title":"Update Draft Config - Fish Audio","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-05T15:51:33.520Z","originalFileLocation":"api-reference/endpoint/agent/update-draft-config.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Patch the draft configuration section by section; omitted sections keep their value.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Fish Audio\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update Draft Config - Fish Audio\">\u003cmeta data-mint-head property=\"og:description\" content=\"Patch the draft configuration section by section; omitted sections keep their value.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Fish Audio\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://hanabiaiinc.mintlify.app/_mintlify/api/og/v2?division=Agents\u0026amp;title=Update+Draft+Config\u0026amp;description=Patch+the+draft+configuration+section+by+section%3B+omitted+sections+keep%0Atheir+value.\u0026amp;theme=949dddfb68a78f6c8e39910d\u0026amp;signature=64aca5f75d95553a24f3b4bb81d270bb7dffc94dd7d6f7ee108f492ae1282163\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Update Draft Config - Fish Audio\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Patch the draft configuration section by section; omitted sections keep their value.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://hanabiaiinc.mintlify.app/_mintlify/api/og/v2?division=Agents\u0026amp;title=Update+Draft+Config\u0026amp;description=Patch+the+draft+configuration+section+by+section%3B+omitted+sections+keep%0Atheir+value.\u0026amp;theme=949dddfb68a78f6c8e39910d\u0026amp;signature=64aca5f75d95553a24f3b4bb81d270bb7dffc94dd7d6f7ee108f492ae1282163\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/hanabiaiinc/rHJNuwD9FcQhvMwX/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Fish Audio\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0e0e0e\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/endpoint/agent/update-draft-config.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.fish.audio/#organization\",\"name\":\"Fish Audio\",\"url\":\"https://docs.fish.audio\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/hanabiaiinc/amYp9Dj31LtlHliX/logo/light.png?fit=max\u0026auto=format\u0026n=amYp9Dj31LtlHliX\u0026q=85\u0026s=305973cd6a8d11dbf36d1ec682ee845e\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.fish.audio#website\",\"name\":\"Fish Audio\",\"url\":\"https://docs.fish.audio\",\"publisher\":{\"@id\":\"https://docs.fish.audio/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config#webpage\",\"url\":\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config\",\"name\":\"Update Draft Config\",\"description\":\"Patch the draft configuration section by section; omitted sections keep their value.\",\"dateModified\":\"2026-08-05T15:51:33.520Z\",\"isPartOf\":{\"@id\":\"https://docs.fish.audio#website\"},\"breadcrumb\":{\"@id\":\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Agents API\",\"item\":\"https://docs.fish.audio/api-reference/agent-errors\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Agents\",\"item\":\"https://docs.fish.audio/api-reference/endpoint/agent/list-agents\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Update Draft Config\",\"item\":\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config#apireference\",\"headline\":\"Update Draft Config\",\"name\":\"Update Draft Config\",\"description\":\"Patch the draft configuration section by section; omitted sections keep their value.\",\"url\":\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config\",\"mainEntityOfPage\":{\"@id\":\"https://docs.fish.audio/api-reference/endpoint/agent/update-draft-config#webpage\"},\"dateModified\":\"2026-08-05T15:51:33.520Z\",\"publisher\":{\"@id\":\"https://docs.fish.audio/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.fish.audio#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Fish Audio\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Fish Audio","nav":{"global":null,"tabs":[{"tab":"Overview","pages":[{"title":"Overview","href":"/overview/capabilities"}]},{"tab":"Agents","pages":[{"title":"Agents","href":"/agents/overview"}]},{"tab":"Resources","pages":[{"title":"Resources","href":"/developer-guide/sdk-guide/quickstart"}]},{"tab":"API Reference","groups":[{"group":"API Reference","pages":[{"title":"Introduction","icon":"book","iconType":"solid","href":"/api-reference/introduction"},{"title":"Tracing \u0026 Performance Analysis","icon":"chart-line","iconType":"solid","href":"/api-reference/observability"},{"title":"Errors","icon":"triangle-exclamation","href":"/api-reference/errors"}]},{"group":"REST API","pages":[{"group":"Wallet","icon":"wallet","pages":[{"openapi":"get /wallet/{user_id}/api-credit","title":"Get API Credit","icon":"wallet","iconType":"solid","href":"/api-reference/endpoint/wallet/get-api-credit"},{"openapi":"get /wallet/{user_id}/package","title":"Get User Package","icon":"star","iconType":"solid","href":"/api-reference/endpoint/wallet/get-user-package"}]},{"group":"Voice Models","icon":"cube","pages":[{"openapi":"get /model","title":"List Models","icon":"list","iconType":"solid","href":"/api-reference/endpoint/model/list-models"},{"openapi":"post /model","title":"Create Model","icon":"circle-plus","iconType":"solid","href":"/api-reference/endpoint/model/create-model"},{"openapi":"get /model/{id}","title":"Get Model","icon":"circle-info","iconType":"solid","href":"/api-reference/endpoint/model/get-model"},{"openapi":"delete /model/{id}","title":"Delete Model","icon":"trash","iconType":"solid","href":"/api-reference/endpoint/model/delete-model"},{"openapi":"patch /model/{id}","title":"Update Model","icon":"pen-to-square","iconType":"solid","href":"/api-reference/endpoint/model/update-model"}]},{"group":"TTS (v1)","icon":"code","pages":[{"openapi":"post /v1/tts","title":"Text to Speech","icon":"comment-dots","iconType":"solid","href":"/api-reference/endpoint/openapi-v1/text-to-speech"},{"openapi":"post /v1/tts/stream/with-timestamp","title":"Text to Speech Stream with Timestamps","icon":"waveform-lines","iconType":"solid","href":"/api-reference/endpoint/openapi-v1/text-to-speech-stream-with-timestamps"},{"asyncapi":"api-reference/asyncapi.yml ttsLive","title":"WebSocket TTS Streaming","icon":"webhook","iconType":"solid","href":"/api-reference/endpoint/websocket/tts-live"},{"asyncapi":"api-reference/asyncapi.yml ttsLiveWithTimestamps","title":"WebSocket TTS with Timestamps","icon":"webhook","iconType":"solid","href":"/api-reference/endpoint/openapi-v1/text-to-speech-live-with-timestamps"}]},{"group":"ASR (v1)","icon":"microphone","pages":[{"openapi":"post /v1/asr","title":"Speech to Text","icon":"microphone","iconType":"solid","href":"/api-reference/endpoint/openapi-v1/speech-to-text"},{"asyncapi":"api-reference/asyncapi-asr-realtime.yml asrRealtime","title":"WebSocket Realtime Speech to Text","icon":"webhook","iconType":"solid","tag":"Preview","href":"/api-reference/endpoint/websocket/asr-realtime"}]},{"group":"Voice Design","icon":"wand-magic-sparkles","pages":[{"openapi":"post /v1/voice-design","title":"Voice Design","icon":"wand-magic-sparkles","iconType":"solid","href":"/api-reference/endpoint/openapi-v1/voice-design"}]}]},{"group":"Agents API","pages":[{"title":"Agents API Errors","icon":"triangle-exclamation","href":"/api-reference/agent-errors"},{"group":"Agents","icon":"robot","pages":[{"openapi":"get /v1/agent/agents","title":"List Agents","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/list-agents"},{"openapi":"post /v1/agent/agents","title":"Create Agent","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/create-agent"},{"openapi":"get /v1/agent/agents/{agent_id}","title":"Get Agent","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/get-agent"},{"openapi":"patch /v1/agent/agents/{agent_id}","title":"Update Agent","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/update-agent"},{"openapi":"delete /v1/agent/agents/{agent_id}","title":"Delete Agent","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/delete-agent"},{"openapi":"get /v1/agent/agents/{agent_id}/config","title":"Get Draft Config","description":"Read the agent's current draft configuration — the state the next publish\nwill freeze.","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/get-draft-config"},{"openapi":"patch /v1/agent/agents/{agent_id}/config","title":"Update Draft Config","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/update-draft-config"},{"openapi":"post /v1/agent/agents/{agent_id}/publish","title":"Publish Agent","description":"Freeze the current draft into an immutable version (version_number\nauto-increments) and make it the live configuration for new sessions.","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/publish-agent"},{"openapi":"get /v1/agent/agents/{agent_id}/versions","title":"List Agent Versions","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/list-agent-versions"},{"openapi":"get /v1/agent/agents/{agent_id}/versions/{version_number}","title":"Get Agent Version","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/get-agent-version"},{"openapi":"get /v1/agent/agents/{agent_id}/widget","title":"Get Widget Config","icon":"robot","iconType":"solid","href":"/api-reference/endpoint/agent/get-widget-config"}]},{"group":"Sessions","icon":"headset","pages":[{"openapi":"post /v1/agent/sessions","title":"Create Agent Session","icon":"headset","iconType":"solid","href":"/api-reference/endpoint/agent/create-agent-session"},{"openapi":"get /v1/agent/sessions","title":"List Agent Sessions","icon":"headset","iconType":"solid","href":"/api-reference/endpoint/agent/list-agent-sessions"},{"openapi":"get /v1/agent/sessions/{session_id}","title":"Get Agent Session","icon":"headset","iconType":"solid","href":"/api-reference/endpoint/agent/get-agent-session"},{"openapi":"get /v1/agent/sessions/{session_id}/recording","title":"Get Agent Session Recording","icon":"headset","iconType":"solid","href":"/api-reference/endpoint/agent/get-agent-session-recording"},{"openapi":"post /v1/agent/sessions/{session_id}/end","title":"End Agent Session","icon":"headset","iconType":"solid","href":"/api-reference/endpoint/agent/end-agent-session"}]},{"group":"Tools","icon":"wrench","pages":[{"openapi":"get /v1/agent/tools","title":"List Tools","icon":"wrench","iconType":"solid","href":"/api-reference/endpoint/agent/list-tools"},{"openapi":"post /v1/agent/tools","title":"Create Tool","icon":"wrench","iconType":"solid","href":"/api-reference/endpoint/agent/create-tool"},{"openapi":"get /v1/agent/tools/{tool_id}","title":"Get Tool","icon":"wrench","iconType":"solid","href":"/api-reference/endpoint/agent/get-tool"},{"openapi":"patch /v1/agent/tools/{tool_id}","title":"Update Tool","icon":"wrench","iconType":"solid","href":"/api-reference/endpoint/agent/update-tool"},{"openapi":"delete /v1/agent/tools/{tool_id}","title":"Delete Tool","icon":"wrench","iconType":"solid","href":"/api-reference/endpoint/agent/delete-tool"},{"openapi":"get /v1/agent/tools/{tool_id}/agents","title":"List Agents Using Tool","icon":"wrench","iconType":"solid","href":"/api-reference/endpoint/agent/list-agents-using-tool"}]},{"group":"Tests","icon":"flask","pages":[{"openapi":"get /v1/agent/tests","title":"List Tests","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/list-tests"},{"openapi":"post /v1/agent/tests","title":"Create Test","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/create-test"},{"openapi":"get /v1/agent/tests/{test_id}","title":"Get Test","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/get-test"},{"openapi":"patch /v1/agent/tests/{test_id}","title":"Update Test","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/update-test"},{"openapi":"delete /v1/agent/tests/{test_id}","title":"Delete Test","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/delete-test"},{"openapi":"put /v1/agent/agents/{agent_id}/tests/{test_id}","title":"Attach Test","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/attach-test"},{"openapi":"delete /v1/agent/agents/{agent_id}/tests/{test_id}","title":"Detach Test","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/detach-test"},{"openapi":"get /v1/agent/agents/{agent_id}/test-tools","title":"List Test Tools","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/list-test-tools"},{"openapi":"post /v1/agent/agents/{agent_id}/tests/run","title":"Run Tests","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/run-tests"},{"openapi":"get /v1/agent/agents/{agent_id}/test-batches","title":"List Test Batches","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/list-test-batches"},{"openapi":"get /v1/agent/agents/{agent_id}/test-batches/{batch_id}","title":"Get Test Batch","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/get-test-batch"},{"openapi":"get /v1/agent/test-runs","title":"List Test Runs","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/list-test-runs"},{"openapi":"get /v1/agent/test-runs/{run_id}","title":"Get Test Run","icon":"flask","iconType":"solid","href":"/api-reference/endpoint/agent/get-test-run"}]},{"group":"Knowledge Sources","icon":"book","pages":[{"openapi":"get /v1/agent/knowledge-sources","title":"List Knowledge Sources","icon":"book","iconType":"solid","href":"/api-reference/endpoint/agent/list-knowledge-sources"},{"openapi":"post /v1/agent/knowledge-sources","title":"Create Knowledge Source","icon":"book","iconType":"solid","href":"/api-reference/endpoint/agent/create-knowledge-source"},{"openapi":"get /v1/agent/knowledge-sources/{source_id}","title":"Get Knowledge Source","icon":"book","iconType":"solid","href":"/api-reference/endpoint/agent/get-knowledge-source"},{"openapi":"patch /v1/agent/knowledge-sources/{source_id}","title":"Update Knowledge Source","icon":"book","iconType":"solid","href":"/api-reference/endpoint/agent/update-knowledge-source"},{"openapi":"delete /v1/agent/knowledge-sources/{source_id}","title":"Delete Knowledge Source","icon":"book","iconType":"solid","href":"/api-reference/endpoint/agent/delete-knowledge-source"},{"openapi":"get /v1/agent/knowledge-sources/{source_id}/agents","title":"List Agents Using Knowledge Source","icon":"book","iconType":"solid","href":"/api-reference/endpoint/agent/list-agents-using-knowledge-source"}]},{"group":"Phone Numbers","icon":"phone","pages":[{"openapi":"get /v1/agent/available-phone-numbers","title":"Search Available Phone Numbers","icon":"phone","iconType":"solid","href":"/api-reference/endpoint/agent/search-available-phone-numbers"},{"openapi":"get /v1/agent/phone-numbers","title":"List Phone Numbers","icon":"phone","iconType":"solid","href":"/api-reference/endpoint/agent/list-phone-numbers"},{"openapi":"post /v1/agent/phone-numbers","title":"Purchase Phone Number","icon":"phone","iconType":"solid","href":"/api-reference/endpoint/agent/purchase-phone-number"},{"openapi":"get /v1/agent/phone-numbers/{phone_number_id}","title":"Get Phone Number","icon":"phone","iconType":"solid","href":"/api-reference/endpoint/agent/get-phone-number"},{"openapi":"patch /v1/agent/phone-numbers/{phone_number_id}","title":"Update Phone Number","icon":"phone","iconType":"solid","href":"/api-reference/endpoint/agent/update-phone-number"},{"openapi":"delete /v1/agent/phone-numbers/{phone_number_id}","title":"Release Phone Number","icon":"phone","iconType":"solid","href":"/api-reference/endpoint/agent/release-phone-number"}]},{"group":"Phone Calls","icon":"phone-arrow-up-right","pages":[{"openapi":"post /v1/agent/phone-calls","title":"Create Phone Call","icon":"phone-arrow-up-right","iconType":"solid","href":"/api-reference/endpoint/agent/create-phone-call"}]}]},{"group":"SDK Reference","pages":[{"group":"Python SDK","icon":"python","pages":[{"title":"Overview","icon":"python","href":"/api-reference/sdk/python/overview"},{"group":"Reference","icon":"book-open","pages":[{"title":null,"href":"/api-reference/sdk/python/client"},{"title":null,"href":"/api-reference/sdk/python/resources"},{"title":null,"href":"/api-reference/sdk/python/types"},{"title":null,"href":"/api-reference/sdk/python/core"},{"title":null,"href":"/api-reference/sdk/python/utils"},{"title":null,"href":"/api-reference/sdk/python/exceptions"}]},{"title":"Legacy","icon":"clock-rotate-left","href":"/archive/python-sdk-legacy/index"}]},{"group":"JavaScript SDK","icon":"js","pages":[{"title":"JavaScript SDK Reference","sidebarTitle":"Reference","icon":"book","href":"/api-reference/sdk/javascript/api-reference"}]}]}]}]},"title":"Update Draft Config - Fish Audio","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-WRhTSUDL.js","utils-ChMov4Kr.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-_REmC2bI.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp6nVRCu.js","snippetPresets-DZadmXoU.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CY2WdoTl.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-DwYG-Q4l.js","shallow-BXQIGwv4.js","getApiPlaygroundDisplay-CK5nK5B9.js","CodeSnippet-TH4a2aGW.js","CodeSnippets-DwsQiOFS.js","Page-R3M_BF4L.js","getPastedJson-DD7kUzi_.js","icon-holE3QoJ.js","MethodPill-DUW0T8us.js","DuplicateIcon-CI_p4be-.js","createIcon-BdbRvavb.js","DynamicMarkdown-DN96a4Ur.js","SectionHeading-SCu36A9d.js","axios-vUo_bRtp.js","Markdown-CCeGv-zI.js","clsx-BGBGWFTt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-Cv_O2fky.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-2C5OB2eV.js"]}