Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.wittify.ai/llms.txt

Use this file to discover all available pages before exploring further.

Outbound Voice Campaigns is for Voice and Hybrid agents only. Text-only agents don’t see this sidebar item. The page lives at /agents/{agentId}/outbound-voice-campaigns.

When to use this

Place a wave of outbound calls to a list of numbers: appointment reminders, satisfaction surveys, payment-due nudges, lead qualification, retention. The agent runs the call autonomously using your voice prompt and knowledge base, with optional per-campaign script overrides. The page does not replace your agent’s normal inbound calls. It’s the outbound lane.

Sub-tabs

Three sub-tabs collapse-in under the Outbound Voice Campaigns sidebar item, behind a chevron toggle:
Sub-tabWhat’s in it
CampaignsActive and historical campaigns
ArchivedCampaigns you’ve archived
DeletedSoft-deleted campaigns. Recoverable for 30 days.

Campaigns table

The main table of campaigns. Columns:
ColumnWhat it shows
NameThe campaign name you chose
ProviderOne of: Twilio, Telnyx, SIP Trunk, WhatsApp Calls
AudienceSegment label + count
StatusOne of: Draft, Scheduled, Dialing, Completed, Failed
ConnectedCalls where the recipient picked up
AnsweredCalls that reached at least 30 seconds (the agent had time to deliver the message)
No answerVoicemail / busy / didn’t pick up
CreatedTimestamp
Click any row to open the detail drawer.

Status chips

StatusColorMeaning
DraftMutedSaved but not scheduled
ScheduledBlueWill start dialing at the scheduled time
DialingAmber + pulseLive, the dialer is placing calls
CompletedGreenAll calls finished
FailedRedProvider rejection or critical error

Toolbar

Above the table:
  • Search box , matches campaign name. Capped at 120 chars.
  • Provider filter , multi-select.
  • Status filter , multi-select.
  • + New Campaign button on the end.

Bulk actions

Same shape as WhatsApp Campaigns: Pause (Dialing only), Archive (with confirm), Delete (red confirm).

Detail drawer

  • Campaign name + status pill
  • Provider name and caller ID
  • Created and Last updated timestamps

Live progress

For Dialing campaigns, a live progress card with:
  • In flight , calls currently ringing or in conversation
  • Queued , calls waiting for an open slot in the concurrency window
  • Completed , calls that ended (any outcome)
  • Failed , provider-level rejections
A live success rate ratio with a colored donut underneath.

Recent outcomes

A scrolling tail of the last 50 call outcomes. Each line shows:
FieldExample
Phone+966500000000
OutcomeConnected / Voicemail / No answer / Busy / Hangup / Failed
Duratione.g. 1:42
SentimentPill (positive / neutral / negative) when transcribed
Recording linkOpens the call in Voice Conversations
  • Pause , for Dialing campaigns only
  • Duplicate , clones as Draft
  • Archive , confirmation
  • Delete , red confirmation

Create a campaign

Click + New Campaign to open the multi-step wizard. Five steps:
1

Pick a provider + caller ID

A list of the telephony providers you’ve connected in Deployment: Twilio, Telnyx, SIP Trunk, WhatsApp Calls. Pick one provider for this campaign (you can run multiple campaigns simultaneously, one per provider).Below the provider, a Caller ID dropdown lists your provisioned phone numbers from that provider. The number you pick will appear as the calling number on the recipient’s phone.
2

Goal and script overrides

Choose between two modes:
  • Use the agent’s voice prompt as-is , the agent runs the call exactly like a normal inbound call.
  • Layer per-campaign overrides , a textarea where you write extra context (e.g. This is a satisfaction survey call. After greeting, ask these 3 questions in order: …). The override is layered on top of the agent’s main prompt for the duration of the campaign.
Up to 2,500 characters in the override.
3

Choose audience

Two options:
  • Upload CSV , .csv file with a phone column (E.164 format) and any optional variable columns (e.g. customer_name, appointment_date) you reference in the override. Bilingual sample CSVs are linked.
  • Saved segment , pick from segments you’ve defined elsewhere.
Audience size shows live as you upload. Invalid rows are flagged for cleanup before launch.
4

Pacing rules

Four sub-fields:
RuleWhat it controls
ConcurrencyMax simultaneous calls (e.g. 10). The dialer never exceeds this.
Calling windowStart and end hours per recipient timezone (e.g. 9 AM to 8 PM).
Retry rulesHow many retries on no-answer / busy, with a cool-down between attempts (e.g. retry up to 2 times, 30 minutes apart).
Voicemail handlingLeave a recorded message (with the override script as the script) or Hang up.
5

Schedule and launch

  • Send now , dialing starts as soon as you launch.
  • Schedule for later , pick a date / time.
Confirm and click Launch Campaign. The dialer obeys the pacing rules end-to-end. Toast: Campaign scheduled or Campaign launched.

Recordings and transcripts route to Voice Conversations

Every completed call from a campaign appears in Voice Conversations under the matching provider tab, with full audio playback, click-to-seek waveform, synced transcript, and on-demand AI summary. There’s no separate recordings inbox for campaigns, the call stream is shared with inbound traffic.

Compliance

  • The agent honors remove-me / opt-out instructions automatically. Recipients who say “remove me” or “stop calling” are added to the do-not-call list and excluded from future campaigns.
  • The dialer respects local do-not-call windows by default (e.g. 8 AM to 9 PM in the US, 9 AM to 8 PM in KSA). The Calling window in Pacing rules can narrow this further but cannot override it.
  • An audio recording disclosure plays at the start of every call when required by local law.
  • Audience CSV is parsed with the same UTF-8 BOM + CRLF rules as the Knowledge Base.

Common questions

Open the drawer. The most common cause is a provider rejection (e.g. caller ID not verified by Twilio for outbound, or Telnyx number doesn’t have outbound enabled). Fix the underlying provider config in Deployment, then duplicate the campaign and re-launch.
Telephony providers cap concurrency per account by default. If you set 50 but the provider’s account-level cap is 10, you’ll see at most 10 in flight. Contact your provider to raise the cap.
The recording disclosure plays first. After it finishes, the agent starts speaking. Most “silence” reports are people hanging up before the disclosure ends. Listen to the recording in Voice Conversations to confirm.
Yes. Open the drawer, click Pause. The campaign moves to Paused state, in-flight calls finish but no new ones get queued. Click Resume to continue. Pacing rules and audience are preserved.
The agent decides what to say based on the conversation context, not just the override. Make the override prescriptive: Always ask these 3 questions in this order. Don’t deviate. If the agent still goes off-script, lower its Temperature in Voice Settings to keep it more rigid.

Next

WhatsApp Campaigns

The chat equivalent for text + hybrid.

Voice Conversations

Where campaign recordings land.