Documentation
RCSSMS
RCSSMS
  1. Messages
  • RCS INTRODUCTION
  • RCS Message Support
  • Messages
    • Text
      POST
    • Text Suggestions
      POST
    • Stand Alone Card
      POST
    • Carousel Card
      POST
    • Media
      POST
  • FAQ
    • Frequently Asked Questions
  • Webhook
    • Webhook
  1. Messages

Carousel Card

Developing
POST
https://rest.qikberry.ai/v1/rcs/messages
Rich card carousels are ideal for showcasing multiple items, such as data plans or devices, allowing users to easily browse and compare different options within a single message. A carousel is ideal when you want to present a variety of choices or enable exploration of related content.
When you need to present a user with multiple options to choose between, use a rich card carousel. Carousels combine multiple rich cards into a scrollable format, enabling users to compare items and engage with each card individually.
A carousel must contain at least two and no more than ten rich cards. Each card within the carousel must follow the standard content and media height guidelines applicable to standalone rich cards.
image.png
Carousel specifications
ElementBest Practice
TitleCatchy, under 100 characters, may include emojis for style
DescriptionUp to 500 characters, but best kept concise (~150–200 for UI fit)
MediaUse HTTPS, optimized image (JPG, PNG), aspect ratio ~1.91:1
Suggestions1–2 per card; include actionable text with a URL or postback
HeightSmall carousels: maximum height of 542 DP, Medium carousels: maximum height of 592 DP
WidthSmall: 180 DP (fixed width), Medium: 296 DP (fixed width)
If the fields on the card in a rich card carousel aren't large enough to fill the minimum height, extra whitespace will be added at the bottom. If the fields exceed the maximum height, they will be truncated in the following order:
Description, reduced to a single line.
Title, reduced to a single line.
Suggestions, removed entirely.
Description, removed entirely.
Title, removed entirely.
To avoid truncation, keep titles and descriptions as short as possible.
Just like with a standalone rich card, you can include suggestion chips below a carousel to guide the conversation forward. These chips should offer next-step actions that complement—not duplicate—the options within the carousel. They are not intended as selection tools for the carousel items themselves.
image.png
To ensure proper display of all elements—media, titles, descriptions, and buttons—in your rich card or carousel, each must stay within the defined character and size limits. Exceeding these limits may result in content being truncated or not rendered correctly within a single card.
The total size of a rich card payload must not exceed 250 KB. Refer to best practices for recommended media file sizes and supported formats.

Example#

The following code sends a rich card carousel. For formatting and value options, see RichCard.

Request

Header Params
Authorization
string 
required
Example:
Bearer <ACCESS_TOKEN>
Content-Type
string 
required
Example:
application/json
Body Params application/json
to
string 
required
agentID
string 
required
message
object 
required
templateId
string 
required
templateParams
object 
required
Examples
{
    "to": "<MOBILE>",
    "agentID": "<AGENT_ID>",
    "message": {
        "templateId": "<TEMPLATE_ID>",
        "templateParams": {
            "carouselParams": [
                {
                    "media": {
                        "contentInfo": {
                            "fileUrl": "<FILE_URL>",
                            "fileName": "<FILE_TYPE>",
                            "mimeType": "<MIME_TYPE>"
                        }
                    }
                },
                {
                    "media": {
                        "contentInfo": {
                            "fileUrl": "<FILE_URL>",
                            "fileName": "<FILE_TYPE>",
                            "mimeType": "<MIME_TYPE>"
                        }
                    }
                }
            ]
        }    
    }
}

Responses

🟢200Success
application/json
Body
message
string 
required
data
array [object {3}] 
required
messageId
string 
optional
mobile
string 
optional
charges
number 
optional
Example
{
    "message": "1 numbers accepted",
    "data": [
        {
            "messageId": "a8XXXXXX-1bXX-4XXd-b5XX-5dXXXXXX:1",
            "mobile": "+9198XXXXXXXXX",
            "charges": 0.05
        }
    ]
}
🟠400Bad Request
🟠401Unauthorized
Modified at 2025-06-02 11:16:13
Previous
Stand Alone Card
Next
Media
Built with