Tool Sets
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.
List tool sets
Create a new tool set
Get a tool set by ID
Update a tool set
Delete a tool set
Get consumed OpenAPI spec
List tool set events
ModelsExpand Collapse
ApprovalRequirementFilter object { always, only }
Approval filters that will automatically set the approval requirement on tools synced from an external source
ToolSet object { metadata, spec, info }
Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
name: string
Human-readable name for the resource (e.g., “Customer Support Agent”, “Email Tool”) Required for resources that users interact with directly
bundleKey: optional string
Optional bundle ownership key. When set, indicates the resource is managed by a configuration bundle identified by this key. Used by BulkWorkspaceResources.Apply to track which resources belong to which bundle for reconciliation / soft-delete on re-apply.
Approval filters that will automatically set the approval requirement on tools synced from an external source
baseUrl: optional string
Base URL for dispatching tool calls. If set, overrides the server resolved from the spec’s servers array.
headers: optional map[string]
Headers sent when fetching the spec from a URL and when dispatching tool calls.
serverName: optional string
Name of the server entry in the spec’s servers array (OpenAPI 3.2 server.name field). Used to select which server URL to dispatch to when base_url is not set. If unset, the first server is used. Ignored when base_url is set.
Approval filters that will automatically set the approval requirement on tools synced from an external source
Tool set information
A profile identifies a user or non-human principal (such as an API key) at the account level. Profiles are account-scoped and can be granted access to multiple workspaces.
AccountResourceMetadata is used to represent a resource that is associated to an account but not to a workspace.
ToolSetAdapter object { http, mcp, openapi }
Approval filters that will automatically set the approval requirement on tools synced from an external source
baseUrl: optional string
Base URL for dispatching tool calls. If set, overrides the server resolved from the spec’s servers array.
headers: optional map[string]
Headers sent when fetching the spec from a URL and when dispatching tool calls.
serverName: optional string
Name of the server entry in the spec’s servers array (OpenAPI 3.2 server.name field). Used to select which server URL to dispatch to when base_url is not set. If unset, the first server is used. Ignored when base_url is set.
Approval filters that will automatically set the approval requirement on tools synced from an external source
ToolSetAdapterMcp object { excludeTools, headers, includeTools, 2 more }
Approval filters that will automatically set the approval requirement on tools synced from an external source
ToolSetAdapterOpenAPI object { baseUrl, excludeTools, headers, 5 more }
baseUrl: optional string
Base URL for dispatching tool calls. If set, overrides the server resolved from the spec’s servers array.
headers: optional map[string]
Headers sent when fetching the spec from a URL and when dispatching tool calls.
serverName: optional string
Name of the server entry in the spec’s servers array (OpenAPI 3.2 server.name field). Used to select which server URL to dispatch to when base_url is not set. If unset, the first server is used. Ignored when base_url is set.
Approval filters that will automatically set the approval requirement on tools synced from an external source
ToolSetEvent object { metadata, event, info, toolSetId }
A single event in the tool set’s operation timeline.
Metadata for ephemeral operations and activities (e.g., objectives, executions, runs)
info: optional object { createdBy, toolSet }
A profile identifies a user or non-human principal (such as an API key) at the account level. Profiles are account-scoped and can be granted access to multiple workspaces.
AccountResourceMetadata is used to represent a resource that is associated to an account but not to a workspace.
Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
name: string
Human-readable name for the resource (e.g., “Customer Support Agent”, “Email Tool”) Required for resources that users interact with directly
bundleKey: optional string
Optional bundle ownership key. When set, indicates the resource is managed by a configuration bundle identified by this key. Used by BulkWorkspaceResources.Apply to track which resources belong to which bundle for reconciliation / soft-delete on re-apply.
ToolSetInfo object { agentCount, createdBy, lastSync, toolCount }
A profile identifies a user or non-human principal (such as an API key) at the account level. Profiles are account-scoped and can be granted access to multiple workspaces.
AccountResourceMetadata is used to represent a resource that is associated to an account but not to a workspace.
ToolSetSpec object { adapter, description }
Approval filters that will automatically set the approval requirement on tools synced from an external source
baseUrl: optional string
Base URL for dispatching tool calls. If set, overrides the server resolved from the spec’s servers array.
headers: optional map[string]
Headers sent when fetching the spec from a URL and when dispatching tool calls.
serverName: optional string
Name of the server entry in the spec’s servers array (OpenAPI 3.2 server.name field). Used to select which server URL to dispatch to when base_url is not set. If unset, the first server is used. Ignored when base_url is set.
Approval filters that will automatically set the approval requirement on tools synced from an external source
Tool SetsTools
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.
List tools
Create a new tool
Get a tool by ID
Update a tool
Delete a tool
ModelsExpand Collapse
Tool object { metadata, spec, info }
Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
name: string
Human-readable name for the resource (e.g., “Customer Support Agent”, “Email Tool”) Required for resources that users interact with directly
bundleKey: optional string
Optional bundle ownership key. When set, indicates the resource is managed by a configuration bundle identified by this key. Used by BulkWorkspaceResources.Apply to track which resources belong to which bundle for reconciliation / soft-delete on re-apply.
Config defines the adapter to use for the tool. This is used to determine how the tool is called. For example, if the tool is an HTTP tool, the adapter will be Http. If the tool is an inline tool, the adapter will be Inline.
A profile identifies a user or non-human principal (such as an API key) at the account level. Profiles are account-scoped and can be granted access to multiple workspaces.
AccountResourceMetadata is used to represent a resource that is associated to an account but not to a workspace.
Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
name: string
Human-readable name for the resource (e.g., “Customer Support Agent”, “Email Tool”) Required for resources that users interact with directly
bundleKey: optional string
Optional bundle ownership key. When set, indicates the resource is managed by a configuration bundle identified by this key. Used by BulkWorkspaceResources.Apply to track which resources belong to which bundle for reconciliation / soft-delete on re-apply.
ToolInfo object { createdBy, toolSet }
A profile identifies a user or non-human principal (such as an API key) at the account level. Profiles are account-scoped and can be granted access to multiple workspaces.
AccountResourceMetadata is used to represent a resource that is associated to an account but not to a workspace.
Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
name: string
Human-readable name for the resource (e.g., “Customer Support Agent”, “Email Tool”) Required for resources that users interact with directly
bundleKey: optional string
Optional bundle ownership key. When set, indicates the resource is managed by a configuration bundle identified by this key. Used by BulkWorkspaceResources.Apply to track which resources belong to which bundle for reconciliation / soft-delete on re-apply.
ToolSpec object { config, description, parameters, 2 more }
Config defines the adapter to use for the tool. This is used to determine how the tool is called. For example, if the tool is an HTTP tool, the adapter will be Http. If the tool is an inline tool, the adapter will be Inline.
ToolSpecConfig object { http, mcp, openapi }
Config defines the adapter to use for the tool. This is used to determine how the tool is called. For example, if the tool is an HTTP tool, the adapter will be Http. If the tool is an inline tool, the adapter will be Inline.