Ramy
04/11/2025, 8:46 PMVapi Support Bot
04/11/2025, 8:48 PMtool.server.url
(if configured, and only for "tool-calls" message)
2. assistant.serverUrl
(if configured)
3. phoneNumber.serverUrl
(if configured)
4. org.serverUrl
(if configured)
This means that if you have a server URL configured at the assistant level, it will take priority over the organization-level URL for that specific assistant's communications.
Would you like me to help troubleshoot why your assistant-request message isn't triggering? I'd need more details about your setup to assist further.
Sources:
- [https://docs.vapi.ai/tools/default-tools](https://docs.vapi.ai/tools/default-tools)
- [https://docs.vapi.ai/api-reference/webhooks/server-message](https://docs.vapi.ai/api-reference/webhooks/server-message)
- [https://docs.vapi.ai/server-url/setting-server-urls](https://docs.vapi.ai/server-url/setting-server-urls)Ramy
04/11/2025, 8:49 PMRamy
04/11/2025, 8:49 PMVapi Support Bot
04/11/2025, 8:51 PMtool.server.url
(if configured, and only for "tool-calls" message)
2. assistant.serverUrl
(if configured)
3. phoneNumber.serverUrl
(if configured)
4. org.serverUrl
(if configured)
This means that if you have configured a server URL at the assistant level, it would take precedence over the organization-level URL when Vapi needs to communicate with your server.
For dynamic variables specifically, they are typically fetched using the assistant-request message. This message is triggered when:
- A number receives a call
- A phone number without an assigned assistant or squad is called
- The system needs to determine which assistant to use (for example, based on time of day)
The assistant-request message is sent to your server URL as a POST request, and your server should respond with a JSON object containing the assistant configuration, which can include dynamic variables.
Is there anything specific about your setup that you'd like me to help with?
Sources:
- [https://docs.vapi.ai/api-reference/webhooks/server-message](https://docs.vapi.ai/api-reference/webhooks/server-message)
- [https://docs.vapi.ai/server-url/events](https://docs.vapi.ai/server-url/events)
- [https://docs.vapi.ai/examples/inbound-support](https://docs.vapi.ai/examples/inbound-support)Ramy
04/11/2025, 9:04 PMRamy
04/11/2025, 9:04 PMRamy
04/11/2025, 9:12 PMVapi Support Bot
04/11/2025, 9:14 PM{{customer.name}}
variable in both contexts:
### Using {{customer.name}}
in API Request Nodes:
You can include dynamic variables in the queryParameters
section of your API request configuration using double curly braces. For example:
json
{
"task": "ApiRequest",
"method": "GET",
"url": "https://api.example.com/data",
"headers": {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
},
"queryParameters": {
"customerName": "{{customer.name}}",
"otherParam": "someValue"
}
}
According to the [documentation](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1344671338249453660), the {{customer.name}}
variable will be replaced with the actual customer name value that was received earlier in your workflow.
### Using {{customer.name}}
in Condition Nodes:
For condition nodes, you can use dynamic variables to create branching paths based on the customer's name. Here's how:
1. Insert a condition node into your workflow
2. Attach one or more nodes to the condition node
3. Click the "Logic" tag on each connecting edge
4. Define rules or comparisons using the {{customer.name}}
variable
For example, you could create a condition that checks if {{customer.name}}
equals a specific value, or if it's not empty.
If you encounter issues with {{customer.name}}
, you might need to use just {{name}}
instead and adjust your variableValues
accordingly:
json
variableValues: {
name: customer.name,
}
To set the assistant's first message to "Hello {{name}}", you would include this in your assistant configuration with the dynamic variable syntax.Vapi Support Bot
04/11/2025, 9:14 PMRamy
04/11/2025, 9:23 PMVapi Support Bot
04/11/2025, 9:24 PMqueryParameters
section in your API Request node configuration using the following JSON structure:
json
{
"task": "ApiRequest",
"method": "GET",
"url": "https://api.example.com/data",
"headers": {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
},
"queryParameters": {
"param1": "{{dynamicValue1}}",
"param2": "{{dynamicValue2}}",
"customerName": "{{customer.name}}"
}
}
According to the [documentation](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1344671338249453660), the queryParameters
section is where you define the parameters that will be added to your API request URL. Each parameter is defined as a key-value pair, and you can use dynamic variables (with double curly braces {{}}
) to insert values that were collected earlier in your workflow.
For example, if you want to include the customer's name as a query parameter, you would add "customerName": "{{customer.name}}"
to your queryParameters section.
Is there anything specific about the API Request configuration that you'd like me to explain further?
Source:
- [https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1344671338249453660](https://discord.com/channels/1211482211119796234/1211483291191083018/threads/1344671338249453660)alexrb1
04/12/2025, 12:56 AMRamy
04/12/2025, 11:54 PMalexrb1
04/13/2025, 12:03 AMPraveen Nair
04/14/2025, 12:26 PM