Skip to content

Step reference

What each of the 29 flow steps does, how to set it up and what to watch for, grouped as in the step library. The “?” in step settings opens this page.

Send a message

Text

text

When to use: Send a text message, such as a greeting or your opening hours.

How it works

Sends a text message to the customer. Fields you insert in the text are replaced with this customer’s values when it’s sent, such as their name. Use “Then” to send another message right after, and “Quick replies” to show tappable options under this one.

Settings

Text to send Required

What the customer reads, up to 1,000 characters, with a counter below. Type “@” to insert a field. The limit follows Instagram’s 1,000 characters (LINE allows 5,000, Messenger 2,000) and applies on every platform.

Example: Hi! Welcome to Good Taste Brunch. What would you like to know?

Next

  • Then: The step that follows right after this message is sent. Leave it empty and the flow ends here.
  • Quick replies: Choose a “Quick replies” step; its options appear under this message.

Examples

Opening hours

When a customer taps “Opening hours”, send “Good Taste Brunch is open Tuesday to Sunday, 8:00–15:00, closed on Mondays.” and attach quick replies for “See the menu” and “Book a table”.

Image

image

When to use: Send a picture, such as a menu or a promo poster.

How it works

Sends a picture to the customer, such as a menu or a promo poster. Upload an image file or paste a public image URL; the file is copied into your project. Publishing creates the preview image LINE needs.

Settings

Image Required

Use the upload button to pick an image, or paste an image URL starting with https:// into the box. “Remove” clears the current image. Up to 8 MB (Instagram’s limit; LINE allows 10 MB, Messenger 25 MB).

Next

  • Then: The step that follows right after the image is sent. Leave it empty and the flow ends here.
  • Quick replies: Choose a “Quick replies” step; its options appear under this image.

Examples

This week’s menu

When a customer taps “See the menu”, send Good Taste Brunch’s menu for the week, then a text message on how to book.

Video

video

When to use: Send a video, such as a product intro or a how-to.

How it works

Sends a video to the customer, such as a product intro or a how-to. Upload a video file (MP4) or paste a public video URL. Publishing makes a preview image from the video.

Settings

Video Required

Use the upload button to pick an MP4 video, or paste a video URL. “Remove” clears the current video. Up to 25 MB (the limit of Messenger and Instagram; LINE allows 200 MB).

Next

  • Then: The step that follows right after the video is sent. Leave it empty and the flow ends here.
  • Quick replies: Choose a “Quick replies” step; its options appear under this video.

Examples

A look inside

When someone adds Good Taste Brunch, send a 30-second video of the café.

Audio

audio

When to use: Send a voice clip or a piece of music.

How it works

Sends a voice clip or a piece of music to the customer. Upload an audio file (MP3) or paste a public URL to one. Publishing reads the clip’s length, which LINE needs to send audio.

Settings

Audio Required

Use the upload button to pick an MP3 file, or paste its URL. “Remove” clears the current audio. Up to 25 MB (the limit of Messenger and Instagram; LINE allows 200 MB).

Next

  • Then: The step that follows right after the audio is sent. Leave it empty and the flow ends here.
  • Quick replies: Choose a “Quick replies” step; its options appear under this audio.

Examples

A hello from the owner

When someone adds Good Taste Brunch, send a short welcome recorded by the owner.

carousel

When to use: Show several products or plans at once; each card can have buttons.

How it works

Sends a row of swipeable cards, each with a title, text, an optional image and buttons, to show several products or plans at once. When a customer taps a button, the flow goes to the step that button connects to under “Next”. After the cards are sent, the flow pauses here until the customer taps a button.

Settings

Cards (up to 10) Required

Select a number to edit that card, and “+” (Add card) to add one, up to 10. There is always at least one card; “Delete card n” removes the card you are editing. All cards need the same number of buttons, so adding or deleting a button applies to every card. Images and titles must be on every card or on none.

Title Required

Every card needs a title, because Messenger and Instagram need one to show the card. Up to 40 characters. Type “@” to insert a field.

Text Required

The card’s description, up to 60 characters. Type “@” to insert a field.

Image

Optional. Upload one or paste an image URL; the best ratio is 1.51:1. Up to 10 MB and 1,024 px wide.

Buttons (up to 3) Required

1 to 3 buttons per card, each up to 20 characters. “Add option” adds one; buttons can be moved up, moved down or deleted, except the last one left. Where each button leads is set under “Next”.

Alt text Required

Under “Advanced”. Shown in notifications and on phones that can’t display this message. Type “@” to insert a field.

Next

  • Button: One row per button on every card, shown as Button “Card title / Button text”. Choose the step that follows when a customer taps it. Connect it to an “Open a link” step and the tap opens the web page directly.
  • Quick replies: Choose a “Quick replies” step; its options appear under the cards.

Examples

Signature dishes

Three cards show Good Taste Brunch’s eggs Benedict, French toast and avocado salad, each with “Details” and “Book a table” buttons.

image_carousel

When to use: Send a row of swipeable pictures; each one can be tapped.

How it works

Sends a row of swipeable pictures, each with one button on it. When a customer taps a picture’s button, the flow goes to the step that picture connects to under “Next”. After the pictures are sent, the flow pauses here until the customer taps one.

Settings

Images (up to 10) Required

Use the arrows to move between images and “Add image” to add one, up to 10. There is always at least one; with two or more, “Delete image n” removes the one you are editing.

Image 1, Image 2… Required

Every image needs a picture: upload one or paste an image URL. Up to 10 MB and 1,024 px wide.

Button text on the image Required

Needed on every image, up to 12 characters.

Example: See desserts

Alt text Required

Under “Advanced”. Shown in notifications and on phones that can’t display this message. Type “@” to insert a field.

Next

  • Image: One row per image, shown as Image “Button text”. Choose the step that follows when a customer taps that image’s button. Connect it to an “Open a link” step and the tap opens the web page directly.
  • Quick replies: Choose a “Quick replies” step; its options appear under the images.

Examples

Seasonal desserts

Good Taste Brunch sends photos of four seasonal desserts; each “See desserts” button leads to that dessert’s description.

Ask the customer

Choices

buttons

When to use: Let customers answer by tapping a button, such as “See menu” or “Book a table”.

How it works

Sends a question with a few buttons so the customer can answer by tapping, such as “See the menu” or “Book a table”. Type the options in, each leading to its own next step, or build them from a list field. After it’s sent, the flow pauses here until the customer taps an option; if they type instead, their message is handled like any other message.

Settings

Question for the customer Required

The text above the buttons, up to 60 characters. Type “@” to insert a field.

Example: What would you like to do?

Options from

“Typed in” by default.

  • Typed in : Type each option yourself; each one leads to its own next step.
  • A list field : Every item in a list field becomes an option, and all options lead to the same next step.

Options Required

Shown with “Typed in”. Each option’s text is up to 20 characters and can be moved up, moved down or deleted. “Add option” adds one, up to 20, with an “n of 20” count beside it. On LINE, up to 4 options go out as a regular buttons message and more than 4 as a vertical list of buttons; Messenger and Instagram show only the first 3.

Example: See the menu

List field Required

Required with “A list field”: choose a list field; each item in it becomes an option.

Option text from

When each item in the list is an object, enter the name of the item’s key to use as the option text (such as name). Leave it empty to use each item itself.

Saved value from

The value saved when a customer taps an option, set the same way; empty uses each item itself. It is saved to the system field “Previous step’s result”, which later steps can use.

Title Required

Under “Advanced”. Required with “Typed in”, because Messenger and Instagram need a title to show the options. Up to 40 characters. Type “@” to insert a field.

Cover image

Under “Advanced”, optional. Upload one or paste an image URL; up to 10 MB and 1,024 px wide.

Alt text Required

Under “Advanced”, required with “Typed in”. Shown in notifications and on phones that can’t display this message. Type “@” to insert a field.

Next

  • Button: With “Typed in”, one row per option, shown as Button “Option text”. Choose the step that follows when a customer taps it. Connect it to an “Open a link” step and the tap opens the web page directly.
  • After the customer picks: With “A list field”: the step that follows whichever option the customer taps.
  • Quick replies: Choose a “Quick replies” step; its options appear under this message.

Examples

Main menu

Good Taste Brunch asks “What would you like to do?” with “See the menu”, “Book a table” and “Opening hours”, each leading to its own flow.

Quick replies

quick_reply

When to use: Show tappable suggestions above the keyboard; tapping one sends it as the customer’s reply.

How it works

Shows a row of tappable options under a message. Tapping one sends it like the customer’s own reply, and the flow goes to the step that option connects to. Quick replies can’t stand alone in a flow: connect them from a message step’s “Quick replies”.

Settings

Options from

“Typed in” by default.

  • Typed in : Type each option yourself; each one leads to its own next step.
  • A list field : Every item in a list field becomes an option, and all options lead to the same next step.

Options (up to 13 on LINE) Required

Shown with “Typed in”. Each option’s text is up to 20 characters and can be moved up, moved down or deleted. “Add option” adds one, up to 13.

Example: Book a table

Icon

Each option can have a small icon: upload one or paste an image URL. Up to 1 MB (LINE’s limit) and at least 24×24 px (the minimum for Messenger and Instagram).

List field Required

Required with “A list field”: choose a list field; each item in it becomes an option.

Icon URL from

When each item in the list is an object, enter the name of the item’s key that holds the icon URL.

Option text from

When each item in the list is an object, enter the name of the item’s key to use as the option text (such as name). Leave it empty to use each item itself.

Saved value from

The value saved when a customer taps an option, set the same way; empty uses each item itself. It is saved to the system field “Previous step’s result”, which later steps can use.

Next

  • Option: With “Typed in”, one row per option, shown as Option “Option text”. Choose the step that follows when a customer taps it.
  • After the customer picks: With “A list field”: the step that follows whichever option the customer taps.

Examples

Options under the welcome message

Good Taste Brunch’s welcome message connects this step from its “Quick replies”, showing “See the menu”, “Book a table” and “Getting here” underneath.

Ask for input

user_input

When to use: When you need information from the customer, such as party size, a date, a phone number or an email. The answer is saved to a field.

How it works

Asks the customer a question, waits for the reply and saves the answer to the field you choose, such as party size, a date, a phone number or an email. With an answer type set, the bot only accepts answers in that format and asks again when the format is wrong. Once the answer is saved, the flow continues at “Then”.

Settings

Question for the customer Required

The question sent to the customer, up to 1,000 characters. Type “@” to insert a field.

Example: How many people?

Answer type

“Text” by default. Below it, the panel explains what each type accepts and what kind of field it saves to. Number, Date, Phone number and Email treat full-width digits and symbols like regular ones, so answers typed with a Chinese keyboard work too.

  • Text : Saves whatever the customer replies, exactly as typed. Saved to a text field.
  • Number : Accepts numbers only, such as 4, 2.5, -3 or 1,200 (thousands separators are removed). A reply with words in it, like “4 people”, isn’t accepted. Saved to a number field.
  • Date : Accepts 10/4, 2026/10/4, 2026-10-04, 10/4/2026, Oct 4, October 4th 2026 and 4 Oct 2026, 2026.10.4, as well as Chinese forms such as 10月4日, 10月4號 and 2026年10月4日, and Taiwan (Minguo) years such as 115/10/4, 115年10月4日 and 民國99年1月1日. Slash dates put the month first; a weekday in brackets after the date is ignored. A date without a year is the nearest one: if this year’s date is more than about half a year ago, it’s next year’s. A two-digit year (26/10/4) counts as 20xx up to two years ahead, otherwise as a Minguo year (45/3/2 is 1956). Saved to a date and time field, at midnight Taiwan time on that day.
  • Phone number : Accepts 8 to 15 digits, optionally starting with +. Spaces, dashes, brackets and dots are removed, so 0912-345-678 is saved as 0912345678. Saved to a text field.
  • Email : Accepts email addresses only, such as name@example.com (up to 254 characters). Saved to a text field.

Save the answer to Required

Choose a regular field whose type matches the answer type: Text, Phone number and Email save to a text field, Number to a number field, Date to a date and time field. Only matching fields are listed; fixed fields and system fields can’t be chosen. If you change the answer type and the chosen field no longer fits, it shows “… is the wrong type. Choose another field.” Need a new field? Add it first under “Fields” › “Add field” in the flow toolbar. Later steps can use this field, for example inside a message.

Next

  • Then: The step that follows once a valid answer is saved, such as a confirmation or the next question.

Examples

Booking details

Good Taste Brunch asks “How many people?” (Number, saved to “Party size”), “Which day?” (Date, saved to “Booking date”) and “What number can we reach you on?” (Phone number, saved to “Phone”), then repeats the details in a text step.

Decide what’s next

Condition

condition

When to use: Take different paths based on the customer’s answer or data, such as members and non-members.

How it works

Checks the value of a field and picks a path: one path when it matches, another when it doesn’t. You can add several conditions, then choose whether “All conditions match” or “Any condition matches”. It checks the value the field holds when the customer reaches this step, such as an answer saved by “Ask for input”.

Settings

Field to check Required

For each condition (“Condition 1”, “Condition 2”…), first choose the field to check: a field, a fixed field or a system field. You can’t type a value here. “How to compare” appears once a field is chosen. Click “Add condition” to add another condition. Object fields have no ways to compare.

Example: member_level

How to compare Required

The choices depend on the field’s type. “Compare with” appears once you choose one.

  • equals : Number fields: the same number.
  • doesn’t equal : Number fields: a different number.
  • is greater than : Number fields.
  • is at least : Number fields.
  • is less than : Number fields.
  • is at most : Number fields.
  • is : Text and date and time fields: exactly the same.
  • isn’t : Text and date and time fields: not the same.
  • contains : Text fields: the text includes this text. List fields: the list has this item.
  • doesn’t contain : Text fields: the text doesn’t include this text.
  • starts with : Text fields.
  • ends with : Text fields.
  • is before : Date and time fields: an earlier time.
  • is after : Date and time fields: a later time.

Compare with Required

The value to compare against. Type it, or choose a field. Its type must suit the way you compare: a number for numbers, text for text, a date and time for dates; a list’s “contains” takes a value of any type. A value of the wrong type stops you from publishing.

Example: VIP

When it matches

Appears only when there are two or more conditions. The default is “All conditions match”.

  • All conditions match : Every condition must hold to take “When it matches”.
  • Any condition matches : One condition holding is enough to take “When it matches”.

Next

  • When it matches: Where the flow goes when the conditions hold.
  • Otherwise: Where the flow goes when they don’t.

Examples

Send large parties to a person

Good Taste Brunch checks whether the “party_size” field “is greater than” 6: “When it matches” leads to “Hand off to a person”; “Otherwise” carries on with online booking.

Branch by field

branch

When to use: Take a different path for each text value of a field, such as the branch the customer picked.

How it works

Splits the flow into paths by the value of one text field. Paths are checked from the top, and the flow takes the first one that matches; a path with an empty value catches everything. If nothing matches, the flow ends at this step.

Settings

Branch by field

Only text fields can be chosen (a field, a fixed field or a system field); you can’t type a value. Without a field, this step leads nowhere. “How to compare” appears once a field is chosen.

Example: branch

How to compare

The paths appear once you choose one. Without it, this step leads nowhere.

  • Exactly matches : The field’s text is exactly the path’s value.
  • Contains : The field’s text includes the path’s value.
  • Starts with : The field’s text begins with the path’s value.
  • Ends with : The field’s text ends with the path’s value.

When the text is

The value for each path (“Path 1”, “Path 2”…). Type text or choose a text field. The label follows “How to compare”: “When the text contains”, “When the text starts with” or “When the text ends with”. Click “Add path” to add a path. A path with an empty value catches everything, so to use it as “anything else”, put it last.

Example: Taipei store

Next

  • Path 1, Path 2…: One row per path, followed by its value if it has one, such as “Path 1 “Taipei store””. Where the flow goes when that path matches.

Examples

Opening hours by branch

Good Taste Brunch branches by the “branch” field with “Exactly matches”: Path 1 “Taipei store” and Path 2 “Taichung store” each lead to that store’s opening hours.

Random

random

When to use: Send customers down different paths at random, in the proportions you set — for A/B tests or prize draws.

How it works

Sends customers down one of several paths at random, in the proportions you set — for A/B tests or prize draws. It draws again every time a customer reaches the step. It can also pick a random number, or a random item from a list, and save it to a field for later steps.

Settings

Paths Required

A new Random step starts with two paths, each with a share of 50. Click “Add path” to add another (its share starts at 50). A random split needs at least two paths, so you can’t delete a path when only two are left. Set where each path leads under “Next”.

Share Required

Shares are relative: 50 and 50 is half each; 3 and 1 is 75% and 25% — a path’s share divided by the total of all shares. Below it you see “About N% of customers”, in whole percents that add up to 100%. A share must be greater than 0; a path with 0, a negative number or nothing is never taken (it shows 0%) and stops you from publishing.

Example: 3 and 1

Also save a random value

Check it to show “How to pick” and “Save the result to”. For example a prize number: pick a number from 1 to 100 and save it to a field for later steps. The value and the path are drawn separately. Unchecking it clears “Save the result to”.

How to pick

When you check “Also save a random value”, it starts as “Whole number in a range”.

  • Whole number in a range : A whole number from “Minimum” to “Maximum”; both ends can come up.
  • Decimal number in a range : A decimal number from “Minimum” up to, but not including, “Maximum”.
  • Random item from a list : A random item from the “List field”.

Minimum Required

Required for whole and decimal numbers. It can’t be larger than “Maximum”.

Example: 1

Maximum Required

Required for whole and decimal numbers.

Example: 100

List field Required

Required for “Random item from a list”. Choose a list field.

Save the result to Required

Required when “Also save a random value” is checked. Only fields can be chosen, not fixed fields. Whole and decimal numbers go to number fields only; an item from a list can go to a field of any type.

Example: prize_number

Next

  • Path 1 · 50%, Path 2 · 50%…: One row per path, followed by its chance. Where the flow goes when that path is drawn. Every path must be connected.
  • Then: Shown only on an older Random step without paths: customers always go here.

Examples

Compare two welcome offers

Good Taste Brunch gives Path 1 and Path 2 a share of 50 each, leading to a “buy one, get one free” message and a “10% off” message, then compares which brings more bookings.

Prize number

Check “Also save a random value”, use “Whole number in a range” from 1 to 100 and save it to “prize_number”, then use “Condition” to see whether the customer won.

Work with data

Set field

set_var

When to use: Save a value to a field or do math on it, such as remembering the plan the customer chose.

How it works

Saves a value to a field, or does math on a field — such as remembering the plan a customer chose or adding 10 points. A step can hold several settings; they run from the top down, and then the flow goes on to “Then”.

Settings

Field Required

For each setting (“Setting 1”, “Setting 2”…), first choose the field to change. Only fields can be chosen: a fixed field’s value can’t change in a flow. “What to do” appears once a field is chosen. Click “Add setting” to add another.

Example: points

What to do Required

The choices depend on the field’s type. “Value” appears once you choose one.

  • Set to : Any type: replace the field with the value, which must be of the same type.
  • Convert from text : Number fields: turn text (such as “12”) into a number.
  • Add : Number fields: add the value.
  • Subtract : Number fields: subtract the value.
  • Multiply by : Number fields: multiply by the value.
  • Divide by : Number fields: divide by the value.
  • Remainder after dividing by : Number fields: what is left after dividing by the value.
  • Set to the length of a list : Number fields: save how many items the list in “Value” has.
  • Convert from a number : Text fields: turn a number into text.
  • Append text : Text fields: add the value after the current text.
  • Convert from text : List fields: the value must be JSON text, such as ["A", "B"].
  • Add an item : List fields: add the value to the end of the list; it can be of any type.
  • Remove the item at a position : List fields: remove the item at that position, counting from 0.
  • Join another list : List fields: add every item of the list in “Value” to the end.
  • Set to a flattened list : List fields: save the list in “Value” with its inner lists flattened one level.
  • Set to a transposed list : List fields: the value is a list of rows (such as what a Google Sheets read returns); save it with rows and columns swapped.
  • Split into groups of : List fields: split the field’s own list into groups of N items; N must be a positive whole number.
  • Convert from text : Object fields: the value must be JSON text.
  • Convert from text : Date and time fields: such as 2026/10/04 18:30:00, read as Taiwan time.
  • Add seconds : Date and time fields: move later by that many seconds; 3600 is one hour.
  • Subtract seconds : Date and time fields: move earlier by that many seconds.

Value Required

Type it, or choose a field (a fixed field or a system field works too). Its type must suit “What to do”: “Add” needs a number, “Convert from text” needs text, “Set to the length of a list” needs a list, and “Add an item” takes any type. A value of the wrong type stops you from publishing.

Example: 10

Next

  • Then: Where the flow goes after every setting has run.

Examples

Remember the set meal and add points

After a customer picks a set meal, Good Taste Brunch uses Setting 1 to set “plan” to “Brunch set” and Setting 2 to add 10 to “points”.

Extract data

extract_data

When to use: Take one value out of a list or object into a field, such as an order status from a lookup.

How it works

Takes one item out of a list or an object and saves it to another field. Use a position (from 0) for a list and a name for an object. Each step takes one item from one level; to take several items, or something nested deeper, chain several “Extract data” steps.

Settings

Take from field Required

Choose a list or object field; a fixed field or a system field works too.

Example: booking_rows

Item to take Required

Use a position (from 0) for a list, a name for an object. Type it, or choose a text or number field.

Example: 0

Save to Required

The field that gets the value. Only fields can be chosen, not fixed fields.

Example: booking_status

Next

  • Then: Where the flow goes once the value is saved.

Examples

Take the first row of a sheet

A Google Sheets read saved its result to the list field “booking_rows”, where each row is a list too. “Extract data” takes position 0 from “booking_rows”: the first row.

Repeat for each item

repeat

When to use: Run the same steps once for every item in a list.

How it works

Runs the steps under “For each item” once for every item in a list, in order. Each round first saves the item to the field you chose; when those steps finish, the next item starts. After the last item, the flow goes on to “After every item”.

Settings

List to go through Required

Choose a list field (a field, a fixed field or a system field), or type a list such as ["A", "B"].

Example: todays_specials

Save the current item to Required

Each round’s item is saved to this field, so the steps under “For each item” can use it. Only fields can be chosen, not fixed fields.

Example: current_dish

Next

  • After every item: Where the flow goes after the last item.
  • For each item: The first step to run for every item; the flow follows on from it until those steps end. Required to publish.

Examples

Introduce today’s specials one by one

Good Taste Brunch passes its list of specials to “Repeat for each item”, saving each to “current_dish”. “For each item” leads to a “Text” step that sends the dish’s name, and “After every item” leads to “Choices” asking whether to book.

Write to Google Sheets

google_sheet

When to use: Save bookings or sign-ups to your spreadsheet, or read data from it.

How it works

Adds a row to a connected Google spreadsheet, such as a booking or a sign-up, or reads ranges from it into a list field. Connect Google Sheets under “Apps” first. When it’s done, the flow goes on to “Then”.

Settings

What to do

A new step starts with “Read content”. Switching clears the columns or ranges you filled in.

  • Add a row : Adds a row to the chosen sheet, filling in each column in order.
  • Read content : Reads one or more ranges and saves the result to a list field.

Spreadsheet Required

Choose one under “Connected spreadsheets”, or under “Spreadsheet ID from a field” choose a text field that holds a spreadsheet ID; that spreadsheet must be connected too. If the list is empty, connect a spreadsheet under “Apps” first. Changing the spreadsheet clears “Sheet”.

Sheet Required

Only for “Add a row”; it appears once a spreadsheet is chosen. For a connected spreadsheet, choose the sheet; when the spreadsheet comes from a field, type the sheet’s name.

Example: Sheet1

What goes in each column

For “Add a row”, “Column 1”, “Column 2”… fill the row in order. Type each value, or choose a field, a fixed field or a system field. Click “Add column” to add one. An empty column writes an empty cell. Values are written as they are, never as formulas; date and time fields are written in Taiwan time, such as 2026/10/04 18:30:00 (just the date when the time is 00:00).

Ranges to read Required

For “Read content”, give each of “Range 1”, “Range 2”… a range such as A1:C10; “How to write a range” opens Google’s guide. Type it, or choose a field. Click “Add range” to add one; every range must be filled in, so delete the ones you don’t need.

Example: A1:C10

Read by column

Only for “Read content”. Unchecked, each item of the result is a row; checked, each item is a column.

Save the result to Required

Only for “Read content”. Choose a list field (not a fixed field). Everything read from all ranges is joined into one list in order, and each item is itself a list (the cells of one row or column).

Example: booking_rows

Next

  • Then: Where the flow goes after the write or read.

Examples

Save bookings to a sheet

Once a customer has given their booking details, Good Taste Brunch uses “Add a row” on the “Bookings” sheet: Column 1 “name”, Column 2 “party_size”, Column 3 “date”.

Read today’s menu

“Read content” reads A2:B20 into the list field “todays_menu”, then “Repeat for each item” sends each dish to the customer.

Hand off

Hand off to a person

human_response

When to use: Let a person take over the chat; the customer first sees your waiting message.

How it works

Hands the conversation to your team: the customer first gets your waiting message, the conversation becomes “Handled by a person”, and the bot stops replying to this customer until it is returned to the bot. The flow stops at this step.

Settings

Waiting message Required

The customer sees this before a person takes over. Up to 5,000 characters. Type @ to insert a field, such as the customer’s name.

Example: One moment, someone will reply soon

Next

  • Then: It is listed under “Next”, but the flow stops at “Hand off to a person”, so a step connected here doesn’t run.

Examples

Private events go to the manager

When a Good Taste Brunch customer taps “Private event”, the flow goes to “Hand off to a person” with the waiting message “One moment, our manager will reply soon”, and the manager takes over in “Chats”.

Let AI answer

ai_handoff

When to use: End the flow and let AI answer the customer from your knowledge base.

How it works

The flow ends here and AI answers the customer from your knowledge base. The AI answers the customer’s latest message, such as the text of the button they tapped or what they typed for “Ask for input”.

Next

The flow ends here; there is no next step.

Examples

Other questions go to AI

Good Taste Brunch’s “Choices” step has three buttons: “See menu”, “Book a table” and “Other questions”. “Other questions” leads to “Let AI answer”, so AI answers from the knowledge base.

Open a link

uri

When to use: Open a web page for the customer, such as an order page or a map.

How it works

Opens a web page, starts a phone call or opens a LINE link when a customer taps a button or option. “Open a link” can only follow a button or option, and it ends the flow.

Settings

URL Required

Starts with https:, http:, line: or tel:, up to 1,000 characters.

Example: https://example.com/booking

Next

The flow ends here; there is no next step.

Examples

Book online or call

In Good Taste Brunch’s “Choices” step, the “Book online” button leads to an “Open a link” step with the booking page URL, and the “Call us” button to one with a tel: phone number.

Triggers

On follow

welcome

When to use: Starts when a customer adds you or starts chatting for the first time.

How it works

“On follow” is where things start the first time a customer meets your bot: when they add you on LINE, open website chat for the first time, or start a conversation on Messenger, the bot sends the step under “Starts with”. A project has one starting point. You can also send a reminder when the customer doesn’t reply for a while (LINE only).

Settings

Start here when a customer adds you

Check it to make this step the project’s starting point. A project has one starting point; checking this replaces the current one, and “On follow” steps that aren’t checked never run. When you add the first “On follow” flow in “Story”, it’s checked for you.

Remind after no reply for

Under “Advanced”, set “hours” and “minutes” (minutes 0–59). The clock starts when the welcome is sent. When time is up, the step under “Reminder if the customer doesn’t reply” is sent only if the customer hasn’t sent anything, hasn’t blocked you, and the chat isn’t “Handled by a person”; once they reply, no reminder goes out. If a reminder step is connected but the wait is 0, you can’t publish: set at least 1 minute.

Example: 0 hours 30 minutes

Next

  • Starts with: The first step sent after a customer adds you. You can’t publish until it’s connected.
  • Reminder if the customer doesn’t reply: The step sent when the wait is over and the customer still hasn’t replied. Optional; leave it empty for no reminder.

Examples

Welcome with a reminder

Good Taste Brunch connects a greeting with “See menu / Book a table” choices under “Starts with”, and this week’s brunch deal under “Reminder if the customer doesn’t reply”, with a 30-minute wait.

When a customer mentions…

rag_start_point

When to use: Starts when AI sees the customer asking about this topic.

How it works

“When a customer mentions…” lets AI answer a customer with a flow you designed. When AI decides a flow fits better than your knowledge, it compares what the customer wants with the “When to start here” text of every “When a customer mentions…” step, picks the closest one and sends that flow’s messages in full, adding nothing of its own. If none is close enough, no flow runs. You can have many, one for each situation.

Settings

When to start here Required

AI uses this description to decide whether a question fits this flow, so say clearly when customers ask and how they put it. You can’t publish without it. A changed description takes effect on LINE and other channels after you publish; “Test” uses the draft right away.

Example: When customers want to book, ask about tables or change a booking.

Write it with AI

Writes a description from the messages in this flow and replaces the current text. Choose the starting step under “Next” first. When you first connect the starting step and the description is still empty, one is written automatically.

Next

  • Starts with: The step this flow starts at when AI picks it. You can’t publish until it’s connected.

Examples

Booking flow

Good Taste Brunch writes “When customers want to book, ask about tables or change a booking.” and connects steps that ask for party size and date. When a customer asks “Any tables free on Saturday?”, AI runs the booking flow.

Started from a menu or template

sendable_start_point

When to use: Lets this flow start from a menu, a template or website chat.

How it works

“Started from a menu or template” is a flow you can call up and send at any time; the step never starts on its own. After you publish, you can send it while replying in “Chats” with “Choose a message template”. Turn on “Let AI use this flow when answering” under “Advanced”, and AI can also send it as its reply when it fits, exactly as you designed it.

Settings

Let AI use this flow when answering

Under “Advanced”. When checked, AI can decide on its own to send this flow while answering a customer. The three settings below appear once it’s checked.

When to use it Required

Written for AI: what customer need this flow is for. Without it, AI never uses the flow.

Example: When a customer asks about takeout or delivery, send the takeout menu.

Fields AI can fill in

For each checked field, AI fills in a value from the conversation, and the flow uses that value wherever it reads the field. The values are used for this one send only and are never saved to the customer’s fields. A project without fields shows “No fields yet.”.

Only on these platforms

Limits where AI may use this flow. Leave all unchecked to allow every platform. Test is never limited.

  • LINE
  • Website chat
  • Messenger
  • Instagram

Next

  • Starts with: The first step that runs when the flow is sent as a message template, used by AI, or started from website chat. You can’t publish until it’s connected, and until then it isn’t in the message template list.

Examples

Takeout menu

Good Taste Brunch makes a “Takeout menu” flow with a menu image and an order button. You send it from “Chats” with “Choose a message template” while you’re handling a chat; with AI use turned on, “When to use it” says “When a customer asks about takeout or delivery, send the takeout menu.”.

Rich menu

rich_menu

When to use: The picture menu at the bottom of a LINE chat; each area can start a flow.

How it works

A “Rich menu” is the picture menu at the bottom of a LINE chat. Its image is split into 1, 3 or 6 areas by the layout; when a customer taps an area, the step connected to it starts. An area can also lead to “Open a link” to open a web page directly. After you publish, the default rich menu shows for every LINE customer.

Settings

Make this the default rich menu

A project has one default rich menu; checking this replaces the current one. Customers only see a rich menu that isn’t the default after a “Switch rich menu” step gives it to them.

Menu bar text Required

The text customers see at the bottom of the chat, up to 14 characters. You can’t publish if it’s empty or longer.

Example: Tap for menu

Layout

How many areas the image is split into. Switching layouts keeps the settings of areas that no longer fit, so switching back restores them, but only the areas in the current layout work.

  • 1 × 1 : The whole image is one area.
  • 1 × 3 : One row of three areas.
  • 2 × 3 : Two rows of three, six areas in all.

Menu image Required

800–2500 px wide, at least 250 px tall, up to 1 MB, and the width must be at least 1.45 times the height. You can’t publish without an image or with one that doesn’t fit. The image is divided evenly into the layout’s areas.

Name of each area

Areas A, B, C… run left to right, top to bottom. The name tells areas apart under “Next”; on LINE, it is also recorded as the customer’s message when they tap the area.

Example: See menu

Next

  • Area: One row per area, such as “Area A “See menu””. Choose the step that starts when a customer taps the area, or “Open a link”. Every area in the current layout must be connected before you can publish.

Examples

Main menu

Good Taste Brunch uses the 2 × 3 layout: See menu, Book a table, This week’s deals, Takeout, Find us and Contact us. “Find us” leads to “Open a link” with a map; each of the others starts a flow.

Persistent menu

persistent_menu

When to use: The always-on menu in Messenger and Instagram chats.

How it works

A “Persistent menu” is the always-on menu in Messenger and Instagram chats. Each button can start a flow or lead to “Open a link” to open a web page. After you publish, the default persistent menu is set on your connected Messenger and Instagram.

Settings

Make this the default persistent menu

A project has one default persistent menu; checking this replaces the current one. Only the default is shown to customers; if you uncheck it and publish, the menu Chatbotta set is removed.

Buttons (up to 20) Required

Add buttons with “Add option” and reorder them with the up and down arrows. Each button needs text, up to 30 characters; it’s what customers see in the menu. More than 20 buttons, or empty or too-long text, blocks publishing.

Example: See menu

Next

  • Button: One row per button, such as “Button “See menu””. Choose the step that starts when a customer taps it, or “Open a link”. Every button must be connected before you can publish.

Examples

Messenger menu

Good Taste Brunch sets three buttons: “See menu” and “Book a table” each start a flow, and “Order online” leads to “Open a link” with the ordering page.

Advanced

LINE Flex message (JSON)

flex

When to use: Design a custom layout with LINE Flex Message JSON; shown on LINE only.

How it works

Designs a custom message layout with LINE Flex Message JSON, such as a member card or an illustrated menu. Design it in LINE’s Flex Message Simulator and paste the JSON here. LINE shows the layout; Messenger and Instagram can’t show Flex messages, so customers there only get the “Alt text”.

Settings

LINE Flex Message JSON Required

Paste the Flex Message JSON; its top-level type must be bubble or carousel. Mistakes show right under the box: “The JSON has an error. Check the brackets and quotes.” or “The top-level type must be bubble or carousel.” You can type “@” inside the JSON’s text to insert a field, which is replaced with the customer’s value when sent.

Alt text Required

Shown in notifications and on phones that can’t display this message. Customers on Messenger and Instagram see only this text, so write a sentence that makes sense on its own. Type “@” to insert a field.

Example: Your Good Taste member card: 8 points so far

Next

  • Then: The step that follows right after this message is sent. Leave it empty and the flow ends here.
  • Quick replies: Choose a “Quick replies” step; its options appear under this message.

Examples

Member stamp card

Good Taste Brunch builds a stamp card as a Flex message with the “Points” field inserted in the JSON, and the alt text “Your Good Taste member card: @Points points so far”.

Switch rich menu

switch_rich_menu

When to use: Switch to another LINE rich menu, such as a members’ menu after sign-in.

How it works

“Switch rich menu” changes this customer’s LINE rich menu to another one, then carries on. Use it to show different menus by customer, such as a members’ menu after sign-up.

Settings

Switch to rich menu Required

Choose one of the project’s rich menus; the default rich menu is listed first, and choosing it switches the customer back to the default. Works on LINE only; other platforms skip this step. You can’t publish without a choice.

Next

  • Then: The step that runs after the menu is switched. Optional; without it the flow ends here.

Examples

Members’ menu

When a Good Taste Brunch customer finishes signing up with their phone number, “Switch rich menu” gives them the members’ menu with “My points”, then a welcome-to-membership text follows.

Switch persistent menu

switch_persistent_menu

When to use: Switch to another Messenger persistent menu.

How it works

“Switch persistent menu” changes this customer’s Messenger persistent menu to another one, then carries on. You can no longer add this step from the steps panel; existing ones keep working and can still be edited.

Settings

Switch to persistent menu Required

Choose one of the project’s persistent menus; the default persistent menu is listed first, and choosing it switches the customer back to the default. You can’t publish without a choice.

Next

  • Then: The step that runs after the menu is switched. Optional; without it the flow ends here.

Tool

tool

When to use: Let AI call this flow during a conversation and use the result (for advanced users).

How it works

A “Tool” turns a flow that only works with data into a tool AI can use. When the AI that answers customers needs it, it calls the tool: it fills in the fields you allow, the flow runs, and the result from a “Return value” goes back to the AI, which tells the customer in its own words. The flow never sends messages to the customer. The tool is called by the AI that answers customers, not by Copilot.

Settings

Let AI use this flow when answering

AI only uses the tool when this is checked. The three settings below appear once it’s checked.

When to use it Required

Written for AI: what customer need the tool is for and what it returns. Without it, AI never uses the tool.

Example: When a customer asks about the delivery fee, work it out from the distance.

Fields AI can fill in

The checked fields are what AI fills in from the conversation when it calls the tool, such as party size or distance. When the flow reads these fields it gets AI’s values; they are used for this call only and never saved to the customer’s fields.

Only on these platforms

Limits where AI may use the tool. Leave all unchecked to allow every platform. Test is never limited.

  • LINE
  • Website chat
  • Messenger
  • Instagram

Next

  • Starts with: The first step that runs when AI uses the tool. It can only be a data step (Set field, Condition, Branch by field, Random, Extract data, Repeat for each item, Write to Google Sheets, Switch rich menu, Switch persistent menu) or a “Return value”. You can’t publish until it’s connected.

Examples

Delivery fee

Good Taste Brunch’s tool lets AI fill in “Delivery distance”. A “Condition” checks for 3 km or less and leads to a “Return value” with a fee of 0; otherwise “Set field” sets the fee to 60 and then a “Return value” follows.

Return value

return_value

When to use: End a tool flow and hand the result back to the AI that called it.

How it works

“Return value” ends a tool flow and hands the results you list back to the AI that called the tool. AI reads them and replies to the customer in natural words; the results themselves are never sent to the customer. Every path of a tool flow must end at this step.

Settings

Name Required

The name of each result, so AI knows what the value is. Add more with “Add result”. You can’t publish while a name is empty.

Example: Delivery fee

Value Required

Type a value or choose a field; the field’s value at the moment the flow reaches this step is returned. You can’t publish while a value is empty.

Next

The flow ends here; there is no next step.

Examples

Return the delivery fee

Good Taste Brunch’s fee tool ends at a “Return value” whose Result 1 is named “Delivery fee” with the field “Delivery fee” as its value. AI then tells the customer “Delivery to you is NT$60.”