Send personalized messages to multiple recipients

Sends unique SMS or MMS messages to multiple recipients in a single API call. Unlike broadcast (which sends the same message to all recipients), batch allows a different body and/or mediaUrl per recipient. The recipients array must contain between 10 and 5,000 entries with unique phone numbers. Each recipient must have at least a body or a mediaUrl. Mixed SMS and MMS messages are supported within the same batch — recipients with a mediaUrl are sent as MMS, others as SMS. The sender number (from) must be an active number assigned to your account. The batch is queued as a background job — the response includes a batch id and initial status of queued. An optional idempotencyKey can be provided at the batch level and/or per recipient to prevent duplicate sends. If no idempotencyKey is provided, a unique one is auto-generated. Idempotency keys are tracked for 48 hours after a successful send — failed sends do not consume the key and can be retried.

Content compliance: Each recipient's message content is validated against messaging compliance rules (SHAFT, phishing, etc.). If any recipient's content violates these rules, the entire batch is rejected with error code 33019.

Rate limit: 5 requests per minute. Every response includes X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers. When the limit is exceeded, a 429 response is returned with a Retry-After header.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
string
required

Sender phone number in E.164 format or short code (5-6 digits)

string
length between 2 and 100

Idempotency key for the entire batch. If not provided, one is auto-generated from a hash of the request payload. Must be 2-100 characters long. Allowed characters: English letters (A-Z, a-z), digits (0-9), and : @ - _ ) (.

recipients
array of objects
required
length between 10 and 5000

List of recipients with individual messages. Each recipient must have at least a body or a mediaUrl. Phone numbers must be unique — duplicate to values are rejected.

recipients*
Responses

Language
Credentials
Basic
base64
:
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json