Class: Telnyx::Models::AI::AssistantUpdateParams

Inherits:
Internal::Type::BaseModel show all
Extended by:
Internal::Type::RequestParameters::Converter
Includes:
Internal::Type::RequestParameters
Defined in:
lib/telnyx/models/ai/assistant_update_params.rb,
sig/telnyx/models/ai/assistant_update_params.rbs

Overview

See Also:

  • Telnyx::Resources::AI::Assistants#update

Instance Attribute Summary collapse

Attributes included from Internal::Type::RequestParameters

#request_options

Instance Method Summary collapse

Methods included from Internal::Type::RequestParameters::Converter

dump_request

Methods included from Internal::Type::RequestParameters

included

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(assistant_id:, conversation_flow: nil, description: nil, dynamic_variables: nil, dynamic_variables_webhook_timeout_ms: nil, dynamic_variables_webhook_url: nil, enabled_features: nil, external_llm: nil, fallback_config: nil, greeting: nil, insight_settings: nil, instructions: nil, integrations: nil, interruption_settings: nil, llm_api_key_ref: nil, mcp_servers: nil, messaging_settings: nil, model: nil, name: nil, observability_settings: nil, post_conversation_settings: nil, privacy_settings: nil, promote_to_main: nil, tags: nil, telephony_settings: nil, tool_ids: nil, tools: nil, transcription: nil, version_name: nil, voice_settings: nil, widget_settings: nil, request_options: {}) ⇒ Object

Some parameter documentations has been truncated, see Telnyx::Models::AI::AssistantUpdateParams for more details.

Parameters:



# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 232

Instance Attribute Details

#assistant_idString

Parameters:

  • value (String)

Returns:

  • (String)


14
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 14

required :assistant_id, String

#conversation_flowTelnyx::Models::AI::ConversationFlowReq?

Conversation flow as supplied by API clients (create / update).

A directed graph of FlowNodeReq connected by FlowEdges. Validation enforces unique node/edge IDs, that start_node_id references a real node, and that every edge's endpoints reference real nodes.



24
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 24

optional :conversation_flow, -> { Telnyx::AI::ConversationFlowReq }

#descriptionString?

Parameters:

  • (String)

Returns:

  • (String, nil)


29
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 29

optional :description, String

#dynamic_variablesHash{Symbol=>Object}?

Map of dynamic variables and their default values

Parameters:

  • (::Hash[Symbol, top])

Returns:

  • (Hash{Symbol=>Object}, nil)


35
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 35

optional :dynamic_variables, Telnyx::Internal::Type::HashOf[Telnyx::Internal::Type::Unknown]

#dynamic_variables_webhook_timeout_msInteger?

Timeout in milliseconds for the dynamic variables webhook. Must be between 1 and 10000 ms. If the webhook does not respond within this timeout, the call proceeds with default values. See the dynamic variables guide.

Parameters:

  • (Integer)

Returns:

  • (Integer, nil)


44
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 44

optional :dynamic_variables_webhook_timeout_ms, Integer

#dynamic_variables_webhook_urlString?

If dynamic_variables_webhook_url is set, Telnyx sends a POST request to this URL at the start of the conversation to resolve dynamic variables. Gotcha: the webhook response must wrap variables under a top-level dynamic_variables object, e.g. {"dynamic_variables": {"customer_name": "Jane"}}. Returning a flat object will be ignored and variables will fall back to their defaults. See the dynamic variables guide for the full request/response format and timeout behavior.

Parameters:

  • (String)

Returns:

  • (String, nil)


57
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 57

optional :dynamic_variables_webhook_url, String

#enabled_featuresArray<Symbol, Telnyx::Models::AI::EnabledFeatures>?

Returns:



62
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 62

optional :enabled_features, -> { Telnyx::Internal::Type::ArrayOf[enum: Telnyx::AI::EnabledFeatures] }

#external_llmTelnyx::Models::AI::ExternalLlmReq?



67
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 67

optional :external_llm, -> { Telnyx::AI::ExternalLlmReq }

#fallback_configTelnyx::Models::AI::FallbackConfigReq?



72
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 72

optional :fallback_config, -> { Telnyx::AI::FallbackConfigReq }

#greetingString?

Text that the assistant will use to start the conversation. This may be templated with dynamic variables. Use an empty string to have the assistant wait for the user to speak first. Use the special value <assistant-speaks-first-with-model-generated-message> to have the assistant generate the greeting based on the system instructions.

Parameters:

  • (String)

Returns:

  • (String, nil)


83
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 83

optional :greeting, String

#insight_settingsTelnyx::Models::AI::InsightSettings?



88
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 88

optional :insight_settings, -> { Telnyx::AI::InsightSettings }

#instructionsString?

System instructions for the assistant. These may be templated with dynamic variables

Parameters:

  • (String)

Returns:

  • (String, nil)


95
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 95

optional :instructions, String

#integrationsArray<Telnyx::Models::AI::AssistantIntegration>?

Connected integrations attached to the assistant. The catalog of available integrations is at /ai/integrations; the user's connected integrations are at /ai/integrations/connections. Each item references a catalog integration by integration_id.



104
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 104

optional :integrations, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantIntegration] }

#interruption_settingsTelnyx::Models::AI::InferenceEmbeddingInterruptionSettings?

Settings for interruptions and how the assistant decides the user has finished speaking. These timings are most relevant when using non turn-taking transcription models. For turn-taking models like deepgram/flux, end-of-turn behavior is controlled by the transcription end-of-turn settings under transcription.settings (eot_threshold, eot_timeout_ms, eager_eot_threshold).



115
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 115

optional :interruption_settings, -> { Telnyx::AI::InferenceEmbeddingInterruptionSettings }

#llm_api_key_refString?

This is only needed when using third-party inference providers selected by model. The identifier for an integration secret /v2/integration_secrets that refers to your LLM provider's API key. For bring-your-own endpoint authentication, use external_llm.llm_api_key_ref instead. Warning: Free plans are unlikely to work with this integration.

Parameters:

  • (String)

Returns:

  • (String, nil)


126
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 126

optional :llm_api_key_ref, String

#mcp_serversArray<Telnyx::Models::AI::AssistantMcpServer>?

MCP servers attached to the assistant. Create MCP servers with /ai/mcp_servers, then reference them by id here.



133
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 133

optional :mcp_servers, -> { Telnyx::Internal::Type::ArrayOf[Telnyx::AI::AssistantMcpServer] }

#messaging_settingsTelnyx::Models::AI::MessagingSettings?



138
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 138

optional :messaging_settings, -> { Telnyx::AI::MessagingSettings }

#modelString?

ID of the model to use when external_llm is not set. You can use the Get models API to see available models. If external_llm is provided, the assistant uses external_llm instead of this field. If neither model nor external_llm is provided, Telnyx applies the default model.

Parameters:

  • (String)

Returns:

  • (String, nil)


148
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 148

optional :model, String

#nameString?

Parameters:

  • (String)

Returns:

  • (String, nil)


153
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 153

optional :name, String

#observability_settingsTelnyx::Models::AI::ObservabilityReq?



158
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 158

optional :observability_settings, -> { Telnyx::AI::ObservabilityReq }

#post_conversation_settingsTelnyx::Models::AI::PostConversationSettingsReq?

Configuration for post-conversation processing. When enabled, the assistant receives one additional LLM turn after the conversation ends, allowing it to execute tool calls such as logging to a CRM or sending a summary. The assistant can execute multiple parallel or sequential tools during this phase. Telephony-control tools (e.g. hangup, transfer) are unavailable post-conversation. Beta feature.



169
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 169

optional :post_conversation_settings, -> { Telnyx::AI::PostConversationSettingsReq }

#privacy_settingsTelnyx::Models::AI::PrivacySettings?



174
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 174

optional :privacy_settings, -> { Telnyx::AI::PrivacySettings }

#promote_to_mainBoolean?

Indicates whether the assistant should be promoted to the main version. Defaults to true.

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


181
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 181

optional :promote_to_main, Telnyx::Internal::Type::Boolean

#tagsArray<String>?

Tags associated with the assistant. Tags can also be managed with the assistant tag endpoints.

Parameters:

  • (::Array[String])

Returns:

  • (Array<String>, nil)


188
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 188

optional :tags, Telnyx::Internal::Type::ArrayOf[String]

#telephony_settingsTelnyx::Models::AI::TelephonySettings?



193
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 193

optional :telephony_settings, -> { Telnyx::AI::TelephonySettings }

#tool_idsArray<String>?

IDs of shared tools to attach to the assistant. New integrations should prefer tool_ids over inline tools.

Parameters:

  • (::Array[String])

Returns:

  • (Array<String>, nil)


200
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 200

optional :tool_ids, Telnyx::Internal::Type::ArrayOf[String]

#transcriptionTelnyx::Models::AI::TranscriptionSettings?



213
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 213

optional :transcription, -> { Telnyx::AI::TranscriptionSettings }

#version_nameString?

Human-readable name for the assistant version.

Parameters:

  • (String)

Returns:

  • (String, nil)


219
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 219

optional :version_name, String

#voice_settingsTelnyx::Models::AI::VoiceSettings?



224
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 224

optional :voice_settings, -> { Telnyx::AI::VoiceSettings }

#widget_settingsTelnyx::Models::AI::WidgetSettings?

Configuration settings for the assistant's web widget.



230
# File 'lib/telnyx/models/ai/assistant_update_params.rb', line 230

optional :widget_settings, -> { Telnyx::AI::WidgetSettings }

Instance Method Details

#to_hash{

Returns:

  • ({)


235
# File 'sig/telnyx/models/ai/assistant_update_params.rbs', line 235

def to_hash: -> {