Skip to main content
With the API you ask; with webhooks Notifique tells you. Like a banking app push when a transfer lands, your backend does not need to poll every second.

In brief

  • Every delivery is a POST application/json to the URL you registered.
  • message.* and instance.* events are WhatsApp only (Telegram uses telegram.*).
  • Enable only the events your integration needs.
  • Reply 2xx quickly; heavy work goes to a queue on your side.
General setup: Webhooks. Security (HMAC signature): Webhook security.

What the POST looks like

Standard envelope for every event:
Headers: X-Notifique-Signature, X-Notifique-Timestamp, X-Workspace-Id.

What your server should return

Slow processing? Return 200 immediately and process in the background. Taking more than 10 seconds counts as a timeout and the event may be sent again.
Validate X-Notifique-Signature and a recent timestamp. Details: Webhook security.

Event reference

Use these events when integrating bots, support, ERP, or automation on WhatsApp.
The message.* names are WhatsApp only. Telegram uses telegram.*: Telegram events.

Messages you send

Messages you receive

Inbound only fires if enabled under Settings → Received messages (store and/or webhook). The legacy dashboard name message.received still works: the body uses whatsapp.received.

Instance (number connection)

The Quick Start refresh-code step can use this webhook instead of polling (instance.qrcode).

Payload per event

Full POST body. The envelope (event, ids, timestamp) matches the example above; below is what changes in data.
Fired on the first click on a short link in the send (workspace with short links enabled).
Extra fields may be added without breaking consumers.
newContent may be null when unavailable.
phoneNumber may be null in some cases.

Next steps