How a campaign works
- Upload a contacts CSV — must have a
phone_numbercolumn; any extra columns becomeinitial_contextfor each call - Create the campaign — link it to a workflow, set concurrency, time slots, and retry behaviour
- Start it — Ambivert AI begins dialing contacts up to your concurrency limit
- Monitor progress — track processed, completed, failed, and pending counts in real time
- Pause and resume — stop and restart at any point without losing progress
The contacts CSV
The CSV drives the campaign. Each row is one contact.phone_number are automatically passed as initial_context to each call, making them available as template variables in your agent’s prompt — so each call can feel personalised at scale.
Scheduling and concurrency
Concurrency controls how many calls run simultaneously. It’s capped by your telephony plan. Set it conservatively to start. Time slots restrict when Ambivert AI is allowed to dial — useful for respecting business hours or regulations:Retry behaviour
Ambivert AI can automatically retry contacts who didn’t answer, were busy, or went to voicemail:Circuit breaker
The circuit breaker automatically pauses a campaign when the call failure rate gets too high — protecting against wasted spend and telephony reputation issues caused by a misconfigured agent or a bad contact list. When enabled, Ambivert AI monitors the failure rate within a rolling time window. If it exceeds the threshold, the campaign is paused automatically and must be manually resumed after the issue is investigated.
A campaign paused by the circuit breaker behaves the same as a manually paused campaign — in-flight calls complete normally, and it can be resumed once the underlying issue is resolved.
Campaign lifecycle
You can pause and resume a campaign at any time. In-flight calls complete normally before a pause takes effect.