Tools
Manage external tools that agents can use during calls. Tools let agents perform HTTP requests (API lookups, CRM writes, appointment booking, etc.) in real-time while on a call. For UUID / phone / datetime formats used below, see Data formats.List Tools
Parameters
Query parameters:| Parameter | Type | Default | Description |
|---|---|---|---|
name | string | — | Filter by name (case-insensitive substring match) |
limit | integer | 50 | 1–100 |
offset | integer | 0 | Pagination offset |
data (array of tool objects), pagination (total, limit, offset, has_more), and meta.
cURL
Get Tool
Create Tool
Parameters
Request body:| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes* | Display name for the tool |
definition | object | No | Full tool definition (see below). If omitted, a placeholder tool is created |
definition.modelToolName | string | No | Snake_case identifier sent to the AI model. Auto-derived from name if omitted. Must match ^[a-zA-Z0-9_-]{1,64}$ |
definition.type | string | No | Tool type. Use "http" for webhook/API integrations |
definition.description | string | No | Description shown to the AI model to help it decide when to use this tool |
definition.http | object | No | HTTP configuration: url, method (default GET) |
definition.dynamicParameters | array | No | Parameters the model fills dynamically at call time |
definition.requirements | object | No | Security options: httpSecurityOptions for API key auth |
name is required unless definition.modelToolName is explicitly provided.
Idempotency: Send X-Idempotency-Key for safe retries.
Example — minimal
Example — full HTTP tool
cURL
data (tool object) and meta. Returns 422 if the tool definition is invalid (e.g. modelToolName contains invalid characters, provider error).
Update Tool
Update a tool’s name and/or definition. Only included fields are changed. Changes are pushed to Ultravox immediately. Request body: Any subset ofname and/or definition. Returns 422 if the definition is rejected.
Delete Tool
Deletes the tool from Truedy and from Ultravox. Agents using this tool will no longer have access to it.Tool Object
| Field | Type | Description |
|---|---|---|
id | UUID | Tool ID |
name | string | Display name |
definition | object | Full tool definition including modelToolName, type, http, dynamicParameters, description |
status | string | active — synced to Ultravox and available for use |
created_at | datetime | When the tool was created |
updated_at | datetime | Last updated |

