Outbound Calling

Learn how to send outbound calls from Vapi.

Introduction to Outbound Calling

Vapi’s outbound calling API lets you programmatically initiate single or batch calls to any phone number. You can schedule calls for specific dates and times, ideal for time-sensitive communications. Easily integrate outbound calling into your app for appointment reminders, automated surveys, and call campaigns.

Prerequisites

  • Vapi Account: Access to the Vapi Dashboard for configuration.
  • Configured Assistant: Either a saved assistant or a transient assistant.
  • Phone Number: Either an imported phone number from one of the supported providers or a free Vapi number. (Note: You cannot make international calls with a free Vapi number).
  • Customer’s Phone Number: The phone number that you want to call.

Outbound Calls

You can place an outbound call from one of your phone numbers using the /call endpoint.

  1. Specify an Assistant: you must specify either a transient assistant in the assistant field or reuse a saved assistant in the assistantId field.
  2. Get a Phone Number: provide the phoneNumberId of the imported number or free Vapi number you wish to call from.
  3. Provide a Destination: Finally, pass the customer’s phone number or SIP URI in customer.

Provide your authorization token and now we’re ready to issue the API call!

1{
2 "assistantId": "assistant-id",
3 "phoneNumberId": "phone-number-id",
4 "customer": {
5 "number": "+11231231234"
6 }
7}

Scheduling Outbound Calls

To schedule a call for the future, use the schedulePlan parameter and pass a future ISO date-time string to earliestAt. This will be the earliest time Vapi will attempt to trigger the outbound call. You may also provider latestAt, which will be the latest time Vapi will attempt to trigger the call.

When you schedule a call, we will save the Assistant, Phone Number, and Customer Number resources and refetch them at the time of the call. If you choose to provide a saved assistant through assistantId, we will pick up the most up-to-date version of your assistant at the call time. Likewise, if you delete your saved assistant, the call will fail! To ensure the call is issued with a static version of an assistant, pass it as a transient assistant through the assistant parameter.

1{
2 "assistantId": "assistant-id",
3 "phoneNumberId": "phone-number-id",
4 "customer": {
5 "number": "+11231231234"
6 },
7 "schedulePlan": {
8 "earliestAt": "2025-05-30T00:00:00Z"
9 }
10}

Batch Calling

To call more than one number at a time, use the customers parameter to pass an array of customer. To provide customer specific assistant overrides, please call the endpoint separately for each destination number.

Use both customers and schedulePlan together to schedule batched calls.

1{
2 "assistantId": "assistant-id",
3 "phoneNumberId": "phone-number-id",
4 "customers": [
5 {
6 "number": "+11231231234"
7 },
8 {
9 "number": "+12342342345"
10 }
11 ],
12 "schedulePlan": {
13 "earliestAt": "2025-05-30T00:00:00Z"
14 }
15}

Uploading Your CSV File to the Dashboard

Use the example template to get started.

  • The only required columns are phone and name.
  • Any other columns (like appointment_time, location, etc.) can be used as dynamic variables in your assistant’s script.

How to Launch a Batch Call

  1. Go to Phone Numbers in the sidebar.
  2. Select the number you want to call from.
  3. Scroll to Outbound Settings → click Call Many Numbers.
  4. Upload your CSV file (drag & drop or click to upload).
  5. Select your Assistant, Squad, or Workflow.
  6. Click Make Calls to start now, or Schedule Calls to set a future date/time.

Calls will run concurrently — not sequentially.

Tips for Clean Data

  • Use UTF-8 encoding when saving your CSV.
  • Avoid blank rows or duplicated headers.
  • Double-check that your column names match the variables used in your assistant.

Trusted Calling and Caller ID

To maximize call answer rates and establish trust with recipients, you should implement proper caller identification and trusted calling standards. This involves several key components that work together to verify your identity and build caller reputation.

STIR/SHAKEN Implementation

STIR/SHAKEN (Secure Telephone Identity Revisited / Signature-based Handling of Asserted Information using toKENs) is a framework designed to combat robocalls and caller ID spoofing by digitally signing calls to verify the caller’s identity.

When you make outbound calls, STIR/SHAKEN provides three levels of attestation:

  • Level A (Full Attestation): The service provider has verified both the caller’s identity and their right to use the calling number
  • Level B (Partial Attestation): The service provider has verified the caller’s identity but not their right to use the number
  • Level C (Gateway Attestation): The service provider has authenticated the call source but cannot verify the caller’s identity

To enable STIR/SHAKEN on your Twilio numbers:

  1. Complete Trust Hub verification in your Twilio Console
  2. Submit business information including legal business name, address, and authorized representative details
  3. Provide supporting documentation such as business registration and tax identification
  4. Wait for approval - the verification process typically takes 5-7 business days

STIR/SHAKEN is currently required for US and Canadian calling. Implementation helps ensure your calls are properly authenticated and less likely to be flagged as spam.

Learn more: Twilio STIR/SHAKEN Documentation

CNAM Registry Registration

CNAM (Caller Name) displays your business name instead of just your phone number when you call someone. This significantly improves answer rates and establishes professional credibility.

To register your business name with the CNAM database through your phone number provider:

1

Access CNAM registration

Navigate to your phone number provider’s CNAM registration portal (e.g., Twilio Console → Phone Numbers → Manage → Caller ID)

2

Complete business profile

Provide your complete business information:

  • Legal business name (exactly as registered with your EIN)
  • Business address and contact information
  • Business type and industry classification
  • Tax identification number or business registration details
3

Designate authorized representative

Assign a point of contact with authority to make changes:

  • Full name and business title
  • Direct phone number and email address
  • Verification that they’re authorized to represent the business
4

Submit for verification

Submit your application for review. Processing typically takes 3-5 business days, and you’ll receive confirmation once approved.

Use an email address associated with your business domain rather than personal email addresses to expedite the approval process.

Learn more: Twilio CNAM Branding Guide

Caller Reputation Databases

Beyond CNAM registration, registering with major caller reputation databases helps establish trust and reduces the likelihood of your calls being flagged as spam or blocked.

First Orion Registration

First Orion provides caller identification and spam protection services used by major carriers and call-blocking apps.

Registration benefits:

  • Displays your business name and logo on supported devices
  • Reduces spam flagging and call blocking
  • Provides branded calling experience

Registration process:

  1. Visit the First Orion business portal
  2. Verify your business ownership of the phone numbers
  3. Submit branding assets (logo, business description)
  4. Complete the verification process

Hiya (Free Caller Registry)

Hiya operates one of the largest caller ID and spam protection networks, powering caller identification for millions of users.

Benefits of Hiya registration:

  • Enhanced caller ID display across multiple platforms
  • Protection against false spam reporting
  • Access to call analytics and reputation monitoring

Registration steps:

  1. Create a business account on Hiya’s platform
  2. Verify ownership of your phone numbers
  3. Submit business profile and branding information
  4. Monitor your caller reputation through their dashboard

Spam Monitoring and Phone Number Health

Proactive monitoring of your phone number reputation is essential to maintain high answer rates and prevent spam labeling. Several tools and services can help you track and remediate spam labels before they impact your campaigns.

Twilio Voice Integrity

Twilio Voice Integrity helps remediate spam labels on your phone numbers and monitor their reputation across major carrier networks.

What Voice Integrity provides:

  • Spam label remediation for T-Mobile, Sprint, and AT&T networks
  • Reputation monitoring across carrier analytic engines
  • Automatic registration of your Twilio phone numbers with carrier databases
  • Integration with Trust Hub for streamlined verification

Getting started with Voice Integrity:

1

Meet prerequisites

  • Ensure you have an approved Primary Customer Profile in Trust Hub
  • For ISVs: obtain approved secondary customer profiles for tenants
2

Register through Trust Hub

  • Access Voice Integrity through your Twilio Console
  • Complete the registration process via Trust Hub REST API or console
  • Your numbers will be automatically registered with carrier analytic engines
3

Monitor and maintain

  • Voice Integrity will automatically work to remediate spam labels
  • Future updates will include reputation monitoring and degradation alerts
  • Verizon Wireless integration coming soon (automatic for existing users)

Voice Integrity works best when combined with STIR/SHAKEN attestation, as the highest level of attestation signals to analytic engines that you’re a legitimate caller.

External Phone Number Health Monitoring

In addition to carrier-provided services, external monitoring APIs can help you proactively check your phone number reputation across different networks and spam databases.

Recommended monitoring services:

IPQualityScore Phone Number Validation

  • Service: IPQualityScore provides comprehensive phone number reputation scoring
  • Features: Real-time spam risk assessment, carrier identification, line type detection
  • Use case: Check numbers before campaigns and monitor reputation changes
  • Integration: REST API for batch checking or real-time validation

Nomorobo Spam Database

  • Service: Nomorobo maintains one of the largest spam phone number databases
  • Features: Spam reputation lookup, robocall identification, carrier reporting
  • Use case: Verify if your numbers are flagged in spam databases
  • Integration: API access for reputation checking

Best Practices for Trusted Calling

Maintain consistency

Use the same business name across all registrations (CNAM, First Orion, Hiya) to avoid confusion

Monitor reputation

Regularly check your caller reputation scores and address any spam reports promptly

Follow compliance

Ensure all outbound calls comply with TCPA regulations and obtain proper consent before calling

Update information

Keep your business information current across all platforms when details change

Proper caller identification setup can take 2-4 weeks to fully propagate across all networks and databases. Plan accordingly when launching new outbound calling campaigns.

Note: Vapi free numbers have limited number of outbound calls per day. Import a number from Twilio, Vonage, or Telnyx to scale without limits.

It is a violation of FCC law to dial phone numbers without consent in an automated manner. See our TCPA Consent Guide and the Telemarketing Sales Rule to learn more.