infoOverview
About this API
keySecurity
Authentication
This endpoint does not require authentication.
uploadInput
Request Body
Send a application/json payload. Replace placeholder values with data from your integration.
Top-Level Fields
NameTypeRequirementDescription
categorystringNot specifiedRequest value for category.messagesarrayNot specifiedRequest value for messages.templateIdstringNot specifiedRequest value for templateId.correlationIdstringNot specifiedRequest value for correlationId.{
"category": "promotional",
"messages": [
{
"to": "8446779594",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
},
{
"to": "7972086759",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
}
],
"templateId": "67ed02fb0ebf1303afe5e09f",
"correlationId": "dfsdfaccv234"
}{
"type": "object",
"properties": {
"category": {
"type": "string"
},
"messages": {
"type": "array",
"items": {
"type": "object",
"properties": {
"to": {
"type": "string"
},
"ttl": {
"type": "string"
},
"variables": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
},
"value": {
"type": "string"
}
}
}
},
"isSMSFallbackRequired": {
"type": "boolean"
}
}
}
},
"templateId": {
"type": "string"
},
"correlationId": {
"type": "string"
}
}
}androidRCS Messaging Sandbox
Test this RCS message
Edit the documented request body and send it to a simulated Android RCS conversation. No real message or API request is sent.
9:41signal_cellular_altwifibattery_full
arrow_back
1S
1SPOC RCSVerified business
videocamcallmore_vertToday
RCS chat with 1SPOC RCS
Ready to preview send-message-common-template-for batch.9:41
add
RCS messagemood
photo_cameracodeIntegration
Code Examples
Select your language and customize the request URL. Credential placeholders are intentionally preserved so secrets never appear in generated samples.
shield_lockCredentials protectedAdd secrets only in your secure server environment.
curl --request POST 'https://api.example.com/rcs/api/v1/send-message' \
--header 'Content-Type: application/json' \
--data '{
"category": "promotional",
"messages": [
{
"to": "8446779594",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
},
{
"to": "7972086759",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
}
],
"templateId": "67ed02fb0ebf1303afe5e09f",
"correlationId": "dfsdfaccv234"
}'const response = await fetch('https://api.example.com/rcs/api/v1/send-message', {
method: 'POST',
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
"category": "promotional",
"messages": [
{
"to": "8446779594",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
},
{
"to": "7972086759",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
}
],
"templateId": "67ed02fb0ebf1303afe5e09f",
"correlationId": "dfsdfaccv234"
})
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const data = await response.json();
console.log(data);const response = await fetch('https://api.example.com/rcs/api/v1/send-message', {
method: 'POST',
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({
"category": "promotional",
"messages": [
{
"to": "8446779594",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
},
{
"to": "7972086759",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
}
],
"templateId": "67ed02fb0ebf1303afe5e09f",
"correlationId": "dfsdfaccv234"
})
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const data = await response.json();
console.log(data);import json
import requests
url = 'https://api.example.com/rcs/api/v1/send-message'
headers = {
"Content-Type": "application/json"
}
payload = json.loads(r'''{
"category": "promotional",
"messages": [
{
"to": "8446779594",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
},
{
"to": "7972086759",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
}
],
"templateId": "67ed02fb0ebf1303afe5e09f",
"correlationId": "dfsdfaccv234"
}''')
response = requests.post(url, headers=headers, json=payload)
response.raise_for_status()
print(response.json())import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var client = HttpClient.newHttpClient();
String body = """
{
"category": "promotional",
"messages": [
{
"to": "8446779594",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
},
{
"to": "7972086759",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
}
],
"templateId": "67ed02fb0ebf1303afe5e09f",
"correlationId": "dfsdfaccv234"
}
""";
var request = HttpRequest.newBuilder(URI.create("https://api.example.com/rcs/api/v1/send-message"))
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString(body))
.build();
var response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());<?php
$curl = curl_init();
$payload = '{
"category": "promotional",
"messages": [
{
"to": "8446779594",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
},
{
"to": "7972086759",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
}
],
"templateId": "67ed02fb0ebf1303afe5e09f",
"correlationId": "dfsdfaccv234"
}';
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.example.com/rcs/api/v1/send-message',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ["Content-Type: application/json"],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
if ($response === false) throw new Exception(curl_error($curl));
curl_close($curl);
echo $response;using System.Net.Http.Headers;
using System.Text;
using var client = new HttpClient();
var json = """
{
"category": "promotional",
"messages": [
{
"to": "8446779594",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
},
{
"to": "7972086759",
"ttl": "10",
"variables": [
{
"key": "OTP",
"value": "123"
},
{
"key": "user",
"value": "Jayant"
}
],
"isSMSFallbackRequired": false
}
],
"templateId": "67ed02fb0ebf1303afe5e09f",
"correlationId": "dfsdfaccv234"
}
""";
using var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync("https://api.example.com/rcs/api/v1/send-message", content);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());package main
import (
"fmt"
"io"
"net/http"
"bytes"
)
func main() {
request, err := http.NewRequest("POST", "https://api.example.com/rcs/api/v1/send-message", bytes.NewBufferString("{\n \"category\": \"promotional\",\n \"messages\": [\n {\n \"to\": \"8446779594\",\n \"ttl\": \"10\",\n \"variables\": [\n {\n \"key\": \"OTP\",\n \"value\": \"123\"\n },\n {\n \"key\": \"user\",\n \"value\": \"Jayant\"\n }\n ],\n \"isSMSFallbackRequired\": false\n },\n {\n \"to\": \"7972086759\",\n \"ttl\": \"10\",\n \"variables\": [\n {\n \"key\": \"OTP\",\n \"value\": \"123\"\n },\n {\n \"key\": \"user\",\n \"value\": \"Jayant\"\n }\n ],\n \"isSMSFallbackRequired\": false\n }\n ],\n \"templateId\": \"67ed02fb0ebf1303afe5e09f\",\n \"correlationId\": \"dfsdfaccv234\"\n}"))
if err != nil { panic(err) }
request.Header.Set("Content-Type", "application/json")
request.Header.Set("Accept", "application/json")
response, err := http.DefaultClient.Do(request)
if err != nil { panic(err) }
defer response.Body.Close()
data, err := io.ReadAll(response.Body)
if err != nil { panic(err) }
if response.StatusCode >= 400 { panic(fmt.Sprintf("HTTP %d: %s", response.StatusCode, data)) }
fmt.Println(string(data))
}downloadOutput
Response
A successful request returns the documented response payload. Delivery and asynchronous events may arrive separately through configured webhooks.
{
"200": {
"code": 200,
"data": [
{
"mobile": "+918446779594",
"message": "success",
"uniqueId": "PROD_68218acedb298103bc8d5931_APIdfsdfaccv234-20250728_a825a99600",
"templateId": "67ed02fb0ebf1303afe5e09f"
},
{
"mobile": "+917972086759",
"message": "success",
"uniqueId": "PROD_68218acedb298103bc8d5931_APIdfsdfaccv234-20250728_b6b8591b00",
"templateId": "67ed02fb0ebf1303afe5e09f"
}
],
"status": "SUCCESS",
"requestId": "f142ffcd-9d6d-40d7-a41f-3eac43c7a7f5",
"correlationId": "dfsdfaccv234",
"totalMessages": 2
}
}{
"type": "object",
"properties": {
"code": {
"type": "integer"
},
"data": {
"type": "array",
"items": {
"type": "object",
"properties": {
"mobile": {
"type": "string"
},
"message": {
"type": "string"
},
"uniqueId": {
"type": "string"
},
"templateId": {
"type": "string"
}
}
}
},
"status": {
"type": "string"
},
"requestId": {
"type": "string"
},
"correlationId": {
"type": "string"
},
"totalMessages": {
"type": "integer"
}
}
}ruleHTTP Responses
Status Codes
200OK