Overview
The RCS Template API allows you to create, manage, and retrieve reusable RCS message templates for your RCS bot. Templates define the structure, layout, media, and interactive actions of messages that you later send to your users.
Instead of building message content every time you send an RCS message, you create templates once and reuse them consistently across campaigns, journeys, and transactional flows.
This helps you maintain:
- consistent message design and branding
- faster message creation and rollout
- easier updates when content or CTAs change
- better governance and approval control
Available Endpoints
| Endpoint name | Method | Description |
|---|---|---|
| Create RCS Template | POST | Creates a new RCS template. This endpoint supports three template types: Text Message, Rich Media (Rich Card Standalone), and Carousel. You choose the template type using the request payload and define the content, media, and interactive suggestions (CTAs) accordingly. |
| Edit RCS Template | PUT | Updates an existing RCS carousel template to modify text, media, card layout, or suggestions without creating a new template. |
| Add Image (Upload Asset) | POST | Uploads an image or media asset that can be reused in rich card or carousel templates. Useful for centralized asset management and reducing template payload size. |
| Fetch Bot Info | GET | Retrieves information about your RCS bot from the Netcore Cloud platform. Helps you validate bot configuration or manage multiple bots. |
| Fetch Templates | GET | Retrieves a list of approved RCS templates. You can filter the results by status, template type, name, and pagination parameters. |
| Template Preview | GET | Retrieves detailed information for a specific RCS template, including cards and suggestions, allowing you to preview how the template will be rendered to users. |
Available Types of Template
| Template type | When you should use it |
|---|---|
| Text Message | For simple text-based messages with optional interactive suggestions such as replies, URLs, calls, or location actions. |
| Rich Media (Rich Card Standalone) | For messages that require a single rich card with image/video, title, description, and CTAs. |
| Carousel | For messages that require multiple swipeable cards, each with its own media, text, and CTAs. |
Sample Request: Create Template
curl --request POST \
--url https://soipapi.netcorecloud.com/template/create \
--header 'content-type: application/json' \
--data @- <<EOF
{
"action_type": "text_message",
"payload": {
"template_name": "text_message_demo",
"rcs_type": "text_message",
"template_content": "Time to go big or go home because it's India VS Australia FINALS!",
"suggestions": [
{
"suggestionType": "reply",
"displayText": "Click to Win",
"postback": "click_to_win"
},
{
"suggestionType": "url_action",
"url": "https://brandx.onelink.me/",
"displayText": "Answer and Win",
"postback": "answer_and_win"
},
{
"suggestionType": "dialer_action",
"phoneNumber": "+919876543212",
"displayText": "Call Now Fast",
"postback": "call_now_fast"
}
]
}
}
EOF
curl --request POST \
--url https://soipapi.netcorecloud.com/template/create \
--header 'content-type: application/json' \
--data '
{
"action_type": "carousel",
"payload": {
"card_width": "SMALL_WIDTH",
"card_height": "SHORT_HEIGHT",
"rcs_type": "carousel",
"save_type": "add",
"cards": [
{
"type": 1,
"image_file": "data:video/mp4;base64,AAAAIGZ0eXBpc29tAAAC...",
"url": "https://i.postimg.cc/7h0pYnGQ/tree-736885...",
"thumbnail_url": "https://i.postimg.cc/Vsg8TG61/tree-736885...",
"thumbnail_file": "",
"title": "Hi hello welocme",
"description": "hey good welcome",
"is_button": true,
"suggestions": [
{
"suggestionType": "url_action",
"url": "https://netcorecloud.com/",
"displayText": "Answer and Win",
"postback": "answer_and_win",
"webview": "Full"
},
{
"suggestionType": "share_location",
"displayText": "Share Location",
"postback": "share_location_postback"
},
{
"suggestionType": "calendar_event",
"startTime": "2025-12-07 14:30:00",
"endTime": "2025-12-30 15:00:00",
"title": "Team Sync-up Meeting",
"description": "Monthly team sync-up meeting - Updated",
"displayText": "Schedule Updated Meeting",
"postback": "meeting_scheduled_updated"
},
{
"suggestionType": "view_location_latlong",
"latitude": 19.076,
"longitude": 72.877,
"label": "Mumbai Store",
"displayText": "View Location",
"postback": "view_location_postback"
}
]
},
{
"type": 1,
"image_file": "",
"url": "https://i.postimg.cc/7h0pYnGQ/tree-736885...",
"thumbnail_url": "",
"thumbnail_file": "",
"title": "[TITLE]",
"description": "Welcome",
"is_button": true,
"suggestions": [
{
"suggestionType": "dialer_action",
"phoneNumber": "+919876543212",
"displayText": "Call Now Fast",
"postback": "call_now_fast"
},
{
"suggestionType": "url_action",
"url": "https://netcorecloud.com/",
"displayText": "Answer and Win",
"postback": "answer_and_win"
}
]
}
],
"template_name": "test_temp_16"
}
}
'
curl --request POST \
--url https://soipapi.netcorecloud.com/template/create \
--header 'content-type: application/json' \
--data '
{
"action_type": "rich_card",
"payload": {
"orientation": "VERTICAL",
"alignment": "MEDIUM_HEIGHT",
"type": 2,
"rcs_type": "rich_card",
"template_id": "pqNP",
"save_type": "add",
"title": "box8 offer",
"image_file": "data:video/mp4",
"url": "",
"thumbnail_file": "",
"thumbnail_url": "https://i.postimg.cc/Vsg8TG61/tree-736885-960-720-7-3.jpg",
"description": "new description",
"suggestions": [
{
"suggestionType": "reply",
"cta_id": "",
"displayText": "trgrtrtgtrgr",
"postback": "trgrtrtgtrgr[custom_param]",
"url": "",
"phoneNumber": ""
},
{
"suggestionType": "url_action",
"cta_id": "",
"displayText": "ergergergreg",
"postback": "ergergergreg",
"url": "https://www.google.com",
"phoneNumber": ""
},
{
"suggestionType": "dialer_action",
"cta_id": "",
"displayText": "gt4ff45g45g",
"postback": "gt4ff45g45g",
"url": "",
"phoneNumber": "+917977772497"
}
],
"template_name": "video_demo45"
}
}
'
Sample Request: Edit RCS Carousel Message
curl --request PUT \
--url https://soipapi.netcorecloud.com/template/edit \
--header 'content-type: application/json' \
--data '
{
"action_type": "carousel",
"payload": {
"card_width": "SMALL_WIDTH",
"card_height": "SHORT_HEIGHT",
"rcs_type": "carousel",
"cards": [
{
"type": 1,
"image_file": "",
"url": "https://i.postimg.cc/7h0pYnGQ/tree-736885-960-720-2-1.gif",
"thumbnail_url": "",
"thumbnail_file": "",
"title": "Sample Title 1",
"description": "Sample Description 1",
"suggestions": [
{
"suggestionType": "url_action",
"displayText": "Visit Google",
"postback": "Visit Google",
"url": "https://www.google.com"
}
]
},
{
"type": 1,
"image_file": "",
"url": "https://i.postimg.cc/7h0pYnGQ/tree-736885-960-720-2-1.gif",
"thumbnail_url": "",
"thumbnail_file": "",
"title": "Sample Title 2",
"description": "Sample Description 2",
"suggestions": [
{
"suggestionType": "reply",
"displayText": "Reply Example",
"postback": "Reply Example[custom_param]"
}
]
}
],
"template_name": "carousel_template_example"
}
}
'
curl --request PUT \
--url https://soipapi.netcorecloud.com/template/edit \
--header 'content-type: application/json' \
--data '
{
"action_type": "carousel",
"payload": {
"card_width": "SMALL_WIDTH",
"card_height": "SHORT_HEIGHT",
"rcs_type": "carousel",
"cards": [
{
"type": 2,
"image_file": "data:video/mp4;base64,<BASE64_VIDEO_STRING>",
"url": "",
"thumbnail_url": "https://i.postimg.cc/y6tQfV8p/tree-736885-960-720-2-1.jpg",
"thumbnail_file": "",
"title": "Sample Title 1",
"description": "Sample Description 1",
"suggestions": [
{
"suggestionType": "url_action",
"displayText": "Visit Google",
"postback": "Visit Google",
"url": "https://www.google.com"
}
]
},
{
"type": 1,
"image_file": "",
"url": "https://i.postimg.cc/yxRHkhdD/dynamic.jpg",
"thumbnail_url": "",
"thumbnail_file": "",
"title": "Sample Title 2",
"description": "Sample Description 2",
"suggestions": [
{
"suggestionType": "reply",
"displayText": "Reply Example 1",
"postback": "Reply Example 1[custom_param]"
}
]
},
{
"type": 1,
"image_file": "",
"url": "https://i.postimg.cc/yxRHkhdD/dynamic.jpg",
"thumbnail_url": "",
"thumbnail_file": "",
"title": "Sample Title 3",
"description": "Sample Description 3",
"suggestions": [
{
"suggestionType": "reply",
"displayText": "Reply Example 2",
"postback": "Reply Example 2[custom_param]"
}
]
}
],
"template_name": "carousel_combo9"
}
}
'
