---
title: "Run tool"
method: POST
path: "/tools/{tool}/executions"
tags: ["Tools"]
---

# Run tool

`POST /tools/{tool}/executions`

## Request

- Base URL: `https://api.darwin.so/api/v1`
- URL: `https://api.darwin.so/api/v1/tools/{tool}/executions`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

User API keys only. Sensitive actions may return an approval request.

## Path parameters

- `tool` string, required

## Request body

- ExecuteToolRequest
  - `input` object

## Response `201`

A sanitized tool result or required next step.

- ToolExecution
  - `tool` string, required
  - `result` object, required
  - `traceId` string, required

## Other responses

- `400`: The request was invalid.
- `401`: The API key or access token is missing, invalid, expired, or revoked.
- `403`: The principal does not have the required scope or resource access.
- `404`: The resource was not found for this principal.

---

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