Broadcast Analytics
Endpoints
Broadcast Analytics
Retrieve broadcast analytics for your organization. Supports two modes:
- Individual broadcast — pass
broadcast_idto get detailed analytics for a single broadcast, including per-button click tracking, opt-out detection, conversion funnel, and revenue attribution. - Overall analytics — pass
start_dateandend_dateto get aggregated analytics across all broadcasts in a date range.
Requirements
- Valid API key with
fiq_prefix - For individual mode: a valid broadcast UUID
- For overall mode: both
start_dateandend_datequery parameters
GET
Broadcast Analytics
Documentation Index
Fetch the complete documentation index at: https://docs.flowapt.com/llms.txt
Use this file to discover all available pages before exploring further.
Retrieve broadcast analytics for your organization. Supports individual broadcast deep-dives (with per-button tracking, opt-out detection, and revenue attribution) or overall date-range aggregations.
Two Modes
The endpoint supports two query modes based on which parameters you provide:| Mode | Parameters | Description |
|---|---|---|
| Individual | broadcast_id | Detailed analytics for a single broadcast |
| Overall | start_date + end_date | Aggregated analytics across all broadcasts in a date range |
Individual Broadcast Analytics
Pass abroadcast_id to get detailed metrics for a single broadcast, including delivery stats, per-button click tracking, opt-out detection, and Shopify revenue attribution.
Response Fields
| Field | Description |
|---|---|
broadcastInfo | Broadcast metadata (name, template, date, total recipients) |
deliveryStats | Sent, delivered, read, failed counts with rates |
conversionFunnel | Funnel from sent → delivered → read → button clicked → opted out |
buttonAnalytics | First button stats (backward compatible) |
allButtons | Per-button breakdown with text, clicks, and conversion rate |
totalButtonClicks | Sum of clicks across all buttons |
optOutAnalytics | Total opt-outs and opt-out rate |
revenue | Shopify revenue attributed to this broadcast via UTM tracking |
Per-Button Tracking
All quick reply buttons on the template are tracked individually. The response includes anallButtons array with each button’s text, click count, and conversion rate:
Opt-Out Detection
Opt-outs are detected from customer responses within 48 hours of the broadcast using multilingual keyword matching:| Language | Keywords |
|---|---|
| English | stop, unsubscribe, opt out, optout |
| Portuguese | parar, pare, cancelar |
| Spanish | detener, basta |
| French | arreter, desabonner |
| Italian | fermare, ferma, annullare, annulla, cancellare |
| General | quit, end, cancel |
Revenue Attribution
Revenue is automatically attributed by tracing the broadcast’s shortcode through to Shopify orders:- Broadcast button parameter contains a shortcode
- Shortcode resolves to a redirect URL with a
utm_campaignparameter - Shopify orders with
utm_source=whatsappand a matchingutm_campaignare summed
utmCampaigns array breaks down revenue per UTM variant, so you can see exactly how much came from the main link vs the “View More” button (_vm suffix). Each order also includes its own utmCampaign field.
Overall Broadcast Analytics
Passstart_date and end_date to get aggregated analytics across all broadcasts in the date range.
Response Fields
| Field | Description |
|---|---|
overallStats | Aggregated totals: sent, delivered, read, failed, rates, campaign count |
campaignPerformance | Per-campaign breakdown with delivery stats |
timeSeriesData | Daily breakdown of sent/delivered/read/failed |
templateAnalytics | Per-template aggregated stats and usage counts |
errorAnalysis | Ranked error codes with counts and percentages |
POST Method
The same analytics are also available via POST, with parameters in the request body instead of query string:Integration Example
Revenue Attribution
Revenue attribution requires your broadcast template to use a FlowIQ shortcode link (via URL redirects) with a
utm_campaign parameter, and your Shopify store to be connected. Orders are matched where utm_source=whatsapp in the landing site URL.Authorizations
Bearer token for authentication. Format: Bearer fiq_YOUR_API_KEY
Query Parameters
UUID of a specific broadcast to get detailed analytics for. If provided, start_date and end_date are ignored.
Start date for overall analytics (inclusive). Required when broadcast_id is not provided.
End date for overall analytics (inclusive). Required when broadcast_id is not provided.

