Class: Cadenya::Resources::ToolSets::Tools
- Inherits:
-
Object
- Object
- Cadenya::Resources::ToolSets::Tools
- Defined in:
- lib/cadenya/resources/tool_sets/tools.rb
Overview
Manage tool sets and the tools they contain. Tool sets group related tools, and tools define specific capabilities available to agents.
When a tool set is managed, only API key actors can modify its tools; human (profile) actors cannot.
Instance Method Summary collapse
-
#create(tool_set_id, workspace_id:, metadata:, spec:, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolCreateParams for more details.
-
#delete(id, workspace_id:, tool_set_id:, request_options: {}) ⇒ nil
Some parameter documentations has been truncated, see Models::ToolSets::ToolDeleteParams for more details.
-
#initialize(client:) ⇒ Tools
constructor
private
A new instance of Tools.
-
#list(tool_set_id, workspace_id:, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, names: nil, prefix: nil, query: nil, requires_approval: nil, sort_order: nil, states: nil, request_options: {}) ⇒ Cadenya::Internal::CursorPagination<Cadenya::Models::ToolSets::Tool>
Some parameter documentations has been truncated, see Models::ToolSets::ToolListParams for more details.
-
#omit(id, workspace_id:, tool_set_id:, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolOmitParams for more details.
-
#restore(id, workspace_id:, tool_set_id:, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolRestoreParams for more details.
-
#retrieve(id, workspace_id:, tool_set_id:, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolRetrieveParams for more details.
-
#update(id, workspace_id:, tool_set_id:, metadata: nil, spec: nil, update_mask: nil, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolUpdateParams for more details.
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.
297 298 299 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 297 def initialize(client:) @client = client end |
Instance Method Details
#create(tool_set_id, workspace_id:, metadata:, spec:, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolCreateParams for more details.
Creates a new tool in the tool set
32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 32 def create(tool_set_id, params) parsed, = Cadenya::ToolSets::ToolCreateParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :post, path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools", workspace_id, tool_set_id], body: parsed, model: Cadenya::ToolSets::Tool, options: ) end |
#delete(id, workspace_id:, tool_set_id:, request_options: {}) ⇒ nil
Some parameter documentations has been truncated, see Models::ToolSets::ToolDeleteParams for more details.
Deletes a tool in the tool set
202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 202 def delete(id, params) parsed, = Cadenya::ToolSets::ToolDeleteParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end tool_set_id = parsed.delete(:tool_set_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :delete, path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools/%3$s", workspace_id, tool_set_id, id], model: NilClass, options: ) end |
#list(tool_set_id, workspace_id:, bundle_key: nil, cursor: nil, include_info: nil, limit: nil, names: nil, prefix: nil, query: nil, requires_approval: nil, sort_order: nil, states: nil, request_options: {}) ⇒ Cadenya::Internal::CursorPagination<Cadenya::Models::ToolSets::Tool>
Some parameter documentations has been truncated, see Models::ToolSets::ToolListParams for more details.
Lists all tools in the tool set
162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 162 def list(tool_set_id, params) parsed, = Cadenya::ToolSets::ToolListParams.dump_request(params) query = Cadenya::Internal::Util.encode_query_params(parsed) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :get, path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools", workspace_id, tool_set_id], query: query.transform_keys( bundle_key: "bundleKey", include_info: "includeInfo", requires_approval: "requiresApproval", sort_order: "sortOrder" ), page: Cadenya::Internal::CursorPagination, model: Cadenya::ToolSets::Tool, options: ) end |
#omit(id, workspace_id:, tool_set_id:, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolOmitParams for more details.
Transitions a tool to STATE_OMITTED, excluding it from agent use. Fails if the tool is currently assigned to agent variations.
239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 239 def omit(id, params) parsed, = Cadenya::ToolSets::ToolOmitParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end tool_set_id = parsed.delete(:tool_set_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :post, path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools/%3$s:omit", workspace_id, tool_set_id, id], model: Cadenya::ToolSets::Tool, options: ) end |
#restore(id, workspace_id:, tool_set_id:, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolRestoreParams for more details.
Transitions an omitted tool back to STATE_AVAILABLE. For managed tool sets, the next sync may omit the tool again if its filters still exclude it.
276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 276 def restore(id, params) parsed, = Cadenya::ToolSets::ToolRestoreParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end tool_set_id = parsed.delete(:tool_set_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :post, path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools/%3$s:restore", workspace_id, tool_set_id, id], model: Cadenya::ToolSets::Tool, options: ) end |
#retrieve(id, workspace_id:, tool_set_id:, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolRetrieveParams for more details.
Retrieves a tool by ID from the workspace
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 65 def retrieve(id, params) parsed, = Cadenya::ToolSets::ToolRetrieveParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end tool_set_id = parsed.delete(:tool_set_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :get, path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools/%3$s", workspace_id, tool_set_id, id], model: Cadenya::ToolSets::Tool, options: ) end |
#update(id, workspace_id:, tool_set_id:, metadata: nil, spec: nil, update_mask: nil, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolUpdateParams for more details.
Updates a tool in the tool set
107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 107 def update(id, params) parsed, = Cadenya::ToolSets::ToolUpdateParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end tool_set_id = parsed.delete(:tool_set_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :patch, path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools/%3$s", workspace_id, tool_set_id, id], body: parsed, model: Cadenya::ToolSets::Tool, options: ) end |