Delete a campaign
Authentication
Path parameters
UUID of the campaign to delete. An unknown, already-deleted or foreign campaign answers 404; a value that is not a UUID answers 400.
UUID of the campaign to delete. An unknown, already-deleted or foreign campaign answers 404; a value that is not a UUID answers 400.
Soft-deletes a campaign that is not active. An active campaign must be paused first with
PATCH /api/campaigns/{campaignId}/pause (400 otherwise). The campaign then disappears from
every endpoint (404). Its contacts, calls and conversations are kept for reporting, and nothing
is dialed or sent for it again: queued jobs are dropped when they find the campaign is not active.
Side effects. Sets deleted_at, clears the campaign caches and writes an audit entry.
Idempotency. Safe to retry: a repeated delete answers 404, which you can treat as success.
Webhook events. audit.log_recorded for webhooks subscribed to it. See Webhooks.
Access
full. Admin-only route: read/write keys get 403; signed-in users need the admin or owner role.Workspace API key: jl_ followed by 64 lowercase hex characters, created by the workspace owner in the
dashboard (Settings → API Keys) and sent as Authorization: Bearer jl_.... The plaintext is shown once,
at creation; Jelliu stores only a SHA-256 hash. A workspace can hold up to 25 active keys.
Operations restricted to admins or owners reject keys without the full scope with 403, and say so in
their description. No key, whatever its scope, can mint or revoke API keys or rotate a webhook secret —
that requires a signed-in owner session. A revoked key stops authenticating within about 10 seconds.
See Authentication.