Build a simple FAQ assistant
Provide predictable answers from a three-choice menu, then extend the flow with your own information or an AI action.
Swipe sideways to explore the workflow branches.
TRIGGERNew Chat Created
Example configuration
{}faqMenuAsk Multiple Choice Question
Example configuration
{ "question": [ { "$tag": "Constant", "value": "What would you like to know?" } ], "answerOptions": [ "Opening hours", "Delivery", "Something else" ] }- Opening hours
hoursReplySend Text Message
Example configuration
{ "message": [ { "$tag": "Constant", "value": "Our example opening hours are Monday to Friday, 9am to 5pm. Replace this with your actual hours." } ] }
- Delivery
deliveryReplySend Text Message
Example configuration
{ "message": [ { "$tag": "Constant", "value": "For delivery information, visit the delivery page on our website. Replace this with your current policy and public link." } ] }
- Something else
otherReplySend Text Message
Example configuration
{ "message": [ { "$tag": "Constant", "value": "Please describe your question so our team can follow up." } ] }
- Opening hours
This diagram follows the downloadable workflow. Edit and run it in Chatigram.Swipe the diagram to explore its branches.
Plan availability #
| Feature | Free | Starter | Pro | Enterprise |
|---|---|---|---|---|
| Active Lines | 2 | 5 | 15 | Unlimited |
| Active workflows | 3 | 10 | 45 | Unlimited |
Allowances follow the published Chatigram pricing page. Your organization’s Billing & Plans screen confirms its subscription and current usage. Plans can change. Plan information reviewed 2026-11-10.
Start with predictable answers #
This example asks whether the visitor wants opening hours, delivery information, or something else. Each choice leads to one reply. It uses a multiple-choice node and three message nodes, with no AI processing or external connection requirement.
Use this pattern when a small set of published answers covers most questions. It is easy to understand, test, and update.
Replace the sample information #
The supplied hours and policy wording are examples. Replace them with your actual business information before enabling the workflow. Add a current public link where it helps the customer.
For information repeated in many messages, move the changeable values into workflow Properties and insert them using the variable picker.
Test all three choices #
Assign the workflow to a test Line, enable it, and create a fresh chat for each answer option. Confirm the displayed information, links, and next action. The “Something else” path should explain what the customer can do next.
Add an AI answer when you need it #
If you want free-form questions, add Receive Message and a suitable current AI node. Supply the business information the model is allowed to use, ask it to say when an answer is missing, and connect a useful error or timeout path.
An AI-enhanced extension needs its own compatible connection and testing; it is not included in this menu’s JSON. Read AI and assistants before building that extension.
Try this in Chatigram
Replace all sample business information before use. This is a deterministic FAQ menu with no AI processing or provider account requirement. Assign it to a test Line and test all three choices.
View workflow JSON
{
"format": "chatigram-workflow",
"version": 1,
"metadata": {
"sourceName": "Simple FAQ menu",
"importHelp": {
"note": "Replace all sample business information before use. This is a deterministic FAQ menu with no AI processing or provider account requirement. Assign it to a test Line and test all three choices."
}
},
"workflow": {
"instruction": null,
"multiLanguageSupport": null,
"properties": [],
"trigger": {
"$tag": "Trigger",
"type": "CONVERSATION_CREATED",
"data": {}
},
"nodes": [
{
"$tag": "Node",
"id": "d0c00000-0000-4000-8000-000000000001",
"name": "faqMenu",
"parentId": null,
"branchIndex": 0,
"type": "ASK_MULTIPLE_CHOICE_QUESTION",
"data": {
"question": [
{
"$tag": "Constant",
"value": "What would you like to know?"
}
],
"answerOptions": [
"Opening hours",
"Delivery",
"Something else"
]
}
},
{
"$tag": "Node",
"id": "d0c00000-0000-4000-8000-000000000002",
"name": "hoursReply",
"parentId": "d0c00000-0000-4000-8000-000000000001",
"branchIndex": 0,
"type": "SEND_TEXT_MESSAGE",
"data": {
"message": [
{
"$tag": "Constant",
"value": "Our example opening hours are Monday to Friday, 9am to 5pm. Replace this with your actual hours."
}
]
}
},
{
"$tag": "Node",
"id": "d0c00000-0000-4000-8000-000000000003",
"name": "deliveryReply",
"parentId": "d0c00000-0000-4000-8000-000000000001",
"branchIndex": 1,
"type": "SEND_TEXT_MESSAGE",
"data": {
"message": [
{
"$tag": "Constant",
"value": "For delivery information, visit the delivery page on our website. Replace this with your current policy and public link."
}
]
}
},
{
"$tag": "Node",
"id": "d0c00000-0000-4000-8000-000000000004",
"name": "otherReply",
"parentId": "d0c00000-0000-4000-8000-000000000001",
"branchIndex": 2,
"type": "SEND_TEXT_MESSAGE",
"data": {
"message": [
{
"$tag": "Constant",
"value": "Please describe your question so our team can follow up."
}
]
}
}
],
"gotos": []
}
}