Skip to main content

Dynamic Agent Setup

Dynamic setup schemas for configuring AI assistants across different channels. Provides streamlined setup flows for phone and web deployments with channel-specific configurations.

Source: src/core/service-configuration/dynamic_setup/


DynamicBaseAgentSetup​

Base schema for AI assistant configuration, used for both phone and web channels.

Schema: DynamicBaseAgentSetupSchema

Attributes​

AttributeTypeRequiredDefaultDescription
assistantNamestringYes—Name of the AI assistant (max 30 characters)
instructionConfigurationIdstringNo—ID of instruction configuration to use
role_template_identifierAgentRoleTemplateIdentifierNo—Role/persona template
capabilitiesarray<AgentCapabilities>No[]Enabled platform services
knowledgeSourceIdsarray<string>No—Associated knowledge source IDs
languagestringNoenLanguage ID (e.g., en, es, fr)
voicestringNo—Voice ID for voice interactions
providerTypeSupportedProprietor | nullNo—AI model provider
providerModelIdstring | nullNo—Specific model ID from provider

DynamicPhoneAgentSetup​

Phone-specific agent setup extending base configuration.

Schema: DynamicPhoneAgentSchema

Additional Attributes​

AttributeTypeRequiredDefaultDescription
phoneConfigurationIdstring | nullNo—Phone configuration ID
testPhoneNumberstring | nullNo—Phone number for testing
sttConfigurationDynamicSTTModelConfiguration | nullNo—Speech-to-text config
ttsConfigurationDynamicTTSModelConfiguration | nullNo—Text-to-speech config

Validation: Both sttConfiguration and ttsConfiguration must be provided together or neither.


DynamicWebAgentSetup​

Web-specific agent setup extending base configuration.

Schema: DynamicWebAgentSchema

Additional Attributes​

AttributeTypeRequiredDefaultDescription
websiteUrlstringYes—URL of the website
communicationTypeOttCommunicationTypeNoUNIFIEDCommunication method
sttConfigurationDynamicSTTModelConfiguration | nullNo—Speech-to-text config
ttsConfigurationDynamicTTSModelConfiguration | nullNo—Text-to-speech config

Model Configurations​

DynamicModelConfiguration​

Base model configuration.

AttributeTypeDescription
providerTypeSupportedProprietorAI model provider
providerModelIdstringProvider's model ID

DynamicSTTModelConfiguration​

Speech-to-text model configuration.

AttributeTypeDefaultDescription
providerTypeSupportedProprietor—AI model provider
providerModelIdstring—Provider's model ID
languageIdstringenLanguage for speech recognition

DynamicTTSModelConfiguration​

Text-to-speech model configuration.

AttributeTypeDefaultDescription
providerTypeSupportedProprietor—AI model provider
providerModelIdstring—Provider's model ID
languageIdstringenLanguage for synthesis
voiceIdstring—Voice ID for output

DynamicAgentProcessingState​

Tracks long-running setup operations.

Attributes​

AttributeTypeDescription
statusenumCurrent status (pending, in_progress, completed, failed)
progressPercentagenumberProgress percentage (0-100)
messagestringAdditional state details

Setup Results​

DynamicAgentSetupResult​

Base result for agent setup operations.

AttributeTypeDescription
idstringResult record ID
processingStateDynamicAgentProcessingStateReal-time processing state
successboolean | nullWhether setup was successful
agentConfigurationIdstring | nullCreated agent configuration ID
instructionConfigurationIdstring | nullCreated instruction configuration ID
errorMessagestringError message if failed
metadataobject | nullAdditional metadata

DynamicPhoneAgentSetupResult​

Extends base result with phone number.

AttributeTypeDescription
phoneNumberstring | nullAssociated phone number

DynamicWebAgentSetupResult​

Extends base result with integration snippets.

AttributeTypeDescription
integrationSnippetsarray<string> | nullCode snippets for deployment

Example​

Phone Agent Setup​

{
"assistantName": "Sarah",
"role_template_identifier": "CUSTOMER_SUPPORT",
"capabilities": ["APPOINTMENT_BOOKING"],
"language": "en",
"phoneConfigurationId": "phone_abc123",
"sttConfiguration": {
"providerType": "OPENAI",
"providerModelId": "whisper-1",
"languageId": "en"
},
"ttsConfiguration": {
"providerType": "ELEVENLABS",
"providerModelId": "eleven_multilingual_v2",
"languageId": "en",
"voiceId": "adam"
}
}

Web Agent Setup​

{
"assistantName": "Alex",
"role_template_identifier": "SALES_ASSISTANT",
"capabilities": ["ORDER_MANAGEMENT"],
"language": "en",
"websiteUrl": "https://example.com",
"communicationType": "UNIFIED"
}

Update Schemas​

SchemaDescription
UpdateDynamicPhoneAgentSchemaPartial update for phone agent (excludes phoneConfigurationId)
UpdateDynamicWebAgentSchemaPartial update for web agent