🇪🇸 Español 🇬🇧 English 🇧🇷 Português

Trigger: List Option Selected

Kick off a workflow when a contact taps a row in a WhatsApp interactive list message.

Jul 11, 2026

The List Option Selected trigger (message.list_selected) fires a workflow the moment a contact taps a row in a WhatsApp interactive list message. It's the native way to build option menus — "View plans", "Talk to an agent", "Check my order" — and branch the conversation based on what the customer picked.

When it fires

It fires as soon as Meta delivers the contact's list_reply, after you (or another workflow) sent them a list message via a "Send interactive message" action.

Requirements

  • A connected WhatsApp Cloud API channel in your workspace.
  • A list message already sent to the contact (manual, AI-driven, or from another workflow) with rows identified by row_id.

Trigger configuration

  • Specific channel: restrict the trigger to one WhatsApp channel.
  • Row ID: leave blank to catch any selection, or set an exact row_id to build one branch per menu option.

Available variables

  • $list.row_id — ID of the selected row
  • $list.title — Visible title of the row
  • $list.description — Row description
  • $message.id — ID of the incoming reply message
  • Standard $conversation.* and $contact.* variables

Example

A workflow sends a menu with rows "billing", "tech_support", and "sales". You build a workflow triggered by message.list_selected with a condition node: if $list.row_id equals billing, assign the conversation to the Billing team; if tech_support, assign to Support; if sales, route to the Sales AI Agent.

Tips

  • Each row_id must be unique inside the list message — Meta enforces this.
  • Pair this trigger with a condition node instead of building a separate workflow per menu option.

Troubleshooting

If the workflow never fires, confirm the list was actually sent as an interactive message (not plain text listing the options) and that the WhatsApp channel is still connected.

Was this helpful?

Related articles