### Answer
Vapi allows you to define custom functions that can be called during a conversation with your voice AI assistant. These functions are designed to interact with your backend or any external service, enabling a wide range of actions based on the conversation context. You can create custom functions that perform actions like booking appointments, fetching data, or any server-side logic relevant to your application's needs.
### Custom Function Capabilities:
- Custom functions are defined within the assistant configuration, allowing you to specify the function's name, description, and parameters it accepts. This enables a tailored execution based on the conversation context [(1)](
) .
- The flexibility in defining parameters (type, properties, and descriptions) allows for a versatile interaction model where the assistant can dynamically make function calls based on the conversation flow.
### Limitations:
- Custom functions must adhere to a structured format: names should only contain letters (a-z, A-Z), numbers (0-9), underscores, or dashes, with a maximum length of 64 characters.
- The execution of these functions is dependent on the setup of a
serverUrl
, which must be accessible and capable of processing the function call requests sent by Vapi. This requires proper backend implementation to handle function logic and response.
- While Vapi doesn't limit the 'type' of functions you can create, the practical limitation comes from your backend’s ability to process and respond to these function calls within the context of your voice AI application's logic.
- It's important to note that any limitations would largely stem from the specific implementation and hosting environment of the server handling these function calls, rather than limitations imposed directly by Vapi.
For the most effective use of custom funct