Draft Documentation
This guide is currently in development. Content may be incomplete or subject to change.
Voice Actions
Configure actions that the AI can take during voice calls. Enable transfers, API lookups, authentication, and cross-channel messaging.
In this guide
What are Voice Actions?
Voice Actions are tools available to the AI during voice calls. They allow the AI to perform specific tasks based on conversation context - like transferring calls, looking up data, or authenticating callers.
How Actions Work
Actions are defined as functions
Each action is exposed to the AI as a callable function with parameters using OpenAI's function calling format.
AI decides when to use actions
Based on conversation context and the action descriptions, the AI determines when calling an action is appropriate.
Results inform the conversation
Action results are returned to the AI, which uses them to continue the conversation appropriately.
Action Types
Available voice action types and their use cases:
Transfer
Transfer the call to a queue, agent, or external number.
Hangup
End the call gracefully after completing the objective.
ApiCall
Query an external API during the call for real-time data.
SendWhatsApp
Send a WhatsApp message to the caller during or after the call.
DatabaseLookup
Query the campaign database for customer information.
Authenticate
Validate caller identity against database records.
GetCustomerData
Retrieve customer info with gated access (requires authentication first).
SetVariable
Store data in call context for later use or enrichment.
Actions list in VoiceBot config
Screenshot coming soon
Creating Custom Actions
Configure actions in the VoiceCall step within your flow.
Steps:
- Open the VoiceCall step in the flow editor
- Navigate to the Actions tab
- Click "Add Action"
- Select the action type
- Configure the function name and description
- Define parameters (what info the AI should collect)
- Configure post-action behavior
Create new action form
Screenshot coming soon
Function Definition
Each action becomes a function the AI can call. The description helps the AI understand when to use it:
{
"name": "transfer_to_sales",
"description": "Transfer the call to the sales team when the customer wants to make a purchase or has questions about pricing",
"parameters": {
"type": "object",
"properties": {
"reason": {
"type": "string",
"description": "Brief reason for the transfer"
}
},
"required": ["reason"]
}
}Function definition preview
Screenshot coming soon
Transfer Action Configuration
Configure how calls are transferred to agents or external numbers.
Transfer action configuration
Screenshot coming soon
Destination Types
Extension
Transfer to a specific agent by extension number.
Queue
Transfer to a call queue (e.g., "sales", "support"). The next available agent in the queue will receive the call.
External
Transfer to an external phone number. Useful for specialist callbacks or external partners.
SIP
Transfer to a SIP address for integration with external VoIP systems.
Destination Mapping
Map friendly names to actual destinations:
Destination Mapping: - "sales" → queue:sales_team - "support" → queue:technical_support - "billing" → queue:billing_dept - "supervisor" → ext:1001
Transfer Announcement
Configure what the AI says before transferring:
Example: "I'll transfer you to our sales team now. Please hold for a moment."
API Call Action Configuration
Make real-time API calls during voice conversations to fetch or update data.
API Call action setup
Screenshot coming soon
Configuration Steps
- Select the API integration to use
- Choose the endpoint
- Map parameters from call context to API parameters
- Define which response fields to extract
- Configure the speech template for the AI to read results
Response Template
Define how the AI should communicate API results:
// Template for account balance lookup
"Your current balance is {{response.balance}} pesos.
Your last payment was {{response.last_payment_date}}
for {{response.last_payment_amount}} pesos."Response template configuration
Screenshot coming soon
Authentication Actions
Validate caller identity before providing sensitive information or taking actions.
Authentication action fields
Screenshot coming soon
Validation Methods
Database Validation
Match caller-provided information against campaign database records.
Required Fields
Configure which fields the AI should collect and validate:
Match Types
Multi-Step Verification
For sensitive operations, require multiple verification fields:
Step 1: Collect and verify RUT Step 2: Collect and verify date of birth Step 3: If both match, authentication successful
Security Tip: Configure a maximum number of authentication attempts. After exceeded, transfer to a human agent or end the call.
Cross-Channel Actions
Trigger WhatsApp messages during or after voice calls for follow-up communication.
Cross-channel trigger settings
Screenshot coming soon
Trigger Conditions
Template Configuration
Select a WhatsApp template and configure variables from call context:
Template: appointment_confirmation
Variables:
- {{1}}: {{customer_name}}
- {{2}}: {{appointment_date}}
- {{3}}: {{appointment_time}}Action Results & Capture
Capture data from actions to use in the AI conversation and enrich datasets.
Capturing Data
Configure which fields from action results to save:
- API response fields
- Database lookup results
- Authentication status
- Transfer outcome
Using Captured Data
Captured data is available to the AI for the remainder of the conversation:
// After API call capturing balance
AI: "I can see your current balance is $150,000.
Would you like to make a payment today?"
// AI has access to captured data:
// - balance: 150000
// - last_payment_date: "2024-01-15"
// - account_status: "active"Execution History
All action executions are logged with:
- Timestamp
- Parameters provided by AI
- Result/response
- Duration
- Success/failure status