diff --git a/docs/4. Product Features/03. Flows/2. Flow Actions/12. Link Google Sheets.md b/docs/4. Product Features/03. Flows/2. Flow Actions/12. Link Google Sheets.md
index e022895cc..d66f0f838 100644
--- a/docs/4. Product Features/03. Flows/2. Flow Actions/12. Link Google Sheets.md
+++ b/docs/4. Product Features/03. Flows/2. Flow Actions/12. Link Google Sheets.md
@@ -1,8 +1,8 @@
- | 10 minutes read |
- Level:Intermediate |
+ 15 minutes read |
+ Level: Intermediate |
Last Updated: October 2025 |
@@ -196,6 +196,93 @@ As you can see on the preview above, the list of options we had given in the Goo
- Sending interactive messages using Google Sheets could avoid the redundancy of creating multiple interactive messages when the list of options needs to be updated (some option needs to be added or removed) or multiple interactive messages to be used.
- It can also be used for handling situations where the list of options is more than 10 by using 'More' as the tenth option and having a separate list of options in the next row.
+### Using G-sheets to Dynamically fetch button/list options in Interactive Messages.
+This approach helps the user reduce the effort required to create flows containing multiple interactive messages by automatically fetching the message body and options from a Google Sheet.
+
+It is particularly useful in scenarios such as:
+
+ - When multiple interactive messages (for example, more than 4) are used within a chatbot flow.
+ - When managing nested options (e.g., District → Block).
+
+
+The example below demonstrates a sample setup for both approaches, which can be customized or adapted as per the specific use case.
+
+
+
+
+ - In the nested drill-down approach, once the end user selects a district, the corresponding blocks under that district are displayed.
+ - In the second approach, based on the topic selected (Science or General Knowledge), a short quiz with two questions is presented to the end user. The message body and options for both questions are dynamically fetched from the G-Sheet.
+
+
+#### Steps to configure this setup:
+Step 1 - Setup the g-sheet, following this format. Here’s the link to the sample sheet
+
+For quiz:
+
+
+
+To fetch district options from g-sheets–
+
+
+
+To fetch corresponding blocks, associated with the district—
+
+
+
+Step 2: Integrate Google Sheet with Glific. For detailed steps on how this is done, please follow this link.
+
+Step 3: Create the following interactive messages from `Quick tools` Pane:
+
+For quiz -
+
+
+
+For district options -
+
+
+
+For block options -
+
+
+
+Since the options will be fetched dynamically from the G-Sheet, placeholder (dummy) values can be added as options while creating the interactive message(s).
+
+Step4: Configure the flow, following the below mentioned requirements. Here’s the sample flow
+
+For quiz -
+
+
+ - Since there are two topics, each containing two questions, a counter is initialized with a distinct starting value for each topic. After the first question is sent, the counter increments to fetch the next (and final) question along with its options.
+ - Once the counter is updated, a check is performed to confirm whether both questions have been delivered. If yes, the flow ends with a closing message; if not, the second question is sent.
+ - For the quiz, a single interactive message can be used, with its message body and options dynamically fetched from the linked G-Sheet.
+
+
+
+
+
+ - The
Use Dynamic Fields option is enabled, and since only two options need to be shown to the user, the Read Option Limit is set to 2. Corresponding IDs and variable names are configured to fetch the option values from the correct columns in the linked Google Sheet.
+
+
+For Nested drill down –
+
+
+ - In the nested drill-down setup, district options are fetched from the linked G-Sheet. Based on the district selected by the end user, the corresponding blocks are presented as a second list for selection.
+
+
+
+
+
+ - Sheet1 contains the district options, while Sheet2 contains the block options. Both sheets are configured separately within the flow.
+ - To ensure only the blocks associated with the selected district are displayed, the key value in sheet2 is set to
@results.district_captured, which stores the district chosen by the end user. In the sheet containing the block values, each district serves as the key for its corresponding block list.
+ - Since only the options are being fetched from the linked G-Sheet, two interactive messages with a static message body are used.
+
+
+
+ - Since the number of blocks varies for each district, an additional column in the linked sheet stores the total number of options for every district. This allows the user to control the Read Options Limit and display only the necessary options. It also reduces effort when more options (up to 10) are added to the list, as only the value of
@results.sheet2.length needs to be updated followed by syncing the sheet.
+
+
+
+
## Add Writable Google Sheet
### Enable Google Sheet APIs and Add Credentials