Skip to main content
Campaign = what (template) + where (channels) + who (segment or IDs). Run queues sends, not a separate engine from the send API.

What is a campaign?

Batch send to an audience using a multi-channel template. Dashboard and API share the same queue, credits, and status. Analogy: template is the letter. Segment is the address list. Campaign is stamp and drop in the mailbox.

Campaign × segment × direct send

When to use?

Great for newsletters, promotions to filtered audiences, and testing with few IDs before the full base. For a single alert via script, use direct channel or template send.

Campaign channels

channels accepts: whatsapp, sms, email, telegram. Each listed channel must be enabled on the template. Missing phone, email, or peer → contact skipped for that channel (no per-person error).
Marketing: contact needs receiveMarketing and topic subscription when template is linked. Others do not enter the queue.

How it works in practice

  1. Template with active channels and content
  2. New campaign, name, template, channels, audience (segment or IDs)
  3. Routing per channel table above
  4. Optional: schedule (scheduledFor) → SCHEDULED
  5. Preview segment if used
  6. RunRUNNINGCOMPLETED or FAILED

Status

In the API

Run returns sent and runId. Short links get utm_campaign and utm_content automatically.

Checklist before Run

  1. Campaign channels enabled on template?
  2. Segment Preview makes sense?
  3. Telegram peers on correct instance?
  4. Tested with few IDs?
  5. Credits, instances, and email sender OK?

Next steps