Broadcasts

Update broadcast

Update a draft broadcast. Send only the fields to change; it returns the updated broadcast.

PATCHhttps://api.sndr.sh/api/cranl/v1/broadcasts/{id}
Update broadcast
curl -X PATCH 'https://api.sndr.sh/api/cranl/v1/broadcasts/bca_9b3e6d12-a40' \
  -H 'Authorization: Bearer sndr_your_access_token' \
  -H 'Content-Type: application/json' \
  -d '{"subject": "June product update: highlights"}'
200OK
{
  "id":               "bca_9b3e6d12-a40",
  "organization_id":  "org_8d41c7a2-3f6",
  "name":             "June newsletter",
  "group_id":         "grp_4d8a0c5e-1f7",
  "from_email":       "hello@acme.com",
  "subject":          "June product update: highlights",
  "html":             "<h1>June update</h1><p>Here is what is new.</p>",
  "status":           "draft",
  "total_recipients": 0,
  "sent_count":       0,
  "failed_count":     0,
  "created_at":       "2026-05-28T14:00:00Z"
}

Authorization

Authorizationstringheaderrequired

Bearer followed by an access token. Needs the send scope.

Path parameters

idstringrequired

Broadcast ID (bca_...).

Body

application/json
namestring

New internal name, 1–120 characters.

group_idstring

New target group (grp_...).

from_emailstring

New sender, as an address or "Name <address>".

subjectstring

New subject line, 1–500 characters.

template_idstring

New template ID (tpl_...).

htmlstring

New HTML body.

textstring

New plain-text body.

Errors

401unauthenticatedMissing or invalid Bearer token.
401token_expiredAccess token expired — exchange the refresh token for a new pair.
401token_revokedToken was explicitly revoked.
400invalid_requestBody is not valid JSON, has an unknown field, or a field has the wrong type.
400not_editableThe broadcast is no longer a draft.
403insufficient_scopeToken is missing the send scope.
404not_foundResource does not exist or belongs to a different account.
422validation_failedname or subject is empty or too long, or from_email is invalid.