Create a broadcast
Creates a new broadcast campaign in draft status.
Important: Creating a broadcast does not schedule or send it. After creating the broadcast, you must call the /api/broadcasts.schedule endpoint to schedule or send it immediately.
post/api/broadcasts.create
Request body
Example request
{
"workspace_id": "ws_1234567890",
"name": "Spring Newsletter 2024",
"audience": {
"list": "newsletter",
"segments": [
"premium_users"
],
"exclude_unsubscribed": true
},
"test_settings": {
"enabled": true,
"sample_percentage": 20,
"auto_send_winner": true,
"auto_send_winner_metric": "open_rate",
"test_duration_hours": 24,
"variations": [
{
"variation_name": "Variation A",
"template_id": "template_variant_a"
}
]
},
"tracking_enabled": true,
"utm_parameters": {
"source": "newsletter",
"medium": "email",
"campaign": "spring_2024"
},
"data_feed": {
"global_feed": {
"enabled": true,
"url": "https://api.example.com/broadcast-data",
"headers": [
{
"name": "Authorization",
"value": "Bearer token123"
}
]
},
"recipient_feed": {
"enabled": true,
"url": "https://api.example.com/recipient-data",
"headers": [
{
"name": "Authorization",
"value": "Bearer token123"
}
]
}
}
}Response
Broadcast created successfully
Example response
{
"broadcast": {
"id": "broadcast_12345",
"workspace_id": "ws_1234567890",
"name": "Spring Newsletter 2024",
"channel_type": "email",
"status": "draft",
"audience": {
"list": "newsletter",
"segments": [
"premium_users"
],
"exclude_unsubscribed": true
},
"schedule": {
"scheduled_date": "2024-03-15",
"scheduled_time": "10:30",
"timezone": "America/New_York"
},
"test_settings": {
"enabled": true,
"sample_percentage": 20,
"auto_send_winner": true,
"auto_send_winner_metric": "open_rate",
"test_duration_hours": 24,
"variations": [
{
"variation_name": "Variation A",
"template_id": "template_variant_a"
}
]
},
"utm_parameters": {
"source": "newsletter",
"medium": "email",
"campaign": "spring_2024"
},
"data_feed": {
"global_feed": {
"enabled": true,
"url": "https://api.example.com/broadcast-data",
"headers": [
{
"name": "Authorization",
"value": "Bearer token123"
}
]
},
"recipient_feed": {
"enabled": true,
"url": "https://api.example.com/recipient-data",
"headers": [
{
"name": "Authorization",
"value": "Bearer token123"
}
]
}
},
"winning_template": "template_winner",
"enqueued_count": 1000
}
}