Vapi is a voice AI platform that enables developers to build, test, and deploy voice agents with natural conversations, real-time responses, and seamless integration capabilities.
Vapi is a voice AI platform that enables developers to build, test, and deploy voice agents with natural conversations, real-time responses, and seamless integration capabilities. On Nagent, Vapi is exposed as a fully-configurable artificial intelligence integration that any agent can call — 38 actions, and API key authentication. No code is required to wire Vapi into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Vapi to automate the kinds of tasks artificial intelligence teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Vapi into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Vapi, with input parameters and output schema. Drop these into any step of an agent built in Helix.
VAPI_ASSISTANT_CONTROLLER_UPDATETool to update an existing Vapi assistant configuration. Use when you need to modify assistant properties such as name, voice settings, transcriber configuration, model settings, messages, or other behavior parameters. Only include fields you want to update.
Input parameters
The unique identifier of the assistant to update
The name of the assistant
Configuration for the LLM model used by the assistant. Includes provider, model name, temperature, and other model-specific settings
Configuration for the text-to-speech voice. Supports providers like ElevenLabs, PlayHT, Rime, Azure, Cartesia, etc.
Custom metadata object to attach to the assistant. Can contain any key-value pairs for your use
Server URL where assistant events and messages will be sent
Configuration for messages to be sent to client and server during the call
Configuration for real-time monitoring of assistant's calls.
Configuration for the speech-to-text transcriber. Supports multiple providers like AssemblyAI, Deepgram, Google, Azure, etc. Each provider has specific configuration options
Configuration for post-call analysis including summary and structured data extraction.
Configuration for artifacts (recordings, transcripts) created during or after the call.
The first message that the assistant will say. Can be text or a URL to an audio file (mp3, wav, etc.). If unspecified, assistant will wait for user to speak
Whether HIPAA compliance is enabled for the assistant
List of credential IDs the assistant should use for various integrations
List of message types to send to client SDKs
Configuration for handling maximum call duration
List of message types to send to server URL
Background sound in the call. Options: 'off', 'office'. Default is 'office' for phone calls and 'off' for web calls
Message the assistant will say before ending the call
Phrases that will trigger the end of the call when spoken by the user
Plan for when assistant should stop talking on customer interruption.
Secret used to authenticate requests to the server URL
Plan for when the assistant should start talking.
Message the assistant will say if the call goes to voicemail
Mode for the first message. Options: 'assistant-speaks-first', 'assistant-waits-for-user'. Default is 'assistant-speaks-first'
Whether backchannel (verbal acknowledgments like 'uh-huh', 'mm-hmm') is enabled
Maximum number of seconds the call will last, after which it will be ended
Delay in seconds before the assistant responds
Number of seconds of silence before the call is ended
Configuration for transport protocols (SIP, WebRTC, etc.)
Delay in seconds before making LLM requests
Whether background noise filtering is enabled
Whether to include model output in messages sent to client/server
Number of words user needs to speak to interrupt the assistant
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CALL_CONTROLLER_FIND_ALLTool to list calls from Vapi. Use when you need to retrieve multiple calls with optional filtering by id, assistantId, phoneNumberId, or date ranges. Returns an array of call objects with details including status, costs, messages, and artifacts.
Input parameters
Unique call identifier. Use to filter for a specific call.
Maximum number of items to return. Defaults to 100 if not specified. Must be between 0 and 1000.
Returns calls with the specified assistantId. Use to filter calls by assistant.
Returns items where createdAt meets or exceeds the specified value. Use ISO 8601 date-time format (e.g., '2024-01-01T00:00:00Z').
Returns items where createdAt exceeds the specified value. Use ISO 8601 date-time format (e.g., '2024-01-01T00:00:00Z').
Returns items where createdAt is at or below the specified value. Use ISO 8601 date-time format (e.g., '2024-12-31T23:59:59Z').
Returns items where createdAt is below the specified value. Use ISO 8601 date-time format (e.g., '2024-12-31T23:59:59Z').
Returns items where updatedAt meets or exceeds the specified value. Use ISO 8601 date-time format (e.g., '2024-01-01T00:00:00Z').
Returns items where updatedAt exceeds the specified value. Use ISO 8601 date-time format (e.g., '2024-01-01T00:00:00Z').
Returns items where updatedAt is at or below the specified value. Use ISO 8601 date-time format (e.g., '2024-12-31T23:59:59Z').
Returns items where updatedAt is below the specified value. Use ISO 8601 date-time format (e.g., '2024-12-31T23:59:59Z').
Phone number for the call; for outbound/inbound phone calls only. Use to filter calls by phone number.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CHAT_CONTROLLER_DELETE_CHATTool to delete a chat by its ID from Vapi. Use when you need to permanently remove a chat conversation.
Input parameters
The chat identifier to be deleted
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CHAT_CONTROLLER_GET_CHATTool to fetch chat details by ID. Use when you have a chat ID and need full chat information including messages, costs, and configuration.
Input parameters
The unique identifier of the chat to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CREATE_ANALYTICS_QUERYTool to create and execute analytics queries on VAPI data. Use when you need to analyze call or subscription metrics with aggregations like count, sum, average, min, or max. Supports grouping by various dimensions and time-based analysis with custom time ranges.
Input parameters
List of analytics queries to execute. Each query must have a unique name, specify a table, and define operations to perform
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CREATE_ASSISTANTTool to create a new Vapi assistant with specified transcriber, voice, and AI model configurations. Use when setting up a conversational AI assistant for voice interactions. The assistant requires transcription (speech-to-text), voice (text-to-speech), and AI model (conversation logic) configurations at minimum.
Input parameters
Assistant identifier/name for easy reference and organization
AI model for conversation logic (e.g., OpenAI GPT-4, Claude). Define the provider, model name, and initial messages including system prompts to control assistant behavior.
Text-to-speech settings with provider and voiceId. Select a provider like 11labs, Azure, or OpenAI and specify the voice identifier for the assistant's speech output.
Speech-to-text configuration. Choose from providers: AssemblyAI, Azure Speech, Deepgram, ElevenLabs, Gladia, Google, OpenAI, Cartesia, Speechmatics, Talkscriber, or Custom. Configure the model and language for optimal transcription.
Initial greeting message the assistant will say when the conversation starts
Instructions for AI behavior and personality. Alternative to including system message in model.messages field.
List of message types to relay to the client application
List of message types to send to the server webhook
Maximum call duration in seconds before automatic termination
Voicemail detection configuration.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CREATE_EVALTool to create an eval for testing conversation flows. Use when you need to validate that an AI assistant responds correctly to specific conversation scenarios.
Input parameters
Name of the eval to help identify what the eval is checking for
Type of the eval. Currently fixed to 'chat.mockConversation'
Mock conversation messages for evaluating the conversation flow. Mock Messages simulate the conversation flow, and Evaluation Messages are checkpoints where the model's response is evaluated for content and tool calls
Description of the eval and its purpose in detail. Not used to evaluate the conversation flow
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CREATE_OPEN_AI_CHATTool to create an OpenAI-compatible chat using the Vapi API. Use when you need to send a chat message to an assistant or squad and receive a response. Supports both streaming and non-streaming modes.
Input parameters
The name of the chat. This is just for your own reference.
The input text for the chat. Can be a string or an array of chat messages. This field is required for chat creation.
The squad configuration object that will be used for the chat. Use this to define a transient squad. Mutually exclusive with 'squadId' field.
Whether to stream the response or not. Defaults to true.
The squad ID that will be used for the chat. Use this to reference an existing squad. Mutually exclusive with 'squad' field.
The assistant configuration object that will be used for the chat. Use this to define a transient assistant. Mutually exclusive with 'assistantId' field.
The ID of the session that will be used for the chat. Mutually exclusive with 'previousChatId' and transport fields (phoneNumberId/customer).
Used to send the chat through a transport like SMS. If transport.phoneNumberId and transport.customer are provided, creates a new session. Cannot specify both sessionId and transport fields (phoneNumberId/customer) together.
The assistant ID that will be used for the chat. Use this to reference an existing assistant. Mutually exclusive with 'assistant' field.
The ID of the chat that will be used as context for the new chat. The messages from the previous chat will be used as context. Mutually exclusive with 'sessionId'.
Variable values that will be used to replace template variables in the assistant messages. Only variable substitution is supported in chat contexts - other assistant properties cannot be overridden.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CREATE_POLICYTool to create a monitoring policy in VAPI. Use when you need to set up automated monitoring rules based on thresholds and time windows. Policies can trigger alerts based on event counts or percentages over a specified lookback window.
Input parameters
Policy identifier name. This should be a descriptive name for the policy.
Interval-based scheduling configuration for policy execution.
Cron-like scheduling configuration for policy execution.
Severity level of the policy. Use 'error' for critical issues, 'warning' for concerning patterns, or 'info' for informational alerts.
Threshold configuration that defines when the policy should trigger.
List of monitor identifiers to associate with this policy.
Time window in minutes for querying events. This defines how far back to look when evaluating the policy.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CREATE_PROVIDER_RESOURCETool to create an 11Labs pronunciation dictionary resource. Use when you need to define custom pronunciations for specific terms or acronyms in voice synthesis.
Input parameters
Name of the pronunciation dictionary to create.
Array of pronunciation rules. Each rule must specify a 'stringToReplace' and 'type' (either 'phoneme' or 'alias'). For phoneme rules, include 'phoneme' and 'alphabet' fields. For alias rules, include an 'alias' field.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_CREATE_SCORECARDTool to create a scorecard for observability and evaluation. Use when setting up metrics to evaluate assistant performance based on structured outputs. Scorecards contain metrics with conditions that calculate normalized scores on a 100-point scale.
Input parameters
Name of the scorecard for user reference. This is not used for any evaluation, only for identification purposes.
Array of ScorecardMetric objects containing structuredOutputId and conditions for scoring. Each metric will have a set of conditions and points used to generate the score.
Description of the scorecard for user reference. This is not used for any evaluation.
Assistant IDs that this scorecard is linked to. When linked to assistants, this scorecard will be available for evaluation during those assistants' calls.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_DELETE_CALLTool to delete a call by its unique identifier. Use when you need to remove call data from the system. Returns the deleted call object with all its associated data.
Input parameters
The unique identifier of the call to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_DELETE_EVALTool to delete an eval by ID. Use when you need to permanently remove an eval from the system.
Input parameters
The unique identifier of the eval to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_DELETE_PHONE_NUMBERTool to delete a phone number from Vapi. Use when you need to remove a phone number from your Vapi organization. Returns the deleted phone number object.
Input parameters
The unique identifier for the phone number to be removed.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_EVAL_CONTROLLER_GETTool to retrieve an eval by its ID. Use when you need to fetch details about a specific eval including its mock conversation messages and metadata.
Input parameters
The unique identifier of the eval to retrieve.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_EVAL_CONTROLLER_REMOVE_RUNTool to delete an eval run by its ID from Vapi. Use when you need to permanently remove an evaluation run.
Input parameters
The unique identifier of the eval run to delete
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_EVAL_CONTROLLER_UPDATETool to update an existing eval in Vapi. Use when you need to modify eval properties like name, description, type, or mock conversation messages.
Input parameters
The ID of the eval to update
This is the name of the eval. It helps identify what the eval is checking for.
This is the type of the eval. Currently it is fixed to 'chat.mockConversation'.
This is the mock conversation that will be used to evaluate the flow of the conversation. Mock Messages are used to simulate the flow of the conversation. Evaluation Messages are used as checkpoints in the flow where the model's response to previous conversation needs to be evaluated to check the content and tool calls.
This is the description of the eval. This helps describe the eval and its purpose in detail. It will not be used to evaluate the flow of the conversation.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_GET_ASSISTANTTool to retrieve a specific assistant by ID from Vapi. Use when you need to fetch details about an existing assistant.
Input parameters
The unique identifier of the assistant to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_GET_CALLTool to fetch call details by ID. Use when you have a call ID and need full call information including status, duration, costs, messages, and recordings.
Input parameters
Unique identifier of the call to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_GET_FILETool to retrieve a file by its ID from Vapi. Use when you need to get details about a specific file including its status, metadata, storage location, and timestamps.
Input parameters
Identifier for the file to retrieve.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_GET_MONITORINGTool to retrieve monitoring policies from Vapi. Use when you need to list, filter, or search for monitoring policies configured in the organization. Supports filtering by policy ID, severity level, monitor ID, and date ranges for creation/update timestamps.
Input parameters
Returns policies with the specified id
Page number for pagination (defaults to 1)
Maximum number of items returned per page (defaults to 100)
Filters by severity level. Must be one of: error, warning, or info
Returns policies associated with the specified monitor ID
Sort order for pagination. Must be either ASC or DESC (defaults to DESC)
Filter to return items where createdAt is greater than or equal to this ISO 8601 date-time value
Filter to return items where createdAt is greater than this ISO 8601 date-time value
Filter to return items where createdAt is less than or equal to this ISO 8601 date-time value
Filter to return items where createdAt is less than this ISO 8601 date-time value
Filter to return items where updatedAt is greater than or equal to this ISO 8601 date-time value
Filter to return items where updatedAt is greater than this ISO 8601 date-time value
Filter to return items where updatedAt is less than or equal to this ISO 8601 date-time value
Filter to return items where updatedAt is less than this ISO 8601 date-time value
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_GET_STRUCTURED_OUTPUTSTool to list structured outputs with optional filtering. Use when you need to retrieve structured output configurations with pagination support. Supports filtering by ID, name, timestamps, and includes pagination controls.
Input parameters
Filters results where the identifier matches the specified value
Filters results where the name matches the specified value
Page number for results (defaults to 1)
Maximum items returned per request (defaults to 100)
Sort direction for pagination. Must be 'ASC' or 'DESC' (defaults to DESC)
Returns items created on or after the specified timestamp. Must be in ISO 8601 date-time format (e.g., '2024-01-15T10:30:00Z')
Returns items created after the specified timestamp. Must be in ISO 8601 date-time format (e.g., '2024-01-15T10:30:00Z')
Returns items created on or before the specified timestamp. Must be in ISO 8601 date-time format (e.g., '2024-01-15T10:30:00Z')
Returns items created before the specified timestamp. Must be in ISO 8601 date-time format (e.g., '2024-01-15T10:30:00Z')
Returns items updated on or after the specified timestamp. Must be in ISO 8601 date-time format (e.g., '2024-01-15T10:30:00Z')
Returns items updated after the specified timestamp. Must be in ISO 8601 date-time format (e.g., '2024-01-15T10:30:00Z')
Returns items updated on or before the specified timestamp. Must be in ISO 8601 date-time format (e.g., '2024-01-15T10:30:00Z')
Returns items updated before the specified timestamp. Must be in ISO 8601 date-time format (e.g., '2024-01-15T10:30:00Z')
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_INSIGHT_CONTROLLER_FIND_ALLTool to retrieve insights from VAPI. Use when you need to list insights with optional filtering by ID, creation date, or update date. Supports pagination and sorting.
Input parameters
Filter by insight ID
Page number to return. Defaults to 1
Maximum number of items to return. Defaults to 100
Sort order for pagination. Defaults to 'DESC'
Return items where createdAt is greater than or equal to the specified value. Should be ISO 8601 datetime string
Return items where createdAt is greater than the specified value. Should be ISO 8601 datetime string
Return items where createdAt is less than or equal to the specified value. Should be ISO 8601 datetime string
Return items where createdAt is less than the specified value. Should be ISO 8601 datetime string
Return items where updatedAt is greater than or equal to the specified value. Should be ISO 8601 datetime string
Return items where updatedAt is greater than the specified value. Should be ISO 8601 datetime string
Return items where updatedAt is less than or equal to the specified value. Should be ISO 8601 datetime string
Return items where updatedAt is less than the specified value. Should be ISO 8601 datetime string
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_LIST_ASSISTANTSTool to list all assistants in your VAPI organization. Use when you need to retrieve information about configured assistants. Supports filtering by creation and update timestamps.
Input parameters
Maximum number of assistants to return. If not specified, returns all assistants.
Filter for assistants created at or after this ISO 8601 date-time string.
Filter for assistants created after this ISO 8601 date-time string.
Filter for assistants created at or before this ISO 8601 date-time string.
Filter for assistants created before this ISO 8601 date-time string.
Filter for assistants updated at or after this ISO 8601 date-time string.
Filter for assistants updated after this ISO 8601 date-time string.
Filter for assistants updated at or before this ISO 8601 date-time string.
Filter for assistants updated before this ISO 8601 date-time string.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_LIST_CHATSTool to retrieve a list of chat conversations from VAPI. Use when you need to view existing chats, optionally filtered by assistant, squad, session, or time range. Supports pagination and sorting for efficient retrieval of large chat histories.
Input parameters
Filter by specific chat identifier
Page number for pagination (defaults to 1)
Maximum number of items to return (defaults to 100, max 1000)
Filter by squad identifier
Filter by session identifier
Sort direction: ASC or DESC (defaults to DESC)
Filter by assistant identifier
Filter chats created at or after this timestamp
Filter chats created after this timestamp
Filter chats created at or before this timestamp
Filter chats created before this timestamp
Filter chats updated at or after this timestamp
Filter chats updated after this timestamp
Filter chats updated at or before this timestamp
Filter chats updated before this timestamp
Filter by multiple assistant IDs (comma-separated)
Filter by previous chat identifier
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_LIST_EVALSTool to retrieve a paginated list of evals from Vapi. Use when you need to list or search evals with optional filtering by creation/update timestamps.
Input parameters
Filter by eval ID.
Page number to return. Defaults to 1.
Maximum number of items to return. Defaults to 100.
Sort order for pagination. Defaults to 'DESC'.
Return items where createdAt is greater than or equal to the specified value.
Return items where createdAt is greater than the specified value.
Return items where createdAt is less than or equal to the specified value.
Return items where createdAt is less than the specified value.
Return items where updatedAt is greater than or equal to the specified value.
Return items where updatedAt is greater than the specified value.
Return items where updatedAt is less than or equal to the specified value.
Return items where updatedAt is less than the specified value.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_LIST_PHONE_NUMBERSTool to list phone numbers in the Vapi organization. Use when you need to enumerate available phone numbers for routing or selection workflows. Supports filtering by creation and update timestamps.
Input parameters
Maximum number of phone numbers to return. Defaults to 100 if not specified.
Filter for phone numbers created at or after this ISO 8601 date-time string.
Filter for phone numbers created after this ISO 8601 date-time string.
Filter for phone numbers created at or before this ISO 8601 date-time string.
Filter for phone numbers created before this ISO 8601 date-time string.
Filter for phone numbers updated at or after this ISO 8601 date-time string.
Filter for phone numbers updated after this ISO 8601 date-time string.
Filter for phone numbers updated at or before this ISO 8601 date-time string.
Filter for phone numbers updated before this ISO 8601 date-time string.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_LIST_PROVIDER_RESOURCESTool to retrieve provider resources from Vapi (e.g., 11labs pronunciation dictionaries). Use when you need to list or search provider-specific resources with optional filtering by timestamps.
Input parameters
Filter by resource ID.
Page number to return. Defaults to 1.
Maximum number of items to return. Defaults to 100.
The provider to query resources from (e.g., '11labs' or 'cartesia').
Sort order for pagination. Defaults to 'DESC'.
Filter by provider's resource ID.
Return items where createdAt is greater than or equal to the specified value.
Return items where createdAt is greater than the specified value.
Return items where createdAt is less than or equal to the specified value.
Return items where createdAt is less than the specified value.
The name of the resource type to query (e.g., 'pronunciation-dictionary').
Return items where updatedAt is greater than or equal to the specified value.
Return items where updatedAt is greater than the specified value.
Return items where updatedAt is less than or equal to the specified value.
Return items where updatedAt is less than the specified value.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_PATCH_INSIGHT_INSIGHTTool to update an existing insight configuration in VAPI. Use when you need to modify insight properties like name, queries, time range, or visualization settings. Supports all four insight types (bar, pie, line, text) with type-specific configurations.
Input parameters
Unique identifier of the insight to update
Display name for the insight
Type of insight visualization: 'bar' for bar chart, 'pie' for pie chart, 'line' for line chart, 'text' for text/numeric display
Single formula object for text insights when using multiple queries
Field to group results by. Use for breaking down data by specific dimensions. Can also use 'artifact.structuredOutputs\[OutputID\]' format
Array of query definitions. Text insights with multiple queries require a formula. Other types support multiple queries
Array of formulas for computed values. Available for bar, pie, and line insights
Metadata for chart configuration (bar and line insights only).
Time range for the insight data. Bar and line insights support 'step' field for granularity
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_PHONE_NUMBER_CONTROLLER_CREATETool to create a phone number with VAPI. Use when you need to provision a new phone number for voice AI applications. Supports multiple providers (VAPI, Twilio, Vonage, Telnyx, BYO). Required parameters vary by provider.
Input parameters
Friendly name for the phone number for your reference
Phone number in E.164 format. Required for Twilio, Vonage, and Telnyx providers. Not used for VAPI provider
SIP URI for the phone number. Only applicable for VAPI provider
Phone number provider. Required for all phone number creations. Options: 'byo-phone-number' (bring your own), 'twilio', 'vonage', 'vapi', or 'telnyx'
ID of the squad to associate with this phone number. Only one of assistantId, squadId, or workflowId can be set
Enable SMS functionality for the phone number. Only applicable for Twilio provider
ID of the workflow to associate with this phone number. Only one of assistantId, squadId, or workflowId can be set
ID of the assistant to associate with this phone number. Only one of assistantId, squadId, or workflowId can be set
Credential ID for authentication. Required for BYO (bring your own), Vonage, and Telnyx providers. Not used for VAPI or Twilio providers
Twilio API Key. Optional when using Twilio provider
Twilio API Secret. Optional when using Twilio provider
Twilio Auth Token for authentication. Optional when using Twilio provider
Twilio Account SID. Required only when using Twilio provider
Desired area code for the phone number when using VAPI provider to automatically provision a number
Enable E.164 format validation for phone numbers. Only applicable for BYO provider
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_SCORECARD_CONTROLLER_GET_PAGINATEDTool to retrieve a paginated list of scorecards from Vapi. Use when you need to list or search scorecards with optional filtering by creation/update timestamps.
Input parameters
Filter by scorecard identifier.
Page number to return. Defaults to 1.
Maximum number of items to return. Defaults to 100.
Sort order for pagination. Defaults to 'DESC'.
Return items where createdAt is greater than or equal to the specified value. Use ISO 8601 datetime format.
Return items where createdAt is greater than the specified value. Use ISO 8601 datetime format.
Return items where createdAt is less than or equal to the specified value. Use ISO 8601 datetime format.
Return items where createdAt is less than the specified value. Use ISO 8601 datetime format.
Return items where updatedAt is greater than or equal to the specified value. Use ISO 8601 datetime format.
Return items where updatedAt is greater than the specified value. Use ISO 8601 datetime format.
Return items where updatedAt is less than or equal to the specified value. Use ISO 8601 datetime format.
Return items where updatedAt is less than the specified value. Use ISO 8601 datetime format.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_SESSION_CONTROLLER_CREATETool to create a new session in Vapi. Use when you need to establish a persistent conversation context that can span multiple chats. Sessions automatically expire after 24 hours.
Input parameters
Name of the session for easy reference. Maximum length is 40 characters.
Inline assistant configuration for session creation.
ID of a pre-configured assistant to use. Provide either assistantId or assistant object.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_SESSION_CONTROLLER_FIND_ALL_PAGINATEDTool to retrieve a paginated list of sessions from VAPI. Use when you need to list sessions with optional filtering by session ID, name, assistant, squad, or workflow. Supports pagination, sorting, and timestamp-based filtering.
Input parameters
Unique identifier for the session to filter by
Name of the session to filter by
Page number for results; defaults to 1
Maximum items to return; defaults to 100
ID of the squad to filter sessions by
Sort order (ASC/DESC); defaults to DESC
ID of the workflow to filter sessions by
ID of the assistant to filter sessions by
Items where createdAt is greater than or equal to value. Use ISO 8601 datetime format
Items where createdAt is greater than specified value. Use ISO 8601 datetime format
Items where createdAt is less than or equal to value. Use ISO 8601 datetime format
Items where createdAt is less than specified value. Use ISO 8601 datetime format
Items where updatedAt is greater than or equal to value. Use ISO 8601 datetime format
Items where updatedAt is greater than specified value. Use ISO 8601 datetime format
Items where updatedAt is less than or equal to value. Use ISO 8601 datetime format
Items where updatedAt is less than specified value. Use ISO 8601 datetime format
Filter by multiple assistant IDs. Provide as comma-separated values
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_TOOL_CONTROLLER_FIND_ONETool to fetch tool details by ID. Use when you have a tool ID and need full tool configuration including type, messages, function definitions, and server settings.
Input parameters
The unique identifier of the tool to retrieve
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_TOOL_CONTROLLER_TEST_CODE_EXECUTIONTool to test TypeScript code execution in Vapi's code tool environment. Use when validating code before deploying it as a tool.
Input parameters
TypeScript code to execute. The code should return a result object. Can access 'args' for parameters and 'env' for environment variables.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_TOOL_CONTROLLER_UPDATETool to update an existing Vapi tool configuration. Use when you need to modify tool properties such as function definitions, server settings, messages, or other tool-specific parameters.
Input parameters
The unique identifier of the tool to update
URL endpoint for apiRequest tools
Type of tool: function, apiRequest, dtmf, endCall, transferCall, handoff, bash, computer, textEditor, query, google.calendar.event.create, google.sheets.row.append, slack.message.send, sms, mcp, or gohighlevel variants
Whether the tool execution is asynchronous
HTTP method for apiRequest tools: GET, POST, PATCH, PUT, DELETE
Server configuration for tool requests including url, timeout, headers, and credentials
Function definition for function-type tools.
Array of message objects for different tool states: ToolMessageStart, ToolMessageComplete, ToolMessageFailed, ToolMessageDelayed
Retry logic configuration with type, maxRetries, and baseDelaySeconds
Transfer destinations for transferCall tools
Conditions determining when the tool should be rejected or not executed
Schema and aliases for extracting variables from the call for use in the tool
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_UPDATE_PHONE_NUMBERTool to update an existing phone number configuration in VAPI. Use when you need to modify phone number settings such as name, associated assistant/workflow, or provider-specific configurations.
Input parameters
The unique identifier of the phone number to update. This is the phone number ID returned from VAPI.
The name or label for the phone number to help identify it.
List of webhook configurations to receive events for this phone number.
The actual phone number in E.164 format (e.g., +14155551234).
Server configuration for handling phone number events.
SIP URI for SIP-based phone numbers.
The ID of the squad to associate with this phone number. Alternative to assistant_id or workflow_id.
Whether SMS is enabled for this phone number (Twilio provider only).
The ID of the workflow to associate with this phone number. Alternative to assistant_id.
The ID of the assistant to associate with this phone number. When calls are received, this assistant will handle them.
The ID of the credential to use for this phone number (provider-specific).
Authentication configuration for SIP-based phone numbers.
Twilio API key (alternative to auth token).
Twilio API secret (used with API key).
Twilio authentication token (for Twilio provider).
Twilio account SID (required for Twilio provider).
Fallback destination configuration when the primary assistant/workflow is unavailable.
Whether to enable E.164 format validation for the phone number.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
VAPI_UPLOAD_FILETool to upload a file to Vapi Knowledge Base. Use when you need to add files for AI assistants to reference. Returns file metadata including ID, storage URLs, and processing status.
Input parameters
File to upload to Vapi Knowledge Base.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 92 agents privately built on Nagent that already use Vapi.
Build on Nagent
Connect Vapi to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Vapi, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Vapi is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Vapi is connected, you configure its 38 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Vapi steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Vapi event fires, the agent kicks off automatically.
Every Vapi action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Vapi ships with 38 pre-built artificial intelligence actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Vapi together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Vapi-based workflows tailored to your business.