The Spreadsheet Sorter

    Shared 8/28/2026

    3 views

    Visual Workflow

    JSON Code

    {
      "id": "KHJnlsZcWle6KLss",
      "meta": {
        "instanceId": "131bec35ac383ea8c561c8f97d49286ad827b69f882ba7c2b7a025cf62fcc9a1",
        "templateCredsSetupCompleted": true
      },
      "name": "The Spreadsheet Sorter",
      "tags": [],
      "nodes": [
        {
          "id": "4aa4d5cd-b967-43ad-8d4d-920b3fb534b2",
          "name": "Google Sheets Trigger",
          "type": "n8n-nodes-base.googleSheetsTrigger",
          "position": [
            0,
            0
          ],
          "parameters": {
            "options": {
              "columnsToWatch": [
                "Feedback"
              ]
            },
            "pollTimes": {
              "item": [
                {
                  "mode": "everyMinute"
                }
              ]
            },
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": "gid=0",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1H3YxJQ5zGDd0l4lAFcHgerzVe2wvlclh1Am5WHxo7Ek/edit#gid=0",
              "cachedResultName": "Sheet1"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "1H3YxJQ5zGDd0l4lAFcHgerzVe2wvlclh1Am5WHxo7Ek",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1H3YxJQ5zGDd0l4lAFcHgerzVe2wvlclh1Am5WHxo7Ek/edit?usp=drivesdk",
              "cachedResultName": "The Spreadsheet Sorter"
            }
          },
          "credentials": {
            "googleSheetsTriggerOAuth2Api": {
              "id": "0d56NoncXVfR3a8n",
              "name": "Google Sheets Trigger account"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "f757f2ef-71fa-41a8-ab63-651872a53723",
          "name": "AI Agent",
          "type": "@n8n/n8n-nodes-langchain.agent",
          "position": [
            224,
            0
          ],
          "parameters": {
            "text": "={{ $json.Feedback }}",
            "options": {
              "systemMessage": "Read the text in the \"message\" column.\nCategorise it as one of: bug, feature_request, praise, complaint, or question.\nAlso rate the priority as: low, medium, high, or urgent.\nReply with ONLY two words on one line: the category and the priority.\nExample: bug high\nalso return the user query message\n\n"
            },
            "promptType": "define"
          },
          "typeVersion": 3.1,
          "alwaysOutputData": false
        },
        {
          "id": "14f3490b-5b37-4025-a993-88a25893beb2",
          "name": "OpenAI Chat Model",
          "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
          "position": [
            224,
            224
          ],
          "parameters": {
            "model": {
              "__rl": true,
              "mode": "list",
              "value": "gpt-5-mini"
            },
            "options": {
              "textFormat": {
                "textOptions": {
                  "type": "json_schema",
                  "schema": "{\n  \"type\": \"object\",\n  \"properties\": {\n    \"Category\": {\n      \"type\": \"string\"\n    },\n    \"Priority\": {\n      \"type\": \"string\"\n    },\n    \"Feedback\": {\n      \"type\": \"string\"\n    }\n  },\n  \"additionalProperties\": false,\n  \"required\": [\n    \"Category\",\n    \"Priority\",\n    \"Feedback\"\n  ]\n}"
                }
              }
            },
            "builtInTools": {}
          },
          "credentials": {
            "openAiApi": {
              "id": "amLX2KiMa68qDVQU",
              "name": "n8n free OpenAI API credits"
            }
          },
          "typeVersion": 1.3
        },
        {
          "id": "4fc58d5f-cdfe-47b0-aaa4-b7894adceb92",
          "name": "Append or update row in sheet",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            592,
            0
          ],
          "parameters": {
            "columns": {
              "value": {
                "Category": "={{ $json.output.parseJson().Category }}",
                "Feedback": "={{ $json.output.parseJson().Feedback }}",
                "Priority": "={{ $json.output.parseJson().Priority }}"
              },
              "schema": [
                {
                  "id": "Feedback",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "required": false,
                  "displayName": "Feedback",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Category",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "required": false,
                  "displayName": "Category",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Priority",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "required": false,
                  "displayName": "Priority",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [
                "Feedback"
              ],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "appendOrUpdate",
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": "gid=0",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1H3YxJQ5zGDd0l4lAFcHgerzVe2wvlclh1Am5WHxo7Ek/edit#gid=0",
              "cachedResultName": "Sheet1"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "1H3YxJQ5zGDd0l4lAFcHgerzVe2wvlclh1Am5WHxo7Ek",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1H3YxJQ5zGDd0l4lAFcHgerzVe2wvlclh1Am5WHxo7Ek/edit?usp=drivesdk",
              "cachedResultName": "The Spreadsheet Sorter"
            }
          },
          "credentials": {
            "googleSheetsOAuth2Api": {
              "id": "NJLv0xhJSWPowP1g",
              "name": "Google Sheets account"
            }
          },
          "typeVersion": 4.7
        }
      ],
      "active": true,
      "pinData": {},
      "settings": {
        "binaryMode": "separate",
        "executionOrder": "v1"
      },
      "versionId": "9462548a-0c93-4413-a565-e130cd181e16",
      "nodeGroups": [],
      "connections": {
        "AI Agent": {
          "main": [
            [
              {
                "node": "Append or update row in sheet",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "OpenAI Chat Model": {
          "ai_languageModel": [
            [
              {
                "node": "AI Agent",
                "type": "ai_languageModel",
                "index": 0
              }
            ]
          ]
        },
        "Google Sheets Trigger": {
          "main": [
            [
              {
                "node": "AI Agent",
                "type": "main",
                "index": 0
              }
            ]
          ]
        }
      }
    }