Construir sobre el API de plataforma técnica.
Envíe mensajes de plantilla de WhatsApp desde sus propios sistemas, reciba eventos de entrega mediante webhook y supervise cada solicitud en los registros.
Omita el código: instale un complemento de conector.
La misma API de WhatsApp Business, incluida en complementos de conector gratuitos para las herramientas que ya utiliza: cada plataforma de formulario, reserva, evento y tienda se envía directamente a su WhatsApp. Instala, conéctate con tu correo electrónico y listo.
Inicio rápido
De cero a un mensaje de WhatsApp entregado en cuatro pasos. Todo aquí también funciona dentro de la aplicación. Desarrolladores → Descripción general página, que sigue su progreso.
Crear una clave API
Abre Desarrolladores → Claves API en la aplicación y cree una clave (prefijo ttp_live_). Se muestra el secreto completo. una vez - Cópialo inmediatamente.
Elija una plantilla aprobada
Su espacio de trabajo necesita al menos una plantilla metaaprobada (consulte Plantillas). Las plantillas se actualizan directamente desde Meta.
Enviar una solicitud de prueba
Utilice la aplicación API tester o la solicitud a continuación. El destinatario debe haber optado por recibir mensajes de plantilla desde su número.
Agregar un webhook de entrega
Apunte un webhook a su punto final HTTPS, seleccione los eventos que le interesan y observe Registros de webhook confirmar la entrega.
Autenticación
La API se autentica con claves API por espacio de trabajo enviadas como token de portador. Las claves se crean y revocan desde Desarrolladores → Claves API.
- Las claves comienzan con
ttp_live_y tienen como ámbito un espacio de trabajo. - Cree una clave separada por integración: cada clave realiza un seguimiento de la suya
last usedmarca de tiempo. - El secreto completo se muestra sólo una vez en el momento de la creación; no se puede recuperar más tarde. En su lugar, revoque y vuelva a crear.
- Envía la clave en el
Authorizationencabezado:Authorization: Bearer ttp_live_…
enviar un mensaje
Envía un mensaje de plantilla de WhatsApp aprobado a un destinatario habilitado desde un número conectado en su espacio de trabajo.
https://v1.thetechpad.com/functions/v1/api-send
Encabezado: Authorization: Bearer ttp_live_… · Content-Type: application/json
Cuerpo de la solicitud
| campo | Tipo | Descripción |
|---|---|---|
phoneNumberId | cuerda | ID de un número de WhatsApp conectado en su espacio de trabajo (página de números de WhatsApp). |
to | cuerda | Número de teléfono del destinatario en formato E.164, p. 15551234567. |
template.name | cuerda | Nombre de una plantilla metaaprobada en su espacio de trabajo, p. order_update. |
template.language | cuerda | Código de idioma de plantilla, p. en. |
template.parameters | matriz<cadena> | Valores posicionales para las variables de la plantilla, en orden. |
Solicitud de ejemplo
curl -X POST 'https://v1.thetechpad.com/functions/v1/api-send' \ -H 'Authorization: Bearer ttp_live_...' \ -H 'Content-Type: application/json' \ -d '{ "phoneNumberId": "1122334455", "to": "15551234567", "template": { "name": "order_update", "language": "en", "parameters": ["Ava", "#4031"] } }'
// JavaScript
const response = await fetch('https://v1.thetechpad.com/functions/v1/api-send', {
method: 'POST',
headers: { Authorization: 'Bearer ttp_live_...', 'Content-Type': 'application/json' },
body: JSON.stringify({
phoneNumberId: '1122334455',
to: '15551234567',
template: { name: 'order_update', language: 'en', parameters: ['Ava', '#4031'] }
})
});
Webhooks
Los webhooks salientes envían eventos del ciclo de vida de los mensajes a su punto final HTTPS casi en tiempo real. Administrar puntos finales desde Desarrolladores → Webhooks — agregar, editar, pausar, probar y eliminar.
Eventos
| Evento | Se dispara cuando |
|---|---|
message.sent | Un mensaje fue aceptado y enviado por la plataforma WhatsApp. |
message.delivered | El mensaje fue entregado al dispositivo del destinatario. |
message.read | El destinatario leyó el mensaje. |
message.failed | El mensaje falló (no se pudo entregar, plantilla rechazada, límite de remitentes,…). |
message.received | Llegó un mensaje entrante de un cliente. |
- Los puntos finales deben ser HTTPS y accesible desde Internet.
- Cada punto final se suscribe a un subconjunto elegido de eventos; cada evento se activa con una carga útil JSON que contiene la identificación y el estado del mensaje.
- Usar prueba en un punto final para enviar una entrega de muestra y verificar su controlador.
- Los puntos finales en pausa mantienen su configuración pero dejan de recibir eventos.
Límites de tarifas
Los mensajes se envían hasta la tarifa del paquete de su plan. El rendimiento real puede ser menor cuando Meta aplica límites de nivel de mensajería, calidad del teléfono o nivel de cuenta. Quedan mensajes en cola de forma segura en lugar de ser descartado.
| Plan | Llamadas API / mes | Tasa de envío base |
|---|---|---|
| Campañas iniciales | — | Hasta 6 mensajes/minuto |
| Launch | 10,000 | Tarifa del paquete |
| Grow | 200,000 | Tarifa del paquete |
| Scale | 2,000,000 | Tarifa del paquete |
Cada solicitud cuenta para su cuota de llamadas API y se registra en los registros de API con su código de estado y duración.
Registros y monitoreo
Desarrolladores → Registros mantiene dos vistas:
- Registros de API — cada solicitud de API: método, punto final, estado HTTP, plantilla utilizada y duración.
- Registros de webhook - cada intento de entrega de webhook y su resultado.
Úselos para depurar envíos fallidos, confirmar la entrega de webhooks y auditar integraciones de principio a fin.
Errores
Las solicitudes exitosas devuelven un 2xx estado. Los errores devuelven un estado distinto de 2xx con un cuerpo JSON que describe el problema:
{
"error": "Template not approved",
"hint": "Check the template status in Templates — only APPROVED templates can be sent."
}
| Estado | Significado |
|---|---|
2xx | Solicitud aceptada / procesada. |
400 | Solicitud con formato incorrecto: campos faltantes o no válidos. |
401 | Clave API faltante o no válida. |
403 | Clave válida pero no permitida para esta acción o espacio de trabajo. |
404 | Número, plantilla o recurso desconocido. |
429 | Se superó el límite de velocidad o la cuota: vuelva a intentarlo después de la interrupción. |
5xx | Error de plataforma: vuelva a intentarlo; consulte los registros de API y la página de estado. |
Pruebe la API desde la consola.
El probador de API en la aplicación genera curl, JavaScript y PHP para cada solicitud.