Send bulk messages
Send a message to multiple recipients in a single request using Prelude Notify API.
Personalize each recipient
Userecipients instead of to to give each recipient their own template variables. Top-level variables are shared by all recipients. When a recipient sets the same key, the recipient’s value is used.
amount set to $49.99, and Bob with amount set to $19.99. You can’t set both to and recipients to a non-empty list in the same request.
Notes
- Each recipient is processed independently. Results are returned in the same order as the request.
- For marketing sends,
schedule_atmay be adjusted to comply with local regulations. - Errors are returned per recipient in
results[].errorand do not fail the entire request.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
The template identifier configured by your Customer Success team.
"template_01k8ap1btqf5r9fq2c8ax5fhc9"
The Sender ID. Must be approved for your account.
The list of recipients' phone numbers in E.164 format. Provide either to or recipients, not both.
The list of recipients, each with its own template variables. Use it to personalize the message for each recipient. Provide either to or recipients, not both.
Each recipient's variables are merged with the top-level variables. When both set the same key, the recipient's value is used. The same phone number can appear more than once, and each entry sends its own message.
A BCP-47 formatted locale string.
"el-GR"
"fr-FR"
The variables to be replaced in the template, shared by all recipients. When you use recipients, a recipient's own value for the same key is used instead.
The message expiration date in RFC3339 format. Messages will not be sent after this time.
"2025-12-25T18:00:00Z"
Schedule delivery in RFC3339 format. Marketing sends may be adjusted to comply with local time windows.
"2025-12-25T10:00:00Z"
The URL where webhooks will be sent for delivery events.
"https://your-app.com/webhooks/notify"
A user-defined identifier to correlate this request with your internal systems.
80"campaign-12345"
Preferred channel for delivery. If unavailable, automatic fallback applies.
sms, rcs, whatsapp "whatsapp"
A media attachment to include in the message header. Supported on
WhatsApp templates registered with a DOCUMENT, IMAGE, or
VIDEO header. The media type is determined by the template's
registered header format; send the matching file type for each.
DOCUMENTheaders accept PDF and other document formats;filenameis required and displayed to the recipient.IMAGEheaders accept.png,.jpg,.jpeg, and.webpURLs;filenameis ignored.VIDEOheaders accept.mp4and.3gpURLs;filenameis ignored.
Maximum number of automatic retry attempts across channels for each send in the batch, in addition to the first attempt. For example, 2 allows up to 3 total delivery attempts per recipient. Lower values reduce delivery cost on hard-to-reach numbers at the expense of deliverability. When omitted, your account's configured default applies.
0 <= x <= 62
Response
OK
The per-recipient result of the bulk send, in the same order as the request.
Total number of recipients.
Number of successful sends.
Number of failed sends.
A string that identifies this specific request.
The callback URL used for this bulk request, if any.
The shared variables used for this bulk request.
The template identifier used for this bulk request.