Welcome to the BroadcastHub documentation! This guide will help you integrate our product release communication platform into your application.
Make sure you have created a BroadcastHub account and obtained your API keys from the dashboard.
BroadcastHub is a comprehensive platform for managing product release communications. It allows you to:
Choose the integration method that works best for your application.
Add our JavaScript SDK to your HTML:
<script>
(function(w,d,s,o,f,js,fjs) {
w['BroadcastHubObject']=o;w[o]=w[o]||function(){
(w[o].q=w[o].q||[]).push(arguments);
};
js=d.createElement(s),fjs=d.getElementsByTagName(s)[0];
js.id=o;js.src=f;js.async=1;fjs.parentNode.insertBefore(js,fjs);
}(window,document,'script','bh','https://js.broadcasthub.io/sdk/v2/broadcasthub.js'));
bh('init', 'YOUR_ACCOUNT_ID');
</script>
Install our React package:
npm install @broadcasthub/react
Then initialize it in your app:
import { BroadcastHubProvider } from '@broadcasthub/react';
function App() {
return (
<BroadcastHubProvider accountId="YOUR_ACCOUNT_ID">
{/* Your app components */}
</BroadcastHubProvider>
);
}
BroadcastHub provides a comprehensive REST API for programmatic access to all platform features.
All API requests must include your API key in the Authorization header:
Authorization: Bearer YOUR_API_KEY
Create and manage broadcast messages through our API.
POST /api/v1/broadcasts
Content-Type: application/json
{
"title": "New Feature Release",
"content": "We've just released an exciting new feature...",
"channels": ["in_app", "slack"],
"audience": { "plan": "premium" },
"scheduled_for": "2023-12-01T10:00:00Z"
}
| Parameter | Type | Description |
|---|---|---|
| title required | string | The title of your broadcast |
| content required | string | The content of your broadcast (supports Markdown) |
| channels optional | array | Delivery channels (in_app, slack, email) |
| audience optional | object | Target audience filters |
| scheduled_for optional | string | ISO 8601 timestamp for scheduled delivery |
Broadcasts created via API are subject to the same rate limits as the dashboard. Ensure you stay within your plan's limits.
Follow these guidelines to maximize the effectiveness of your product communications:
Consider these factors when scheduling your broadcasts:
Version 2.0 introduces several breaking changes. Follow this guide to update your integration.
See how different audience filters affect who receives your broadcasts.
Select an audience segment to see how it affects your broadcast reach.
Practical examples of common BroadcastHub implementations.
Announce a new feature to your premium users via in-app notification and Slack:
// Create a broadcast
const broadcast = await bh.createBroadcast({
title: "New Advanced Analytics Dashboard",
content: "We've completely redesigned our analytics dashboard with new visualization options and export capabilities.",
channels: ["in_app", "slack"],
audience: {
plan: "premium",
last_active: "30d"
},
metadata: {
feature_flag: "analytics_v2",
related_docs: "https://docs.example.com/analytics"
}
});
// Track engagement
bh.onBroadcastView(broadcast.id, (userId) => {
analytics.track('broadcast_viewed', {
broadcast_id: broadcast.id,
user_id: userId
});
});
Use the metadata field to attach additional context to your broadcasts that can be used for analytics or conditional logic in your application.
We offer tiered pricing based on the number of active users and features needed. See our pricing page for details.
Yes, our Starter plan is free for up to 1,000 users with basic features.
Our JavaScript SDK supports all modern browsers including Chrome, Firefox, Safari, and Edge. IE11 is not supported.
Call bh.identify(userId, traits) when a user logs in to your application. This enables audience targeting and personalization.