AutomationFlowsAI & RAG › Ai-powered Restaurant Newsletter Creator with Mailchimp and Telegram Approval

Ai-powered Restaurant Newsletter Creator with Mailchimp and Telegram Approval

ByFemi Ad @hgray on n8n.io

This workflow contains community nodes that are only compatible with the self-hosted version of n8n.

Event trigger★★★★★ complexityAI-powered43 nodesAgentOpenAI ChatOpenAI@Tavily/N8N Nodes TavilyHTTP RequestTelegramText ClassifierTelegram Trigger
AI & RAG Trigger: Event Nodes: 43 Complexity: ★★★★★ AI nodes: yes Added:

This workflow corresponds to n8n.io template #4918 — we link there as the canonical source.

This workflow follows the Agent → Gmail recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": "H9a2qfzSXSNRlDeI",
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "name": "MailChimp_Automation",
  "tags": [],
  "nodes": [
    {
      "id": "003fc957-1e8a-4369-9381-ae914331be4a",
      "name": "Restaurant Newsletter Expert",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        260,
        -20
      ],
      "parameters": {},
      "typeVersion": 1.7
    },
    {
      "id": "00fd66ec-3f0f-4f61-8263-ceecb90a2431",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        260,
        180
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "cf94538d-1a54-4378-8b5f-2edc5bc67dec",
      "name": "Newsletter Section Planner",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        600,
        -20
      ],
      "parameters": {},
      "typeVersion": 1.8
    },
    {
      "id": "93b8121b-cd8f-4f34-afff-a1e80ebcf178",
      "name": "Split Newsletter Sections",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        920,
        -20
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "103c994b-d80a-4fbc-a934-3ad5bab3bad1",
      "name": "Restaurant Content Research Team",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1080,
        -20
      ],
      "parameters": {},
      "typeVersion": 1.7
    },
    {
      "id": "edf06eb5-feee-46fd-ac2f-e45afc1d29ca",
      "name": "Merge Research Content",
      "type": "n8n-nodes-base.merge",
      "position": [
        1600,
        140
      ],
      "parameters": {},
      "typeVersion": 3,
      "alwaysOutputData": true
    },
    {
      "id": "563b479f-1e3c-43d1-9cfd-6d04637ae6a1",
      "name": "Aggregate Newsletter Content",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1760,
        140
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "d798ec57-8633-48a1-a931-466cd8460039",
      "name": "Final Newsletter Editor",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        3500,
        200
      ],
      "parameters": {},
      "typeVersion": 1.7
    },
    {
      "id": "775cf71f-e94d-429d-9089-3d057d7dbfe3",
      "name": "Enhanced Workflow Documentation",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -780,
        -80
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "bde3fb8d-9b63-4abf-a264-9a17939aa7d6",
      "name": "OpenAI Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        3480,
        420
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "0c83f4d2-58fa-452e-9b47-ecd706f342a6",
      "name": "Tavily1",
      "type": "@tavily/n8n-nodes-tavily.tavilyTool",
      "position": [
        380,
        180
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "87380743-0f25-4930-9582-907e2ad7a8a5",
      "name": "Tavily",
      "type": "@tavily/n8n-nodes-tavily.tavilyTool",
      "position": [
        680,
        340
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "3153fc91-0c07-4d1f-b941-60eccc6719fc",
      "name": "Code",
      "type": "n8n-nodes-base.code",
      "position": [
        1420,
        -20
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "4daded6e-0343-4f9e-a8bb-69fe98fcdfba",
      "name": "Send_Campaign",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        5140,
        -60
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "62b243f9-482e-477a-92df-92fb29fc0a7d",
      "name": "Create_Campaign",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4760,
        -60
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "bff1e373-d41e-46b6-9bb6-5a17105d3597",
      "name": "Set Intent",
      "type": "n8n-nodes-base.set",
      "position": [
        2340,
        60
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "2e7b5279-0073-4cdb-beb2-ccb296385322",
      "name": "HITL",
      "type": "n8n-nodes-base.telegram",
      "position": [
        2580,
        60
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "e01808a4-e3e7-4346-acf2-57e8d6524c26",
      "name": "Check Feedback",
      "type": "@n8n/n8n-nodes-langchain.textClassifier",
      "position": [
        2840,
        60
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "527085f8-41f6-4f4b-8e27-2dd8ea9747cb",
      "name": "Correction Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        2840,
        320
      ],
      "parameters": {},
      "typeVersion": 1.7
    },
    {
      "id": "978841c6-a948-4383-bf16-7dfe041cbf58",
      "name": "Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        5380,
        -60
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "6d7bd74f-03be-4422-80f6-abcf608f6028",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        4460,
        -140
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "2b768b0a-ed7f-4d05-a4a4-281a2ab87623",
      "name": "Feedback AI",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        2560,
        320
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "b52ab57d-4ae2-4b8b-8af1-6f8ae4a49e17",
      "name": "Determine Schedule Name",
      "type": "n8n-nodes-base.code",
      "position": [
        440,
        1200
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "79471c6e-384b-4f6d-9cc4-63c20e6851bf",
      "name": "Prompt for Topic on Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        680,
        1200
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "971073dd-e54f-49ed-83fe-1c6be7b27620",
      "name": "Listen for Topic Reply",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -260,
        160
      ],
      "parameters": {},
      "typeVersion": 1.1
    },
    {
      "id": "1e94e6f5-add3-4f21-a3e9-cf75ad7c6bbb",
      "name": "Check if Message is a Reply",
      "type": "n8n-nodes-base.if",
      "position": [
        -100,
        160
      ],
      "parameters": {},
      "typeVersion": 2
    },
    {
      "id": "292f3279-328e-4596-9e64-47afb62cc81d",
      "name": "Set Topic from Reply",
      "type": "n8n-nodes-base.set",
      "position": [
        100,
        180
      ],
      "parameters": {},
      "typeVersion": 3.4
    },
    {
      "id": "67659bc8-87ef-4f9a-b453-85d32938a1f8",
      "name": "Part 1 Docs",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -780,
        1140
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "d5785f85-7e39-4fc5-aafc-d04897f748fc",
      "name": "Part 2 Docs",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -280,
        340
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "7bd0e35e-8e48-4503-945b-830d51fa0b68",
      "name": "Monday 9am Trigger1",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -240,
        1740
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "10328ee9-cc04-4e8b-b3b1-60c4db391f3b",
      "name": "Tuesday 4pm Trigger1",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -220,
        1100
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "c8b1f200-c253-49b3-be63-086103aa041d",
      "name": "Friday 2pm Trigger1",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -240,
        1300
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "59a5c07a-bae0-497d-8c58-807ee8d877f5",
      "name": "Saturday 2pm Trigger1",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -240,
        1500
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "5af3d0fe-82c0-46a0-8e8f-204b2d08fe97",
      "name": "Merge All Schedule Triggers1",
      "type": "n8n-nodes-base.merge",
      "position": [
        140,
        1200
      ],
      "parameters": {},
      "typeVersion": 2.1
    },
    {
      "id": "c1898cfb-61c3-41b0-be1a-043e9f60075b",
      "name": "OpenAI Chat Model2",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        800,
        340
      ],
      "parameters": {},
      "typeVersion": 1.2
    },
    {
      "id": "fa44029b-22ea-4e9f-afa4-d75bc8bd738e",
      "name": "First Newsletter Editor1",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1980,
        60
      ],
      "parameters": {},
      "typeVersion": 1.7
    },
    {
      "id": "563bd3aa-bf79-4509-8201-916cc87cd2a8",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        3300,
        200
      ],
      "parameters": {},
      "typeVersion": 3.2
    },
    {
      "id": "f78fcbb9-adc2-4132-a623-86617e1f9b59",
      "name": "Get_Subcribers",
      "type": "n8n-nodes-base.mailchimp",
      "position": [
        4560,
        -60
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "0839fa57-0b60-423c-bbe9-c6bb43ca5a22",
      "name": "Set_Campaign",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        4940,
        -60
      ],
      "parameters": {},
      "typeVersion": 4.2
    },
    {
      "id": "ad882a07-eb15-4385-a2a1-fd90bf7ac23d",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -380,
        1060
      ],
      "parameters": {
        "content": ""
      },
      "typeVersion": 1
    },
    {
      "id": "66b30303-2c66-4b8d-bc08-525dea49f44a",
      "name": "If",
      "type": "n8n-nodes-base.if",
      "position": [
        4120,
        60
      ],
      "parameters": {},
      "typeVersion": 2.2
    },
    {
      "id": "dd97e8e1-065d-42aa-92df-425d06ec2068",
      "name": "Gmail1",
      "type": "n8n-nodes-base.gmail",
      "position": [
        3860,
        -20
      ],
      "parameters": {},
      "typeVersion": 2.1
    },
    {
      "id": "2fb4a53f-1c2f-494d-9f38-3e459317662b",
      "name": "OpenRouter Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
      "position": [
        1120,
        200
      ],
      "parameters": {},
      "typeVersion": 1
    }
  ],
  "active": true,
  "settings": {
    "callerPolicy": "workflowsFromSameOwner",
    "errorWorkflow": "9be7VkNR7cCyEuth",
    "executionOrder": "v1"
  },
  "versionId": "2242e099-cc74-4851-b53e-66725e584ce8",
  "connections": {
    "If": {
      "main": [
        [
          {
            "node": "Get_Subcribers",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Code": {
      "main": [
        [
          {
            "node": "Merge Research Content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "HITL": {
      "main": [
        [
          {
            "node": "Check Feedback",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge": {
      "main": [
        [
          {
            "node": "Final Newsletter Editor",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Gmail1": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Tavily": {
      "ai_tool": [
        [
          {
            "node": "Restaurant Content Research Team",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Tavily1": {
      "ai_tool": [
        [
          {
            "node": "Restaurant Newsletter Expert",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Telegram": {
      "main": [
        []
      ]
    },
    "Set Intent": {
      "main": [
        [
          {
            "node": "HITL",
            "type": "main",
            "index": 0
          },
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Feedback AI": {
      "ai_languageModel": [
        [
          {
            "node": "Check Feedback",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "Correction Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Set_Campaign": {
      "main": [
        [
          {
            "node": "Send_Campaign",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send_Campaign": {
      "main": [
        [
          {
            "node": "Telegram",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check Feedback": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Correction Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get_Subcribers": {
      "main": [
        [
          {
            "node": "Create_Campaign",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create_Campaign": {
      "main": [
        [
          {
            "node": "Set_Campaign",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Correction Agent": {
      "main": [
        [
          {
            "node": "Set Intent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Restaurant Newsletter Expert",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Final Newsletter Editor",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model2": {
      "ai_languageModel": [
        [
          {
            "node": "First Newsletter Editor1",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Friday 2pm Trigger1": {
      "main": [
        [
          {
            "node": "Merge All Schedule Triggers1",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Monday 9am Trigger1": {
      "main": [
        [
          {
            "node": "Merge All Schedule Triggers1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Topic from Reply": {
      "main": [
        [
          {
            "node": "Restaurant Newsletter Expert",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Tuesday 4pm Trigger1": {
      "main": [
        [
          {
            "node": "Merge All Schedule Triggers1",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "OpenRouter Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Restaurant Content Research Team",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Saturday 2pm Trigger1": {
      "main": [
        [
          {
            "node": "Merge All Schedule Triggers1",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Listen for Topic Reply": {
      "main": [
        [
          {
            "node": "Check if Message is a Reply",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge Research Content": {
      "main": [
        [
          {
            "node": "Aggregate Newsletter Content",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Determine Schedule Name": {
      "main": [
        [
          {
            "node": "Prompt for Topic on Telegram",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Final Newsletter Editor": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          },
          {
            "node": "Gmail1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "First Newsletter Editor1": {
      "main": [
        [
          {
            "node": "Set Intent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Newsletter Sections": {
      "main": [
        [
          {
            "node": "Restaurant Content Research Team",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Newsletter Section Planner": {
      "main": [
        [
          {
            "node": "Split Newsletter Sections",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Check if Message is a Reply": {
      "main": [
        [],
        [
          {
            "node": "Set Topic from Reply",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate Newsletter Content": {
      "main": [
        [
          {
            "node": "First Newsletter Editor1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge All Schedule Triggers1": {
      "main": [
        [
          {
            "node": "Determine Schedule Name",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Restaurant Newsletter Expert": {
      "main": [
        [
          {
            "node": "Newsletter Section Planner",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Restaurant Content Research Team": {
      "main": [
        [
          {
            "node": "Code",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

This workflow contains community nodes that are only compatible with the self-hosted version of n8n.

Source: https://n8n.io/workflows/4918/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

Generate AI viral videos with NanoBanana & VEO3, shared on socials via Blotato 2. Uses @blotato/n8n-nodes-blotato, googleSheets, lmChatOpenAi, toolThink. Event-driven trigger; 94 nodes.

@Blotato/N8N Nodes Blotato, Google Sheets, OpenAI Chat +9
AI & RAG

RAG CHATBOT Main. Uses telegram, telegramTrigger, lmChatOpenAi, n8n-nodes-mcp. Event-driven trigger; 87 nodes.

Telegram, Telegram Trigger, OpenAI Chat +8
AI & RAG

AI Agent Workflow. Uses telegramTrigger, chatTrigger, telegram, openAi. Event-driven trigger; 82 nodes.

Telegram Trigger, Chat Trigger, Telegram +7
AI & RAG

Digital marketers, content creators, social media managers, and businesses who want to use AI marketing automation for YouTube Shorts without spending hours on production. This AI workflow helps anyon

OpenAI, HTTP Request, OpenAI Chat +7
AI & RAG

Transform your salon/service business with this streamlined Telegram automation system featuring Claude integration, zero-setup database management, and intelligent conversation handling. Claude MCP I

Redis, Agent Tool, Google Calendar +10