Skip to main content

Endpoint

POST /v1/send/whatsapp

Headers

HeaderValor
X-API-KeyTu API key
Content-Typeapplication/json

Body

{
  "phone_number":  "521234567890",
  "template_id":   "nombre_template_meta",
  "language_code": "es",
  "params":        ["valor1", "valor2"]
}

Campos

CampoTipoRequeridoDescripción
phone_numberstringNúmero en formato internacional sin + (ej. 521234567890)
template_idstringAlias amigable registrado en el dashboard (ej. confirmacion) o el nombre completo del template en Meta. Si el alias existe en tu tenant, Axelo lo traduce automáticamente; si no, se pasa tal cual a Meta
language_codestringCódigo de idioma del template. Si usas alias y omites este campo, se toma del registro. Default global: es
paramsarrayValores posicionales para {{1}}, {{2}}, etc. del template

Ejemplo

curl -X POST https://api.axelo.mx/v1/send/whatsapp \
  -H "Content-Type: application/json" \
  -H "X-API-Key: TU_API_KEY" \
  -d '{
    "phone_number":  "521234567890",
    "template_id":   "confirmacion_reserva",
    "language_code": "es",
    "params":        ["Carlos Mendoza", "30 de marzo", "3:00 PM", "Sala Norte"]
  }'
confirmacion_reserva puede ser un alias amigable que registraste en el dashboard (mapeado a un template real de Meta), o directamente el nombre exacto que ves en Meta Business Manager. Los aliases simplifican las integraciones porque los templates con header media de Meta llevan un sufijo _hxXXXX... largo que es feo en el código del cliente.
Si el template es:
"Hola {{1}}, tu reserva del {{2}} a las {{3}} en {{4}} está confirmada."
El mensaje enviado sería:
"Hola Carlos Mendoza, tu reserva del 30 de marzo a las 3:00 PM en Sala Norte está confirmada."

Respuesta 202

{
  "job_id": "d4e5f6a1-b2c3-...",
  "status": "pending"
}

Errores

CódigoCausa
400phone_number o template_id vacíos
401API key inválida
403Canal WhatsApp no habilitado para tu tenant
500Error al encolar o credenciales Meta no configuradas
Los templates deben estar aprobados en tu cuenta de Meta Business antes de poder enviarlos. El proceso de aprobación toma 24–48 horas.