RCS over API
Send and receive RCS (opens in a new tab) messages and events through the RCS API (opens in a new tab), Messages API, or Conversations API. The RCS API exposes the full RCS feature set for channel-specific integrations. The Messages API and Conversations API support RCS alongside other channels for omnichannel use cases.
This page covers outbound messages and events, inbound messages and events, logs and status reports, capability checks, and sender, test number, and template management. Before you start, familiarize yourself with compliance and guidelines and message types.
Looking for technical details?
Visit the Infobip RCS API documentation (opens in a new tab) for full endpoint specifications, request examples, and response parameters.
What you can do with the RCS API
Use the RCS API to:
- Send rich outbound messages in text, file, card, carousel, and template formats, with optional SMS or MMS failover, validity periods, scheduled delivery, delivery time windows, and URL click tracking.
- Send messaging events, such as typing indicators and read receipts.
- Receive inbound messages and real-time events (user actions and typing).
- Track message delivery, read status, and conversation session starts through webhooks.
- Check RCS capability for destination numbers before sending.
- Manage senders, test numbers, and message templates programmatically.
This API supports full-cycle communication, from transactional alerts, OTPs, and promotional messages to rich, two-way conversational experiences.
Set up authentication and configuration
Before you start sending or receiving RCS messages, complete the following setup:
- Authenticate your integration using the API authentication guide (opens in a new tab). All RCS endpoints are available at your personalized base URL with the standard Infobip
Authorization: Appheader. - Create and launch an RCS sender before sending outbound messages. See Get started with RCS for the sender creation and launch procedure.
- Configure webhook notifications to receive delivery reports, seen reports, inbound messages, and events. Set up a subscription through the Subscriptions management API, or assign a global webhook URL in your Infobip web interface (opens in a new tab).
- Review compliance and guidelines to meet regional regulatory and opt-in requirements before sending promotional content.
Outbound messages
Outbound messages (opens in a new tab), also known as mobile terminated (MT) messages (opens in a new tab), are messages sent from your business to end users through RCS. RCS supports multiple message formats including text, file, card, carousel, and template messages, each enabling rich, interactive communication. For detailed format specifications, supported media types, and structural requirements, see message types.
For the full list of send endpoints, including bulk and template variants, see Outbound messages (opens in a new tab) in the RCS API reference.
Outbound events
RCS supports conversation indicators that provide real-time feedback during message exchanges. Both iOS and Android platforms support these indicators at no additional cost.
Typing indicators signal to end users that a sender agent or chatbot is actively composing a response. The indicator displays on the end user device for five seconds.
Read receipts confirm that a sender agent has viewed a message from an end user. The end user device displays an indicator showing that the message has been seen.
For endpoint details, see Outbound events (opens in a new tab) in the RCS API reference.
Inbound messages
Inbound messages (opens in a new tab), also known as mobile originated (MO) messages (opens in a new tab), are messages sent from end users to your business through RCS. Inbound messages enable two-way communication and can include text, files, location data, and suggestion responses. Inbound messages are delivered to your system through webhook notifications in real time. For details on inbound message types, see message types.
For webhook details, see Inbound messages (opens in a new tab) in the RCS API reference.
Media files sent by end users in mobile originated (MO) (opens in a new tab) messages, such as JPG or PDF files, are available for 60 days. After 60 days, Rich Communication Services (RCS) deletes these files from the cache.
Inbound events
Receive webhook notifications when end users interact with suggested actions or start typing.
For webhook details, see Inbound events (opens in a new tab) in the RCS API reference.
Logs and status reports
You can monitor RCS message delivery and end user engagement through delivery reports, seen reports, and detailed message logs. Delivery reports confirm that a message reached the end user device. Seen reports indicate that an end user has opened and viewed the message.
Billing transparency in webhooks
RCS webhooks include billing transparency fields that provide visibility into the billing type applied to each message. These fields help track when messages transition from non-conversational to conversational billing.
| Field | Type | Description |
|---|---|---|
trafficType | string (enum) | The billing type applied to the message. One of BASIC, SINGLE, A2P_CONVERSATION, P2A_CONVERSATION, RICH, or RICH_MEDIA. See Billing types for the mapping of each value to a billing type. |
interactionType | string | The interaction classification for the message. |
conversation.id | string | Unique identifier for the conversation session. |
conversation.canInitiate | boolean | Indicates whether a conversation session can be initiated. |
These fields appear in delivery report (DLR) webhooks, mobile originated (MO) message webhooks, and event webhooks.
For details on webhook payload structure and field definitions, see the Receive RCS delivery reports (opens in a new tab) webhook reference.
Conversation Started webhook event
A dedicated webhook event notifies you in real time when a 24-hour conversational billing session begins. This event is triggered for both A2P (business-initiated) and P2A (user-initiated) conversation sessions.
The event is triggered in each of the following scenarios:
- A2P Conversation: When an end user responds to a business message within 24 hours, creating a conversation session.
- P2A Conversation: When a business responds to an unsolicited end user message within 24 hours, creating a conversation session.
The Conversation Started event includes the conversation.id field, which matches the conversation ID in subsequent message webhooks during the 24-hour session window.
To receive webhook notifications, configure your webhook URL in the Infobip web interface (opens in a new tab). For setup steps, see Set up webhook notifications for messaging events.
For endpoint and webhook details (delivery reports, message logs, seen reports, and the Conversation Started event), see Logs and status reports (opens in a new tab) in the RCS API reference.
Capability check
Verify RCS availability for specific phone numbers before sending messages. Use capability check to implement fallback logic to SMS when RCS is not available. Both synchronous and asynchronous (webhook) capability checks are supported.
The capability check API requires a launched RCS sender. Launch the sender before running capability checks.
For endpoint and webhook details, see Capability check (opens in a new tab) in the RCS API reference.
Sender management
Manage RCS senders, their configuration, and launch requests. Sender management covers creating senders, updating configuration and platform parameters, tracking launch status, and receiving webhook notifications on state changes. It also covers requesting a launch for a specific country, submitting the launch request with all required information, and viewing launch requirements per provider and country where RCS launch is available.
Use the Sender management API (opens in a new tab) to:
- Create and update a sender before launch.
- Track sender and sender launch statuses.
- View available RCS providers.
Use the Resource Request API (opens in a new tab) to:
- Query launch information.
- Submit and update launch requests.
- Track the launch request lifecycle.
For endpoint and webhook details, see Sender management (opens in a new tab) in the RCS API reference.
Test number management
Manage test numbers used to validate an RCS sender before launch. Test number management covers adding and removing test numbers, setting the primary test number, refreshing availability, and receiving webhook notifications when test number state changes.
For endpoint and webhook details, see Test number management (opens in a new tab) in the RCS API reference.
Template management
Create, update, and submit RCS message templates for approval. Template management covers listing templates, creating and editing templates, submitting them for approval, checking approval status, and receiving webhook notifications when template state changes.
For endpoint and webhook details, see Template management (opens in a new tab) in the RCS API reference.