# description
One broadcast (bct_…): content + audience + send state. Only drafts are editable; send() flips a draft to 'scheduled' or 'sending' and the per-recipient ledger tracks fan-out.

# properties.name.description
Internal name shown in the dashboard list.

# properties.from_addr.description
Sender, on an outbound-verified domain you own. May carry a display name.

# properties.preview.description
Inbox preview text (the snippet next to the subject).

# properties.audience.description
Audience selection as a JSON string: { "type": "all" | "list" | "filter", "id"?: … }.

# properties.template_id.description
Template the content comes from (tpl_… / base_…), when content isn't inline.

# properties.html.description
Inline HTML body, when not using a template.

# properties.text.description
Inline plain-text body, when not using a template.

# properties.footer_address.description
Physical postal address for the CAN-SPAM footer. Prefilled from the account when not set.

# properties.scheduled_at.description
When a scheduled broadcast will send, in Unix epoch milliseconds (UTC); null when it has never happened.

# properties.audience_count.description
Snapshot of the audience size taken at send/schedule time; null for drafts.

# properties.sent_at.description
When sending completed, in Unix epoch milliseconds (UTC); null when it has never happened.

# properties.created_at.description
When the broadcast was created, in Unix epoch milliseconds (UTC).

# properties.updated_at.description
When the broadcast last changed, in Unix epoch milliseconds (UTC).