Tools
List objective tools
ModelsExpand Collapse
ObjectiveTool = object { metadata, snapshot }
ObjectiveTool represents a tool that was assigned to an objective.
BareMetadata contains the minimal metadata for a resource: the ID and an optional human-readable name. These are used for reference fields where the full metadata (account scoping, timestamps, labels, external IDs) is not needed — e.g., the tool references inside an agent variation spec or the tools assigned to an objective. Both fields are server-populated; clients provide IDs through sibling fields rather than by constructing a BareMetadata themselves.
Snapshot of the tool at the time it was assigned to the objective. Because tools can change over time, snapshots are used to ensure tools don't change unexpectedly during an objective's lifecycle.
Standard metadata for persistent, named resources (e.g., agents, tools, prompts)
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.
Profile represents a human user at the account level. Profiles are account-scoped resources that can be associated with multiple workspaces through the Actor model. Authentication for profiles is handled via SSO/OAuth (WorkOS).
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)