Messaging
Send RCS messages
RCS is the rich messaging channel built into Android messaging apps: your verified brand name and logo, images, cards, carousels and buttons, with automatic SMS fallback.
Before you start
RCS messages come from a verified sender: your brand name, logo, colour and description, approved before first use. Request one from the dashboard. Its ID is the sender in every request.
POST/rcs/2/messages
Text with suggestions
The simplest RCS message is text with suggestion chips under it. A tapped chip comes back to your inbound webhook with its postbackData.
Rich cards
A card combines an image or video, a title, a description and up to four buttons. Set orientation to VERTICAL or HORIZONTAL, and media.height to SHORT, MEDIUM or TALL.
Carousels
A carousel is a row of cards people swipe through, each with its own buttons. cardWidth is SMALL or MEDIUM.
Suggestion types
Every suggestion has a type, a text shown on the button and a postbackData returned when it is tapped.
| type | Extra fields | What it does |
|---|---|---|
REPLY | none | Sends the text back as the person’s reply. |
OPEN_URL | url, application (BROWSER or WEBVIEW) | Opens a link. |
DIAL_PHONE | phoneNumber | Starts a call to that number. |
SHOW_LOCATION | latitude, longitude, label | Opens a map at that place. |
REQUEST_LOCATION | none | Asks the person to share their location. |
CREATE_CALENDAR_EVENT | startTime, endTime, title, description | Adds an event to their calendar. |
SMS fallback
Not every phone supports RCS. Add options.smsFailover and the message goes out as an SMS when RCS is unavailable or not delivered within validityPeriod. Keep the fallback text self-contained, since buttons and images will not be there.
Delivery and seen reports
webhooks.delivery.url receives delivery reports in the same format as SMS, with interactionType and conversation added. webhooks.seen.url receives an event when the person opens the message.
Replies and button taps
Set the inbound webhook URL on your RCS sender in the dashboard. Each event says who wrote (sender), and message.type tells you what it is: TEXT, FILE, LOCATION, or SUGGESTION for a tapped button.