v1
latestOpenAPI 3.0.32026-07-267015229.9 KBTools
Get Tools
Returns a paginated list of tools. The type query parameter controls which tools are returned:
- type=user (default) - tools you created via Create Tool.
- type=system - built-in system tools Tavus provides. These are always available to every conversation; you do not need to attach them. The only system tool today is end_call, which lets the PAL hang up at a natural stopping point.
- type=all - both, with system tools listed first.
System tools have is_system_tool: true, an owner_id of null, and use their name as the tool_id (e.g. end_call). They cannot be created, updated, or deleted.
get/v2/tools
Query parameters
limitinteger
Page size. Default 10.
pageinteger
1-indexed page number. Default 1.
sort'asc' | 'desc'
Sort order by created_at. Default asc.
type'user' | 'system' | 'all'
Which tools to return.
name_or_uuidstring
Optional filter. Case-insensitive substring match against name, or exact match against tool_id.
Response
Tools returned
Example response
{
"data": [
{
"tool_id": "tabc123def456",
"owner_id": 3675,
"name": "get_weather",
"description": "Get the current weather for a city",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "City name"
}
},
"required": [
"city"
]
},
"delivery": {
"api": {
"url": "https://api.example.com/v1/weather/{city}",
"headers": {
"X-Service": "weather-bot"
},
"auth": {
"name": "X-API-Key",
"token_url": "https://auth.example.com/oauth/token"
},
"query_params": {
"units": "metric"
},
"content_type": "application/json"
}
},
"trigger_type": "in_call",
"origin": "llm",
"on_call": "generate_filler",
"on_resolve": "generate_response",
"static_filler": "Sure, let me grab that for you.",
"created_at": "2026-05-15T10:30:00",
"updated_at": "2026-05-15T10:30:00"
}
],
"total_count": 12
}