Million-call scale. One playbook.
Bulk outbound voice, WhatsApp, and SMS — driven by the same Saaya agent runtime. Upload a CSV, define a channel cascade, set retry and time-of-day rules, hit launch. Live ops dashboard watches every dispatch in flight.
A dispatch engine, not a dialer.
Saaya Campaigns turns a CSV into a million conversations without anyone touching a phone. Voice first, with WhatsApp and SMS as cascading fallbacks — same agent definition, three channels, automatic hand-off based on reachability, consent, and outcome.
It is not a dumb dialer. The runtime is the same Saaya Agent that picks up your inbound calls — versioned, knowledge-grounded, tool-using, multilingual. The only difference is who initiates the conversation: this time, it is you.
Production discipline is baked in. Retry policies on busy/no-answer/voicemail. Time-of-day windows by region. Opt-out lists and DNC registries respected automatically. Throttle and pacing per region so you never trip carrier rate-limits. Every state change emits a webhook and a row in the live ops dashboard.
What ships with Campaigns.
The pieces every outbound program needs in week one — and the ones most teams discover they need in week six.
CSV ingest with templates
Drop a CSV with phone, name, and any custom fields. Map columns to template variables. Validate against E.164, region, and DNC lists before a single call goes out.
Channel cascades
Voice first. If unreachable, fall through to WhatsApp. If still no answer, SMS. Configure the order, the wait between hops, and the per-hop opt-out behavior.
Retry & time-of-day windows
Per-outcome retry rules — busy, no-answer, voicemail, machine-detected. Region-aware time-of-day windows so you never call a US lead at 2am India time.
Live ops dashboard
Pacing, completion, delivery, opt-out, and conversion in real time. Drill into any in-flight call, see live transcript, override or pause without redeploying.
Opt-out & DNC
Per-org opt-out list, plus carrier DNC registries by region (TCPA, DPDP, GDPR, OFCOM). Suppression is automatic; an opt-out on voice propagates to WhatsApp and SMS instantly.
Throttle & rate-limits per region
Concurrency caps and per-second pacing per region and per carrier. Prevents carrier blocks, smooths spikes, and keeps deliverability scores healthy across millions of dispatches.
Three steps from CSV to in-flight.
Most teams launch their first production campaign on day one.
Upload list
Drop a CSV. Saaya validates phone numbers (E.164), de-duplicates, scrubs against opt-out and DNC lists, and maps custom fields to template variables.
Configure cascade
Pick the agent, the channel order (voice → WhatsApp → SMS), retry rules, time-of-day windows, and concurrency caps. Preview a dry-run against five rows.
Launch & monitor
Hit launch. Watch the live ops dashboard — pacing, completion, conversion. Pause, throttle, or amend mid-flight. Webhooks fire on every state change.
Launch a campaign from code.
The dashboard and the API do the same things. Use whichever fits your workflow.
import { saaya } from '@saaya/sdk'
// 1. Create the campaign
const campaign = await saaya.campaigns.create({
name: 'q2-renewal-outreach',
agentId: 'agent_renewals_v3',
list: { type: 'csv', url: 's3://acme-leads/q2.csv' },
cascade: [
{ channel: 'voice', waitAfterSeconds: 0 },
{ channel: 'whatsapp', waitAfterSeconds: 3600 },
{ channel: 'sms', waitAfterSeconds: 14400 },
],
retry: {
busy: { maxAttempts: 3, backoffMinutes: 30 },
noAnswer: { maxAttempts: 2, backoffMinutes: 60 },
voicemail: { maxAttempts: 1, backoffMinutes: 0 },
},
windows: { 'US': '09:00-19:00', 'IN': '10:00-20:00' },
pacing: { concurrency: 500, perSecond: 50 },
})
// 2. Start it
await saaya.campaigns.start(campaign.id)
// 3. Watch it
const live = await saaya.campaigns.list({ status: 'running' })On every tier — what you get.
Campaigns sits on top of the Agents runtime. Voice and WhatsApp minutes are billed at usage rates; the dispatch engine itself is free below the included quota.
Not available on Free. Campaigns require Growth or higher.
Up to 50K dispatches/month · channel cascades · retry & TOD rules · live ops dashboard · opt-out & DNC · webhooks on every state change.
Million-call scale · dedicated carrier routes · region-pinned dispatch · BYO SIP trunk · SOC2 + DPA · priority support during launches · 99.95% SLA.
Pair this with the right Solution.
Frequently Asked Questions.
Tested in production at 1M+ dispatches in a single batch. Concurrency caps and per-second pacing keep deliverability healthy at any volume. For programs above 5M/month, we pin region-specific carrier routes for you.
Launch your first campaign.
CSV in, calls out — in under thirty minutes. Growth and Enterprise plans include the dispatch engine; voice and WhatsApp minutes billed at usage.