---
title: "Archive a campaign"
method: POST
path: "/campaigns/{id}/archive"
tags: ["Campaigns"]
---

# Archive a campaign

`POST /campaigns/{id}/archive`

## Request

- Base URL: `https://warmysender.com/api/v1`
- URL: `https://warmysender.com/api/v1/campaigns/{id}/archive`
- Auth: HTTP bearer

Hides a paused, completed or draft campaign from the campaign list. Nothing is deleted: steps, settings, contacts and results are kept, and you can bring it back any time with the unarchive call. List archived campaigns with GET /campaigns?archived=true. No request body.

Required scope: `campaigns:write`.

## Path parameters

- `id` string, required

## Response `200`

Success

## Other responses

- `400`: `invalid_status` — The campaign is running or scheduled. Pause it first.; `already_archived` — The campaign is already archived.
- `401`: `unauthorized` — Missing or invalid API key.
- `403`: `insufficient_scope` — The API key lacks the scope this endpoint requires.
- `404`: `not_found` — Campaign not found.
- `429`: `rate_limited` — Too many requests — slow down and retry after the Retry-After delay.

---

[API](https://skmtc.dev/warmysender/apis/warmysender-public-api.md) · [All operations](https://skmtc.dev/warmysender/apis/warmysender-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/warmysender/apis/warmysender-public-api/revisions/eb5c7f10a1cd?raw)
