Class: Cadenya::Resources::ToolSets::Tools
- Inherits:
-
Object
- Object
- Cadenya::Resources::ToolSets::Tools
- Defined in:
- lib/cadenya/resources/tool_sets/tools.rb,
sig/cadenya/resources/tool_sets/tools.rbs
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, metadata:, spec:, workspace_id: nil, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolCreateParams for more details.
-
#delete(tool_set_id, id, workspace_id: nil, 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: nil, cursor: nil, include_info: nil, labels: 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(tool_set_id, id, workspace_id: nil, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolOmitParams for more details.
-
#restore(tool_set_id, id, workspace_id: nil, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolRestoreParams for more details.
-
#retrieve(tool_set_id, id, workspace_id: nil, request_options: {}) ⇒ Cadenya::Models::ToolSets::Tool
Some parameter documentations has been truncated, see Models::ToolSets::ToolRetrieveParams for more details.
-
#update(tool_set_id, id, workspace_id: nil, 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.
276 277 278 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 276 def initialize(client:) @client = client end |
Instance Method Details
#create(tool_set_id, metadata:, spec:, workspace_id: nil, 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 @client.workspace_id 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(tool_set_id, id, workspace_id: nil, request_options: {}) ⇒ nil
Some parameter documentations has been truncated, see Models::ToolSets::ToolDeleteParams for more details.
Deletes a tool in the tool set
193 194 195 196 197 198 199 200 201 202 203 204 205 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 193 def delete(tool_set_id, id, params = {}) parsed, = Cadenya::ToolSets::ToolDeleteParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do @client.workspace_id 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: nil, cursor: nil, include_info: nil, labels: 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
154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 154 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 @client.workspace_id end @client.request( method: :get, path: ["v1/workspaces/%1$s/tool_sets/%2$s/tools", workspace_id, tool_set_id], query: query.transform_keys( include_info: "includeInfo", requires_approval: "requiresApproval", sort_order: "sortOrder" ), page: Cadenya::Internal::CursorPagination, model: Cadenya::ToolSets::Tool, options: ) end |
#omit(tool_set_id, id, workspace_id: nil, 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.
226 227 228 229 230 231 232 233 234 235 236 237 238 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 226 def omit(tool_set_id, id, params = {}) parsed, = Cadenya::ToolSets::ToolOmitParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do @client.workspace_id 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(tool_set_id, id, workspace_id: nil, 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.
259 260 261 262 263 264 265 266 267 268 269 270 271 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 259 def restore(tool_set_id, id, params = {}) parsed, = Cadenya::ToolSets::ToolRestoreParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do @client.workspace_id 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(tool_set_id, id, workspace_id: nil, 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 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 65 def retrieve(tool_set_id, id, params = {}) parsed, = Cadenya::ToolSets::ToolRetrieveParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do @client.workspace_id 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(tool_set_id, id, workspace_id: nil, 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
103 104 105 106 107 108 109 110 111 112 113 114 115 116 |
# File 'lib/cadenya/resources/tool_sets/tools.rb', line 103 def update(tool_set_id, id, params = {}) parsed, = Cadenya::ToolSets::ToolUpdateParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do @client.workspace_id 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 |