> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# कन्वर्सेशन सिम्युलेट करता है

POST https://api.elevenlabs.io/v1/convai/agents/{agent_id}/simulate-conversation
Content-Type: application/json

अप्रचलित। यह एंडपॉइंट 31 अक्तूबर 2026 को हटा दिया जाएगा। सिमुलेशन बनाने और चलाने के लिए `/v1/convai/agent-testing/create` और `/v1/convai/agents/:agent_id/run-tests` एंडपॉइंट्स का इस्तेमाल करें। एजेंट और सिम्युलेटेड यूज़र के बीच बातचीत चलाएं।

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

## Servers

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

## Request

### Path parameters

- `agent_id` (string, required) — एजेंट की id। यह एजेंट बनाते समय लौटाई जाती है।

### Body (application/json)

This endpoint expects an object.

- `simulation_specification` (ConversationSimulationSpecification, required) — बातचीत का सिमुलेशन कैसे होना चाहिए, इसका विस्तृत विनिर्देशन
- `extra_evaluation_criteria` (list of PromptEvaluationCriteria, optional) — जाँचने के लिए मूल्यांकन मानदंडों की सूची।
- `new_turns_limit` (integer, optional, default: 100) — बातचीत सिमुलेशन में जनरेट किए जाने वाले नए टर्न की अधिकतम संख्या

## Response

### 200

सफल रिस्पॉन्स

- `simulated_conversation` (list of ConversationHistoryTranscriptResponseModel, required)
- `analysis` (ConversationHistoryAnalysisCommonModel, required)

## Errors

### 422 Agents Simulate Conversation Request Unprocessable Entity Error

वैलिडेशन एरर

- `detail` (list of ValidationError, optional)

## Types

### ConversationSimulationSpecification

एजेंट और AI यूज़र के बीच बातचीत का सिमुलेशन करने के लिए उपयोग किया जाने वाला विनिर्देशन।

- `simulated_user_config` (AgentConfig, required)
- `tool_mock_config` (map from string to ToolMockConfig, optional)
- `partial_conversation_history` (list of ConversationHistoryTranscriptCommonModelInput, optional) — सिमुलेशन शुरू करने के लिए आंशिक बातचीत इतिहास। खाली होने पर सिमुलेशन नए सिरे से शुरू होता है।
- `dynamic_variables` (map from string to any, optional)

### PromptEvaluationCriteria

ट्रांसक्रिप्ट और हाँ/नहीं में उपलब्धि का उत्तर पाने वाले प्रॉम्प्ट का इस्तेमाल करने वाला मूल्यांकन

- `id` (string, required) — मूल्यांकन मानदंड का यूनीक आइडेंटिफ़ायर
- `name` (string, required)
- `conversation_goal_prompt` (string, required) — बातचीत का मूल्यांकन करने के लिए एजेंट द्वारा इस्तेमाल किया जाने वाला प्रॉम्प्ट
- `type` ("prompt", optional) — मूल्यांकन मानदंड का टाइप
- `use_knowledge_base` (boolean, optional, default: false) — प्रॉम्प्ट का मूल्यांकन करते समय एजेंट के नॉलेज बेस का उपयोग करना है या नहीं।
- `scope` (enum, optional, default: conversation) — इस मानदंड का मूल्यांकन करते समय इस्तेमाल किए गए ट्रांसक्रिप्ट कॉन्टेक्स्ट का दायरा। 'conversation' पूरे ट्रांसक्रिप्ट का उपयोग करता है; 'agent' केवल उस हिस्से का उपयोग करता है जहां परिभाषित एजेंट सक्रिय था।
  - Allowed values: `conversation`, `agent`
- `llm` (enum, optional) — इस मूल्यांकन मानदंड के लिए इस्तेमाल किया जाने वाला LLM मॉडल। सेट न होने पर, एजेंट का डिफ़ॉल्ट analysis_llm इस्तेमाल होता है।
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `scoring_mode` (enum, optional, default: binary) — इस मानदंड को कैसे स्कोर किया जाता है। 'binary' सफलता/विफलता/अज्ञात में बदलता है। 'numeric_uniform' [0, max_score] स्केल पर एक संख्या लौटाता है, जिसे कुल बातचीत सफलता प्रतिशत में नॉर्मलाइज़ किया जाता है।
  - Allowed values: `binary`, `numeric_uniform`
- `max_score` (integer, optional, default: 100) — संख्यात्मक स्कोर स्केल का अधिकतम मान (न्यूनतम हमेशा 0 है)। केवल scoring_mode के 'numeric_uniform' होने पर इस्तेमाल किया जाता है।
- `score_instructions` (string, optional) — numeric scale पर मान असाइन करने का तरीका बताने वाले वैकल्पिक free-text निर्देश। केवल scoring_mode के 'numeric_uniform' होने पर इस्तेमाल होते हैं।

### ConversationHistoryTranscriptResponseModel

- `role` (enum, required)
  - Allowed values: `user`, `agent`
- `time_in_call_secs` (integer, required)
- `agent_metadata` (AgentMetadata, optional)
- `message` (string, optional)
- `multivoice_message` (ConversationHistoryMultivoiceMessageModel, optional) — मल्टी-वॉइस एजेंट के संदेश को दर्शाता है।
- `tool_calls` (list of ConversationHistoryTranscriptToolCallCommonModelOutput, optional)
- `tool_results` (list of ConversationHistoryTranscriptResponseModelToolResultsItem, optional)
- `feedback` (UserFeedback, optional)
- `llm_override` (string, optional)
- `producing_llm` (string, optional)
- `conversation_turn_metrics` (ConversationTurnMetrics, optional)
- `rag_retrieval_info` (RagRetrievalInfo, optional)
- `llm_usage` (LlmUsageOutput, optional)
- `interrupted` (boolean, optional, default: false)
- `ignored_as_backchannel` (boolean, optional, default: false)
- `platform_event` (enum, optional)
  - Allowed values: `user_turn_timeout`, `skip_turn_wait_elapsed`
- `original_message` (string, optional)
- `reasoning` (list of ConversationReasoningModel, optional)
- `source_medium` (enum, optional)
  - Allowed values: `audio`, `dtmf`, `text`, `image`, `file`
- `source_event_id` (integer, optional)
- `used_static_kb_document_ids` (list of string, optional)
- `user_identifier` (string, optional)
- `id` (string, optional)
- `triggered_guardrails` (list of TriggeredGuardrailCommonModel, optional)
- `file_input` (ConversationHistoryTranscriptFileInputResponseModel, optional) — डीप्रिकेटेड: इस टर्न में पहला अटैचमेंट। सभी अटैचमेंट देखने के लिए `file_inputs` इस्तेमाल करें।
- `file_inputs` (list of ConversationHistoryTranscriptFileInputResponseModel, optional) — इस टर्न से जुड़ी सभी फ़ाइलें, उसी क्रम में जिसमें यूज़र ने उन्हें जोड़ा था।
- `contextual_update_info` (ContextualUpdateInfo, optional)
- `reasoned` (boolean, optional, default: false)

### ConversationHistoryAnalysisCommonModel

- `call_successful` (enum, required)
  - Allowed values: `success`, `failure`, `unknown`
- `transcript_summary` (string, required)
- `evaluation_criteria_results` (map from string to ConversationHistoryEvaluationCriteriaResultCommonModel, optional)
- `data_collection_results` (map from string to DataCollectionResultCommonModel, optional)
- `evaluation_criteria_results_list` (list of ConversationHistoryEvaluationCriteriaResultCommonModel, optional)
- `data_collection_results_list` (list of DataCollectionResultCommonModel, optional)
- `call_success_score` (double, optional)
- `call_summary_title` (string, optional)
- `scoped` (list of ScopedAnalysisResult, optional)

### ValidationError

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

### AgentConfig

- `first_message` (string, optional, default: ) — खाली न होने पर, एजेंट का पहला संदेश। खाली होने पर एजेंट चर्चा शुरू करने के लिए यूज़र का इंतज़ार करता है।
- `language` (string, optional, default: en) — एजेंट की भाषा — ASR और TTS के लिए इस्तेमाल होती है
- `hinglish_mode` (boolean, optional, default: false) — सक्षम होने पर, एजेंट हिंदी, मलयालम, तेलुगु या कन्नड़ में जवाबों के साथ अंग्रेज़ी शब्द और वाक्यांश मिलाता है।
- `dynamic_variables` (any, optional)
- `disable_first_message_interruptions` (boolean, optional, default: false) — अगर true है, तो पहला संदेश दिए जाने के दौरान यूज़र एजेंट को बाधित नहीं कर सकेगा।
- `max_conversation_duration_message` (string, optional, default: ) — खाली न होने पर, अधिकतम बातचीत अवधि पूरी होने पर एजेंट द्वारा भेजा जाने वाला संदेश।
- `text_behavior_overrides` (map from string to BehaviorOverride, optional) — text conversations के लिए प्रति-channel response behavior overrides। सेट न होने पर built-in channel defaults लागू होते हैं।
- `prompt` (PromptAgentApiModelOutput, optional) — एजेंट के लिए प्रॉम्प्ट

### ToolMockConfig

- `default_return_value` (string, optional, default: Tool Called.)
- `default_is_error` (boolean, optional, default: false)

### ConversationHistoryTranscriptCommonModelInput

- `role` (enum, required)
  - Allowed values: `user`, `agent`
- `time_in_call_secs` (integer, required)
- `agent_metadata` (AgentMetadata, optional)
- `message` (string, optional)
- `multivoice_message` (ConversationHistoryMultivoiceMessageModel, optional) — मल्टी-वॉइस एजेंट के संदेश को दर्शाता है।
- `tool_calls` (list of ConversationHistoryTranscriptToolCallCommonModelInput, optional)
- `tool_results` (list of ConversationHistoryTranscriptCommonModelInputToolResultsItem, optional)
- `feedback` (UserFeedback, optional)
- `llm_override` (string, optional)
- `producing_llm` (string, optional)
- `conversation_turn_metrics` (ConversationTurnMetrics, optional)
- `rag_retrieval_info` (RagRetrievalInfo, optional)
- `llm_usage` (LlmUsageInput, optional)
- `interrupted` (boolean, optional, default: false)
- `ignored_as_backchannel` (boolean, optional, default: false)
- `platform_event` (enum, optional)
  - Allowed values: `user_turn_timeout`, `skip_turn_wait_elapsed`
- `original_message` (string, optional)
- `reasoning` (list of ConversationReasoningModel, optional)
- `source_medium` (enum, optional)
  - Allowed values: `audio`, `dtmf`, `text`, `image`, `file`
- `source_event_id` (integer, optional)
- `used_static_kb_document_ids` (list of string, optional)
- `user_identifier` (string, optional)
- `id` (string, optional)
- `triggered_guardrails` (list of TriggeredGuardrailCommonModel, optional)

### AgentMetadata

- `agent_id` (string, required)
- `branch_id` (string, optional)
- `workflow_node_id` (string, optional)
- `version_id` (string, optional)

### ConversationHistoryMultivoiceMessageModel

मल्टी-वॉइस एजेंट के संदेश को दर्शाता है।

- `parts` (list of ConversationHistoryMultivoiceMessagePartModel, required)

### ConversationHistoryTranscriptToolCallCommonModelOutput

- `request_id` (string, required)
- `tool_name` (string, required)
- `params_as_json` (string, required)
- `tool_has_been_called` (boolean, required)
- `type` (enum, optional)
  - Allowed values: `system`, `webhook`, `client`, `mcp`, `workflow`, `api_integration_webhook`, `api_integration_mcp`, `smb`
- `tool_id` (string, optional) — कॉल किए गए टूल का ID। बिना ID वाले टूल, जैसे सिस्टम टूल, के लिए सेट नहीं होता।
- `tool_details` (ConversationHistoryTranscriptToolCallCommonModelOutputToolDetails, optional)

### ConversationHistoryTranscriptResponseModelToolResultsItem

### UserFeedback

- `score` (enum, required)
  - Allowed values: `like`, `dislike`
- `time_in_call_secs` (integer, required)

### ConversationTurnMetrics

- `metrics` (map from string to MetricRecord, optional)
- `convai_asr_provider` (string, optional)
- `convai_tts_model` (string, optional)
- `convai_tts_cascade` (string, optional)
- `voice_id` (string, optional)

### RagRetrievalInfo

- `chunks` (list of RagChunkMetadata, required)
- `embedding_model` (enum, required, default: e5_mistral_7b_instruct)
  - Allowed values: `e5_mistral_7b_instruct`, `multilingual_e5_large_instruct`
- `retrieval_query` (string, required)
- `rag_latency_secs` (double, required)
- `used_chunk_ids` (list of string, optional)

### LlmUsageOutput

- `model_usage` (map from string to LlmInputOutputTokensUsage, optional)

### ConversationReasoningModel

- `summary` (string, optional)
- `provider_redact` (boolean, optional, default: false)

### TriggeredGuardrailCommonModel

- `guardrail_type` (enum, required)
  - Allowed values: `custom`, `prompt_injection`, `self_harm_intent`, `violence_graphic`, `sexual`, `violence`, `harassment`, `sexual_minors`, `self_harm`, `self_harm_instructions`, `harassment_threatening`, `hate`, `hate_threatening`, `profanity`, `religion_or_politics`, `medical_and_legal`, `guardrail`
- `guardrail_name` (string, optional)

### ConversationHistoryTranscriptFileInputResponseModel

- `file_id` (string, required)
- `original_filename` (string, required)
- `mime_type` (string, required)
- `file_url` (string, required)

### ContextualUpdateInfo

- `context_id` (string, required) — संबंधित कॉन्टेक्स्टुअल अपडेट को समूहित करने वाला क्लाइंट द्वारा दिया गया आइडेंटिफ़ायर।
- `is_superseded` (boolean, optional, default: false) — जब इस संदर्भित अपडेट को उसी context_id वाले नए अपडेट से बदल दिया गया हो, तब true।

### ConversationHistoryEvaluationCriteriaResultCommonModel

- `criteria_id` (string, required)
- `result` (enum, required)
  - Allowed values: `success`, `failure`, `unknown`
- `rationale` (string, required)
- `scoring_mode` (enum, optional, default: binary)
  - Allowed values: `binary`, `numeric_uniform`
- `score` (integer, optional)
- `max_score` (integer, optional)

### DataCollectionResultCommonModel

- `data_collection_id` (string, required)
- `rationale` (string, required)
- `name` (string, optional)
- `value` (any, optional)
- `json_schema` (LiteralJsonSchemaProperty, optional) — literal JSON types के लिए schema property। ज़रूरी: इनमें से केवल एक field सेट की जा सकती है: description (LLM value देता है), dynamic_variable (variable से value), is_system_provided (system value देता है), constant_value (fixed value), या is_omitted (parameter छोड़ा गया है)। ये परस्पर अनन्य हैं।

### ScopedAnalysisResult

- `scope` (enum, required, default: conversation) — विश्लेषण का दायरा। 'conversation' पूरे ट्रांसक्रिप्ट का उपयोग करता है; 'agent' केवल उस हिस्से का उपयोग करता है जहां परिभाषित एजेंट सक्रिय था।
  - Allowed values: `conversation`, `agent`
- `source_agent_id` (string, required)
- `successful` (enum, required)
  - Allowed values: `success`, `failure`, `unknown`
- `source_branch_id` (string, optional) — इस स्कोप्ड ब्लॉक के लिए एजेंट की ब्रांच; दोहराए गए agent_id में अंतर स्पष्ट करती है।
- `evaluation_criteria_results` (map from string to ConversationHistoryEvaluationCriteriaResultCommonModel, optional)
- `data_collection_results` (map from string to DataCollectionResultCommonModel, optional)
- `success_score` (double, optional)

### ValidationErrorLocItem

### BehaviorOverride

- `verbosity` (enum, optional) — वर्बोसिटी ओवरराइड। सेट न होने पर आधारभूत डिफ़ॉल्ट लागू होता है।
  - Allowed values: `auto`, `concise`, `thorough`
- `output_format` (enum, optional) — Output format override। सेट न होने पर मूल डिफ़ॉल्ट लागू होता है।
  - Allowed values: `mp3_22050_32`, `mp3_44100_32`, `mp3_44100_64`, `mp3_44100_96`, `mp3_44100_128`, `mp3_44100_192`, `pcm_16000`, `pcm_22050`, `pcm_24000`, `pcm_44100`, `ulaw_8000`
- `interaction_budget` (enum, optional) — इंटरैक्शन बजट ओवरराइड। सेट न होने पर मूल डिफ़ॉल्ट लागू होता है।
  - Allowed values: `realtime`, `5_minutes`, `10_minutes`, `1_hour`

### PromptAgentApiModelOutput

- `prompt` (string, optional, default: ) — एजेंट के लिए प्रॉम्प्ट
- `llm` (enum, optional) — prompt और चैट हिस्ट्री के साथ क्वेरी करने वाला LLM। data residency इस्तेमाल करने पर, LLM का data residency एनवायरनमेंट में समर्थित होना ज़रूरी है।
  - Allowed values: `gpt-4o-mini`, `gpt-4o`, `gpt-4`, `gpt-4-turbo`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-5`, `gpt-5.1`, `gpt-5.2`, `gpt-5.2-chat-latest`, `gpt-5.4`, `gpt-5.4-mini`, `gpt-5.4-nano`, `gpt-5.5`, `gpt-5.6-sol`, `gpt-5.6-terra`, `gpt-5.6-luna`, `gpt-6-astra`, `gpt-6-sol`, `gpt-6-luna`, `gpt-6.1-sol`, `gpt-5-mini`, `gpt-5-nano`, `gpt-3.5-turbo`, `gemini-1.5-pro`, `gemini-1.5-flash`, `gemini-2.0-flash`, `gemini-2.0-flash-lite`, `gemini-2.5-flash-lite`, `gemini-2.5-flash`, `gemini-3-pro-preview`, `gemini-3-flash-preview`, `gemini-3.1-pro-preview`, `gemini-3.1-flash-lite-preview`, `gemini-3.1-flash-lite`, `gemini-3.5-flash`, `gemini-3.5-flash-lite`, `gemini-3.6-flash`, `gemini-3.7-flash`, `gemini-3.8-flash`, `gemini-4-argon`, `claude-sonnet-4-5`, `claude-opus-4-6`, `claude-opus-4-7`, `claude-opus-4-8`, `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-4-6`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-sonnet-4`, `claude-haiku-4-5`, `claude-haiku-5-5`, `claude-3-7-sonnet`, `claude-3-5-sonnet`, `claude-3-5-sonnet-v1`, `claude-3-haiku`, `grok-beta`, `custom-llm`, `qwen3-4b`, `qwen3-30b-a3b`, `qwen36-35b-a3b`, `qwen35-397b-a17b`, `gpt-oss-20b`, `gpt-oss-120b`, `glm-45-air-fp8`, `glm-52`, `deepseek-v41-flash`, `nemotron-35-super-vl-nvfp4`, `gemini-2.5-flash-preview-09-2025`, `gemini-2.5-flash-lite-preview-09-2025`, `gemini-2.5-flash-preview-05-20`, `gemini-2.5-flash-preview-04-17`, `gemini-2.5-flash-lite-preview-06-17`, `gemini-2.0-flash-lite-001`, `gemini-2.0-flash-001`, `gemini-1.5-flash-002`, `gemini-1.5-flash-001`, `gemini-1.5-pro-002`, `gemini-1.5-pro-001`, `claude-sonnet-4@20250514`, `claude-sonnet-4-5@20250929`, `claude-haiku-4-5@20251001`, `claude-3-7-sonnet@20250219`, `claude-3-5-sonnet@20240620`, `claude-3-5-sonnet-v2@20241022`, `claude-3-haiku@20240307`, `gpt-5-2025-08-07`, `gpt-5.1-2025-11-13`, `gpt-5.2-2025-12-11`, `gpt-5.4-2026-03-05`, `gpt-5.4-mini-2026-03-17`, `gpt-5.4-nano-2026-03-17`, `gpt-5.5-2026-04-23`, `gpt-5-mini-2025-08-07`, `gpt-5-nano-2025-08-07`, `gpt-4.1-2025-04-14`, `gpt-4.1-mini-2025-04-14`, `gpt-4.1-nano-2025-04-14`, `gpt-4o-mini-2024-07-18`, `gpt-4o-2024-11-20`, `gpt-4o-2024-08-06`, `gpt-4o-2024-05-13`, `gpt-4-0613`, `gpt-4-0314`, `gpt-4-turbo-2024-04-09`, `gpt-3.5-turbo-0125`, `gpt-3.5-turbo-1106`, `watt-tool-8b`, `watt-tool-70b`
- `reasoning_effort` (enum, optional) — मॉडल का रीजनिंग प्रयास। केवल कुछ मॉडलों के लिए उपलब्ध।
  - Allowed values: `none`, `minimal`, `low`, `medium`, `high`, `xhigh`, `max`
- `thinking_budget` (integer, optional) — सोचने के लिए इस्तेमाल होने वाले टोकन की अधिकतम संख्या। मॉडल समर्थन करता हो तो बंद करने के लिए 0 इस्तेमाल करें।
- `enable_reasoning_summary` (boolean, optional, default: false) — मॉडल रीजनिंग सारांश सक्षम करें। अक्षम होने पर, तेज़ TTFB के लिए हम संभव होने पर प्रोवाइडर से सारांश का अनुरोध नहीं करते। ZRM के साथ संगत नहीं है।
- `temperature` (double, optional) — LLM के लिए टेम्परेचर। डिफ़ॉल्ट रूप से 0 है। पैरामीटर को LLM अनुरोध से पूरी तरह हटाने के लिए इसे null पर सेट करें (ऐसे कस्टम LLM के लिए उपयोगी जो temperature फ़ील्ड अस्वीकार करते हैं)।
- `max_tokens` (integer, optional, default: -1) — 0 से अधिक होने पर, LLM द्वारा अनुमानित किए जा सकने वाले टोकन की अधिकतम संख्या
- `tool_ids` (list of string, optional) — एजेंट द्वारा इस्तेमाल किए गए टूल की IDs की सूची।
- `tool_ids_strict` (boolean, optional, default: false) — यह केवल कन्वर्सेशन ओवरराइड के रूप में लागू होता है और जब भी tool_ids को ओवरराइड किया जा सकता हो, तब अनुमत है। true होने पर, ओवरराइड किया गया tool_ids कन्वर्सेशन में अनुमत टूल की पूरी सूची होता है, जिसमें workflow नोड्स के टूल भी शामिल हैं। एजेंट पर सेट होने पर इसे अनदेखा किया जाता है।
- `built_in_tools` (BuiltInToolsOutput, optional) — एजेंट द्वारा इस्तेमाल किए जाने वाले बिल्ट-इन सिस्टम टूल
- `enable_parallel_tool_calls` (boolean, optional, default: true) — पैरेलल टूल कॉलिंग सक्षम करें। सक्षम होने पर, एजेंट एक ही टर्न में कई टूल पैरेलल रूप से चला सकता है। सभी मॉडल इसे सपोर्ट नहीं करते।
- `mcp_server_ids` (list of string, optional) — एजेंट द्वारा उपयोग किए जाने वाले MCP सर्वर ids की सूची
- `native_mcp_server_ids` (list of string, optional) — एजेंट द्वारा उपयोग किए जाने वाले Native MCP सर्वर ids की सूची
- `knowledge_base` (list of KnowledgeBaseLocator, optional) — एजेंट द्वारा उपयोग किए जाने वाले नॉलेज बेस की सूची
- `custom_llm` (CustomLlm, optional) — यदि LLM फ़ील्ड 'CUSTOM_LLM' पर सेट है, तो कस्टम LLM की परिभाषा
- `ignore_default_personality` (boolean, optional) — सिस्टम प्रॉम्प्ट से डिफ़ॉल्ट पर्सनैलिटी लाइनें हटानी हैं या नहीं
- `rag` (RagConfigOutput, optional) — RAG के लिए कॉन्फ़िगरेशन
- `timezone` (string, optional) — सिस्टम प्रॉम्प्ट में वर्तमान समय दिखाने के लिए टाइमज़ोन। सेट होने पर, इस टाइमज़ोन का उपयोग करके वर्तमान समय सिस्टम प्रॉम्प्ट में शामिल होगा। यह मान्य टाइमज़ोन नाम होना चाहिए (जैसे, 'America/New_York', 'Europe/London', 'UTC')। समय के हिसाब से सटीक जवाबों के लिए इसकी सलाह दी जाती है; इसके बिना एजेंट को मौजूदा तारीख/समय की जानकारी नहीं होगी, जब तक आप उसे dynamic variables या tools से न दें, जिससे गलत या काल्पनिक समय संदर्भ आ सकते हैं।
- `backup_llm_config` (PromptAgentApiModelOutputBackupLlmConfig, optional) — बैकअप LLM कैस्केडिंग के लिए कॉन्फ़िगरेशन। इसे बंद किया जा सकता है, सिस्टम डिफ़ॉल्ट इस्तेमाल किए जा सकते हैं या कस्टम क्रम तय किया जा सकता है।
- `cascade_timeout_seconds` (double, optional, default: 4) — बैकअप LLM पर जाने से पहले का समय, सेकंड में। यह 2 से 15 सेकंड के बीच होना चाहिए।
- `tools` (list of PromptAgentApiModelOutputToolsItem, optional, deprecated) — बातचीत के दौरान एजेंट जिन टूल्स का उपयोग कर सकता है उनकी सूची, इसके बजाय tool_ids का उपयोग करें

### ConversationHistoryTranscriptToolCallCommonModelInput

- `request_id` (string, required)
- `tool_name` (string, required)
- `params_as_json` (string, required)
- `tool_has_been_called` (boolean, required)
- `type` (enum, optional)
  - Allowed values: `system`, `webhook`, `client`, `mcp`, `workflow`, `api_integration_webhook`, `api_integration_mcp`, `smb`
- `tool_id` (string, optional) — कॉल किए गए टूल का ID। बिना ID वाले टूल, जैसे सिस्टम टूल, के लिए सेट नहीं होता।
- `tool_details` (ConversationHistoryTranscriptToolCallCommonModelInputToolDetails, optional)

### ConversationHistoryTranscriptCommonModelInputToolResultsItem

### LlmUsageInput

- `model_usage` (map from string to LlmInputOutputTokensUsage, optional)

### ConversationHistoryMultivoiceMessagePartModel

मल्टी-वॉइस संदेश के एकल वॉइस भाग को दर्शाता है।

- `text` (string, required)
- `voice_label` (string, optional)
- `time_in_call_secs` (integer, optional)

### ConversationHistoryTranscriptToolCallCommonModelOutputToolDetails

- `type`: `api_integration_webhook`
  - `credential_id` (string, required, default: )
  - `integration_connection_id` (string, required, default: )
  - `integration_id` (string, required, default: )
  - `webhook_details` (ConversationHistoryTranscriptToolCallWebhookDetails, required)
- `type`: `client`
  - `parameters` (string, required)
- `type`: `mcp`
  - `approval_policy` (string, required)
  - `integration_type` (string, required)
  - `mcp_server_id` (string, required)
  - `mcp_server_name` (string, required)
  - `mcp_tool_description` (string, optional, default: )
  - `mcp_tool_name` (string, optional, default: )
  - `parameters` (map from string to string, optional)
  - `requires_approval` (boolean, optional, default: false)
- `type`: `webhook`
  - `method` (string, required)
  - `url` (string, required)
  - `body` (string, optional)
  - `headers` (map from string to string, optional)
  - `path_params` (map from string to string, optional)
  - `query_params` (map from string to string, optional)

### ConversationHistoryTranscriptOtherToolsResultCommonModel

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `tool_has_been_called` (boolean, required)
- `is_blocked` (boolean, optional, default: false)
- `tool_latency_secs` (double, optional, default: 0)
- `error_type` (string, optional, default: )
- `raw_error_message` (string, optional, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, optional)
- `type` (enum, optional)
  - Allowed values: `client`, `webhook`, `mcp`, `code`

### ConversationHistoryTranscriptSystemToolResultCommonModelOutput

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `tool_has_been_called` (boolean, required)
- `type` ("system", required)
- `is_blocked` (boolean, optional, default: false)
- `tool_latency_secs` (double, optional, default: 0)
- `error_type` (string, optional, default: )
- `raw_error_message` (string, optional, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, optional)
- `result` (ConversationHistoryTranscriptSystemToolResultCommonModelOutputResult, optional)

### ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModelOutput

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `is_blocked` (boolean, required, default: false)
- `tool_has_been_called` (boolean, required)
- `tool_latency_secs` (double, required, default: 0)
- `error_type` (string, required, default: )
- `raw_error_message` (string, required, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, required)
- `type` ("api_integration_webhook", required)
- `integration_id` (string, required, default: )
- `credential_id` (string, required, default: )
- `integration_connection_id` (string, required, default: )

### ConversationHistoryTranscriptWorkflowToolsResultCommonModelOutput

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `tool_has_been_called` (boolean, required)
- `type` ("workflow", required)
- `is_blocked` (boolean, optional, default: false)
- `tool_latency_secs` (double, optional, default: 0)
- `error_type` (string, optional, default: )
- `raw_error_message` (string, optional, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, optional)
- `result` (WorkflowToolResponseModelOutput, optional) — workflow टूल रिस्पॉन्स के लिए एक सामान्य मॉडल।

### MetricRecord

- `elapsed_time` (double, required)

### RagChunkMetadata

- `document_id` (string, required)
- `chunk_id` (string, required)
- `vector_distance` (double, required)

### LlmInputOutputTokensUsage

- `input` (LlmTokensCategoryUsage, optional)
- `input_cache_read` (LlmTokensCategoryUsage, optional)
- `input_cache_write` (LlmTokensCategoryUsage, optional)
- `output_total` (LlmTokensCategoryUsage, optional)

### LiteralJsonSchemaProperty

literal JSON types के लिए schema property। ज़रूरी: इनमें से केवल एक field सेट की जा सकती है: description (LLM value देता है), dynamic_variable (variable से value), is_system_provided (system value देता है), constant_value (fixed value), या is_omitted (parameter छोड़ा गया है)। ये परस्पर अनन्य हैं।

- `type` (LiteralJsonSchemaPropertyType, required)
- `description` (string, optional, default: ) — प्रॉपर्टी का विवरण। सेट होने पर, LLM इस विवरण के आधार पर मान देगा। यह dynamic_variable, is_system_provided, constant_value और is_omitted के साथ परस्पर अनन्य है।
- `enum` (list of string, optional) — List of allowed string values for string type parameters
- `is_system_provided` (boolean, optional, default: false) — अगर true है, तो सिस्टम रनटाइम पर मान भर देगा। टेम्पलेटिंग के लिए API Integration Webhook टूल द्वारा उपयोग किया जाता है। description, dynamic_variable, constant_value और is_omitted के साथ परस्पर अनन्य है।
- `dynamic_variable` (string, optional, default: ) — इस प्रॉपर्टी की वैल्यू के लिए इस्तेमाल किए जाने वाले dynamic variable का नाम। description, is_system_provided, constant_value और is_omitted के साथ परस्पर अनन्य।
- `allowed_values` (AllowedValues, optional) — LLM द्वारा दी गई value के लिए server-side rejection guard: runtime इस object के बताए permitted set से बाहर की हर value को अस्वीकार करता है और यह set LLM को enum के रूप में नहीं बताया जाता। केवल तब समर्थित है, जब value source `description` हो; इसे dynamic_variable, is_system_provided, constant_value या is_omitted के साथ मिलाने पर अस्वीकार कर दिया जाता है।
- `constant_value` (LiteralJsonSchemaPropertyConstantValue, optional) — इस प्रॉपर्टी के लिए इस्तेमाल किया जाने वाला स्थिर मान। description, dynamic_variable, is_system_provided और is_omitted के साथ परस्पर अनन्य है।
- `is_omitted` (boolean, optional, default: false) — अगर true है, तो यह पैरामीटर रिक्वेस्ट से पूरी तरह हटा दिया जाएगा। केवल वैकल्पिक पैरामीटर्स के लिए मान्य है। description, dynamic_variable, is_system_provided और constant_value के साथ परस्पर अनन्य है।
- `allowed_values_dynamic_variable` (string, optional, default: , deprecated) — डीप्रिकेटेड: इसके बजाय `allowed_values` इस्तेमाल करें। सेट होने पर LLM वैल्यू देता है, लेकिन रनटाइम इस डायनेमिक वेरिएबल की सूची में मौजूद न होने वाली किसी भी वैल्यू को अस्वीकार करता है (यह ["ws_alpha", "ws_beta"] जैसा JSON ऐरे होना चाहिए)। LLM को सर्वर-वेरिफ़ाइड सेट से चुनने देने के लिए इस्तेमाल करें (जैसे वे ID जिन्हें वर्तमान यूज़र एक्सेस कर सकता है)। description आवश्यक है; dynamic_variable, is_system_provided, constant_value और is_omitted के साथ परस्पर अनन्य है।

### BuiltInToolsOutput

कन्वर्सेशनल एजेंट को दिए जा सकने वाले सिस्टम टूल्स। जानबूझकर ConversationalBuiltInTools नाम नहीं दिया गया: BuiltInToolsInput और BuiltInToolsOutput सार्वजनिक API स्पेक और जनरेट किए गए SDKs का हिस्सा हैं।

- `transfer_to_agent` (SystemToolConfigOutput, optional) — एजेंट को ट्रांसफ़र करने का टूल
- `end_call` (SystemToolConfigOutput, optional) — कॉल समाप्ति टूल
- `language_detection` (SystemToolConfigOutput, optional) — भाषा पहचान टूल
- `transfer_to_number` (SystemToolConfigOutput, optional) — नंबर पर ट्रांसफ़र करने का टूल
- `skip_turn` (SystemToolConfigOutput, optional) — स्किप टर्न टूल
- `play_keypad_touch_tone` (SystemToolConfigOutput, optional) — Play DTMF टूल
- `voicemail_detection` (SystemToolConfigOutput, optional) — वॉइसमेल डिटेक्शन टूल

### KnowledgeBaseLocator

- `type` (enum, required) — नॉलेज बेस का टाइप
  - Allowed values: `file`, `url`, `text`, `folder`
- `name` (string, required) — knowledge base का नाम
- `id` (string, required) — नॉलेज बेस की ID
- `usage_mode` (enum, optional, default: auto) — नॉलेज बेस का उपयोग मोड
  - Allowed values: `prompt`, `auto`

### CustomLlm

- `url` (string, required) — Chat Completions-संगत एंडपॉइंट का URL
- `model_id` (string, optional) — अगर URL कई मॉडल उपलब्ध कराता है, तो इस्तेमाल किया जाने वाला मॉडल ID
- `api_key` (CustomLlmApiKey, optional) — ऑथेंटिकेशन के लिए API key। या तो वर्कस्पेस सीक्रेट रेफ़रेंस \{'secret\_id': '...'} या एनवायरनमेंट वैरिएबल रेफ़रेंस \{'env\_var\_label': '...'}।
- `auth_connection` (CustomLlmAuthConnection, optional) — authentication के लिए वैकल्पिक workspace auth connection। केवल वे auth connections समर्थित हैं जो Authorization Bearer token बनाते हैं; Basic auth, mTLS, custom header और URL secret auth connections समर्थित नहीं हैं।
- `request_headers` (map from string to CustomLlmRequestHeadersValue, optional) — रिक्वेस्ट में शामिल किए जाने वाले हेडर
- `api_version` (string, optional) — रिक्वेस्ट के लिए इस्तेमाल करने वाला API वर्शन
- `api_type` (enum, optional, default: chat_completions) — इस्तेमाल करने के लिए API टाइप (chat_completions, responses या websocket)
  - Allowed values: `chat_completions`, `responses`, `websocket`

### RagConfigOutput

- `enabled` (boolean, optional, default: false)
- `embedding_model` (enum, optional, default: e5_mistral_7b_instruct)
  - Allowed values: `e5_mistral_7b_instruct`, `multilingual_e5_large_instruct`
- `max_vector_distance` (double, optional, default: 0.6) — प्राप्त चंक्स की अधिकतम वेक्टर दूरी।
- `max_documents_length` (integer, optional, default: 50000) — RAG से प्राप्त दस्तावेज़ चंक्स की अधिकतम कुल लंबाई।
- `max_retrieved_rag_chunks_count` (integer, optional, default: 20) — वेक्टर स्टोर से शुरुआत में प्राप्त किए जाने वाले RAG दस्तावेज़ चंक्स की अधिकतम संख्या। इसके बाद इन्हें वेक्टर दूरी और कुल लंबाई के आधार पर फ़िल्टर किया जाता है।
- `num_candidates` (integer, optional) — ANN वेक्टर खोज में आंके गए उम्मीदवारों की संख्या। ज़्यादा संख्या से बेहतर नतीजे मिलते हैं, लेकिन विलंब भी बढ़ता है। न्यूनतम सुझाया गया मान 100 है। अक्षम होने पर डिफ़ॉल्ट मान इस्तेमाल होता है।
- `query_rewrite_prompt_override` (string, optional) — RAG रिट्रीवल से पहले यूज़र क्वेरी को दोबारा लिखने के लिए कस्टम प्रॉम्प्ट। बातचीत का इतिहास अंत में अपने-आप जोड़ा जाएगा। सेट न होने पर डिफ़ॉल्ट प्रॉम्प्ट इस्तेमाल होगा।
- `knowledge_base_tool_info` (KnowledgeBaseToolInfo, optional) — सेट होने पर, एजेंट लेगसी knowledge_base_rag टूल के बजाय knowledge_base टूल का उपयोग करता है। None का मतलब है कि एजेंट ने इसे चुना नहीं है।

### PromptAgentApiModelOutputBackupLlmConfig

बैकअप LLM कैस्केडिंग के लिए कॉन्फ़िगरेशन। इसे बंद किया जा सकता है, सिस्टम डिफ़ॉल्ट इस्तेमाल किए जा सकते हैं या कस्टम क्रम तय किया जा सकता है।

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

### PromptAgentApiModelOutputToolsItem

टूल का टाइप

- `type`: `api_integration_webhook`
  - `api_integration_connection_id` (string, required)
  - `api_integration_id` (string, required)
  - `assignments` (list of DynamicVariableAssignment, required) — टूल रिस्पॉन्स से वैल्यू निकालने और उन्हें डायनामिक वेरिएबल को असाइन करने के लिए कॉन्फ़िगरेशन
  - `description` (string, required) — टूल का इस्तेमाल कब करना चाहिए और यह क्या करता है, इसका विवरण।
  - `dynamic_variables` (DynamicVariablesConfig, required) — डायनामिक वेरिएबल के लिए कॉन्फ़िगरेशन
  - `execution_mode` (enum, required, default: immediate) — यह तय करता है कि टूल कब और कैसे चले: 'immediate', LLM के अनुरोध पर टूल को तुरंत चलाता है; 'post_tool_speech', एजेंट के बोलना पूरा करने तक इंतज़ार करता है; 'async', बिना ब्लॉक किए टूल को बैकग्राउंड में चलाता है — लंबे समय तक चलने वाले ऑपरेशंस के लिए सबसे अच्छा।
    - Allowed values: `immediate`, `post_tool_speech`, `async`
  - `interruption_mode` (enum, required, default: allow) — यह नियंत्रित करता है कि यूज़र इस टूल कॉल के दौरान एजेंट को बाधित कर सकता है या नहीं। 'allow' (डिफ़ॉल्ट) यूज़र को किसी भी समय बाधित करने देता है, 'disable_during_tool' केवल टूल के चलने के दौरान बाधा को रोकता है और 'disable_during_tool_and_turn' टूल के चलने के दौरान और उसके बाद आने वाले एजेंट रिस्पॉन्स के लिए बाधा को रोकता है।
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `name` (string, required)
  - `pre_tool_speech` (enum, required, default: auto) — यह नियंत्रित करता है कि इस टूल को कॉल करने से पहले एजेंट बोले या नहीं। 'auto' (डिफ़ॉल्ट) हाल की टूल लेटेंसी के आधार पर तय करता है, 'force' हमेशा एजेंट को बोलने के लिए कहता है और 'off' लेटेंसी की परवाह किए बिना इसे पूरी तरह बंद कर देता है।
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, required, default: 20) — टूल कॉल के पूरा होने की प्रतीक्षा का अधिकतम समय, सेकंड में। यह 5 से 300 सेकंड (दोनों सहित) के बीच होना चाहिए।
  - `tool_call_sound_behavior` (enum, required, default: auto) — यह तय करता है कि टूल कॉल की ध्वनि कब बजे। 'auto' केवल तब बजता है जब टूल से पहले स्पीच हो, जबकि 'always' हर टूल कॉल के लिए बजता है।
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, required, default: auto) — एजेंट के साथ साझा करने से पहले टूल की त्रुटियों को कैसे प्रोसेस किया जाए, यह नियंत्रित करता है। 'auto' टूल के प्रकार के आधार पर हैंडलिंग तय करता है (नेटिव इंटीग्रेशन के लिए सारांशित, दूसरों के लिए छिपाया गया), 'summarized' LLM से जनरेट किया गया सारांश भेजता है, 'passthrough' मूल त्रुटि भेजता है और 'hide' त्रुटि को एजेंट के साथ साझा नहीं करता।
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `tool_version` (string, required, default: 1.0.0) — API इंटीग्रेशन टूल का वर्ज़न
  - `disable_interruptions` (boolean, required, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `interruption_mode` इस्तेमाल करें। true होने पर, इस टूल के चलने के दौरान यूज़र एजेंट को बाधित नहीं कर पाएगा।
  - `force_pre_tool_speech` (boolean, required, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `pre_tool_speech` इस्तेमाल करें। true होने पर, एजेंट टूल कॉल से पहले बोलेगा।
  - `api_schema_overrides` (ApiIntegrationWebhookOverrides, optional) — बेस api_schema पर लागू यूज़र ओवरराइड
  - `tool_call_sound` (enum, optional) — tool execution के दौरान चलाने वाला पूर्वनिर्धारित tool call sound type। निर्दिष्ट न होने पर कोई tool call sound नहीं चलेगा।
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
- `type`: `client`
  - `description` (string, required) — टूल का इस्तेमाल कब करना चाहिए और यह क्या करता है, इसका विवरण।
  - `name` (string, required)
  - `assignments` (list of DynamicVariableAssignment, optional) — टूल रिस्पॉन्स से वैल्यू निकालने और उन्हें डायनामिक वेरिएबल को असाइन करने के लिए कॉन्फ़िगरेशन
  - `dynamic_variables` (DynamicVariablesConfig, optional) — डायनामिक वेरिएबल के लिए कॉन्फ़िगरेशन
  - `execution_mode` (enum, optional, default: immediate) — यह तय करता है कि टूल कब और कैसे चले: 'immediate', LLM के अनुरोध पर टूल को तुरंत चलाता है; 'post_tool_speech', एजेंट के बोलना पूरा करने तक इंतज़ार करता है; 'async', बिना ब्लॉक किए टूल को बैकग्राउंड में चलाता है — लंबे समय तक चलने वाले ऑपरेशंस के लिए सबसे अच्छा।
    - Allowed values: `immediate`, `post_tool_speech`, `async`
  - `expects_response` (boolean, optional, default: false) — अगर true है, तो इस टूल को कॉल करने पर बातचीत तब तक रुकेगी जब तक क्लाइंट कोई जवाब नहीं देता, जो llm को भेजा जाता है। अगर false है, तो हम क्लाइंट के जवाब का इंतज़ार किए बिना बातचीत जारी रखेंगे। यह यूज़र को कंटेंट दिखाने के लिए उपयोगी है, बिना बातचीत रोके।
  - `interruption_mode` (enum, optional, default: allow) — यह नियंत्रित करता है कि यूज़र इस टूल कॉल के दौरान एजेंट को बाधित कर सकता है या नहीं। 'allow' (डिफ़ॉल्ट) यूज़र को किसी भी समय बाधित करने देता है, 'disable_during_tool' केवल टूल के चलने के दौरान बाधा को रोकता है और 'disable_during_tool_and_turn' टूल के चलने के दौरान और उसके बाद आने वाले एजेंट रिस्पॉन्स के लिए बाधा को रोकता है।
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `parameters` (ObjectJsonSchemaPropertyOutput, optional) — क्लाइंट को भेजे जाने वाले किसी भी पैरामीटर का स्कीमा
  - `pre_tool_speech` (enum, optional, default: auto) — यह नियंत्रित करता है कि इस टूल को कॉल करने से पहले एजेंट बोले या नहीं। 'auto' (डिफ़ॉल्ट) हाल की टूल लेटेंसी के आधार पर तय करता है, 'force' हमेशा एजेंट को बोलने के लिए कहता है और 'off' लेटेंसी की परवाह किए बिना इसे पूरी तरह बंद कर देता है।
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — टूल कॉल पूरा होने की प्रतीक्षा करने का अधिकतम समय, सेकंड में। यह 1 से 120 सेकंड (दोनों शामिल) के बीच होना चाहिए, या क्लाइंट के जवाब की अनिश्चितकाल तक प्रतीक्षा करने के लिए -1 होना चाहिए (इसके लिए expects_response आवश्यक है)।
  - `tool_call_sound` (enum, optional) — tool execution के दौरान चलाने वाला पूर्वनिर्धारित tool call sound type। निर्दिष्ट न होने पर कोई tool call sound नहीं चलेगा।
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — यह तय करता है कि टूल कॉल की ध्वनि कब बजे। 'auto' केवल तब बजता है जब टूल से पहले स्पीच हो, जबकि 'always' हर टूल कॉल के लिए बजता है।
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — एजेंट के साथ साझा करने से पहले टूल की त्रुटियों को कैसे प्रोसेस किया जाए, यह नियंत्रित करता है। 'auto' टूल के प्रकार के आधार पर हैंडलिंग तय करता है (नेटिव इंटीग्रेशन के लिए सारांशित, दूसरों के लिए छिपाया गया), 'summarized' LLM से जनरेट किया गया सारांश भेजता है, 'passthrough' मूल त्रुटि भेजता है और 'hide' त्रुटि को एजेंट के साथ साझा नहीं करता।
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `interruption_mode` इस्तेमाल करें। true होने पर, इस टूल के चलने के दौरान यूज़र एजेंट को बाधित नहीं कर पाएगा।
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `pre_tool_speech` इस्तेमाल करें। true होने पर, एजेंट टूल कॉल से पहले बोलेगा।
- `type`: `mcp`
  - `value` (any, required)
- `type`: `smb`
  - `value` (any, required)
- `type`: `system`
  - `name` (string, required)
  - `params` (SystemToolConfigOutputParams, required)
  - `assignments` (list of DynamicVariableAssignment, optional) — टूल रिस्पॉन्स से वैल्यू निकालने और उन्हें डायनामिक वेरिएबल को असाइन करने के लिए कॉन्फ़िगरेशन
  - `description` (string, optional, default: ) — टूल का इस्तेमाल कब करना चाहिए और यह क्या करता है, इसका विवरण। उस डिफ़ॉल्ट विवरण का इस्तेमाल करने के लिए इसे खाली छोड़ें जो खास टूल प्रकार के लिए ऑप्टिमाइज़ किया गया है।
  - `interruption_mode` (enum, optional, default: allow) — यह नियंत्रित करता है कि यूज़र इस टूल कॉल के दौरान एजेंट को बाधित कर सकता है या नहीं। 'allow' (डिफ़ॉल्ट) यूज़र को किसी भी समय बाधित करने देता है, 'disable_during_tool' केवल टूल के चलने के दौरान बाधा को रोकता है और 'disable_during_tool_and_turn' टूल के चलने के दौरान और उसके बाद आने वाले एजेंट रिस्पॉन्स के लिए बाधा को रोकता है।
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `pre_tool_speech` (enum, optional, default: auto) — यह नियंत्रित करता है कि इस टूल को कॉल करने से पहले एजेंट बोले या नहीं। 'auto' (डिफ़ॉल्ट) हाल की टूल लेटेंसी के आधार पर तय करता है, 'force' हमेशा एजेंट को बोलने के लिए कहता है और 'off' लेटेंसी की परवाह किए बिना इसे पूरी तरह बंद कर देता है।
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — टूल कॉल के पूरा होने की प्रतीक्षा का अधिकतम समय, सेकंड में।
  - `tool_call_sound` (enum, optional) — tool execution के दौरान चलाने वाला पूर्वनिर्धारित tool call sound type। निर्दिष्ट न होने पर कोई tool call sound नहीं चलेगा।
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — यह तय करता है कि टूल कॉल की ध्वनि कब बजे। 'auto' केवल तब बजता है जब टूल से पहले स्पीच हो, जबकि 'always' हर टूल कॉल के लिए बजता है।
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — एजेंट के साथ साझा करने से पहले टूल की त्रुटियों को कैसे प्रोसेस किया जाए, यह नियंत्रित करता है। 'auto' टूल के प्रकार के आधार पर हैंडलिंग तय करता है (नेटिव इंटीग्रेशन के लिए सारांशित, दूसरों के लिए छिपाया गया), 'summarized' LLM से जनरेट किया गया सारांश भेजता है, 'passthrough' मूल त्रुटि भेजता है और 'hide' त्रुटि को एजेंट के साथ साझा नहीं करता।
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `interruption_mode` इस्तेमाल करें। true होने पर, इस टूल के चलने के दौरान यूज़र एजेंट को बाधित नहीं कर पाएगा।
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `pre_tool_speech` इस्तेमाल करें। true होने पर, एजेंट टूल कॉल से पहले बोलेगा।
- `type`: `webhook`
  - `api_schema` (WebhookToolApiSchemaConfigOutput, required) — आउटगोइंग वेबहुक का स्कीमा, जिसमें पैरामीटर्स और URL विनिर्देशन शामिल हैं
  - `description` (string, required) — टूल का इस्तेमाल कब करना चाहिए और यह क्या करता है, इसका विवरण।
  - `name` (string, required)
  - `assignments` (list of DynamicVariableAssignment, optional) — टूल रिस्पॉन्स से वैल्यू निकालने और उन्हें डायनामिक वेरिएबल को असाइन करने के लिए कॉन्फ़िगरेशन
  - `dynamic_variables` (DynamicVariablesConfig, optional) — डायनामिक वेरिएबल के लिए कॉन्फ़िगरेशन
  - `execution_mode` (enum, optional, default: immediate) — यह तय करता है कि टूल कब और कैसे चले: 'immediate', LLM के अनुरोध पर टूल को तुरंत चलाता है; 'post_tool_speech', एजेंट के बोलना पूरा करने तक इंतज़ार करता है; 'async', बिना ब्लॉक किए टूल को बैकग्राउंड में चलाता है — लंबे समय तक चलने वाले ऑपरेशंस के लिए सबसे अच्छा।
    - Allowed values: `immediate`, `post_tool_speech`, `async`
  - `follow_redirects` (boolean, optional, default: false) — एंडपॉइंट से रीडायरेक्ट को रिज़ॉल्व करके अंतिम रिस्पॉन्स लौटाना है या नहीं। एक रीडायरेक्ट को, रिक्वेस्ट बॉडी के बिना GET के रूप में फ़ॉलो किया जाता है; इस टूल पर कॉन्फ़िगर की गई कोई भी चीज़ (हेडर, ऑथेंटिकेशन, क्लाइंट सर्टिफ़िकेट) रीडायरेक्ट टारगेट को नहीं भेजी जाती। एंडपॉइंट और रीडायरेक्ट टारगेट, दोनों को HTTPS का इस्तेमाल करना चाहिए। API इंटीग्रेशन टूल्स के लिए समर्थित नहीं है।
  - `follow_redirects_allowed_domains` (list of string, optional) — वे डोमेन जिन पर रीडायरेक्ट पॉइंट कर सकता है, जैसे 'test.example.com'। रीडायरेक्ट फ़ॉलो करते समय आवश्यक; सूची के बाहर के टारगेट को अस्वीकार कर दिया जाता है।
  - `interruption_mode` (enum, optional, default: allow) — यह नियंत्रित करता है कि यूज़र इस टूल कॉल के दौरान एजेंट को बाधित कर सकता है या नहीं। 'allow' (डिफ़ॉल्ट) यूज़र को किसी भी समय बाधित करने देता है, 'disable_during_tool' केवल टूल के चलने के दौरान बाधा को रोकता है और 'disable_during_tool_and_turn' टूल के चलने के दौरान और उसके बाद आने वाले एजेंट रिस्पॉन्स के लिए बाधा को रोकता है।
    - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
  - `pre_tool_speech` (enum, optional, default: auto) — यह नियंत्रित करता है कि इस टूल को कॉल करने से पहले एजेंट बोले या नहीं। 'auto' (डिफ़ॉल्ट) हाल की टूल लेटेंसी के आधार पर तय करता है, 'force' हमेशा एजेंट को बोलने के लिए कहता है और 'off' लेटेंसी की परवाह किए बिना इसे पूरी तरह बंद कर देता है।
    - Allowed values: `auto`, `force`, `off`
  - `response_timeout_secs` (integer, optional, default: 20) — टूल कॉल के पूरा होने की प्रतीक्षा का अधिकतम समय, सेकंड में। यह 5 से 300 सेकंड (दोनों सहित) के बीच होना चाहिए।
  - `tool_call_sound` (enum, optional) — tool execution के दौरान चलाने वाला पूर्वनिर्धारित tool call sound type। निर्दिष्ट न होने पर कोई tool call sound नहीं चलेगा।
    - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
  - `tool_call_sound_behavior` (enum, optional, default: auto) — यह तय करता है कि टूल कॉल की ध्वनि कब बजे। 'auto' केवल तब बजता है जब टूल से पहले स्पीच हो, जबकि 'always' हर टूल कॉल के लिए बजता है।
    - Allowed values: `auto`, `always`
  - `tool_error_handling_mode` (enum, optional, default: auto) — एजेंट के साथ साझा करने से पहले टूल की त्रुटियों को कैसे प्रोसेस किया जाए, यह नियंत्रित करता है। 'auto' टूल के प्रकार के आधार पर हैंडलिंग तय करता है (नेटिव इंटीग्रेशन के लिए सारांशित, दूसरों के लिए छिपाया गया), 'summarized' LLM से जनरेट किया गया सारांश भेजता है, 'passthrough' मूल त्रुटि भेजता है और 'hide' त्रुटि को एजेंट के साथ साझा नहीं करता।
    - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
  - `disable_interruptions` (boolean, optional, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `interruption_mode` इस्तेमाल करें। true होने पर, इस टूल के चलने के दौरान यूज़र एजेंट को बाधित नहीं कर पाएगा।
  - `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `pre_tool_speech` इस्तेमाल करें। true होने पर, एजेंट टूल कॉल से पहले बोलेगा।

### ConversationHistoryTranscriptToolCallCommonModelInputToolDetails

- `type`: `api_integration_webhook`
  - `webhook_details` (ConversationHistoryTranscriptToolCallWebhookDetails, required)
  - `credential_id` (string, optional, default: )
  - `integration_connection_id` (string, optional, default: )
  - `integration_id` (string, optional, default: )
- `type`: `client`
  - `parameters` (string, required)
- `type`: `mcp`
  - `approval_policy` (string, required)
  - `integration_type` (string, required)
  - `mcp_server_id` (string, required)
  - `mcp_server_name` (string, required)
  - `mcp_tool_description` (string, optional, default: )
  - `mcp_tool_name` (string, optional, default: )
  - `parameters` (map from string to string, optional)
  - `requires_approval` (boolean, optional, default: false)
- `type`: `webhook`
  - `method` (string, required)
  - `url` (string, required)
  - `body` (string, optional)
  - `headers` (map from string to string, optional)
  - `path_params` (map from string to string, optional)
  - `query_params` (map from string to string, optional)

### ConversationHistoryTranscriptSystemToolResultCommonModelInput

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `tool_has_been_called` (boolean, required)
- `type` ("system", required)
- `is_blocked` (boolean, optional, default: false)
- `tool_latency_secs` (double, optional, default: 0)
- `error_type` (string, optional, default: )
- `raw_error_message` (string, optional, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, optional)
- `result` (ConversationHistoryTranscriptSystemToolResultCommonModelInputResult, optional)

### ConversationHistoryTranscriptApiIntegrationWebhookToolsResultCommonModelInput

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `tool_has_been_called` (boolean, required)
- `type` ("api_integration_webhook", required)
- `is_blocked` (boolean, optional, default: false)
- `tool_latency_secs` (double, optional, default: 0)
- `error_type` (string, optional, default: )
- `raw_error_message` (string, optional, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, optional)
- `integration_id` (string, optional, default: )
- `credential_id` (string, optional, default: )
- `integration_connection_id` (string, optional, default: )

### ConversationHistoryTranscriptWorkflowToolsResultCommonModelInput

- `request_id` (string, required)
- `tool_name` (string, required)
- `result_value` (string, required)
- `is_error` (boolean, required)
- `tool_has_been_called` (boolean, required)
- `type` ("workflow", required)
- `is_blocked` (boolean, optional, default: false)
- `tool_latency_secs` (double, optional, default: 0)
- `error_type` (string, optional, default: )
- `raw_error_message` (string, optional, default: )
- `dynamic_variable_updates` (list of DynamicVariableUpdateCommonModel, optional)
- `result` (WorkflowToolResponseModelInput, optional) — workflow टूल रिस्पॉन्स के लिए एक सामान्य मॉडल।

### ConversationHistoryTranscriptToolCallWebhookDetails

- `method` (string, required)
- `url` (string, required)
- `type` ("webhook", optional)
- `headers` (map from string to string, optional)
- `path_params` (map from string to string, optional)
- `query_params` (map from string to string, optional)
- `body` (string, optional)

### DynamicVariableUpdateCommonModel

टूल निष्पादन के दौरान हुए dynamic variable अपडेट को ट्रैक करता है।

- `variable_name` (string, required)
- `new_value` (string, required)
- `updated_at` (double, required)
- `tool_name` (string, required)
- `tool_request_id` (string, required)
- `old_value` (string, optional)

### ConversationHistoryTranscriptSystemToolResultCommonModelOutputResult

- `result_type`: `dummy`
- `result_type`: `end_call_success`
  - `message` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `end_procedure_error`
  - `message` (string, required)
  - `status` (enum, required)
    - Allowed values: `not_found`, `invalid_id`
  - `procedure_id` (string, optional)
- `result_type`: `end_procedure_success`
  - `procedure_id` (string, required)
  - `procedure_name` (string, required)
  - `message` (string, optional, default: )
  - `status` ("success", optional)
- `result_type`: `knowledge_base_rag_success`
  - `chunk_count` (integer, optional, default: 0) — पुनर्प्राप्त relevant chunks की संख्या
  - `chunks` (list of KnowledgeBaseRagChunkModel, optional) — पाए गए चंक्स; केवल rag-result-in-tool-result मोड में भरे जाते हैं
  - `message` (string, optional, default: Referenced knowledge base.) — खोज नतीजों के बारे में LLM के लिए मानव-पठनीय स्थिति
  - `status` (enum, optional, default: success)
    - Allowed values: `success`, `no_documents`, `no_results`
- `result_type`: `knowledge_base_success`
  - `chunk_count` (integer, optional, default: 0)
  - `message` (string, optional, default: Referenced knowledge base.)
  - `status` (enum, optional, default: success)
    - Allowed values: `success`, `no_matching_documents`, `no_results`
- `result_type`: `language_detection_success`
  - `language` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `play_dtmf_error`
  - `error` (string, required)
  - `details` (string, optional)
  - `status` ("error", optional)
- `result_type`: `play_dtmf_success`
  - `dtmf_tones` (string, required)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `skip_turn_success`
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `start_procedure_error`
  - `message` (string, required)
  - `status` (enum, required)
    - Allowed values: `not_found`, `invalid_name`, `already_active`
  - `procedure_id` (string, optional)
- `result_type`: `start_procedure_success`
  - `procedure_id` (string, required)
  - `procedure_name` (string, required)
  - `message` (string, optional, default: Procedure is now started. Follow its instructions from the <active-procedures> section of your system prompt.)
  - `procedure_entry_workflow_node` (string, optional)
  - `procedure_return_workflow_node` (string, optional)
  - `status` ("success", optional)
- `result_type`: `testing_tool_result`
  - `reason` (string, optional, default: Skipping tool call in test mode)
  - `status` ("success", optional)
- `result_type`: `transfer_to_agent_error`
  - `error` (string, required)
  - `from_agent` (string, required)
  - `status` ("error", optional)
- `result_type`: `transfer_to_agent_success`
  - `condition` (string, required)
  - `from_agent` (string, required)
  - `to_agent` (string, required)
  - `branch_info` (TransferToAgentToolResultSuccessModelOutputBranchInfo, optional)
  - `delay_ms` (integer, optional, default: 0)
  - `enable_transferred_agent_first_message` (boolean, optional, default: false)
  - `preserve_client_tts_overrides` (boolean, optional, default: false)
  - `preserve_voice_settings` (boolean, optional, default: false)
  - `status` ("success", optional)
  - `to_node` (string, optional)
  - `transfer_message` (string, optional)
- `result_type`: `transfer_to_number_amazon_connect_success`
  - `client_message` (string, optional) — सेशन Amazon Connect को वापस सौंपने से पहले कॉलर को सुनाया गया संदेश।
  - `note` (string, optional) — जब एजेंट ने अमान्य विकल्प दोहराया हो और केवल कॉन्फ़िगर किया गया विकल्प इस्तेमाल किया गया हो, तब सेट होता है।
  - `reason` (string, optional) — एजेंट ने एस्केलेट क्यों किया, जैसा Escalate परिणाम के साथ Amazon Connect को भेजा गया।
  - `status` ("success", optional)
- `result_type`: `transfer_to_number_error`
  - `error` (string, required)
  - `details` (string, optional)
  - `status` ("error", optional)
- `result_type`: `transfer_to_number_exotel_success`
  - `transfer_number` (string, required)
  - `agent_message` (string, optional)
  - `note` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `transfer_to_number_sip_success`
  - `transfer_number` (string, required)
  - `note` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `transfer_to_number_twilio_success`
  - `agent_message` (string, required)
  - `conference_name` (string, required)
  - `transfer_number` (string, required)
  - `client_message` (string, optional)
  - `note` (string, optional)
  - `post_dial_digits` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `voicemail_detection_success`
  - `reason` (string, optional)
  - `status` ("success", optional)
  - `voicemail_message` (string, optional)

### WorkflowToolResponseModelOutput

workflow टूल रिस्पॉन्स के लिए एक सामान्य मॉडल।

- `steps` (list of WorkflowToolResponseModelOutputStepsItem, optional)

### LlmTokensCategoryUsage

- `tokens` (integer, optional, default: 0)
- `price` (double, optional, default: 0)

### LiteralJsonSchemaPropertyType

### AllowedValues

- `dynamic_variable` (string, required) — उस डायनामिक वेरिएबल का नाम जिसका मान अनुमत मानों की JSON ऐरे में बदलना चाहिए, जैसे ["ws_alpha", "ws_beta"]। सिस्टम वेरिएबल केवल सूची में बदलने पर काम करते हैं।

### LiteralJsonSchemaPropertyConstantValue

इस प्रॉपर्टी के लिए इस्तेमाल किया जाने वाला स्थिर मान। description, dynamic_variable, is_system_provided और is_omitted के साथ परस्पर अनन्य है।

### SystemToolConfigOutput

सिस्टम टूल वह टूल है जिसका उपयोग सर्वर में सिस्टम मेथड कॉल करने के लिए किया जाता है

- `name` (string, required)
- `params` (SystemToolConfigOutputParams, required)
- `type` ("system", optional) — टूल का टाइप
- `description` (string, optional, default: ) — टूल का इस्तेमाल कब करना चाहिए और यह क्या करता है, इसका विवरण। उस डिफ़ॉल्ट विवरण का इस्तेमाल करने के लिए इसे खाली छोड़ें जो खास टूल प्रकार के लिए ऑप्टिमाइज़ किया गया है।
- `response_timeout_secs` (integer, optional, default: 20) — टूल कॉल के पूरा होने की प्रतीक्षा का अधिकतम समय, सेकंड में।
- `interruption_mode` (enum, optional, default: allow) — यह नियंत्रित करता है कि यूज़र इस टूल कॉल के दौरान एजेंट को बाधित कर सकता है या नहीं। 'allow' (डिफ़ॉल्ट) यूज़र को किसी भी समय बाधित करने देता है, 'disable_during_tool' केवल टूल के चलने के दौरान बाधा को रोकता है और 'disable_during_tool_and_turn' टूल के चलने के दौरान और उसके बाद आने वाले एजेंट रिस्पॉन्स के लिए बाधा को रोकता है।
  - Allowed values: `allow`, `disable_during_tool`, `disable_during_tool_and_turn`
- `pre_tool_speech` (enum, optional, default: auto) — यह नियंत्रित करता है कि इस टूल को कॉल करने से पहले एजेंट बोले या नहीं। 'auto' (डिफ़ॉल्ट) हाल की टूल लेटेंसी के आधार पर तय करता है, 'force' हमेशा एजेंट को बोलने के लिए कहता है और 'off' लेटेंसी की परवाह किए बिना इसे पूरी तरह बंद कर देता है।
  - Allowed values: `auto`, `force`, `off`
- `assignments` (list of DynamicVariableAssignment, optional) — टूल रिस्पॉन्स से वैल्यू निकालने और उन्हें डायनामिक वेरिएबल को असाइन करने के लिए कॉन्फ़िगरेशन
- `tool_call_sound` (enum, optional) — tool execution के दौरान चलाने वाला पूर्वनिर्धारित tool call sound type। निर्दिष्ट न होने पर कोई tool call sound नहीं चलेगा।
  - Allowed values: `typing`, `elevator1`, `elevator2`, `elevator3`, `elevator4`
- `tool_call_sound_behavior` (enum, optional, default: auto) — यह तय करता है कि टूल कॉल की ध्वनि कब बजे। 'auto' केवल तब बजता है जब टूल से पहले स्पीच हो, जबकि 'always' हर टूल कॉल के लिए बजता है।
  - Allowed values: `auto`, `always`
- `tool_error_handling_mode` (enum, optional, default: auto) — एजेंट के साथ साझा करने से पहले टूल की त्रुटियों को कैसे प्रोसेस किया जाए, यह नियंत्रित करता है। 'auto' टूल के प्रकार के आधार पर हैंडलिंग तय करता है (नेटिव इंटीग्रेशन के लिए सारांशित, दूसरों के लिए छिपाया गया), 'summarized' LLM से जनरेट किया गया सारांश भेजता है, 'passthrough' मूल त्रुटि भेजता है और 'hide' त्रुटि को एजेंट के साथ साझा नहीं करता।
  - Allowed values: `auto`, `summarized`, `passthrough`, `hide`
- `disable_interruptions` (boolean, optional, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `interruption_mode` इस्तेमाल करें। true होने पर, इस टूल के चलने के दौरान यूज़र एजेंट को बाधित नहीं कर पाएगा।
- `force_pre_tool_speech` (boolean, optional, default: false, deprecated) — डीप्रिकेटेड: इसके बजाय `pre_tool_speech` इस्तेमाल करें। true होने पर, एजेंट टूल कॉल से पहले बोलेगा।

### CustomLlmApiKey

ऑथेंटिकेशन के लिए API key। या तो वर्कस्पेस सीक्रेट रेफ़रेंस \{'secret\_id': '...'} या एनवायरनमेंट वैरिएबल रेफ़रेंस \{'env\_var\_label': '...'}।

### CustomLlmAuthConnection

authentication के लिए वैकल्पिक workspace auth connection। केवल वे auth connections समर्थित हैं जो Authorization Bearer token बनाते हैं; Basic auth, mTLS, custom header और URL secret auth connections समर्थित नहीं हैं।

### CustomLlmRequestHeadersValue

### KnowledgeBaseToolInfo

- `enabled_strategies` (list of enum, optional) — model के लिए उपलब्ध search strategies। खाली नहीं होनी चाहिए।
  - Allowed values: `cat`, `keyword`, `semantic`, `ls`

### DynamicVariableAssignment

टूल रिस्पॉन्स से वैल्यू निकालने और उन्हें डायनामिक वेरिएबल को असाइन करने के लिए कॉन्फ़िगरेशन।

- `dynamic_variable` (string, required) — निकाली गई वैल्यू असाइन करने के लिए dynamic variable का नाम
- `value_path` (string, required) — सोर्स से मान निकालने के लिए डॉट नोटेशन पाथ (जैसे, 'user.name' या 'data.0.id')
- `source` ("response", optional) — वह स्रोत जिससे वैल्यू निकाली जाएगी। फ़िलहाल केवल 'response' समर्थित है।
- `sanitize` (boolean, optional, default: false) — अगर true है, तो इस असाइनमेंट का मान LLM और ट्रांसक्रिप्ट को भेजने से पहले टूल रिस्पॉन्स से हटा दिया जाएगा, लेकिन वेरिएबल असाइनमेंट के लिए फिर भी प्रोसेस किया जाएगा।
- `preserve_native_type` (boolean, optional, default: false) — अगर true है, तो टूल रिस्पॉन्स से निकाले गए नॉन-स्केलर मानों (सूचियों, ऑब्जेक्ट्स) को JSON स्ट्रिंग में बदलने के बजाय उनके मूल प्रकार में स्टोर किया जाता है। निकाले गए arrays को सीधे सूची dynamic variables के रूप में इस्तेमाल करने के लिए इसे सक्षम करें।

### DynamicVariablesConfig

- `dynamic_variable_placeholders` (map from string to any, optional) — dynamic variable placeholders और उनके मानों का शब्दकोश।

### ApiIntegrationWebhookOverrides

- `schema_overrides` (map from string to ApiIntegrationWebhookOverridesSchemaOverridesValue, optional)
- `response_filter_mode` (enum, optional, default: all) — एजेंट को दिखने से पहले टूल के रिस्पॉन्स को कैसे फ़िल्टर किया जाए, यह नियंत्रित करता है।
  - Allowed values: `all`, `allow`, `hide_all`
- `response_filters` (list of string, optional)
- `request_headers` (map from string to ApiIntegrationWebhookOverridesRequestHeadersValue, optional)

### ObjectJsonSchemaPropertyOutput

- `description` (string, optional, default: )
- `dynamic_variable` (string, optional, default: ) — सेट होने पर, पूरा parameter रनटाइम पर इस dynamic variable से भरा जाता है। यह description (LLM-प्रदत्त मान), constant_value और is_omitted के साथ एक साथ उपयोग नहीं किया जा सकता।
- `constant_value` (map from string to any, optional) — सेट होने पर, पूरा object रनटाइम पर इस स्थिर JSON मान का उपयोग करता है। यह description (LLM-प्रदत्त object), dynamic_variable और is_omitted के साथ एक साथ उपयोग नहीं किया जा सकता।
- `is_omitted` (boolean, optional, default: false) — अगर true है, तो यह पैरामीटर रिक्वेस्ट से पूरी तरह हटा दिया जाएगा। केवल वैकल्पिक पैरामीटर्स के लिए मान्य है। description, dynamic_variable और constant_value के साथ परस्पर अनन्य है।
- `type` ("object", optional)
- `required` (list of string, optional)
- `properties` (map from string to ObjectJsonSchemaPropertyOutputPropertiesValue, optional)
- `required_constraints` (RequiredConstraints, optional) — ज़रूरी फ़ील्ड्स तक सीमित anyOf/allOf कंपोज़िशन कंस्ट्रेंट्स के लिए रैपर।

### SystemToolConfigOutputParams

- `system_tool_type`: `end_call`
- `system_tool_type`: `end_procedure`
  - `procedures` (map from string to EndProcedureToolConfigProceduresValue, optional)
- `system_tool_type`: `knowledge_base`
  - `enabled_strategies` (list of enum, optional)
    - Allowed values: `cat`, `keyword`, `semantic`, `ls`
- `system_tool_type`: `knowledge_base_rag`
- `system_tool_type`: `language_detection`
  - `only_at_conversation_start` (boolean, optional, default: false) — अगर यूज़र के पहले 2 टर्न में भाषा नहीं बदलती, तो बाद के प्रयास विफल होंगे और बातचीत मौजूदा भाषा में रहेगी। अगर उन टर्न के दौरान भाषा बदलती है, तो बाद में भाषा बदलना उपलब्ध रहेगा। गलत भाषा-परिवर्तन की संभावना कम करने के लिए इसे सक्षम करें।
- `system_tool_type`: `play_keypad_touch_tone`
  - `suppress_turn_after_dtmf` (boolean, optional, default: false) — अगर true है, तो DTMF टोन चलाने के बाद एजेंट आगे कोई स्पीच जनरेट नहीं करेगा। इससे एजेंट की स्पीच IVR सिस्टम में बाधा नहीं डालेगी।
  - `use_out_of_band_dtmf` (boolean, optional, default: true) — in-band audio के बजाय DTMF tones को out-of-band RTP events (RFC 4733) के रूप में भेजें। केवल SIP trunk imported numbers के लिए प्रभावी है।
- `system_tool_type`: `skip_turn`
  - `wait_timeout_secs` (double, optional, default: -1) — skip_turn के बाद एजेंट द्वारा संदर्भानुकूल चेक-इन जनरेट करने से पहले प्रतीक्षा के सेकंड। प्रतीक्षा के दौरान "End conversation after silence" टाइमर रुका रहता है। -1 प्रतीक्षा को निष्क्रिय करता है: skip_turn के बाद एजेंट कॉलर के बोलने तक चुप रहता है और वह टाइमर चलता रहता है। केवल वॉइस बातचीत पर लागू होता है।
- `system_tool_type`: `start_procedure`
  - `procedures` (map from string to StartProcedureToolConfigProceduresValue, optional)
- `system_tool_type`: `transfer_to_agent`
  - `transfers` (list of AgentTransferOutput, required)
- `system_tool_type`: `transfer_to_number`
  - `transfers` (list of PhoneNumberTransfer, required)
  - `enable_client_message` (boolean, optional, default: true) — क्या ट्रांसफ़र की प्रतीक्षा के दौरान क्लाइंट को एक मैसेज चलाना है। बैकवर्ड कंपैटिबिलिटी के लिए डिफ़ॉल्ट रूप से true है।
- `system_tool_type`: `voicemail_detection`
  - `voicemail_message` (string, optional) — voicemail का पता चलने पर छोड़ने के लिए वैकल्पिक message। न दिए जाने पर voicemail का पता चलते ही call समाप्त हो जाएगी। dynamic variables समर्थित हैं (जैसे, \{\{system\_\_time}}, \{\{system\_\_call\_duration\_secs}}, \{\{custom\_variable}})।

### WebhookToolApiSchemaConfigOutput

- `url` (string, required) — वह URL जिस पर वेबहुक भेजा जाएगा। इसमें पाथ पैरामीटर शामिल हो सकते हैं, जैसे [https://example.com/agents/\{agent\_id}](https://example.com/agents/\{agent_id})
- `request_headers` (map from string to WebhookToolApiSchemaConfigOutputRequestHeadersValue, optional) — रिक्वेस्ट में शामिल किए जाने वाले हेडर
- `method` (enum, optional, default: GET) — वेबहुक के लिए इस्तेमाल की जाने वाली HTTP विधि
  - Allowed values: `GET`, `POST`, `PUT`, `PATCH`, `DELETE`
- `path_params_schema` (map from string to LiteralJsonSchemaProperty, optional) — यदि कोई path parameters हों, तो उनके लिए स्कीमा। keys को URL के placeholders से मेल खाना चाहिए।
- `query_params_schema` (QueryParamsJsonSchemaOutput, optional) — यदि कोई query params हों, तो उनके लिए स्कीमा। इन्हें URL के अंत में query params के रूप में जोड़ा जाएगा। ध्यान दें: query param में सभी properties literal types की होनी चाहिए
- `request_body_schema` (ObjectJsonSchemaPropertyOutput, optional) — यदि कोई body parameters हों, तो उनके लिए स्कीमा। POST/PATCH/PUT requests के लिए इस्तेमाल होता है। स्कीमा एक object होना चाहिए, जिसे json body के रूप में भेजा जाएगा
- `response_body_schema` (ObjectJsonSchemaPropertyOutput, optional) — अपेक्षित रिस्पॉन्स बॉडी संरचना बताने वाला स्कीमा। केवल डॉक्यूमेंटेशन के लिए; LLM को नहीं दिखाया जाता।
- `response_filter` (ResponseFilter, optional) — LLM के देखने से पहले response पर लागू होने वाला वैकल्पिक allow-list filter, ताकि बड़े responses context को प्रभावित न करें। डिफ़ॉल्ट रूप से पूरा response होता है।
- `content_type` (enum, optional, default: application/json) — रिक्वेस्ट बॉडी के लिए कॉन्टेंट टाइप। केवल POST/PUT/PATCH रिक्वेस्ट पर लागू होता है।
  - Allowed values: `application/json`, `application/x-www-form-urlencoded`
- `auth_resolved_params` (list of string, optional) — path_params_schema के बजाय auth कनेक्शन से रिज़ॉल्व किए गए URL प्लेसहोल्डर (जैसे UrlSecretAuthConnection से डाले गए secrets)।
- `auth_connection` (WebhookToolApiSchemaConfigOutputAuthConnection, optional) — इस webhook के साथ authentication के लिए इस्तेमाल होने वाला वैकल्पिक auth connection

### ConversationHistoryTranscriptSystemToolResultCommonModelInputResult

- `result_type`: `dummy`
- `result_type`: `end_call_success`
  - `message` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `end_procedure_error`
  - `message` (string, required)
  - `status` (enum, required)
    - Allowed values: `not_found`, `invalid_id`
  - `procedure_id` (string, optional)
- `result_type`: `end_procedure_success`
  - `procedure_id` (string, required)
  - `procedure_name` (string, required)
  - `message` (string, optional, default: )
  - `status` ("success", optional)
- `result_type`: `knowledge_base_rag_success`
  - `chunk_count` (integer, optional, default: 0) — पुनर्प्राप्त relevant chunks की संख्या
  - `chunks` (list of KnowledgeBaseRagChunkModel, optional) — पाए गए चंक्स; केवल rag-result-in-tool-result मोड में भरे जाते हैं
  - `message` (string, optional, default: Referenced knowledge base.) — खोज नतीजों के बारे में LLM के लिए मानव-पठनीय स्थिति
  - `status` (enum, optional, default: success)
    - Allowed values: `success`, `no_documents`, `no_results`
- `result_type`: `knowledge_base_success`
  - `chunk_count` (integer, optional, default: 0)
  - `message` (string, optional, default: Referenced knowledge base.)
  - `status` (enum, optional, default: success)
    - Allowed values: `success`, `no_matching_documents`, `no_results`
- `result_type`: `language_detection_success`
  - `language` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `play_dtmf_error`
  - `error` (string, required)
  - `details` (string, optional)
  - `status` ("error", optional)
- `result_type`: `play_dtmf_success`
  - `dtmf_tones` (string, required)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `skip_turn_success`
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `start_procedure_error`
  - `message` (string, required)
  - `status` (enum, required)
    - Allowed values: `not_found`, `invalid_name`, `already_active`
  - `procedure_id` (string, optional)
- `result_type`: `start_procedure_success`
  - `procedure_id` (string, required)
  - `procedure_name` (string, required)
  - `message` (string, optional, default: Procedure is now started. Follow its instructions from the <active-procedures> section of your system prompt.)
  - `procedure_entry_workflow_node` (string, optional)
  - `procedure_return_workflow_node` (string, optional)
  - `status` ("success", optional)
- `result_type`: `testing_tool_result`
  - `reason` (string, optional, default: Skipping tool call in test mode)
  - `status` ("success", optional)
- `result_type`: `transfer_to_agent_error`
  - `error` (string, required)
  - `from_agent` (string, required)
  - `status` ("error", optional)
- `result_type`: `transfer_to_agent_success`
  - `condition` (string, required)
  - `from_agent` (string, required)
  - `to_agent` (string, required)
  - `branch_info` (TransferToAgentToolResultSuccessModelInputBranchInfo, optional)
  - `delay_ms` (integer, optional, default: 0)
  - `enable_transferred_agent_first_message` (boolean, optional, default: false)
  - `preserve_client_tts_overrides` (boolean, optional, default: false)
  - `preserve_voice_settings` (boolean, optional, default: false)
  - `status` ("success", optional)
  - `to_node` (string, optional)
  - `transfer_message` (string, optional)
- `result_type`: `transfer_to_number_amazon_connect_success`
  - `client_message` (string, optional) — सेशन Amazon Connect को वापस सौंपने से पहले कॉलर को सुनाया गया संदेश।
  - `note` (string, optional) — जब एजेंट ने अमान्य विकल्प दोहराया हो और केवल कॉन्फ़िगर किया गया विकल्प इस्तेमाल किया गया हो, तब सेट होता है।
  - `reason` (string, optional) — एजेंट ने एस्केलेट क्यों किया, जैसा Escalate परिणाम के साथ Amazon Connect को भेजा गया।
  - `status` ("success", optional)
- `result_type`: `transfer_to_number_error`
  - `error` (string, required)
  - `details` (string, optional)
  - `status` ("error", optional)
- `result_type`: `transfer_to_number_exotel_success`
  - `transfer_number` (string, required)
  - `agent_message` (string, optional)
  - `note` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `transfer_to_number_sip_success`
  - `transfer_number` (string, required)
  - `note` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `transfer_to_number_twilio_success`
  - `agent_message` (string, required)
  - `conference_name` (string, required)
  - `transfer_number` (string, required)
  - `client_message` (string, optional)
  - `note` (string, optional)
  - `post_dial_digits` (string, optional)
  - `reason` (string, optional)
  - `status` ("success", optional)
- `result_type`: `voicemail_detection_success`
  - `reason` (string, optional)
  - `status` ("success", optional)
  - `voicemail_message` (string, optional)

### WorkflowToolResponseModelInput

workflow टूल रिस्पॉन्स के लिए एक सामान्य मॉडल।

- `steps` (list of WorkflowToolResponseModelInputStepsItem, optional)

### KnowledgeBaseRagChunkModel

- `chunk_id` (string, required)
- `document_id` (string, required)
- `content` (string, required)

### TransferToAgentToolResultSuccessModelOutputBranchInfo

- `branch_reason`: `configured`
  - `branch_id` (string, required)
- `branch_reason`: `defaulting_to_main`
  - `branch_id` (string, required)
- `branch_reason`: `traffic_split`
  - `branch_id` (string, required)
  - `traffic_percentage` (double, required)

### WorkflowToolResponseModelOutputStepsItem

- `type`: `edge`
  - `edge_id` (string, required)
  - `step_latency_secs` (double, required)
  - `target_node_id` (string, required)
- `type`: `max_iterations_exceeded`
  - `max_iterations` (integer, required)
  - `step_latency_secs` (double, required)
- `type`: `nested_tools`
  - `is_successful` (boolean, required)
  - `node_id` (string, required)
  - `requests` (list of ConversationHistoryTranscriptToolCallCommonModelOutput, required)
  - `results` (list of WorkflowToolNestedToolsStepModelOutputResultsItem, required)
  - `step_latency_secs` (double, required)

### ConvAiSecretLocator

एजेंट के secret store में मौजूद secret को रेफ़र करने के लिए इस्तेमाल होता है।

- `secret_id` (string, required)

### ConvAiEnvVarLocator

लेबल से environment variable को रेफ़र करने के लिए इस्तेमाल होता है।

- `env_var_label` (string, required)

### AuthConnectionLocator

वर्कस्पेस के auth कनेक्शन store से auth कनेक्शन को रेफ़र करने के लिए इस्तेमाल होता है।

- `auth_connection_id` (string, required)

### EnvironmentAuthConnectionLocator

लेबल के ज़रिए 'auth_connection' टाइप के environment variable को रेफ़र करता है। रनटाइम पर, मौजूदा environment के लिए auth connection निर्धारित करता है, और न मिलने पर default environment इस्तेमाल करता है।

- `env_var_label` (string, required)

### ConvAiDynamicVariable

डायनामिक वेरिएबल को रेफ़र करने के लिए इस्तेमाल होता है।

- `variable_name` (string, required)

### ApiIntegrationWebhookOverridesSchemaOverridesValue

- `source`: `constant`
  - `constant_value` (ConstantSchemaOverrideConstantValue, optional) — इस्तेमाल किया जाने वाला कॉन्स्टेंट मान
- `source`: `dynamic_variable`
  - `dynamic_variable` (string, required) — इस्तेमाल किए जाने वाले dynamic variable का नाम
- `source`: `llm`
  - `prompt` (string, optional) — LLM के लिए प्रॉम्प्ट ओवरराइड। न देने पर, मूल schema विवरण इस्तेमाल किया जाता है।
- `source`: `omit`

### ApiIntegrationWebhookOverridesRequestHeadersValue

### ObjectJsonSchemaPropertyOutputPropertiesValue

### RequiredConstraints

ज़रूरी फ़ील्ड्स तक सीमित anyOf/allOf कंपोज़िशन कंस्ट्रेंट्स के लिए रैपर।

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

### EndProcedureToolConfigProceduresValue

### StartProcedureToolConfigProceduresValue

### AgentTransferOutput

- `condition` (string, required)
- `agent_id` (string, optional)
- `branch_id` (string, optional)
- `node_id` (string, optional)
- `delay_ms` (integer, optional, default: 0)
- `transfer_message` (string, optional)
- `enable_transferred_agent_first_message` (boolean, optional, default: false)
- `is_workflow_node_transfer` (boolean, optional, default: false)
- `preserve_client_tts_overrides` (boolean, optional, default: false) — तय करता है कि TTS क्लाइंट ओवरराइड्स को ट्रांसफ़र किए गए एजेंट पर लागू रखा जाए या नहीं।
- `preserve_voice_settings` (boolean, optional, default: false) — निर्धारित करता है कि बेस वॉइस, TTS मॉडल और वॉइस सेटिंग्स ट्रांसफ़र किए गए एजेंट में ले जानी चाहिए या नहीं।

### PhoneNumberTransfer

- `transfer_destination` (PhoneNumberTransferTransferDestination, required)
- `condition` (string, required)
- `custom_sip_headers` (list of PhoneNumberTransferCustomSipHeadersItem, optional) — कॉल ट्रांसफ़र करते समय शामिल किए जाने वाले कस्टम SIP हेडर। हर हेडर स्टैटिक वैल्यू या डायनेमिक वेरिएबल रेफ़रेंस हो सकता है।
- `transfer_type` (enum, optional, default: conference)
  - Allowed values: `blind`, `conference`, `sip_refer`
- `sip_refer_play_dialtone` (boolean, optional, default: true) — True होने पर, SIP REFER ट्रांसफ़र पूरा होने तक मूल कॉल लेग पर रिंगिंग टोन बजती है। टोन RTP के ज़रिए REFER निष्पादित करने वाले SIP peer तक भेजी जाती है, इसलिए अगर रिसीविंग सिस्टम (जैसे SBC या कॉन्टैक्ट सेंटर) को यह नहीं सुननी चाहिए तो इसे बंद करें। बंद होने पर, ट्रांसफ़र पूरा होने तक कॉलर को सन्नाटा सुनाई देता है। केवल SIP REFER ट्रांसफ़र के लिए।
- `uui` (UuiTransferConfig, optional) — SIP REFER ट्रांसफ़र के साथ अटैच करने के लिए User-to-User Information (RFC 7433)। यह ट्रांसफ़र सीमा के पार CRM आइडेंटिफ़ायर या एस्केलेशन कारण जैसे कॉल कॉन्टेक्स्ट को ले जाता है।
- `post_dial_digits` (PhoneNumberTransferPostDialDigits, optional) — कॉल कनेक्ट होने के बाद भेजे जाने वाले DTMF अंक (जैसे, एक्सटेंशन के लिए 'ww1234')। यह स्थिर मान या डायनामिक वेरिएबल रेफ़रेंस हो सकता है। 0.5 सेकंड के पॉज़ के लिए 'w' का इस्तेमाल करें। केवल Twilio ट्रांसफ़र के लिए सपोर्टेड है।
- `phone_number` (string, optional, deprecated)

### WebhookToolApiSchemaConfigOutputRequestHeadersValue

### QueryParamsJsonSchemaOutput

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

### ResponseFilter

टूल रिस्पॉन्स को एजेंट के लिए दिखने से पहले फ़िल्टर करने की कॉन्फ़िगरेशन।

- `mode` (enum, optional, default: all) — टूल के रिस्पॉन्स को कैसे फ़िल्टर किया जाए, यह नियंत्रित करता है। 'all' पूरा रिस्पॉन्स लौटाता है, 'allow' सिर्फ़ तय किए गए पथ लौटाता है और 'hide_all' पूरा रिस्पॉन्स छिपा देता है।
  - Allowed values: `all`, `allow`, `hide_all`
- `filters` (list of string, optional) — मोड 'allow' होने पर शामिल किए जाने वाले डॉट नोटेशन पाथ (जैसे, ['ticket.id', 'ticket.status'])।
- `content_type` ("application/json", optional) — रिस्पॉन्स फ़िल्टरिंग के लिए कॉन्टेंट टाइप। केवल 'application/json' रिस्पॉन्स फ़िल्टर किए जाते हैं।

### WebhookToolApiSchemaConfigOutputAuthConnection

इस webhook के साथ authentication के लिए इस्तेमाल होने वाला वैकल्पिक auth connection

### TransferToAgentToolResultSuccessModelInputBranchInfo

- `branch_reason`: `configured`
  - `branch_id` (string, required)
- `branch_reason`: `defaulting_to_main`
  - `branch_id` (string, required)
- `branch_reason`: `traffic_split`
  - `branch_id` (string, required)
  - `traffic_percentage` (double, required)

### WorkflowToolResponseModelInputStepsItem

- `type`: `edge`
  - `edge_id` (string, required)
  - `step_latency_secs` (double, required)
  - `target_node_id` (string, required)
- `type`: `max_iterations_exceeded`
  - `max_iterations` (integer, required)
  - `step_latency_secs` (double, required)
- `type`: `nested_tools`
  - `is_successful` (boolean, required)
  - `node_id` (string, required)
  - `requests` (list of ConversationHistoryTranscriptToolCallCommonModelInput, required)
  - `results` (list of WorkflowToolNestedToolsStepModelInputResultsItem, required)
  - `step_latency_secs` (double, required)

### WorkflowToolNestedToolsStepModelOutputResultsItem

### ConstantSchemaOverrideConstantValue

इस्तेमाल किया जाने वाला कॉन्स्टेंट मान

### ArrayJsonSchemaPropertyOutput

- `description` (string, optional, default: )
- `dynamic_variable` (string, optional, default: ) — सेट होने पर, पूरा parameter रनटाइम पर इस dynamic variable से भरा जाता है। यह description (LLM-प्रदत्त मान), constant_value और is_omitted के साथ एक साथ उपयोग नहीं किया जा सकता।
- `constant_value` (list of any, optional) — सेट होने पर, पूरा array रनटाइम पर इस स्थिर मान का उपयोग करता है। यह description (LLM-प्रदत्त array), dynamic_variable और is_omitted के साथ एक साथ उपयोग नहीं किया जा सकता।
- `is_omitted` (boolean, optional, default: false) — अगर true है, तो यह पैरामीटर रिक्वेस्ट से पूरी तरह हटा दिया जाएगा। केवल वैकल्पिक पैरामीटर्स के लिए मान्य है। description, dynamic_variable और constant_value के साथ परस्पर अनन्य है।
- `type` ("array", optional)
- `items` (ArrayJsonSchemaPropertyOutputItems, optional) — array elements के लिए स्कीमा।

### RequiredConstraint

फ़ील्ड्स का एक सेट, जिन सभी का मौजूद होना इस बाध्यता को पूरा करने के लिए ज़रूरी है।

- `required` (list of string, required)

### ProcedureVersionRef

- `procedure_id` (string, required) — Procedure ID
- `version_id` (string, required) — procedure वर्ज़न की वर्ज़न ID।

### ProcedureDraftRef

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

### PhoneNumberTransferTransferDestination

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

### PhoneNumberTransferCustomSipHeadersItem

- `type`: `dynamic`
  - `key` (string, required) — SIP हेडर का नाम (जैसे, 'X-Customer-ID')
  - `value` (string, required) — रिज़ॉल्व किए जाने वाले डायनामिक वेरिएबल का नाम
- `type`: `static`
  - `key` (string, required) — SIP हेडर का नाम (जैसे, 'X-Customer-ID')
  - `value` (string, required) — हेडर वैल्यू

### UuiTransferConfig

SIP REFER ट्रांसफ़र के लिए User-to-User Information envelope (RFC 7433)। आउटबाउंड payloads hex-encoded होते हैं (RFC 7433 में परिभाषित एकमात्र encoding)। protocol discriminator axis की मदद से हर प्लेटफ़ॉर्म के फ़ॉर्मैट (Talkdesk, Genesys, ...) बिखरे हुए ट्रांसफ़र फ़्लैग्स की जगह कॉन्फ़िगरेशन से व्यक्त किए जा सकते हैं। अतिरिक्त axes (ASCII encoding, header name, purpose/content parameters) को ट्रांसफ़र मॉडल में बदलाव किए बिना यहां जोड़ा जा सकता है।

- `data` (string, required) — SIP REFER ट्रांसफ़र पर भेजने के लिए UUI payload। इनलाइन डायनामिक वेरिएबल समर्थित हैं और ट्रांसफ़र के समय इसे hex-encoded किया जाता है।
- `protocol_discriminator` (string, optional) — वैकल्पिक one-octet protocol discriminator (दो hex digits, जैसे '00')। Genesys Cloud जैसे platforms के लिए आवश्यक है, जो अन्यथा payload का पहला octet हटा देते हैं। bare hex payload अपेक्षित करने वाले Talkdesk जैसे platforms के लिए इसे सेट न करें।
- `protocol_discriminator_mode` (enum, optional, default: prefix) — protocol\_discriminator कैसे अटैच करना है। 'prefix' ऑक्टेट को hex पेलोड के आगे जोड़ता है (User-to-User=XX\<hex>;encoding=hex)। 'pd\_parameter' इसे अलग पैरामीटर के रूप में भेजता है (User-to-User=\<hex>;pd=XX;encoding=hex)। protocol\_discriminator सेट न होने पर इसे अनदेखा किया जाता है।
  - Allowed values: `prefix`, `pd_parameter`

### PhoneNumberTransferPostDialDigits

- `type`: `dynamic`
  - `value` (string, required) — रिज़ॉल्व किए जाने वाले डायनामिक वेरिएबल का नाम
- `type`: `static`
  - `value` (string, required) — कॉल कनेक्ट होने के बाद भेजे जाने वाले DTMF अंक (जैसे, एक्सटेंशन के लिए 'ww1234')

### WorkflowToolNestedToolsStepModelInputResultsItem

### ArrayJsonSchemaPropertyOutputItems

array elements के लिए स्कीमा।

## Examples

**Request**

```json
{
  "simulation_specification": {
    "simulated_user_config": {
      "first_message": "Hello, how can I help you today?",
      "language": "en",
      "disable_first_message_interruptions": false
    }
  }
}
```

**Response**

```json
{
  "simulated_conversation": [
    {
      "role": "user",
      "time_in_call_secs": 1,
      "agent_metadata": {
        "agent_id": "agent_id"
      },
      "message": "message",
      "multivoice_message": {
        "parts": [
          {
            "text": "text",
            "voice_label": null,
            "time_in_call_secs": null
          }
        ]
      },
      "tool_calls": [
        {
          "request_id": "request_id",
          "tool_name": "tool_name",
          "params_as_json": "params_as_json",
          "tool_has_been_called": true
        }
      ],
      "tool_results": [
        {
          "is_error": true,
          "request_id": "request_id",
          "result_value": "result_value",
          "tool_has_been_called": true,
          "tool_name": "tool_name"
        }
      ],
      "feedback": {
        "score": "like",
        "time_in_call_secs": 1
      },
      "llm_override": "llm_override",
      "producing_llm": "producing_llm",
      "rag_retrieval_info": {
        "chunks": [
          {
            "document_id": "document_id",
            "chunk_id": "chunk_id",
            "vector_distance": 1.1
          }
        ],
        "embedding_model": "e5_mistral_7b_instruct",
        "retrieval_query": "retrieval_query",
        "rag_latency_secs": 1.1
      },
      "interrupted": true,
      "ignored_as_backchannel": true,
      "platform_event": "user_turn_timeout",
      "original_message": "original_message",
      "reasoning": [
        {}
      ],
      "source_medium": "audio",
      "source_event_id": 1,
      "used_static_kb_document_ids": [
        "used_static_kb_document_ids"
      ],
      "user_identifier": "user_identifier",
      "id": "id",
      "triggered_guardrails": [
        {
          "guardrail_type": "custom"
        }
      ],
      "file_input": {
        "file_id": "file_id",
        "original_filename": "original_filename",
        "mime_type": "mime_type",
        "file_url": "file_url"
      },
      "file_inputs": [
        {
          "file_id": "file_id",
          "original_filename": "original_filename",
          "mime_type": "mime_type",
          "file_url": "file_url"
        }
      ],
      "contextual_update_info": {
        "context_id": "context_id"
      },
      "reasoned": true
    }
  ],
  "analysis": {
    "call_successful": "success",
    "transcript_summary": "transcript_summary",
    "evaluation_criteria_results": {
      "key": {
        "criteria_id": "criteria_id",
        "result": "success",
        "rationale": "rationale"
      }
    },
    "data_collection_results": {
      "key": {
        "data_collection_id": "data_collection_id",
        "rationale": "rationale",
        "json_schema": {
          "type": "string",
          "description": "A user-provided message"
        }
      }
    },
    "evaluation_criteria_results_list": [
      {
        "criteria_id": "criteria_id",
        "result": "success",
        "rationale": "rationale"
      }
    ],
    "data_collection_results_list": [
      {
        "data_collection_id": "data_collection_id",
        "rationale": "rationale",
        "json_schema": {
          "type": "string",
          "description": "A user-provided message"
        }
      }
    ],
    "call_success_score": 1.1,
    "call_summary_title": "call_summary_title",
    "scoped": [
      {
        "scope": "conversation",
        "source_agent_id": "source_agent_id",
        "successful": "success"
      }
    ]
  }
}
```

**SDK Code**

```python
import requests

url = "https://api.elevenlabs.io/v1/convai/agents/agent_3701k3ttaq12ewp8b7qv5rfyszkz/simulate-conversation"

payload = { "simulation_specification": { "simulated_user_config": {
            "first_message": "Hello, how can I help you today?",
            "language": "en",
            "disable_first_message_interruptions": False
        } } }
headers = {"Content-Type": "application/json"}

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

print(response.json())
```

```javascript
const url = 'https://api.elevenlabs.io/v1/convai/agents/agent_3701k3ttaq12ewp8b7qv5rfyszkz/simulate-conversation';
const options = {
  method: 'POST',
  headers: {'Content-Type': 'application/json'},
  body: '{"simulation_specification":{"simulated_user_config":{"first_message":"Hello, how can I help you today?","language":"en","disable_first_message_interruptions":false}}}'
};

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

```go
package main

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

func main() {

	url := "https://api.elevenlabs.io/v1/convai/agents/agent_3701k3ttaq12ewp8b7qv5rfyszkz/simulate-conversation"

	payload := strings.NewReader("{\n  \"simulation_specification\": {\n    \"simulated_user_config\": {\n      \"first_message\": \"Hello, how can I help you today?\",\n      \"language\": \"en\",\n      \"disable_first_message_interruptions\": false\n    }\n  }\n}")

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

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

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

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

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

}
```

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

url = URI("https://api.elevenlabs.io/v1/convai/agents/agent_3701k3ttaq12ewp8b7qv5rfyszkz/simulate-conversation")

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

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n  \"simulation_specification\": {\n    \"simulated_user_config\": {\n      \"first_message\": \"Hello, how can I help you today?\",\n      \"language\": \"en\",\n      \"disable_first_message_interruptions\": false\n    }\n  }\n}"

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

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

HttpResponse<String> response = Unirest.post("https://api.elevenlabs.io/v1/convai/agents/agent_3701k3ttaq12ewp8b7qv5rfyszkz/simulate-conversation")
  .header("Content-Type", "application/json")
  .body("{\n  \"simulation_specification\": {\n    \"simulated_user_config\": {\n      \"first_message\": \"Hello, how can I help you today?\",\n      \"language\": \"en\",\n      \"disable_first_message_interruptions\": false\n    }\n  }\n}")
  .asString();
```

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

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://api.elevenlabs.io/v1/convai/agents/agent_3701k3ttaq12ewp8b7qv5rfyszkz/simulate-conversation', [
  'body' => '{
  "simulation_specification": {
    "simulated_user_config": {
      "first_message": "Hello, how can I help you today?",
      "language": "en",
      "disable_first_message_interruptions": false
    }
  }
}',
  'headers' => [
    'Content-Type' => 'application/json',
  ],
]);

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

```csharp
using RestSharp;

var client = new RestClient("https://api.elevenlabs.io/v1/convai/agents/agent_3701k3ttaq12ewp8b7qv5rfyszkz/simulate-conversation");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"simulation_specification\": {\n    \"simulated_user_config\": {\n      \"first_message\": \"Hello, how can I help you today?\",\n      \"language\": \"en\",\n      \"disable_first_message_interruptions\": false\n    }\n  }\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = ["Content-Type": "application/json"]
let parameters = ["simulation_specification": ["simulated_user_config": [
      "first_message": "Hello, how can I help you today?",
      "language": "en",
      "disable_first_message_interruptions": false
    ]]] as [String : Any]

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

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

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

dataTask.resume()
```