API Reference
API Reference

Create Outbound Communication Batch

POST/api/v1/outbound/batches

Authentication

Syllable-API-Keyrequired

Send Syllable-API-Key in the header.

Need a credential? Create or manage an API token in the Syllable Console.

Parameters

This endpoint has no declared parameters.

Request body

application/json

body CommunicationBatchInput required
6 fields
batch_idstringrequired

Unique ID for conversation batch

campaign_idintegerrequired

Unique ID for campaign

expires_onstring (date-time) | nulloptional

Timestamp of batch expiration

pausedboolean | nulloptional

Whether the batch is on HOLD. When on HOLD, no outreach will be made.

call_rateinteger | nulloptional

Target number of outreach attempts per hour for this batch. When omitted, the batch inherits the campaign's hourly_rate.

Minimum 1Maximum 3600
auto_call_ratebooleanoptional

Pace this batch automatically to finish before expires_on, counting only the campaign's valid hours (daily_start_time..daily_end_time on active_days). The derived rate takes precedence over call_rate and over the campaign hourly_rate. Requires expires_on.

Default false
Request example
{
  "batch_id": "string",
  "campaign_id": 0,
  "expires_on": "string",
  "paused": "string",
  "call_rate": "string",
  "auto_call_rate": false
}

Responses

200Successful Response

application/json

response CommunicationBatch | null required
16 options
batch_idstringrequired

Unique ID for conversation batch

campaign_idintegerrequired

Unique ID for campaign

expires_onstring (date-time) | nulloptional

Timestamp of batch expiration

pausedboolean | nulloptional

Whether the batch is on HOLD. When on HOLD, no outreach will be made.

call_rateinteger | nulloptional

Target number of outreach attempts per hour for this batch. When omitted, the batch inherits the campaign's hourly_rate.

Minimum 1Maximum 3600
auto_call_ratebooleanoptional

Pace this batch automatically to finish before expires_on, counting only the campaign's valid hours (daily_start_time..daily_end_time on active_days). The derived rate takes precedence over call_rate and over the campaign hourly_rate. Requires expires_on.

Default false
statusenum<string>optional

Status of batch

Allowed values ["PENDING","ACTIVE","PAUSED","FAILED","CANCELED","EXPIRED"]Default PENDING
auto_call_rate_baselinenumber | nulloptional

Read-only. The auto-paced rate first computed for this batch, set on its first dialing cycle. Subsequent cycles hold the rate within +/- 20% of it. Null until the batch has dialed, or when auto_call_rate is off.

upload_filenamestring | nulloptional

Name of file used to create batch

dispatch_idstring | nulloptional

A unique identifier for dipatched job

created_atstring (date-time)optional

Timestamp of batch creation

deleted_atstring (date-time) | nulloptional

Timestamp of batch deletion

deleted_reasonstring | nulloptional

Reason for batch deletion

last_updated_atstring (date-time) | nulloptional

Timestamp of last change to batch

last_updated_bystringrequired

Email of user who last updated campaign

error_messagestring | nulloptional

Error message if batch upload failed

Response example
string
422Validation Error

application/json

response HTTPValidationError required
1 field
detailValidationError[]optional
Item schema
itemsValidationErrorrequired
3 fields
locstring | integer[]required
Item schema
itemsstring | integerrequired
2 options
Option 1stringrequired
Option 2integerrequired
msgstringrequired
typestringrequired
Response example
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string"
    }
  ]
}