{
  "workflow": {
    "id": 5974,
    "name": "Real-time sales pipeline analytics with Bright Data, OpenAI, and Google Sheets",
    "views": 559,
    "recentViews": 0,
    "totalViews": 559,
    "createdAt": "2025-07-13T19:03:18.295Z",
    "description": "*This workflow contains community nodes that are only compatible with the self-hosted version of n8n.*\n\nThis workflow automatically tracks key sales pipeline metrics—new leads, deal stages, win rates—and sends actionable insights to your team. Eliminate manual CRM exports and stay on top of revenue health.\n\n## Overview\n\nThe automation queries your CRM API (HubSpot, Salesforce, or Pipedrive) on a schedule, pulls pipeline data, and feeds it into OpenAI for anomaly detection (e.g., stalled deals). Summaries and alerts appear in Slack, while daily snapshots are archived in Google Sheets for trend analysis.\n\n## Tools Used\n\n- **n8n** – Pipeline orchestration\n- **CRM API** – Connects to your chosen CRM\n- **OpenAI** – Detects anomalies and highlights risks\n- **Slack** – Notifies reps and managers in real time\n- **Google Sheets** – Stores historical pipeline data\n\n## How to Install\n\n1. **Import the Workflow** into n8n.\n2. **Connect Your CRM**: Provide API credentials in the HTTP Request node.\n3. **Set Up OpenAI**: Add your API key.\n4. **Authorize Slack & Google Sheets**.\n5. **Customize Thresholds**: Adjust what constitutes a stalled deal or low conversion.\n\n## Use Cases\n\n- **Sales Management**: Monitor pipeline health without dashboards.\n- **Revenue Operations**: Detect bottlenecks early.\n- **Forecasting**: Use historical snapshots to improve predictions.\n- **Rep Coaching**: Alert reps when deals stagnate.\n\n## Connect with Me\n\n- **Website**: https://www.nofluff.online\n- **YouTube**: https://www.youtube.com/@YaronBeen/videos\n- **LinkedIn**: https://www.linkedin.com/in/yaronbeen/\n- **Get Bright Data**: https://get.brightdata.com/1tndi4600b25 (Using this link supports my free workflows with a small commission)\n\n#n8n #automation #salespipeline #crm #openai #slackalerts #n8nworkflow #nocode #revenueops",
    "workflow": {
      "id": "eFXzg1O4PWujvjQZ",
      "meta": {
        "instanceId": "c38e3b8a7e4240e6cdca062743f016c1029f385bf40345b6291939dfd83bfd77",
        "templateCredsSetupCompleted": true
      },
      "name": "31  Monitor Sales Pipeline Metrics",
      "tags": [],
      "nodes": [
        {
          "id": "df762772-ed58-47e6-b95c-cd75d399d230",
          "name": "⚡ Trigger: Start CRM Scraper",
          "type": "n8n-nodes-base.manualTrigger",
          "position": [
            -80,
            0
          ],
          "parameters": {},
          "typeVersion": 1
        },
        {
          "id": "87a7f944-eb5f-4554-a296-83270d2069f5",
          "name": "🔗 Set Source URL (CRM/JSONPlaceholder)",
          "type": "n8n-nodes-base.set",
          "position": [
            120,
            0
          ],
          "parameters": {
            "options": {},
            "assignments": {
              "assignments": [
                {
                  "id": "7a1b9454-dbc2-4805-899b-268a0cfc2cdf",
                  "name": "URL",
                  "type": "string",
                  "value": "https://jsonplaceholder.typicode.com/users"
                }
              ]
            }
          },
          "typeVersion": 3.4
        },
        {
          "id": "fb1472a0-27d2-4d73-ae55-7853ec9c7372",
          "name": "🤖 Monitor Sales Pipeline (CRM AI Agent)",
          "type": "@n8n/n8n-nodes-langchain.agent",
          "position": [
            400,
            0
          ],
          "parameters": {
            "text": "=You are a data analyst connected to Bright Data MCP scraping tool.\n\nScrape CRM-like sales data from this public API:\n{{ $json.URL }}\n\nTreat each user as a sales lead. For each entry, extract and simulate the following fields:\n\n{\n\"leadId\": <use id>,\n\"rep\": <use name>,\n\"stage\": <use username as deal stage>,\n\"value\": <convert address.zipcode to number and use as deal value>,\n\"status\": <use company.name to randomly assign status as \"open\", \"won\", or \"lost\">\n}\n\nThen:\n\nCalculate total number of leads\n\nTotal value of pipeline\n\nCount of leads in each stage\n\nCount of deals by status: open, won, lost\n\nIdentify top 3 reps based on simulated deal value",
            "options": {},
            "promptType": "define",
            "hasOutputParser": true
          },
          "typeVersion": 2
        },
        {
          "id": "f7aac7e3-10e8-4564-a634-391f5285e917",
          "name": "🧠 AI Brain ",
          "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
          "position": [
            300,
            260
          ],
          "parameters": {
            "model": {
              "__rl": true,
              "mode": "list",
              "value": "gpt-4.1-mini"
            },
            "options": {}
          },
          "credentials": {
            "openAiApi": {
              "id": "credential-id",
              "name": "openAiApi Credential"
            }
          },
          "typeVersion": 1.2
        },
        {
          "id": "9b888f4b-be89-43b1-819e-eafb3bb02643",
          "name": "🌐 Bright Data MCP",
          "type": "n8n-nodes-mcp.mcpClientTool",
          "position": [
            440,
            260
          ],
          "parameters": {
            "toolName": "scrape_as_markdown",
            "operation": "executeTool",
            "toolParameters": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Tool_Parameters', ``, 'json') }}"
          },
          "credentials": {
            "mcpClientApi": {
              "id": "credential-id",
              "name": "mcpClientApi Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "83dfb033-a62e-47dc-bdea-be936f0534d9",
          "name": "🧩 Split Metrics for Sheet Rows",
          "type": "n8n-nodes-base.code",
          "position": [
            800,
            0
          ],
          "parameters": {
            "jsCode": "return (() => {\nconst result = [];\n\nconst data = items[0].json.output;\n\n// 1. Total Leads\nresult.push({\n\"Metric Type\": \"Summary\",\n\"Label\": \"Total Leads\",\n\"Value\": data.totalLeads\n});\n\n// 2. Total Pipeline Value\nresult.push({\n\"Metric Type\": \"Summary\",\n\"Label\": \"Total Value\",\n\"Value\": data.totalPipelineValue\n});\n\n// 3. Status Breakdown\nfor (const status in data.statusBreakdown) {\nresult.push({\n\"Metric Type\": \"Status Count\",\n\"Label\": status,\n\"Value\": data.statusBreakdown[status]\n});\n}\n\n// 4. Stage Breakdown\nfor (const stage in data.stageBreakdown) {\nresult.push({\n\"Metric Type\": \"Stage Count\",\n\"Label\": stage,\n\"Value\": data.stageBreakdown[stage]\n});\n}\n\n// 5. Top Reps\nfor (const rep of data.topReps) {\nresult.push({\n\"Metric Type\": \"Top Reps\",\n\"Label\": rep.rep,\n\"Value\": rep.totalValue\n});\n}\n\nreturn result.map(r => ({ json: r }));\n})();"
          },
          "typeVersion": 2
        },
        {
          "id": "bde8a138-5106-4278-b86a-a5b2e1719706",
          "name": "📊 Store CRM Insights (Google Sheet)",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            1000,
            0
          ],
          "parameters": {
            "columns": {
              "value": {
                "Label": "={{ $json.Label }}",
                "Value": "={{ $json.Value }}",
                "Metric Type": "={{ $json['Metric Type'] }}"
              },
              "schema": [
                {
                  "id": "Metric Type",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Metric Type",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Label",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Label",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Value",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "required": false,
                  "displayName": "Value",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "defineBelow",
              "matchingColumns": [],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "append",
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": "gid=0",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D8VmSbOUEf1jQWQ-_BaHVV_HOdb_d5DIyXzRSMlU5xs/edit#gid=0",
              "cachedResultName": "Sheet1"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "1D8VmSbOUEf1jQWQ-_BaHVV_HOdb_d5DIyXzRSMlU5xs",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1D8VmSbOUEf1jQWQ-_BaHVV_HOdb_d5DIyXzRSMlU5xs/edit?usp=drivesdk",
              "cachedResultName": "Monitor Sales Pipeline Metrics"
            }
          },
          "credentials": {
            "googleSheetsOAuth2Api": {
              "id": "credential-id",
              "name": "googleSheetsOAuth2Api Credential"
            }
          },
          "typeVersion": 4.6
        },
        {
          "id": "d363f7ce-1ff8-4dd6-9517-aa0ffaa6dc32",
          "name": "Sticky Note",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1620,
            -700
          ],
          "parameters": {
            "color": 4,
            "width": 1300,
            "height": 2700,
            "content": "# 🚀 Smart CRM Scraper & Pipeline Health Analyzer (n8n + Bright Data + Google Sheets)\n\nThis automation workflow is perfect for sales ops, marketers, analysts, or even founders who want to:\n\n* 📥 Scrape sales pipeline data from CRM dashboards\n* 📊 Get insights into reps, leads, and statuses\n* 📁 Store it all in Google Sheets automatically — no copy/paste, no coding\n\nLet’s break this into 3 simple sections 👇\n\n---\n\n🔷 SECTION 1: Start & Set Target\n🧩 Combines these nodes:\n\n* ⚡ Trigger: Start CRM Scraper\n* 🔗 Set Source URL (CRM/JSONPlaceholder)\n\n📌 What Happens Here?\nThis section is where your automation begins. You:\n\n1. Manually run the workflow by clicking ▶️ “Execute Workflow”\n2. Define the website or CRM source you want to scrape\n\nExample:\n\n* You paste a mock CRM URL (e.g. [https://jsonplaceholder.typicode.com](https://jsonplaceholder.typicode.com)) — but in a real scenario, it could be a Bright Data-accessible CRM dashboard.\n\n✨ Benefits for Beginners:\n✅ No coding — just click + paste a URL\n✅ Easily swap out URLs for different CRM dashboards\n✅ Full control over when scraping starts\n\n🎯 Icons Summary:\n⚡ Manual Start | 🔗 Source URL Setup\n\n💡 Real-World Use:\nReplace the URL with a live CRM performance dashboard hosted inside Bright Data’s mobile proxy network.\n\n---\n\n🤖 SECTION 2: AI Agent — Scrape + Analyze\n🧩 Combines:\n\n* 🤖 Monitor Sales Pipeline (CRM AI Agent)\n\n  * 🧠 AI Brain (CRM Query Generator)\n  * 🌐 Bright Data MCP (scrape\\_as\\_markdown)\n  * 🧾 Clean JSON Parser (Pipeline Metrics)\n\n📌 What Happens Here?\n\nThis is the “thinking” part of the workflow.\n\n1. 🧠 AI Brain: OpenAI understands the task. It generates instructions like:\n    “Scrape rep names, stages, leads, health from this CRM dashboard as markdown.”\n\n2. 🌐 Bright Data Tool: The MCP tool accesses the page invisibly (like a phone browser) and extracts pipeline data using its scrape\\_as\\_markdown tool.\n\n3. 🧾 Structured Output Parser: Converts the scraped messy text into a structured JSON format like this:\n\n```json\n[\n  {\n    \"rep\": \"Alice\",\n    \"leads\": 22,\n    \"stage\": \"Proposal\",\n    \"status\": \"At Risk\"\n  },\n  ...\n]\n```\n\n✨ Benefits for Beginners:\n✅ Zero scraping code\n✅ Handles login-blocked or bot-protected CRMs via mobile proxies\n✅ Clean data format — easy to use in Sheets or dashboards\n\n🎯 Icons Summary:\n🧠 OpenAI Logic | 🌐 Bright Data Scraper | 🧾 JSON Cleaner\n\n💡 Real-World Use:\nScrape weekly CRM dashboards from tools like HubSpot, Pipedrive, Salesforce (if routed via Bright Data), and turn them into structured performance data.\n\n---\n\n🟨 SECTION 3: Format & Store to Google Sheets\n🧩 Combines:\n\n* 🧩 Split Metrics for Sheet Rows\n* 📊 Store CRM Insights (Google Sheet)\n\n📌 What Happens Here?\n\n1. 🧩 Split JSON: This node breaks the final structured output into individual items (one per sales rep), so each one becomes a row in your spreadsheet.\n\n2. 📊 Google Sheet Node: Adds each row into a connected Google Sheet — storing columns like:\n\n| rep   | leads | stage     | status  |\n| ----- | ----- | --------- | ------- |\n| Alice | 22    | Proposal  | At Risk |\n| Bob   | 17    | Qualified | Healthy |\n\n✨ Benefits for Beginners:\n✅ Saves all CRM data automatically — no manual data entry\n✅ Compatible with Google Data Studio / Looker / Excel\n✅ Great for sharing with managers or teams\n\n🎯 Icons Summary:\n🧩 JSON Splitter | 📊 Sheet Writer\n\n💡 Real-World Use:\nUse it for live pipeline visibility. Sync Sheets with dashboards or reporting tools, or use for daily monitoring via automations.\n\n---\n\n📦 Final Summary Table\n\n| Step       | Node Name                                 | Purpose                                      |\n| ---------- | ----------------------------------------- | -------------------------------------------- |\n| 1️⃣ Input  | ⚡ Trigger: Start CRM Scraper              | Manually trigger the workflow                |\n|            | 🔗 Set Source URL (CRM/JSONPlaceholder)   | Define where to scrape the CRM data from     |\n| 2️⃣ Agent  | 🤖 Monitor Sales Pipeline (CRM AI Agent)  | Smart agent to analyze CRM                   |\n|            | 🧠 AI Brain (CRM Query Generator)         | Creates scrape instructions                  |\n|            | 🌐 Bright Data MCP (scrape\\_as\\_markdown) | Executes scrape via MCP mobile network       |\n|            | 🧾 Clean JSON Parser (Pipeline Metrics)   | Converts scrape results into structured data |\n| 3️⃣ Output | 🧩 Split Metrics for Sheet Rows           | Breaks each record into its own row          |\n|            | 📊 Store CRM Insights (Google Sheet)      | Saves data into Google Sheet row-by-row      |\n\n"
          },
          "typeVersion": 1
        },
        {
          "id": "3913ffe7-126f-4162-9533-286d9cb7e010",
          "name": "Sticky Note1",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            300,
            -1060
          ],
          "parameters": {
            "color": 5,
            "width": 420,
            "height": 1260,
            "content": "🤖 SECTION 2: AI Agent — Scrape + Analyze\n🧩 Combines:\n\n* 🤖 Monitor Sales Pipeline (CRM AI Agent)\n\n  * 🧠 AI Brain (CRM Query Generator)\n  * 🌐 Bright Data MCP (scrape\\_as\\_markdown)\n  * 🧾 Clean JSON Parser (Pipeline Metrics)\n\n📌 What Happens Here?\n\nThis is the “thinking” part of the workflow.\n\n1. 🧠 AI Brain: OpenAI understands the task. It generates instructions like:\n    “Scrape rep names, stages, leads, health from this CRM dashboard as markdown.”\n\n2. 🌐 Bright Data Tool: The MCP tool accesses the page invisibly (like a phone browser) and extracts pipeline data using its scrape\\_as\\_markdown tool.\n\n3. 🧾 Structured Output Parser: Converts the scraped messy text into a structured JSON format like this:\n\n```json\n[\n  {\n    \"rep\": \"Alice\",\n    \"leads\": 22,\n    \"stage\": \"Proposal\",\n    \"status\": \"At Risk\"\n  },\n  ...\n]\n```\n\n✨ Benefits for Beginners:\n✅ Zero scraping code\n✅ Handles login-blocked or bot-protected CRMs via mobile proxies\n✅ Clean data format — easy to use in Sheets or dashboards\n\n🎯 Icons Summary:\n🧠 OpenAI Logic | 🌐 Bright Data Scraper | 🧾 JSON Cleaner\n\n💡 Real-World Use:\nScrape weekly CRM dashboards from tools like HubSpot, Pipedrive, Salesforce (if routed via Bright Data), and turn them into structured performance data.\n\n"
          },
          "typeVersion": 1
        },
        {
          "id": "08dd1bdc-e20c-4d67-9d49-d4b8d98dd083",
          "name": "Sticky Note2",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            740,
            -700
          ],
          "parameters": {
            "color": 6,
            "width": 440,
            "height": 900,
            "content": "🟨 SECTION 3: Format & Store to Google Sheets\n🧩 Combines:\n\n* 🧩 Split Metrics for Sheet Rows\n* 📊 Store CRM Insights (Google Sheet)\n\n📌 What Happens Here?\n\n1. 🧩 Split JSON: This node breaks the final structured output into individual items (one per sales rep), so each one becomes a row in your spreadsheet.\n\n2. 📊 Google Sheet Node: Adds each row into a connected Google Sheet — storing columns like:\n\n| rep   | leads | stage     | status  |\n| ----- | ----- | --------- | ------- |\n| Alice | 22    | Proposal  | At Risk |\n| Bob   | 17    | Qualified | Healthy |\n\n✨ Benefits for Beginners:\n✅ Saves all CRM data automatically — no manual data entry\n✅ Compatible with Google Data Studio / Looker / Excel\n✅ Great for sharing with managers or teams\n\n🎯 Icons Summary:\n🧩 JSON Splitter | 📊 Sheet Writer\n\n💡 Real-World Use:\nUse it for live pipeline visibility. Sync Sheets with dashboards or reporting tools, or use for daily monitoring via automations.\n\n"
          },
          "typeVersion": 1
        },
        {
          "id": "4f470e7c-148e-4486-b15b-083bcef250af",
          "name": "Sticky Note3",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -120,
            -720
          ],
          "parameters": {
            "color": 3,
            "width": 400,
            "height": 920,
            "content": "🔷 SECTION 1: Start & Set Target\n🧩 Combines these nodes:\n\n* ⚡ Trigger: Start CRM Scraper\n* 🔗 Set Source URL (CRM/JSONPlaceholder)\n\n📌 What Happens Here?\nThis section is where your automation begins. You:\n\n1. Manually run the workflow by clicking ▶️ “Execute Workflow”\n2. Define the website or CRM source you want to scrape\n\nExample:\n\n* You paste a mock CRM URL (e.g. [https://jsonplaceholder.typicode.com](https://jsonplaceholder.typicode.com)) — but in a real scenario, it could be a Bright Data-accessible CRM dashboard.\n\n✨ Benefits for Beginners:\n✅ No coding — just click + paste a URL\n✅ Easily swap out URLs for different CRM dashboards\n✅ Full control over when scraping starts\n\n🎯 Icons Summary:\n⚡ Manual Start | 🔗 Source URL Setup\n\n💡 Real-World Use:\nReplace the URL with a live CRM performance dashboard hosted inside Bright Data’s mobile proxy network.\n"
          },
          "typeVersion": 1
        },
        {
          "id": "b9e43f5f-eeb7-463b-8a68-2086acb14253",
          "name": "Sticky Note5",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            1240,
            -700
          ],
          "parameters": {
            "color": 7,
            "width": 380,
            "height": 240,
            "content": "## I’ll receive a tiny commission if you join Bright Data through this link—thanks for fueling more free content!\n\n### https://get.brightdata.com/1tndi4600b25"
          },
          "typeVersion": 1
        },
        {
          "id": "23b951f8-8dd3-4e3b-b4e3-a5fc474ee033",
          "name": "Sticky Note9",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1620,
            -1060
          ],
          "parameters": {
            "color": 4,
            "width": 1300,
            "height": 320,
            "content": "=======================================\n            WORKFLOW ASSISTANCE\n=======================================\nFor any questions or support, please contact:\n    Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n   - YouTube: https://www.youtube.com/@YaronBeen/videos\n   - LinkedIn: https://www.linkedin.com/in/yaronbeen/\n=======================================\n"
          },
          "typeVersion": 1
        },
        {
          "id": "4f1a9df8-f864-4d44-840b-80b9bc4f9e5e",
          "name": "Auto-fixing Output Parser",
          "type": "@n8n/n8n-nodes-langchain.outputParserAutofixing",
          "position": [
            580,
            260
          ],
          "parameters": {
            "options": {}
          },
          "typeVersion": 1
        },
        {
          "id": "fba56334-ce0c-470b-b7ed-f62e96eab480",
          "name": "OpenAI Chat Model",
          "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
          "position": [
            520,
            480
          ],
          "parameters": {
            "model": {
              "__rl": true,
              "mode": "list",
              "value": "gpt-4.1-mini"
            },
            "options": {}
          },
          "credentials": {
            "openAiApi": {
              "id": "credential-id",
              "name": "openAiApi Credential"
            }
          },
          "typeVersion": 1.2
        },
        {
          "id": "d4df16f4-12d0-4ce0-be84-744b0b861e5a",
          "name": "🧾 Clean JSON Parser ",
          "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
          "position": [
            700,
            480
          ],
          "parameters": {
            "jsonSchemaExample": "{\n\"totalLeads\": 10,\n\"totalPipelineValue\": 556281,\n\"statusBreakdown\": {\n\"open\": 3,\n\"won\": 4,\n\"lost\": 3\n},\n\"stageBreakdown\": {\n\"Bret\": 1,\n\"Antonette\": 1,\n\"Samantha\": 1,\n\"Karianne\": 1,\n\"Kamren\": 1,\n\"Leopoldo_Corkery\": 1,\n\"Elwyn.Skiles\": 1,\n\"Maxime_Nienow\": 1,\n\"Delphine\": 1,\n\"Moriah.Stanton\": 1\n},\n\"topReps\": [\n{\n\"rep\": \"Leanne Graham\",\n\"stage\": \"Bret\",\n\"totalValue\": 929983874\n},\n{\n\"rep\": \"Ervin Howell\",\n\"stage\": \"Antonette\",\n\"totalValue\": 905667771\n},\n{\n\"rep\": \"Clementine Bauch\",\n\"stage\": \"Samantha\",\n\"totalValue\": 595904157\n}\n]\n}"
          },
          "typeVersion": 1.3
        }
      ],
      "active": false,
      "pinData": {},
      "settings": {
        "executionOrder": "v1"
      },
      "versionId": "72c19df5-d177-40b7-9390-21cfb599878c",
      "connections": {
        "🧠 AI Brain ": {
          "ai_languageModel": [
            [
              {
                "node": "🤖 Monitor Sales Pipeline (CRM AI Agent)",
                "type": "ai_languageModel",
                "index": 0
              }
            ]
          ]
        },
        "OpenAI Chat Model": {
          "ai_languageModel": [
            [
              {
                "node": "Auto-fixing Output Parser",
                "type": "ai_languageModel",
                "index": 0
              }
            ]
          ]
        },
        "🌐 Bright Data MCP": {
          "ai_tool": [
            [
              {
                "node": "🤖 Monitor Sales Pipeline (CRM AI Agent)",
                "type": "ai_tool",
                "index": 0
              }
            ]
          ]
        },
        "🧾 Clean JSON Parser ": {
          "ai_outputParser": [
            [
              {
                "node": "Auto-fixing Output Parser",
                "type": "ai_outputParser",
                "index": 0
              }
            ]
          ]
        },
        "Auto-fixing Output Parser": {
          "ai_outputParser": [
            [
              {
                "node": "🤖 Monitor Sales Pipeline (CRM AI Agent)",
                "type": "ai_outputParser",
                "index": 0
              }
            ]
          ]
        },
        "⚡ Trigger: Start CRM Scraper": {
          "main": [
            [
              {
                "node": "🔗 Set Source URL (CRM/JSONPlaceholder)",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "🧩 Split Metrics for Sheet Rows": {
          "main": [
            [
              {
                "node": "📊 Store CRM Insights (Google Sheet)",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "🔗 Set Source URL (CRM/JSONPlaceholder)": {
          "main": [
            [
              {
                "node": "🤖 Monitor Sales Pipeline (CRM AI Agent)",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "🤖 Monitor Sales Pipeline (CRM AI Agent)": {
          "main": [
            [
              {
                "node": "🧩 Split Metrics for Sheet Rows",
                "type": "main",
                "index": 0
              }
            ]
          ]
        }
      }
    },
    "lastUpdatedBy": 62,
    "workflowInfo": {
      "nodeCount": 16,
      "nodeTypes": {
        "n8n-nodes-base.set": {
          "count": 1
        },
        "n8n-nodes-base.code": {
          "count": 1
        },
        "n8n-nodes-base.stickyNote": {
          "count": 6
        },
        "n8n-nodes-base.googleSheets": {
          "count": 1
        },
        "n8n-nodes-mcp.mcpClientTool": {
          "count": 1
        },
        "n8n-nodes-base.manualTrigger": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.agent": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.lmChatOpenAi": {
          "count": 2
        },
        "@n8n/n8n-nodes-langchain.outputParserAutofixing": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.outputParserStructured": {
          "count": 1
        }
      }
    },
    "status": "published",
    "user": {
      "name": "Yaron Been",
      "username": "yaron-nofluff",
      "bio": "Building AI Agents and Automations | Growth Marketer | Entrepreneur | Book Author & Podcast Host\n\nIf you need any help with Automations, feel free to reach out via linkedin:\nhttps://www.linkedin.com/in/yaronbeen/\n\nAnd check out my Youtube channel:\nhttps://www.youtube.com/@YaronBeen/videos",
      "verified": true,
      "links": [
        "https://www.nofluff.online/automation-services/"
      ],
      "avatar": "https://gravatar.com/avatar/a4e4dcaa1f76ff5266bbf80e8df86d22efda890474c68f7796e72fd82e3f2375?r=pg&d=retro&size=200"
    },
    "nodes": [
      {
        "id": 18,
        "icon": "file:googleSheets.svg",
        "name": "n8n-nodes-base.googleSheets",
        "codex": {
          "data": {
            "alias": [
              "CSV",
              "Sheet",
              "Spreadsheet",
              "GS"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/love-at-first-sight-ricardos-n8n-journey/",
                  "icon": "❤️",
                  "label": "Love at first sight: Ricardo’s n8n journey"
                },
                {
                  "url": "https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/",
                  "icon": "🧬",
                  "label": "Why business process automation with n8n can change your daily life"
                },
                {
                  "url": "https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/",
                  "icon": "🧾",
                  "label": "Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/supercharging-your-conference-registration-process-with-n8n/",
                  "icon": "🎫",
                  "label": "Supercharging your conference registration process with n8n"
                },
                {
                  "url": "https://n8n.io/blog/creating-triggers-for-n8n-workflows-using-polling/",
                  "icon": "⏲",
                  "label": "Creating triggers for n8n workflows using polling"
                },
                {
                  "url": "https://n8n.io/blog/no-code-ecommerce-workflow-automations/",
                  "icon": "store",
                  "label": "6 e-commerce workflows to power up your Shopify s"
                },
                {
                  "url": "https://n8n.io/blog/migrating-community-metrics-to-orbit-using-n8n/",
                  "icon": "📈",
                  "label": "Migrating Community Metrics to Orbit using n8n"
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/your-business-doesnt-need-you-to-operate/",
                  "icon": " 🖥️",
                  "label": "Hey founders! Your business doesn't need you to operate"
                },
                {
                  "url": "https://n8n.io/blog/how-honest-burgers-use-automation-to-save-100k-per-year/",
                  "icon": "🍔",
                  "label": "How Honest Burgers Use Automation to Save $100k per year"
                },
                {
                  "url": "https://n8n.io/blog/how-a-digital-strategist-uses-n8n-for-online-marketing/",
                  "icon": "💻",
                  "label": "How a digital strategist uses n8n for online marketing"
                },
                {
                  "url": "https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/",
                  "icon": "🧠",
                  "label": "Why this Product Manager loves workflow automation with n8n"
                },
                {
                  "url": "https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/",
                  "icon": "🙌",
                  "label": "Sending Automated Congratulations with Google Sheets, Twilio, and n8n "
                },
                {
                  "url": "https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/",
                  "icon": "📈",
                  "label": "How a Membership Development Manager automates his work and investments"
                },
                {
                  "url": "https://n8n.io/blog/aws-workflow-automation/",
                  "label": "7 no-code workflow automations for Amazon Web Services"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googlesheets/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"
                }
              ]
            },
            "categories": [
              "Data & Storage",
              "Productivity"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0"
          }
        },
        "group": "[\"input\",\"output\"]",
        "defaults": {
          "name": "Google Sheets"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGZpbGw9IiMyOEI0NDYiIGQ9Ik0zNS42OSAxIDUyIDE3LjIyNXYzOS4wODdhMy42NyAzLjY3IDAgMCAxLTEuMDg0IDIuNjFBMy43IDMuNyAwIDAgMSA0OC4yOTMgNjBIMTIuNzA3YTMuNyAzLjcgMCAwIDEtMi42MjMtMS4wNzhBMy42NyAzLjY3IDAgMCAxIDkgNTYuMzEyVjQuNjg4YTMuNjcgMy42NyAwIDAgMSAxLjA4NC0yLjYxQTMuNyAzLjcgMCAwIDEgMTIuNzA3IDF6Ii8+PHBhdGggZmlsbD0iIzZBQ0U3QyIgZD0iTTM1LjY5IDEgNTIgMTcuMjI1SDM5LjM5N2MtMi4wNTQgMC0zLjcwNy0xLjgyOS0zLjcwNy0zLjg3MnoiLz48cGF0aCBmaWxsPSIjMjE5QjM4IiBkPSJNMzkuMjExIDE3LjIyNSA1MiAyMi40OHYtNS4yNTV6Ii8+PHBhdGggZmlsbD0iI0ZGRiIgZD0iTTIwLjEyIDMxLjk3NWMwLS44MTcuNjYyLTEuNDc1IDEuNDgzLTEuNDc1aDE3Ljc5NGMuODIxIDAgMS40ODIuNjU4IDEuNDgyIDEuNDc1djE1LjQ4N2MwIC44MTgtLjY2MSAxLjQ3NS0xLjQ4MiAxLjQ3NUgyMS42MDNhMS40NzYgMS40NzYgMCAwIDEtMS40ODItMS40NzRWMzEuOTc0em0yLjIyNSAxLjQ3NWg2LjY3MnYyLjIxMmgtNi42NzJ6bTAgNS4xNjJoNi42NzJ2Mi4yMTNoLTYuNjcyem0wIDUuMTYzaDYuNjcydjIuMjEyaC02LjY3MnptOS42MzgtMTAuMzI1aDYuNjcydjIuMjEyaC02LjY3MnptMCA1LjE2Mmg2LjY3MnYyLjIxM2gtNi42NzJ6bTAgNS4xNjNoNi42NzJ2Mi4yMTJoLTYuNjcyeiIvPjxwYXRoIGZpbGw9IiMyOEI0NDYiIGQ9Ik0zNC42OSAwIDUxIDE2LjIyNXYzOS4wODdhMy42NyAzLjY3IDAgMCAxLTEuMDg0IDIuNjFBMy43IDMuNyAwIDAgMSA0Ny4yOTMgNTlIMTEuNzA3YTMuNyAzLjcgMCAwIDEtMi42MjMtMS4wNzhBMy42NyAzLjY3IDAgMCAxIDggNTUuMzEyVjMuNjg4YTMuNjcgMy42NyAwIDAgMSAxLjA4NC0yLjYxQTMuNyAzLjcgMCAwIDEgMTEuNzA3IDB6Ii8+PHBhdGggZmlsbD0iIzZBQ0U3QyIgZD0iTTM0LjY5IDAgNTEgMTYuMjI1SDM4LjM5N2MtMi4wNTQgMC0zLjcwNy0xLjgyOS0zLjcwNy0zLjg3MnoiLz48cGF0aCBmaWxsPSIjMjE5QjM4IiBkPSJNMzguMjExIDE2LjIyNSA1MSAyMS40OHYtNS4yNTV6Ii8+PHBhdGggZmlsbD0iI0ZGRiIgZD0iTTE5LjEyIDMwLjk3NWMwLS44MTcuNjYyLTEuNDc1IDEuNDgzLTEuNDc1aDE3Ljc5NGMuODIxIDAgMS40ODIuNjU4IDEuNDgyIDEuNDc1djE1LjQ4N2MwIC44MTgtLjY2MSAxLjQ3NS0xLjQ4MiAxLjQ3NUgyMC42MDNhMS40NzYgMS40NzYgMCAwIDEtMS40ODItMS40NzRWMzAuOTc0em0yLjIyNSAxLjQ3NWg2LjY3MnYyLjIxMmgtNi42NzJ6bTAgNS4xNjJoNi42NzJ2Mi4yMTNoLTYuNjcyem0wIDUuMTYzaDYuNjcydjIuMjEyaC02LjY3MnptOS42MzgtMTAuMzI1aDYuNjcydjIuMjEyaC02LjY3MnptMCA1LjE2Mmg2LjY3MnYyLjIxM2gtNi42NzJ6bTAgNS4xNjNoNi42NzJ2Mi4yMTJoLTYuNjcyeiIvPjwvZz48L3N2Zz4="
        },
        "displayName": "Google Sheets",
        "typeVersion": 5,
        "nodeCategories": [
          {
            "id": 3,
            "name": "Data & Storage"
          },
          {
            "id": 4,
            "name": "Productivity"
          }
        ]
      },
      {
        "id": 38,
        "icon": "fa:pen",
        "name": "n8n-nodes-base.set",
        "codex": {
          "data": {
            "alias": [
              "Set",
              "JS",
              "JSON",
              "Filter",
              "Transform",
              "Map"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/",
                  "icon": "🏭",
                  "label": "Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"
                },
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/",
                  "icon": "📈",
                  "label": "Automatically pulling and visualizing data with n8n"
                },
                {
                  "url": "https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/",
                  "icon": "📡",
                  "label": "Database Monitoring and Alerting with n8n"
                },
                {
                  "url": "https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/",
                  "icon": "🧾",
                  "label": "Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/no-code-ecommerce-workflow-automations/",
                  "icon": "store",
                  "label": "6 e-commerce workflows to power up your Shopify s"
                },
                {
                  "url": "https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/",
                  "icon": "🔗",
                  "label": "How to build a low-code, self-hosted URL shortener in 3 steps"
                },
                {
                  "url": "https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/",
                  "icon": "⚙️",
                  "label": "Automate your data processing pipeline in 9 steps"
                },
                {
                  "url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
                  "icon": "👥",
                  "label": "How to get started with CRM automation (with 3 no-code workflow ideas"
                },
                {
                  "url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
                  "icon": "⚡️",
                  "label": "5 tasks you can automate with the new Notion API "
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
                  "icon": " 🕸️",
                  "label": "How uProc scraped a multi-page website with a low-code workflow"
                },
                {
                  "url": "https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/",
                  "icon": "📱",
                  "label": "Building an expense tracking app in 10 minutes"
                },
                {
                  "url": "https://n8n.io/blog/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/",
                  "icon": "📹",
                  "label": "The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
                  "icon": "🤖",
                  "label": "5 workflow automations for Mattermost that we love at n8n"
                },
                {
                  "url": "https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/",
                  "icon": "🧰",
                  "label": "Learn to Build Powerful API Endpoints Using Webhooks"
                },
                {
                  "url": "https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/",
                  "icon": "📈",
                  "label": "How a Membership Development Manager automates his work and investments"
                },
                {
                  "url": "https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/",
                  "icon": "📈",
                  "label": "A low-code bitcoin ticker built with QuestDB and n8n.io"
                },
                {
                  "url": "https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/",
                  "icon": "🎡",
                  "label": "How to set up a no-code CI/CD pipeline with GitHub and TravisCI"
                },
                {
                  "url": "https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/",
                  "icon": "🎖",
                  "label": "Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"
                },
                {
                  "url": "https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/",
                  "icon": "🛵",
                  "label": "How Goomer automated their operations with over 200 n8n workflows"
                },
                {
                  "url": "https://n8n.io/blog/aws-workflow-automation/",
                  "label": "7 no-code workflow automations for Amazon Web Services"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.set/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Data Transformation"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Edit Fields"
        },
        "iconData": {
          "icon": "pen",
          "type": "icon"
        },
        "displayName": "Edit Fields (Set)",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 565,
        "icon": "fa:sticky-note",
        "name": "n8n-nodes-base.stickyNote",
        "codex": {
          "data": {
            "alias": [
              "Comments",
              "Notes",
              "Sticky"
            ],
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Sticky Note",
          "color": "#FFD233"
        },
        "iconData": {
          "icon": "sticky-note",
          "type": "icon"
        },
        "displayName": "Sticky Note",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 834,
        "icon": "file:code.svg",
        "name": "n8n-nodes-base.code",
        "codex": {
          "data": {
            "alias": [
              "cpde",
              "Javascript",
              "JS",
              "Python",
              "Script",
              "Custom Code",
              "Function"
            ],
            "details": "The Code node allows you to execute JavaScript in your workflow.",
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"
                }
              ]
            },
            "categories": [
              "Development",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers",
                "Data Transformation"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Code"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="
        },
        "displayName": "Code",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 5,
            "name": "Development"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 838,
        "icon": "fa:mouse-pointer",
        "name": "n8n-nodes-base.manualTrigger",
        "codex": {
          "data": {
            "resources": {
              "generic": [],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.manualworkflowtrigger/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0"
          }
        },
        "group": "[\"trigger\"]",
        "defaults": {
          "name": "When clicking ‘Execute workflow’",
          "color": "#909298"
        },
        "iconData": {
          "icon": "mouse-pointer",
          "type": "icon"
        },
        "displayName": "Manual Trigger",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 1119,
        "icon": "fa:robot",
        "name": "@n8n/n8n-nodes-langchain.agent",
        "codex": {
          "data": {
            "alias": [
              "LangChain",
              "Chat",
              "Conversational",
              "Plan and Execute",
              "ReAct",
              "Tools"
            ],
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Agents",
                "Root Nodes"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "AI Agent",
          "color": "#404040"
        },
        "iconData": {
          "icon": "robot",
          "type": "icon"
        },
        "displayName": "AI Agent",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      },
      {
        "id": 1153,
        "icon": "file:openAiLight.svg",
        "name": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
        "codex": {
          "data": {
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatopenai/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Language Models",
                "Root Nodes"
              ],
              "Language Models": [
                "Chat Models (Recommended)"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "OpenAI Chat Model"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg0IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NyAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MiA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSIjN0Q3RDg3Ii8+Cjwvc3ZnPgo="
        },
        "displayName": "OpenAI Chat Model",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      },
      {
        "id": 1175,
        "icon": "fa:tools",
        "name": "@n8n/n8n-nodes-langchain.outputParserAutofixing",
        "codex": {
          "data": {
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.outputparserautofixing/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Output Parsers"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Auto-fixing Output Parser"
        },
        "iconData": {
          "icon": "tools",
          "type": "icon"
        },
        "displayName": "Auto-fixing Output Parser",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      },
      {
        "id": 1179,
        "icon": "fa:code",
        "name": "@n8n/n8n-nodes-langchain.outputParserStructured",
        "codex": {
          "data": {
            "alias": [
              "json",
              "zod"
            ],
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.outputparserstructured/"
                }
              ]
            },
            "categories": [
              "AI",
              "Langchain"
            ],
            "subcategories": {
              "AI": [
                "Output Parsers"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Structured Output Parser"
        },
        "iconData": {
          "icon": "code",
          "type": "icon"
        },
        "displayName": "Structured Output Parser",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 25,
            "name": "AI"
          },
          {
            "id": 26,
            "name": "Langchain"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 39,
        "name": "CRM"
      },
      {
        "id": 49,
        "name": "AI Summarization"
      }
    ],
    "image": []
  }
}