{
  "name": "Reddit Sentiment Analysis for Apple WWDC25 with Gemini AI and Google Sheets",
  "nodes": [
    {
      "id": "d003d118-f10d-401b-9b48-642294003248",
      "name": "When clicking ‘Execute workflow’",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -720,
        -440
      ]
    },
    {
      "id": "69f49159-25a6-48e4-8040-20e2fd08d7e3",
      "name": "Get status",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -280,
        -440
      ]
    },
    {
      "id": "17a043bf-9d13-4515-8b54-3689ff8d636b",
      "name": "Get data",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        140,
        -520
      ]
    },
    {
      "id": "420403f7-ed02-40ee-b5d7-50d949c41705",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        -80,
        -440
      ]
    },
    {
      "id": "c0bad055-e7fc-4a9e-832a-faaa1fa03a86",
      "name": "scrap reddit",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -500,
        -440
      ]
    },
    {
      "id": "7051599d-a0b4-454b-8a56-49437d43388a",
      "name": "Wait",
      "type": "n8n-nodes-base.wait",
      "position": [
        140,
        -320
      ]
    },
    {
      "id": "e319d58e-bb9b-40b3-84ce-1386c2a1adac",
      "name": "Text Classifier",
      "type": "@n8n/n8n-nodes-langchain.textClassifier",
      "position": [
        620,
        -320
      ]
    },
    {
      "id": "712010c8-688b-4f85-9809-a2489821e9b9",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        640,
        -140
      ]
    },
    {
      "id": "d5d29fe0-b1b5-4221-8bbd-d074247a1f8f",
      "name": "Edit Fields",
      "type": "n8n-nodes-base.set",
      "position": [
        980,
        -420
      ]
    },
    {
      "id": "8d937cba-f73e-4c27-b387-656057a8e38c",
      "name": "Google Gemini Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        1500,
        -200
      ]
    },
    {
      "id": "0bb0f19b-6879-4d1c-822d-e3cb2b66c4e4",
      "name": "Split Out",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1140,
        -420
      ]
    },
    {
      "id": "06c2dace-86b3-4c42-82b4-2898b1c3701a",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        400,
        -520
      ]
    },
    {
      "id": "db7d74db-cb3a-423e-be88-fb2a8d7a2439",
      "name": "format sentiment",
      "type": "n8n-nodes-base.set",
      "position": [
        2180,
        -420
      ]
    },
    {
      "id": "e7969e75-f137-4d25-97b1-918549a419e6",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        1940,
        -480
      ]
    },
    {
      "id": "3e19ac8e-69e3-40c7-a4a7-7076e52ed0d5",
      "name": "Append Sentiments",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2580,
        -420
      ]
    },
    {
      "id": "7d73ce32-bea0-4b11-b062-f22752c2463b",
      "name": "Sentiment Analysis per comment",
      "type": "@n8n/n8n-nodes-langchain.sentimentAnalysis",
      "position": [
        1480,
        -420
      ]
    },
    {
      "id": "c96807b8-c235-4ad7-bc60-c5009fa4f770",
      "name": "Filter",
      "type": "n8n-nodes-base.filter",
      "position": [
        2380,
        -420
      ]
    },
    {
      "id": "26187370-e043-4e93-9d22-96172fbd9c8e",
      "name": "No category",
      "type": "n8n-nodes-base.set",
      "position": [
        1000,
        -200
      ]
    },
    {
      "id": "156e304d-5493-4416-bf45-0a6ebd267948",
      "name": "edit for Sentiment analysis",
      "type": "n8n-nodes-base.set",
      "position": [
        1300,
        -420
      ]
    },
    {
      "id": "ae9b39de-488b-4cee-a011-285bd344ed50",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -540,
        -560
      ],
      "parameters": {
        "width": 200,
        "height": 440,
        "content": "Scrap Linkedin for all relevant posts"
      }
    },
    {
      "id": "e6de27a3-09a2-4ace-9b0e-63a8d40acd3e",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -320,
        -560
      ],
      "parameters": {
        "width": 380,
        "height": 440,
        "content": "Get the status of the scrap, IF running, we wait for a few seconds until the results are returned"
      }
    },
    {
      "id": "b1e97d96-d03f-4bf4-8972-fb501b64cdc6",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        100,
        -560
      ],
      "parameters": {
        "width": 220,
        "height": 500,
        "content": "Fetch the response from the API call. This includes a list of all the reddit posts we have"
      }
    },
    {
      "id": "a161c6ea-f338-40f6-bdb8-62ddfd973db8",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        340,
        -620
      ],
      "parameters": {
        "width": 200,
        "height": 540,
        "content": "Loop items so as not to overwhelm the AI with multiple searched"
      }
    },
    {
      "id": "c8bc1a9c-00aa-4850-ac84-3b811de0e3b2",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        600,
        -440
      ],
      "parameters": {
        "width": 300,
        "height": 480,
        "content": "Text classification for only WWDC related events. We loop No category back to maintain the flow"
      }
    },
    {
      "id": "1c064180-28d5-4490-b9f8-87694eb6b3b5",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        940,
        -540
      ],
      "parameters": {
        "width": 500,
        "height": 580,
        "content": "Simple data transformation"
      }
    },
    {
      "id": "2d35e7a8-c43f-4363-9eab-bd6d2a343748",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1460,
        -540
      ],
      "parameters": {
        "width": 380,
        "height": 580,
        "content": "Run Our Sentiment analysis via AI to understand what the users were feeling. This can be broken down into nuanced emotions to capture more details"
      }
    },
    {
      "id": "b7e25c6d-ab06-46b5-9a26-d822c3696108",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1860,
        -540
      ],
      "parameters": {
        "width": 260,
        "height": 440,
        "content": "Merge the paths and sentiments"
      }
    },
    {
      "id": "9f5bdb9f-a0f8-42f5-940f-d83c364053f2",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2140,
        -540
      ],
      "parameters": {
        "width": 600,
        "height": 440,
        "content": "Filter only items that are of a clear sentiment and updates these to a table"
      }
    }
  ],
  "connections": {
    "Wait": {
      "main": [
        [
          {
            "node": "Get status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge": {
      "main": [
        [
          {
            "node": "format sentiment",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter": {
      "main": [
        [
          {
            "node": "Append Sentiments",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch": {
      "main": [
        [
          {
            "node": "Get data",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get data": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "edit for Sentiment analysis",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get status": {
      "main": [
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "No category": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "scrap reddit": {
      "main": [
        [
          {
            "node": "Get status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [],
        [
          {
            "node": "Text Classifier",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Text Classifier": {
      "main": [
        [
          {
            "node": "Edit Fields",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "No category",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "format sentiment": {
      "main": [
        [
          {
            "node": "Filter",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append Sentiments": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Text Classifier",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Sentiment Analysis per comment",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "edit for Sentiment analysis": {
      "main": [
        [
          {
            "node": "Sentiment Analysis per comment",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Sentiment Analysis per comment": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ],
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 2
          }
        ],
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 3
          }
        ],
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 4
          }
        ],
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 5
          }
        ]
      ]
    },
    "When clicking ‘Execute workflow’": {
      "main": [
        [
          {
            "node": "scrap reddit",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}