No data received for apiRequest
# support
s
Hello, i'm getting no almost no data when using apiRequest tool. The only data i'm receiving is what i put in body or headers. I get no info on CallID From number/customer number etc When using function tool, i get all that info. however the function tool doesn't have the variable extraction plan. Which i need to pull dynamic variables into my workflow Is the issue on my end? is it normal for the apiRequest tool to not send that info to my server?
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
s
unsolved, i created a new post, since i can't change the tag
c
Manually pass those values in your apiRequest schema using variable substitution like, {{callId}}, {{customer.number}}..
s
Hi i just tried it but it's not working { "id": "644adbd2-d102-4550-aaab-7c7f75fa5c77", "createdAt": "2025-07-29T10:35:10.230Z", "updatedAt": "2025-07-29T18:08:50.057Z", "type": "apiRequest", "function": { "name": "api_request_tool", "description": "retrieve dynamic variables from my server" }, "messages": [ { "type": "request-start", "content": "", "blocking": false } ], "orgId": "f4e9fc77-59c7-4eee-929a-1d4fd5527194", "name": "test_dynamic_variables", "url": "https://test.onrender.com/vapi/get-client-dynamic-variables", "method": "POST", "body": { "type": "object", "required": [], "properties": { "callId": { "description": "", "type": "string", "value": "{{call.id}}" } } }, "variableExtractionPlan": { "schema": { "type": "object", "required": [ "client_name" ], "properties": { "client_name": { "description": "", "type": "string" } } }, "aliases": [] } } but my server sees the hardcoded {{call.id}} it's not being filled in 2025-07-29 18:09:45,686 - routes.vapi_routes - INFO - Request JSON data: {'callId': '{{call.id}}'}
am i doing something wrong?
@Kings_big💫 thanks got one of the two variables to work!
k
Your server sees {{call.id}} literally because Vapi doesn’t auto-resolve placeholders in tool requests, you'll need to pass actual values using assistantOverrides.variableValues when starting or updating the call.
s
- INFO - Request JSON data: {'callId': '{{callId}}', 'from_number': '+32492291341'}
k
Nice 👍
s
assistantOverrides.variableValues when starting or updating the call. doesn't work in a workflow
tried workflow_overrides, but doesn't work :/
k
Yeah now I got your issue 😶‍🌫️
s
But i have a workaround, i can retrieve the CallID from a serverurl update when the call starts. it's not ideal, but it's something
k
Glad you resolved it
s
it seems you guys are figuring it out together with us 😬 but this is the frontier of ai voice agents, we have to be patient... thanks for the help @Kings_big💫
b
How do you retrieve callID from server url update ? Is that like a node or something ? Can you share your workflow ? I'm having the same issue T_T
s
So when the call starts I use a custom tool, a function tool. in the payload you'll find the callID Save it in your database immediately after the function tool resolves i retrieve the callID back from my database with an api request tool, and extract to a dynamic variable so it's accessible for the rest of teh call
b
Thanks so much brother