Class: Telnyx::Resources::AI::Tools
- Inherits:
-
Object
- Object
- Telnyx::Resources::AI::Tools
- Defined in:
- lib/telnyx/resources/ai/tools.rb,
sig/telnyx/resources/ai/tools.rbs
Overview
Configure AI assistant specifications
Instance Method Summary collapse
-
#create(display_name:, type:, client_side_tool: nil, function: nil, handoff: nil, invite: nil, pay: nil, retrieval: nil, timeout_ms: nil, update_dynamic_variables: nil, webhook: nil, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Create a new custom AI tool that can be attached to AI assistants.
-
#delete(tool_id, request_options: {}) ⇒ Object
Delete a custom AI tool.
-
#initialize(client:) ⇒ Tools
constructor
private
A new instance of Tools.
-
#list(filter_name: nil, filter_type: nil, page_number: nil, page_size: nil, request_options: {}) ⇒ Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::AI::SharedToolResponse>
Retrieve a list of the custom AI tools configured on your account.
-
#retrieve(tool_id, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Retrieve the details of a specific AI tool.
-
#update(tool_id, client_side_tool: nil, display_name: nil, function: nil, handoff: nil, invite: nil, pay: nil, retrieval: nil, timeout_ms: nil, type: nil, update_dynamic_variables: nil, webhook: nil, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Update the configuration of an existing AI tool.
Constructor Details
#initialize(client:) ⇒ Tools
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of Tools.
172 173 174 |
# File 'lib/telnyx/resources/ai/tools.rb', line 172 def initialize(client:) @client = client end |
Instance Method Details
#create(display_name:, type:, client_side_tool: nil, function: nil, handoff: nil, invite: nil, pay: nil, retrieval: nil, timeout_ms: nil, update_dynamic_variables: nil, webhook: nil, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Create a new custom AI tool that can be attached to AI assistants.
39 40 41 42 43 44 45 46 47 48 |
# File 'lib/telnyx/resources/ai/tools.rb', line 39 def create(params) parsed, = Telnyx::AI::ToolCreateParams.dump_request(params) @client.request( method: :post, path: "ai/tools", body: parsed, model: Telnyx::AI::SharedToolResponse, options: ) end |
#delete(tool_id, request_options: {}) ⇒ Object
Delete a custom AI tool.
160 161 162 163 164 165 166 167 |
# File 'lib/telnyx/resources/ai/tools.rb', line 160 def delete(tool_id, params = {}) @client.request( method: :delete, path: ["ai/tools/%1$s", tool_id], model: Telnyx::Internal::Type::Unknown, options: params[:request_options] ) end |
#list(filter_name: nil, filter_type: nil, page_number: nil, page_size: nil, request_options: {}) ⇒ Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::AI::SharedToolResponse>
Retrieve a list of the custom AI tools configured on your account.
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 |
# File 'lib/telnyx/resources/ai/tools.rb', line 131 def list(params = {}) parsed, = Telnyx::AI::ToolListParams.dump_request(params) query = Telnyx::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: "ai/tools", query: query.transform_keys( filter_name: "filter[name]", filter_type: "filter[type]", page_number: "page[number]", page_size: "page[size]" ), page: Telnyx::Internal::DefaultFlatPagination, model: Telnyx::AI::SharedToolResponse, options: ) end |
#retrieve(tool_id, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Retrieve the details of a specific AI tool.
61 62 63 64 65 66 67 68 |
# File 'lib/telnyx/resources/ai/tools.rb', line 61 def retrieve(tool_id, params = {}) @client.request( method: :get, path: ["ai/tools/%1$s", tool_id], model: Telnyx::AI::SharedToolResponse, options: params[:request_options] ) end |
#update(tool_id, client_side_tool: nil, display_name: nil, function: nil, handoff: nil, invite: nil, pay: nil, retrieval: nil, timeout_ms: nil, type: nil, update_dynamic_variables: nil, webhook: nil, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Update the configuration of an existing AI tool.
103 104 105 106 107 108 109 110 111 112 |
# File 'lib/telnyx/resources/ai/tools.rb', line 103 def update(tool_id, params = {}) parsed, = Telnyx::AI::ToolUpdateParams.dump_request(params) @client.request( method: :patch, path: ["ai/tools/%1$s", tool_id], body: parsed, model: Telnyx::AI::SharedToolResponse, options: ) end |