Skip to main content
When a user sends a message to your WhatsApp number, the Connexease Gateway receives the event from Meta and forwards it to your registered webhook URL. The top-level envelope is always the same — entry[0].changes[0].value — but the inner shape depends on what the user sent. This page is the complete reference for every incoming message type, with field descriptions for each.

Envelope Structure

Every incoming message arrives wrapped in this envelope:
Envelope Fields:

Common Message Fields

Every message object, regardless of type, contains:

Message Types

Received when a user sends a plain text message.
Received when a user sends a photo. The image content must be downloaded via the Media API using image.id.
See the Media page for how to download the file using image.id.
Received when a user sends an audio file or records a voice note.
Received when a user sends a PDF, Word document, or other file.
Received when a user sends a video file.
Received when a user sends a WhatsApp sticker.
Received when a user shares their location.
Received when a user shares a contact card.
Received when a user taps one of the quick-reply buttons you sent.
Received when a user selects a row from the list message you sent.
Received when a user reacts to one of your messages with an emoji.
Received when a user places an order through a WhatsApp catalog.

Parsing Incoming Messages


Tips

Always handle the default / else case for unknown type values. Meta regularly introduces new message types (polls, payment events, etc.) and unhandled types will otherwise cause silent failures in your pipeline.
For media messages, image.id, audio.id, etc. are temporary Media IDs that expire after 30 days. Download and store the file on your own infrastructure promptly.
The same incoming message may be delivered more than once due to network retries. Use messages[0].id (the wamid) as an idempotency key in your database before processing.