Unarchiving campaigns
crispy campaign unarchive <campaign-id> restores an archived campaign record to active status. It does not restore cancelled follow-ups or re-enable outreach; it only makes the campaign editable and visible in default listings again.
Archiving keeps campaign history, but permanently cancels every pending or retrying follow-up. The CLI previews the exact number before making any change:
crispy campaign archive <campaign-id>Review the warning, then rerun with --yes to confirm. If the queue changes between preview and execution, the server refuses the stale confirmation and requires a fresh preview. Archived campaigns stay readable: crispy campaign stats keeps working, and crispy campaign list --archived includes them in listings. Variant attribution includes only sends that recorded a non-NULL arm.
Deleting
Deletion is permanent and removes all related campaign data with it:
crispy campaign delete <campaign-id> --yesWithout --yes the CLI refuses, prints a warning, and exits with a non-zero code, so a stray command can never wipe a campaign. Deletion works on archived campaigns directly; you do not need to unarchive first.
Rule of thumb: archive when you want to retain history and accept losing the queued follow-ups; delete only when you want all related data gone. If the goal is just to stop sending reversibly, pause outreach instead with 'manage_outreach' action 'pause' and resume it later.