---
title: "Call multiple tools in parallel"
method: POST
path: "/v1/tools/batch"
---

# Call multiple tools in parallel

`POST /v1/tools/batch`

## Request

- Base URL: `https://api.toolrouter.com`
- URL: `https://api.toolrouter.com/v1/tools/batch`
- Auth: HTTP bearer

## Request body

- object
  - `calls` object[], required
    - `tool` string, required
    - `skill` string, required
    - `input` object, required

## Response `200`

Array of results in the same order as calls

- BatchResponse
  - `results` ToolCallResult[], required
    - `id` string, nullable
    - `status` 'success' | 'error' | 'pending', required
    - `output` object
    - `usage` object
    - `meta` object
    - `job_id` string
    - `poll_url` string, uri

## Other responses

- `400`: Machine-readable ToolRouter error
- `401`: Machine-readable ToolRouter error
- `429`: Request quota exceeded
- `default`: Machine-readable ToolRouter error

---

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