List broadcasts
List organic re-engagement **broadcasts** — metadata only; insight numbers live on the per-broadcast `/insights` endpoint. Newest created first (stable — ties break on id). The optional `startDate`/`endDate` window (both together) matches the date `dateField` selects — send dates by default, or the **next scheduled send** (`dateField=scheduled`) to cover a future range. Page past the `limit` cap with `offset`.
/broadcastsBeta
Authorization
x-api-key x-date x-signature x-api-version Your API key (the ApiKeys document id).
In: header
Current timestamp as an IMF-fixdate string (GMT, US locale) "EEE, dd MMM yyyy HH:mm:ss z", e.g. "Sun, 06 Dec 2020 12:59:11 GMT". 30-second TTL.
In: header
HMAC-SHA256 of the x-date string keyed by your secret, lowercase hex.
In: header
API version you're coding against — currently 1. Required; a missing or unsupported value returns 400 with Missing or unsupported x-api-version header. Supported versions: 1.
In: header
Query Parameters
Scope to one workspace (any type — from GET /workspaces). Omit to span every workspace in the org.
Filter to a single broadcast type.
When true, also include archived (non-visible) broadcasts.
Window start (ISO date/datetime). When set, only broadcasts that match [startDate, endDate] on the date selected by dateField (default: send/execution dates, not creation) are returned. Must be supplied together with endDate.
Window end (ISO date/datetime, inclusive). Must be supplied together with startDate.
Which date the startDate/endDate window matches. sent (default): broadcasts that sent at least once in the window (execution dates). scheduled: broadcasts whose next scheduled send falls in the window — the only way to cover a future range; it matches the single next occurrence, so a recurring broadcast whose next fire precedes the window start won't match. any: either. Requires the window — dateField without startDate/endDate is rejected.
Skip this many results (after the newest-first sort) — raise by limit to page past the cap.
Max broadcasts per page.
Response Body
application/json
application/json
application/json
application/json
Try it
read-onlyKept in this tab only and signed in your browser — your secret never leaves your device.
Query
Enter your key and secret to send.
curl -X GET "https://example.com/broadcasts"[ { "id": "string", "name": "string", "type": "SINGLE", "target": "string", "active": true, "isMM": true, "workspaceId": "string", "mediumId": "string", "mediumName": "string", "scheduled": true, "scheduledFor": "string", "frequency": "string", "lastSentAt": "string", "nextSendAt": "string", "lastExecutionId": "string", "metaMessageCampaignName": "string", "createdAt": "string" }]{ "message": "string"}{ "message": "string"}{ "error": [ { "message": "string", "path": [ "string" ], "type": "string", "context": {} } ]}List reusable superpowers and templates
List reusable superpowers and creative templates — attach one to a post by reference (`creativeTemplateId`) instead of hand-building the full object.
Get (a single) broadcast metadata
One broadcast's metadata (no insight numbers) **plus** `messages` — its **current** message creative, one entry per variant (most broadcasts have one). For the per-send delivery funnel, call `GET /broadcasts/{broadcastId}/insights`.