Skip to content

Archive a campaign owned by the authenticated brand.

DELETE
/brands/me/campaigns/{campaignId}

Because Campaign has no archivedAt column in the current schema, this endpoint performs a hard cascade delete: removes the campaign row and all CampaignPolst joins. Vote events on the underlying polsts are preserved. Returns 204 on success.

campaignId
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/

Campaign UUID.

X-Polst-Idempotency-Key
required
string
>= 8 characters <= 255 characters

Idempotency key, 8–255 URL-safe chars.

Campaign deleted.

Missing idempotency key.

Missing or invalid bearer token.

Bearer token lacks manage scope or has no brand context.

Campaign not found or not owned by the caller.

CampaignId is not a UUID.