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.