@retell-ai/mcp-server 5.22.0 → 5.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -54,7 +54,7 @@ const EMBEDDED_METHODS = [
54
54
  params: [
55
55
  'from_number: string;',
56
56
  'to_number: string;',
57
- "agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; };",
57
+ "agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; };",
58
58
  'custom_sip_headers?: object;',
59
59
  'ignore_e164_validation?: boolean;',
60
60
  'metadata?: object;',
@@ -63,7 +63,7 @@ const EMBEDDED_METHODS = [
63
63
  'retell_llm_dynamic_variables?: object;',
64
64
  ],
65
65
  response: 'object',
66
- markdown: "## create-phone-call\n\n`client.call.createPhoneCall(from_number: string, to_number: string, agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: object; custom_stt_config?: object; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: object; handbook_config?: object; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: object; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: object; post_call_analysis_data?: object | object | object | object | object[]; post_call_analysis_model?: string; pronunciation_dictionary?: object[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: object | object | object; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: object; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: object; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: object; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }, custom_sip_headers?: object, ignore_e164_validation?: boolean, metadata?: object, override_agent_id?: string, override_agent_version?: number | string, retell_llm_dynamic_variables?: object): { agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: object; call_cost?: object; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: object; llm_token_usage?: object; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: object | object | object | object | object[]; start_timestamp?: number; telephony_identifier?: object; transcript?: string; transcript_object?: object[]; transcript_with_tool_calls?: object | object | object | object | object[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n**post** `/v2/create-phone-call`\n\nCreate a new outbound phone call\n\n### Parameters\n\n- `from_number: string`\n The number you own in E.164 format. Must be a number purchased from Retell or imported to Retell.\n\n- `to_number: string`\n The number you want to call, in E.164 format. If using a number purchased from Retell, only US numbers are supported as destination.\n\n- `agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }`\n For this particular call, override agent configuration with these settings. This allows you to customize agent behavior for individual calls without modifying the base agent.\n - `agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }`\n Override agent configuration settings. Any properties specified here will override the base agent configuration for this call.\n - `conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override conversation flow configuration settings. Only applicable when using conversation flow as the response engine. Supported attributes - model_choice, model_temperature, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms.\n - `retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override Retell LLM configuration settings. Only applicable when using Retell LLM as the response engine. Supported attributes - model, s2s_model, model_temperature, model_high_priority, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms, begin_message.\n\n- `custom_sip_headers?: object`\n Add optional custom SIP headers to the call.\n\n- `ignore_e164_validation?: boolean`\n If true, the e.164 validation will be ignored for the from_number. This can be useful when you want to dial to internal pseudo numbers. This only applies when you are using custom telephony and does not apply when you are using Retell Telephony. If omitted, the default value is false.\n\n- `metadata?: object`\n An arbitrary object for storage purpose only. You can put anything here like your internal customer id associated with the call. Not used for processing. You can later get this field from the call object.\n\n- `override_agent_id?: string`\n For this particular call, override the agent used with this agent id. This does not bind the agent to this number, this is for one time override.\n\n- `override_agent_version?: number | string`\n For this particular call, override the agent version used with this version. This does not bind the agent version to this number, this is for one time override.\n\n- `retell_llm_dynamic_variables?: object`\n Add optional dynamic variables in key value pairs of string that injects into your Response Engine prompt and tool description. Only applicable for Response Engine.\n\n### Returns\n\n- `{ agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; start_timestamp?: number; telephony_identifier?: { twilio_call_sid?: string; }; transcript?: string; transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]; transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n - `agent_id: string`\n - `agent_version: number`\n - `call_id: string`\n - `call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'`\n - `call_type: 'phone_call'`\n - `direction: 'inbound' | 'outbound'`\n - `from_number: string`\n - `to_number: string`\n - `agent_name?: string`\n - `call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }`\n - `call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }`\n - `collected_dynamic_variables?: object`\n - `custom_sip_headers?: object`\n - `data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'`\n - `disconnection_reason?: string`\n - `duration_ms?: number`\n - `end_timestamp?: number`\n - `knowledge_base_retrieved_contents_url?: string`\n - `latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }`\n - `llm_token_usage?: { average: number; num_requests: number; values: number[]; }`\n - `metadata?: object`\n - `opt_in_signed_url?: boolean`\n - `public_log_url?: string`\n - `recording_multi_channel_url?: string`\n - `recording_url?: string`\n - `retell_llm_dynamic_variables?: object`\n - `scrubbed_recording_multi_channel_url?: string`\n - `scrubbed_recording_url?: string`\n - `scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `start_timestamp?: number`\n - `telephony_identifier?: { twilio_call_sid?: string; }`\n - `transcript?: string`\n - `transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]`\n - `transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `transfer_destination?: string`\n - `transfer_end_timestamp?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst phoneCallResponse = await client.call.createPhoneCall({ from_number: '+14157774444', to_number: '+12137774445' });\n\nconsole.log(phoneCallResponse);\n```",
66
+ markdown: "## create-phone-call\n\n`client.call.createPhoneCall(from_number: string, to_number: string, agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: object; custom_stt_config?: object; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: object; handbook_config?: object; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: object; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: object; post_call_analysis_data?: object | object | object | object | object[]; post_call_analysis_model?: string; pronunciation_dictionary?: object[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: object | object | object; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: object; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: object; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: object; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }, custom_sip_headers?: object, ignore_e164_validation?: boolean, metadata?: object, override_agent_id?: string, override_agent_version?: number | string, retell_llm_dynamic_variables?: object): { agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: object; call_cost?: object; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: object; llm_token_usage?: object; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: object | object | object | object | object[]; start_timestamp?: number; telephony_identifier?: object; transcript?: string; transcript_object?: object[]; transcript_with_tool_calls?: object | object | object | object | object[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n**post** `/v2/create-phone-call`\n\nCreate a new outbound phone call\n\n### Parameters\n\n- `from_number: string`\n The number you own in E.164 format. Must be a number purchased from Retell or imported to Retell.\n\n- `to_number: string`\n The number you want to call, in E.164 format. If using a number purchased from Retell, only US numbers are supported as destination.\n\n- `agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }`\n For this particular call, override agent configuration with these settings. This allows you to customize agent behavior for individual calls without modifying the base agent.\n - `agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }`\n Override agent configuration settings. Any properties specified here will override the base agent configuration for this call.\n - `conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override conversation flow configuration settings. Only applicable when using conversation flow as the response engine. Supported attributes - model_choice, model_temperature, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms.\n - `retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override Retell LLM configuration settings. Only applicable when using Retell LLM as the response engine. Supported attributes - model, s2s_model, model_temperature, model_high_priority, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms, begin_message.\n\n- `custom_sip_headers?: object`\n Add optional custom SIP headers to the call.\n\n- `ignore_e164_validation?: boolean`\n If true, the e.164 validation will be ignored for the from_number. This can be useful when you want to dial to internal pseudo numbers. This only applies when you are using custom telephony and does not apply when you are using Retell Telephony. If omitted, the default value is false.\n\n- `metadata?: object`\n An arbitrary object for storage purpose only. You can put anything here like your internal customer id associated with the call. Not used for processing. You can later get this field from the call object.\n\n- `override_agent_id?: string`\n For this particular call, override the agent used with this agent id. This does not bind the agent to this number, this is for one time override.\n\n- `override_agent_version?: number | string`\n For this particular call, override the agent version used with this version. This does not bind the agent version to this number, this is for one time override.\n\n- `retell_llm_dynamic_variables?: object`\n Add optional dynamic variables in key value pairs of string that injects into your Response Engine prompt and tool description. Only applicable for Response Engine.\n\n### Returns\n\n- `{ agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; start_timestamp?: number; telephony_identifier?: { twilio_call_sid?: string; }; transcript?: string; transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]; transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n - `agent_id: string`\n - `agent_version: number`\n - `call_id: string`\n - `call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'`\n - `call_type: 'phone_call'`\n - `direction: 'inbound' | 'outbound'`\n - `from_number: string`\n - `to_number: string`\n - `agent_name?: string`\n - `call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }`\n - `call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }`\n - `collected_dynamic_variables?: object`\n - `custom_sip_headers?: object`\n - `data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'`\n - `disconnection_reason?: string`\n - `duration_ms?: number`\n - `end_timestamp?: number`\n - `knowledge_base_retrieved_contents_url?: string`\n - `latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }`\n - `llm_token_usage?: { average: number; num_requests: number; values: number[]; }`\n - `metadata?: object`\n - `opt_in_signed_url?: boolean`\n - `public_log_url?: string`\n - `recording_multi_channel_url?: string`\n - `recording_url?: string`\n - `retell_llm_dynamic_variables?: object`\n - `scrubbed_recording_multi_channel_url?: string`\n - `scrubbed_recording_url?: string`\n - `scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `start_timestamp?: number`\n - `telephony_identifier?: { twilio_call_sid?: string; }`\n - `transcript?: string`\n - `transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]`\n - `transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `transfer_destination?: string`\n - `transfer_end_timestamp?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst phoneCallResponse = await client.call.createPhoneCall({ from_number: '+14157774444', to_number: '+12137774445' });\n\nconsole.log(phoneCallResponse);\n```",
67
67
  perLanguage: {
68
68
  typescript: {
69
69
  method: 'client.call.createPhoneCall',
@@ -88,7 +88,7 @@ const EMBEDDED_METHODS = [
88
88
  qualified: 'client.call.registerPhoneCall',
89
89
  params: [
90
90
  'agent_id: string;',
91
- "agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; };",
91
+ "agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; };",
92
92
  'agent_version?: number | string;',
93
93
  "direction?: 'inbound' | 'outbound';",
94
94
  'from_number?: string;',
@@ -97,7 +97,7 @@ const EMBEDDED_METHODS = [
97
97
  'to_number?: string;',
98
98
  ],
99
99
  response: 'object',
100
- markdown: "## register-phone-call\n\n`client.call.registerPhoneCall(agent_id: string, agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: object; custom_stt_config?: object; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: object; handbook_config?: object; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: object; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: object; post_call_analysis_data?: object | object | object | object | object[]; post_call_analysis_model?: string; pronunciation_dictionary?: object[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: object | object | object; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: object; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: object; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: object; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }, agent_version?: number | string, direction?: 'inbound' | 'outbound', from_number?: string, metadata?: object, retell_llm_dynamic_variables?: object, to_number?: string): { agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: object; call_cost?: object; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: object; llm_token_usage?: object; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: object | object | object | object | object[]; start_timestamp?: number; telephony_identifier?: object; transcript?: string; transcript_object?: object[]; transcript_with_tool_calls?: object | object | object | object | object[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n**post** `/v2/register-phone-call`\n\nRegister a new phone call for custom telephony\n\n### Parameters\n\n- `agent_id: string`\n The agent to use for the call.\n\n- `agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }`\n For this particular call, override agent configuration with these settings. This allows you to customize agent behavior for individual calls without modifying the base agent.\n - `agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }`\n Override agent configuration settings. Any properties specified here will override the base agent configuration for this call.\n - `conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override conversation flow configuration settings. Only applicable when using conversation flow as the response engine. Supported attributes - model_choice, model_temperature, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms.\n - `retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override Retell LLM configuration settings. Only applicable when using Retell LLM as the response engine. Supported attributes - model, s2s_model, model_temperature, model_high_priority, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms, begin_message.\n\n- `agent_version?: number | string`\n The version of the agent to use for the call.\n\n- `direction?: 'inbound' | 'outbound'`\n Direction of the phone call. Stored for tracking purpose.\n\n- `from_number?: string`\n The number you own in E.164 format. Stored for tracking purpose.\n\n- `metadata?: object`\n An arbitrary object for storage purpose only. You can put anything here like your internal customer id associated with the call. Not used for processing. You can later get this field from the call object.\n\n- `retell_llm_dynamic_variables?: object`\n Add optional dynamic variables in key value pairs of string that injects into your Response Engine prompt and tool description. Only applicable for Response Engine.\n\n- `to_number?: string`\n The number you want to call, in E.164 format. Stored for tracking purpose.\n\n### Returns\n\n- `{ agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; start_timestamp?: number; telephony_identifier?: { twilio_call_sid?: string; }; transcript?: string; transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]; transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n - `agent_id: string`\n - `agent_version: number`\n - `call_id: string`\n - `call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'`\n - `call_type: 'phone_call'`\n - `direction: 'inbound' | 'outbound'`\n - `from_number: string`\n - `to_number: string`\n - `agent_name?: string`\n - `call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }`\n - `call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }`\n - `collected_dynamic_variables?: object`\n - `custom_sip_headers?: object`\n - `data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'`\n - `disconnection_reason?: string`\n - `duration_ms?: number`\n - `end_timestamp?: number`\n - `knowledge_base_retrieved_contents_url?: string`\n - `latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }`\n - `llm_token_usage?: { average: number; num_requests: number; values: number[]; }`\n - `metadata?: object`\n - `opt_in_signed_url?: boolean`\n - `public_log_url?: string`\n - `recording_multi_channel_url?: string`\n - `recording_url?: string`\n - `retell_llm_dynamic_variables?: object`\n - `scrubbed_recording_multi_channel_url?: string`\n - `scrubbed_recording_url?: string`\n - `scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `start_timestamp?: number`\n - `telephony_identifier?: { twilio_call_sid?: string; }`\n - `transcript?: string`\n - `transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]`\n - `transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `transfer_destination?: string`\n - `transfer_end_timestamp?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst phoneCallResponse = await client.call.registerPhoneCall({ agent_id: 'oBeDLoLOeuAbiuaMFXRtDOLriTJ5tSxD' });\n\nconsole.log(phoneCallResponse);\n```",
100
+ markdown: "## register-phone-call\n\n`client.call.registerPhoneCall(agent_id: string, agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: object; custom_stt_config?: object; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: object; handbook_config?: object; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: object; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: object; post_call_analysis_data?: object | object | object | object | object[]; post_call_analysis_model?: string; pronunciation_dictionary?: object[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: object | object | object; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: object; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: object; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: object; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }, agent_version?: number | string, direction?: 'inbound' | 'outbound', from_number?: string, metadata?: object, retell_llm_dynamic_variables?: object, to_number?: string): { agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: object; call_cost?: object; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: object; llm_token_usage?: object; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: object | object | object | object | object[]; start_timestamp?: number; telephony_identifier?: object; transcript?: string; transcript_object?: object[]; transcript_with_tool_calls?: object | object | object | object | object[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n**post** `/v2/register-phone-call`\n\nRegister a new phone call for custom telephony\n\n### Parameters\n\n- `agent_id: string`\n The agent to use for the call.\n\n- `agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }`\n For this particular call, override agent configuration with these settings. This allows you to customize agent behavior for individual calls without modifying the base agent.\n - `agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }`\n Override agent configuration settings. Any properties specified here will override the base agent configuration for this call.\n - `conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override conversation flow configuration settings. Only applicable when using conversation flow as the response engine. Supported attributes - model_choice, model_temperature, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms.\n - `retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override Retell LLM configuration settings. Only applicable when using Retell LLM as the response engine. Supported attributes - model, s2s_model, model_temperature, model_high_priority, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms, begin_message.\n\n- `agent_version?: number | string`\n The version of the agent to use for the call.\n\n- `direction?: 'inbound' | 'outbound'`\n Direction of the phone call. Stored for tracking purpose.\n\n- `from_number?: string`\n The number you own in E.164 format. Stored for tracking purpose.\n\n- `metadata?: object`\n An arbitrary object for storage purpose only. You can put anything here like your internal customer id associated with the call. Not used for processing. You can later get this field from the call object.\n\n- `retell_llm_dynamic_variables?: object`\n Add optional dynamic variables in key value pairs of string that injects into your Response Engine prompt and tool description. Only applicable for Response Engine.\n\n- `to_number?: string`\n The number you want to call, in E.164 format. Stored for tracking purpose.\n\n### Returns\n\n- `{ agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; start_timestamp?: number; telephony_identifier?: { twilio_call_sid?: string; }; transcript?: string; transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]; transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n - `agent_id: string`\n - `agent_version: number`\n - `call_id: string`\n - `call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'`\n - `call_type: 'phone_call'`\n - `direction: 'inbound' | 'outbound'`\n - `from_number: string`\n - `to_number: string`\n - `agent_name?: string`\n - `call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }`\n - `call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }`\n - `collected_dynamic_variables?: object`\n - `custom_sip_headers?: object`\n - `data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'`\n - `disconnection_reason?: string`\n - `duration_ms?: number`\n - `end_timestamp?: number`\n - `knowledge_base_retrieved_contents_url?: string`\n - `latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }`\n - `llm_token_usage?: { average: number; num_requests: number; values: number[]; }`\n - `metadata?: object`\n - `opt_in_signed_url?: boolean`\n - `public_log_url?: string`\n - `recording_multi_channel_url?: string`\n - `recording_url?: string`\n - `retell_llm_dynamic_variables?: object`\n - `scrubbed_recording_multi_channel_url?: string`\n - `scrubbed_recording_url?: string`\n - `scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `start_timestamp?: number`\n - `telephony_identifier?: { twilio_call_sid?: string; }`\n - `transcript?: string`\n - `transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]`\n - `transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `transfer_destination?: string`\n - `transfer_end_timestamp?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst phoneCallResponse = await client.call.registerPhoneCall({ agent_id: 'oBeDLoLOeuAbiuaMFXRtDOLriTJ5tSxD' });\n\nconsole.log(phoneCallResponse);\n```",
101
101
  perLanguage: {
102
102
  typescript: {
103
103
  method: 'client.call.registerPhoneCall',
@@ -122,7 +122,7 @@ const EMBEDDED_METHODS = [
122
122
  qualified: 'client.call.createWebCall',
123
123
  params: [
124
124
  'agent_id: string;',
125
- "agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; };",
125
+ "agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; };",
126
126
  'agent_version?: number | string;',
127
127
  'current_node_id?: string;',
128
128
  'current_state?: string;',
@@ -130,7 +130,7 @@ const EMBEDDED_METHODS = [
130
130
  'retell_llm_dynamic_variables?: object;',
131
131
  ],
132
132
  response: "{ access_token: string; agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'web_call'; agent_name?: string; call_analysis?: object; call_cost?: object; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: object; llm_token_usage?: object; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: object | object | object | object | object[]; start_timestamp?: number; transcript?: string; transcript_object?: object[]; transcript_with_tool_calls?: object | object | object | object | object[]; transfer_destination?: string; transfer_end_timestamp?: number; }",
133
- markdown: "## create-web-call\n\n`client.call.createWebCall(agent_id: string, agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: object; custom_stt_config?: object; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: object; handbook_config?: object; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: object; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: object; post_call_analysis_data?: object | object | object | object | object[]; post_call_analysis_model?: string; pronunciation_dictionary?: object[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: object | object | object; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: object; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: object; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: object; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }, agent_version?: number | string, current_node_id?: string, current_state?: string, metadata?: object, retell_llm_dynamic_variables?: object): { access_token: string; agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'web_call'; agent_name?: string; call_analysis?: object; call_cost?: object; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: object; llm_token_usage?: object; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: object | object | object | object | object[]; start_timestamp?: number; transcript?: string; transcript_object?: object[]; transcript_with_tool_calls?: object | object | object | object | object[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n**post** `/v2/create-web-call`\n\nCreate a new web call\n\n### Parameters\n\n- `agent_id: string`\n Unique id of agent used for the call. Your agent would contain the LLM Websocket url used for this call.\n\n- `agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }`\n For this particular call, override agent configuration with these settings. This allows you to customize agent behavior for individual calls without modifying the base agent.\n - `agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }`\n Override agent configuration settings. Any properties specified here will override the base agent configuration for this call.\n - `conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override conversation flow configuration settings. Only applicable when using conversation flow as the response engine. Supported attributes - model_choice, model_temperature, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms.\n - `retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override Retell LLM configuration settings. Only applicable when using Retell LLM as the response engine. Supported attributes - model, s2s_model, model_temperature, model_high_priority, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms, begin_message.\n\n- `agent_version?: number | string`\n The version of the agent to use for the call.\n\n- `current_node_id?: string`\n Start the call at this conversation flow node (stage). Must be a valid node id in the agent's conversation flow. Only applicable when the agent uses conversation flow as the response engine. Ignored for retell-llm agents.\n\n- `current_state?: string`\n Start the conversation in this state (stage). Must be a valid state name in the agent's Retell LLM. Only applicable when the agent uses Retell LLM with states. Ignored for conversation-flow agents.\n\n- `metadata?: object`\n An arbitrary object for storage purpose only. You can put anything here like your internal customer id associated with the call. Not used for processing. You can later get this field from the call object.\n\n- `retell_llm_dynamic_variables?: object`\n Add optional dynamic variables in key value pairs of string that injects into your Response Engine prompt and tool description. Only applicable for Response Engine.\n\n### Returns\n\n- `{ access_token: string; agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'web_call'; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; start_timestamp?: number; transcript?: string; transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]; transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n - `access_token: string`\n - `agent_id: string`\n - `agent_version: number`\n - `call_id: string`\n - `call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'`\n - `call_type: 'web_call'`\n - `agent_name?: string`\n - `call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }`\n - `call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }`\n - `collected_dynamic_variables?: object`\n - `custom_sip_headers?: object`\n - `data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'`\n - `disconnection_reason?: string`\n - `duration_ms?: number`\n - `end_timestamp?: number`\n - `knowledge_base_retrieved_contents_url?: string`\n - `latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }`\n - `llm_token_usage?: { average: number; num_requests: number; values: number[]; }`\n - `metadata?: object`\n - `opt_in_signed_url?: boolean`\n - `public_log_url?: string`\n - `recording_multi_channel_url?: string`\n - `recording_url?: string`\n - `retell_llm_dynamic_variables?: object`\n - `scrubbed_recording_multi_channel_url?: string`\n - `scrubbed_recording_url?: string`\n - `scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `start_timestamp?: number`\n - `transcript?: string`\n - `transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]`\n - `transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `transfer_destination?: string`\n - `transfer_end_timestamp?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst webCallResponse = await client.call.createWebCall({ agent_id: 'oBeDLoLOeuAbiuaMFXRtDOLriTJ5tSxD' });\n\nconsole.log(webCallResponse);\n```",
133
+ markdown: "## create-web-call\n\n`client.call.createWebCall(agent_id: string, agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: object; custom_stt_config?: object; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: object; handbook_config?: object; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: object; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: object; post_call_analysis_data?: object | object | object | object | object[]; post_call_analysis_model?: string; pronunciation_dictionary?: object[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: object | object | object; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: object; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: object; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: object; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }, agent_version?: number | string, current_node_id?: string, current_state?: string, metadata?: object, retell_llm_dynamic_variables?: object): { access_token: string; agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'web_call'; agent_name?: string; call_analysis?: object; call_cost?: object; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: object; llm_token_usage?: object; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: object | object | object | object | object[]; start_timestamp?: number; transcript?: string; transcript_object?: object[]; transcript_with_tool_calls?: object | object | object | object | object[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n**post** `/v2/create-web-call`\n\nCreate a new web call\n\n### Parameters\n\n- `agent_id: string`\n Unique id of agent used for the call. Your agent would contain the LLM Websocket url used for this call.\n\n- `agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }`\n For this particular call, override agent configuration with these settings. This allows you to customize agent behavior for individual calls without modifying the base agent.\n - `agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: { type: 'hangup'; }; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { type: 'hangup'; } | { type: 'bridge_transfer'; }; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }`\n Override agent configuration settings. Any properties specified here will override the base agent configuration for this call.\n - `conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override conversation flow configuration settings. Only applicable when using conversation flow as the response engine. Supported attributes - model_choice, model_temperature, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms.\n - `retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }`\n Override Retell LLM configuration settings. Only applicable when using Retell LLM as the response engine. Supported attributes - model, s2s_model, model_temperature, model_high_priority, tool_call_strict_mode, knowledge_base_ids, kb_config, start_speaker, begin_after_user_silence_ms, begin_message.\n\n- `agent_version?: number | string`\n The version of the agent to use for the call.\n\n- `current_node_id?: string`\n Start the call at this conversation flow node (stage). Must be a valid node id in the agent's conversation flow. Only applicable when the agent uses conversation flow as the response engine. Ignored for retell-llm agents.\n\n- `current_state?: string`\n Start the conversation in this state (stage). Must be a valid state name in the agent's Retell LLM. Only applicable when the agent uses Retell LLM with states. Ignored for conversation-flow agents.\n\n- `metadata?: object`\n An arbitrary object for storage purpose only. You can put anything here like your internal customer id associated with the call. Not used for processing. You can later get this field from the call object.\n\n- `retell_llm_dynamic_variables?: object`\n Add optional dynamic variables in key value pairs of string that injects into your Response Engine prompt and tool description. Only applicable for Response Engine.\n\n### Returns\n\n- `{ access_token: string; agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'web_call'; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; start_timestamp?: number; transcript?: string; transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]; transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]; transfer_destination?: string; transfer_end_timestamp?: number; }`\n\n - `access_token: string`\n - `agent_id: string`\n - `agent_version: number`\n - `call_id: string`\n - `call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'`\n - `call_type: 'web_call'`\n - `agent_name?: string`\n - `call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }`\n - `call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }`\n - `collected_dynamic_variables?: object`\n - `custom_sip_headers?: object`\n - `data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'`\n - `disconnection_reason?: string`\n - `duration_ms?: number`\n - `end_timestamp?: number`\n - `knowledge_base_retrieved_contents_url?: string`\n - `latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }`\n - `llm_token_usage?: { average: number; num_requests: number; values: number[]; }`\n - `metadata?: object`\n - `opt_in_signed_url?: boolean`\n - `public_log_url?: string`\n - `recording_multi_channel_url?: string`\n - `recording_url?: string`\n - `retell_llm_dynamic_variables?: object`\n - `scrubbed_recording_multi_channel_url?: string`\n - `scrubbed_recording_url?: string`\n - `scrubbed_transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `start_timestamp?: number`\n - `transcript?: string`\n - `transcript_object?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; }[]`\n - `transcript_with_tool_calls?: { content: string; role: 'agent' | 'user' | 'transfer_target'; words: { end?: number; start?: number; word?: string; }[]; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; successful?: boolean; } | { former_node_id: string; former_node_name: string; new_node_id: string; new_node_name: string; role: 'node_transition'; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { digit: string; role: 'dtmf'; }[]`\n - `transfer_destination?: string`\n - `transfer_end_timestamp?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst webCallResponse = await client.call.createWebCall({ agent_id: 'oBeDLoLOeuAbiuaMFXRtDOLriTJ5tSxD' });\n\nconsole.log(webCallResponse);\n```",
134
134
  perLanguage: {
135
135
  typescript: {
136
136
  method: 'client.call.createWebCall',
@@ -172,31 +172,32 @@ const EMBEDDED_METHODS = [
172
172
  },
173
173
  {
174
174
  name: 'list',
175
- endpoint: '/v2/list-calls',
175
+ endpoint: '/v3/list-calls',
176
176
  httpMethod: 'post',
177
177
  summary: '',
178
- description: 'Retrieve call details',
178
+ description: 'List calls with unified cursor pagination response.',
179
179
  stainlessPath: '(resource) call > (method) list',
180
180
  qualified: 'client.call.list',
181
181
  params: [
182
- "filter_criteria?: { agent_id?: string[]; batch_call_id?: string[]; call_id?: string[]; call_status?: 'not_connected' | 'ongoing' | 'ended' | 'error'[]; call_successful?: boolean[]; call_type?: 'web_call' | 'phone_call'[]; direction?: 'inbound' | 'outbound'[]; disconnection_reason?: string[]; duration_ms?: { lower_threshold?: number; upper_threshold?: number; }; dynamic_variables?: object; e2e_latency_p50?: { lower_threshold?: number; upper_threshold?: number; }; end_timestamp?: { lower_threshold?: number; upper_threshold?: number; }; from_number?: string[]; in_voicemail?: boolean[]; metadata?: object; start_timestamp?: { lower_threshold?: number; upper_threshold?: number; }; to_number?: string[]; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'[]; version?: number[]; };",
182
+ "filter_criteria?: { agent?: { agent_id: string; version?: number[]; }[]; batch_call_id?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; call_id?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; call_status?: { op: 'in'; type: 'enum'; value: 'not_connected' | 'ongoing' | 'ended' | 'error'[]; }; call_successful?: { op: 'eq'; type: 'boolean'; value: boolean; }; call_type?: { op: 'in'; type: 'enum'; value: 'web_call' | 'phone_call'[]; }; combined_cost?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; custom_analysis_data?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]; custom_attributes?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]; data_storage_setting?: { op: 'in'; type: 'enum'; value: 'everything' | 'everything_except_pii' | 'basic_attributes_only'[]; }; direction?: { op: 'in'; type: 'enum'; value: 'inbound' | 'outbound'[]; }; disconnection_reason?: { op: 'in'; type: 'enum'; value: string[]; }; duration_ms?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; dynamic_variables?: { key: string; op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }[]; e2e_latency_p50?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; end_timestamp?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; from_number?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; in_voicemail?: { op: 'eq'; type: 'boolean'; value: boolean; }; metadata?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]; start_timestamp?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; to_number?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; tool_calls?: { name: string; latency_ms?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; success?: { op: 'eq'; type: 'boolean'; value: boolean; }; }[]; user_sentiment?: { op: 'in'; type: 'enum'; value: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'[]; }; };",
183
183
  'limit?: number;',
184
184
  'pagination_key?: string;',
185
+ 'skip?: number;',
185
186
  "sort_order?: 'ascending' | 'descending';",
186
187
  ],
187
- response: 'object | object[]',
188
- markdown: "## list\n\n`client.call.list(filter_criteria?: { agent_id?: string[]; batch_call_id?: string[]; call_id?: string[]; call_status?: 'not_connected' | 'ongoing' | 'ended' | 'error'[]; call_successful?: boolean[]; call_type?: 'web_call' | 'phone_call'[]; direction?: 'inbound' | 'outbound'[]; disconnection_reason?: string[]; duration_ms?: { lower_threshold?: number; upper_threshold?: number; }; dynamic_variables?: object; e2e_latency_p50?: { lower_threshold?: number; upper_threshold?: number; }; end_timestamp?: { lower_threshold?: number; upper_threshold?: number; }; from_number?: string[]; in_voicemail?: boolean[]; metadata?: object; start_timestamp?: { lower_threshold?: number; upper_threshold?: number; }; to_number?: string[]; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'[]; version?: number[]; }, limit?: number, pagination_key?: string, sort_order?: 'ascending' | 'descending'): web_call_response | phone_call_response[]`\n\n**post** `/v2/list-calls`\n\nRetrieve call details\n\n### Parameters\n\n- `filter_criteria?: { agent_id?: string[]; batch_call_id?: string[]; call_id?: string[]; call_status?: 'not_connected' | 'ongoing' | 'ended' | 'error'[]; call_successful?: boolean[]; call_type?: 'web_call' | 'phone_call'[]; direction?: 'inbound' | 'outbound'[]; disconnection_reason?: string[]; duration_ms?: { lower_threshold?: number; upper_threshold?: number; }; dynamic_variables?: object; e2e_latency_p50?: { lower_threshold?: number; upper_threshold?: number; }; end_timestamp?: { lower_threshold?: number; upper_threshold?: number; }; from_number?: string[]; in_voicemail?: boolean[]; metadata?: object; start_timestamp?: { lower_threshold?: number; upper_threshold?: number; }; to_number?: string[]; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'[]; version?: number[]; }`\n Filter criteria for the calls to retrieve.\n - `agent_id?: string[]`\n Only retrieve calls that are made with specific agent(s).\n - `batch_call_id?: string[]`\n Only retrieve calls with specific batch call id(s).\n - `call_id?: string[]`\n Only retrieve calls with specific call id(s).\n - `call_status?: 'not_connected' | 'ongoing' | 'ended' | 'error'[]`\n Only retrieve calls with specific call status(es).\n - `call_successful?: boolean[]`\n Only retrieve calls with specific call successful(s).\n - `call_type?: 'web_call' | 'phone_call'[]`\n Only retrieve calls with specific call type(s).\n - `direction?: 'inbound' | 'outbound'[]`\n Only retrieve calls with specific direction(s).\n - `disconnection_reason?: string[]`\n Only retrieve calls with specific disconnection reason(s).\n - `duration_ms?: { lower_threshold?: number; upper_threshold?: number; }`\n Only retrieve calls with specific range of duration(s).\n - `dynamic_variables?: object`\n Filter by dynamic variables using dot notation (e.g., `dynamic_variables.name`).\nValues are matched exactly as strings.\n\n - `e2e_latency_p50?: { lower_threshold?: number; upper_threshold?: number; }`\n - `end_timestamp?: { lower_threshold?: number; upper_threshold?: number; }`\n Only retrieve calls with specific range of end timestamp(s).\n - `from_number?: string[]`\n Only retrieve calls with specific from number(s).\n - `in_voicemail?: boolean[]`\n Only retrieve calls that are in voicemail or not in voicemail.\n - `metadata?: object`\n Filter by metadata fields using dot notation (e.g., `metadata.customer_id`).\nValues are matched exactly as strings.\n\n - `start_timestamp?: { lower_threshold?: number; upper_threshold?: number; }`\n Only retrieve calls with specific range of start timestamp(s).\n - `to_number?: string[]`\n Only retrieve calls with specific to number(s).\n - `user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'[]`\n Only retrieve calls with specific user sentiment(s).\n - `version?: number[]`\n The version of the agent to use for the call.\n\n- `limit?: number`\n Limit the number of calls returned. Default 50, Max 1000. To retrieve more than 1000, use pagination_key to continue fetching the next page.\n\n- `pagination_key?: string`\n The pagination key to continue fetching the next page of calls. Pagination key is represented by a call id here, and it's exclusive (not included in the fetched calls). The last call id from the list calls is usually used as pagination key here. If not set, will start from the beginning.\n\n- `sort_order?: 'ascending' | 'descending'`\n The calls will be sorted by `start_timestamp`, whether to return the calls in ascending or descending order.\n\n### Returns\n\n- `{ access_token: string; agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'web_call'; agent_name?: string; call_analysis?: object; call_cost?: object; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: object; llm_token_usage?: object; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: object | object | object | object | object[]; start_timestamp?: number; transcript?: string; transcript_object?: object[]; transcript_with_tool_calls?: object | object | object | object | object[]; transfer_destination?: string; transfer_end_timestamp?: number; } | { agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: object; call_cost?: object; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: object; llm_token_usage?: object; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; scrubbed_transcript_with_tool_calls?: object | object | object | object | object[]; start_timestamp?: number; telephony_identifier?: object; transcript?: string; transcript_object?: object[]; transcript_with_tool_calls?: object | object | object | object | object[]; transfer_destination?: string; transfer_end_timestamp?: number; }[]`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst callResponses = await client.call.list();\n\nconsole.log(callResponses);\n```",
188
+ response: '{ has_more?: boolean; items?: object | object[]; pagination_key?: string; }',
189
+ markdown: "## list\n\n`client.call.list(filter_criteria?: { agent?: { agent_id: string; version?: number[]; }[]; batch_call_id?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; call_id?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; call_status?: { op: 'in'; type: 'enum'; value: 'not_connected' | 'ongoing' | 'ended' | 'error'[]; }; call_successful?: { op: 'eq'; type: 'boolean'; value: boolean; }; call_type?: { op: 'in'; type: 'enum'; value: 'web_call' | 'phone_call'[]; }; combined_cost?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; custom_analysis_data?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]; custom_attributes?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]; data_storage_setting?: { op: 'in'; type: 'enum'; value: 'everything' | 'everything_except_pii' | 'basic_attributes_only'[]; }; direction?: { op: 'in'; type: 'enum'; value: 'inbound' | 'outbound'[]; }; disconnection_reason?: { op: 'in'; type: 'enum'; value: string[]; }; duration_ms?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; dynamic_variables?: { key: string; op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }[]; e2e_latency_p50?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; end_timestamp?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; from_number?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; in_voicemail?: { op: 'eq'; type: 'boolean'; value: boolean; }; metadata?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]; start_timestamp?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; to_number?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; tool_calls?: { name: string; latency_ms?: object | object; success?: object; }[]; user_sentiment?: { op: 'in'; type: 'enum'; value: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'[]; }; }, limit?: number, pagination_key?: string, skip?: number, sort_order?: 'ascending' | 'descending'): { has_more?: boolean; items?: object | object[]; pagination_key?: string; }`\n\n**post** `/v3/list-calls`\n\nList calls with unified cursor pagination response.\n\n### Parameters\n\n- `filter_criteria?: { agent?: { agent_id: string; version?: number[]; }[]; batch_call_id?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; call_id?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; call_status?: { op: 'in'; type: 'enum'; value: 'not_connected' | 'ongoing' | 'ended' | 'error'[]; }; call_successful?: { op: 'eq'; type: 'boolean'; value: boolean; }; call_type?: { op: 'in'; type: 'enum'; value: 'web_call' | 'phone_call'[]; }; combined_cost?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; custom_analysis_data?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]; custom_attributes?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]; data_storage_setting?: { op: 'in'; type: 'enum'; value: 'everything' | 'everything_except_pii' | 'basic_attributes_only'[]; }; direction?: { op: 'in'; type: 'enum'; value: 'inbound' | 'outbound'[]; }; disconnection_reason?: { op: 'in'; type: 'enum'; value: string[]; }; duration_ms?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; dynamic_variables?: { key: string; op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }[]; e2e_latency_p50?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; end_timestamp?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; from_number?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; in_voicemail?: { op: 'eq'; type: 'boolean'; value: boolean; }; metadata?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]; start_timestamp?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; to_number?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }; tool_calls?: { name: string; latency_ms?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; success?: { op: 'eq'; type: 'boolean'; value: boolean; }; }[]; user_sentiment?: { op: 'in'; type: 'enum'; value: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'[]; }; }`\n Filter criteria for calls. All conditions are implicitly connected with AND.\n - `agent?: { agent_id: string; version?: number[]; }[]`\n Filter by agent(s). Agent filters are connected by OR.\n - `batch_call_id?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }`\n Filter by batch call ID.\n - `call_id?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }`\n Filter by call ID.\n - `call_status?: { op: 'in'; type: 'enum'; value: 'not_connected' | 'ongoing' | 'ended' | 'error'[]; }`\n - `call_successful?: { op: 'eq'; type: 'boolean'; value: boolean; }`\n Filter by whether the call was successful.\n - `call_type?: { op: 'in'; type: 'enum'; value: 'web_call' | 'phone_call'[]; }`\n - `combined_cost?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }`\n Filter by combined cost of the call.\n - `custom_analysis_data?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]`\n Filter by custom analysis data fields.\n - `custom_attributes?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]`\n Filter by custom attributes fields.\n - `data_storage_setting?: { op: 'in'; type: 'enum'; value: 'everything' | 'everything_except_pii' | 'basic_attributes_only'[]; }`\n - `direction?: { op: 'in'; type: 'enum'; value: 'inbound' | 'outbound'[]; }`\n - `disconnection_reason?: { op: 'in'; type: 'enum'; value: string[]; }`\n - `duration_ms?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }`\n Filter by call duration in milliseconds.\n - `dynamic_variables?: { key: string; op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }[]`\n Filter by dynamic variables.\n - `e2e_latency_p50?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }`\n Filter by end-to-end latency p50.\n - `end_timestamp?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }`\n Filter by call end timestamp (epoch ms).\n - `from_number?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }`\n Filter by from number.\n - `in_voicemail?: { op: 'eq'; type: 'boolean'; value: boolean; }`\n Filter by whether the call is in voicemail.\n - `metadata?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; key?: string; } | { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; key?: string; } | { op: 'eq'; type: 'boolean'; value: boolean; key?: string; } | { op: 'bt'; type: 'range'; value: number[]; key?: string; } | { op: 'in'; type: 'enum'; value: string[]; key?: string; } | { op: 'pr' | 'np'; type: 'present'; key?: string; }[]`\n Filter by metadata fields.\n - `start_timestamp?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }`\n Filter by call start timestamp (epoch ms).\n - `to_number?: { op: 'eq' | 'ne' | 'sw' | 'ew' | 'co'; type: 'string'; value: string; }`\n Filter by to number.\n - `tool_calls?: { name: string; latency_ms?: { op: 'eq' | 'ne' | 'gt' | 'ge' | 'lt' | 'le'; type: 'number'; value: number; } | { op: 'bt'; type: 'range'; value: number[]; }; success?: { op: 'eq'; type: 'boolean'; value: boolean; }; }[]`\n Filter by tool call criteria. Tool call filters are connected by AND.\n - `user_sentiment?: { op: 'in'; type: 'enum'; value: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'[]; }`\n\n- `limit?: number`\n Maximum number of calls to return.\n\n- `pagination_key?: string`\n Opaque pagination cursor from a previous response.\n\n- `skip?: number`\n Number of records to skip for pagination.\n\n- `sort_order?: 'ascending' | 'descending'`\n Sort calls by `start_timestamp` in ascending or descending order.\n\n### Returns\n\n- `{ has_more?: boolean; items?: { access_token: string; agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'web_call'; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: object[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: object; e2e?: object; knowledge_base?: object; llm?: object; llm_websocket_network_rtt?: object; s2s?: object; tts?: object; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; start_timestamp?: number; transfer_destination?: string; transfer_end_timestamp?: number; } | { agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: object[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: object; e2e?: object; knowledge_base?: object; llm?: object; llm_websocket_network_rtt?: object; s2s?: object; tts?: object; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; start_timestamp?: number; telephony_identifier?: { twilio_call_sid?: string; }; transfer_destination?: string; transfer_end_timestamp?: number; }[]; pagination_key?: string; }`\n\n - `has_more?: boolean`\n - `items?: { access_token: string; agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'web_call'; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; start_timestamp?: number; transfer_destination?: string; transfer_end_timestamp?: number; } | { agent_id: string; agent_version: number; call_id: string; call_status: 'registered' | 'not_connected' | 'ongoing' | 'ended' | 'error'; call_type: 'phone_call'; direction: 'inbound' | 'outbound'; from_number: string; to_number: string; agent_name?: string; call_analysis?: { call_successful?: boolean; call_summary?: string; custom_analysis_data?: object; in_voicemail?: boolean; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; call_cost?: { combined_cost: number; product_costs: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; total_duration_seconds: number; total_duration_unit_price: number; }; collected_dynamic_variables?: object; custom_sip_headers?: object; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; disconnection_reason?: string; duration_ms?: number; end_timestamp?: number; knowledge_base_retrieved_contents_url?: string; latency?: { asr?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; e2e?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; knowledge_base?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; llm_websocket_network_rtt?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; s2s?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; tts?: { max?: number; min?: number; num?: number; p50?: number; p90?: number; p95?: number; p99?: number; values?: number[]; }; }; llm_token_usage?: { average: number; num_requests: number; values: number[]; }; metadata?: object; opt_in_signed_url?: boolean; public_log_url?: string; recording_multi_channel_url?: string; recording_url?: string; retell_llm_dynamic_variables?: object; scrubbed_recording_multi_channel_url?: string; scrubbed_recording_url?: string; start_timestamp?: number; telephony_identifier?: { twilio_call_sid?: string; }; transfer_destination?: string; transfer_end_timestamp?: number; }[]`\n - `pagination_key?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst calls = await client.call.list();\n\nconsole.log(calls);\n```",
189
190
  perLanguage: {
190
191
  typescript: {
191
192
  method: 'client.call.list',
192
- example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst callResponses = await client.call.list();\n\nconsole.log(callResponses);",
193
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst calls = await client.call.list();\n\nconsole.log(calls.has_more);",
193
194
  },
194
195
  python: {
195
196
  method: 'call.list',
196
- example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\ncall_responses = client.call.list()\nprint(call_responses)',
197
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\ncalls = client.call.list()\nprint(calls.has_more)',
197
198
  },
198
199
  http: {
199
- example: 'curl https://api.retellai.com/v2/list-calls \\\n -H \'Content-Type: application/json\' \\\n -H "Authorization: Bearer $RETELL_API_KEY" \\\n --max-time 300 \\\n -d \'{\n "filter_criteria": {\n "agent_id": [\n "agent_oBeDLoLOeuAbiuaMFXRtDOLriT12345"\n ],\n "call_id": [\n "call_5a82f0a43ea0977566b1104fcfc"\n ],\n "call_status": [\n "ended"\n ],\n "call_successful": [\n true\n ],\n "call_type": [\n "phone_call"\n ],\n "direction": [\n "inbound"\n ],\n "start_timestamp": {\n "lower_threshold": 1738475411000,\n "upper_threshold": 1738475421000\n },\n "user_sentiment": [\n "Positive"\n ]\n }\n }\'',
200
+ example: 'curl https://api.retellai.com/v3/list-calls \\\n -X POST \\\n -H "Authorization: Bearer $RETELL_API_KEY" \\\n --max-time 300',
200
201
  },
201
202
  },
202
203
  },
@@ -417,26 +418,32 @@ const EMBEDDED_METHODS = [
417
418
  },
418
419
  {
419
420
  name: 'list',
420
- endpoint: '/list-chat',
421
- httpMethod: 'get',
421
+ endpoint: '/v3/list-chats',
422
+ httpMethod: 'post',
422
423
  summary: '',
423
- description: 'List all chats',
424
+ description: 'List chats with unified cursor pagination response.',
424
425
  stainlessPath: '(resource) chat > (method) list',
425
426
  qualified: 'client.chat.list',
426
- params: ['limit?: number;', 'pagination_key?: string;', "sort_order?: 'ascending' | 'descending';"],
427
- response: "{ agent_id: string; chat_id: string; chat_status: 'ongoing' | 'ended' | 'error'; chat_analysis?: object; chat_cost?: object; chat_type?: 'api_chat' | 'sms_chat'; collected_dynamic_variables?: object; custom_attributes?: object; end_timestamp?: number; message_with_tool_calls?: object | object | object | object | object[]; metadata?: object; retell_llm_dynamic_variables?: object; start_timestamp?: number; transcript?: string; version?: number; }[]",
428
- markdown: "## list\n\n`client.chat.list(limit?: number, pagination_key?: string, sort_order?: 'ascending' | 'descending'): object[]`\n\n**get** `/list-chat`\n\nList all chats\n\n### Parameters\n\n- `limit?: number`\n Limit the number of chats returned. Default 50, Max 1000. To retrieve more than 1000, use pagination_key to continue fetching the next page.\n\n- `pagination_key?: string`\n The pagination key to continue fetching the next page of chats. Pagination key is represented by a chat id here, and it's exclusive (not included in the fetched chats). The last chat id from the list chats is usually used as pagination key here. If not set, will start from the beginning.\n\n- `sort_order?: 'ascending' | 'descending'`\n The chats will be sorted by `start_timestamp`, whether to return the chats in ascending or descending order.\n\n### Returns\n\n- `{ agent_id: string; chat_id: string; chat_status: 'ongoing' | 'ended' | 'error'; chat_analysis?: { chat_successful?: boolean; chat_summary?: string; custom_analysis_data?: object; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; chat_cost?: { combined_cost?: number; product_costs?: object[]; }; chat_type?: 'api_chat' | 'sms_chat'; collected_dynamic_variables?: object; custom_attributes?: object; end_timestamp?: number; message_with_tool_calls?: { content: string; role: 'agent' | 'user'; created_timestamp?: number; message_id?: string; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; created_timestamp?: number; message_id?: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; created_timestamp?: number; message_id?: string; successful?: boolean; } | { role: 'node_transition'; created_timestamp?: number; former_node_id?: string; former_node_name?: string; message_id?: string; new_node_id?: string; new_node_name?: string; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { role: 'state_transition'; created_timestamp?: number; former_state_name?: string; message_id?: string; new_state_name?: string; }[]; metadata?: object; retell_llm_dynamic_variables?: object; start_timestamp?: number; transcript?: string; version?: number; }[]`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst chatResponses = await client.chat.list();\n\nconsole.log(chatResponses);\n```",
427
+ params: [
428
+ 'filter_criteria?: object;',
429
+ 'limit?: number;',
430
+ 'pagination_key?: string;',
431
+ 'skip?: number;',
432
+ "sort_order?: 'ascending' | 'descending';",
433
+ ],
434
+ response: "{ has_more?: boolean; items?: { agent_id: string; chat_id: string; chat_status: 'ongoing' | 'ended' | 'error'; chat_analysis?: object; chat_cost?: object; chat_type?: 'api_chat' | 'sms_chat'; collected_dynamic_variables?: object; custom_attributes?: object; end_timestamp?: number; message_with_tool_calls?: object | object | object | object | object[]; metadata?: object; retell_llm_dynamic_variables?: object; start_timestamp?: number; transcript?: string; version?: number; }[]; pagination_key?: string; }",
435
+ markdown: "## list\n\n`client.chat.list(filter_criteria?: object, limit?: number, pagination_key?: string, skip?: number, sort_order?: 'ascending' | 'descending'): { has_more?: boolean; items?: chat_response[]; pagination_key?: string; }`\n\n**post** `/v3/list-chats`\n\nList chats with unified cursor pagination response.\n\n### Parameters\n\n- `filter_criteria?: object`\n Filter criteria for chats to retrieve.\n\n- `limit?: number`\n Maximum number of chats to return.\n\n- `pagination_key?: string`\n Opaque pagination cursor from a previous response.\n\n- `skip?: number`\n Number of records to skip for pagination.\n\n- `sort_order?: 'ascending' | 'descending'`\n Sort chats by `start_timestamp` in ascending or descending order.\n\n### Returns\n\n- `{ has_more?: boolean; items?: { agent_id: string; chat_id: string; chat_status: 'ongoing' | 'ended' | 'error'; chat_analysis?: object; chat_cost?: object; chat_type?: 'api_chat' | 'sms_chat'; collected_dynamic_variables?: object; custom_attributes?: object; end_timestamp?: number; message_with_tool_calls?: object | object | object | object | object[]; metadata?: object; retell_llm_dynamic_variables?: object; start_timestamp?: number; transcript?: string; version?: number; }[]; pagination_key?: string; }`\n\n - `has_more?: boolean`\n - `items?: { agent_id: string; chat_id: string; chat_status: 'ongoing' | 'ended' | 'error'; chat_analysis?: { chat_successful?: boolean; chat_summary?: string; custom_analysis_data?: object; user_sentiment?: 'Negative' | 'Positive' | 'Neutral' | 'Unknown'; }; chat_cost?: { combined_cost?: number; product_costs?: { cost: number; product: string; is_transfer_leg_cost?: boolean; unit_price?: number; }[]; }; chat_type?: 'api_chat' | 'sms_chat'; collected_dynamic_variables?: object; custom_attributes?: object; end_timestamp?: number; message_with_tool_calls?: { content: string; role: 'agent' | 'user'; created_timestamp?: number; message_id?: string; } | { arguments: string; name: string; role: 'tool_call_invocation'; tool_call_id: string; created_timestamp?: number; message_id?: string; thought_signature?: string; } | { content: string; role: 'tool_call_result'; tool_call_id: string; created_timestamp?: number; message_id?: string; successful?: boolean; } | { role: 'node_transition'; created_timestamp?: number; former_node_id?: string; former_node_name?: string; message_id?: string; new_node_id?: string; new_node_name?: string; transition_type?: 'global' | 'global_go_back' | 'interrupt_go_back' | 'normal'; } | { role: 'state_transition'; created_timestamp?: number; former_state_name?: string; message_id?: string; new_state_name?: string; }[]; metadata?: object; retell_llm_dynamic_variables?: object; start_timestamp?: number; transcript?: string; version?: number; }[]`\n - `pagination_key?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst chats = await client.chat.list();\n\nconsole.log(chats);\n```",
429
436
  perLanguage: {
430
437
  typescript: {
431
438
  method: 'client.chat.list',
432
- example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst chatResponses = await client.chat.list();\n\nconsole.log(chatResponses);",
439
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst chats = await client.chat.list();\n\nconsole.log(chats.has_more);",
433
440
  },
434
441
  python: {
435
442
  method: 'chat.list',
436
- example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nchat_responses = client.chat.list()\nprint(chat_responses)',
443
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nchats = client.chat.list()\nprint(chats.has_more)',
437
444
  },
438
445
  http: {
439
- example: 'curl https://api.retellai.com/list-chat \\\n -H "Authorization: Bearer $RETELL_API_KEY" \\\n --max-time 300',
446
+ example: 'curl https://api.retellai.com/v3/list-chats \\\n -X POST \\\n -H "Authorization: Bearer $RETELL_API_KEY" \\\n --max-time 300',
440
447
  },
441
448
  },
442
449
  },
@@ -599,25 +606,26 @@ const EMBEDDED_METHODS = [
599
606
  },
600
607
  {
601
608
  name: 'list',
602
- endpoint: '/list-phone-numbers',
609
+ endpoint: '/v2/list-phone-numbers',
603
610
  httpMethod: 'get',
604
611
  summary: '',
605
- description: 'List all phone numbers',
612
+ description: 'List phone numbers with pagination',
606
613
  stainlessPath: '(resource) phone_number > (method) list',
607
614
  qualified: 'client.phoneNumber.list',
608
- response: "{ last_modification_timestamp: number; phone_number: string; phone_number_type: 'retell-twilio' | 'retell-telnyx' | 'custom'; allowed_inbound_country_list?: string[]; allowed_outbound_country_list?: string[]; area_code?: number; fallback_number?: string; inbound_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; inbound_sms_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; inbound_sms_webhook_url?: string; inbound_webhook_url?: string; nickname?: string; outbound_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; outbound_sms_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; phone_number_pretty?: string; sip_outbound_trunk_config?: { auth_username?: string; termination_uri?: string; transport?: string; }; }[]",
609
- markdown: "## list\n\n`client.phoneNumber.list(): object[]`\n\n**get** `/list-phone-numbers`\n\nList all phone numbers\n\n### Returns\n\n- `{ last_modification_timestamp: number; phone_number: string; phone_number_type: 'retell-twilio' | 'retell-telnyx' | 'custom'; allowed_inbound_country_list?: string[]; allowed_outbound_country_list?: string[]; area_code?: number; fallback_number?: string; inbound_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; inbound_sms_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; inbound_sms_webhook_url?: string; inbound_webhook_url?: string; nickname?: string; outbound_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; outbound_sms_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; phone_number_pretty?: string; sip_outbound_trunk_config?: { auth_username?: string; termination_uri?: string; transport?: string; }; }[]`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst phoneNumberResponses = await client.phoneNumber.list();\n\nconsole.log(phoneNumberResponses);\n```",
615
+ params: ['limit?: number;', 'pagination_key?: string;', "sort_order?: 'ascending' | 'descending';"],
616
+ response: "{ has_more?: boolean; items?: { last_modification_timestamp: number; phone_number: string; phone_number_type: 'retell-twilio' | 'retell-telnyx' | 'custom'; allowed_inbound_country_list?: string[]; allowed_outbound_country_list?: string[]; area_code?: number; fallback_number?: string; inbound_agents?: object[]; inbound_sms_agents?: object[]; inbound_sms_webhook_url?: string; inbound_webhook_url?: string; nickname?: string; outbound_agents?: object[]; outbound_sms_agents?: object[]; phone_number_pretty?: string; sip_outbound_trunk_config?: object; }[]; pagination_key?: string; }",
617
+ markdown: "## list\n\n`client.phoneNumber.list(limit?: number, pagination_key?: string, sort_order?: 'ascending' | 'descending'): { has_more?: boolean; items?: phone_number_response[]; pagination_key?: string; }`\n\n**get** `/v2/list-phone-numbers`\n\nList phone numbers with pagination\n\n### Parameters\n\n- `limit?: number`\n Maximum number of items to return.\n\n- `pagination_key?: string`\n Pagination key for fetching the next page.\n\n- `sort_order?: 'ascending' | 'descending'`\n Sort order for results.\n\n### Returns\n\n- `{ has_more?: boolean; items?: { last_modification_timestamp: number; phone_number: string; phone_number_type: 'retell-twilio' | 'retell-telnyx' | 'custom'; allowed_inbound_country_list?: string[]; allowed_outbound_country_list?: string[]; area_code?: number; fallback_number?: string; inbound_agents?: object[]; inbound_sms_agents?: object[]; inbound_sms_webhook_url?: string; inbound_webhook_url?: string; nickname?: string; outbound_agents?: object[]; outbound_sms_agents?: object[]; phone_number_pretty?: string; sip_outbound_trunk_config?: object; }[]; pagination_key?: string; }`\n\n - `has_more?: boolean`\n - `items?: { last_modification_timestamp: number; phone_number: string; phone_number_type: 'retell-twilio' | 'retell-telnyx' | 'custom'; allowed_inbound_country_list?: string[]; allowed_outbound_country_list?: string[]; area_code?: number; fallback_number?: string; inbound_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; inbound_sms_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; inbound_sms_webhook_url?: string; inbound_webhook_url?: string; nickname?: string; outbound_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; outbound_sms_agents?: { agent_id: string; weight: number; agent_version?: number | string; }[]; phone_number_pretty?: string; sip_outbound_trunk_config?: { auth_username?: string; termination_uri?: string; transport?: string; }; }[]`\n - `pagination_key?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst phoneNumbers = await client.phoneNumber.list();\n\nconsole.log(phoneNumbers);\n```",
610
618
  perLanguage: {
611
619
  typescript: {
612
620
  method: 'client.phoneNumber.list',
613
- example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst phoneNumberResponses = await client.phoneNumber.list();\n\nconsole.log(phoneNumberResponses);",
621
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst phoneNumbers = await client.phoneNumber.list();\n\nconsole.log(phoneNumbers.has_more);",
614
622
  },
615
623
  python: {
616
624
  method: 'phone_number.list',
617
- example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nphone_number_responses = client.phone_number.list()\nprint(phone_number_responses)',
625
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nphone_numbers = client.phone_number.list()\nprint(phone_numbers.has_more)',
618
626
  },
619
627
  http: {
620
- example: 'curl https://api.retellai.com/list-phone-numbers \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
628
+ example: 'curl https://api.retellai.com/v2/list-phone-numbers \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
621
629
  },
622
630
  },
623
631
  },
@@ -933,6 +941,30 @@ const EMBEDDED_METHODS = [
933
941
  },
934
942
  },
935
943
  },
944
+ {
945
+ name: 'publish',
946
+ endpoint: '/publish-agent-version/{agent_id}',
947
+ httpMethod: 'post',
948
+ summary: '',
949
+ description: 'Publish an existing draft version in place.',
950
+ stainlessPath: '(resource) agent > (method) publish',
951
+ qualified: 'client.agent.publish',
952
+ params: ['agent_id: string;', 'version: number;', 'version_description?: string;'],
953
+ markdown: "## publish\n\n`client.agent.publish(agent_id: string, version: number, version_description?: string): void`\n\n**post** `/publish-agent-version/{agent_id}`\n\nPublish an existing draft version in place.\n\n### Parameters\n\n- `agent_id: string`\n\n- `version: number`\n\n- `version_description?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nawait client.agent.publish('agent_xxx', { version: 15 })\n```",
954
+ perLanguage: {
955
+ typescript: {
956
+ method: 'client.agent.publish',
957
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nawait client.agent.publish('agent_xxx', { version: 15 });",
958
+ },
959
+ python: {
960
+ method: 'agent.publish',
961
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nclient.agent.publish(\n agent_id="agent_xxx",\n version=15,\n)',
962
+ },
963
+ http: {
964
+ example: 'curl https://api.retellai.com/publish-agent-version/$AGENT_ID \\\n -H \'Content-Type: application/json\' \\\n -H "Authorization: Bearer $RETELL_API_KEY" \\\n -d \'{\n "version": 15,\n "version_description": "Hotfix for transfer timeout"\n }\'',
965
+ },
966
+ },
967
+ },
936
968
  {
937
969
  name: 'get-versions',
938
970
  endpoint: '/get-agent-versions/{agent_id}',
@@ -1135,6 +1167,30 @@ const EMBEDDED_METHODS = [
1135
1167
  },
1136
1168
  },
1137
1169
  },
1170
+ {
1171
+ name: 'publish',
1172
+ endpoint: '/publish-agent-version/{agent_id}',
1173
+ httpMethod: 'post',
1174
+ summary: '',
1175
+ description: 'Publish an existing draft version in place.',
1176
+ stainlessPath: '(resource) chat_agent > (method) publish',
1177
+ qualified: 'client.chatAgent.publish',
1178
+ params: ['agent_id: string;', 'version: number;', 'version_description?: string;'],
1179
+ markdown: "## publish\n\n`client.chatAgent.publish(agent_id: string, version: number, version_description?: string): void`\n\n**post** `/publish-agent-version/{agent_id}`\n\nPublish an existing draft version in place.\n\n### Parameters\n\n- `agent_id: string`\n\n- `version: number`\n\n- `version_description?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nawait client.chatAgent.publish('agent_xxx', { version: 15 })\n```",
1180
+ perLanguage: {
1181
+ typescript: {
1182
+ method: 'client.chatAgent.publish',
1183
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nawait client.chatAgent.publish('agent_xxx', { version: 15 });",
1184
+ },
1185
+ python: {
1186
+ method: 'chat_agent.publish',
1187
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nclient.chat_agent.publish(\n agent_id="agent_xxx",\n version=15,\n)',
1188
+ },
1189
+ http: {
1190
+ example: 'curl https://api.retellai.com/publish-agent-version/$AGENT_ID \\\n -H \'Content-Type: application/json\' \\\n -H "Authorization: Bearer $RETELL_API_KEY" \\\n -d \'{\n "version": 15,\n "version_description": "Hotfix for transfer timeout"\n }\'',
1191
+ },
1192
+ },
1193
+ },
1138
1194
  {
1139
1195
  name: 'get-versions',
1140
1196
  endpoint: '/get-chat-agent-versions/{agent_id}',
@@ -1180,15 +1236,15 @@ const EMBEDDED_METHODS = [
1180
1236
  'model?: string;',
1181
1237
  'model_high_priority?: boolean;',
1182
1238
  'model_temperature?: number;',
1183
- "s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini';",
1239
+ "s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini';",
1184
1240
  "start_speaker?: 'user' | 'agent';",
1185
1241
  'starting_state?: string;',
1186
1242
  "states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[];",
1187
1243
  'tool_call_strict_mode?: boolean;',
1188
1244
  'version?: number;',
1189
1245
  ],
1190
- response: "{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }",
1191
- markdown: "## create\n\n`client.llm.create(begin_after_user_silence_ms?: number, begin_message?: string, default_dynamic_variables?: object, general_prompt?: string, general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[], kb_config?: { filter_score?: number; top_k?: number; }, knowledge_base_ids?: string[], mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[], model?: string, model_high_priority?: boolean, model_temperature?: number, s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini', start_speaker?: 'user' | 'agent', starting_state?: string, states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[], tool_call_strict_mode?: boolean, version?: number): { last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n**post** `/create-retell-llm`\n\nCreate a new Retell LLM Response Engine that can be attached to an agent. This is used to generate response output for the agent.\n\n### Parameters\n\n- `begin_after_user_silence_ms?: number`\n If set, the AI will begin the conversation after waiting for the user for the duration (in milliseconds) specified by this attribute. This only applies if the agent is configured to wait for the user to speak first. If not set, the agent will wait indefinitely for the user to speak.\n\n- `begin_message?: string`\n First utterance said by the agent in the call. If not set, LLM will dynamically generate a message. If set to \"\", agent will wait for user to speak first.\n\n- `default_dynamic_variables?: object`\n Default dynamic variables represented as key-value pairs of strings. These are injected into your Retell LLM prompt and tool description when specific values are not provided in a request. Only applicable for Retell LLM.\n\n- `general_prompt?: string`\n General prompt appended to system prompt no matter what state the agent is in.\n\n- System prompt (with state) = general prompt + state prompt.\n- System prompt (no state) = general prompt.\n\n\n- `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n A list of tools the model may call (to get external knowledge, call API, etc). You can select from some common predefined tools like end call, transfer call, etc; or you can create your own custom tool for the LLM to use.\n\n- Tools of LLM (with state) = general tools + state tools + state transitions\n- Tools of LLM (no state) = general tools\n\n\n- `kb_config?: { filter_score?: number; top_k?: number; }`\n Knowledge base configuration for RAG retrieval.\n - `filter_score?: number`\n Similarity threshold for filtering search results\n - `top_k?: number`\n Max number of knowledge base chunks to retrieve\n\n- `knowledge_base_ids?: string[]`\n A list of knowledge base ids to use for this resource.\n\n- `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n A list of MCPs to use for this LLM.\n\n- `model?: string`\n Select the underlying text LLM. If not set, would default to gpt-4.1.\n\n- `model_high_priority?: boolean`\n If set to true, will use high priority pool with more dedicated resource to ensure lower and more consistent latency, default to false. This feature usually comes with a higher cost.\n\n- `model_temperature?: number`\n If set, will control the randomness of the response. Value ranging from [0,1]. Lower value means more deterministic, while higher value means more random. If unset, default value 0 will apply. Note that for tool calling, a lower value is recommended.\n\n- `s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n Select the underlying speech to speech model. Can only set this or model, not both.\n\n- `start_speaker?: 'user' | 'agent'`\n The speaker who starts the conversation. Required. Must be either 'user' or 'agent'.\n\n- `starting_state?: string`\n Name of the starting state. Required if states is not empty.\n\n- `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n States of the LLM. This is to help reduce prompt length and tool choices when the call can be broken into distinct states. With shorter prompts and less tools, the LLM can better focus and follow the rules, minimizing hallucination. If this field is not set, the agent would only have general prompt and general tools (essentially one state).\n\n- `tool_call_strict_mode?: boolean`\n Whether to use strict mode for tool calls. Only applicable when using certain supported models.\n\n- `version?: number`\n The version of the LLM.\n\n### Returns\n\n- `{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; is_published?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n - `last_modification_timestamp: number`\n - `llm_id: string`\n - `begin_after_user_silence_ms?: number`\n - `begin_message?: string`\n - `default_dynamic_variables?: object`\n - `general_prompt?: string`\n - `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n - `is_published?: boolean`\n - `kb_config?: { filter_score?: number; top_k?: number; }`\n - `knowledge_base_ids?: string[]`\n - `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n - `model?: string`\n - `model_high_priority?: boolean`\n - `model_temperature?: number`\n - `s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n - `start_speaker?: 'user' | 'agent'`\n - `starting_state?: string`\n - `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n - `tool_call_strict_mode?: boolean`\n - `version?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst llmResponse = await client.llm.create();\n\nconsole.log(llmResponse);\n```",
1246
+ response: "{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }",
1247
+ markdown: "## create\n\n`client.llm.create(begin_after_user_silence_ms?: number, begin_message?: string, default_dynamic_variables?: object, general_prompt?: string, general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[], kb_config?: { filter_score?: number; top_k?: number; }, knowledge_base_ids?: string[], mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[], model?: string, model_high_priority?: boolean, model_temperature?: number, s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini', start_speaker?: 'user' | 'agent', starting_state?: string, states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[], tool_call_strict_mode?: boolean, version?: number): { last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n**post** `/create-retell-llm`\n\nCreate a new Retell LLM Response Engine that can be attached to an agent. This is used to generate response output for the agent.\n\n### Parameters\n\n- `begin_after_user_silence_ms?: number`\n If set, the AI will begin the conversation after waiting for the user for the duration (in milliseconds) specified by this attribute. This only applies if the agent is configured to wait for the user to speak first. If not set, the agent will wait indefinitely for the user to speak.\n\n- `begin_message?: string`\n First utterance said by the agent in the call. If not set, LLM will dynamically generate a message. If set to \"\", agent will wait for user to speak first.\n\n- `default_dynamic_variables?: object`\n Default dynamic variables represented as key-value pairs of strings. These are injected into your Retell LLM prompt and tool description when specific values are not provided in a request. Only applicable for Retell LLM.\n\n- `general_prompt?: string`\n General prompt appended to system prompt no matter what state the agent is in.\n\n- System prompt (with state) = general prompt + state prompt.\n- System prompt (no state) = general prompt.\n\n\n- `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n A list of tools the model may call (to get external knowledge, call API, etc). You can select from some common predefined tools like end call, transfer call, etc; or you can create your own custom tool for the LLM to use.\n\n- Tools of LLM (with state) = general tools + state tools + state transitions\n- Tools of LLM (no state) = general tools\n\n\n- `kb_config?: { filter_score?: number; top_k?: number; }`\n Knowledge base configuration for RAG retrieval.\n - `filter_score?: number`\n Similarity threshold for filtering search results\n - `top_k?: number`\n Max number of knowledge base chunks to retrieve\n\n- `knowledge_base_ids?: string[]`\n A list of knowledge base ids to use for this resource.\n\n- `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n A list of MCPs to use for this LLM.\n\n- `model?: string`\n Select the underlying text LLM. If not set, would default to gpt-4.1.\n\n- `model_high_priority?: boolean`\n If set to true, will use high priority pool with more dedicated resource to ensure lower and more consistent latency, default to false. This feature usually comes with a higher cost.\n\n- `model_temperature?: number`\n If set, will control the randomness of the response. Value ranging from [0,1]. Lower value means more deterministic, while higher value means more random. If unset, default value 0 will apply. Note that for tool calling, a lower value is recommended.\n\n- `s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n Select the underlying speech to speech model. Can only set this or model, not both.\n\n- `start_speaker?: 'user' | 'agent'`\n The speaker who starts the conversation. Required. Must be either 'user' or 'agent'.\n\n- `starting_state?: string`\n Name of the starting state. Required if states is not empty.\n\n- `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n States of the LLM. This is to help reduce prompt length and tool choices when the call can be broken into distinct states. With shorter prompts and less tools, the LLM can better focus and follow the rules, minimizing hallucination. If this field is not set, the agent would only have general prompt and general tools (essentially one state).\n\n- `tool_call_strict_mode?: boolean`\n Whether to use strict mode for tool calls. Only applicable when using certain supported models.\n\n- `version?: number`\n The version of the LLM.\n\n### Returns\n\n- `{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; is_published?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n - `last_modification_timestamp: number`\n - `llm_id: string`\n - `begin_after_user_silence_ms?: number`\n - `begin_message?: string`\n - `default_dynamic_variables?: object`\n - `general_prompt?: string`\n - `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n - `is_published?: boolean`\n - `kb_config?: { filter_score?: number; top_k?: number; }`\n - `knowledge_base_ids?: string[]`\n - `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n - `model?: string`\n - `model_high_priority?: boolean`\n - `model_temperature?: number`\n - `s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n - `start_speaker?: 'user' | 'agent'`\n - `starting_state?: string`\n - `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n - `tool_call_strict_mode?: boolean`\n - `version?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst llmResponse = await client.llm.create();\n\nconsole.log(llmResponse);\n```",
1192
1248
  perLanguage: {
1193
1249
  typescript: {
1194
1250
  method: 'client.llm.create',
@@ -1212,8 +1268,8 @@ const EMBEDDED_METHODS = [
1212
1268
  stainlessPath: '(resource) llm > (method) retrieve',
1213
1269
  qualified: 'client.llm.retrieve',
1214
1270
  params: ['llm_id: string;', 'version?: number;'],
1215
- response: "{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }",
1216
- markdown: "## retrieve\n\n`client.llm.retrieve(llm_id: string, version?: number): { last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n**get** `/get-retell-llm/{llm_id}`\n\nRetrieve details of a specific Retell LLM Response Engine\n\n### Parameters\n\n- `llm_id: string`\n\n- `version?: number`\n Optional version of the API to use for this request. Default to latest version.\n\n### Returns\n\n- `{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; is_published?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n - `last_modification_timestamp: number`\n - `llm_id: string`\n - `begin_after_user_silence_ms?: number`\n - `begin_message?: string`\n - `default_dynamic_variables?: object`\n - `general_prompt?: string`\n - `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n - `is_published?: boolean`\n - `kb_config?: { filter_score?: number; top_k?: number; }`\n - `knowledge_base_ids?: string[]`\n - `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n - `model?: string`\n - `model_high_priority?: boolean`\n - `model_temperature?: number`\n - `s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n - `start_speaker?: 'user' | 'agent'`\n - `starting_state?: string`\n - `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n - `tool_call_strict_mode?: boolean`\n - `version?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst llmResponse = await client.llm.retrieve('16b980523634a6dc504898cda492e939');\n\nconsole.log(llmResponse);\n```",
1271
+ response: "{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }",
1272
+ markdown: "## retrieve\n\n`client.llm.retrieve(llm_id: string, version?: number): { last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n**get** `/get-retell-llm/{llm_id}`\n\nRetrieve details of a specific Retell LLM Response Engine\n\n### Parameters\n\n- `llm_id: string`\n\n- `version?: number`\n Optional version of the API to use for this request. Default to latest version.\n\n### Returns\n\n- `{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; is_published?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n - `last_modification_timestamp: number`\n - `llm_id: string`\n - `begin_after_user_silence_ms?: number`\n - `begin_message?: string`\n - `default_dynamic_variables?: object`\n - `general_prompt?: string`\n - `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n - `is_published?: boolean`\n - `kb_config?: { filter_score?: number; top_k?: number; }`\n - `knowledge_base_ids?: string[]`\n - `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n - `model?: string`\n - `model_high_priority?: boolean`\n - `model_temperature?: number`\n - `s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n - `start_speaker?: 'user' | 'agent'`\n - `starting_state?: string`\n - `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n - `tool_call_strict_mode?: boolean`\n - `version?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst llmResponse = await client.llm.retrieve('16b980523634a6dc504898cda492e939');\n\nconsole.log(llmResponse);\n```",
1217
1273
  perLanguage: {
1218
1274
  typescript: {
1219
1275
  method: 'client.llm.retrieve',
@@ -1230,26 +1286,26 @@ const EMBEDDED_METHODS = [
1230
1286
  },
1231
1287
  {
1232
1288
  name: 'list',
1233
- endpoint: '/list-retell-llms',
1289
+ endpoint: '/v2/list-retell-llms',
1234
1290
  httpMethod: 'get',
1235
1291
  summary: '',
1236
- description: 'List all Retell LLM Response Engines that can be attached to an agent.',
1292
+ description: 'List Retell LLM Response Engines with pagination',
1237
1293
  stainlessPath: '(resource) llm > (method) list',
1238
1294
  qualified: 'client.llm.list',
1239
- params: ['limit?: number;', 'pagination_key?: string;', 'pagination_key_version?: number;'],
1240
- response: "{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }[]",
1241
- markdown: "## list\n\n`client.llm.list(limit?: number, pagination_key?: string, pagination_key_version?: number): object[]`\n\n**get** `/list-retell-llms`\n\nList all Retell LLM Response Engines that can be attached to an agent.\n\n### Parameters\n\n- `limit?: number`\n A limit on the number of objects to be returned. Limit can range between 1 and 1000, and the default is 1000.\n\n- `pagination_key?: string`\n The pagination key to continue fetching the next page of LLMs. Pagination key is represented by a llm id, pagination key and version pair is exclusive (not included in the fetched page). If not set, will start from the beginning.\n\n- `pagination_key_version?: number`\n Specifies the version of the llm associated with the pagination_key. When paginating, both the pagination_key and its version must be provided to ensure consistent ordering and to fetch the next page correctly.\n\n### Returns\n\n- `{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; is_published?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: { name: string; edges?: object[]; state_prompt?: string; tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; }[]; tool_call_strict_mode?: boolean; version?: number; }[]`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst llmResponses = await client.llm.list();\n\nconsole.log(llmResponses);\n```",
1295
+ params: ['limit?: number;', 'pagination_key?: string;', "sort_order?: 'ascending' | 'descending';"],
1296
+ response: "{ has_more?: boolean; items?: { last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }[]; pagination_key?: string; }",
1297
+ markdown: "## list\n\n`client.llm.list(limit?: number, pagination_key?: string, sort_order?: 'ascending' | 'descending'): { has_more?: boolean; items?: llm_response[]; pagination_key?: string; }`\n\n**get** `/v2/list-retell-llms`\n\nList Retell LLM Response Engines with pagination\n\n### Parameters\n\n- `limit?: number`\n Maximum number of items to return.\n\n- `pagination_key?: string`\n Pagination key for fetching the next page.\n\n- `sort_order?: 'ascending' | 'descending'`\n Sort order for results.\n\n### Returns\n\n- `{ has_more?: boolean; items?: { last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }[]; pagination_key?: string; }`\n\n - `has_more?: boolean`\n - `items?: { last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; is_published?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]; tool_call_strict_mode?: boolean; version?: number; }[]`\n - `pagination_key?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst llms = await client.llm.list();\n\nconsole.log(llms);\n```",
1242
1298
  perLanguage: {
1243
1299
  typescript: {
1244
1300
  method: 'client.llm.list',
1245
- example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst llmResponses = await client.llm.list();\n\nconsole.log(llmResponses);",
1301
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst llms = await client.llm.list();\n\nconsole.log(llms.has_more);",
1246
1302
  },
1247
1303
  python: {
1248
1304
  method: 'llm.list',
1249
- example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nllm_responses = client.llm.list()\nprint(llm_responses)',
1305
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nllms = client.llm.list()\nprint(llms.has_more)',
1250
1306
  },
1251
1307
  http: {
1252
- example: 'curl https://api.retellai.com/list-retell-llms \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
1308
+ example: 'curl https://api.retellai.com/v2/list-retell-llms \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
1253
1309
  },
1254
1310
  },
1255
1311
  },
@@ -1275,15 +1331,15 @@ const EMBEDDED_METHODS = [
1275
1331
  'model?: string;',
1276
1332
  'model_high_priority?: boolean;',
1277
1333
  'model_temperature?: number;',
1278
- "s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini';",
1334
+ "s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini';",
1279
1335
  "start_speaker?: 'user' | 'agent';",
1280
1336
  'starting_state?: string;',
1281
1337
  "states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[];",
1282
1338
  'tool_call_strict_mode?: boolean;',
1283
1339
  'version?: number;',
1284
1340
  ],
1285
- response: "{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }",
1286
- markdown: "## update\n\n`client.llm.update(llm_id: string, version?: number, begin_after_user_silence_ms?: number, begin_message?: string, default_dynamic_variables?: object, general_prompt?: string, general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[], kb_config?: { filter_score?: number; top_k?: number; }, knowledge_base_ids?: string[], mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[], model?: string, model_high_priority?: boolean, model_temperature?: number, s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini', start_speaker?: 'user' | 'agent', starting_state?: string, states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[], tool_call_strict_mode?: boolean, version?: number): { last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n**patch** `/update-retell-llm/{llm_id}`\n\nUpdate an existing Retell LLM Response Engine\n\n### Parameters\n\n- `llm_id: string`\n\n- `version?: number`\n Optional version of the API to use for this request. Default to latest version.\n\n- `begin_after_user_silence_ms?: number`\n If set, the AI will begin the conversation after waiting for the user for the duration (in milliseconds) specified by this attribute. This only applies if the agent is configured to wait for the user to speak first. If not set, the agent will wait indefinitely for the user to speak.\n\n- `begin_message?: string`\n First utterance said by the agent in the call. If not set, LLM will dynamically generate a message. If set to \"\", agent will wait for user to speak first.\n\n- `default_dynamic_variables?: object`\n Default dynamic variables represented as key-value pairs of strings. These are injected into your Retell LLM prompt and tool description when specific values are not provided in a request. Only applicable for Retell LLM.\n\n- `general_prompt?: string`\n General prompt appended to system prompt no matter what state the agent is in.\n\n- System prompt (with state) = general prompt + state prompt.\n- System prompt (no state) = general prompt.\n\n\n- `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n A list of tools the model may call (to get external knowledge, call API, etc). You can select from some common predefined tools like end call, transfer call, etc; or you can create your own custom tool for the LLM to use.\n\n- Tools of LLM (with state) = general tools + state tools + state transitions\n- Tools of LLM (no state) = general tools\n\n\n- `kb_config?: { filter_score?: number; top_k?: number; }`\n Knowledge base configuration for RAG retrieval.\n - `filter_score?: number`\n Similarity threshold for filtering search results\n - `top_k?: number`\n Max number of knowledge base chunks to retrieve\n\n- `knowledge_base_ids?: string[]`\n A list of knowledge base ids to use for this resource.\n\n- `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n A list of MCPs to use for this LLM.\n\n- `model?: string`\n Select the underlying text LLM. If not set, would default to gpt-4.1.\n\n- `model_high_priority?: boolean`\n If set to true, will use high priority pool with more dedicated resource to ensure lower and more consistent latency, default to false. This feature usually comes with a higher cost.\n\n- `model_temperature?: number`\n If set, will control the randomness of the response. Value ranging from [0,1]. Lower value means more deterministic, while higher value means more random. If unset, default value 0 will apply. Note that for tool calling, a lower value is recommended.\n\n- `s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n Select the underlying speech to speech model. Can only set this or model, not both.\n\n- `start_speaker?: 'user' | 'agent'`\n The speaker who starts the conversation. Required. Must be either 'user' or 'agent'.\n\n- `starting_state?: string`\n Name of the starting state. Required if states is not empty.\n\n- `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n States of the LLM. This is to help reduce prompt length and tool choices when the call can be broken into distinct states. With shorter prompts and less tools, the LLM can better focus and follow the rules, minimizing hallucination. If this field is not set, the agent would only have general prompt and general tools (essentially one state).\n\n- `tool_call_strict_mode?: boolean`\n Whether to use strict mode for tool calls. Only applicable when using certain supported models.\n\n- `version?: number`\n The version of the LLM.\n\n### Returns\n\n- `{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; is_published?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n - `last_modification_timestamp: number`\n - `llm_id: string`\n - `begin_after_user_silence_ms?: number`\n - `begin_message?: string`\n - `default_dynamic_variables?: object`\n - `general_prompt?: string`\n - `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n - `is_published?: boolean`\n - `kb_config?: { filter_score?: number; top_k?: number; }`\n - `knowledge_base_ids?: string[]`\n - `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n - `model?: string`\n - `model_high_priority?: boolean`\n - `model_temperature?: number`\n - `s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n - `start_speaker?: 'user' | 'agent'`\n - `starting_state?: string`\n - `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n - `tool_call_strict_mode?: boolean`\n - `version?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst llmResponse = await client.llm.update('16b980523634a6dc504898cda492e939');\n\nconsole.log(llmResponse);\n```",
1341
+ response: "{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }",
1342
+ markdown: "## update\n\n`client.llm.update(llm_id: string, version?: number, begin_after_user_silence_ms?: number, begin_message?: string, default_dynamic_variables?: object, general_prompt?: string, general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[], kb_config?: { filter_score?: number; top_k?: number; }, knowledge_base_ids?: string[], mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[], model?: string, model_high_priority?: boolean, model_temperature?: number, s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini', start_speaker?: 'user' | 'agent', starting_state?: string, states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[], tool_call_strict_mode?: boolean, version?: number): { last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; is_published?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: object[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n**patch** `/update-retell-llm/{llm_id}`\n\nUpdate an existing Retell LLM Response Engine\n\n### Parameters\n\n- `llm_id: string`\n\n- `version?: number`\n Optional version of the API to use for this request. Default to latest version.\n\n- `begin_after_user_silence_ms?: number`\n If set, the AI will begin the conversation after waiting for the user for the duration (in milliseconds) specified by this attribute. This only applies if the agent is configured to wait for the user to speak first. If not set, the agent will wait indefinitely for the user to speak.\n\n- `begin_message?: string`\n First utterance said by the agent in the call. If not set, LLM will dynamically generate a message. If set to \"\", agent will wait for user to speak first.\n\n- `default_dynamic_variables?: object`\n Default dynamic variables represented as key-value pairs of strings. These are injected into your Retell LLM prompt and tool description when specific values are not provided in a request. Only applicable for Retell LLM.\n\n- `general_prompt?: string`\n General prompt appended to system prompt no matter what state the agent is in.\n\n- System prompt (with state) = general prompt + state prompt.\n- System prompt (no state) = general prompt.\n\n\n- `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n A list of tools the model may call (to get external knowledge, call API, etc). You can select from some common predefined tools like end call, transfer call, etc; or you can create your own custom tool for the LLM to use.\n\n- Tools of LLM (with state) = general tools + state tools + state transitions\n- Tools of LLM (no state) = general tools\n\n\n- `kb_config?: { filter_score?: number; top_k?: number; }`\n Knowledge base configuration for RAG retrieval.\n - `filter_score?: number`\n Similarity threshold for filtering search results\n - `top_k?: number`\n Max number of knowledge base chunks to retrieve\n\n- `knowledge_base_ids?: string[]`\n A list of knowledge base ids to use for this resource.\n\n- `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n A list of MCPs to use for this LLM.\n\n- `model?: string`\n Select the underlying text LLM. If not set, would default to gpt-4.1.\n\n- `model_high_priority?: boolean`\n If set to true, will use high priority pool with more dedicated resource to ensure lower and more consistent latency, default to false. This feature usually comes with a higher cost.\n\n- `model_temperature?: number`\n If set, will control the randomness of the response. Value ranging from [0,1]. Lower value means more deterministic, while higher value means more random. If unset, default value 0 will apply. Note that for tool calling, a lower value is recommended.\n\n- `s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n Select the underlying speech to speech model. Can only set this or model, not both.\n\n- `start_speaker?: 'user' | 'agent'`\n The speaker who starts the conversation. Required. Must be either 'user' or 'agent'.\n\n- `starting_state?: string`\n Name of the starting state. Required if states is not empty.\n\n- `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n States of the LLM. This is to help reduce prompt length and tool choices when the call can be broken into distinct states. With shorter prompts and less tools, the LLM can better focus and follow the rules, minimizing hallucination. If this field is not set, the agent would only have general prompt and general tools (essentially one state).\n\n- `tool_call_strict_mode?: boolean`\n Whether to use strict mode for tool calls. Only applicable when using certain supported models.\n\n- `version?: number`\n The version of the LLM.\n\n### Returns\n\n- `{ last_modification_timestamp: number; llm_id: string; begin_after_user_silence_ms?: number; begin_message?: string; default_dynamic_variables?: object; general_prompt?: string; general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; is_published?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; starting_state?: string; states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: object; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]; tool_call_strict_mode?: boolean; version?: number; }`\n\n - `last_modification_timestamp: number`\n - `llm_id: string`\n - `begin_after_user_silence_ms?: number`\n - `begin_message?: string`\n - `default_dynamic_variables?: object`\n - `general_prompt?: string`\n - `general_tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: { agent_id: string; agent_version: number | string; }; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]`\n - `is_published?: boolean`\n - `kb_config?: { filter_score?: number; top_k?: number; }`\n - `knowledge_base_ids?: string[]`\n - `mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]`\n - `model?: string`\n - `model_high_priority?: boolean`\n - `model_temperature?: number`\n - `s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'`\n - `start_speaker?: 'user' | 'agent'`\n - `starting_state?: string`\n - `states?: { name: string; edges?: { description: string; destination_state_name: string; parameters?: { properties: object; type: 'object'; required?: string[]; }; }[]; state_prompt?: string; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: { prompt?: string; type?: 'prompt'; }; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: { action_on_timeout?: 'bridge_transfer' | 'cancel_transfer'; transfer_agent?: object; transfer_timeout_ms?: number; }; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: { prompt?: string; type?: 'prompt'; } | { message?: string; type?: 'static_message'; }; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: { content?: string; type?: 'predefined'; } | { prompt?: string; type?: 'inferred'; } | { template: 'info_collection'; type: 'template'; }; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; }[]`\n - `tool_call_strict_mode?: boolean`\n - `version?: number`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst llmResponse = await client.llm.update('16b980523634a6dc504898cda492e939');\n\nconsole.log(llmResponse);\n```",
1287
1343
  perLanguage: {
1288
1344
  typescript: {
1289
1345
  method: 'client.llm.update',
@@ -1392,26 +1448,26 @@ const EMBEDDED_METHODS = [
1392
1448
  },
1393
1449
  {
1394
1450
  name: 'list',
1395
- endpoint: '/list-conversation-flows',
1451
+ endpoint: '/v2/list-conversation-flows',
1396
1452
  httpMethod: 'get',
1397
1453
  summary: '',
1398
- description: 'List all conversation flows that can be attached to an agent.',
1454
+ description: 'List conversation flows with pagination',
1399
1455
  stainlessPath: '(resource) conversation_flow > (method) list',
1400
1456
  qualified: 'client.conversationFlow.list',
1401
- params: ['limit?: number;', 'pagination_key?: string;', 'pagination_key_version?: number;'],
1402
- response: "{ conversation_flow_id: string; version: number; begin_after_user_silence_ms?: number; begin_tag_display_position?: object; components?: object[]; default_dynamic_variables?: object; global_prompt?: string; is_transfer_llm?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model_choice?: object; model_temperature?: number; nodes?: object | object | object | object | object | object | object | object | object | object | object | object | object | object | object[]; notes?: object[]; start_node_id?: string; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; tools?: object | object | object[]; }[]",
1403
- markdown: "## list\n\n`client.conversationFlow.list(limit?: number, pagination_key?: string, pagination_key_version?: number): object[]`\n\n**get** `/list-conversation-flows`\n\nList all conversation flows that can be attached to an agent.\n\n### Parameters\n\n- `limit?: number`\n Limit the number of conversation flows returned. Default 1000, Max 1000. To retrieve more than 1000, use pagination_key to continue fetching the next page.\n\n- `pagination_key?: string`\n The pagination key to continue fetching the next page of conversation flows. Pagination key is represented by a conversation flow id here, and it's exclusive (not included in the fetched conversation flows). The last conversation flow id from the list conversation flows is usually used as pagination key here. If not set, will start from the beginning.\n\n- `pagination_key_version?: number`\n Specifies the version of the conversation flow associated with the pagination_key. When paginating, both the pagination_key and its version must be provided to ensure consistent ordering and to fetch the next page correctly.\n\n### Returns\n\n- `{ conversation_flow_id: string; version: number; begin_after_user_silence_ms?: number; begin_tag_display_position?: { x?: number; y?: number; }; components?: { name: string; nodes: object | object | object | object | object | object | object | object | object | object | object | object | object | object | object[]; begin_tag_display_position?: object; mcps?: object[]; notes?: object[]; start_node_id?: string; tools?: object | object | object[]; }[]; default_dynamic_variables?: object; global_prompt?: string; is_transfer_llm?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; nodes?: { id: string; instruction: object | object; type: 'conversation'; allow_dtmf_interruption?: boolean; always_edge?: object; display_position?: object; edges?: object[]; finetune_conversation_examples?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; interruption_sensitivity?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; name?: string; responsiveness?: number; skip_response_edge?: object; voice_speed?: number; } | { id: string; instruction: object; type: 'subagent'; allow_dtmf_interruption?: boolean; always_edge?: object; display_position?: object; edges?: object[]; finetune_conversation_examples?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; interruption_sensitivity?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; name?: string; responsiveness?: number; skip_response_edge?: object; tool_ids?: string[]; tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; voice_speed?: number; } | { id: string; type: 'end'; display_position?: object; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; tool_id: string; tool_type: 'local' | 'shared'; type: 'function'; wait_for_result: boolean; display_position?: object; edges?: object[]; else_edge?: object; enable_typing_sound?: boolean; finetune_transition_examples?: object[]; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; code: string; type: 'code'; wait_for_result: boolean; display_position?: object; edges?: object[]; else_edge?: object; enable_typing_sound?: boolean; finetune_transition_examples?: object[]; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; response_variables?: object; speak_during_execution?: boolean; timeout_ms?: number; } | { id: string; edge: object; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; display_position?: object; global_node_setting?: object; ignore_e164_validation?: boolean; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; instruction: object; type: 'press_digit'; delay_ms?: number; display_position?: object; edges?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; else_edge: object; type: 'branch'; display_position?: object; edges?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; failed_edge: object; instruction: object | object | object; success_edge: object; type: 'sms'; display_position?: object; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; type: 'extract_dynamic_variables'; variables: object | object | object | object[]; display_position?: object; edges?: object[]; else_edge?: object; finetune_transition_examples?: object[]; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; agent_id: string; edge: object; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; display_position?: object; global_node_setting?: object; instruction?: object | object; keep_current_language?: boolean; keep_current_voice?: boolean; model_choice?: object; name?: string; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { id: string; mcp_id: string; mcp_tool_name: string; type: 'mcp'; wait_for_result: boolean; display_position?: object; edges?: object[]; else_edge?: object; enable_typing_sound?: boolean; finetune_transition_examples?: object[]; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; response_variables?: object; speak_during_execution?: boolean; } | { id: string; component_id: string; component_type: 'local' | 'shared'; else_edge: object; type: 'component'; display_position?: object; edges?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; name?: string; } | { id: string; type: 'bridge_transfer'; display_position?: object; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; type: 'cancel_transfer'; display_position?: object; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; }[]; notes?: { id: string; content: string; display_position: object; size: object; }[]; start_node_id?: string; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; tools?: { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; tool_id?: string; }[]; }[]`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst conversationFlowResponses = await client.conversationFlow.list();\n\nconsole.log(conversationFlowResponses);\n```",
1457
+ params: ['limit?: number;', 'pagination_key?: string;', "sort_order?: 'ascending' | 'descending';"],
1458
+ response: "{ has_more?: boolean; items?: { conversation_flow_id: string; version: number; begin_after_user_silence_ms?: number; begin_tag_display_position?: object; components?: object[]; default_dynamic_variables?: object; global_prompt?: string; is_transfer_llm?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model_choice?: object; model_temperature?: number; nodes?: object | object | object | object | object | object | object | object | object | object | object | object | object | object | object[]; notes?: object[]; start_node_id?: string; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; tools?: object | object | object[]; }[]; pagination_key?: string; }",
1459
+ markdown: "## list\n\n`client.conversationFlow.list(limit?: number, pagination_key?: string, sort_order?: 'ascending' | 'descending'): { has_more?: boolean; items?: conversation_flow_response[]; pagination_key?: string; }`\n\n**get** `/v2/list-conversation-flows`\n\nList conversation flows with pagination\n\n### Parameters\n\n- `limit?: number`\n Maximum number of items to return.\n\n- `pagination_key?: string`\n Pagination key for fetching the next page.\n\n- `sort_order?: 'ascending' | 'descending'`\n Sort order for results.\n\n### Returns\n\n- `{ has_more?: boolean; items?: { conversation_flow_id: string; version: number; begin_after_user_silence_ms?: number; begin_tag_display_position?: object; components?: object[]; default_dynamic_variables?: object; global_prompt?: string; is_transfer_llm?: boolean; kb_config?: object; knowledge_base_ids?: string[]; mcps?: object[]; model_choice?: object; model_temperature?: number; nodes?: object | object | object | object | object | object | object | object | object | object | object | object | object | object | object[]; notes?: object[]; start_node_id?: string; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; tools?: object | object | object[]; }[]; pagination_key?: string; }`\n\n - `has_more?: boolean`\n - `items?: { conversation_flow_id: string; version: number; begin_after_user_silence_ms?: number; begin_tag_display_position?: { x?: number; y?: number; }; components?: { name: string; nodes: { id: string; instruction: object | object; type: 'conversation'; allow_dtmf_interruption?: boolean; always_edge?: object; display_position?: object; edges?: object[]; finetune_conversation_examples?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; interruption_sensitivity?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; name?: string; responsiveness?: number; skip_response_edge?: object; voice_speed?: number; } | { id: string; instruction: object; type: 'subagent'; allow_dtmf_interruption?: boolean; always_edge?: object; display_position?: object; edges?: object[]; finetune_conversation_examples?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; interruption_sensitivity?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; name?: string; responsiveness?: number; skip_response_edge?: object; tool_ids?: string[]; tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; voice_speed?: number; } | { id: string; type: 'end'; display_position?: object; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; tool_id: string; tool_type: 'local' | 'shared'; type: 'function'; wait_for_result: boolean; display_position?: object; edges?: object[]; else_edge?: object; enable_typing_sound?: boolean; finetune_transition_examples?: object[]; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; code: string; type: 'code'; wait_for_result: boolean; display_position?: object; edges?: object[]; else_edge?: object; enable_typing_sound?: boolean; finetune_transition_examples?: object[]; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; response_variables?: object; speak_during_execution?: boolean; timeout_ms?: number; } | { id: string; edge: object; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; display_position?: object; global_node_setting?: object; ignore_e164_validation?: boolean; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; instruction: object; type: 'press_digit'; delay_ms?: number; display_position?: object; edges?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; else_edge: object; type: 'branch'; display_position?: object; edges?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; failed_edge: object; instruction: object | object | object; success_edge: object; type: 'sms'; display_position?: object; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; type: 'extract_dynamic_variables'; variables: object | object | object | object[]; display_position?: object; edges?: object[]; else_edge?: object; finetune_transition_examples?: object[]; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; agent_id: string; edge: object; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; display_position?: object; global_node_setting?: object; instruction?: object | object; keep_current_language?: boolean; keep_current_voice?: boolean; model_choice?: object; name?: string; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { id: string; mcp_id: string; mcp_tool_name: string; type: 'mcp'; wait_for_result: boolean; display_position?: object; edges?: object[]; else_edge?: object; enable_typing_sound?: boolean; finetune_transition_examples?: object[]; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; response_variables?: object; speak_during_execution?: boolean; } | { id: string; component_id: string; component_type: 'local' | 'shared'; else_edge: object; type: 'component'; display_position?: object; edges?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; name?: string; } | { id: string; type: 'bridge_transfer'; display_position?: object; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; type: 'cancel_transfer'; display_position?: object; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; }[]; begin_tag_display_position?: { x?: number; y?: number; }; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; notes?: { id: string; content: string; display_position: object; size: object; }[]; start_node_id?: string; tools?: { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; tool_id?: string; }[]; }[]; default_dynamic_variables?: object; global_prompt?: string; is_transfer_llm?: boolean; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; nodes?: { id: string; instruction: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; type: 'conversation'; allow_dtmf_interruption?: boolean; always_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_conversation_examples?: { id: string; transcript: object | object | object[]; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; interruption_sensitivity?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; responsiveness?: number; skip_response_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; voice_speed?: number; } | { id: string; instruction: { text: string; type: 'prompt'; }; type: 'subagent'; allow_dtmf_interruption?: boolean; always_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_conversation_examples?: { id: string; transcript: object | object | object[]; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; interruption_sensitivity?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; responsiveness?: number; skip_response_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; tool_ids?: string[]; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; voice_speed?: number; } | { id: string; type: 'end'; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; } | { id: string; tool_id: string; tool_type: 'local' | 'shared'; type: 'function'; wait_for_result: boolean; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; else_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; enable_typing_sound?: boolean; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; } | { id: string; code: string; type: 'code'; wait_for_result: boolean; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; else_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; enable_typing_sound?: boolean; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; response_variables?: object; speak_during_execution?: boolean; timeout_ms?: number; } | { id: string; edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; ignore_e164_validation?: boolean; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; } | { id: string; instruction: { text: string; type: 'prompt'; }; type: 'press_digit'; delay_ms?: number; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; } | { id: string; else_edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; type: 'branch'; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; } | { id: string; failed_edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; instruction: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { template: 'info_collection'; type: 'template'; }; success_edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; type: 'sms'; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; } | { id: string; type: 'extract_dynamic_variables'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; else_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; } | { id: string; agent_id: string; edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; keep_current_language?: boolean; keep_current_voice?: boolean; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { id: string; mcp_id: string; mcp_tool_name: string; type: 'mcp'; wait_for_result: boolean; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; else_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; enable_typing_sound?: boolean; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; response_variables?: object; speak_during_execution?: boolean; } | { id: string; component_id: string; component_type: 'local' | 'shared'; else_edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; type: 'component'; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; name?: string; } | { id: string; type: 'bridge_transfer'; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; } | { id: string; type: 'cancel_transfer'; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; }[]; notes?: { id: string; content: string; display_position: { x?: number; y?: number; }; size: { height?: number; width?: number; }; }[]; start_node_id?: string; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; tools?: { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; tool_id?: string; }[]; }[]`\n - `pagination_key?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst conversationFlows = await client.conversationFlow.list();\n\nconsole.log(conversationFlows);\n```",
1404
1460
  perLanguage: {
1405
1461
  typescript: {
1406
1462
  method: 'client.conversationFlow.list',
1407
- example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst conversationFlowResponses = await client.conversationFlow.list();\n\nconsole.log(conversationFlowResponses);",
1463
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst conversationFlows = await client.conversationFlow.list();\n\nconsole.log(conversationFlows.has_more);",
1408
1464
  },
1409
1465
  python: {
1410
1466
  method: 'conversation_flow.list',
1411
- example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nconversation_flow_responses = client.conversation_flow.list()\nprint(conversation_flow_responses)',
1467
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nconversation_flows = client.conversation_flow.list()\nprint(conversation_flows.has_more)',
1412
1468
  },
1413
1469
  http: {
1414
- example: 'curl https://api.retellai.com/list-conversation-flows \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
1470
+ example: 'curl https://api.retellai.com/v2/list-conversation-flows \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
1415
1471
  },
1416
1472
  },
1417
1473
  },
@@ -1544,25 +1600,26 @@ const EMBEDDED_METHODS = [
1544
1600
  },
1545
1601
  {
1546
1602
  name: 'list',
1547
- endpoint: '/list-conversation-flow-components',
1603
+ endpoint: '/v2/list-conversation-flow-components',
1548
1604
  httpMethod: 'get',
1549
1605
  summary: '',
1550
- description: 'List shared conversation flow components',
1606
+ description: 'List shared conversation flow components with pagination',
1551
1607
  stainlessPath: '(resource) conversation_flow_component > (method) list',
1552
1608
  qualified: 'client.conversationFlowComponent.list',
1553
- response: '{ conversation_flow_component_id: string; name: string; nodes: object | object | object | object | object | object | object | object | object | object | object | object | object | object | object[]; user_modified_timestamp: number; begin_tag_display_position?: object; linked_conversation_flow_ids?: string[]; mcps?: object[]; notes?: object[]; start_node_id?: string; tools?: object | object | object[]; }[]',
1554
- markdown: "## list\n\n`client.conversationFlowComponent.list(): object[]`\n\n**get** `/list-conversation-flow-components`\n\nList shared conversation flow components\n\n### Returns\n\n- `{ conversation_flow_component_id: string; name: string; nodes: { id: string; instruction: object | object; type: 'conversation'; allow_dtmf_interruption?: boolean; always_edge?: object; display_position?: object; edges?: object[]; finetune_conversation_examples?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; interruption_sensitivity?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; name?: string; responsiveness?: number; skip_response_edge?: object; voice_speed?: number; } | { id: string; instruction: object; type: 'subagent'; allow_dtmf_interruption?: boolean; always_edge?: object; display_position?: object; edges?: object[]; finetune_conversation_examples?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; interruption_sensitivity?: number; kb_config?: object; knowledge_base_ids?: string[]; model_choice?: object; name?: string; responsiveness?: number; skip_response_edge?: object; tool_ids?: string[]; tools?: object | object | object | object | object | object | object | object | object | object | object | object | object[]; voice_speed?: number; } | { id: string; type: 'end'; display_position?: object; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; tool_id: string; tool_type: 'local' | 'shared'; type: 'function'; wait_for_result: boolean; display_position?: object; edges?: object[]; else_edge?: object; enable_typing_sound?: boolean; finetune_transition_examples?: object[]; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; code: string; type: 'code'; wait_for_result: boolean; display_position?: object; edges?: object[]; else_edge?: object; enable_typing_sound?: boolean; finetune_transition_examples?: object[]; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; response_variables?: object; speak_during_execution?: boolean; timeout_ms?: number; } | { id: string; edge: object; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; display_position?: object; global_node_setting?: object; ignore_e164_validation?: boolean; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; instruction: object; type: 'press_digit'; delay_ms?: number; display_position?: object; edges?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; else_edge: object; type: 'branch'; display_position?: object; edges?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; failed_edge: object; instruction: object | object | object; success_edge: object; type: 'sms'; display_position?: object; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; type: 'extract_dynamic_variables'; variables: object | object | object | object[]; display_position?: object; edges?: object[]; else_edge?: object; finetune_transition_examples?: object[]; global_node_setting?: object; model_choice?: object; name?: string; } | { id: string; agent_id: string; edge: object; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; display_position?: object; global_node_setting?: object; instruction?: object | object; keep_current_language?: boolean; keep_current_voice?: boolean; model_choice?: object; name?: string; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { id: string; mcp_id: string; mcp_tool_name: string; type: 'mcp'; wait_for_result: boolean; display_position?: object; edges?: object[]; else_edge?: object; enable_typing_sound?: boolean; finetune_transition_examples?: object[]; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; response_variables?: object; speak_during_execution?: boolean; } | { id: string; component_id: string; component_type: 'local' | 'shared'; else_edge: object; type: 'component'; display_position?: object; edges?: object[]; finetune_transition_examples?: object[]; global_node_setting?: object; name?: string; } | { id: string; type: 'bridge_transfer'; display_position?: object; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; } | { id: string; type: 'cancel_transfer'; display_position?: object; global_node_setting?: object; instruction?: object | object; model_choice?: object; name?: string; speak_during_execution?: boolean; }[]; user_modified_timestamp: number; begin_tag_display_position?: { x?: number; y?: number; }; linked_conversation_flow_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; notes?: { id: string; content: string; display_position: object; size: object; }[]; start_node_id?: string; tools?: { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; tool_id?: string; }[]; }[]`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst conversationFlowComponentResponses = await client.conversationFlowComponent.list();\n\nconsole.log(conversationFlowComponentResponses);\n```",
1609
+ params: ['limit?: number;', 'pagination_key?: string;', "sort_order?: 'ascending' | 'descending';"],
1610
+ response: '{ has_more?: boolean; items?: { conversation_flow_component_id: string; name: string; nodes: object | object | object | object | object | object | object | object | object | object | object | object | object | object | object[]; user_modified_timestamp: number; begin_tag_display_position?: object; linked_conversation_flow_ids?: string[]; mcps?: object[]; notes?: object[]; start_node_id?: string; tools?: object | object | object[]; }[]; pagination_key?: string; }',
1611
+ markdown: "## list\n\n`client.conversationFlowComponent.list(limit?: number, pagination_key?: string, sort_order?: 'ascending' | 'descending'): { has_more?: boolean; items?: conversation_flow_component_response[]; pagination_key?: string; }`\n\n**get** `/v2/list-conversation-flow-components`\n\nList shared conversation flow components with pagination\n\n### Parameters\n\n- `limit?: number`\n Maximum number of items to return.\n\n- `pagination_key?: string`\n Pagination key for fetching the next page.\n\n- `sort_order?: 'ascending' | 'descending'`\n Sort order for results.\n\n### Returns\n\n- `{ has_more?: boolean; items?: { conversation_flow_component_id: string; name: string; nodes: object | object | object | object | object | object | object | object | object | object | object | object | object | object | object[]; user_modified_timestamp: number; begin_tag_display_position?: object; linked_conversation_flow_ids?: string[]; mcps?: object[]; notes?: object[]; start_node_id?: string; tools?: object | object | object[]; }[]; pagination_key?: string; }`\n\n - `has_more?: boolean`\n - `items?: { conversation_flow_component_id: string; name: string; nodes: { id: string; instruction: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; type: 'conversation'; allow_dtmf_interruption?: boolean; always_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_conversation_examples?: { id: string; transcript: object | object | object[]; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; interruption_sensitivity?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; responsiveness?: number; skip_response_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; voice_speed?: number; } | { id: string; instruction: { text: string; type: 'prompt'; }; type: 'subagent'; allow_dtmf_interruption?: boolean; always_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_conversation_examples?: { id: string; transcript: object | object | object[]; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; interruption_sensitivity?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; responsiveness?: number; skip_response_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; tool_ids?: string[]; tools?: { name: string; type: 'end_call'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; transfer_destination: object | object; transfer_option: object | object | object; type: 'transfer_call'; custom_sip_headers?: object; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; ignore_e164_validation?: boolean; speak_during_execution?: boolean; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; } | { agent_id: string; name: string; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; keep_current_language?: boolean; keep_current_voice?: boolean; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { name: string; type: 'press_digit'; delay_ms?: number; description?: string; } | { name: string; sms_content: object | object | object; type: 'send_sms'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: object; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { code: string; name: string; type: 'code'; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; } | { description: string; name: string; type: 'extract_dynamic_variable'; variables: object | object | object | object[]; } | { name: string; type: 'bridge_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { name: string; type: 'cancel_transfer'; description?: string; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; speak_during_execution?: boolean; } | { description: string; name: string; type: 'mcp'; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; input_schema?: object; mcp_id?: string; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; }[]; voice_speed?: number; } | { id: string; type: 'end'; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; } | { id: string; tool_id: string; tool_type: 'local' | 'shared'; type: 'function'; wait_for_result: boolean; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; else_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; enable_typing_sound?: boolean; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; } | { id: string; code: string; type: 'code'; wait_for_result: boolean; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; else_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; enable_typing_sound?: boolean; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; response_variables?: object; speak_during_execution?: boolean; timeout_ms?: number; } | { id: string; edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; transfer_destination: { number: string; type: 'predefined'; extension?: string; } | { prompt: string; type: 'inferred'; }; transfer_option: { type: 'cold_transfer'; cold_transfer_mode?: 'sip_refer' | 'sip_invite'; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { type: 'warm_transfer'; agent_detection_timeout_ms?: number; enable_bridge_audio_cue?: boolean; ivr_option?: object; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; opt_out_human_detection?: boolean; private_handoff_option?: object | object; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; } | { agentic_transfer_config: object; type: 'agentic_warm_transfer'; enable_bridge_audio_cue?: boolean; on_hold_music?: 'none' | 'relaxing_sound' | 'uplifting_beats' | 'ringtone'; public_handoff_option?: object | object; show_transferee_as_caller?: boolean; transfer_ring_duration_ms?: number; }; type: 'transfer_call'; custom_sip_headers?: object; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; ignore_e164_validation?: boolean; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; } | { id: string; instruction: { text: string; type: 'prompt'; }; type: 'press_digit'; delay_ms?: number; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; } | { id: string; else_edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; type: 'branch'; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; } | { id: string; failed_edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; instruction: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; } | { template: 'info_collection'; type: 'template'; }; success_edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; type: 'sms'; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; } | { id: string; type: 'extract_dynamic_variables'; variables: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; }[]; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; else_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; } | { id: string; agent_id: string; edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; post_call_analysis_setting: 'both_agents' | 'only_destination_agent'; type: 'agent_swap'; agent_version?: number | string; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; keep_current_language?: boolean; keep_current_voice?: boolean; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; webhook_setting?: 'both_agents' | 'only_destination_agent' | 'only_source_agent'; } | { id: string; mcp_id: string; mcp_tool_name: string; type: 'mcp'; wait_for_result: boolean; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; else_edge?: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; enable_typing_sound?: boolean; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; response_variables?: object; speak_during_execution?: boolean; } | { id: string; component_id: string; component_type: 'local' | 'shared'; else_edge: { id: string; transition_condition: object | object | object; destination_node_id?: string; }; type: 'component'; display_position?: { x?: number; y?: number; }; edges?: { id: string; transition_condition: object | object; destination_node_id?: string; }[]; finetune_transition_examples?: { id: string; transcript: object | object | object[]; destination_node_id?: string; }[]; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; name?: string; } | { id: string; type: 'bridge_transfer'; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; } | { id: string; type: 'cancel_transfer'; display_position?: { x?: number; y?: number; }; global_node_setting?: { condition: string; cool_down?: number; go_back_conditions?: object[]; negative_finetune_examples?: object[]; positive_finetune_examples?: object[]; }; instruction?: { text: string; type: 'prompt'; } | { text: string; type: 'static_text'; }; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; name?: string; speak_during_execution?: boolean; }[]; user_modified_timestamp: number; begin_tag_display_position?: { x?: number; y?: number; }; linked_conversation_flow_ids?: string[]; mcps?: { name: string; url: string; headers?: object; query_params?: object; timeout_ms?: number; }[]; notes?: { id: string; content: string; display_position: { x?: number; y?: number; }; size: { height?: number; width?: number; }; }[]; start_node_id?: string; tools?: { name: string; type: 'custom'; url: string; args_at_root?: boolean; description?: string; enable_typing_sound?: boolean; execution_message_description?: string; execution_message_type?: 'prompt' | 'static_text'; headers?: object; method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; parameters?: { properties: object; type: 'object'; required?: string[]; }; query_params?: object; response_variables?: object; speak_after_execution?: boolean; speak_during_execution?: boolean; timeout_ms?: number; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'check_availability_cal'; description?: string; timezone?: string; tool_id?: string; } | { cal_api_key: string; event_type_id: number | string; name: string; type: 'book_appointment_cal'; description?: string; timezone?: string; tool_id?: string; }[]; }[]`\n - `pagination_key?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst conversationFlowComponents = await client.conversationFlowComponent.list();\n\nconsole.log(conversationFlowComponents);\n```",
1555
1612
  perLanguage: {
1556
1613
  typescript: {
1557
1614
  method: 'client.conversationFlowComponent.list',
1558
- example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst conversationFlowComponentResponses = await client.conversationFlowComponent.list();\n\nconsole.log(conversationFlowComponentResponses);",
1615
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst conversationFlowComponents = await client.conversationFlowComponent.list();\n\nconsole.log(conversationFlowComponents.has_more);",
1559
1616
  },
1560
1617
  python: {
1561
1618
  method: 'conversation_flow_component.list',
1562
- example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nconversation_flow_component_responses = client.conversation_flow_component.list()\nprint(conversation_flow_component_responses)',
1619
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nconversation_flow_components = client.conversation_flow_component.list()\nprint(conversation_flow_components.has_more)',
1563
1620
  },
1564
1621
  http: {
1565
- example: 'curl https://api.retellai.com/list-conversation-flow-components \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
1622
+ example: 'curl https://api.retellai.com/v2/list-conversation-flow-components \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
1566
1623
  },
1567
1624
  },
1568
1625
  },
@@ -1980,14 +2037,14 @@ const EMBEDDED_METHODS = [
1980
2037
  qualified: 'client.batchCall.createBatchCall',
1981
2038
  params: [
1982
2039
  'from_number: string;',
1983
- "tasks: { to_number: string; agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: object; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: object | object | object | object; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }; custom_sip_headers?: object; ignore_e164_validation?: boolean; metadata?: object; override_agent_id?: string; override_agent_version?: number | string; retell_llm_dynamic_variables?: object; }[];",
2040
+ "tasks: { to_number: string; agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: object; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: object | object | object | object; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }; custom_sip_headers?: object; ignore_e164_validation?: boolean; metadata?: object; override_agent_id?: string; override_agent_version?: number | string; retell_llm_dynamic_variables?: object; }[];",
1984
2041
  "call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; };",
1985
2042
  'name?: string;',
1986
2043
  'reserved_concurrency?: number;',
1987
2044
  'trigger_timestamp?: number;',
1988
2045
  ],
1989
2046
  response: "{ batch_call_id: string; from_number: string; name: string; scheduled_timestamp: number; total_task_count: number; call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; }; }",
1990
- markdown: "## create-batch-call\n\n`client.batchCall.createBatchCall(from_number: string, tasks: { to_number: string; agent_override?: { agent?: object; conversation_flow?: object; retell_llm?: object; }; custom_sip_headers?: object; ignore_e164_validation?: boolean; metadata?: object; override_agent_id?: string; override_agent_version?: number | string; retell_llm_dynamic_variables?: object; }[], call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; }, name?: string, reserved_concurrency?: number, trigger_timestamp?: number): { batch_call_id: string; from_number: string; name: string; scheduled_timestamp: number; total_task_count: number; call_time_window?: object; }`\n\n**post** `/create-batch-call`\n\nCreate a batch call\n\n### Parameters\n\n- `from_number: string`\n The number you own in E.164 format. Must be a number purchased from Retell or imported to Retell.\n\n- `tasks: { to_number: string; agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: object; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: object | object | object | object; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }; custom_sip_headers?: object; ignore_e164_validation?: boolean; metadata?: object; override_agent_id?: string; override_agent_version?: number | string; retell_llm_dynamic_variables?: object; }[]`\n A list of individual call tasks to be executed as part of the batch call. Each task represents a single outbound call and includes details such as the recipient's phone number and optional dynamic variables to personalize the call content.\n\n- `call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; }`\n Allowed calling windows in a specific timezone. Each window is a half-open interval [startMin, endMin) in minutes since 00:00 local time. Cross-midnight windows are NOT allowed (must satisfy startMin < endMin). `endMin = 1440` (24:00) is valid.\n - `windows: { end: number; start: number; }[]`\n List of TimeWindow (start/end in minutes since local midnight).\n - `day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]`\n Optional list of days to which the windows apply. If omitted or empty, windows apply to every day.\n - `timezone?: string`\n IANA timezone (e.g. America/Los_Angeles). Defaults to America/Los_Angeles if omitted.\n\n- `name?: string`\n The name of the batch call. Only used for your own reference.\n\n- `reserved_concurrency?: number`\n Number of concurrency reserved for all other calls that are not triggered by batch calls, such as inbound calls.\n\n- `trigger_timestamp?: number`\n The scheduled time for sending the batch call, represented as a Unix timestamp in milliseconds. If omitted, the call will be sent immediately.\n\n### Returns\n\n- `{ batch_call_id: string; from_number: string; name: string; scheduled_timestamp: number; total_task_count: number; call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; }; }`\n\n - `batch_call_id: string`\n - `from_number: string`\n - `name: string`\n - `scheduled_timestamp: number`\n - `total_task_count: number`\n - `call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; }`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst batchCallResponse = await client.batchCall.createBatchCall({ from_number: '+14157774444', tasks: [{ to_number: '+12137774445' }] });\n\nconsole.log(batchCallResponse);\n```",
2047
+ markdown: "## create-batch-call\n\n`client.batchCall.createBatchCall(from_number: string, tasks: { to_number: string; agent_override?: { agent?: object; conversation_flow?: object; retell_llm?: object; }; custom_sip_headers?: object; ignore_e164_validation?: boolean; metadata?: object; override_agent_id?: string; override_agent_version?: number | string; retell_llm_dynamic_variables?: object; }[], call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; }, name?: string, reserved_concurrency?: number, trigger_timestamp?: number): { batch_call_id: string; from_number: string; name: string; scheduled_timestamp: number; total_task_count: number; call_time_window?: object; }`\n\n**post** `/create-batch-call`\n\nCreate a batch call\n\n### Parameters\n\n- `from_number: string`\n The number you own in E.164 format. Must be a number purchased from Retell or imported to Retell.\n\n- `tasks: { to_number: string; agent_override?: { agent?: { agent_name?: string; allow_dtmf_interruption?: boolean; allow_user_dtmf?: boolean; ambient_sound?: string; ambient_sound_volume?: number; analysis_successful_prompt?: string; analysis_summary_prompt?: string; analysis_user_sentiment_prompt?: string; backchannel_frequency?: number; backchannel_words?: string[]; begin_message_delay_ms?: number; boosted_keywords?: string[]; call_screening_option?: { agent_identity: string; call_purpose: string; }; custom_stt_config?: { endpointing_ms: number; provider: 'azure' | 'deepgram' | 'soniox'; }; data_storage_retention_days?: number; data_storage_setting?: 'everything' | 'everything_except_pii' | 'basic_attributes_only'; denoising_mode?: 'no-denoise' | 'noise-cancellation' | 'noise-and-background-speech-cancellation'; enable_backchannel?: boolean; enable_dynamic_responsiveness?: boolean; enable_dynamic_voice_speed?: boolean; end_call_after_silence_ms?: number; fallback_voice_ids?: string[]; guardrail_config?: { input_topics?: 'platform_integrity_jailbreaking'[]; output_topics?: string[]; }; handbook_config?: { ai_disclosure?: boolean; default_personality?: boolean; echo_verification?: boolean; high_empathy?: boolean; nato_phonetic_alphabet?: boolean; natural_filler_words?: boolean; scope_boundaries?: boolean; smart_matching?: boolean; speech_normalization?: boolean; }; interruption_sensitivity?: number; is_public?: boolean; ivr_option?: { action: object; detection_prompt?: string; }; language?: string | string[]; max_call_duration_ms?: number; opt_in_signed_url?: boolean; pii_config?: { categories: string[]; mode: 'post_call'; }; post_call_analysis_data?: { description: string; name: string; type: 'string'; conditional_prompt?: string; examples?: string[]; required?: boolean; } | { choices: string[]; description: string; name: string; type: 'enum'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'boolean'; conditional_prompt?: string; required?: boolean; } | { description: string; name: string; type: 'number'; conditional_prompt?: string; required?: boolean; } | { name: 'call_summary' | 'call_successful' | 'user_sentiment'; type: 'system-presets'; conditional_prompt?: string; description?: string; required?: boolean; }[]; post_call_analysis_model?: string; pronunciation_dictionary?: { alphabet: 'ipa' | 'cmu'; phoneme: string; word: string; }[]; reminder_max_count?: number; reminder_trigger_ms?: number; response_engine?: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; responsiveness?: number; ring_duration_ms?: number; signed_url_expiration_ms?: number; stt_mode?: 'fast' | 'accurate' | 'custom'; timezone?: string; user_dtmf_options?: { digit_limit?: number; termination_key?: string; timeout_ms?: number; }; version_description?: string; vocab_specialization?: 'general' | 'medical'; voice_emotion?: 'calm' | 'sympathetic' | 'happy' | 'sad' | 'angry' | 'fearful' | 'surprised'; voice_id?: string; voice_model?: string; voice_speed?: number; voice_temperature?: number; voicemail_detection_timeout_ms?: number; voicemail_message?: string; voicemail_option?: { action: object | object | object | object; detection_prompt?: string; }; volume?: number; webhook_events?: string[]; webhook_timeout_ms?: number; webhook_url?: string; }; conversation_flow?: { begin_after_user_silence_ms?: number; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model_choice?: { model: string; type: 'cascading'; high_priority?: boolean; }; model_temperature?: number; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; retell_llm?: { begin_after_user_silence_ms?: number; begin_message?: string; kb_config?: { filter_score?: number; top_k?: number; }; knowledge_base_ids?: string[]; model?: string; model_high_priority?: boolean; model_temperature?: number; s2s_model?: 'gpt-realtime-2' | 'gpt-realtime-1.5' | 'gpt-realtime' | 'gpt-realtime-mini'; start_speaker?: 'user' | 'agent'; tool_call_strict_mode?: boolean; }; }; custom_sip_headers?: object; ignore_e164_validation?: boolean; metadata?: object; override_agent_id?: string; override_agent_version?: number | string; retell_llm_dynamic_variables?: object; }[]`\n A list of individual call tasks to be executed as part of the batch call. Each task represents a single outbound call and includes details such as the recipient's phone number and optional dynamic variables to personalize the call content.\n\n- `call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; }`\n Allowed calling windows in a specific timezone. Each window is a half-open interval [startMin, endMin) in minutes since 00:00 local time. Cross-midnight windows are NOT allowed (must satisfy startMin < endMin). `endMin = 1440` (24:00) is valid.\n - `windows: { end: number; start: number; }[]`\n List of TimeWindow (start/end in minutes since local midnight).\n - `day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]`\n Optional list of days to which the windows apply. If omitted or empty, windows apply to every day.\n - `timezone?: string`\n IANA timezone (e.g. America/Los_Angeles). Defaults to America/Los_Angeles if omitted.\n\n- `name?: string`\n The name of the batch call. Only used for your own reference.\n\n- `reserved_concurrency?: number`\n Number of concurrency reserved for all other calls that are not triggered by batch calls, such as inbound calls.\n\n- `trigger_timestamp?: number`\n The scheduled time for sending the batch call, represented as a Unix timestamp in milliseconds. If omitted, the call will be sent immediately.\n\n### Returns\n\n- `{ batch_call_id: string; from_number: string; name: string; scheduled_timestamp: number; total_task_count: number; call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; }; }`\n\n - `batch_call_id: string`\n - `from_number: string`\n - `name: string`\n - `scheduled_timestamp: number`\n - `total_task_count: number`\n - `call_time_window?: { windows: { end: number; start: number; }[]; day?: 'Monday' | 'Tuesday' | 'Wednesday' | 'Thursday' | 'Friday' | 'Saturday' | 'Sunday'[]; timezone?: string; }`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst batchCallResponse = await client.batchCall.createBatchCall({ from_number: '+14157774444', tasks: [{ to_number: '+12137774445' }] });\n\nconsole.log(batchCallResponse);\n```",
1991
2048
  perLanguage: {
1992
2049
  typescript: {
1993
2050
  method: 'client.batchCall.createBatchCall',
@@ -2062,30 +2119,32 @@ const EMBEDDED_METHODS = [
2062
2119
  },
2063
2120
  {
2064
2121
  name: 'list-test-case-definitions',
2065
- endpoint: '/list-test-case-definitions',
2122
+ endpoint: '/v2/list-test-case-definitions',
2066
2123
  httpMethod: 'get',
2067
2124
  summary: '',
2068
- description: 'List test case definitions for a response engine',
2125
+ description: 'List test case definitions with pagination',
2069
2126
  stainlessPath: '(resource) tests > (method) list-test-case-definitions',
2070
2127
  qualified: 'client.tests.listTestCaseDefinitions',
2071
2128
  params: [
2072
2129
  "type: 'retell-llm' | 'conversation-flow';",
2073
2130
  'conversation_flow_id?: string;',
2131
+ 'limit?: number;',
2074
2132
  'llm_id?: string;',
2133
+ 'pagination_key?: string;',
2075
2134
  ],
2076
- response: "{ creation_timestamp: number; dynamic_variables: object; llm_model: string; metrics: string[]; name: string; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; test_case_definition_id: string; tool_mocks: { input_match_rule: object | object; output: string; tool_name: string; result?: boolean; }[]; type: 'simulation'; user_modified_timestamp: number; user_prompt: string; }[]",
2077
- markdown: "## list-test-case-definitions\n\n`client.tests.listTestCaseDefinitions(type: 'retell-llm' | 'conversation-flow', conversation_flow_id?: string, llm_id?: string): object[]`\n\n**get** `/list-test-case-definitions`\n\nList test case definitions for a response engine\n\n### Parameters\n\n- `type: 'retell-llm' | 'conversation-flow'`\n Type of response engine\n\n- `conversation_flow_id?: string`\n Conversation flow ID (required when type is conversation-flow)\n\n- `llm_id?: string`\n LLM ID (required when type is retell-llm)\n\n### Returns\n\n- `{ creation_timestamp: number; dynamic_variables: object; llm_model: string; metrics: string[]; name: string; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; test_case_definition_id: string; tool_mocks: { input_match_rule: object | object; output: string; tool_name: string; result?: boolean; }[]; type: 'simulation'; user_modified_timestamp: number; user_prompt: string; }[]`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst testCaseDefinitionResponses = await client.tests.listTestCaseDefinitions({ type: 'retell-llm' });\n\nconsole.log(testCaseDefinitionResponses);\n```",
2135
+ response: "{ has_more?: boolean; items?: { creation_timestamp: number; dynamic_variables: object; llm_model: string; metrics: string[]; name: string; response_engine: object | object; test_case_definition_id: string; tool_mocks: object[]; type: 'simulation'; user_modified_timestamp: number; user_prompt: string; }[]; pagination_key?: string; }",
2136
+ markdown: "## list-test-case-definitions\n\n`client.tests.listTestCaseDefinitions(type: 'retell-llm' | 'conversation-flow', conversation_flow_id?: string, limit?: number, llm_id?: string, pagination_key?: string): { has_more?: boolean; items?: test_case_definition_response[]; pagination_key?: string; }`\n\n**get** `/v2/list-test-case-definitions`\n\nList test case definitions with pagination\n\n### Parameters\n\n- `type: 'retell-llm' | 'conversation-flow'`\n Type of response engine\n\n- `conversation_flow_id?: string`\n Conversation flow ID (required when type is conversation-flow)\n\n- `limit?: number`\n Maximum number of items to return.\n\n- `llm_id?: string`\n LLM ID (required when type is retell-llm)\n\n- `pagination_key?: string`\n Pagination key for fetching the next page.\n\n### Returns\n\n- `{ has_more?: boolean; items?: { creation_timestamp: number; dynamic_variables: object; llm_model: string; metrics: string[]; name: string; response_engine: object | object; test_case_definition_id: string; tool_mocks: object[]; type: 'simulation'; user_modified_timestamp: number; user_prompt: string; }[]; pagination_key?: string; }`\n\n - `has_more?: boolean`\n - `items?: { creation_timestamp: number; dynamic_variables: object; llm_model: string; metrics: string[]; name: string; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; test_case_definition_id: string; tool_mocks: { input_match_rule: { type: 'any'; } | { args: object; type: 'partial_match'; }; output: string; tool_name: string; result?: boolean; }[]; type: 'simulation'; user_modified_timestamp: number; user_prompt: string; }[]`\n - `pagination_key?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst response = await client.tests.listTestCaseDefinitions({ type: 'retell-llm' });\n\nconsole.log(response);\n```",
2078
2137
  perLanguage: {
2079
2138
  typescript: {
2080
2139
  method: 'client.tests.listTestCaseDefinitions',
2081
- example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst testCaseDefinitionResponses = await client.tests.listTestCaseDefinitions({\n type: 'retell-llm',\n});\n\nconsole.log(testCaseDefinitionResponses);",
2140
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst response = await client.tests.listTestCaseDefinitions({ type: 'retell-llm' });\n\nconsole.log(response.has_more);",
2082
2141
  },
2083
2142
  python: {
2084
2143
  method: 'tests.list_test_case_definitions',
2085
- example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\ntest_case_definition_responses = client.tests.list_test_case_definitions(\n type="retell-llm",\n)\nprint(test_case_definition_responses)',
2144
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nresponse = client.tests.list_test_case_definitions(\n type="retell-llm",\n)\nprint(response.has_more)',
2086
2145
  },
2087
2146
  http: {
2088
- example: 'curl https://api.retellai.com/list-test-case-definitions \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
2147
+ example: 'curl https://api.retellai.com/v2/list-test-case-definitions \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
2089
2148
  },
2090
2149
  },
2091
2150
  },
@@ -2202,31 +2261,33 @@ const EMBEDDED_METHODS = [
2202
2261
  },
2203
2262
  {
2204
2263
  name: 'list-batch-tests',
2205
- endpoint: '/list-batch-tests',
2264
+ endpoint: '/v2/list-batch-tests',
2206
2265
  httpMethod: 'get',
2207
2266
  summary: '',
2208
- description: 'List batch test jobs for a response engine',
2267
+ description: 'List batch test jobs with pagination',
2209
2268
  stainlessPath: '(resource) tests > (method) list-batch-tests',
2210
2269
  qualified: 'client.tests.listBatchTests',
2211
2270
  params: [
2212
2271
  "type: 'retell-llm' | 'conversation-flow';",
2213
2272
  'conversation_flow_id?: string;',
2273
+ 'limit?: number;',
2214
2274
  'llm_id?: string;',
2275
+ 'pagination_key?: string;',
2215
2276
  'version?: number;',
2216
2277
  ],
2217
- response: "{ creation_timestamp: number; error_count: number; fail_count: number; pass_count: number; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; status: 'in_progress' | 'complete'; test_case_batch_job_id: string; total_count: number; user_modified_timestamp: number; }[]",
2218
- markdown: "## list-batch-tests\n\n`client.tests.listBatchTests(type: 'retell-llm' | 'conversation-flow', conversation_flow_id?: string, llm_id?: string, version?: number): object[]`\n\n**get** `/list-batch-tests`\n\nList batch test jobs for a response engine\n\n### Parameters\n\n- `type: 'retell-llm' | 'conversation-flow'`\n Type of response engine\n\n- `conversation_flow_id?: string`\n Conversation flow ID (required when type is conversation-flow)\n\n- `llm_id?: string`\n LLM ID (required when type is retell-llm)\n\n- `version?: number`\n Version of the response engine (defaults to latest)\n\n### Returns\n\n- `{ creation_timestamp: number; error_count: number; fail_count: number; pass_count: number; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; status: 'in_progress' | 'complete'; test_case_batch_job_id: string; total_count: number; user_modified_timestamp: number; }[]`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst batchTestResponses = await client.tests.listBatchTests({ type: 'retell-llm' });\n\nconsole.log(batchTestResponses);\n```",
2278
+ response: "{ has_more?: boolean; items?: { creation_timestamp: number; error_count: number; fail_count: number; pass_count: number; response_engine: object | object | object; status: 'in_progress' | 'complete'; test_case_batch_job_id: string; total_count: number; user_modified_timestamp: number; }[]; pagination_key?: string; }",
2279
+ markdown: "## list-batch-tests\n\n`client.tests.listBatchTests(type: 'retell-llm' | 'conversation-flow', conversation_flow_id?: string, limit?: number, llm_id?: string, pagination_key?: string, version?: number): { has_more?: boolean; items?: batch_test_response[]; pagination_key?: string; }`\n\n**get** `/v2/list-batch-tests`\n\nList batch test jobs with pagination\n\n### Parameters\n\n- `type: 'retell-llm' | 'conversation-flow'`\n Type of response engine\n\n- `conversation_flow_id?: string`\n Conversation flow ID (required when type is conversation-flow)\n\n- `limit?: number`\n Maximum number of items to return.\n\n- `llm_id?: string`\n LLM ID (required when type is retell-llm)\n\n- `pagination_key?: string`\n Pagination key for fetching the next page.\n\n- `version?: number`\n Version of the response engine (defaults to latest)\n\n### Returns\n\n- `{ has_more?: boolean; items?: { creation_timestamp: number; error_count: number; fail_count: number; pass_count: number; response_engine: object | object | object; status: 'in_progress' | 'complete'; test_case_batch_job_id: string; total_count: number; user_modified_timestamp: number; }[]; pagination_key?: string; }`\n\n - `has_more?: boolean`\n - `items?: { creation_timestamp: number; error_count: number; fail_count: number; pass_count: number; response_engine: { llm_id: string; type: 'retell-llm'; version?: number; } | { llm_websocket_url: string; type: 'custom-llm'; } | { conversation_flow_id: string; type: 'conversation-flow'; version?: number; }; status: 'in_progress' | 'complete'; test_case_batch_job_id: string; total_count: number; user_modified_timestamp: number; }[]`\n - `pagination_key?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst response = await client.tests.listBatchTests({ type: 'retell-llm' });\n\nconsole.log(response);\n```",
2219
2280
  perLanguage: {
2220
2281
  typescript: {
2221
2282
  method: 'client.tests.listBatchTests',
2222
- example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst batchTestResponses = await client.tests.listBatchTests({ type: 'retell-llm' });\n\nconsole.log(batchTestResponses);",
2283
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst response = await client.tests.listBatchTests({ type: 'retell-llm' });\n\nconsole.log(response.has_more);",
2223
2284
  },
2224
2285
  python: {
2225
2286
  method: 'tests.list_batch_tests',
2226
- example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nbatch_test_responses = client.tests.list_batch_tests(\n type="retell-llm",\n)\nprint(batch_test_responses)',
2287
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nresponse = client.tests.list_batch_tests(\n type="retell-llm",\n)\nprint(response.has_more)',
2227
2288
  },
2228
2289
  http: {
2229
- example: 'curl https://api.retellai.com/list-batch-tests \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
2290
+ example: 'curl https://api.retellai.com/v2/list-batch-tests \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
2230
2291
  },
2231
2292
  },
2232
2293
  },
@@ -2257,26 +2318,26 @@ const EMBEDDED_METHODS = [
2257
2318
  },
2258
2319
  {
2259
2320
  name: 'list-test-runs',
2260
- endpoint: '/list-test-runs/{test_case_batch_job_id}',
2321
+ endpoint: '/v2/list-test-runs/{test_case_batch_job_id}',
2261
2322
  httpMethod: 'get',
2262
2323
  summary: '',
2263
- description: 'List all test case jobs (test runs) for a batch test job',
2324
+ description: 'List test case jobs (test runs) for a batch test job with pagination',
2264
2325
  stainlessPath: '(resource) tests > (method) list-test-runs',
2265
2326
  qualified: 'client.tests.listTestRuns',
2266
- params: ['test_case_batch_job_id: string;'],
2267
- response: "{ creation_timestamp: number; status: 'in_progress' | 'pass' | 'fail' | 'error'; test_case_definition_id: string; test_case_definition_snapshot: object; test_case_job_id: string; user_modified_timestamp: number; result_explanation?: string; transcript_snapshot?: object; }[]",
2268
- markdown: "## list-test-runs\n\n`client.tests.listTestRuns(test_case_batch_job_id: string): object[]`\n\n**get** `/list-test-runs/{test_case_batch_job_id}`\n\nList all test case jobs (test runs) for a batch test job\n\n### Parameters\n\n- `test_case_batch_job_id: string`\n\n### Returns\n\n- `{ creation_timestamp: number; status: 'in_progress' | 'pass' | 'fail' | 'error'; test_case_definition_id: string; test_case_definition_snapshot: object; test_case_job_id: string; user_modified_timestamp: number; result_explanation?: string; transcript_snapshot?: object; }[]`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst testCaseJobResponses = await client.tests.listTestRuns('test_case_batch_job_id');\n\nconsole.log(testCaseJobResponses);\n```",
2327
+ params: ['test_case_batch_job_id: string;', 'limit?: number;', 'pagination_key?: string;'],
2328
+ response: "{ has_more?: boolean; items?: { creation_timestamp: number; status: 'in_progress' | 'pass' | 'fail' | 'error'; test_case_definition_id: string; test_case_definition_snapshot: test_case_definition_response; test_case_job_id: string; user_modified_timestamp: number; result_explanation?: string; transcript_snapshot?: object; }[]; pagination_key?: string; }",
2329
+ markdown: "## list-test-runs\n\n`client.tests.listTestRuns(test_case_batch_job_id: string, limit?: number, pagination_key?: string): { has_more?: boolean; items?: test_case_job_response[]; pagination_key?: string; }`\n\n**get** `/v2/list-test-runs/{test_case_batch_job_id}`\n\nList test case jobs (test runs) for a batch test job with pagination\n\n### Parameters\n\n- `test_case_batch_job_id: string`\n\n- `limit?: number`\n Maximum number of items to return.\n\n- `pagination_key?: string`\n Pagination key for fetching the next page.\n\n### Returns\n\n- `{ has_more?: boolean; items?: { creation_timestamp: number; status: 'in_progress' | 'pass' | 'fail' | 'error'; test_case_definition_id: string; test_case_definition_snapshot: test_case_definition_response; test_case_job_id: string; user_modified_timestamp: number; result_explanation?: string; transcript_snapshot?: object; }[]; pagination_key?: string; }`\n\n - `has_more?: boolean`\n - `items?: { creation_timestamp: number; status: 'in_progress' | 'pass' | 'fail' | 'error'; test_case_definition_id: string; test_case_definition_snapshot: { creation_timestamp: number; dynamic_variables: object; llm_model: string; metrics: string[]; name: string; response_engine: object | object; test_case_definition_id: string; tool_mocks: object[]; type: 'simulation'; user_modified_timestamp: number; user_prompt: string; }; test_case_job_id: string; user_modified_timestamp: number; result_explanation?: string; transcript_snapshot?: object; }[]`\n - `pagination_key?: string`\n\n### Example\n\n```typescript\nimport Retell from 'retell-sdk';\n\nconst client = new Retell();\n\nconst response = await client.tests.listTestRuns('test_case_batch_job_id');\n\nconsole.log(response);\n```",
2269
2330
  perLanguage: {
2270
2331
  typescript: {
2271
2332
  method: 'client.tests.listTestRuns',
2272
- example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst testCaseJobResponses = await client.tests.listTestRuns('test_case_batch_job_id');\n\nconsole.log(testCaseJobResponses);",
2333
+ example: "import Retell from 'retell-sdk';\n\nconst client = new Retell({\n apiKey: process.env['RETELL_API_KEY'], // This is the default and can be omitted\n});\n\nconst response = await client.tests.listTestRuns('test_case_batch_job_id');\n\nconsole.log(response.has_more);",
2273
2334
  },
2274
2335
  python: {
2275
2336
  method: 'tests.list_test_runs',
2276
- example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\ntest_case_job_responses = client.tests.list_test_runs(\n "test_case_batch_job_id",\n)\nprint(test_case_job_responses)',
2337
+ example: 'import os\nfrom retell import Retell\n\nclient = Retell(\n api_key=os.environ.get("RETELL_API_KEY"), # This is the default and can be omitted\n)\nresponse = client.tests.list_test_runs(\n test_case_batch_job_id="test_case_batch_job_id",\n)\nprint(response.has_more)',
2277
2338
  },
2278
2339
  http: {
2279
- example: 'curl https://api.retellai.com/list-test-runs/$TEST_CASE_BATCH_JOB_ID \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
2340
+ example: 'curl https://api.retellai.com/v2/list-test-runs/$TEST_CASE_BATCH_JOB_ID \\\n -H "Authorization: Bearer $RETELL_API_KEY"',
2280
2341
  },
2281
2342
  },
2282
2343
  },