{
  "name": "Automated daily AI summaries from WhatsApp groups",
  "nodes": [
    {
      "id": "608dd845-4ade-4df8-9810-e1ed4327c51a",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        112,
        -96
      ],
      "parameters": {
        "width": 612,
        "height": 1056,
        "content": "## WHATSAPP GROUP INTELLIGENCE SYSTEM\n\n\n## What This Workflow Does\nTransforms your WhatsApp group conversations into actionable business intelligence with daily AI-powered summaries.\n\n**Two Main Opera"
      }
    },
    {
      "id": "0bf1aede-b83d-4dc7-9975-a7bbf2b304d9",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        96,
        1008
      ],
      "parameters": {
        "width": 620,
        "height": 368,
        "content": "## Find your Groups\nRun this node to find your groups, modify and set your instance."
      }
    },
    {
      "id": "def7f50e-fc2a-4ff9-8819-d6fcc5bd2c80",
      "name": "Webhook-EVO",
      "type": "n8n-nodes-base.webhook",
      "position": [
        1008,
        832
      ]
    },
    {
      "id": "36a61d5a-e2ad-4bae-a559-10c2b8788268",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1376,
        480
      ],
      "parameters": {
        "width": 464,
        "height": 588,
        "content": "🔴 CRITICAL CONFIGURATION\n\n## Set Your WhatsApp Groups Here\nYou MUST update these group IDs:\n\n📍 grupo_1: Replace with your first group ID\n📍 grupo_2: Replace with your second group ID  \n📍 grupo_3: Repla"
      }
    },
    {
      "id": "435ccb07-daf9-4224-9817-1d6c99d4f8c6",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        880,
        528
      ],
      "parameters": {
        "width": 380,
        "height": 512,
        "content": "🔴 WEBHOOK SETUP REQUIRED\n\n## Evolution API Configuration\n1. Copy this webhook URL\n2. In Evolution API, configure:\n   ✅ MESSAGES_UPSERT\n   ✅ GROUP_PARTICIPANTS_UPDATE\n   ❌ Disable IGNORE_GROUPS\n\n⚠️ Wit"
      }
    },
    {
      "id": "2ecb0497-b989-4037-a47c-ce93feb764cb",
      "name": "Set Info",
      "type": "n8n-nodes-base.set",
      "position": [
        1552,
        832
      ]
    },
    {
      "id": "c645e735-8e12-463b-b98c-9294d1ae57ba",
      "name": "Set Resumen",
      "type": "n8n-nodes-base.set",
      "position": [
        2992,
        1968
      ]
    },
    {
      "id": "3878df29-9f88-4cbd-946f-5aaa739b8ff5",
      "name": "Switch",
      "type": "n8n-nodes-base.switch",
      "position": [
        2448,
        800
      ]
    },
    {
      "id": "808b6e1d-7646-4894-ad3d-769fb17958c3",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        2048,
        1952
      ]
    },
    {
      "id": "f6e238c1-8009-44c6-bd16-609fe7b5565b",
      "name": "No hacer nada",
      "type": "n8n-nodes-base.noOp",
      "position": [
        2192,
        992
      ]
    },
    {
      "id": "a3cfead3-090f-497c-a1ae-6d705f2966e8",
      "name": "Split Out",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        3584,
        1968
      ]
    },
    {
      "id": "fc2ed347-62f2-4e34-b00f-ea94175bf781",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        3808,
        1968
      ]
    },
    {
      "id": "f956a6e1-2abe-4a10-8636-9922e9b9a3a9",
      "name": "Wait",
      "type": "n8n-nodes-base.wait",
      "position": [
        4320,
        2016
      ]
    },
    {
      "id": "bf0e2305-3c7e-422c-b614-dfd6739b1cb7",
      "name": "OpenAI 4.1 Mini1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        3344,
        2336
      ]
    },
    {
      "id": "fd28a778-6c66-46ce-88d5-bc6206ac6cd3",
      "name": "JSON parse",
      "type": "@n8n/n8n-nodes-langchain.outputParserAutofixing",
      "position": [
        3376,
        2144
      ]
    },
    {
      "id": "86445037-7630-4895-9626-22aeb519fb4d",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3152,
        1584
      ],
      "parameters": {
        "width": 1408,
        "height": 928,
        "content": "## 📱 INTELLIGENT MESSAGE DELIVERY\n\n**Smart Formatting:**\n- Breaks long summaries into fragments\n- Converts Markdown to WhatsApp format\n- Adds natural delays between messages\n- Ensures proper message t"
      }
    },
    {
      "id": "8f83f0c3-6ebe-4332-bebc-ce97aefde94f",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2560,
        1968
      ]
    },
    {
      "id": "57f513a1-7a42-41ab-be13-b1b8514629cb",
      "name": "OpenAI",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        2720,
        320
      ]
    },
    {
      "id": "6028e8ab-8553-4fe8-8cc6-56b261f92c94",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        2128,
        560
      ]
    },
    {
      "id": "492e18e5-18e3-4517-8a4d-14b4f9f93bd9",
      "name": "Set Info1",
      "type": "n8n-nodes-base.set",
      "position": [
        3088,
        320
      ]
    },
    {
      "id": "157977b3-820e-42be-b977-63fb1f04707b",
      "name": "OpenAI 4.1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        2608,
        2192
      ]
    },
    {
      "id": "0f169e6e-87f2-495b-9d7f-2d3889ede2e2",
      "name": "Find your Groups ",
      "type": "n8n-nodes-evolution-api.evolutionApi",
      "position": [
        336,
        1136
      ]
    },
    {
      "id": "dc4efd98-0fa4-4b39-aa70-e7cc10713685",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3296,
        784
      ],
      "parameters": {
        "width": 448,
        "height": 396,
        "content": "🔴 GOOGLE SHEETS CONFIGURATION\n\n## Required Setup\n1. Create Google Sheet with tabs:\n   - Grupo_1\n   - Grupo_2  \n   - Grupo_3\n\n2. Update document ID in ALL \n   \"Guarda Mensajes\" nodes\n\n3. Required colum"
      }
    },
    {
      "id": "107bd143-1b04-4e5b-a74e-ebe7db5e3d25",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        784,
        -96
      ],
      "parameters": {
        "width": 3040,
        "height": 1388,
        "content": "## 🔄 -  REAL-TIME MESSAGE PROCESSING\n\n**Flow Overview:**\nWebhook → Filter Groups → Process Audio → Store in Sheets\n\n**What Happens Here:**\n- Messages arrive via Evolution API webhook\n- System checks i"
      }
    },
    {
      "id": "c0248d51-7ece-401d-be48-038a19d92f76",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        800,
        1376
      ],
      "parameters": {
        "width": 3904,
        "height": 1244,
        "content": "## 📊 -  DAILY INTELLIGENCE GENERATION\n\n**Flow Overview:**\nSchedule → Extract Data → AI Analysis → Format → Send\n\n**What Happens Here:**\n- Runs automatically at scheduled time\n- Extracts previous day's"
      }
    },
    {
      "id": "f4f6e0f2-ffaf-4822-b88a-b97a7d8b5723",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2576,
        -32
      ],
      "parameters": {
        "width": 464,
        "height": 316,
        "content": "## 🎙️ SMART AUDIO HANDLING\n\n**Voice Message Processing:**\n1. Detects audio messages\n2. Downloads audio file\n3. Converts to proper format\n4. Transcribes with OpenAI\n5. Replaces audio with text\n\n**Why T"
      }
    },
    {
      "id": "343ad6e9-0dce-4bd6-b3db-3881b6ca0cec",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2448,
        1568
      ],
      "parameters": {
        "width": 464,
        "height": 780,
        "content": "## 🤖 AI ANALYSIS ENGINE\n\n**Meet WhatsOn 🕵🏾‍♂️**\nYour AI detective specialized in finding:\n- AI and automation trends\n- Technical solutions\n- Business opportunities\n- Industry insights\n\n**What It Filte"
      }
    },
    {
      "id": "bd4b1feb-23e1-4b2e-a665-116a8c5f2186",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        112,
        1440
      ],
      "parameters": {
        "width": 608,
        "height": 540,
        "content": "## ⚙️ CUSTOMIZATION OPTIONS\n\n**Schedule Changes:**\nModify \"Schedule Trigger\" to change when\ndaily summaries are generated.\n\n**Add More Groups:**\n1. Add group variables in \"Set Info\"\n2. Create new Goog"
      }
    },
    {
      "id": "8c02ab57-5b48-46e4-a215-43d93891e539",
      "name": "Sticky Note15",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3968,
        144
      ],
      "parameters": {
        "width": 620,
        "height": 832,
        "content": "## Was this helpful? Let me know!\n\nI truly hope this was helpful. Your feedback is very valuable and helps me create better resources.\n\n### Want to take automation to the next level?\n\nIf you're lookin"
      }
    },
    {
      "id": "44c7cc30-6c7e-41c0-9548-a129f4519abe",
      "name": "Output Formatter",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        3216,
        1968
      ]
    },
    {
      "id": "4d0271e0-b65c-4f96-9ade-68b5abf0bb23",
      "name": "Set the JSON Return Type",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        3568,
        2320
      ]
    },
    {
      "id": "54e666da-ef68-4d27-84d6-b2de96f1d018",
      "name": "Send message",
      "type": "n8n-nodes-evolution-api.evolutionApi",
      "position": [
        4080,
        1984
      ]
    },
    {
      "id": "a1b71a22-30bb-487e-b35d-71dd85dc05bb",
      "name": "Group conversations",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1504,
        1760
      ]
    },
    {
      "id": "310e963e-518d-4de0-94cb-a9c5d2bb25fe",
      "name": "Group conversations1",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1504,
        1968
      ]
    },
    {
      "id": "597affed-85a8-48dd-8b0f-a0366c70895f",
      "name": "Group conversations2",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1504,
        2176
      ]
    },
    {
      "id": "2d5b53a6-29bd-433f-bbdd-f0c41fba6708",
      "name": "Normalize data",
      "type": "n8n-nodes-base.code",
      "position": [
        1728,
        1968
      ]
    },
    {
      "id": "1ad420e9-426b-4293-94f1-d7db588ea2ec",
      "name": "Normalize data1",
      "type": "n8n-nodes-base.code",
      "position": [
        1728,
        1760
      ]
    },
    {
      "id": "a81778ea-1194-4b35-88b4-d2a8436339c8",
      "name": "Normalize data2",
      "type": "n8n-nodes-base.code",
      "position": [
        1728,
        2176
      ]
    },
    {
      "id": "fe42a2f4-560a-4ace-a764-dc6cb0ed0614",
      "name": "Extract today's conversations",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1296,
        1760
      ]
    },
    {
      "id": "4cfa3008-0f19-4fe4-8f49-9065ea05ff83",
      "name": "Extract today's conversations1",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1296,
        1968
      ]
    },
    {
      "id": "7a2a2797-dd65-4c43-b32c-90039fe4415b",
      "name": "Extract today's conversations2",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1296,
        2176
      ]
    },
    {
      "id": "015c1888-98f7-407d-8d27-c159631cf4b1",
      "name": "Send Summary every day at 00.00h",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        960,
        1968
      ]
    },
    {
      "id": "b6939eb2-cb85-4d79-ab2c-20b4e15b33cc",
      "name": "Check if the message is from the Group",
      "type": "n8n-nodes-base.if",
      "position": [
        1936,
        832
      ]
    },
    {
      "id": "c8035561-2bd5-40d4-b942-1cc0f430bcb9",
      "name": "Save Messages",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2976,
        592
      ]
    },
    {
      "id": "9f5a4187-febd-4776-b3e2-2cc2480838dd",
      "name": "Save Messages1",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2976,
        816
      ]
    },
    {
      "id": "5350fd1e-28eb-47f0-8d7b-13d394063f2c",
      "name": "Save Messages2",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2976,
        1040
      ]
    },
    {
      "id": "70d7f092-1ab0-46ac-89e0-c329fc631cea",
      "name": "Download audio",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2336,
        320
      ]
    },
    {
      "id": "da2d2c01-94c6-4b91-994e-0435fa0dca9c",
      "name": "Convert audio",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        2528,
        320
      ]
    },
    {
      "id": "162c6a79-b7b4-4558-bc68-54cb4197388a",
      "name": "Audio content",
      "type": "n8n-nodes-base.set",
      "position": [
        2912,
        320
      ]
    },
    {
      "id": "c912fd0a-2fdd-401c-b2b6-b34f7276a28f",
      "name": "Group all conversations",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        2256,
        1968
      ]
    },
    {
      "id": "8b27ee4b-2e6f-4f52-b29b-af3b515834eb",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3296,
        448
      ],
      "parameters": {
        "width": 464,
        "height": 316,
        "content": "### 🔄 SMART MESSAGE ROUTING\n\n**How messages reach the correct storage:**\n\nThe Switch node routes messages based on group origin:\n- Group 1 messages → Grupo_1 sheet\n- Group 2 messages → Grupo_2 sheet  "
      }
    },
    {
      "id": "add2ae53-0f85-45c3-924a-0a9ccd43d485",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        112,
        2032
      ],
      "parameters": {
        "width": 620,
        "height": null,
        "content": "## Sheets Template\n\nhttps://docs.google.com/spreadsheets/d/1REnD1Sac8O2vnyWOIpB4WqMZbWNMq3zxJ-n8a-LSwms/edit?usp=sharing"
      }
    }
  ],
  "connections": {
    "If": {
      "main": [
        [
          {
            "node": "Download audio",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Wait": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge": {
      "main": [
        [
          {
            "node": "Group all conversations",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI": {
      "main": [
        [
          {
            "node": "Audio content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch": {
      "main": [
        [
          {
            "node": "Save Messages",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Save Messages1",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Save Messages2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent": {
      "main": [
        [
          {
            "node": "Set Resumen",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Info": {
      "main": [
        [
          {
            "node": "Check if the message is from the Group",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Info1": {
      "main": [
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "JSON parse": {
      "ai_outputParser": [
        [
          {
            "node": "Output Formatter",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI 4.1": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Set Resumen": {
      "main": [
        [
          {
            "node": "Output Formatter",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Webhook-EVO": {
      "main": [
        [
          {
            "node": "Set Info",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send message": {
      "main": [
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Audio content": {
      "main": [
        [
          {
            "node": "Set Info1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Convert audio": {
      "main": [
        [
          {
            "node": "OpenAI",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download audio": {
      "main": [
        [
          {
            "node": "Convert audio",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Normalize data": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [],
        [
          {
            "node": "Send message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Normalize data1": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Normalize data2": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 2
          }
        ]
      ]
    },
    "OpenAI 4.1 Mini1": {
      "ai_languageModel": [
        [
          {
            "node": "Output Formatter",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "JSON parse",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Output Formatter": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Group conversations": {
      "main": [
        [
          {
            "node": "Normalize data1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Group conversations1": {
      "main": [
        [
          {
            "node": "Normalize data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Group conversations2": {
      "main": [
        [
          {
            "node": "Normalize data2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Group all conversations": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set the JSON Return Type": {
      "ai_outputParser": [
        [
          {
            "node": "JSON parse",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Extract today's conversations": {
      "main": [
        [
          {
            "node": "Group conversations",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract today's conversations1": {
      "main": [
        [
          {
            "node": "Group conversations1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract today's conversations2": {
      "main": [
        [
          {
            "node": "Group conversations2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send Summary every day at 00.00h": {
      "main": [
        [
          {
            "node": "Extract today's conversations2",
            "type": "main",
            "index": 0
          },
          {
            "node": "Extract today's conversations1",
            "type": "main",
            "index": 0
          },
          {
            "node": "Extract today's conversations",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check if the message is from the Group": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "No hacer nada",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}