Skip to main content
Tools are functions that an AI agent can invoke during a call. They extend the agent’s capabilities beyond conversation — making API calls, transferring calls, extracting data, and more.

Tool types

The API accepts all 14 tool types of the product: Each type’s required fields and ranges are checked on create and update; violations return 400 VALIDATION_ERROR with details[].field = "config" and a message naming the sub-field.

Data model

Tool configurations

http_request

Make HTTP requests to external APIs during a call.
timeout must be a string and header/query entries must use the key name. The API rejects "timeout": 30 or { "key": ... } with 400 VALIDATION_ERROR — the voice agent would otherwise silently drop those entries.

transfer_call

Transfer the call to a human agent or external number.

monitored_transfer

SIP INVITE transfer with monitoring — the AI stays on the line to monitor the transfer.

end_call

Terminate the call with an optional goodbye message.

extract_variable

Extract structured data from the conversation.

play_tone

Play DTMF tones for IVR navigation.

knowledge_base

Search the agent’s knowledge base using RAG (Retrieval-Augmented Generation).

switch_agent

Hand the live call over to another agent of your organization; prompt, voice and tools come from the target agent.

identify_caller

Caller identification via a case-number + postcode handshake against your own webhooks (lookup_url, fetch_case_url, optional verify_plz_url, digit settings for aktenzeichen and plz). Set this up together with TalkPilot support.

verify_value

Deterministic check of a dictated value: the value is parsed from the transcript, the rules are evaluated top to bottom (first match wins), and the resulting outcome carries its own fixed wording — the model never decides the result.
Every outcome referenced in rules, default_outcome and unresolved_outcome must be a key of outcomes.

list_available_slots / book_appointment

Appointment booking on the organization’s connected calendar (Dashboard > Kalender). Both tools take the same config — they work on one slot grid.

resolve_contact

Runs before a booking in contact_mode: phone and establishes how to reach the caller (calling number, dictated mobile number, e-mail). All sentences are yours; {mitarbeiter} is the only placeholder.

Endpoints

List tools

Permission: tools:read | Pagination: no (returns all tools)

Get tool

Permission: tools:read

Create tool

Permission: tools:write Required fields: name, description, tool_type, config Returns 409 Conflict if a tool with the same name already exists for the agent.

Update tool

Permission: tools:write Updatable: name, display_name, description, config, is_enabled, priority, employee_id. tool_type cannot be changed (a sent value is ignored); other unknown fields are ignored as well.

Delete tool

Permission: tools:write | Returns 204 No Content