Welcome to BotSailor Help! Just use the email OTP to sign in and track your tickets. Password login isn’t needed anymore.
Want to fetch live product data or any external dynamic content and display it inside WhatsApp using BotSailor? This tutorial will show you how to connect your HTTP API and deliver real-time information as a WhatsApp interactive list message.
What This Guide Covers
Connecting any external API using HTTP GET or POST
Mapping the API response to display dynamic WhatsApp list items
Triggering and testing the flow with WhatsApp chatbot keywords
Why Display Dynamic Lists in WhatsApp?
Displaying product catalogs, service packages, FAQs, and other real-time data using dynamic lists inside WhatsApp improves customer experience and reduces your manual workload.
Benefits:
✅ Fully automated catalog updates
✅ Personalize user responses with real-time info
✅ Better conversion using WhatsApp’s native UI
✅ Use for eCommerce, support, services, and more
Step-by-Step Guide
Click on Settings from the left-side panel
Choose HTTP API Integration
Select WhatsApp HTTP API
Click the Create button
Copy a test Subscriber ID from Subscriber Manager
Add your API name (e.g., Shopping)
Select GET or POST method
Paste the API Endpoint URL
Here’s an actual example response from the API you can use for dynamic list generation:
{
"0": {
"product_name": "Apple iPhone 15 Pro",
"price": "$999",
"description": "The Apple iPhone 15 Pro features a powerful A17 Pro chip, 48MP camera system, and a sleek titanium design for maximum performance and durability.",
"buy_link": "https://www.apple.com/iphone-15-pro/"
},
"1": {
"product_name": "Samsung Galaxy S24 Ultra",
"price": "$1,199",
"description": "The Samsung Galaxy S24 Ultra offers a stunning 6.8-inch AMOLED display, a 200MP camera, and cutting-edge performance with the latest Snapdragon processor.",
"buy_link": "https://www.samsung.com/galaxy-s24-ultra/"
},
}
📌 Each product is represented as an object with product_name, price, description, and buy_link.
Under HTTP API Response Mapping:
Select field to map data (e.g., ProductList). Here you can search for the custom field you want. You can also make your own field by typing and hitting enter.
Create a new Start Bot Flow with a trigger keyword like products
Add an HTTP API block and connect your Shopping API
Add an Interactive Message block:
Title: Our Available Products
Message Body: “These are the products available here.”
Add a List Message
Set Row Generation Method to Dynamic
Custom Field: #ProductList#
Row Title: product_name
Row Description Format:
Once the flow is published, your WhatsApp bot will automatically respond to the trigger with a dynamic, real-time list like this:
Bonus Tips
You can use the buy_link in follow-up messages like:
“Thanks for choosing. Buy it here: #ProductList->buy_link#”
Test different product categories by sending keywords like laptops, phones, etc., and mapping different APIs
Combine dynamic lists with checkout flows, Zapier actions, or WhatsApp template follow-ups
Frequently Asked Questions (FAQs)
Can I use any public API?
As long as it returns valid JSON or form-encoded output.
Is this feature available on free plans?
It depends on your BotSailor plan. Please refer to BotSailor pricing.
Can I link the user to the product buy URL?
Yes, use a follow-up message block to insert the dynamic buy_link.Q4: Is it possible to refresh product data periodically?Yes. Since the API is called live, users will always get the latest version.
What if the API structure changes?
Update your response mapping in BotSailor to match the new structure.
Can I send dynamic list messages for Messenger too?
WhatsApp is currently the best-suited channel for this UI. Messenger supports similar flows with generic templates.
What format should the API return for dynamic rows?
Each row should be an object with at least a name/title key. e.g., product_name, price, etc.
Can I use conditional logic after selection?
Yes. Store the selected item in a custom field and trigger flows based on that value.
Is authentication supported for private APIs?
Yes, you can set headers, tokens, or cookies in the request settings.
Can I update subscriber fields based on API results?
Yes, BotSailor allows mapping any API response to update subscriber custom fields.