Skip to main content
POST
Create campaign
Create a new campaign. Campaigns start in draft — add leads, then start with Update campaign status. Supported channels:
  • call (default) — outbound voice with an OUTBOUND assistant
  • whatsapp — approved WhatsApp template via one of your senders
  • sms — SMS body from an SMS-capable number (may be temporarily unavailable on the platform)

Request body

Shared

string
required
Campaign name. Maximum 255 characters.
string
default:"call"
call, whatsapp, or sms.
string
IANA timezone for the send/call window (e.g. America/New_York). Defaults to the assistant timezone for call campaigns, otherwise your account timezone.
array
Preferred schedule: one or more daily windows as objects with start and end in HH:MM. Overnight windows are supported when end is earlier than start (e.g. 16:0002:00).
string
default:"00:00"
Legacy single-window start (HH:MM). Used if schedule_windows is omitted.
string
default:"23:59"
Legacy single-window end (HH:MM). Overnight when end < start.
string
Optional ISO datetime. When set, the campaign can be scheduled to auto-start at that time.
array
default:"all 7 days"
Weekdays: mondaysunday.
integer
default:"3"
Max retry attempts per lead. Range: 1–5.
integer
default:"60"
Minutes between retries. Range: 10–4320.
boolean
default:"true"
Automatically mark the campaign complete when no remaining work is left.

Call campaigns

integer
Required for channel=call. Must be an OUTBOUND assistant you own.
integer
default:"3"
Concurrent calls (plan-bounded, max 10).
array
Outbound from-number IDs available to your account.
boolean
Retry when a call hits voicemail.
boolean
Keep retrying until a boolean post-call goal variable is true.
string
Boolean post-call schema variable name used with retry_on_goal_incomplete.
string
Optional call→text follow-up after max call retries: whatsapp or sms.
integer
Required when fallback_channel=whatsapp.
integer
Required when fallback_channel=whatsapp. Must be an approved template on that sender.
integer
Required when fallback_channel=sms.
string
Required when fallback_channel=sms. Supports {{variable}} placeholders.
object
Maps WhatsApp template placeholders (e.g. "1") to lead variable keys for the fallback send.

WhatsApp campaigns

integer
Required for channel=whatsapp. Sender you own.
integer
Required for channel=whatsapp. Approved template on that sender.
object
Maps template placeholders (e.g. "1") to lead variable keys.
integer
Per-campaign send rate (1–10). WhatsApp campaigns also share a user-wide pool of 10 in-flight sends across all your active WhatsApp campaigns.

SMS campaigns

integer
Required for channel=sms. Must be SMS-capable and available to you.
string
Required for channel=sms. Max 1600 characters. Supports {{variable}} placeholders.

Response

string
Success message
object
Created campaign (same shape as Get campaign), including channel, schedule, text config, and fallback fields.

Error responses

Plan limit, invalid assistant/sender/template, disabled channel, or validation errors.