---
title: "List Tools"
method: GET
path: "/v1/agent/tools"
tags: ["Agent Tools"]
---

# List Tools

`GET /v1/agent/tools`

## Request

- Base URL: `https://api.fish.audio`
- URL: `https://api.fish.audio/v1/agent/tools`
- Auth: HTTP bearer

List your team's tools, newest first. Filter with `agent_id` to see one
agent's attached tools. Paginate with `cursor` (follow `next_cursor` while
`has_more` is true) or with `page` for offset pagination with a `total`
count — the two are mutually exclusive.

## Query parameters

- `search` string, nullable
- `agent_id` string, nullable
- `cursor` string, nullable
- `page` integer, nullable
- `include_total` boolean
- `page_size` integer

## Response `200`

Request fulfilled, document follows

- object
  - `tools` PublicAgentToolSummary[], required
    - `tool_id` string, required
    - `workspace_id` string, required
    - `name` string, required
    - `description` string
    - `tool_type` 'webhook' | 'client', required
    - `method` 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE', required
    - `url` string, required
    - `used_by` integer: How many agents reference this tool in their draft configuration.
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
  - `has_more` boolean, required
  - `next_cursor` string, nullable
  - `total` integer, nullable

## Other responses

- `400`: Bad request syntax or unsupported method
- `401`: No permission -- see authorization schemes
- `404`: Nothing matches the given URI
- `503`: The server cannot process the request due to a high load

## Changes

- **2026-11-03** `42ac421f7a12`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/fish/apis/fishaudio-openapi/changes/v1/agent/tools/get.md)

---

[API](https://skmtc.dev/fish/apis/fishaudio-openapi.md) - [All operations](https://skmtc.dev/fish/apis/fishaudio-openapi/llms.txt) - [OpenAPI document](https://skmtc.dev/fish/apis/fishaudio-openapi/revisions/42ac421f7a12?raw)
