Skip to main content
Batch calling lets you run an outbound call campaign against a list of recipients without making individual API calls for each one. You upload a CSV with recipient phone numbers and variable values, set a schedule, configure retry rules, and DialNexa handles the rest. Per-recipient status is tracked in real time.

Prerequisites

  • A DialNexa phone number to use as the caller ID. See Purchase a Phone Number.
  • A published agent version.
  • A CSV file with recipient data prepared according to the format below.
  • KYC completed if any recipients are in regulated countries. See International Calling.
  • Enabled destination network groups in Workspace Settings > Telephony Config for non-SIP routes.

CSV Format

The CSV must include a phone_number column. All other columns are treated as variables passed to the agent for each call.
phone_number,customer_name,appointment_date,account_id
+14155550101,Jordan Lee,June 3rd at 2 PM,acct_001
+14155550102,Morgan Kim,June 4th at 10 AM,acct_002
+16505550199,Alex Rivera,June 5th at 3 PM,acct_003
Column requirements:
ColumnRequiredNotes
phone_numberYesE.164 format recommended, for example +14155550101. Rows must pass destination validation for the selected route.
Any other columnNoColumn names become variable keys in the agent prompt.
Rows with a missing, malformed, unsupported-country, or unsupported-prefix phone_number are rejected before launch. The dashboard can group validation errors by reason and list the affected row numbers. All other columns are passed as-is.
Variable names in your CSV must match the variable placeholders in your agent prompt. Column names are case-sensitive.

Create a Batch Call

1

Open Batch Calls

Navigate to Batch Calls in the left sidebar (under Calls or Deploy, depending on your workspace layout).
2

Click New Batch

Click New Batch. A configuration panel opens.
3

Configure the batch

Fill in the required fields:
  • Name: A label for this batch. Used in reporting only.
  • From Number: The DialNexa number to call from.
  • Agent Version: The published agent version to use for all calls in the batch.
  • CSV File: Upload your recipient CSV.
4

Set the schedule

Choose when the batch should start:
  • Now: Begin dialing immediately after you save.
  • Scheduled: Pick a future date and time. The batch enters a waiting state until the scheduled time, then starts automatically.
Schedule batches outside peak hours to maximize answer rates and avoid concurrency contention.
5

Configure retry rules

Set retry behavior for unanswered or failed calls. See the Retry Configuration section below.
6

Save and start

Click Save (and Start if the batch is scheduled for now). The batch moves to an Active or Scheduled state.

Retry Configuration

Retry rules define what happens when a call does not reach a live person.
SettingDescription
Max RetriesMaximum number of retry attempts per recipient. Set to 0 to disable retries.
Wait Between AttemptsTime in minutes to wait before redialing a recipient.
Retry on No AnswerIf enabled, retries when the recipient does not pick up.
Retry on VoicemailIf enabled, retries when the call reaches a voicemail system. If disabled, voicemail calls are marked final with outcome voicemail.
Retry on BusyIf enabled, retries when the line is busy.
Retries count against your workspace concurrency limit the same as first-attempt calls. Factor retry volume into concurrency planning for large batches.

Monitor a Batch

While a batch is running, open the batch detail view to see:
  • Overall progress: Total recipients, calls completed, calls pending, calls in progress.
  • Per-recipient status table: Each recipient row shows current status, number of attempts made, last attempt time, and final outcome once complete.

Per-Recipient Status Values

StatusMeaning
pendingNot yet dialed in this run
in_progressCall currently active
completedCall ended with a live conversation
no_answerNo answer on all attempts
voicemailReached voicemail (retries exhausted or retry on voicemail disabled)
failedCall could not be connected on all attempts
skippedRow could not be called because the phone number failed validation or the route rejected it

Pause and Stop a Batch

  • Pause: Stops dialing new calls but allows in-progress calls to complete. Retries are suspended. Resume the batch to continue from where it paused.
  • Stop: Cancels the batch permanently. In-progress calls complete but no new calls are started. Recipients not yet dialed are marked cancelled.
Stopping a batch is permanent. You cannot resume a stopped batch. If you need to redial the remaining recipients, create a new batch with an updated CSV.

Download Results

After a batch completes, click Download Report in the batch detail view to get a CSV with:
  • All original recipient columns
  • final_status (completed, no_answer, voicemail, failed, skipped)
  • attempts_made
  • call_id for each completed call (link to the full transcript in Call History)