mr_washingtonz
05/28/2025, 9:15 AMVapi Support Bot
05/28/2025, 9:17 AMjson
{
"type": "object",
"properties": {
"exampleField": {
"type": "string",
"description": "A sample field"
}
},
"required": ["exampleField"]
}
Avoid using $ref
in your schema, as it is not supported by Vapi's function calling integration with OpenAI, Anthropic, or Google. Try adding a simple property as shown above and save again.
Sources:
- [Vapi API Request Node Documentation](https://docs.vapi.ai/workflows/nodes/api-request)
- [Vapi Tool Calling Integration](https://docs.vapi.ai/customization/tool-calling-integration)Vapi Support Bot
05/28/2025, 9:17 AMjson
{
"type": "object",
"properties": {
"dummy": { "type": "string" }
}
}
This should allow you to save or update the API Request tool successfully. Avoid using $ref
in your schema, as it is not supported for function calling with OpenAI, Anthropic, or Google models.
Source:
- [Vapi Custom Tools Documentation](https://docs.vapi.ai/tools/custom-tools)Kings Big
05/29/2025, 2:10 AMmr_washingtonz
05/29/2025, 3:12 AMMarcos
05/29/2025, 9:38 AMKings Big
05/29/2025, 9:09 PMGET
to POST
\- Keep your request body configuration as is
\- The body type should automatically resolve to "object" when you have properties defined
\### Option 2: If this should be a GET request
\- Remove the entire Request Body section
\- Use URL parameters or headers instead for any data you need to send
\- GET requests should not have request bodies
**Step-by-step implementation**:
1\. **For POST request (Option 1)**:
- Change the HTTP Method dropdown from "GET" to "POST"
- Add a Content-Type: application/json
header if not already present
- Your existing message property configuration should work correctly
2\. **For GET request (Option 2)**:
- Keep GET method
- Remove the "message" property from the Request Body section
- If you need to send the message, add it as a URL parameter instead