Broadcast
The authored content of a broadcast, before it is sent to any channel.
BroadcastFields
Human-readable name used to identify the broadcast. Internal only — it is never shown to recipients. This is what searchBroadcasts matches on.
The title recipients see in the notification the broadcast arrives as. Unlike name this does leave Plain, and a broadcast cannot be sent until it is set. Null until then.
The body of the broadcast, encoded as described by contentFormat.
How content is encoded, as declared when the broadcast was created.
The channel this broadcast is authored for. Fixed at creation — content is written against this channel's rendering rules, so a broadcast cannot be moved to another channel.
Whether Slack will expand the links and media in this broadcast when it sends. Only meaningful for a SLACK broadcast.
Who the broadcast is sent as. The variant matches the broadcast's type. Null until a sender is set.
Who the broadcast is sent to. Resolved to concrete recipients at send time, not when scheduled. Empty until a target is set.
Where the broadcast is in its lifecycle.
The broadcast's send history, newest first, and where per-recipient progress lives. Empty while the broadcast is a draft.
Unfiltered this includes test sends, which post real messages and collect real deliveries — check
isTest, or narrow with filters, before presenting an entry as a real send. Because of that the
first edge is not necessarily the send status describes; use latestSend for that.
Ordered by scheduledAt descending — a send's place in the history is when it was due to go out.
Rescheduling therefore moves a send within the list, but only a SCHEDULED send can be
rescheduled and it already sorts first, so the settled part of the history does not shift.
The send the broadcast's lifecycle fields are derived from: the most recent one that is not a test
send, which is the same row status, scheduledAt, startedAt and completedAt come from. Null
while the broadcast is a draft.
Equivalent to the first edge of sends(filters: { isTest: false }), but batched across a list of
broadcasts where the connection is not — so prefer this in a list view and sends on a detail view.
When the broadcast's send is due, or when it started if it is already underway. Null while the broadcast is a draft.
When the send actually began, as opposed to when it was due. Null until it starts.
When the send reached a terminal state, whatever that state was. Null until it finishes.
Whether the broadcast has been soft-deleted. Soft-deleted broadcasts are excluded from lists and search but remain queryable by ID.
The timestamp at which the broadcast was soft-deleted, or null if it has not been deleted.
The user or machine user that deleted the broadcast, or null if it has not been deleted.
Threads created by replies to the messages this broadcast posted. Equivalent to querying
threads with a broadcastIds filter, so the connection reports the same totalCount the
filter would.
Reactions on the messages this broadcast posted, one entry per emoji, totalled across every channel it reached.
Was this page helpful?

