Skip to main content

Pause, Resume, and Edit Campaigns

When you run a batch campaign in production, you need operational controls that are predictable. This guide documents Truedy’s pause/resume semantics in a practical way, so you can be confident about what changes and what does not.

Who this is for

  • Teams monitoring outbound campaigns who need to temporarily stop delivery.
  • Developers implementing safe operational buttons (pause/resume) without breaking analytics or history.

Campaign states (what matters for operations)

Campaign lifecycle (simplified):
  • draft -> scheduled -> active -> completed
  • paused can happen during scheduled or active
  • failed or cancelled are terminal outcomes

Pause semantics (what pause really does)

Pause stops delivery of future scheduled calls. In practice:
  • Campaigns that are active or scheduled can be paused.
  • Pending / not-yet-placed calls are held.
  • Already-placed calls should continue to run to their normal terminal states.
API semantics: Key idea: pause is an operational “hold the line” action. It should not rewrite history for calls already in progress.

Resume semantics (how paused work continues)

Resume restarts delivery for a paused campaign. In practice:
  • Resume endpoint: POST /batch-calls/{batch_call_id}/resume
  • Allowed when the batch is in paused status.
  • When resuming:
    • If the original schedule start is still in the future, the batch can return to scheduled.
    • If the schedule start is already in the past, it becomes active so delivery can proceed.

Editing semantics (rescheduling future contacts)

If you PATCH scheduling fields while a batch is in a compatible state (e.g. scheduled or paused), Truedy redistributes contacts across the updated schedule. Key scheduling fields typically include:
  • scheduled_at
  • start_time / end_time
  • working_days
  • max_calls_per_day
Practical guidance:
  • Use edits for pacing and window changes.
  • Expect the scheduler to recalculate scheduled_at for contacts that are not completed yet.
  • Already completed contacts should remain completed (analytics stay consistent).
See:

Concrete cURL operations

Pause a campaign

curl -X POST "https://api.truedy.ai/api/public/v1/batch-calls/BATCH_CALL_ID/pause" \
  -H "Authorization: Bearer YOUR_API_KEY"

Resume a campaign

curl -X POST "https://api.truedy.ai/api/public/v1/batch-calls/BATCH_CALL_ID/resume" \
  -H "Authorization: Bearer YOUR_API_KEY"

Edit schedule while paused/scheduled

curl -X PATCH "https://api.truedy.ai/api/public/v1/batch-calls/BATCH_CALL_ID" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "start_time": "09:30",
    "end_time": "16:30",
    "max_calls_per_day": 80
  }'

Safety checklist

Before pausing or editing, confirm:
  • You’re pausing the correct batch ID.
  • You know whether your delivery is currently active, scheduled, or already paused.
  • Your monitoring looks at campaign contact statuses (not just batch status).
Then:
  • Use pause to reduce load without touching completed calls.
  • Use resume to restart without losing your pending work.
  • Use PATCH to reschedule remaining future contacts.

Next steps