Voice lets you give your AI agent a real phone number. Callers interact with the same agent as on your website — same corpus, same tools, same personality — but through natural speech.Documentation Index
Fetch the complete documentation index at: https://docs.animam.ai/llms.txt
Use this file to discover all available pages before exploring further.
Voice calls use the exact same corpus, segments, system prompt, and tools as the chat widget. There is no separate configuration for voice content — changes to your knowledge base apply to both channels instantly.
Architecture
Setup: Option A (One Number Per Tenant)
Each tenant gets one Vapi phone number linked to their Animam agent.- Create a Vapi assistant in your Vapi dashboard
- Set the Custom LLM URL to
https://api.animam.ai/voice/your-slug/chat - Configure your preferred voice (voice ID, language, first message)
- Assign a phone number to the assistant
- Save the
assistantIdandphoneNumberto your Animam tenant settings
Tenant Settings
| Field | Type | Description |
|---|---|---|
voiceEnabled | boolean | Enable/disable the voice channel |
voiceProvider | string | Always "vapi" for now |
voicePhoneNumber | string | E.164 format phone number |
voiceAssistantId | string | Vapi assistant ID |
voiceConfig | object | Voice behavior (see below) |
voiceConfig Fields
| Field | Type | Description |
|---|---|---|
voiceId | string | Vapi/Deepgram voice ID (e.g. "shimmer", "alloy") |
language | string | BCP-47 language code (e.g. "fr-FR", "en-US") |
firstMessage | string | First words spoken when a call connects |
endCallPhrases | string[] | Phrases that trigger call end (e.g. ["au revoir", "merci bonne journée"]) |
maxCallDuration | integer | Maximum call duration in seconds |
Endpoints
POST /voice//chat
Custom LLM endpoint for Vapi. Receives OpenAI-format messages and streams back a response in SSE format. Not intended for direct use — Vapi calls this automatically.POST /voice//events
Webhook endpoint for Vapi events. Handles lifecycle events from Vapi:| Event | Description |
|---|---|
assistant-request | Vapi requesting assistant config at call start |
tool-calls | Tool execution during a call (same tools as chat) |
status-update | Call state changes (ringing, in-progress, ended) |
end-of-call-report | Full call summary after hang-up |
GET /voice//recordings/
Download a call recording (if recording is enabled in Vapi).Tools During Voice Calls
All tools configured for your tenant work during voice calls:- SUBMIT_FORM — Agent collects info verbally, submits the form at end of call
- BOOK_MEETING — Agent checks availability and confirms a booking during the call
- CHECK_AVAILABILITY — Agent reads out available time slots
- ESCALATE_TO_HUMAN — Agent offers to transfer to a human operator
Verifying Your Setup
firstMessage should play within 2 seconds of the call connecting.
Limitations
- One phone number per tenant (Option A)
- Recording storage is managed by Vapi, not Animam
- Voice channel does not support file attachments
COLLECT_PAYMENT(Stripe) is not triggered during voice calls — the agent can describe payment options but cannot generate a checkout link mid-call