Skip to main content
The Campaigns API lets you broadcast a message to an entire contact list in a single API call. Campaigns are ideal for promotional announcements, service notifications, and event reminders sent to hundreds or thousands of recipients simultaneously. You can send a campaign immediately or schedule it for a future date and time, and track its delivery progress through the campaign status endpoint.

Create a Campaign

Request Parameters

string
required
A descriptive internal name for the campaign (e.g. Weekend Sale - June 2026). This name is visible only in your dashboard and API responses — recipients do not see it.
string
required
The messaging channel to use. Must be one of: sms, whatsapp, telegram, email, slack.
string
required
The ID of the contact list to target. All active contacts in the list will receive the campaign message. Retrieve list IDs from the Contacts API or your dashboard.
string
required
Your registered Sender ID (for SMS, WhatsApp, Telegram) or verified email address (for email) to use as the message origin. Use GET /sender-ids to list your registered Sender IDs.
string
The plain-text message body. Required unless template is provided.
object
A WhatsApp-approved message template. Use instead of body when sending WhatsApp campaigns that require a pre-approved template.
string
An ISO 8601 UTC datetime string specifying when to start sending the campaign (e.g. 2026-07-01T08:00:00Z). Set to null or omit entirely to begin sending immediately after the campaign is created.

Request Example

Response Fields

string
The unique campaign identifier, prefixed with cmp_.
string
The initial campaign status after creation. See Campaign Statuses.
string
The campaign name as provided in the request.
string
The messaging channel used for this campaign.
integer
The total number of contacts targeted by this campaign.
string
ISO 8601 UTC timestamp of when the campaign was created.
Example response (201 Created):

Error Scenarios


Get Campaign Status

Retrieve the current status and delivery statistics for a specific campaign:

Response Fields

string
The unique campaign identifier, prefixed with cmp_.
string
The campaign name as provided when created.
string
The current campaign status. See the Campaign Statuses table below.
string
The messaging channel used for this campaign.
integer
The total number of contacts targeted by this campaign.
integer
The number of messages confirmed as delivered so far.
integer
The number of messages that failed or were undeliverable.
string
ISO 8601 UTC timestamp of when the campaign was created.
string
ISO 8601 UTC timestamp of when sending began. Null if the campaign has not started yet.
string
ISO 8601 UTC timestamp of when all messages reached a final delivery status. Null if the campaign has not yet completed.
Example response:

Campaign Statuses

A campaign in processing status cannot be cancelled. Verify your contact list, message body, and schedule before submitting a campaign request.

List Campaigns

Retrieve a paginated list of all campaigns on your account:
integer
Page number (default: 1).
integer
Results per page (default: 50, max: 100).
Example response: