What is a List Message?
A WhatsApp List Message is an interactive message that lets you give contacts a tappable menu of options to pick from. When a user taps the button in the message, a modal pops up showing all the items in the list — they tap one, and that selection becomes their reply.
How to build the list
You build WhatsApp Lists inside GHL Workflow Automation using a Webhook action. Each list has a defined set of parameters (header, message, button, items, descriptions). The video above walks through the full build process.
Parameters reference
Here are all the keys you can set when building a list:
| Key | Required? & constraints |
|---|---|
keyword | Required — max 20 characters. Triggers the list when customer sends this word. |
list_header | Required — max 60 characters. Title at the top of the list. |
message | Required — max 4096 characters. Body text shown above the button. |
button_name | Required — max 20 characters. Label on the tappable button. |
item1 | Required — max 24 characters. First menu item. |
item2 through item30 | Optional — up to 30 items, each max 24 characters. |
desc1 through desc30 | Optional — descriptions for each item, max 72 characters each. |
list_title | Optional — max 24 characters. Title inside the list modal. |
footer | Optional — max 60 characters. Footer text below the button. |
Action Name | Optional. Internal name for the action (e.g. "Main Menu"). |
Multi-user parameters
If you're using the Multi-Number feature (multiple WhatsApp numbers in one sub-account), you need one extra parameter:
| Key | Required? & details |
|---|---|
source_user_id | Required for multi-user — the GHL sub-account user ID whose WhatsApp number should send this list. |
Step-by-step build
Open Workflow Automation
In your GHL sub-account: Automation → Workflows → Create Workflow → Start from scratch. Or open an existing workflow.
Add the webhook action
Click the plus sign and select Webhook. Name it something memorable (e.g. "Main Menu", "Support Menu").
Set the keyword
The keyword is what the customer types to trigger the list. Make it unique and easy to remember (e.g. menu, help, options).
Define list components
Set list_header, message, button_name, item1...itemN, and optional descriptions. Refer to the parameters table above for character limits.
Build sub-menus
Want a multi-level menu? Repeat the process — create another webhook with a different keyword (e.g. sales) that fires when the customer taps the "sales" item from the main menu.
Test it
Send the keyword on WhatsApp to your connected number. The list should appear within seconds. Tweak values and re-test as needed.
Whenever you create or modify a list, you must:
- Save the list (action)
- Save the workflow
- Run "Test Workflow" to register the list in our system
If you skip the Test Workflow step, the list won't be active even though the workflow is published.
Tips for efficiency
- Start with a simple test list to understand how parameters render before building production menus
- Keep keywords lowercase and short — easier for customers to remember and less prone to typos
- If the parameter list feels overwhelming, GHL's Premium Action for "WA Send List" exposes the same keys in a friendlier UI (small per-execution cost)
GHL charges a small per-execution fee for premium actions. Since you only build/update lists occasionally, the cost stays negligible. For most users, premium action = easier UI. For high-volume cost-sensitivity, webhook = free.
What's next?
- Send a list as the first message — proactively show the menu before the customer types anything
- Build a chatbot with WA Lists — chain lists into a full conversation flow
- Delete a list — clean up lists that are no longer needed