Skip to main content
POST
cURL

Authorizations

X-Auth-ID
string
header
required

Your Vobiz account Auth ID (MA_XXXXXXXX).

X-Auth-Token
string
header
required

Your Vobiz account Auth Token.

Path Parameters

id
string<uuid>
required

The broadcast's id (UUID), as returned by POST /broadcasts or GET /broadcasts. An id that is not a UUID, or that belongs to another account, returns 404 with broadcast not found.

Response

The broadcast, now running.

A bulk SMS send that renders one template for every recipient of an uploaded list and sends at a controlled rate. Its status moves from draft through scheduled or running to completed, cancelled or failed, and stats counts recipients by state.

id
string<uuid>

Unique identifier of the broadcast (UUID). Use it in every /broadcasts/{id} path.

Example:

"3f8d2a6e-5b1c-4e7f-a9d0-2c4b6e8f1a35"

accountId
string

Your Vobiz account ID (MA_...) that owns the broadcast.

Example:

"MA_XXXXXXXX"

name
string

The label you gave the broadcast, shown in the console and in listings.

Example:

"October pricing update"

from
string

The sender every message goes out from, as stored: an E.164 number, a short code or an alphanumeric sender ID.

Example:

"+14155550100"

channel
enum<string>

The channel the broadcast sends on. Always sms.

Available options:
sms
Example:

"sms"

template
string

The message body with {{variable}} placeholders, filled per recipient from the columns of the upload. Empty until you set it.

Example:

"Hi {{name}}, your refund of {{amount}} is on its way."

status
enum<string>

Lifecycle state. draft until you launch, then scheduled (waiting for scheduledAt) or running. paused after a pause call or when pauseReason is set; completed once every recipient is processed; cancelled after a cancel call; failed when the run stopped on an error.

Available options:
draft,
scheduled,
running,
paused,
completed,
cancelled,
failed
Example:

"draft"

pauseReason
enum<string>

Present only while the broadcast is paused for a reason other than your own pause call. insufficient_balance means the balance ran out; top up and call POST /broadcasts/{id}/resume.

Available options:
insufficient_balance
scheduledAt
string<date-time> | null

When sending starts after launch, in UTC (ISO 8601). null means sending starts as soon as you launch.

Example:

null

ratePerSecond
integer

Maximum messages sent per second while running, from 1 to 50.

Example:

5

tag
string

Your label, copied onto every message the broadcast sends. Empty string when not set.

Example:

""

dltEntityId
string

India (TRAI DLT). The Principal Entity ID copied onto every message. Empty string when not set.

Example:

""

dltHeaderId
string

India (TRAI DLT). The registered sender header ID copied onto every message. Empty string when not set.

Example:

""

dltTemplateId
string

India (TRAI DLT). The registered content template ID copied onto every message. Empty string when not set.

Example:

""

columns
string[] | null

Column names from the latest recipient upload, as written in your file header. The first is the phone column and the rest are available as template variables. Empty until you upload recipients.

Example:

null

stats
object

Recipient counts by state, recounted on every read.

createdAt
string<date-time>

When the broadcast was created (ISO 8601, UTC).

Example:

"2026-10-12T10:30:00Z"

updatedAt
string<date-time>

When the broadcast last changed, including status changes (ISO 8601, UTC).

Example:

"2026-10-12T10:30:00Z"

startedAt
string<date-time> | null

When sending began (ISO 8601, UTC). null until the broadcast runs.

Example:

null

completedAt
string<date-time> | null

When the broadcast finished, either because the last recipient was processed or because it was cancelled (ISO 8601, UTC). null until then.

Example:

null