Send email to multiple recipients. Creates a campaign and queues delivery via the existing bulk email pipeline (AWS SES or SMTP).
POST /api/email/send-bulk
Request body
{
"fromEmail": "you@yourdomain.com",
"subject": "Monthly Newsletter",
"content": "Hello everyone
",
"recipients": ["a@example.com", "b@example.com"],
"scheduleType": "now"
}
Required fields
- fromEmail — Verified sender email address
- subject — Email subject line
- content — HTML email body
- recipients or groupIds — At least one must be provided
Optional fields
- recipients — Array of recipient email addresses
- groupIds — Array of existing contact group IDs
- preheader — Preview text
- name — Campaign name (auto-generated if omitted)
- scheduleType —
"now"(default) or"later" - scheduleTime — Required when
scheduleTypeis"later":{ "date": "2026-09-05", "time": "10:00" }
Example: send now
curl -X POST https://campaigns.crm-messaging.cloud/api/email/send-bulk \
-H "Authorization: Bearer YOUR_CRM_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fromEmail": "you@yourdomain.com",
"subject": "Newsletter",
"content": "Hello everyone
",
"recipients": ["a@example.com", "b@example.com"],
"scheduleType": "now"
}'
Example: send to existing groups
curl -X POST https://campaigns.crm-messaging.cloud/api/email/send-bulk \
-H "Authorization: Bearer YOUR_CRM_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fromEmail": "you@yourdomain.com",
"subject": "Newsletter",
"content": "Hello everyone
",
"groupIds": ["65a1b2c3d4e5f6789012345"]
}'
Success response
{
"success": true,
"message": "Bulk email scheduled successfully",
"data": {
"campaignId": "65a1b2c3d4e5f6789012345",
"fromEmail": "you@yourdomain.com",
"scheduleType": "now",
"recipientCount": 2,
"groupIds": ["65a1b2c3d4e5f6789012346"]
}
}
+1 302 486 0000
+61 2 5129 0955
+44 7828 573520