In this article, you’ll learn how VoiceAgent Tools enable real-time actions during live calls by allowing your VoiceAgent to interact directly with external systems via API.By leveraging Tools, you can turn your VoiceAgent into a fully capable problem-solver, enhancing automation and delivering faster, smarter customer experiences.
What Are Tools?
Tools allow your VoiceAgent to perform specific actions during a call by making API requests to third-party systems. You can configure exactly what each tool does and when it should be triggered based on the conversation. For example:- A customer asks, “Where’s my order?” → VoiceAgent uses a tool to fetch the latest tracking info.
- A patient says, “Can I move my appointment to Friday?” → VoiceAgent calls your booking API to check availability and reschedule.
-
Fetch data:
- Look up support ticket details
- Access live pricing or availability info
-
Execute actions:
- Update a CRM contact
- Trigger a refund
How to Create a Tool
To get started, go to Dashboard > AI Voice Agents > Tool Management, then either click the ➕ button in the top-right corner or select Create a Tool to open the configuration panel where you can define how your new tool works.
Tool Fields Reference
Understanding Parameters
When defining a tool, parameters help the VoiceAgent pass the right values to your API. There are three main types of parameters you can use in both path and body definitions:Parameter Types
Each parameter also has a data type that controls how the value is formatted in the API request. Available types:
- String, Integer, Number, Boolean work as simple scalar values.
- List sends the value as a JSON array (e.g.
"recipients": ["[email protected]", "[email protected]"]). When you select List, you also choose an element type (List of String, List of Integer, etc.). If the agent extracts only a single value, it’s automatically wrapped into a one-element array rather than failing. - Object sends the value as a JSON object. Note that object parameters are description-only: the agent is told the parameter is an object and sees your description, but it doesn’t know the specific field names, so it can’t enforce internal structure. This works well for simple pass-through payloads.
Path Parameters
These are values placed directly in the URL. You define them using curly brackets inside the endpoint URL, like#{{customer_id}}.
Here’s how it works in practice:
Example Endpoint:https://api.acme.com/#{{customer_id}}/orders
In this case, the customer_id becomes a path parameter.
If defined as a Parameter:
Triggering Request Example:
https://api.acme.com/abc123/orders
To extract via LLM Prompt:Use a clear instruction like:
“Extract the customer ID mentioned by the caller if they provide it. If they don’t provide it proactively, ask for it.”

Body Parameters
ForPOST, PUT, and PATCH methods, you may need to send a request body. These work the same way as path parameters and can also use constants, system prompt variables, or LLM prompts.
Nested objects can be defined using dot notation.
Example Definition:
Triggering Request:

Assigning Tools to VoiceAgents
Tools allow VoiceAgents to perform specific actions during a call, such as triggering external workflows, sending data to other systems, or ending the call. A single VoiceAgent can use multiple Tools, and the same Tool can be used across multiple VoiceAgents. Tools are triggered as actions within a VoiceAgent Scenario. This means the VoiceAgent will use a Tool only when the situation defined in the Scenario occurs during the call. To use tool within scenario:- Navigate to the Scenarios & Guardrails section of the VoiceAgent configuration.
- Create a new Scenario or edit an existing one.
- Define the situation in which the Tool should be used.
- In the Action field, select Tool Call.
- In the Tools dropdown, choose the Tool you want the VoiceAgent to use.
-
Save the configuration.

Tips for Using Tools Effectively
-
Use clear and descriptive tool names
Give each tool a name that clearly reflects what it does. Avoid abbreviations or internal codes.-
Good:
trigger_refund,get_order_status,book_appointment -
Not great:
rfnd_tool_v1,statusQ,app_sched_new
-
Good:
-
Write a natural language description
In the Tool Description field, explain when and why the VoiceAgent should use the tool. For complex tools, add a short description for each argument the agent needs to collect.
Need help or have a question? Just reach out through our Support portal — we’re here for you.