List Tools

Beta
GET/v1/ai/tools

This endpoint is idempotent. Learn more

Returns a paginated list of every capability that can be granted to an agent.

The catalog is platform-defined and identical for every account, and covers both built-in runtime capabilities and the API operations agents are allowed to perform. The q search term matches against tool names and the name of the group a tool belongs to.

Permissions requiredValues:agents:read
The role behind your API key or agent must grant every one of these permissions.
cursoroptional string

Opaque cursor token identifying where the page of results starts.

Use the cursor value embedded in a previous response's next_page_url or previous_page_url to fetch the adjacent page. Omit to start from the first page.

limitoptional integer

Maximum number of results to return in a single page.

qoptional string

Free-text search term used to filter results.

Which fields are matched against the term varies by endpoint.

objectstringenumValues:list

Resource type identifier.

page_infoobject

Pagination metadata.

next_page_urlstringnullable

Relative URL that fetches the next page of results.

previous_page_urlstringnullable

Relative URL that fetches the previous page of results.

has_next_pageboolean

Whether more results exist after this page.

has_prev_pageboolean

Whether results exist before this page.

dataarray of available_tool

Resources in this page.

objectstringenumValues:available_tool

Resource type identifier.

slugstring

A stable identifier used when attaching the tool to an agent.

categorystring

Where the tool's behavior comes from.

  • built_in: a capability implemented by the agent runtime itself, such as fetching a web page or drafting a reply for a teammate to approve.
  • api_endpoint: an operation of this API exposed as a tool, letting the agent perform it on the account's behalf.
namestring

Human-readable name for the tool.

descriptionstringnullable

Explanation of what the tool does.

This is also the description the agent's model reads when deciding whether to call the tool.

config_schemaobjectnullable

JSON schema describing the configuration options this tool accepts.

Defines the shape of the config field on AgentDefinitionTool: a schema declaring a max_results integer property means that tool's config may set max_results.

Encoded as a JSON value (object, array, string, number, boolean, or null), not a JSON-encoded string.

required_permissionsarray of string

Permission scopes the agent's role must hold for this tool to be usable (e.g. products:read).

required_role_typestringnullable

Role type the caller must have for this tool, when the operation is gated by role rather than a permission (e.g. admin).

mutatingboolean

Whether invoking this tool takes an action rather than only reading data.

True for any api_endpoint tool whose underlying operation is not a read, and for built_in tools that do something externally visible or hard to undo, such as sending an email. A mutating built_in tool always pauses its run for human approval and that gate cannot be turned off for an individual agent; for api_endpoint tools the flag is advisory and review stays configurable per agent.

Responses

200

Successful response for List Tools