{
  "openruna_format": "flow-graph-v1",
  "title": "Deep Research Report Generation Using Open Router, Google Search, Webhook/Telegram and Notion",
  "slug": "deep-research-report-generation-using-open-router-google-search-webhooktelegram-and-notion",
  "source_filename": "2054_Deep_Research_Report_Generation_With_Open_Router_Google_Search_Webhook_Telegram_and_Notion.json",
  "nodes": [
    {
      "id": "Telegram Trigger",
      "name": "Telegram Trigger",
      "integration": "telegram",
      "kind": "trigger"
    },
    {
      "id": "Simple Memory",
      "name": "Simple Memory",
      "integration": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "kind": "action"
    },
    {
      "id": "Structured Output Parser",
      "name": "Structured Output Parser",
      "integration": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "kind": "action"
    },
    {
      "id": "Switch",
      "name": "Switch",
      "integration": "switch",
      "kind": "logic"
    },
    {
      "id": "Strategy Agent",
      "name": "Strategy Agent",
      "integration": "@n8n/n8n-nodes-langchain.agent",
      "kind": "action"
    },
    {
      "id": "Search Query Agent",
      "name": "Search Query Agent",
      "integration": "@n8n/n8n-nodes-langchain.agent",
      "kind": "action"
    },
    {
      "id": "Structured Output Parser1",
      "name": "Structured Output Parser1",
      "integration": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "kind": "action"
    },
    {
      "id": "Split Out",
      "name": "Split Out",
      "integration": "splitOut",
      "kind": "logic"
    },
    {
      "id": "Loop Over Queries",
      "name": "Loop Over Queries",
      "integration": "splitInBatches",
      "kind": "logic"
    },
    {
      "id": "HTTP Request",
      "name": "HTTP Request",
      "integration": "httpRequest",
      "kind": "action"
    },
    {
      "id": "Edit Fields",
      "name": "Edit Fields",
      "integration": "set",
      "kind": "logic"
    },
    {
      "id": "OpenAI",
      "name": "OpenAI",
      "integration": "@n8n/n8n-nodes-langchain.openAi",
      "kind": "action"
    },
    {
      "id": "HTTP Request1",
      "name": "HTTP Request1",
      "integration": "httpRequest",
      "kind": "action"
    },
    {
      "id": "Aggregate",
      "name": "Aggregate",
      "integration": "aggregate",
      "kind": "logic"
    },
    {
      "id": "AI Agent",
      "name": "AI Agent",
      "integration": "@n8n/n8n-nodes-langchain.agent",
      "kind": "action"
    },
    {
      "id": "OpenAI1",
      "name": "OpenAI1",
      "integration": "@n8n/n8n-nodes-langchain.openAi",
      "kind": "action"
    },
    {
      "id": "Notion",
      "name": "Notion",
      "integration": "notion",
      "kind": "action"
    },
    {
      "id": "Notion1",
      "name": "Notion1",
      "integration": "notion",
      "kind": "action"
    },
    {
      "id": "HTTP Request2",
      "name": "HTTP Request2",
      "integration": "httpRequest",
      "kind": "action"
    },
    {
      "id": "Convert to HTML",
      "name": "Convert to HTML",
      "integration": "markdown",
      "kind": "action"
    },
    {
      "id": "HTML to Array",
      "name": "HTML to Array",
      "integration": "set",
      "kind": "logic"
    },
    {
      "id": "Tags to Items",
      "name": "Tags to Items",
      "integration": "splitOut",
      "kind": "logic"
    },
    {
      "id": "Notion Block Generator",
      "name": "Notion Block Generator",
      "integration": "@n8n/n8n-nodes-langchain.chainLlm",
      "kind": "action"
    },
    {
      "id": "Google Gemini Chat Model",
      "name": "Google Gemini Chat Model",
      "integration": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "kind": "action"
    },
    {
      "id": "Parse JSON blocks",
      "name": "Parse JSON blocks",
      "integration": "set",
      "kind": "logic"
    },
    {
      "id": "Valid Blocks",
      "name": "Valid Blocks",
      "integration": "filter",
      "kind": "logic"
    },
    {
      "id": "For Each Block...",
      "name": "For Each Block...",
      "integration": "splitInBatches",
      "kind": "logic"
    },
    {
      "id": "Get Existing Row",
      "name": "Get Existing Row",
      "integration": "notion",
      "kind": "action"
    },
    {
      "id": "Code",
      "name": "Code",
      "integration": "code",
      "kind": "logic"
    },
    {
      "id": "Aggregate1",
      "name": "Aggregate1",
      "integration": "aggregate",
      "kind": "logic"
    },
    {
      "id": "OpenRouter Chat Model",
      "name": "OpenRouter Chat Model",
      "integration": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "kind": "action"
    },
    {
      "id": "OpenRouter Chat Model1",
      "name": "OpenRouter Chat Model1",
      "integration": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "kind": "action"
    },
    {
      "id": "OpenRouter Chat Model2",
      "name": "OpenRouter Chat Model2",
      "integration": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "kind": "action"
    },
    {
      "id": "Webhook",
      "name": "Webhook",
      "integration": "webhook",
      "kind": "trigger"
    },
    {
      "id": "Respond to Webhook",
      "name": "Respond to Webhook",
      "integration": "respondToWebhook",
      "kind": "action"
    },
    {
      "id": "Respond to Webhook1",
      "name": "Respond to Webhook1",
      "integration": "respondToWebhook",
      "kind": "action"
    },
    {
      "id": "HTTP Request3",
      "name": "HTTP Request3",
      "integration": "httpRequest",
      "kind": "action"
    }
  ],
  "edges": [
    {
      "from": "Switch",
      "to": "Respond to Webhook"
    },
    {
      "from": "Switch",
      "to": "Respond to Webhook1"
    },
    {
      "from": "Strategy Agent",
      "to": "Switch"
    },
    {
      "from": "Search Query Agent",
      "to": "Split Out"
    },
    {
      "from": "Split Out",
      "to": "Loop Over Queries"
    },
    {
      "from": "Loop Over Queries",
      "to": "Aggregate"
    },
    {
      "from": "Loop Over Queries",
      "to": "HTTP Request"
    },
    {
      "from": "HTTP Request",
      "to": "Edit Fields"
    },
    {
      "from": "Edit Fields",
      "to": "OpenAI"
    },
    {
      "from": "OpenAI",
      "to": "HTTP Request1"
    },
    {
      "from": "HTTP Request1",
      "to": "Loop Over Queries"
    },
    {
      "from": "Aggregate",
      "to": "AI Agent"
    },
    {
      "from": "AI Agent",
      "to": "Get Existing Row"
    },
    {
      "from": "OpenAI1",
      "to": "Notion"
    },
    {
      "from": "Notion1",
      "to": "HTTP Request3"
    },
    {
      "from": "Convert to HTML",
      "to": "HTML to Array"
    },
    {
      "from": "HTML to Array",
      "to": "Tags to Items"
    },
    {
      "from": "Tags to Items",
      "to": "Notion Block Generator"
    },
    {
      "from": "Notion Block Generator",
      "to": "Parse JSON blocks"
    },
    {
      "from": "Parse JSON blocks",
      "to": "Valid Blocks"
    },
    {
      "from": "Valid Blocks",
      "to": "For Each Block..."
    },
    {
      "from": "For Each Block...",
      "to": "Aggregate1"
    },
    {
      "from": "For Each Block...",
      "to": "HTTP Request2"
    },
    {
      "from": "HTTP Request2",
      "to": "For Each Block..."
    },
    {
      "from": "Get Existing Row",
      "to": "Convert to HTML"
    },
    {
      "from": "Code",
      "to": "OpenAI1"
    },
    {
      "from": "Aggregate1",
      "to": "Notion1"
    },
    {
      "from": "Notion",
      "to": "Search Query Agent"
    },
    {
      "from": "Webhook",
      "to": "Strategy Agent"
    },
    {
      "from": "Respond to Webhook1",
      "to": "Code"
    }
  ]
}