curl -X POST "https://api.whaapy.com/templates/v1/sync" \
-H "Authorization: Bearer wha_xxxxx"
const response = await fetch('https://api.whaapy.com/templates/v1/sync', {
method: 'POST',
headers: { 'Authorization': 'Bearer wha_xxxxx' }
});
const data = await response.json();
import requests
response = requests.post(
'https://api.whaapy.com/templates/v1/sync',
headers={'Authorization': 'Bearer wha_xxxxx'}
)
data = response.json()
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.whaapy.com/templates/v1/sync",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer wha_xxxxx"
],
]);
$response = curl_exec($curl);
$data = json_decode($response, true);
{
"data": {
"synced": 5,
"created": 2,
"updated": 1,
"deleted": 0
},
"message": "Sincronización completada: 5 templates sincronizados"
}
Templates
Sincronizar Templates
Sincroniza templates desde Meta manualmente
POST
/
templates
/
v1
/
sync
curl -X POST "https://api.whaapy.com/templates/v1/sync" \
-H "Authorization: Bearer wha_xxxxx"
const response = await fetch('https://api.whaapy.com/templates/v1/sync', {
method: 'POST',
headers: { 'Authorization': 'Bearer wha_xxxxx' }
});
const data = await response.json();
import requests
response = requests.post(
'https://api.whaapy.com/templates/v1/sync',
headers={'Authorization': 'Bearer wha_xxxxx'}
)
data = response.json()
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.whaapy.com/templates/v1/sync",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer wha_xxxxx"
],
]);
$response = curl_exec($curl);
$data = json_decode($response, true);
{
"data": {
"synced": 5,
"created": 2,
"updated": 1,
"deleted": 0
},
"message": "Sincronización completada: 5 templates sincronizados"
}
Fuerza una sincronización de templates desde la API de Meta. Útil después de crear o modificar templates desde el Meta Business Manager.
La sincronización es automática cada 15 minutos. Usa este endpoint solo si necesitas ver cambios inmediatamente.
curl -X POST "https://api.whaapy.com/templates/v1/sync" \
-H "Authorization: Bearer wha_xxxxx"
const response = await fetch('https://api.whaapy.com/templates/v1/sync', {
method: 'POST',
headers: { 'Authorization': 'Bearer wha_xxxxx' }
});
const data = await response.json();
import requests
response = requests.post(
'https://api.whaapy.com/templates/v1/sync',
headers={'Authorization': 'Bearer wha_xxxxx'}
)
data = response.json()
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.whaapy.com/templates/v1/sync",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer wha_xxxxx"
],
]);
$response = curl_exec($curl);
$data = json_decode($response, true);
{
"data": {
"synced": 5,
"created": 2,
"updated": 1,
"deleted": 0
},
"message": "Sincronización completada: 5 templates sincronizados"
}
Campos de respuesta
| Campo | Tipo | Descripción |
|---|---|---|
synced | number | Total de templates procesados |
created | number | Nuevos templates encontrados |
updated | number | Templates actualizados (status, content) |
deleted | number | Templates eliminados en Meta |
Qué sincroniza
La sincronización actualiza:- Nuevos templates - Templates creados en Meta Business Manager
- Estado de aprobación -
PENDING→APPROVEDoREJECTED - Contenido - Cambios en texto o componentes
- Templates eliminados - Se marcan como inactivos
Flujo de trabajo típico
Errores
{
"error": "WhatsApp no configurado"
}
{
"error": "Error al sincronizar templates",
"message": "Meta API error: Invalid access token"
}
Casos de uso
Después de crear template en Meta
Después de crear template en Meta
Cuando creas un nuevo template en Meta Business Manager y quieres usarlo inmediatamente:
// 1. Espera aprobación de Meta (verifica en Business Manager)
// 2. Sincroniza con Whaapy
await fetch('https://api.whaapy.com/templates/v1/sync', {
method: 'POST',
headers: { 'Authorization': 'Bearer wha_xxxxx' }
});
// 3. Verifica que el template está disponible
const templates = await fetch('https://api.whaapy.com/templates/v1', {
headers: { 'Authorization': 'Bearer wha_xxxxx' }
}).then(r => r.json());
const newTemplate = templates.data.find(t => t.name === 'mi_nuevo_template');
console.log('Template disponible:', newTemplate?.status === 'APPROVED');
Verificar estado de template pendiente
Verificar estado de template pendiente
Para verificar si un template fue aprobado:
// Sincronizar para obtener estado actualizado
await fetch('https://api.whaapy.com/templates/v1/sync', {
method: 'POST',
headers: { 'Authorization': 'Bearer wha_xxxxx' }
});
// Verificar estado
const template = await fetch('https://api.whaapy.com/templates/v1/tmpl-uuid', {
headers: { 'Authorization': 'Bearer wha_xxxxx' }
}).then(r => r.json());
if (template.data.status === 'APPROVED') {
console.log('Template aprobado, listo para usar');
} else if (template.data.status === 'REJECTED') {
console.log('Template rechazado');
} else {
console.log('Template aún en revisión');
}
Meta tarda típicamente 24-48 horas en revisar nuevos templates. Si el template sigue en
PENDING después de sincronizar, verifica en Meta Business Manager si hay observaciones o rechazos.Was this page helpful?