Create Batch Call
Upload contacts and start a batch of outbound calls.
waiting until the organization queue is clear, or move to scheduled when you provide a future start time.
When to use this
- One-shot outreach: call a fixed list of contacts you already have in a file, such as appointment reminders or a payment-due campaign.
- Scheduled campaigns: upload now and let the batch start at a scheduled time.
- Personalized calls at scale: every extra column in your file becomes a dynamic variable in the agent’s prompt, so each contact hears their own details.
File format
Your file must include aphone_number column. All other column headers become dynamic variables that are injected into the agent’s prompt for each individual call:
{{customer_name}}, {{loan_amount}}, etc.
Batch vs. Campaign
Use a batch call for a one-shot outreach where you upload the full list upfront and do not need to add leads later. If you need to stop and restart execution, use Update Batch Call Status. If you need incremental lead enrollment, use workflows.Queue Behavior
DialNexa runs one batch campaign per organization at a time. If another batch is alreadyrunning or waiting, a newly accepted batch can wait behind it instead of placing calls immediately. Future-start batches can remain scheduled until their start window, then move into waiting or running based on queue availability. See the batch lifecycle state machine before automating status changes.
Treat create requests as billable and retry unsafe. If the client times out, call List Batch Calls before repeating the upload so you do not create a duplicate batch.
When a create request succeeds but DialNexa detects another running, waiting, or nearby scheduled batch, the response can include a non-blocking warning. The batch was still created. Use the warning to tell operators that the new batch may be delayed behind existing work.
File requirements
- Formats: CSV, XLSX, XLS
- Max size: 10 MB
- Required column:
phone_number - Batch title:
35characters or fewer - Phone numbers should be valid international numbers. Include the country code for non-local destinations.
agent_version_number is optional. If you omit it, DialNexa uses the agent’s latest published version. If you provide it, that version must exist and be published. The selected version must also have an outbound phone number attached before the request can create any campaign data.
If title is longer than 35 characters, the API returns 400 Bad Request with a clear validation message instead of creating the batch.
Binding checks happen before the campaign is written. The API returns 404 Not Found for an agent outside the workspace or a requested version that does not exist. It returns 400 Bad Request when the agent has no published version, the requested version is still a draft, or no outbound number is attached to the resolved version. A successful response reports the number bound to that exact agent version in from_number.
Create Batch Calls With Retry Settings
Sendnumber_of_retries and interval_between_retries as multipart fields when configuring retries. Retry count is an integer from 0 to 4; the interval is an integer from 0 to 1440 minutes. Set both to zero to disable retries, or use a positive count and interval. When both fields are supplied, mixing zero and a positive value returns 400.
Files must be CSV, XLSX, or XLS and no larger than 10 MB. After creation, inspect the batch’s saved retry configuration and status before attempting another create request.
Destination validation
Before launch, each row is checked against the outbound route selected for the batch. For non-SIP routes, the destination country and prefix must be enabled in Workspace Settings > Telephony Config. If one or more rows fail validation, the API returns400 Bad Request with grouped error details, including the affected row numbers. Common reasons include invalid phone number format, unsupported destination country, unsupported prefix, or no enabled countries configured.
The dashboard preview path can show invalid rows before launch so operators can edit or remove them. Direct API create requests still reject the whole file when row validation fails, so repair the file before retrying.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
CSV or Excel file containing leads (max 10 MB)
Batch title shown in the dashboard. Must be 35 characters or fewer.
35"Q3 Follow-up Batch"
"agent_abc123"
Published agent version to use. Omit to use the agent's latest published version.
1
ISO 8601 datetime - leave empty to start immediately
"2024-01-15T09:00:00Z"
"2024-01-15T18:00:00Z"
"09:00"
"18:00"
How many times to retry a lead that did not connect, from 0 to 4. Must be 0 when interval_between_retries is 0, and greater than 0 when it is not.
0 <= x <= 42
Minutes to wait between retries, from 0 to 1440. Must be 0 when number_of_retries is 0, and greater than 0 when it is not.
0 <= x <= 144030
Response
Batch call created and calls enqueued.