API
Digital Human Configuration
Configuration Parameters
39 min
configuration parameters allow you to customize and personalize your digital human's behavior, appearance, and functionality these attributes are available across all digital human creation methods and can be modified after initial setup to refine the end user experience most parameters can be updated at any time using the docid\ gjy qc6alw5tk6sscxrpp endpoint multiple parameters can be changed in a single update request we distinguish between streaming digital humans (default) and legacy synthesizer digital humans (higher latency) some parameters such as text splitter or ttsstream need to be set accordingly for embedding of the sreaming digital humans, please refer to our sdk documentation conversation parameters greetings this is the welcome message that the digital human will deliver to the end user upon first interaction type string example \["hi there, i am john"] operating modes applies to all curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "greetings" "hi there, i am john how can i help you today?" }' suggestions these are a list of menu like options that suggest to the user what to engage the digital human about these options are clickable via the unith front end type list of strings example \["who is unith", "where are unith offices?"] operating modes doc qa, oc curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "suggestions" \[ "who is unith?", "where are unith offices located?", "tell me about your services" ] }' in doc qa mode, suggestions are automatically generated when you upload a document review and edit these suggestions to match your use case each new document upload overwrites the existing suggestions list, so keep a local backup before uploading new documents suggestions can only be clicked once per conversational session after a user selects a suggestion, it becomes unavailable for the remainder of that session israndomsuggestions controls whether suggestions are displayed in random order or in the sequence defined in your suggestions list type true/false values true (random order) or false (sequential order) operating modes doc qa, oc curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "israndomsuggestions" true }' systemprompt defines the behavioral instructions and personality for your digital human this prompt guides how the digital human responds to user queries type string example \["you are an expert in biology "] operating modes doc qa, oc, plugin curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "systemprompt" "you are an expert biology professor provide clear, educational answers with real world examples " }' identification parameters id the unique identifier for your digital human this id is required for all update and management operations type string (uuid format) example "a412345f c123 1234 1234 bb85c95e1234" operating modes all modes location available in the unith interface under edit > basic details the id parameter is required for all digital human update operations you cannot update a digital human without providing its id orgpublicid your organization's public identifier, visible in the unith interface type string example "company" operating modes applies to all alias the display name shown to end users when they interact with your digital human type string example "david beckham" operating modes applies to all curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "alias" "dr sarah chen" }' name internal classification name used within the unith platform this is the name we use in the interface dashboard type string example "beckham" operating modes applies to all videostreaming digital human in streaming mode needs to have videostreaming set to true when enabled , some parameters such as splitter is disabled by default type boolean example "true" operating modes applies to all text to speech (tts) & speech to text (stt) parameters languagespeechrecognition language code to improve speech recognition choose a value https //learn microsoft com/en us/azure/ai services/speech service/language support?tabs=stt type string (bcp 47 language tag) example "en us" operating modes all modes reference https //learn microsoft com/en us/azure/ai services/speech service/language support?tabs=stt curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "languagespeechrecognition" "en us" }' the default speech recognition provider is microsoft azure when using digital human in streaming mode (default) you can use elevenlabs as your speech recognition provider with automatic language detection please check our embed documentation for more info ttsprovider the text to speech engine used for audio synthesis available providers include elevenlabs, microsoft azure, and custom docid 7b9hwomcbm mr7ogi7r1e type string example "elevenlabs", "azure" operating modes all modes when updating ttsprovider , make sure to include the id of the voice using ttsvoice parameter ttsvoice the voice that will be associated with the digital human this list is sourced from our docid 7b9hwomcbm mr7ogi7r1e type string example en in aaravneural operating modes all modes for optimal digital human performance, refer to the https //docs unith ai/voice selection guide tts for recommended voices based on your tts provider customwords a dictionary mapping words to their custom pronunciations use this to override default pronunciation for brand names, acronyms, or specialized terminology type object (key value pairs) example {"unith" "you nith", "api" "a p i"} operating modes all modes curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "customwords" { "unith" "you nith", "xavi" "ha vee" } }' custom word pronunciations are voice specific a pronunciation that works for one voice may not be necessary or appropriate for another configure customwords independently for each digital human based on its assigned voice phrases a list of phrases used to improve speech recognition accuracy for brand names, proper nouns, and uncommon terms that may be difficult to recognize without prior knowledge type array of strings example \["unith", "anthropic", "langchain"] operating modes all modes curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "phrases" \["unith", "anthropic", "langchain"] }' user interface parameters language the display language for the unith frontend application interface (buttons, labels, system messages) type string (bcp 47 language tag) example "en us", "es es", "fr fr" operating modes all modes curl x 'get' \\ 'https //platform api unith ai/languages/all' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' "ui languages" { "ar ae" "arabic (united arab emirates)", "bg bg" "bulgarian (bulgaria)", "bs ba" "bosnian (bosnia and herzegovina)", "cs cz" "czech (czechia)", "de de" "german (germany)", "en us" "english (united states)", "es es" "spanish (spain)", "fr fr" "french (france)", "it it" "italian (italy)", "ka ge" "georgian (georgia)", "kk kz" "kazakh (kazakhstan)", "lt lt" "lithuanian (lithuania)", "lv lv" "latvian (latvia)", "nl nl" "dutch (netherlands)", "pl pl" "polish (poland)", "pt pt" "portuguese (portugal)", "ro ro" "romanian (romania)", "ru ru" "russian (russia)", "sk sk" "slovak (slovakia)", "sr rs" "serbian (cyrillic, serbia)", "uk ua" "ukrainian (ukraine)", "th th" "thai (thailand)", "hu hu" "hungarian (hungary)", "id id" "indonesian (indonesia)" } curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "language" "es es" }' operational mode parameters operationmode defines the conversational framework and ai capabilities your digital human will use to process and respond to user queries type string (fixed values) operating modes set during creation only { "operationmode" "voiceflow", "voiceflowapikey" "your voiceflow conversation api key) } mode description use case doc qa document informed q\&a using unith rag pipeline knowledge bases, faq systems, document search oc open conversation powered by chatgpt general conversations, customer support ttt text to video mode pre scripted video content generation plugin custom conversational engine integration external ai systems, proprietary chatbots see docid\ hoboropyem9tuenmqcf s operation modes cannot be changed after creation if you need to change the operation mode, you must create a new digital human advanced configuration parameters these parameters provide fine grained control over performance, security, caching behavior, and integration settings for your digital human conversationsettings configures the large language model (llm) provider and specific model used for generating conversational responses type object operating modes doc qa, oc, plugin { "conversationsettings" { "chat model settings" { "llm name" "gpt 4 1 mini 2025 04 14", "provider" "openai" "api key" "yourapikey" } } } parameters fiel d type description example llm name string specific llm model identifier "gpt 4 1 mini 2025 04 14" provider string llm provider "openai", "anthropic", "azure" api key string your api key for the selected provider n/a different llm models have varying response times, token limits, and cost implications choose a model that balances performance requirements with your use case needs semanticthreshold controls the semantic similarity threshold for retrieving cached responses in conversations for detailed information on semantic caching and performance optimization, check out the documentation https //docs unith ai/semantic cache for digital human responses videocache enables or disables video response caching when enabled, generated video responses are stored and reused for identical or semantically similar queries type boolean default true operating modes all modes curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "videocache" true }' enabling video caching significantly improves response times for frequently asked questions this works in conjunction with semanticthreshold settings ttsstream controls whether text to speech audio is streamed in real time or pre generated before delivery type boolean default false values true audio is streamed as it's generated (lower latency for first audio) false audio is fully generated before delivery (more stable playback) operating modes all modes when using streaming mode you need to use a provider that supports audio streaming ttsstream text splitter also needs to be disabled in streaming mode streaming tts can reduce perceived latency but may introduce audio playback issues on unstable network connections splitter controls text chunking behavior for long form responses when enabled, responses are split into smaller segments for processing type boolean default false operating modes all modes text splitter splitter needs to be disabled when using streaming mode, and it should be enabled with the legacy synthesizer this will happen automatically when the videostreaming parameter is toggled security & embedding parameters allowedorigins configures cross origin resource sharing (cors) settings to control which domains can access your digital human via web requests type array of strings default \[" "] (all origins allowed) example \["https //example com", "https //app example com"] operating modes all modes this parameter is only relevant if you are embedding non streaming digital human for embeding of the streaming digital human please refer to our sdk documentation allowediframeorigins specifies which domains are permitted to embed your digital human within an iframe provides an additional security layer beyond cors type array of strings default \[] (empty no iframe embedding allowed) example \["https //trusted partner com", "https //internal portal company com"] operating modes all modes curl x 'put' \\ 'https //platform api unith ai/head/update' \\ h 'accept application/json' \\ h 'authorization bearer yourbearertoken' \\ h 'content type application/json' \\ d '{ "id" "yourheadid", "allowediframeorigins" \[ "https //trusted partner com", "https //internal portal company com" ] }' this parameter is only relevant if you are embedding non streaming digital human for embeding of the streaming digital human please refer to our sdk documentation important notes parameter updates most parameters can be updated multiple times after digital human creation using the /head/update endpoint you can modify multiple parameters in a single request operation mode immutability the operationmode cannot be changed after creation plan your operation mode carefully based on your use case requirements voice specific settings parameters like customwords are voice specific and may need adjustment when changing voices voice provider and voice id when changing voice provider make sure to also include a specific voice id bearer token required all api requests require a valid bearer token in the authorization header
