Saltar al contenido principal

Broadcasts

Envía correos masivos a tus suscriptores.

Enviar Broadcast

Endpoint: POST /api/v1/broadcast
Autenticación: Secret Key (sdk_...)

Parámetros de Petición

CampoTipoRequeridoDescripción
subjectstringAsunto del correo.
templatestringNombre de la plantilla.
filterobjectNoFiltrar destinatarios.

Filtrar Destinatarios

{
"filter": {
"status": "confirmed", // active, pending, unsubscribed
"source": "landing_page" // Coincide con metadata.source
}
}
Importante

Tu HTML DEBE incluir {{unsubscribe_link}}. Generamos una URL única para cada usuario.

Ejemplo con Plantilla

curl -X POST https://senddock.dev/api/v1/broadcast \
-H "Authorization: Bearer sdk_..." \
-H "Content-Type: application/json" \
-d '{
"subject": "Noticias Semanales",
"template": "newsletter",
"filter": { "status": "active" }
}'

Ejemplo con HTML Puro

curl -X POST https://senddock.dev/api/v1/broadcast \
-H "Authorization: Bearer sdk_..." \
-H "Content-Type: application/json" \
-d '{
"subject": "Novedades de Noviembre",
"html": "<h1>Hola {{name}}!</h1><p>...</p><a href=\"{{unsubscribe_link}}\">Cancelar suscripción</a>",
"filter": { "status": "confirmed" }
}'

Respuesta (202 Accepted)

{
"success": true,
"data": {
"message": "Broadcast started successfully. We are processing it in the background.",
"broadcastId": "bc_17098234_clxxx..."
}
}

Ejemplos de Código

await fetch('https://senddock.dev/api/v1/broadcast', {
method: 'POST',
headers: {
'Authorization': 'Bearer sdk_tu_secret_key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
template: 'weekly-digest',
subject: 'Noticias Tech',
filter: { status: 'active' }
})
});