WhatsApp Templates
Manage the WhatsApp message templates of a location that has WhatsApp connected.
- A new template is saved with status
PENDINGand submitted to Meta for review. Checkstatuslater, or watch it in Engage > WA Templates. - The template
namemay contain only letters, numbers and underscores; spaces become underscores. Each name must be unique in the location. componentsfollow Meta's template format: aBODYis required;HEADER,FOOTERandBUTTONSare optional.- Use the template
idwith Send a WhatsApp template message.
API region
api.whautomate.comList WhatsApp templates
GET
/v1/whatsapp-templatesSearches WhatsApp templates and returns them based on query parameters. Results are paginated.
Headers
x-api-keystringrequiredYour Whautomate API key.
Query parameters
locationIdstringLocation (workspace) id. Get ids from GET /v1/locations.
searchTextstringText to search for.
limitintegerResults per page (default 10, max 100).
pageintegerPage number, from 1 (default 1).
Response 200
idstringtemplateobjectlocationobjectcreatedAtstringupdatedAtstringstatusstringRequest
curl -X GET "https://api.whautomate.com/v1/whatsapp-templates?locationId=Le6dWjQF9K&searchText=appointment&limit=2" \
-H "x-api-key: YOUR_API_KEY"
Response 200
[
{
"id": "K8UO9RWCDI",
"template": {
"category": "UTILITY",
"allow_category_change": true,
"components": [
{
"type": "BODY",
"text": "Hello there, Appointment with client {{1}} has been updated or rescheduled with {{2}} from {{3}} at {{4}}. Please login to our platform to view the details. \nThank you!",
"example": {
"body_text": [
[
"John Doe",
"Mary Jane"
]
]
}
}
],
"name": "whauto_appointment_updated_practitioner",
"language": "en"
},
"status": "APPROVED",
"location": {
"id": "Le6dWjQF9K",
"title": "Serene Wellness Studio"
},
"createdAt": "2026-10-29T11:43:24.533Z",
"updatedAt": "2026-10-29T11:43:26.781Z"
},
{
"id": "RbfY0VNeKg",
"template": {
"category": "UTILITY",
"allow_category_change": true,
"components": [
{
"type": "BODY",
"text": "Dear {{1}}, Your appointment with {{2}} at {{3}} has been rescheduled to {{4}}. You have a nice day! \nThank you!",
"example": {
"body_text": [
[
"John Doe",
"Mary Jane"
]
]
}
}
],
"name": "whauto_appointment_rescheduled_message",
"language": "en"
},
"status": "APPROVED",
"location": {
"id": "Le6dWjQF9K",
"title": "Serene Wellness Studio"
},
"createdAt": "2026-10-29T11:43:24.394Z",
"updatedAt": "2026-10-29T11:43:26.771Z"
}
]
Get a WhatsApp template
GET
/v1/whatsapp-templates/{templateId}Gets a WhatsApp Template by Id
Headers
x-api-keystringrequiredYour Whautomate API key.
Path parameters
templateIdstringrequiredResponse 200
idstringtemplateobjectlocationobjectcreatedAtstringupdatedAtstringstatusstringRequest
curl -X GET "https://api.whautomate.com/v1/whatsapp-templates/K8UO9RWCDI" \
-H "x-api-key: YOUR_API_KEY"
Response 200
{
"id": "K8UO9RWCDI",
"template": {
"category": "UTILITY",
"allow_category_change": true,
"components": [
{
"type": "BODY",
"text": "Hello there, Appointment with client {{1}} has been updated or rescheduled with {{2}} from {{3}} at {{4}}. Please login to our platform to view the details. \nThank you!",
"example": {
"body_text": [
[
"John Doe",
"Mary Jane"
]
]
}
}
],
"name": "whauto_appointment_updated_practitioner",
"language": "en"
},
"status": "APPROVED",
"location": {
"id": "Le6dWjQF9K",
"title": "Serene Wellness Studio"
},
"createdAt": "2026-10-29T11:43:24.533Z",
"updatedAt": "2026-10-29T11:43:26.781Z"
}
Create a WhatsApp template
POST
/v1/whatsapp-templatesCreates a new WhatsApp template and submits it for approval
Headers
x-api-keystringrequiredYour Whautomate API key.
Body
locationobjectrequiredtemplateobjectrequiredResponse 200
idstringtemplateobjectlocationobjectcreatedAtstringupdatedAtstringErrors
| Status | Error | Meaning |
|---|---|---|
| 400 | template must contain name, language, category and components | A required field is missing. |
| 400 | There is an existing template with the same name, Please change the template name. | Pick another name. |
| 401 | New templates cannot be created, Please configure your whatsApp Cloud API! | WhatsApp is not connected in that location. |
| 404 | Invalid locationId | The location is not in your account. |
Request
curl -X POST "https://api.whautomate.com/v1/whatsapp-templates" \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"location": {
"id": "string"
},
"template": {
"name": "string",
"language": "string",
"category": "MARKETING",
"components": [
{
"type": "HEADER",
"format": "string",
"text": "string",
"example": {},
"buttons": [
{}
]
}
]
}
}'
Response 200
{
"id": "string",
"template": {},
"location": {
"id": "string",
"title": "string"
},
"createdAt": "string",
"updatedAt": "string"
}
Delete a WhatsApp template
DEL
/v1/whatsapp-templates/{templateId}Deletes a WhatsApp Template based on templateId. The template is also deleted from WhatsApp Cloud API when it has already been submitted.
Headers
x-api-keystringrequiredYour Whautomate API key.
Path parameters
templateIdstringrequiredResponse 200
successbooleanRequest
curl -X DELETE "https://api.whautomate.com/v1/whatsapp-templates/XMLGw30m09" \
-H "x-api-key: YOUR_API_KEY"
Response 200
{
"success": true
}