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, webhook: nil, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Create Tool.
-
#delete(tool_id, request_options: {}) ⇒ Object
Delete 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>
List Tools.
-
#retrieve(tool_id, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Get 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, webhook: nil, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Update 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.
158 159 160 |
# File 'lib/telnyx/resources/ai/tools.rb', line 158 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, webhook: nil, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Create Tool
27 28 29 30 31 32 33 34 35 36 |
# File 'lib/telnyx/resources/ai/tools.rb', line 27 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 Tool
146 147 148 149 150 151 152 153 |
# File 'lib/telnyx/resources/ai/tools.rb', line 146 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>
List Tools
117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/telnyx/resources/ai/tools.rb', line 117 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
Get Tool
49 50 51 52 53 54 55 56 |
# File 'lib/telnyx/resources/ai/tools.rb', line 49 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, webhook: nil, request_options: {}) ⇒ Telnyx::Models::AI::SharedToolResponse
Update Tool
89 90 91 92 93 94 95 96 97 98 |
# File 'lib/telnyx/resources/ai/tools.rb', line 89 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 |