Create Template
Create WhatsApp Template for SMSGatewayCenter APIs
Introduction to SMSGatewayCenter APIs
Welcome to SMSGatewayCenter’s API documentation hub! This guide introduces the Create WhatsApp Template API, a key feature in 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. This API supports only POST methods over HTTP, enabling you to create and submit new WhatsApp templates for Meta’s review and approval. Perfect for developers in India, build engaging templates with our SMS gateway at unify.smsgatewaycenter.com/signup/!
Use the Create WhatsApp Template API to design and submit custom templates (e.g., for order updates, notifications) to WhatsApp’s Business Platform for Meta’s approval. Once submitted, Meta reviews the template based on their policies, typically approving within 24 hours if it complies with guidelines like avoiding spam, ensuring opt-in consent, and using proper formatting for variables and categories.
API Endpoint
https://unify.smsgateway.center/WAApi/template
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 | ||
wabaNumber | WABA Number | Approved registered WhatsApp Number |
msgType | text|media | The type of message (e.g., text for plain text messages). |
category | UTILITY|MARKETING|AUTHENTICATION | Add relevant category. |
body | string | Add your content with variables. |
templateName | string | Name your template. It has to be unique. |
language | en | Enter language code. (e.g., en for English) |
Optional Parameters | ||
header | string | Add a header content maximum 60 characters. You can add one variable. |
headerSample | string | If you have added variable then sample to be provided in this parameter. |
bodySample | string | If you have added variable then replace variable with sample content. |
footer | string | Add a footer content maximum 60 characters. You cannot add any variable. |
templateDescription | string | Add a template description to remember by. |
buttons | JSON | Buttons Payload in JSON. (e.g., Quick Reply Payload: [
{
"text": "RESOLVED",
"type": "QUICK_REPLY"
},
{
"text": "NO",
"type": "QUICK_REPLY"
},
{
"text": "YES",
"type": "QUICK_REPLY"
}
] CTA Payload: [
{
"phone_number": "+1(650) 555-1111",
"text": "your-phone-button-text",
"type": "PHONE_NUMBER"
},
{
"text": "your-url-button-text",
"type": "URL",
"url": "https://www.website.com"
}
] ) |
Media Message Parameters (msgType=media) | ||
mediaType | image|video|document | Type of media which you are sending in the message. |
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/WAApi/template',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => array('userid' => 'YourUsername','password' => '********','wabaNumber' => '9170396xxxxx','output' => 'json','msgType' => 'text','header' => 'This is {{1}} header','body' => 'Your account {{1}} is having {{2}} on {{3}}','footer' => 'By XYZ Brand','headerSample' => 'This is New header','bodySample' => 'Your account {{1}} is having {{2}} on Done','templateName' => 'Test1','templateDescription' => 'Testing','language' => 'en','category' => 'UTILITY'),
CURLOPT_HTTPHEADER => array(
'Cookie: SERVERID=webC1'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
{
"status": "success",
"templateName": "test1",
"statusCode": "200",
"reason": "Accepted for processing."
}

Unlock Real-Time Messaging – Integrate Today!
Try Our API in a Sandbox Environment Before Going Live!
Join Thousands of Developers – Try Our API Now!
Get in touchSign upTestimonials
Why do Great Businesses Trust SMS Gateway Center?