Vettero

WhatsApp Message Received

Run on inbound WhatsApp via a Twilio or Exotel connected service.

Types

twilio.whatsapp.on-whatsapp-messageexotel.whatsapp.on-whatsapp-message
Messaging

Listed only when a matching connected service is enabled.

WhatsApp Message Received runs when an inbound WhatsApp message arrives on the configured sender.

Payload

FieldTypeDescription
serviceIdstringConnected Twilio or Exotel service with WhatsApp enabled
phoneNumberstringWhatsApp sender to receive on

Trigger data

Available as args.*.

Twilio:

FieldTypeDescription
message.messageSidstringMessage id
message.fromstringSender
message.tostringRecipient
message.profileNamestringProfile name
message.bodystringText body
message.messageTypestringMessage type
message.numMedianumberMedia count
message.media[].urlstringMedia URL
message.media[].contentTypestringMedia content type
rawobjectOriginal Twilio payload

Exotel:

FieldTypeDescription
message.messageSidstringMessage id
message.fromstringSender
message.tostringRecipient
message.bodystringText body
message.typestringMessage type
rawobjectOriginal Exotel payload

Use case

  • Log inbound WhatsApp to a table, keyword-route, or send a template reply — without a continuous chat session.
  • After-hours auto-reply or ticket-create when you do not want the WhatsApp Chat default agent.
  • Same Twilio or Exotel sender as the rest of your WhatsApp setup; pick the number in payload.
  • Use the channel when customers should converse with an agent; this trigger is for fire-and-forget automation on the message.

Channels vs handlers

WhatsApp handlers share identifiers with WhatsApp Chat of the same kind.

If an active channel uses the same identifier, inbound traffic goes to the channel. The event handler does not run for that identifier until you disable or change the channel, or change the handler identifier.
Copyright © 2026