Assistant Setup Question
# support
n
If assistant-request is used for inbound calls, can the phone number still have a default fallback assistant if our server times out or errors, or does the call always fail? Can assistant-request responses be cached or precomputed per phone number/location, or is it always a live webhook round trip before every call? Are assistantOverrides.variableValues applied to: system prompt firstMessage tool messages transfer messages voicemail/end-call messages If variableValues are missing for a variable used in the prompt, what happens? Blank string, literal {{variable}}, or call/config error? Is there a Vapi API/debug surface that shows the final resolved prompt/variables for a specific call? For many similar inbound assistants, does Vapi generally recommend: one assistant with dynamic variables separate assistants per location/language or static generated prompts pushed through the API? For multilingual inbound calls, is the recommended pattern one multilingual assistant with variables, or separate language assistants/squad handoff? Any known issues with dynamic variables in long prompts or with tool-call filler messages?
c
Hi there, Thank you for your message. Our team is currently out of the office. We operate Monday through Friday, from 9:00 AM to 8:00 PM Pacific Standard Time (PST). We’ll get back to you as soon as possible during our normal business hours. If your message is urgent, please mark it accordingly or include “URGENT” in the subject line, and we’ll do our best to respond promptly. Warm regards, Vapi Customer Support Team
p
Yes, I can help with this. Most of these behaviors depend on how Vapi resolves the assistant-request flow and fallback handling. In general, assistant-request is evaluated live per call, variables usually propagate across prompt-related fields, and fallback behavior depends on whether a default assistant is configured server-side before timeout handling. For scalability, the best pattern is usually one base assistant with dynamic variables unless languages or workflows differ heavily. For multilingual setups, separate assistants per language often give more reliable voice and prompt behavior than a single multilingual agent. I can help you design the architecture properly and test edge cases like missing variables, webhook failures, prompt resolution, and tool-call behavior. @Nate
n
If assistant-request is used for inbound calls, can the phone number still have a default fallback assistant if our server times out or errors, or does the call always fail? Can assistant-request responses be cached or precomputed per phone number/location, or is it always a live webhook round trip before every call? Are assistantOverrides.variableValues applied to: system prompt firstMessage tool messages transfer messages voicemail/end-call messages If variableValues are missing for a variable used in the prompt, what happens? Blank string, literal {{variable}}, or call/config error? Is there a Vapi API/debug surface that shows the final resolved prompt/variables for a specific call? For many similar inbound assistants, does Vapi generally recommend: one assistant with dynamic variables separate assistants per location/language or static generated prompts pushed through the API? For multilingual inbound calls, is the recommended pattern one multilingual assistant with variables, or separate language assistants/squad handoff? Any known issues with dynamic variables in long prompts or with tool-call filler messages?
s
Hi, Great questions - here's a breakdown: 1. Fallback Assistant Yes, you can configure a fallbackDestination on your phone number. If your assistant-request webhook times out or returns an error, the call will route to the fallback instead of simply failing. Note that the webhook timeout is 7.5 seconds, so keep your handler fast. 2. Caching of assistant-request No, there's no built-in caching. Every inbound call triggers a live webhook round trip. We recommend keeping your handler pre-warmed and low-latency to comfortably stay within the timeout window.
3. variableValues Scope assistantOverrides.variableValues are applied broadly - system prompt, firstMessage, tool messages, transfer messages, voicemail messages, end-call messages, and more. 4. Missing Variables If a variable used in a prompt isn't provided in variableValues, it will render as the literal {{variable}} text rather than a blank string or throwing an error. This means it could be spoken aloud by the voice, so make sure all referenced variables are supplied.
5. Debug Surface for Resolved Prompts Currently there's no API endpoint or dashboard view that shows the final resolved prompt with substituted variables for a specific call. You can review the original template and the call transcript, but not the intermediate resolved version. 6. Architecture Recommendation For many similar inbound assistants (e.g., per location), we generally recommend one assistant with dynamic variables - return the assistantId along with variableValues from your webhook. This is the most scalable and maintainable approach.
7. Multilingual Inbound Calls The recommended pattern is a single assistant with a multilingual transcriber (e.g., Deepgram Nova Multi) and a multilingual voice provider. List the supported languages explicitly in your system prompt for best results. 8. Known Issues with Dynamic Variables
No known issues with dynamic variables in long prompts or with tool-call filler messages. Let us know if you need help with any of these configurations.