<!-- Source: https://docs.vinsi.ai/step-guides/batch-call -->
# Running a Batch Call Campaign

A complete walkthrough for launching an AI-powered outbound batch calling campaign from VINSI.

Created May 21, 2026

Updated: September 16, 2026

## Overview

Batch calling lets an outbound AI phone agent call a whole list of contacts for you. You pick the agent and caller ID, load your recipients, choose when the calls go out, and then track progress and results.

For full details on every field, see the [Batch Call reference page](https://docs.vinsi.ai/telephony/batchCall).

What we'll cover

1. Prepare an AI agent with outbound configured
2. Assign it a phone number that can call out
3. Open Batch Calls and start a new batch
4. Set the name, agent, and voicemail handling
5. Add recipients
6. Send now, schedule, or pace the calls
7. Save and launch
8. Monitor progress
9. Review results and reports

1

## Prepare an Outbound Agent

You need an AI agent with outbound configured. See [Outbound Calls](https://docs.vinsi.ai/telephony/outboundCalls) for how to set up an outbound agent.

2

## Assign a Phone Number

Assign a phone number that can call out to your outbound agent. This number becomes the caller ID for the batch. See [Phone Numbers](https://docs.vinsi.ai/telephony/phoneNumbers) to get a number.

Only numbers with an assigned agent and outbound capability appear in the batch call form. If your number is missing in Step 4, check its agent assignment.

3

## Open Batch Calls

1. In the **AI Phone Agent** product, select **Batch Calls** in the top navigation.
2. The **Batch Calls** page ("Manage outbound call campaigns") lists existing batches with their ID (e.g. B-123), agent, schedule, Status, and Progress.
3. Click **New Batch Call** to open the **Create Batch Call** form.

Editing or deleting a batch call requires an organization admin or the `batch_calls` write permission.

4

## Name, Agent & Voicemail

Batch Call Name 

Give the campaign a name you can find later in the Batch Calls list.

Outbound Agent 

Open **Select an Agent**. Each option is a phone number shown as _Agent Name - (xxx) xxx-xxxx_. Picking one sets both the agent and the caller ID.

Enable Voicemail Detection

Off by default. Check it to reveal the **Voicemail Message** text box and enter the message to use when a call reaches voicemail.

5

## Add Recipients

Under **Add Recipients**, pick a source. **Upload CSV** is the default.

Upload CSV

1. Click **Download the template** to get `template.csv`.
2. Fill it in. Keep the headers exactly as provided.
3. Click **Choose a csv file** and pick your `.csv` (up to 50mb).
4. Review the editable grid. Use **Add column** / **Add row**, or right-click to delete a row or column (`name` and `phoneNumber` can't be deleted).
5. Click **Save CSV changes**. Saving is blocked while any header or cell is empty.
6. Check that **Recipients Loaded: N** matches your list.

| Column        | Required | Notes                                           |
| ------------- | -------- | ----------------------------------------------- |
| name          |          | Recipient name. Can't be deleted from the grid. |
| phoneNumber   |          | Number to call. Can't be deleted from the grid. |
| Extra columns |          | Become per-recipient variables for the agent.   |

Avoid commas inside values.

Other sources

- **HubSpot** — if not connected, click **Connect to HubSpot** (Settings → HubSpot). Then choose a **Pipeline** and **Stage** (required) and click **Fetch Contacts**. The form shows **Contacts imported: N**.
- **Salesforce** — click **Connect to Salesforce** if needed, choose an **Object Filter**, and use **Add Filter** (Field, Operator, Parameter, Remove). With two or more filters, enter **Filter Logic** (e.g. `1 and 2`) and click **Apply**. Set **Include Do Not Call Clients** (default No), then click **Get Contacts from {object}**. **Save Filter** keeps the filter.
- **GoHighLevel** — click **Connect to GoHighLevel API** if needed, then **Get Contacts** and select contacts (**Contacts selected: N**). Requires the agent's GoHighLevel Sub-Account ID in the agent's Integration section.
- **VinsiSaaS CRM** — click **Connect to Vinsi CRM API** if needed, then **Add Contacts**. In **Contacts from CRM**, tick contacts and click **Add Contacts**.
- **External Source** — fill in the request settings (server URL required, method, headers, parameters, timeout) and click **Execute request**.

Numbers on **CRM Admin → Do Not Call Registry** are skipped automatically and show as **DNC Skipped**.

6

## Choose When to Call

When to send the calls

**Send Now** (default) starts dialing after you save. **Schedule** asks for:

- **Start Date** (required, today or later)
- **Has End Date** → **End Date**
- **Start Time** and **End Time** (required)
- **Select Time Zone** (required)
- **Select the days** — Mon through Sun, within the date range

Spread calls over time (progressive pacing)

Available for one-time batches only (no weekdays selected). When checked:

- **Contacts per wave** (default 50) and **Every (minutes)** (default 60).
- **Only dispatch within a daily time window** — default 09:00–18:00 in the batch time zone. Contacts outside the window wait; they aren't skipped.
- **Distribute by day of week** (optional) — click **Add day** and set a weekday and quota. If a contact was already attempted on an earlier rule day, choose **Distribute** (called once) or **Repeat**. For Repeat, pick **Only retry contacts who didn't answer (recommended)** or **Call everyone again**.
- **Retry if disposition is** — comma-separated, e.g. _No Answer, Voicemail, Busy_. Leave empty for no retries.
- **Retry after (hours)** (default 2) and **Max attempts per contact** (default 2).

Reserved Concurrency for Other Calls

A stepper from 1 to 5 (default 1).

7

## Save & Launch

1. Optional: click **Warm up agent** to pre-load the agent. It's ready in about 5–10 seconds.
2. Click **Save Batch Call**.

8

## Monitor the Batch

A running batch shows "The batch call is executing..." with a progress bar and a **Cancel Execution** button. **Save Batch Call** is disabled while it runs.

There is no pause. To stop a running batch, use **Cancel Execution**.

From the Batch Calls list, open a row's actions:

- **View Contacts** — each recipient shows **Sent**, **DNC Skipped**, or **Error**.
- **View call tracking** (pacing batches only) — filter by status (Pending, Queued, Dispatched, Answered, No Answer, Retry Scheduled, DNC, Max Attempts, Error). Columns: Name, Phone Number, Status, Attempts, Wave, Last Disposition, Last Attempt, Next Attempt.

The list's **Status** column shows Scheduled, Running, Completed, or Canceled.

9

## Review Results

- [Call Logs](https://docs.vinsi.ai/telephony/callLogs) — use the **Batch** filter, then **Export**.
- **Dashboard** — filter by batch (`B-###`).
- **Dashboard → Reports** — **Batch Campaign Summary** and **Batch Call Detail**, both with **Export to Excel**.
