agent_name / main_prompt: replaced entirely if provided.agent_configuration: deep-merged (nested keys are merged, not replaced).state_machine: structured patch — upsert states/edges by id, delete by id list.token: ********************{
"LLM": {
"conversation_llm": {
"provider": "google",
"model_name": "gemini-3.1-flash-lite",
"params": {
"streaming": true,
"temperature": 0.4
}
},
"transition_llm": {
"provider": "google",
"model_name": "gemini-3.1-flash-lite",
"params": {
"temperature": 0.1
}
}
},
"TTS": {
"tts_model": {
"provider": "elevenlabs",
"model_name": "eleven_turbo_v2_5",
"params": {
"speed": 1,
"style": 0,
"api_key": "sk_b2c8fd4a7bdf2a94b8c6ccc711b5809bf6b85e7ee34a8e2b_residency_in",
"voice_id": "FQi24rn4EfoHtIqB5BT6",
"stability": 0.7,
"streaming": true,
"similarity_boost": 0.5,
"use_speaker_boost": true
}
},
"enhance_pronunciation": true
},
"STT": {
"stt_provider": "deepgram",
"params": {
"model": "nova-3",
"language_code": "hi"
},
"gibberish_detection": true,
"threshold": 0.5,
"ignore_interruption_loop_words": {
"words_list": [
"okay",
"yeah",
"yes",
"hello hello",
"hello",
"hello",
"hmm",
"ok",
"hi",
"ji",
"hi",
"yes",
"haa",
"yes yes",
"ok ok",
"yes sir",
"yes ma'am",
"thank you",
"yeah",
"ok sir",
"ok ma'am",
"yeah yeah",
"haan",
"हां",
"जी",
"हां जी",
"हां हां",
"जी जी",
"बोलिए",
"ठीक है",
"जी sir",
"जी ma'am",
"हां बोलिए",
"जी जी जी",
"हाँ",
"ठीक है",
"जी",
"बोलिये",
"क्यों call किया"
],
"max_turns": -1
}
},
"state_machine_runtime": {
"state_prompt_feeding_enabled": true,
"state_transition_enabled": false
},
"language_profile": {},
"resolved_language_config": null,
"voice_runtime": null,
"campaign_language_context": null,
"language_resolution_status": null,
"welcome_message": "Hello Rahul ji, this is Simran calling on behalf of Generali Central Life Insurance. क्या अभी बात करने का सही समय है?",
"allowed_languages": [
"hi",
"en"
],
"language_adapter": {
"enabled": true,
"fallback": false,
"logs": "",
"w_previous_input": 0.6,
"w_current_input": 0.4
},
"allow_incoming_interactions": true,
"allow_context_transfer_to_incoming_interactions": true,
"VAD": {
"vad_probability_threshold": 0.94,
"high_probability_window_size": 0.16,
"high_noise_detector_threshold": 0.3
},
"background_noise_classification": {
"enabled": false,
"model_name": "MIT/ast-finetuned-audioset-10-10-0.4593",
"chunk_seconds": 5.0,
"trigger_seconds": 4.0,
"concurrent_times": 2,
"max_markers_per_type": 3,
"cooldown_seconds": 20.0,
"top_k": 10,
"min_noise_score": 0.09,
"speech_noise_score_gap_threshold": 1.0,
"queue_maxsize": 64,
"llm_context_enabled": true,
"direct_message_enabled": true,
"suppress_llm_marker_turns": true,
"default_message": "I can hear background noise. Could you please move to a quieter place or speak a little louder?",
"message_delivery": "llm_marker",
"context_expiry_seconds": 30.0,
"context_include_top_k": true,
"context_max_top_k": 3
},
"backchanneling_filler_data": {
"approval": [
{
"filler": "ठीक है ",
"language": "hi",
"duration": 0.5
},
{
"filler": "बिल्कुल ",
"language": "hi",
"duration": 0.5
},
{
"filler": "हां जी ",
"language": "hi",
"duration": 0.5
}
],
"denial": [
{
"filler": "ओह अच्छा",
"language": "hi",
"duration": 0.5
},
{
"filler": "Okay.",
"language": "hi",
"duration": 0.5
}
],
"informing": [
{
"filler": "जी समझी",
"language": "hi",
"duration": 0.5
},
{
"filler": "Hmm, अच्छा, समझ गई",
"language": "hi",
"duration": 0.5
}
],
"asking": [
{
"filler": "अच्छा",
"language": "hi",
"duration": 0.5
}
],
"others": [
{
"filler": "Hmmm",
"language": "hi",
"duration": 0.5
},
{
"filler": "जी",
"language": "hi",
"duration": 0.5
}
]
},
"max_backchannel_fillers_per_turn": 1,
"backchanneling_wait_time": 2.0,
"audio_denoise_config": {
"denoise_enabled": true,
"speech_enhancement_enabled": true,
"params": {
"denoiser_backend": "rnnoise",
"attenuation_limit": 6.0,
"mix_ratio": 0.85,
"processing_ratio": 0.3
}
},
"z_factor_window_selector": 1.96,
"enterprise_rag": {
"enabled": false,
"mode": "off",
"enterprise_id": null,
"kb_version": null,
"source_format": "markdown",
"compiled_store": "postgres",
"top_k": 5,
"max_context_tokens": 1400,
"timeout_ms": 1000,
"skip_generic_turns": true,
"no_match_guardrail": true,
"slow_filler_enabled": true,
"slow_filler_after_ms": 700,
"slow_filler_repeat_ms": 0,
"slow_filler_text": "Give me a second, I will get that information for you.",
"include_families": [
"objection_handling",
"faq",
"branch_location",
"prompt_rule"
]
},
"suppress_inbound_to_stt_while_agent_speaking": false,
"multi_speaker": {
"multi_speaker_detection_enabled": false,
"detector_backend": "energy_cv",
"pyannote_pipeline_id": "pyannote/speaker-diarization-3.1",
"pyannote_auth_token_env": "HUGGINGFACE_TOKEN",
"min_distinct_speakers": 2,
"sustain_duration_sec": 2.0,
"cooldown_sec": 30.0,
"energy_cv_threshold": 0.6,
"secondary_attenuation_factor": 0.0,
"source_separation_enabled": false,
"ring_buffer_seconds": 2.0,
"analyze_interval_sec": 0.5,
"min_analysis_seconds": 0.5,
"speaker_profile_enabled": false,
"speaker_similarity_threshold": 0.75,
"speaker_profile_ema_alpha": 0.3,
"speaker_profile_min_enrollment_seconds": 1.0,
"speaker_profile_min_compare_seconds": 0.8,
"speaker_profile_enroll_rms_min": 0.1,
"speaker_profile_enroll_rms_max": 0.25,
"speaker_profile_enroll_confidence_min": 0.8,
"inform_prompt_text": "It seems like more than one person is speaking. Could you please move to a quieter place and repeat what you just said?"
}
}curl --location 'https://staging-api.formi.co.in/v2/agents/84/config/model' \
--header 'token: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
"LLM": {
"conversation_llm": {
"provider": "google",
"model_name": "gemini-3.1-flash-lite",
"params": {
"streaming": true,
"temperature": 0.4
}
},
"transition_llm": {
"provider": "google",
"model_name": "gemini-3.1-flash-lite",
"params": {
"temperature": 0.1
}
}
},
"TTS": {
"tts_model": {
"provider": "elevenlabs",
"model_name": "eleven_turbo_v2_5",
"params": {
"speed": 1,
"style": 0,
"api_key": "sk_b2c8fd4a7bdf2a94b8c6ccc711b5809bf6b85e7ee34a8e2b_residency_in",
"voice_id": "FQi24rn4EfoHtIqB5BT6",
"stability": 0.7,
"streaming": true,
"similarity_boost": 0.5,
"use_speaker_boost": true
}
},
"enhance_pronunciation": true
},
"STT": {
"stt_provider": "deepgram",
"params": {
"model": "nova-3",
"language_code": "hi"
},
"gibberish_detection": true,
"threshold": 0.5,
"ignore_interruption_loop_words": {
"words_list": [
"okay",
"yeah",
"yes",
"hello hello",
"hello",
"hello",
"hmm",
"ok",
"hi",
"ji",
"hi",
"yes",
"haa",
"yes yes",
"ok ok",
"yes sir",
"yes ma'\''am",
"thank you",
"yeah",
"ok sir",
"ok ma'\''am",
"yeah yeah",
"haan",
"हां",
"जी",
"हां जी",
"हां हां",
"जी जी",
"बोलिए",
"ठीक है",
"जी sir",
"जी ma'\''am",
"हां बोलिए",
"जी जी जी",
"हाँ",
"ठीक है",
"जी",
"बोलिये",
"क्यों call किया"
],
"max_turns": -1
}
},
"state_machine_runtime": {
"state_prompt_feeding_enabled": true,
"state_transition_enabled": false
},
"language_profile": {},
"resolved_language_config": null,
"voice_runtime": null,
"campaign_language_context": null,
"language_resolution_status": null,
"welcome_message": "Hello Rahul ji, this is Simran calling on behalf of Generali Central Life Insurance. क्या अभी बात करने का सही समय है?",
"allowed_languages": [
"hi",
"en"
],
"language_adapter": {
"enabled": true,
"fallback": false,
"logs": "",
"w_previous_input": 0.6,
"w_current_input": 0.4
},
"allow_incoming_interactions": true,
"allow_context_transfer_to_incoming_interactions": true,
"VAD": {
"vad_probability_threshold": 0.94,
"high_probability_window_size": 0.16,
"high_noise_detector_threshold": 0.3
},
"background_noise_classification": {
"enabled": false,
"model_name": "MIT/ast-finetuned-audioset-10-10-0.4593",
"chunk_seconds": 5.0,
"trigger_seconds": 4.0,
"concurrent_times": 2,
"max_markers_per_type": 3,
"cooldown_seconds": 20.0,
"top_k": 10,
"min_noise_score": 0.09,
"speech_noise_score_gap_threshold": 1.0,
"queue_maxsize": 64,
"llm_context_enabled": true,
"direct_message_enabled": true,
"suppress_llm_marker_turns": true,
"default_message": "I can hear background noise. Could you please move to a quieter place or speak a little louder?",
"message_delivery": "llm_marker",
"context_expiry_seconds": 30.0,
"context_include_top_k": true,
"context_max_top_k": 3
},
"backchanneling_filler_data": {
"approval": [
{
"filler": "ठीक है ",
"language": "hi",
"duration": 0.5
},
{
"filler": "बिल्कुल ",
"language": "hi",
"duration": 0.5
},
{
"filler": "हां जी ",
"language": "hi",
"duration": 0.5
}
],
"denial": [
{
"filler": "ओह अच्छा",
"language": "hi",
"duration": 0.5
},
{
"filler": "Okay.",
"language": "hi",
"duration": 0.5
}
],
"informing": [
{
"filler": "जी समझी",
"language": "hi",
"duration": 0.5
},
{
"filler": "Hmm, अच्छा, समझ गई",
"language": "hi",
"duration": 0.5
}
],
"asking": [
{
"filler": "अच्छा",
"language": "hi",
"duration": 0.5
}
],
"others": [
{
"filler": "Hmmm",
"language": "hi",
"duration": 0.5
},
{
"filler": "जी",
"language": "hi",
"duration": 0.5
}
]
},
"max_backchannel_fillers_per_turn": 1,
"backchanneling_wait_time": 2.0,
"audio_denoise_config": {
"denoise_enabled": true,
"speech_enhancement_enabled": true,
"params": {
"denoiser_backend": "rnnoise",
"attenuation_limit": 6.0,
"mix_ratio": 0.85,
"processing_ratio": 0.3
}
},
"z_factor_window_selector": 1.96,
"enterprise_rag": {
"enabled": false,
"mode": "off",
"enterprise_id": null,
"kb_version": null,
"source_format": "markdown",
"compiled_store": "postgres",
"top_k": 5,
"max_context_tokens": 1400,
"timeout_ms": 1000,
"skip_generic_turns": true,
"no_match_guardrail": true,
"slow_filler_enabled": true,
"slow_filler_after_ms": 700,
"slow_filler_repeat_ms": 0,
"slow_filler_text": "Give me a second, I will get that information for you.",
"include_families": [
"objection_handling",
"faq",
"branch_location",
"prompt_rule"
]
},
"suppress_inbound_to_stt_while_agent_speaking": false,
"multi_speaker": {
"multi_speaker_detection_enabled": false,
"detector_backend": "energy_cv",
"pyannote_pipeline_id": "pyannote/speaker-diarization-3.1",
"pyannote_auth_token_env": "HUGGINGFACE_TOKEN",
"min_distinct_speakers": 2,
"sustain_duration_sec": 2.0,
"cooldown_sec": 30.0,
"energy_cv_threshold": 0.6,
"secondary_attenuation_factor": 0.0,
"source_separation_enabled": false,
"ring_buffer_seconds": 2.0,
"analyze_interval_sec": 0.5,
"min_analysis_seconds": 0.5,
"speaker_profile_enabled": false,
"speaker_similarity_threshold": 0.75,
"speaker_profile_ema_alpha": 0.3,
"speaker_profile_min_enrollment_seconds": 1.0,
"speaker_profile_min_compare_seconds": 0.8,
"speaker_profile_enroll_rms_min": 0.1,
"speaker_profile_enroll_rms_max": 0.25,
"speaker_profile_enroll_confidence_min": 0.8,
"inform_prompt_text": "It seems like more than one person is speaking. Could you please move to a quieter place and repeat what you just said?"
}
}'{
"success": true,
"message": "Draft merged",
"payload": {
"draft_id": 17,
"agent_id": 5,
"status": "draft",
"config_snapshot": {
"agent_name": "Formi Sales Bot",
"main_prompt": "You are a helpful sales assistant...",
"agent_configuration": {
"LLM": {
"conversation_llm": {
"model_name": "gpt-4o",
"temperature": 0.7
}
},
"TTS": {
"provider": "elevenlabs",
"voice_id": "abc123"
},
"STT": {
"provider": "deepgram",
"language": "en-IN"
},
"welcome_message": "Hello! How can I help you today?"
},
"state_machine": {
"states": [
{
"state_id": 10,
"name": "greeting_state",
"template_id": 3,
"state_prompt": "",
"variables": {
"tone": "friendly"
}
}
],
"edges": [
{
"edge_id": 42,
"from_node": 10,
"to_node": 11,
"prompt": "If the user says goodbye, transition.",
"transition_metadata": {}
}
]
},
"connection_config": {}
},
"created_at": "2026-05-01T10:30:00+05:30"
}
}