Skip to the documentation
API

Cancel a broadcast

Stops a broadcast that is `scheduled`, `queued` or `sending`, including one that has reached everybody while some copies are still waiting to go. Nobody else is added, and every copy still waiting is cancelled.

POSTapi.openemail.uk/broadcasts/{id}/cancel

Runs the real call against your workspace, with your own key.

POST /broadcasts/{id}/cancel

Stops a broadcast that is scheduled, queued or sending, including one that has reached everybody while some copies are still waiting to go. Nobody else is added, and every copy still waiting is cancelled.

Example

Needs emails:send. There is no body. The answer is the whole broadcast, shortened here.

curl
curl -X POST "$OE/broadcasts/brd_5a8c1e3f7b2d94a06c8e1f3b/cancel" -H "$AUTH"
Response
{  "object": "broadcast",  "id": "brd_5a8c1e3f7b2d94a06c8e1f3b",  "status": "cancelled",  "counts": {    "recipients": 412,    "created": 250,    "skipped": 1,    "failedToQueue": 0,    "queued": 0,    "sending": 0,    "sent": 211,    "failed": 1,    "cancelled": 38  },  "cancelledAt": "2026-09-23T12:00:45.000Z"}

A copy already being handed over finishes, and copies that have gone cannot be recalled, so counts.sent keeps them and counts.cancelled shows what was stopped. Cancelling before scheduledAt sends nothing at all.

Once every copy has gone out there is nothing left to stop, and the call is a 409 broadcast_not_cancellable. A failed broadcast with copies still waiting can be cancelled to stop them, and one with nothing waiting is refused the same way.

Cancelling a broadcast that is already cancelled answers it as it stands, so a retry is safe. There is no resume.