Archive a campaign
POST /api/v1/campaign/{id}/archive — hide a campaign from the default list without deleting it.
POST /api/v1/campaign/{campaign_id}/archiveArchive a campaign to hide it from the default list. Nothing is deleted — archiving is fully reversible with unarchive, and all contacts, calls, and logs are preserved. Archived campaigns are also skipped by the orchestrator's background sweeps.
Pause before archiving an active campaign
A campaign that is running or syncing cannot be archived — archiving it out from under the orchestrator would strand in-flight calls. Pause it first, then archive. The dashboard offers a combined "Pause & archive" action.
While archived, a campaign cannot be edited, started, or resumed — those endpoints return 409 until you unarchive it.
Response
200 OK with the campaign response, now carrying a non-null archived_at timestamp. A campaign_archived entry is appended to the campaign's logs[].
Examples
curl -X POST https://dashboard.zoxa.ai/api/v1/campaign/7/archive \
-H "X-API-Key: zsk_..."Errors
| Status | detail | When |
|---|---|---|
404 | "Campaign not found" | Id not in your org. |
409 | "Pause the campaign before archiving it" | Campaign is running or syncing. |
Related
POST /campaign/{id}/unarchive— restore an archived campaignGET /campaign— passarchived=trueto list archived campaigns