VoiceCampaigns

Campaigns

Outbound calling with the voice AI: one-shot lists and continuous queues, the campaign lifecycle (draft, running, paused, completed, canceled), calling hours, retries, test calls and results. A campaign's instructions replace the inbound AI's prompt entirely: no workflows, bot rules, knowledge, tone or current time unless the instructions or picked actions provide them.

A campaign has the voice AI call a list of people, for example to confirm orders, recover abandoned carts or follow up on a request. Campaigns live in Settings -> Voice & SMS -> Campaigns.

A campaign has:

  • Instructions that tell the AI what the call is for and how to run it.
  • A greeting, the AI's first words.
  • Actions the AI may use during the call.
  • A caller ID, one of the business's numbers that can call out.
  • Voice AI settings, copied from the assistant you pick. See Voice AI settings.
  • Recipients: who to call. See Adding recipients.

A campaign call is not an inbound call

Campaign calls exist for one purpose, so they don't use your customer support setup. The campaign's instructions replace everything the inbound AI gets. On a campaign call, the AI has:

It hasIt doesn't have, unless you add it
The campaign's instructionsWorkflows, bot rules, General Tone or Business Description
The recipient's context, after the instructionsKnowledge base search, order lookups or any action you didn't pick
The greeting, with {name} replaced by the recipient's nameThe current date and time
The actions you picked, and ending the callBuilt-in guidance on brevity or speaking style

So write instructions that stand on their own: who the AI is and who it's calling for, the goal of the call, the tone, how brief to be, what to do when the recipient isn't interested or asks something off-topic, and when to end the call. Everything in how the voice AI works still applies: replies are spoken, actions mean silence, and so on.

Put per-recipient facts in the recipient's context, such as what they ordered. A Pre-Call hook can fill or refresh it, including the current date, right before each call.

{name} is the only placeholder in the greeting. Any other {...} is left out, and so is {name} when the recipient has no name.

Modes

ModeHow it works
One-shotCalls an uploaded list once, then completes on its own when every recipient is done.
ContinuousA standing queue. You keep adding recipients from your systems, and it runs until you cancel it. It never completes on its own.

The mode can't be changed after the campaign is created. A one-shot campaign gets its recipients when it's created. Only a continuous campaign accepts recipients later.

Lifecycle

StateWhat it meansNext
DraftSaved, not calling.Launch -> Running. Delete removes it.
RunningCalling recipients, within its calling hours.Pause -> Paused. Cancel -> Canceled. One-shot: Completed when done.
PausedCalls in progress finish. Nobody new is called until you resume.Resume -> Running. Cancel -> Canceled.
CompletedA one-shot campaign that reached everyone it could.Final.
CanceledStopped for good. Calls still ringing are dropped.Final. It can't be restarted; copy it to run it again.

A draft can't be canceled; delete it instead. A campaign can't be deleted while a call is in progress.

Editing. Drafts, running and paused campaigns can be edited: name, assistant, caller ID, instructions, greeting, actions and calling hours. Changes apply to the calls placed after the change. The mode and the recipient list can't be edited. Completed and canceled campaigns can't be changed. Copy in the campaign list starts a new campaign from an existing one.

Calling hours

Restrict calling hours limits calls to one daily window, such as 09:00 to 17:00, in a time zone you choose. Without it, the campaign calls at any time.

  • The window applies every day; there are no separate weekday settings.
  • An end time earlier than the start wraps past midnight, such as 20:00 to 06:00. The start and end can't be the same.
  • Outside the window the campaign stays Running but places no calls. Waiting recipients are called once the window opens. Test calls follow the window too.

Attempts

Each recipient gets up to three attempts, at least 5 minutes apart. A call that isn't answered, is busy or fails to connect is tried again until the attempts run out. A call that connects completes the recipient, whatever the outcome of the conversation.

Some problems on Octocom's side, such as a temporary limit at the phone provider, don't use an attempt: the recipient is tried again later. To find out why a call didn't connect, see Call failures.

Test calls

Test recipients are called like any other recipient but don't count toward the metrics. They show in the results with a Test badge, their conversations are marked as tests, and hooks see isTest so they can swap in test data.

  • Continuous campaigns: click Test call on a running campaign and enter your number. The AI calls you from the campaign's caller ID with the current instructions.
  • Any campaign: add recipients with isTest: true, or mark existing ones with Mark as test in the results table (set_campaign_recipients_test with Copilot or MCP).

Results

The campaign page shows every recipient with their Status, attempts, last call, duration and a link to the conversation, where the transcript and recording are. Filter by outcome (such as Reached, Not reached or Skipped), by success and by date, and export to CSV.

MetricMeaning
CalledRecipients dialed at least once. Retries of the same recipient count once.
Reach rateRecipients who had a live conversation, out of those called.
Success rateCalls marked successful, out of calls with a verdict.

Success needs a verdict. A call counts as successful when its conversation has the collected value success set to true, yes or 1; any other value counts as not successful. Set it from an action during the call or from a Call Completed hook with set_data_collection_result. Other collected values show as extra columns in the results.

With Copilot or MCP

ToolWhat it does
get_campaign_resourcesLists the assistants, caller IDs and actions a business can use. Call it first.
create_campaignCreates a campaign, as a draft unless launch is true.
update_campaignChanges a draft, running or paused campaign.
start_campaignLaunches a draft or resumes a paused campaign. It calls real people.
pause_campaign, cancel_campaign, delete_campaignPause, cancel for good, or delete.
append_campaign_recipientsAdds recipients to a continuous campaign.
set_campaign_recipients_testMarks recipients as test or not.
list_campaigns, get_campaign, list_campaign_recipientsCampaigns, their settings and metrics, and per-recipient results.

To set the voice AI settings of a campaign directly, pass voiceAi to create_campaign or update_campaign.

For automating campaigns around your own systems, see Events and hooks. For calling rules by country and playbooks for common campaigns, see Compliance and Playbooks.

On this page