{
  "id": "RoxQsRKHo66PYIoi",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "Customer Feedback Collector \u2013 Food & Restaurant Experience",
  "tags": [],
  "nodes": [
    {
      "id": "fb14cccc-1a19-4af8-b646-cd2d831b832e",
      "name": "Google Sheets Trigger: New Feedback Entry",
      "type": "n8n-nodes-base.googleSheetsTrigger",
      "position": [
        240,
        500
      ],
      "parameters": {
        "options": {},
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1WFcRiJk_kh_1UZo9PzS07Fsl5WS7zviePzhFOz9hFaA/edit#gid=0",
          "cachedResultName": "user detail"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1WFcRiJk_kh_1UZo9PzS07Fsl5WS7zviePzhFOz9hFaA",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1WFcRiJk_kh_1UZo9PzS07Fsl5WS7zviePzhFOz9hFaA/edit?usp=drivesdk",
          "cachedResultName": "Whatsapp"
        }
      },
      "credentials": {
        "googleSheetsTriggerOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "77e0ee27-71f0-41c2-b605-6bfb8fb52fb0",
      "name": "Wait for All Data (Code)",
      "type": "n8n-nodes-base.code",
      "position": [
        460,
        500
      ],
      "parameters": {
        "jsCode": "console.log(\"Waiting...\");\n\nsetTimeout(() => {\n  console.log(\"5 seconds passed.\");\n}, 5000);\n"
      },
      "typeVersion": 2
    },
    {
      "id": "508cc37e-4ecf-4839-ae40-3825aaf85428",
      "name": "Send Email: Notify Team About Feedback",
      "type": "n8n-nodes-base.emailSend",
      "position": [
        680,
        500
      ],
      "parameters": {
        "text": "Please give us your valuable feedback at:\nhttps://n8n-devops.oneclicksales.xyz/form/feedback/list\n",
        "options": {
          "appendAttribution": false
        },
        "subject": "Feedback",
        "toEmail": "={{ $json.Email }}",
        "fromEmail": "user@example.com",
        "emailFormat": "text"
      },
      "credentials": {
        "smtp": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "3ddcf937-bd44-43d6-9818-1df26792b9b2",
      "name": "Trigger: Form Submitted",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        240,
        760
      ],
      "parameters": {
        "options": {
          "path": "feedback/list",
          "customCss": ":root {\n--font-family: 'Roboto', sans-serif;\n  --font-weight-normal: 400;\n  --font-weight-bold: 700;\n  --font-size-body: 13px;\n  --font-size-label: 15px;\n  --font-size-test-notice: 12px;\n  --font-size-input: 15px;\n  --font-size-header: 20px;\n  --font-size-paragraph: 16px;\n  --font-size-link: 14px;\n  --font-size-error: 12px;\n  --font-size-html-h1: 30px;\n  --font-size-html-h2: 24px;\n  --font-size-html-h3: 18px;\n  --font-size-html-h4: 16px;\n  --font-size-html-h5: 14px;\n  --font-size-html-h6: 12px;\n  --font-size-subheader: 16px;\n  --color-background: #f5f7fa;\n  --color-test-notice-text: #e6a23d;\n  --color-test-notice-bg: #fefaf6;\n  --color-test-notice-border: #f6dcb7;\n  --color-card-bg: linear-gradient(145deg, #ffffff, #f8f9fa);\n  --color-card-border: #ced4da;\n  --color-card-shadow: rgba(0, 0, 0, 0.1);\n  --color-link: #007bff;\n  --color-header: #343a40;\n  --color-label: #495057;\n  --color-input-border: #ced4da;\n  --color-input-text: #495057;\n  --color-focus-border: #007bff;\n  --color-submit-btn-bg: #007bff;\n  --color-submit-btn-text: #ffffff;\n  --color-error: #dc3545;\n  --color-required: #ff6d5a;\n  --color-clear-button-bg: #6c757d;\n  --color-html-text: #343a40;\n  --color-html-link: #007bff;\n  --color-header-subtext: #6c757d;\n  --border-radius-card: 12px;\n  --border-radius-input: 8px;\n  --border-radius-clear-btn: 50%;\n  --card-border-radius: 12px;\n  --padding-container-top: 40px;\n  --padding-card: 32px;\n  --padding-test-notice-vertical: 12px;\n  --padding-test-notice-horizontal: 24px;\n  --margin-bottom-card: 20px;\n  --padding-form-input: 14px;\n  --card-padding: 32px;\n  --card-margin-bottom: 20px;\n  --container-width: 500px;\n  --submit-btn-height: 50px;\n  --checkbox-size: 20px;\n  --box-shadow-card: 0px 6px 20px 0px var(--color-card-shadow);\n  --opacity-placeholder: 0.6;\n  --spacing-question-gap: 320px; /* Added for question spacing */\n}\n\n/* Add company logo to form header */\n.form-header {\n\tposition: relative;\n\ttext-align: center;\n\tpadding-top: 80px; /* Space for logo */\n\tmargin-bottom: 20px;\n}\n\n.form-header::before {\n\tcontent: '';\n\tdisplay: block;\n\twidth: 200px; /* Adjust based on logo size */\n\theight: 60px; /* Adjust based on logo size */\n\tbackground-image: url('https://d1rdz15x9x7c4f.cloudfront.net/assets/payload-images/oc-blue-logo.svg');\n\tbackground-size: contain;\n\tbackground-repeat: no-repeat;\n\tbackground-position: center;\n\tposition: absolute;\n\ttop: 0;\n\tleft: 50%;\n\ttransform: translateX(-50%);\n}\n\n/* Ensure form title and description don't overlap */\n.form-header h1, .form-header p {\n\tposition: relative;\n\tz-index: 1;\n}\n\n/* Hide the 'Form automated with' footer */\n.form-footer, [class*=\"form-footer\"], [class*=\"powered-by\"], [class*=\"branding\"] {\n\tdisplay: none !important;\n}\n\n/* Ensure form inputs are modern and clean */\ninput, select, textarea {\n\tborder: 1px solid var(--color-input-border);\n\tborder-radius: var(--border-radius-input);\n\tpadding: var(--padding-form-input);\n\tfont-size: var(--font-size-input);\n\tfont-family: var(--font-family);\n\tcolor: var(--color-input-text);\n}\n\ninput:focus, select:focus, textarea:focus {\n\tborder-color: var(--color-focus-border);\n\tbox-shadow: 0 0 5px rgba(0, 123, 255, 0.3);\n\toutline: none;\n}\n\n/* Style submit button */\nbutton[type=\"submit\"] {\n\tbackground-color: var(--color-submit-btn-bg);\n\tcolor: var(--color-submit-btn-text);\n\tborder-radius: var(--border-radius-input);\n\theight: var(--submit-btn-height);\n\tfont-weight: var(--font-weight-bold);\n\tfont-size: var(--font-size-input);\n\ttransition: background-color 0.3s ease;\n}\n\nbutton[type=\"submit\"]:hover {\n\tbackground-color: #0056b3;\n}",
          "appendAttribution": false
        },
        "formTitle": "Customer Feedback Questions for IT Services",
        "formFields": {
          "values": [
            {
              "fieldLabel": "What is your Name?",
              "requiredField": true
            },
            {
              "fieldType": "email",
              "fieldLabel": "Email ID",
              "requiredField": true
            },
            {
              "fieldLabel": "Contact Number",
              "placeholder": "(e.g, +1234567890)",
              "requiredField": true
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "How was the cleanliness of the dining area?",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Very Dissatisfied"
                  },
                  {
                    "option": "Dissatisfied"
                  },
                  {
                    "option": "Neutral"
                  },
                  {
                    "option": "Satisfied"
                  },
                  {
                    "option": "Very Satisfied"
                  }
                ]
              },
              "requiredField": true
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Did you like the taste of the food?",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Yes"
                  },
                  {
                    "option": "No"
                  }
                ]
              },
              "requiredField": true
            },
            {
              "fieldLabel": "What dish did you enjoy the most?",
              "requiredField": true
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Was your order accurate and timely?",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Yes"
                  },
                  {
                    "option": "No"
                  }
                ]
              },
              "requiredField": true
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Was our staff polite and helpful?",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Yes"
                  },
                  {
                    "option": "No"
                  }
                ]
              },
              "requiredField": true
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "Was the food presentation appealing?",
              "fieldOptions": {
                "values": [
                  {
                    "option": "Good"
                  },
                  {
                    "option": "Average"
                  },
                  {
                    "option": "Bad"
                  },
                  {
                    "option": "Very Bad"
                  }
                ]
              },
              "requiredField": true
            },
            {
              "fieldType": "dropdown",
              "fieldLabel": "How would you rate your overall dining experience?",
              "fieldOptions": {
                "values": [
                  {
                    "option": "1"
                  },
                  {
                    "option": "2"
                  },
                  {
                    "option": "3"
                  },
                  {
                    "option": "4"
                  },
                  {
                    "option": "5"
                  }
                ]
              },
              "requiredField": true
            },
            {
              "fieldType": "textarea",
              "fieldLabel": "Any additional comments or suggestions?",
              "requiredField": true
            }
          ]
        }
      },
      "notesInFlow": false,
      "typeVersion": 2.2
    },
    {
      "id": "4a36cd39-a72e-4e8c-94c1-458a1eaed29d",
      "name": "Wait: Pause Before Processing",
      "type": "n8n-nodes-base.wait",
      "position": [
        460,
        760
      ],
      "parameters": {
        "amount": 10
      },
      "typeVersion": 1.1
    },
    {
      "id": "38d3fdab-d3df-44d4-80af-b3427095c551",
      "name": "Append or Update Row in Google Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        680,
        760
      ],
      "parameters": {
        "columns": {
          "value": {
            "Name": "={{ $json['What is your Name?'] }}",
            "E-Mail": "={{ $json['Email ID'] }}",
            "Timestamp": "={{ $json.submittedAt }}",
            "Contact Number": "={{ $json['Contact Number'] }}",
            "Was our staff polite and helpful?": "={{ $json['Was the food presentation appealing?'] }}",
            "What dish did you enjoy the most?": "={{ $json['What dish did you enjoy the most?'] }}",
            "Did you like the taste of the food?": "={{ $json['Did you like the taste of the food?'] }}",
            "Was your order accurate and timely?": "={{ $json['Was your order accurate and timely?'] }}",
            "Was the food presentation appealing?": "={{ $json['Was the food presentation appealing?'] }}",
            "Any additional comments or suggestions?": "={{ $json['Any additional comments or suggestions?'] }}",
            "How was the cleanliness of the dining area?": "={{ $json['How was the cleanliness of the dining area?'] }}",
            "How would you rate your overall dining experience?": "={{ $json['How would you rate your overall dining experience?'] }}"
          },
          "schema": [
            {
              "id": "Timestamp",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Timestamp",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Name",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "E-Mail",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "E-Mail",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Contact Number",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Contact Number",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "How was the cleanliness of the dining area?",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "How was the cleanliness of the dining area?",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Did you like the taste of the food?",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Did you like the taste of the food?",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "What dish did you enjoy the most?",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "What dish did you enjoy the most?",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Was your order accurate and timely?",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Was your order accurate and timely?",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Was our staff polite and helpful?",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Was our staff polite and helpful?",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Was the food presentation appealing?",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Was the food presentation appealing?",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "How would you rate your overall dining experience?",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "How would you rate your overall dining experience?",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Any additional comments or suggestions?",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Any additional comments or suggestions?",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "E-Mail"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 2016314922,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1WFcRiJk_kh_1UZo9PzS07Fsl5WS7zviePzhFOz9hFaA/edit#gid=2016314922",
          "cachedResultName": "Food_feedback"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1WFcRiJk_kh_1UZo9PzS07Fsl5WS7zviePzhFOz9hFaA",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1WFcRiJk_kh_1UZo9PzS07Fsl5WS7zviePzhFOz9hFaA/edit?usp=drivesdk",
          "cachedResultName": "Whatsapp"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "6636ce99-7ebf-4b12-98e6-2d04e4fa663e",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        240,
        220
      ],
      "parameters": {
        "color": 2,
        "width": 520,
        "height": 200,
        "content": "## Description\n\nThis workflow collects customer feedback about food and restaurant experience through a form, stores the responses in a Google Sheet, and optionally notifies the team via email. It helps track guest satisfaction and improve service quality."
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "c77e2a83-9b68-4198-8956-9b80d47c3b57",
  "connections": {
    "Trigger: Form Submitted": {
      "main": [
        [
          {
            "node": "Wait: Pause Before Processing",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait for All Data (Code)": {
      "main": [
        [
          {
            "node": "Send Email: Notify Team About Feedback",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait: Pause Before Processing": {
      "main": [
        [
          {
            "node": "Append or Update Row in Google Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append or Update Row in Google Sheet": {
      "main": [
        []
      ]
    },
    "Google Sheets Trigger: New Feedback Entry": {
      "main": [
        [
          {
            "node": "Wait for All Data (Code)",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}