Send RCS Template Message
Send an approved RCS template to a customer. RCS templates are created and approved inside the Splashify Pro dashboard — each has a unique template_id (a UUID) that you reference here.
Note: RCS must be enabled on your account and the template must be in the approved state. If RCS isn’t enabled this endpoint returns
403.
Endpoint
POST https://apis.splashifypro.com/api/v1/public/rcs/send-templateHeaders
| Header | Value |
|---|---|
Authorization | Basic YOUR_API_KEY |
Content-Type | application/json |
Request body
{
"to": "919876543210",
"template_id": "bbd644a9-502a-11f1-a6c3-7e338e7c5434",
"variables": ["Aditya", "482913"]
}| Field | Required | Notes |
|---|---|---|
to | yes | Recipient phone number in E.164 format (e.g. 919876543210) |
template_id | yes | UUID of an approved RCS template from your dashboard |
variables | no | Values for the template’s placeholders — see Template variables |
Template variables
If your RCS template contains placeholders, they are filled positionally from the variables array:
variables[0]replaces every{#var1#}in the templatevariables[1]replaces every{#var2#}- …and so on.
A template body of:
Hi {#name#}, your one-time password is {#var1#}. It expires in {#var2#} minutes.sent with "variables": ["482913", "5"] is delivered as:
Hi Aditya, your one-time password is 482913. It expires in 5 minutes.{#name#} is special — it is always auto-filled with the contact’s saved name (the recipient’s display name in your contacts), so you never pass it in variables. Provide values for {#var1#}, {#var2#}, … only.
Pass
variablesin the same order the placeholders are numbered. Extra values are ignored; missing ones leave the{#varN#}placeholder in place — so always send as many values as the template has variables.
Example
curl -X POST https://apis.splashifypro.com/api/v1/public/rcs/send-template \
-H "Authorization: Basic YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "919876543210",
"template_id": "bbd644a9-502a-11f1-a6c3-7e338e7c5434",
"variables": ["482913", "5"]
}'Successful response — 200 OK
{
"success": true,
"rcs_message_id": "a1b2c3d4-...",
"message_id": "d58aeff7-a81c-47a7-9b67-f381e13f6c4e",
"conversation_id": "ee64970d-0539-4eb0-859d-2147859a604d"
}| Field | Notes |
|---|---|
rcs_message_id | The provider message id — correlates with delivery webhooks |
message_id | Your Splashify Pro message id |
conversation_id | The RCS conversation this message belongs to |
Errors
| Status | Meaning |
|---|---|
400 | to and template_id are required, or template_id is not a valid UUID |
401 | Missing or invalid API key |
402 | Insufficient wallet balance |
403 | RCS is not enabled for your account |
404 | Template not found |
429 | Rate limit exceeded |
502 | The RCS provider rejected the message |
{
"success": false,
"message": "Template not found"
}