Skip to main content
POST
Create a new outbound campaign for your organization. If scheduled_at is omitted or in the past, sending begins immediately via background workers. If scheduled_at is in the future, the campaign is scheduled via TaskIQ and stored with status scheduled.

Authentication

This endpoint requires Bearer token authentication.

Input parameters

The following parameters are accepted in the JSON request body.
string
required
Bearer token for authentication. Format: Bearer <token>.
string
required
Descriptive title of the campaign (maximum 255 characters). Example: Summer Sale Launch.
string
required
UUID of the registered WhatsApp Business phone number configured for your organization.
string
UUID of the approved WhatsApp message template to broadcast.
string
default:"all"
Audience resolution strategy:
  • all: Broadcasts to all contacts registered in the organization.
  • tags: Filters contacts matching any tags specified in audience_tags.
  • manual: Dispatches only to the contacts listed in audience_contact_ids.
string[]
Array of contact tags to target when audience_type is set to tags. Example: ["vip", "q3_leads"].
string[]
Array of contact UUIDs to target when audience_type is set to manual.
string
ISO 8601 timestamp (e.g. 2026-09-15T14:30:00Z) for future dispatch. Leave empty to begin dispatching immediately.

Response Fields

string
Generated UUID identifier of the campaign.
string
UUID of the owning organization.
string
Campaign name.
string
Initial status of the campaign (sending for immediate dispatch, or scheduled for future delivery).
string
UUID of the sending WhatsApp phone number channel.
string
UUID of the message template, or null.
string
Targeting strategy (all, tags, or manual).
string[]
Array of targeted tags, or null.
string[]
Array of targeted contact IDs, or null.
string
ISO 8601 scheduled dispatch timestamp, or null.
number
Total number of recipient contacts resolved for this campaign.
number
Count of messages dispatched.
number
Count of messages confirmed delivered.
number
Count of messages marked read by recipients.
number
Count of messages that failed delivery.
string
ISO 8601 creation timestamp.
string
ISO 8601 last modification timestamp.


Previous
List campaigns
GET /api/v1/campaigns
Next