Create Message Template
Create Message Template for SMSGatewayCenter APIs
Introduction to SMSGatewayCenter APIs
Welcome to SMSGatewayCenter’s API documentation hub! This guide helps you create message templates using our powerful Create Message Template API, part of our messaging suite including SMS API for bulk messaging, WhatsApp Business API for customer engagement, Voice Call API for automated alerts, and Two-Way SMS API for interactive communication. Our API supports POST and GET methods over HTTP, offering a secure way to set up DLT-approved templates. Ideal for developers in India, start integrating with our SMS gateway at unify.smsgateway.center/signup/!
Create a message template as approved on DLT portals (e.g., Airtel, Jio, VI) to ensure TRAI compliance for bulk SMS campaigns, including typed DLT variable tags such as {#numeric#}. This endpoint enhances your bulk SMS management with real-time updates and Unicode support, perfect for standardized, compliant messaging.
Mandatory DLT variable tagging
For templates created after 14 January 2026, operator DLT platforms require every variable to declare its data type. Do not register new templates with the legacy generic {#var#} placeholder.
Approved tags:
{#numeric#}for OTPs, amounts, and numbers{#alphanumeric#}for names, reference IDs, and ticket numbers{#url#}for website links{#urlott#}for OTT or app download links{#cbn#}for callback numbers{#email#}for email addresses
Example: Your OTP is {#numeric#}. Track order {#alphanumeric#} at {#url#} or call {#cbn#}. Validate drafts with the free DLT Template Format Validator and confirm match with the Validate DLT Template API before send.
API Endpoint
https://unify.smsgateway.center/SMSApi/template/create
| Key | Value | Description |
|---|---|---|
| Login Credentials (Required) | ||
| Authenticate your API request using userid-password or apiKey—choose one method. | ||
| userid | Your Registered Username | Your registered username; use if apiKey isn't provided. Signup for User ID |
| password | Your Password | URL-encoded password (for special characters); use if apiKey isn't provided. Signup for API Key |
| Header (optional) Parameters | ||
| apiKey | Your unique apiKey | apiKey needs to be sent as HTTP header when you are not using userid-password method. You can avail this from your user control panel and use instead of userid-password HTTP Request parameter. Please do not disclose this to anyone. |
| Required Parameters | ||
| message | Message Template Content. | Enter the DLT template body using typed variable tags: {#numeric#}, {#alphanumeric#}, {#url#}, {#urlott#}, {#cbn#}, or {#email#}. Do not use legacy {#var#} for templates created after 14 January 2026. |
| output | plain|json|plain | Value for response format.System default is plain. If you need responses in json or plain then you have to give value as json or plain. |
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://unify.smsgateway.center/SMSApi/template/create",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "userid=YourUsername&password=YourPassword&message=Your%20OTP%20is%20%7B%23numeric%23%7D.%20Do%20not%20share%20with%20anyone.%20-%20SMSGAT&output=json",
CURLOPT_HTTPHEADER => array(
"cache-control: no-cache",
"content-type: application/x-www-form-urlencoded"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
{
"response": {
"api": "template",
"action": "create",
"status": "success",
"msg": "Template created successfully and given for approval",
"code": "200"
}
}

