RCS and SMS Messaging
Choose content, provide a fallback, and track delivery.
Before You Begin
Complete the quickstart and confirm which channels are configured for your brand. The examples below use the same brand-scoped API key.
Choose the Message Content
POST /v1/message takes clientRef, recipientPhoneNumber, and content. Supply SMS content, RCS content, or both as appropriate for your brand's configuration.
RCS supports text, media content, rich cards, carousels, and suggested actions. Include a useful SMS alternative when you want a message to work for recipients who cannot receive RCS. Final channel selection also depends on brand configuration and recipient capability.
{
"clientRef": "order-123-ready",
"recipientPhoneNumber": "15552223333",
"content": {
"rcs": {
"content": {
"type": "TEXT",
"content": "Your order is ready to collect."
}
},
"sms": {
"content": "Your order is ready to collect."
}
}
}See Send a Message for the full content schemas and examples.
Check Channel Support
curl --request POST 'https://api.smobi.com/v1/check-channel-support/15552223333' \
--header "x-api-key: $SMOBI_API_KEY"This check requires an RCS agent configured for your brand. It creates or updates the customer’s capability record and records API usage. The response reports rcs and sms capability. Capability is not marketing consent; check your own permission to contact the recipient.
Correlate and Track Messages
Store clientRef and the returned smobiMessageId. Handle status webhooks to track delivery. Keep message acceptance separate from delivery in your application.
clientRef is a correlation identifier. It is not documented as an idempotency key and should not be used to deduplicate sends. After an ambiguous timeout, reconcile the outcome before resending.
Phone Numbers and Media
Include the country code. Digits-only numbers such as 15552223333 avoid URL encoding ambiguity; E.164 numbers include a leading +. URL-encode a leading + when placing it in a query or path.
For SMS media, mediaUrl supplies the media and content is the accompanying text. Use a reachable HTTPS asset URL and test the resulting message on the target channel before a campaign.