Send Bulk SMS
Use sendBulkSMS() to send the same text message to one or more Salesforce records.
When to use this API
This method is intended for:
- campaign outreach
- reminders
- notifications
- announcements
- dynamic or merge-field-driven outbound text messages
When the request is accepted, the SDK creates outbound records on Message History and queues them for delivery.
Method signature
Inputs
Example inputs
How recipient resolution works
The SDK checks the fields in phoneList in order and uses the available phone number for delivery.
That means the developer controls:
- which fields are checked
- in what order they are checked
Response type
Response fields
Validation rules
A valid request must include:
- one or more record IDs in
contactIds - a non-null
message - at least one phone field in
phoneList - a valid
senderId
Documented validation failures
The Confluence child page documents these failures:
The page explicitly says message = null returns ERROR, but it does not document the exact responseMessage string for that case. Do not hard-code a message string unless you verify it in the SDK implementation.
Message processing behavior
When validation passes, the SDK:
- validates the input parameters
- resolves recipient numbers from
phoneList - uses the provided sender record
- creates outbound records on Message History
- submits the messages to the Conversive platform
Message status lifecycle
The Confluence page documents this status flow on Message History:
Callout failure behavior
If the SDK successfully creates the record but the callout fails:
- the message is first stored as
Submitted - the status is later updated to
ERROR
This is important because it separates:
- input validation failures returned immediately by the API
- delivery or callout failures that happen after record creation
Example
Example success response
Example error responses
No contacts provided
Missing sender ID
Missing phone fields
What success means here
A successful MessageResponse means the messages were accepted and queued. It does not guarantee final delivery to the carrier or end recipient.
Best practices
- validate the list of target record IDs before calling the method
- pass a valid and active sender record
- pass phone fields that actually exist on the target object
- test with a small recipient set before large sends
- inspect both the returned
MessageResponseand related Message History records during troubleshooting
