---
title: "Discover external task tools"
method: GET
path: "/v1/tasks/{taskId}/tools"
tags: ["Adam API"]
---

# Discover external task tools

`GET /v1/tasks/{taskId}/tools`

## Request

- Base URL: `https://api.adam.new`
- URL: `https://api.adam.new/v1/tasks/{taskId}/tools`
- Auth: one of:
  - HTTP bearer
  - OAuth 2
    - Authorization code: `https://api.adam.new/auth/oauth2/authorize`
    - Token URL: `https://api.adam.new/auth/oauth2/token` scopes: `tasks:read`
- TypeScript: <https://skmtc.dev/adam/apis/adam-api/docs/v1/tasks/:taskId/tools/get.ts> (a function with typed inputs; its response is checked against the schema)

Return the tool schemas and availability for an external task you own. Discovery does not run tools or provision compute.

## Path parameters

- `taskId` string, uuid, required

## Response `200`

- ListPublicTaskToolsResponseDto
  - `tools` object[], required
    - `name` string, required
    - `description` string, required
    - `inputSchema` object, required
    - `available` boolean, required
    - `unavailableReason` string

## Other responses

- `400`: Invalid request
- `401`: Missing or invalid Bearer credential
- `402`: Payment or subscription required
- `403`: Credential is missing a required scope
- `404`: Resource not found
- `409`: Request conflict
- `429`: Rate limit exceeded
- `500`: Internal API error

## Changes

- **2026-10-09** `135cef4f7586`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/adam/apis/adam-api/changes/v1/tasks/:taskId/tools/get.md)

---

[API](https://skmtc.dev/adam/apis/adam-api.md) - [All operations](https://skmtc.dev/adam/apis/adam-api/llms.txt) - [OpenAPI document](https://skmtc.dev/adam/apis/adam-api/revisions/38d4c566646c?raw)
