# GET /v1/broadcasts/{id}

Get a broadcast

The broadcast and how far it has come: its status and the counts of messages released and failed.

Takes a server key (`sk_…`, or `sk_test_…` on a test server) as a bearer token. TypeScript: `sendora.broadcasts.get(broadcastId)`. Python: `sendora.broadcasts.get(broadcast_id)`.

## Parameters

- `id` (path, required, string (uuid)): The broadcast id.

## Responses

### 200 A broadcast and how far it has come.

- `broadcastId` (string (uuid), required)
- `streamId` (string (uuid), required): The broadcast stream the messages go on.
- `status` ("accepted" | "processing" | "completed" | "cancelled", required): accepted until the first message leaves, processing while messages are leaving, completed when every message has left or failed, cancelled once cancelled.
- `from` (string, required)
- `subject` (string, required)
- `tag` (string or null, required)
- `metadata` (map of string to string, required)
- `total` (integer, required): Messages stored, after suppressed addresses were dropped.
- `released` (integer, required): Messages handed to the mail server so far.
- `failed` (integer, required): Messages that could not be handed over, cancelled ones included.
- `suppressed` (integer, required): Addresses dropped from the list for standing on the stream’s suppression list.
- `submittedAt` (string (date-time), required)
- `completedAt` (string (date-time) or null, required): Set once nothing is left to send, or on cancel.

Example:

```json
{
  "broadcastId": "2f1c8a4e-3b6d-4f0a-9c21-7d5e6a8b9c01",
  "streamId": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "status": "processing",
  "from": "news@acme.se",
  "subject": "News from Acme in October",
  "tag": "newsletter-2026-10",
  "metadata": {},
  "total": 2,
  "released": 1,
  "failed": 0,
  "suppressed": 0,
  "submittedAt": "2026-10-01T08:00:00.000Z",
  "completedAt": null
}
```

## Errors

Every error answers `error`, the code, and `message`, a sentence for a person. A code that adds fields is shown in full below the table.

| Code | Status | Meaning |
| --- | --- | --- |
| `unauthorized` | 401 | The key is missing, malformed or revoked. |
| `wrong_token_kind` | 403 | The key is of the other kind: a server key (sk_) where an account key (ak_) is needed, or the reverse. The message names the kind the operation takes. |
| `not_found` | 404 | No such broadcast of this server. |
