---
title: "Cancel a scheduled or sending campaign"
method: POST
path: "/campaigns/{id}/cancel"
tags: ["Campaigns"]
---

# Cancel a scheduled or sending campaign

`POST /campaigns/{id}/cancel`

## Request

- Base URL: `https://sending.dev/api/v1`
- URL: `https://sending.dev/api/v1/campaigns/{id}/cancel`
- Auth: HTTP bearer

Stops recipients not yet queued; those already queued in the fan-out are sent anyway. Required scope: `campaigns:write`.

## Path parameters

- `id` string, required: Campaign ID.

## Response `200`

Campaign canceled.

- object
  - `id` string, uuid, required
  - `status` string, required

## Other responses

- `401`: Missing or invalid token.
- `403`: Insufficient scope.
- `404`: Resource not found.
- `409`: State conflict (e.g. duplicate).

---

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