Docs
Webhooks y eventos
Recibe mensajes, estados y eventos de WhatsApp en tiempo real en tu URL, con metadata para enrutarlos en tu sistema.
Configurar la URL
PUT /instances/{id}
curl -X PUT https://api.zapzapapi.com/api/v1/instances/{id} \
-H "Content-Type: application/json" \
-H "x-api-key: TU_API_KEY" \
-H "x-api-secret: TU_API_SECRET" \
-d '{"webhook_url":"https://mysite.com/webhook","metadata":{"cliente":"123"}}'Recibir los eventos
Cada mensaje recibido o cambio de estado llega como un POST a tu URL. Responde 2xx rápido:
Node.js (Express)
// Handler mínimo en Node.js (Express)
app.post("/webhook", (req, res) => {
res.sendStatus(200); // responde 2xx rápido
const event = req.body; // mensaje recibido, estado, etc.
// procesa fuera del camino de la respuesta (cola, worker, etc.)
});Preguntas frecuentes
¿Cómo recibo mensajes de WhatsApp por webhook?
Configura la webhook_url de la instancia con un PUT a /api/v1/instances/{id}. Desde ahí, cada mensaje recibido, estado de entrega y evento llega como un POST a tu URL, por HTTPS.
¿Qué es el metadata del webhook?
Es un JSON libre que asocias a la instancia (por ejemplo el ID del cliente o el plan). Se incluye automáticamente en los webhooks que recibes, lo que facilita enrutar el evento en tu sistema.
¿Cómo debo responder al webhook?
Responde 2xx lo más rápido posible y haz el trabajo pesado fuera del camino de la respuesta (cola o worker). Un webhook que tarda demasiado en responder se trata como problemático.
¿Necesito HTTPS?
Sí. La webhook_url debe ser HTTPS y estar accesible desde internet para que ZapZap pueda entregar los eventos.
Empieza ahora
Crea tu cuenta, conecta un número en minutos y prueba la API con calentamiento y anti-bloqueo. R$15 por número activo/mes, prepago, sin permanencia.
