{
  "name": "Generate podcast topic ideas from RSS feeds with Gemini, SerpAPI and Notion",
  "nodes": [
    {
      "id": "89c3592e-3f55-4700-b638-c69fe4c10b01",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        800,
        160
      ]
    },
    {
      "id": "c9859875-a616-45ff-a862-02926150080a",
      "name": "Create a database page",
      "type": "n8n-nodes-base.notion",
      "position": [
        1472,
        -48
      ]
    },
    {
      "id": "5bcdfc2a-dcf4-47d4-b7b9-6dec9df665f8",
      "name": "Split Out",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1264,
        -48
      ]
    },
    {
      "id": "8cf50930-be2c-499d-bd5d-29dfe6809669",
      "name": "SerpAPI",
      "type": "@n8n/n8n-nodes-langchain.toolSerpApi",
      "position": [
        960,
        160
      ]
    },
    {
      "id": "d0c34d28-b83d-4daf-b144-031e0ab19638",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -432,
        -640
      ],
      "parameters": {
        "width": 2112,
        "height": 992,
        "content": "## How it works\n\nThis workflow automatically fetches fresh content from specified RSS feeds daily. It filters for recent articles (last 24h), then leverages Google Gemini AI and SerAPI to generate uni"
      }
    },
    {
      "id": "c91788c4-1b38-485d-8c07-b325dece377b",
      "name": "Send a text message",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1376,
        144
      ]
    },
    {
      "id": "575f124b-ee06-44bf-9f40-0d6081007243",
      "name": "Execute every 24H",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -96,
        -80
      ]
    },
    {
      "id": "3f10b653-1525-4220-88f3-ebce23f61ebc",
      "name": "Get list of RSS channels/sites",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        64,
        -80
      ]
    },
    {
      "id": "a2d839f2-5713-4be9-a05d-8a0a42988f60",
      "name": "Loop Over Rows In Sheet",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        224,
        -80
      ]
    },
    {
      "id": "88f2edd0-c75d-4aa7-b60d-d15a45323998",
      "name": "Scrape RSS for each link",
      "type": "n8n-nodes-base.rssFeedRead",
      "position": [
        400,
        96
      ]
    },
    {
      "id": "2ce3b84f-e3f3-4acc-81df-13bd66e0b654",
      "name": "Filter for latest content (Last 24H)",
      "type": "n8n-nodes-base.filter",
      "position": [
        416,
        -80
      ]
    },
    {
      "id": "faeae6a0-bc76-4123-a556-095f1f1b8e07",
      "name": "Aggregate Results",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        688,
        -32
      ]
    },
    {
      "id": "513090ff-dcc0-475c-95e1-aad89304c6de",
      "name": "AI Agent Prompt For Content Research",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        864,
        -48
      ]
    },
    {
      "id": "4656dcbb-537c-4152-ada2-05c4c4690a93",
      "name": "Structured Output Parser - fixed JSON format",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1088,
        160
      ]
    },
    {
      "id": "e0c5b6d6-8330-4be3-9b76-64be45681a38",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -192,
        -224
      ],
      "parameters": {
        "width": 800,
        "height": 528,
        "content": "## 1. Gather & Filter Latest Content\nInitiates daily, fetching RSS feed URLs from Google Sheets. It then scrapes each feed and filters content to include only posts published within the last 24 hours,"
      }
    },
    {
      "id": "ad1fc879-22ae-485f-94e7-30e47db36285",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        640,
        -224
      ],
      "parameters": {
        "width": 576,
        "height": 528,
        "content": "## 2. Generate Topics with AI\n\nAggregates filtered content and sends it to Google Gemini AI. Gemini, assisted by SerAPI for external context, generates detailed podcast topic ideas, complete with cont"
      }
    },
    {
      "id": "7fa30f14-3ea1-4954-9f5a-8644f32fbf9f",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1248,
        -224
      ],
      "parameters": {
        "width": 400,
        "height": 528,
        "content": "## 3. Store Ideas & Notify\nTakes each AI-generated topic idea and creates a new page in a specified Notion database. After successful creation, a Telegram message is sent to confirm the workflow's exe"
      }
    }
  ],
  "connections": {
    "SerpAPI": {
      "ai_tool": [
        [
          {
            "node": "AI Agent Prompt For Content Research",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "Create a database page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate Results": {
      "main": [
        [
          {
            "node": "AI Agent Prompt For Content Research",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Execute every 24H": {
      "main": [
        [
          {
            "node": "Get list of RSS channels/sites",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create a database page": {
      "main": [
        [
          {
            "node": "Send a text message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Rows In Sheet": {
      "main": [
        [
          {
            "node": "Filter for latest content (Last 24H)",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Scrape RSS for each link",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent Prompt For Content Research",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Scrape RSS for each link": {
      "main": [
        [
          {
            "node": "Loop Over Rows In Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get list of RSS channels/sites": {
      "main": [
        [
          {
            "node": "Loop Over Rows In Sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent Prompt For Content Research": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter for latest content (Last 24H)": {
      "main": [
        [
          {
            "node": "Aggregate Results",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser - fixed JSON format": {
      "ai_outputParser": [
        [
          {
            "node": "AI Agent Prompt For Content Research",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    }
  }
}