https://retellai.com/?utm_source=discord&utm_medium=seo logo
Retell Receives Inbound Webhook Data, But {{first_...
# ❓・ai-evy-support
m
@AI Evy Retell Receives Inbound Webhook Data, But {{first_name}} Is Not Resolving In The Prompt Hi everyone, I'm currently in Section 5 #28 - Mastering Inbound AI Calls: Adding Personalization - Udemy of the course and I'm hoping someone can help me. I've been stuck on this for almost 6 hours and feel like I'm missing one small setting somewhere. I'm using an Inbound Call Webhook with Retell and Make.com. My flow is: Retell → Make Webhook → OpenAI → Google Sheets Search Row → Webhook Response → Retell The goal is to retrieve the caller's information from Google Sheets and use it inside the Retell prompt for personalization. Everything appears to be working correctly: ✅ Inbound webhook is triggered ✅ Phone number is formatted correctly and matches the Google Sheet record ✅ Google Sheets finds the correct row ✅ Webhook Response returns the caller information ✅ Retell Call History → Detail Logs shows the webhook response with all the correct data Example response:
Copy code
json
{
"first_name": "Mark",
"phone_number": "+61473503315",
"email_address": "mark@email.com",
"dental_service": "Teeth Cleaning"
}
I've already tried: * Confirming the correct Inbound Call Agent is attached to the number * Saving and republishing the agent * Matching variable names exactly (
first_name
) * Using variables in both the Welcome Message and Agent Prompt * Testing different webhook response structures * Hardcoding test values * Multiple test calls after each change The issue is that when I use:
Copy code
text
{{first_name}}
Retell literally says:
Copy code
text
{{first_name}}
instead of:
Copy code
text
Mark
What confuses me is that the Detail Logs clearly show Retell receiving the webhook response successfully. My question is: If Retell is receiving the inbound webhook response, how do I correctly access those values inside the prompt? Is there an additional mapping step, a different variable syntax, or something else that I'm missing?
a
Thanks for tagging me @manthu. I'll look through relevant sources and get back to you shortly.
### Answer Based on the information sources, the issue is that your Inbound Call Webhook response needs to be wrapped in a
retell_llm_dynamic_variables
object. [(1) ]() [(2) ]() Your current webhook response structure:
Copy code
json
{
  "first_name": "Mark",
  "phone_number": "+61473503315",
  "email_address": "mark@email.com",
  "dental_service": "Teeth Cleaning"
}
Should be changed to:
Copy code
json
{
  "retell_llm_dynamic_variables": {
    "first_name": "Mark",
    "phone_number": "+61473503315",
    "email_address": "mark@email.com",
    "dental_service": "Teeth Cleaning"
  }
}
The Inbound Call Webhook expects a JSON object in reply, consisting of key-value pairs of the variables you want to access within your prompt, but these must be nested inside the
retell_llm_dynamic_variables
object. [(2) ]() Anything within that object will be mapped, within the prompt, to
{{whatever_variable_name_you_used}}
. Once you update your Make.com webhook response module to return the data in this format, your
{{first_name}}
variable should resolve correctly to "Mark" instead of displaying literally as
{{first_name}}
. [(1) ]() [(3) ]()
​ To learn more, see the sources I considered: [[1] Inbound webhook](https://docs.retellai.com/features/inbound-call-webhook) [[2] Discord message from @fyodor2572 on 2025-01-13](https://discord.com/channels/1186424376300679209/1186462578310910112/1328501089112424508) [[3] Dynamic Variables](https://docs.retellai.com/build/dynamic-variables) ​
Feel free to tag @AI Evy with additional questions. I also appreciate feedback, it helps me improve.