Subject: Requesting Official Guidance for Implementing Multilingual Routing (Handoff Between Assistants) in VAPI v2
Hello: I need your help understanding the correct VAPI v2 method for building a multilingual routing flow using Squads.
I have four assistants:
AP_ROUTER_V2 (language detection only; no conversation)
AP_EN_AGENT_V2 (English receptionist)
AP_TL_AGENT_V2 (Tagalog receptionist)
AP_DE_AGENT_V2 (German receptionist)
My goal is simple:
Caller speaks
Router detects language
Router transfers the call to the correct language-specific agent
Router never answers hotel questions — it only performs language routing
The transfer should play a message such as “Transferring to English Agent.”
Primary Question: What is the correct way to implement assistant-to-assistant routing in VAPI?
A) Should I be using the handoff_to_assistant tool for deterministic routing? If yes:
Where exactly is the Destination Assistant configured?
Should the Router’s system prompt explicitly call the tool, or should the Description field control tool invocation?
Are we supposed to create one handoff tool per destination, or a single dynamic handoff tool?
How should “Request Start” messages (“Transferring to English Agent.”) be attached?
B) Or should we be using a dynamic handoff via webhook (handoff-destination-request)? If so:
What JSON schema should the webhook return?
What fields must be included?
What is the minimal implementation needed to return assistantName: "AP_EN_AGENT_V2"?
C) Or is there a new recommended pattern for routing between assistants in VAPI squads?
Should routing be implemented using assistantOverrides?
Should the router reply with a special metadata tag that triggers routing automatically?
Should system prompts use a specific phrase pattern?
Thank you,
Joe