# templates

name: Multi-Source News Curator with Mistral AI Analysis, Summaries & Custom Channels
author_name: Hybroht
author_username: hybroht
categories: []
created_at: 2025-07-18T22:44:28.618Z
updated_at: 2025-07-18T22:44:28.618Z
url: https://n8n.io/workflows/6157
scraped_at: 2025-12-24 13:02:44
description:
  Flexible News Curator - Multi-Sources, AI Analysis, Summaries, Translation, and Settable Channels

  🎬 Overview

  The Flexible News Curator workflow can automate the collection, filtering, AI-driven analysis, and summarization of news from diverse sources of your interest. Using customizable search themes, RSS feeds, and (optional) video descriptions, it delivers concise, quality news summaries via configurable channels. This workflow is designed to help reduce information overload and keep you updated effortlessly.

  Click the image below to watch the video guide:

  ✨ Features

  Multi-Source News Aggregation**: Collect news from customizable RSS feeds, SerpAPI, and Video Channel Feeds (if enabled).
  AI-Powered News Selection \& Summarization**: Uses advanced AI agents (Mistral Cloud Chat Model by default) to select, analyze, and summarize top news.
  Quality Assurance Step**: Optional AI-powered filtering to improve news selection quality before analysis.
  Multi-Language Translation \& Tone Customization**: Translate summaries and customize tone for localized or tailored consumption.
  Multi-Channel Delivery**: Send outputs via Email, Telegram, WhatsApp, Webhook, or save to disk.
  Advanced Filtering**: Regex-based filtering on URLs, titles, and content to exclude unwanted articles.
  Sub-Workflow Architecture**: Modular handling of video transcripts, content retrieval, multi-theme searching, and more.
  Flexible Scheduling \& Trigger Options**: Supports schedule-based triggering, email (IMAP) triggers, and webhook-based activation.
  (Optional) Video Search**: Video content descriptions via Video Channel Feeds.

  👤 Who is this for?

  This workflow benefits professionals, researchers, marketers, and anyone who needs to stay informed about specific news themes without wasting time on irrelevant information or reading too many news to select the most interesting ones.

  💡 What problem does this solve?

  The workflow tackles the challenge of information overload by automatically filtering, summarizing, and delivering the essential news tailored to your interests and preferences. It integrates various data sources and channels for comprehensive yet efficient news consumption. Ideal use-cases include:

  Monitoring breakthroughs in research fields
  Receiving daily business opportunity updates (e.g., real estate)
  Lower the cognitive load required to follow your favorite news
  Translating news summaries to your chosen language

  🔍 What this workflow does

  The workflow gathers news from RSS feeds, search engines, and social media, then:

  Filters duplicates and irrelevant content via custom regex filters and date ranges.
  Applies optional AI-powered Quality Assurance for headline evaluation.
  Selects top news articles with AI analysis focused on user-defined criteria and audience.
  Summarizes individual articles using AI summarization agents, ensuring structured, consistent outputs.
  Optionally translates and adjusts the tone of summaries.
  Distributes summaries through configured channels such as email, social media, messaging apps, or webhook calls.

  🔄 Workflow Steps

  1. News Gathering

  Fetch news using RSS feeds, SerpAPI search, and optionally video channel feeds.
  Standardize output structures for seamless merging.
  Employ sub-workflows for video transcript retrieval and looping over custom RSS feed lists.

  2. Filtering

  Remove duplicates and news outside the specified date range.
  Exclude articles matching user-defined keywords via regex filters in URLs, titles, and content.
  Limit the number of news articles for AI analysis.

  3. News Selection

  Optionally invoke an AI Quality Assurance agent to pre-filter headlines.
  Aggregate news for AI analysis.
  Select and summarize top news articles with AI agents using customizable criteria.
  Parse AI responses into defined JSON structures to ensure consistent data.

  4. News Summarization

  Prepare individual article content.
  Summarize content with AI agents and validate structured output.

  5. Sender Preparation

  Combine general summaries with selected top news summaries.
  Format final summaries as text and HTML suitable for delivery.
  Optionally apply translation and tone adjustment.

  6. Sending

  Deliver summaries through selected channels (Email, Telegram, WhatsApp, Webhook).
  Optionally save the output to disk as JSON.

  📌 Expected Input / Configuration

  The workflow is primarily configured via the Configure Workflow Args node or the Global Variables custom node, with these key parameters:

  | Parameter | Description | Type |
  | :-- | :-- | :-- |
  | search_themes | List of keywords/themes to search in SerpAPI | List of strings |
  | datetime_delta | Number of days back to include news from; e.g., 0 = today | Integer |
  | link_censor | Regex to exclude unwanted URLs | Regex string |
  | title_censor | Regex to exclude unwanted titles | Regex string |
  | content_censor | Regex to exclude unwanted content | Regex string |
  | use_qa | Flag to enable AI Quality Assurance for headline filtering | Boolean |
  | max_news_analysis | Max number of articles sent to News Analyzer | Integer |
  | qa_max_news | Number of headlines the QA Agent analyzes | Integer |
  | qa_max_top_news | Number of headlines selected by QA Agent | Integer |
  | qa_check_criteria | Criteria used by QA Agent to discard low-quality headlines | List of strings |
  | qa_select_criteria | Criteria used by QA Agent to rank/select the best headlines | List of strings |
  | news_focus | What the News Analyzer should focus on while selecting news | String |
  | news_target_audience | Target audience description for the News Analyzer | String |
  | news_criteria | Instructions for the News Analyzer to identify relevant news | List of strings |
  | language | Language for news summaries; triggers translation if not English | String |
  | translator_tone | Tone for translation (e.g., casual, professional) | String |
  | translator_notes | Additional instructions for the translator | String |
  | email_sender | Email address used for sending (via SMTP) | String |
  | email_recipients | Recipient email addresses (comma-separated) | String |
  | email_subject | Email subject line | String |
  | telegram_chat_id | Telegram chat ID for sending notifications | String |
  | phone_number | Phone number for WhatsApp messages | String |
  | rss_feeds | Custom list of RSS feeds (objects with link and needs_content_search properties) | JSON array of objects |
  | video_rss_feeds | Custom list of video RSS feeds | JSON array of objects |
  | enable_video_search | Enable/disable video search functionality | Boolean |
  | enabled_senders | List of enabled delivery channels (email, telegram, whatsapp, webhook, save-to-disk) | List of strings |

  Hint: To add or combine keywords in censors, use the pattern "keyword1|keyword2|keyword3".

  📦 Expected Output

  Structured JSON containing a general news summary, top news with summaries, and metadata, suitable for your preferred channel delivery.

  📌 Example



  An example that includes workflow parameters is provided in a note within the workflow.

  ⚙️ n8n Setup Used

  n8n version:** 1.100.1
  n8n-nodes-serpapi:** 0.1.6
  n8n-nodes-globals:** 1.1.0
  LLM Model:** mistral-small-latest (API)
  IMAP:** imap.gmail.com (Port 993)
  Platform:** Podman 4.3.1 on Linux
  Date:** 2025-07-15

  ⚡ Requirements to Use / Setup

  Self-hosted n8n instance.
  (This workflow contains community nodes that are only compatible with the self-hosted version of n8n.)
  Install necessary custom nodes:
      n8n-nodes-serpapi
      n8n-nodes-globals (or use Edit Field (Set) node instead)
  Configure all sub-workflows bundled within this template (see Sub-Workflows Guide).
  Provide valid credentials to nodes for SerpAPI, Telegram, WhatsApp, Mistral Cloud Chat API, and SMTP (for email).
  Custom RSS feed list must be set by you in the workflow args.
  You must either install the SerpAPI custom node or deactivate it.

  ⚠️ Notes, Assumptions \& Warnings

  The workflow timeout is set to 30 minutes by default; adjust depending on your setup and workload.
  Duplicate removal is applied, but occasional overlaps might still appear depending on feed sources.
  This workflow assumes familiarity with n8n, RSS feeds, API key management and regex expressions.
  Video search only works for configured video channels; remember to respect the rights of these channels.
  Using AI agents (Mistral or substitute LLMs) requires access to their API services and keys.
  Out-of-the-box customization is done via the Global Variables node or direct workflow argument edits.

  ℹ️ About Us

  This workflow was developed by the Hybroht team of AI enthusiasts and developers dedicated to enhancing the capabilities of AI through collaborative processes. Our goal is to create tools that harness the possibilities of AI technology and more. For questions, support, or feature requests, reach out via contact@hybroht.com.

  ❓ Questions & Issues

  We will answer any questions, provided they are related to this workflow.

  Please contact us if there is any bug/issue with this workflow. We will assist you.

  ⚖️ Warranty & Legal Notice

  You can view the full license terms here. Please review them before making your purchase.

  By purchasing this product, you agree to these terms.

nodes_used:
  ["n8n-nodes-base.merge","n8n-nodes-base.aggregate","n8n-nodes-base.filter","n8n-nodes-base.limit","@n8n/n8n-nodes-langchain.lmChatMistralCloud","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.splitOut","n8n-nodes-base.filter","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.merge","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.markdown","n8n-nodes-base.executeWorkflow","n8n-nodes-base.stickyNote","n8n-nodes-base.filter","n8n-nodes-base.code","n8n-nodes-base.executeWorkflow","n8n-nodes-base.splitInBatches","n8n-nodes-base.filter","n8n-nodes-base.if","n8n-nodes-base.executeWorkflow","n8n-nodes-base.rssFeedRead","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-globals.globalConstants","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.markdown","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.if","n8n-nodes-base.stopAndError","n8n-nodes-base.switch","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches","n8n-nodes-base.splitOut","n8n-nodes-base.if","n8n-nodes-base.removeDuplicates","n8n-nodes-base.set","n8n-nodes-base.rssFeedRead","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.if","n8n-nodes-base.aggregate","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.splitOut","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.manualTrigger","n8n-nodes-globals.globalConstants","n8n-nodes-base.code","n8n-nodes-base.emailReadImap","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.readWriteFile","n8n-nodes-base.function","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.emailSend","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.whatsApp","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.sort","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.code","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.xml","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.splitOut","n8n-nodes-base.set","n8n-nodes-serpapi.serpApi","n8n-nodes-base.stickyNote","n8n-nodes-base.filter","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.executeWorkflow","n8n-nodes-base.stickyNote","n8n-nodes-base.executeWorkflow"]

workflow_json_compressed:
  [encoded data, 10512 characters]


name: Multi-Channel AI Appointment Confirmation with GPT-4, ElevenLabs & Twilio
author_name: Varritech
author_username: varritech
categories: []
created_at: 2025-07-19T07:06:52.545Z
updated_at: 2025-07-19T07:06:52.545Z
url: https://n8n.io/workflows/6163
scraped_at: 2025-12-24 13:02:46
description:
  📆 Workflow: AI Appointment Booking Assistant

  ⚡ About the Creators  
  This workflow was created by Varritech Technologies, a cutting-edge software agency that helps founders and operators go from idea to production 5× faster using AI. Based in New York City, we specialize in automating client-facing workflows like appointment setting, lead engagement, and support follow-ups.  
  Need help adapting this flow for your business? Reach out at varritech.com.

  🧠 What This Workflow Does  
  This flow connects to varritech.com/booking and uses AI agents to intelligently manage the first stage of appointment scheduling — collecting user intent, formatting the data, confirming via calendar + email + SMS, and boosting follow-through with personalized voice messages.

  🏗️ Architecture Overview  
  The workflow is designed to maximize conversion and show-up rate by combining structured automation with human-style messaging:

  🔗 Webhook Trigger — Receives booking form submissions
  🧠 AI Agents — Format phone numbers & craft natural confirmation messages
  📅 Google Calendar — Schedules the meeting with auto-generated Meet link
  📧 Emails — Send branded confirmation to client + internal team
  🎙️ ElevenLabs TTS — Turns a personalized message into audio
  ☁️ Cloudinary Upload — Hosts the voice clip for SMS sharing
  📲 Twilio SMS — Sends a text with the appointment time + audio

  📦 Node-by-Node Breakdown  
  flowchart LR  
    A[Webhook: Booking Submission] --&gt; B[Function: Extract + Format Data]  
    B --&gt; C[Langchain Agent: Format Phone]  
    C --&gt; D[Postgres: Store Appointment]  
    B --&gt; E[Google Calendar: Create Event]  
    B --&gt; F[Gmail: Notify Internal Team]  
    B --&gt; G[Gmail: Confirm to Client]  
    B --&gt; H[Langchain Agent: Voice Message Script]  
    H --&gt; I[Function: Escape for JSON]  
    I --&gt; J[HTTP: ElevenLabs TTS]  
    J --&gt; K[Function: Rename to MP3]  
    K --&gt; L[HTTP: Cloudinary Upload]  
    L --&gt; M[Merge Data for Twilio]  
    M --&gt; N[Twilio: Send Confirmation Text]

  🔍 Design Rationale & Best Practices  

  AI Personalization Boosts Follow-Through  
  Personalized messages and human-sounding voice notes significantly increase user engagement and trust.

  Multi-Channel Confirmation  
  Email + calendar + SMS ensures the user receives the booking details via their preferred method.

  AI Agents for Edge Cases  
  Agents are used for formatting and natural-language generation to make the system flexible and future-proof.

  Minimal Manual Input Required  
  Clients simply fill out a form — the rest is handled with high-quality automation.

  Fully Extensible  
  Swap in different voice APIs, CRMs, or calendar providers with minimal changes to the core logic.

nodes_used:
  ["n8n-nodes-base.respondToWebhook","n8n-nodes-base.postgres","n8n-nodes-base.code","n8n-nodes-base.twilio","n8n-nodes-base.gmail","n8n-nodes-base.googleCalendar","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.code","n8n-nodes-base.webhook","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE6VY227jOBL9FUHPZpZ3kXnabOaCwU5vD7pne3cxaAyKZDEtjCN5LTndjUb+fUp2EsmOHDuYl8CwyeKp4qlzivlW1qm8LK/tB/3ff66Ry1/+96O98+WivMUeystvZd10PTQRfxrW2RBzNpgdcIuOO+u5NNICN1GCjlXIJoETXGTn0TipuMBUOe615TZrTnF7vF0tocfrNabuPfab1XVL32CPdEC/3uD9omzgFum0q9WqrZv+Fpu++Efb/oHr4rcf2nXxHpZYfMB1V7fNxyEk3HTl5W8faWObcPj4bZeWU1WKQUcmlUWmJSjmsxCMe5G0Cqqy3pVPx73DbtU2qejb4j8YPtGBQ+yvq+G3xjVsG5wF6PBivVv6azsuXLVd3RMgOt1JvmDGcgK0gjUF7wkr1fJ+F+4BeXkpLsT94hFqBqeDRobBaaa5MAyUNUxp7zygtDyoEeovbdffEIijAFfjggkwqQmYdSeByQv7BAwjhCSlYnTjktE9BhaMrJhB4UBVWXohJ8Aewxbff+khbs89hjHSx318lDdfyNPwnsARF22EnBjEFJlWIrKASH+MNT4GiUnDCO490u1et02u17cwHFn8il/6o/j6z/WybvcRisryhTldwfFiebaYpBhK5zzToDNxMDmmfdQCtPNOuQOIRMDrdd31NTTtUXQ3t1Av98Epqt5wQwTu846X26ZNRB4F3jCq1bYLEvOR/oCtHFZ5qNJwgycYMWakrUR0iqiafGA6cWAgtGcCkNpNCxX9pOjU59TtxTX1bJOAeHFH7Xw8q7a9WeLj4v30KDNK74yuUk9QVUKHLg3kjcSPKAgqt5yZ6H32GgwAjlC/XyKB+xlCV3z3lb6rY/EGuw5u8CjeT32/eof/32DX74M1pAFnSIC+GMnMPXjPfWTJe0tMQc2cTEScZHT2FSqIcQR7lVJxtUl1O9Dl3+9+fj1EwYkv7nRBCeOihOVn+Nq93fSrTf8dDNaw0+pH+SIt0Cg4U8kIwm6BhZQrlpOKHINxJGsj9g9tHfGxtsR1yHT0mMDfKYO/jVksobmJn6BuLmh1c5AEE4NknMMKN4IFk5QQnhTWESsCd8xh9kwZZwW4zCFVI9i3K2yufiquP0FfvCFAyzOALm+H5dud9SFeYrE+B+9E5WLUpgqWeWo8ponGzHMIzHhpKiMNDz5PbWz74XzVJX9eVKcRjXjQeM5tZZn1huiJEJnjERi5FEijZVYwwXPKSz/PWSgjXi6kO5QyoyqAiJYlyYdKaM68dtTUhEiGCjz601L2lAcNKKTExrBAGkzq4IF5kmMWaEYIkLXnU/d4g+sXhOD24ddpf0l5lleoibZWSgVjJLUQ16QBmJD5ymRGdySFTclKJyaC1UVYveaq5UC+06o0ligoAdQrhllrSeuV8kRCx6lzjKh4iCYGP+Ney/pFkZ+xLuIg27Xx9L6joukCqsTIpAYHBTJPRTZK4h1cjmC096+xLrpQam9fsSqnIZ2cWfCgmVAog6G5VU39gLr+6mYvkdcoE7XU4oxBYaJLBMIF6xVTsap242owVHHS0EoGK2Llwwu6JP6SMNFY+NBwZ+tSDElw5xKxsxpsCqmalnuGShuaETIYnOB9T4YR+w2N/cXORgoaFruzdL/drt8tH8Ps4/f21fgRhSfHrUi4XB6mR89cJEfwBn1QKXEX0hR/Hf/4Wvyr7VEcpXa3XTSsOdACMRBcPMdXxrbpB+5cluXxIdJagdwHwbIlG9BV0CxE4i1k4XyVLb0X5pG+Gij56TBmPR/CXwZKq4dp/45OyrDscFF22Pd1c7Pdil8wboYD3q4TXfhleSeGGHe7/Ttlp7GUp2iZpAmSPDkO3B/ea15X9KQM5ICDFhOIBrfPim3gnSbTB1KUAT09/IYcz5j1txsW9LpN+KW85PcfPxKgBz2di3fObDgb88GO52IeH+FmIz0a6VyoF99ds9GexG0u3IHXzQZ4eoPOBXjpLT0P57AWr4Yld4Gej2sUCerfBzXZ0HU9fDeJemIafbb3EPqMEJ868rmznDxl7oZnmfDsXwOH9V7sN8n8a/P4phPlOr7xxEvwDJgHY8XxHc/re3zti6QSu+LPQ5+Uf7tqvjKzanIwuM22xFHD3LFraoqnybW3+pnuHRe3+ebef2HMoL+//xMxVQOLWhQAAA==


name: Build & Deploy MVPs from Text Prompts with AI, GitHub & Vercel
author_name: Varritech
author_username: varritech
categories: []
created_at: 2025-07-19T07:30:32.703Z
updated_at: 2025-07-19T07:30:32.703Z
url: https://n8n.io/workflows/6164
scraped_at: 2025-12-24 13:02:46
description:
  ⚡ Instant MVP Builder  
  Idea, Build, and Deploy — in Minutes, with AI  
  by Varritech Technologies

  🏗️ What Is It?

  Instant MVP Builder is a plug-and-play n8n workflow that takes a plain-English app idea and turns it into a fully deployed web application — without writing a single line of code.

  Designed for founders, solopreneurs, and agencies, this system uses AI agents, GitHub, and Vercel to automatically:

  Analyze and structure the app idea
  Generate source code with GPT
  Deploy a live frontend to the web

  🧠 How It Works

  Webhook Trigger  
     Accepts a chat message or form input with a basic app idea.

  AI Prompt Agent (Langchain)  
     Turns the message into structured specs (name, features, stack, etc).

  Code Generator Agent (OpenAI)  
     Writes frontend code (React) tailored to the app spec.

  GitHub Integration  
     Creates a new repo from a starter template and pushes the code.

  Vercel Deployment  
     Deploys the app and returns a public URL — all automatically.

  🔧 Built With

  n8n** – Automation engine for flow orchestration  
  Langchain + OpenAI** – For AI-powered prompt and code creation  
  GitHub API** – To manage repositories  
  Vercel API** – For instant frontend deployment  
  JavaScript** – For logic and parsing

  🎯 Use Cases

  🚀 Startup MVP generation  
  🧪 Hackathon-ready app builds  
  🎨 Client landing page creation  
  📦 Internal tool prototypes  
  💡 “Idea-to-product” workflows

  🟨 What Makes It Special?

  🧠 AI-generated code, not templates  
  ⚙️ Fully automated from input to deploy  
  🌍 Public app URL in minutes  
  🧩 Easily customizable: edit prompts, swap repo, or deploy elsewhere  
  🧱 Includes built-in sticky notes + Notion setup guide

  🛠️ What’s Included

  ✅ Cleaned, import-ready .json file for n8n  
  ✅ Notion setup guide  
  ✅ In-flow sticky notes describing every node  
  ✅ No hardcoded secrets — ready for your credentials  
  ✅ Lifetime access & updates for personal use

  📄 License

  This workflow is licensed for single-business or internal use.

  Need something more? We offer:

  🤝 Resell licenses for agencies  
  🌟 White-label customization  
  🔧 Prompt tuning or backend extensions

  👋 About Varritech

  Varritech Technologies is an AI-first development agency helping businesses go from idea to production 5× faster. We specialize in building autonomous engineering workflows, onboarding systems, sales funnels, and internal tools — all powered by modern AI.

  📬 christian@varritech.com  
  🌐 varritech.com

  ✅ Build smarter. Launch faster. Automate everything.  
  With Instant MVP Builder, your next app idea doesn’t need a dev — just a trigger.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.respondToWebhook","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.code","n8n-nodes-base.manualTrigger","n8n-nodes-base.code","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.githubTool","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.github","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.github","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.respondToWebhook","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.github","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4348 characters]


name: Automate Google Business Profile Posts with GPT-4 & Google Sheets
author_name: Muhammad Qaisar Mehmood
author_username: qaisar
categories: []
created_at: 2025-07-19T08:11:14.468Z
updated_at: 2025-07-19T08:11:14.468Z
url: https://n8n.io/workflows/6165
scraped_at: 2025-12-24 13:02:44
description:
  This powerful n8n workflow automatically generates and publishes Google Business Profile (GMB) posts using topics listed in a Google Sheet.  
  It uses OpenAI to write SEO-optimized post descriptions and generate AI images based on the topic — then posts them directly to your GMB profile and marks them as published in the sheet.

  🎯 Use Case  
  Perfect for:

  Digital marketers managing local SEO  
  Agencies automating content for clients  
  Businesses regularly posting to GMB  
  Teams managing editorial calendars via Google Sheets

  ⚙️ Workflow Overview  

  | 🧩 Node                        | 🔧 Purpose |
  |-------------------------------|------------|
  | 🕘 Schedule Trigger        | Runs daily at 9AM (configurable) |
  | 📄 Get Unpublished Row     | Reads a row from Google Sheet where Status is not marked "Published" |
  | ✍️ Generate Post Text      | Uses OpenAI (GPT-4) to write a compelling, local-business optimized post |
  | 🖼 Generate Post Image     | Uses DALL·E or similar to create an image matching the topic |
  | 📬 Post to GMB             | Publishes the generated content to your Google Business Profile |
  | ✅ Update Sheet            | Marks the status as "Published" in the Google Sheet |

  📄 Google Sheet Format

  | Column Name | Description |
  |-------------|-------------|
  | Topic       | The subject or idea for the GMB post |
  | Status      | Should be blank or "Unpublished" to trigger the flow |
  | Date        | (Optional) Posting schedule or note |
  | Notes       | (Optional) Internal info — not used in the automation |

  🔐 Google My Business API Setup

  1. Google Cloud Configuration  
  Go to Google Cloud Console  
  Enable the Google My Business API  
  Create OAuth2 Client ID and Client Secret  
  Add this required scope:  
  2. Request for GMB Quota  

  You need to request for GMB (Google Business Profile) API Quota from here, beacuse by deafult it  sets to zero:  https://support.google.com/business/contact/api_default
  3. n8n Credential Setup  
  In n8n, go to Credentials &gt; Google OAuth2  
  Use your Client ID and Client Secret  
  Use this credential in GMB-related nodes  

  🧠 OpenAI Prompt Customization

  Modify the prompt in the OpenAI node to match your brand’s voice:

  Example Prompt  
  Write a short, engaging Google Business Post about: "{{ $json.topic }}".  
  Make it suitable for a local audience and include a subtle call to action.

  🧪 Optional Enhancements

  Add If node to delay publishing on certain days  
  Use Slack or Email notifications to alert before/after posting  
  Use Multiple Businesses by adding a Router or Switch node per GMB account  

  ✅ Benefits

  🔁 Fully automated GMB posting  
  ✍️ SEO-optimized, AI-written content  
  🖼 Matching images for visual engagement  
  📊 Maintains a content log via Google Sheets  
  🧠 Easily customizable prompt logic and schedule  

nodes_used:
  ["n8n-nodes-base.googleSheets","n8n-nodes-base.googleBusinessProfile","n8n-nodes-base.googleSheets","n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi"]

workflow_json_compressed:
  H4sIAAAAAAAAE52UXW/TMBSG/0qUK5DqEn/G7hUbiLGLiYkBN2hC/jhuI1JnSlIBmvrfOSmFlDX7gLvWef2ex+859m2+ht7mi9u8Sl1vk4fzkC9yI7g1kXnJbBktd5KDZ6B0wZWhShoePPBIhS6l4rx0RjBFS7AWuAslt/l2lqcmQJcvPqP1YFkqIUJZSOLBSyJ44YiVKpLoHNoI6qyIOe6ya0D1GfTZx3SzcXXVrSBk75tv+LH/cTN8TDqRnTtxtoP5smmWNVytAPoORTdNV/VVk7A0kYbNmNbXuGpbdO6hRaTb7S+rT/hvJxRztZ3tOcHREFTURAuHnFJH4qSjhLFSGCGs58qOnJdN12d9k51dnD7Cd7rpqgRdd9k2sarhb1DJ9FM46R9KCYrJKAyJICIR0RREG4m81AitNLiS85HywrZfM9tll7/z/I8sS/nPURaMmwLDJAVOBhFaMoK9NiR4Fqn2XigWRsgrj2CbGrIPbbVcQkvvhez2yr1wsGj6YdbyKxyb/Wr27LX9kTVt9rbZtM/n2Z3JwFbec5yd13l6U+PILfp2A3ebMGfjsOjCGi8c8bzE8AvviNPUEGNAmKIINsSDNpycZydLSP14sJd4shfj6Wqbln5lqzS3e90hMi3VjKrHGsDm45Qw4SONOLwSKCciCEqsk5ZoG8BqByqGcsR7dwMJEV+tbJ9dIE/9BM56Pch3O6sp3PJR3iFO1PgmJfDD3kE0RoW/11gIDfEhGarfd+l2qhk+YwG+54tie32NlQ6VU04PXIxJv+OI0NVWX4ZANtiz/dpBheOeH8nvFjm+CFPoD76Qk/BTO6acj5En7Lbbn9Vfyak7BgAA


name: Gmail Assistant with Full Gmail history RAG using OpenAI
author_name: Zain Ali
author_username: zain104
categories: []
created_at: 2025-07-19T08:43:11.786Z
updated_at: 2025-07-19T08:43:11.786Z
url: https://n8n.io/workflows/6169
scraped_at: 2025-12-24 13:02:43
description:
  🧠 RAG with Full Gmail history + Real time email updates in RAG using OpenAI & Qdrant

  &gt; Summary:  
  &gt; This workflow listens for new Gmail messages, extracts and cleans email content, generates embeddings via OpenAI, stores them in a Qdrant vector database, and then enables a Retrieval‑Augmented‑Generation (RAG) agent to answer user queries against those stored emails. It’s designed for teams or bots that need conversational access to past emails.

  🧑‍🤝‍🧑 Who’s it for
  Support teams** who want to surface past customer emails in chatbots or help‑desk portals  
  Sales ops** that need AI‑powered summaries and quick lookup of email histories  
  Developers** building RAG agents over email archives  

  ⚙️ How it works / What it does
  Trigger  
     Gmail Trigger polls every minute for new messages.  
  Fetch & Clean  
     Get Mail Data pulls full message metadata and body.  
     Code node normalizes the body (removes line breaks, collapses spaces).  
  Embed & Store  
     Embeddings OpenAI node computes vector embeddings.  
     Qdrant Vector Store inserts embeddings + metadata into the emails_history collection.  
  Batch Processing  
     SplitInBatches handles large inbox loads in chunks of 50.  
  RAG Interaction  
     When chat message received → RAG Agent → uses Qdrant Email Vector Store as a tool to retrieve relevant email snippets before responding.  
  Memory  
     Simple Memory buffer ensures the agent retains recent context.  

  🛠️ How to set up
  n8n Instance  
     Deploy n8n (self‑hosted or via Coolify/Docker).  
  Credentials  
     Create an OAuth2 credential in n8n for Gmail (with Gmail API scopes).  
     Add your OpenAI API key in n8n credentials.  
  Qdrant  
     Stand up a Qdrant instance (self‑hosted or Qdrant Cloud).  
     Note your host, port, and API key (if any).  
  Import Workflow  
     In n8n, go to Workflows → Import → paste the JSON you provided.  
     Ensure each credential reference (Gmail & OpenAI) matches your n8n credential IDs.  
  Test  
     Click Execute Workflow or send a test email to your Gmail.  
     Monitor n8n logs: you should see new points in Qdrant and RAG responses.  

  📋 Requirements
  n8n** (Self-hosted or Cloud)  
  Gmail API** enabled on a Google Cloud project  
  OpenAI API** access (with Embedding & Chat endpoints)  
  Qdrant** (hosted or cloud) with a collection named emails_history  

  🎨 How to customize the workflow
  Change Collection Name**  
    Update the qdrantCollection.value in all Qdrant nodes if you prefer a different collection.  
  Adjust Polling Frequency**  
    In the Gmail Trigger node, switch from everyMinute to everyFiveMinutes or a webhook‑style trigger.  
  Metadata Tags**  
    In Enhanced Default Data Loader, tweak the metadataValues to tag by folder, label, or sender domain.  
  Batch Size**  
    In SplitInBatches, change batchSize to suit your inbox volume.  
  RAG Agent Prompt**  
    Customize the systemMessage in the RAG Agent node to set the assistant’s tone, instruct on date handling, or add additional tools.  
  Additional Tools**  
    Chain other n8n nodes (e.g., Slack, Discord) after the RAG Agent to broadcast AI answers to team channels.  

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreQdrant","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.vectorStoreQdrant","n8n-nodes-base.gmailTrigger","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.code","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.vectorStoreQdrant","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterCharacterTextSplitter","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterCharacterTextSplitter","@n8n/n8n-nodes-langchain.embeddingsOpenAi"]

workflow_json_compressed:
  [encoded data, 4268 characters]


name: Send Bulk WhatsApp Messages from Google Sheets using WasenderAPI
author_name: SpaGreen Creative
author_username: spagreen
categories: []
created_at: 2025-07-19T13:58:13.116Z
updated_at: 2025-07-19T13:58:13.116Z
url: https://n8n.io/workflows/6175
scraped_at: 2025-12-24 13:02:46
description:
  WhatsApp Bulk Message Broadcast From Google Sheet (Unofficial API)

  Who’s it for

  This workflow is designed for marketers, small business owners, freelancers, and support teams who want to automate WhatsApp messaging using a Google Sheet without paying for the WhatsApp Business API. Ideal for those who need a budget-friendly and scalable bulk messaging solution using their personal or business WhatsApp number.

  How it works / What it does

  This workflow reads a Google Sheet for rows where the Status column is set to pending, sends a message via the connected WhatsApp number using the WasenderAPI, and updates the message status to sent. It repeats this process every 10 seconds while maintaining a safe API rate limit.

  How to set up

  Duplicate the Sample Sheet: Use this format Sample Sheet.
  Fill contacts: Add WhatsApp numbers, names, and messages. Set the Status column to pending.
  Connect Google Sheets in the n8n node.
  Subscribe to WasenderAPI and get your API key.
  Paste API Key into the HTTP node (if using unofficial API).
  Activate your workflow in n8n.

  Requirements

  Google Sheets API credentials
  A configured Google Sheet
  WhatsApp (Personal or Business)
  WasenderAPI.com subscription (approx. $6/month)
  n8n setup with credentials for Google Sheets

  How to customize the workflow

  Add delay**: Insert a Wait node if you want to add custom time gaps between messages.
  Change message format**: Modify the HTTP/Send Template node to send different message types (text, media, etc.).
  Personalize content**: Use dynamic data from sheet columns (e.g., name, image URL).
  Add error handling**: Insert a Set or IF node after the WhatsApp send node to capture and log failed deliveries.

  Workflow Highlights

  Triggers every 5 Minutes
  Reads pending messages from Google Sheets
  Sends WhatsApp messages using WasenderAPI or WhatsApp Cloud API
  Updates each row’s Status to sent

  Support & Community

  Need help setting up or customizing the workflow? Reach out here:

  WhatsApp: Chat with Support  
  Discord: Join SpaGreen Server  
  Facebook Group: SpaGreen Community  
  Website: SpaGreen Creative  
  Envato: SpaGreen Portfolio

nodes_used:
  ["n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.limit","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  H4sIAAAAAAAAE62VbVPbRhDHv4pGr32M7lF3fkeY0tJJigukmWmHF/ewslWE5EhnCMPw3buSKTJEJiSTV/ZIe7u//97+V/dpGdJ5Sv+uF2d3/y7E79nys1zcprP0GqJN5/dpWXfR1h5O+jimaQFa84wyyBk4K3Of5zTI4Ircc8q1t7wArjj30llmQ6GoMppRzWQIAvNGuF5XNsJRC6E7h7hZHzX4BCJggdhu4GGW1vYasNqvTbOsIDlfAcQuiU3yaWVjd7heJ+821VXyAbrOLst6mdyUNvlYN0VR+tJWyeHipC9kl106/+cS0zUB+r/3W7FZxnOtMiCFC4IIZTKiM8UJOCM8tTYoEdIniGOIfpUcVlWygDr01f7cQFtClxRNOzL0Be/W/YFa12SoSJzt4GA5iNhqwKB105WxbGrEEXrGGeKtbYulIrTIeN+rbyJ0J/Vx1dym88JWHczSFmJ7d1of27J6etbX+wtPDdnEgXqY/S+Qs8CpoIQFqohwmSQorSBGMLy0zOeKslHg0crWS+xyxEtJmiI5a267pKyTc6jjD6gylM2ompC1FzdYqpjLDaFeABECcW2QmiCpKYqQixD4iPu+adbJ6Q20yQmOUreXsFtXZTyp31m8PnjBKNme1sMX8JsIpzjv023mT9QFzbW1XBENxhBhqCGGs4xwJTizKMJ5OVJ/suX+Zt5uX+42EQGp6Qlvwa2a5mpwXw7SUWcdAS04EUUuiBaKEYbmk0xljEpIv9F4ekCfJNCcCZMLTbLgLRGZDcRmRSCMOWWEzjDdjhHel9evaKge3+6I4JJNd/k50IijLeTSaUKDx466EIjRQREnGLUF+pQWZsS5aMvlEqfgFxyFu0QmH8oab27/OOAUhE0Fj8eekxL0xVtQD9g4tIY5CUzjUcnw+vOc6GALZFfG2zxzuS9G2PNY+qu75A90Nt2POAT1MS/oKONshjW+clXqmzr2Np2n6f6+5lZ6kduM2H52hDGMaKUckRK9CpZx63fWAdo+PK41SD52/cL77eJikZzB5w10+wdgFeN6jNnBz7l6nOXvdpvAhuM562N5M4Z0ECNiDQ3YpsDg0zbgrc7TG9p34mabYXBNJr0SlOIOlA7laxww670gLDMUROaVCxkSYytr8H2qIfFgWPy9tmUvAr8dvdbX9s8QOcPvZYAv6Tx7uLxEkK1pfkKeF9FTGd+2yL9KPxszvPnuJxn3OHIK9bs/qpMFXxW8U3YI/pa2KcznW3uS4a1KJkfg+UadyP/w8B8/Cng4oQkAAA==


name: Daily Email Digest with GPT-4 Summaries to Google Docs
author_name: Michael Gullo
author_username: mgullo
categories: []
created_at: 2025-07-19T17:40:17.830Z
updated_at: 2025-07-19T17:40:17.830Z
url: https://n8n.io/workflows/6180
scraped_at: 2025-12-24 13:02:41
description:
  A Customizable n8n Automation That Turns Your Inbox Into A Daily Digest.
  The goal of this workflow is to offer a highly customizable foundation that users can tailor to fit their specific platform and setup. While the current version uses Gmail, it can easily be adapted to work with other providers by replacing the email node with alternatives such as IMAP Email Trigger, Microsoft Outlook, or any compatible Email node.

  This workflow can also be extended to work with platforms like Telegram, WhatsApp, or any service that supports bots and n8n integration. The core objective is to generate scheduled email summaries whether it’s the most recent email, emails from a specific sender, or all emails received within a day.

  I built this workflow as a flexible building block for anyone looking to develop a more advanced email agent. It’s designed to reduce the mental load of reviewing emails each day by automatically delivering a summarized version of your inbox.

  Currently, the summary is saved to Google Docs, chosen for its simplicity and accessibility. However, users can easily modify this to integrate with other document management systems or destinations.

  I plan to continue updating and expanding this workflow to better serve the needs of users. If you have suggestions, ideas, or feedback, I’d love to hear them your input helps make this tool even more useful.

  Workflow Components 
  Schedule Node – Triggers the workflow daily at a specified time.

  Gmail: Get Messages Node – Retrieves the latest email. Can be changed for any amount of emails.

  Limit Node – Ensures only one or any number emails is processed at a time.

  If Node – Checks if any emails were retrieved.

  Code Node – Cleans and formats the email content.

  Code Node – Provides a fallback message if no emails are found.

  OpenAI Summary Node – Summarizes the email using CharGPT.

  Create Google Doc Node – Creates a new Google Document for the summary.

  Update Google Doc Node – Inserts the summarized content into the document.

  Expanding The Workflow
  This workflow is fully modular and easy to extend. To send summaries via Telegram, Slack, or any other emails simply add the respective node after the summary is generated and connect your bot or webhook credentials. To use Outlook instead of Gmail, just swap the email input node with the Microsoft Outlook node or an IMAP Email Trigger, depending on your preferred setup.


  Need Help? Have Questions?
  For consulting and support, or if you have questions, please feel free to connect with me on LinkedIn  or via email. 

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.limit","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.googleDocs","n8n-nodes-base.googleDocs"]

workflow_json_compressed:
  [encoded data, 4720 characters]


name: Verify WhatsApp Numbers in Bulk using Google Sheets & WasenderAPI
author_name: SpaGreen Creative
author_username: spagreen
categories: []
created_at: 2025-07-19T21:20:43.959Z
updated_at: 2025-07-19T21:20:43.959Z
url: https://n8n.io/workflows/6183
scraped_at: 2025-12-24 13:02:43
description:
  Bulk WhatsApp Number Verification via Unofficial API

  Who’s it for

  This workflow is perfect for marketers, CRM managers, support teams, and data verification agents who need to bulk-check WhatsApp number validity without using the official WhatsApp Business API. It is ideal for teams seeking an affordable and scalable way to clean or validate phone number lists from Google Sheets.

  Overview

  This n8n workflow verifies unlimited WhatsApp numbers from a Google Sheet using your own WhatsApp number through the WasenderAPI.com platform.

  How it works / What it does

  Fetches real-time data from Google Sheets  
  Verifies if a number is registered on WhatsApp  
  Implements delay and batch processing to maintain rate limits  
  Updates verification status back to the Google Sheet  

  Requirements

  Before setting up the workflow, ensure you have:

  An active WhatsApp Account (Personal or Business)  
  Google Sheets API configured within your n8n instance  
  A properly structured Google Sheet, like a sample sheet(Included with the workflow template)
  A WasenderAPI.com subscription (starting from ~$6/month)  

  Google Sheet Format

  Use this sample sheet as your base.

  | WhatsApp No   | Verified/Unverified | Status     |
  |---------------|---------------------|------------|
  | +8801XXXXXXX  | (empty)           | (empty)  |

  &gt; Ensure the Status column is initially blank for unverified rows.

  How to set up

  Step 1: Connect to Google Sheets
  Add a Google Sheets node.
  Authenticate with your Google account.
  Select your target document and worksheet.
  Apply a filter to only select rows where Status is empty.

  Step 2: Loop Through Rows with Delay
  Add a SplitInBatches or Code node to process 5 rows at a time.
  Add a Wait node (set to 5 seconds) between each request to respect API limits.

  Step 3: Verify Number via HTTP Request
  Add an HTTP Request node
  Method: POST
  URL: https://app.wasenderapi.com/api/send-message
  Headers:
    Content-Type: application/json
    Authorization: Bearer YOUR_API_KEY
  Workflow Highlights

  Triggers every 5 Minutes
  Reads pending contact from Google Sheets
  Verify WhatsApp number using WasenderAPI or WhatsApp Cloud API
  Updates each row’s Status to Checked

  Support & Community

  Need help setting up or customizing the workflow? Reach out here:

  WhatsApp: Chat with Support  
  Discord: Join SpaGreen Server  
  Facebook Group: SpaGreen Community  
  Website: SpaGreen Creative  
  Envato: SpaGreen Portfolio

nodes_used:
  ["n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.limit","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  H4sIAAAAAAAAE7VWXVPbRhT9Kxo9exntaj/9Bk6Y0tLABJK06eRhP+7aCrbkWmsThuG/98pQbKgUSDt98djW1bnn3D333r3Nq5CP88n6aPF7eve1cRdH579NUj7KF5BsPr7Nq7pNtvZw0sUxTSNoXRaUgWLgrFBeKRpEcFH5kpba2zJCKcvSC2eZDVFSaTSjmokQOOImWCznNsFkBaG9gLReThr8BxJggrRaw90or+0CMNvRen6VfZrZ1B4ul9m79cLBKvsIqyreZJvKZh/qJsbKV3aeHZ6fdNh22ubjP27vRekPn3+5frv8ONv8PDt9s/iaPwK/gQ3+8CtAHuEwdcIKJkihCDWXVI1FMRb8gEn1GcPWy/By2N0XBG8C7KUvuY3C64JERiXhpebEFaAIMCG1LIMX3uwonTbNMjvboMATrFDbiblZdg9qXZMtMnG2hYN2Oa/SSX1kk59BF7Zs2ipVTY2JBdOjkiGTpV0haoIV0rnFesI38OsEZ3iM+TjaeQv38FjLdvtqeTf6m7W1MgqmCFMeWRdOEMNAEEZLZYRzikW/Y/3JVmmQ6vX9wz2CFM0w0gUyvAY3a5qrrams5ELokhEsCSfcRUG0ogWRLnqvBCsLFvN/inoigB7QRwmFMc4wp4nhCMohALGCM+KNLKLU0cWwJ+G0WnxHw/zh6Z6IUrD+Kj8l9EgHmObMKUu8iJbwKB2xXmtSaKodUyBLx3d0LlfVdIoueItWuMlE9mtV48kN2wFdENZzeHjtKVM8w1dRPWCPZK2R4HmgRAvwhFMaiaUKiFTBG1ABsLd3ZC9S5a9usndNAjpMcRvUxTxjR1nJRoQb+Zxg7ps6Qd01XD5cV0Z5QSNlpCjRpDxSQVzUlBQcG67wKlhPd1RP4iDBKj4lhjYZcf1S1dhe1aQ0QjvvCAvMER6MJFprh5NCKmWpYaIQOyrHgL2bHc7n2TnUoaqn2QT1Wp/aLDYPAw7/HeQ7bZrpHC5mAOnZAOAD/V9j8duT+njeXD/2/wrS6uasPrbVvH8m8AO5E0i5ZugNEq1hncCCmEJSIoKKuixLUzq7E/gwop9P7g9tp/Wny8vz7D38uYZ2uO1mKS13MXsKldT9Z/PiiON756UBPAsxEiotulxJQ4ygQIQOZWQ6BO9hz+WQsotk03p4Knv8+mzUUc1HZDvrvm+jR1KUOQZRS1wQriBc4NIwjnpimYGojI9CyD5Sw503wEry15MqVCiN09hfMmClBI/ECcuIAiEF8wa3/56zJzNbT2HLC7ImZu+b6zar6mwyA3+F+/3HHY09rkcvV7HzKsZgD1Wb3fm3kBJabjtS7v2BwWergHNynG9oN1s29wjbPcRx9cRSB2JCwC6WuIxwcuPcjpG7QmqqKOuuDU1dg++gtsA4WPBzYauOLu7+TtaAabZBI7xRBfiWjwtk3BdPv/PCF6S83bl9KQevEL0w93vvv+PsCe0De7UlXgCn/wP6c6F7GfaP5l+Ms950A6u9T9cPr4jehC9Vpy/z0xtdL+xryfV66+ltqxf/9fXuy7C/6Hvg7+7+AlyO51rzDAAA


name: Jarvis: AI Personal Assistant with Multi-Agent Network via WhatsApp
author_name: Gain FLow AI
author_username: gain-flow
categories: []
created_at: 2025-07-19T22:32:53.438Z
updated_at: 2025-07-19T22:32:53.438Z
url: https://n8n.io/workflows/6186
scraped_at: 2025-12-24 13:02:46
description:
  Think of this workflow as your very own J.A.R.V.I.S., the ultimate AI personal assistant, capable of handling a vast array of tasks just like Tony Stark's legendary AI!

  Overview

  This n8n workflow creates a highly intelligent, multi-agent AI system designed to act as your all-in-one personal assistant. At its core is Jarvis, the central AI, who smartly understands your requests and delegates them to specialized "supervisor" AIs. These supervisors then activate their own "sub-agents" (smaller AI workflows) to perform specific tasks, covering everything from managing your work to helping with your personal life and getting you the information you need.

  Use Case

  This powerful workflow is perfect for anyone who wants to automate and streamline almost any digital task. Imagine having an assistant who can:

  Boost Productivity:** Manage your calendar, create and update documents (Google Docs, Sheets, Drive), handle tasks (ClickUp, Google Tasks), and keep your customer data organized (Zoho CRM, Airtable).
  Master Communication:** Draft and search emails, send messages on Slack, and even manage your X (Twitter) interactions.
  Handle Publishing & Content:** Create images, post on social media (Facebook, X, LinkedIn, Instagram), and manage your WordPress content.
  Provide Smart Insights:** Perform deep online research, analyze SEO trends, check financial markets, and gather website performance data from Google Analytics.
  Manage Your Lifestyle:** Keep track of your meal plans and habits in Notion, and even help you with travel planning.

  This system is designed to intelligently choose the best tool for each part of your request, making complex tasks simple.

  How It Works

  It all starts with your input, delivered via WhatsApp. Whether you send a text message, an audio note (which gets transcribed), an image, or a document (from which data like invoices can be extracted), the workflow processes it to understand your need.

  This input then goes to Jarvis, the central AI. Donna acts like a super-smart manager. It quickly figures out which "supervisor" agent is best for your request:
  Productivity Supervisor:** For anything work-related – documents, calendars, tasks, or CRM.
  Communication Supervisor:** For emails, Slack, or X (Twitter).
  Lifestyle Supervisor:** For personal organization like meals or travel.
  Insights Supervisor:** For research, SEO, financial data, or website analytics.
  Publishing Supervisor:** For social media posting, images, or WordPress.

  Donna then hands off your request to the chosen supervisor. Each supervisor, in turn, uses its own set of specialized "sub-agents" (individual n8n workflows) to get the job done. For example, if you ask Donna to "find me flight information," she directs it to the "Lifestyle Supervisor," which then uses the "Travel Agent" to look up flights. The results are then sent back to you directly through WhatsApp. This "Agent as a Tool" setup means complex tasks are broken down and handled by the right expert AI.

  How to Set It Up

  Individual Agent Workflows: This system is built with many specialized AI "agents" working together. To get started, you'll need to set up a separate n8n workflow for each of the individual agents (like "Notion Agent," "Email Agent," "SEO Agent," etc.).
  Connect Agents: Once created, these individual agent workflows must be correctly linked to their designated "call workflow" tools within the main supervisor workflows. This tells Donna and her supervisors which tools to use for each task.
  Credentials: Make sure you've properly connected all necessary accounts and API keys (like Google, OpenAI, Slack, Airtable, etc.) within their respective agent workflows.
  Activate: After setting up and linking all parts and adding your credentials, activate this main workflow.

  For more detailed setup instructions, please refer to our Detailed Setup Guide. If you need any further help, don't hesitate to email us at info.gainflow@gmail.com.

nodes_used:
  ["@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.whatsApp","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.whatsAppTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","n8n-nodes-base.extractFromFile","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.extractFromFile","n8n-nodes-base.extractFromFile","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleDriveTool","n8n-nodes-base.googleDriveTool","n8n-nodes-base.googleDriveTool","n8n-nodes-base.googleDriveTool","n8n-nodes-base.googleDriveTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleDocsTool","n8n-nodes-base.googleDocsTool","n8n-nodes-base.googleDocsTool","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.clickUpTool","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.clickUpTool","n8n-nodes-base.clickUpTool","n8n-nodes-base.clickUpTool","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.googleDriveTool","n8n-nodes-base.googleSheetsTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.zohoCrmTool","n8n-nodes-base.zohoCrmTool","n8n-nodes-base.zohoCrmTool","n8n-nodes-base.zohoCrmTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.airtableTool","n8n-nodes-base.airtableTool","n8n-nodes-base.airtableTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolCalculator","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolCalculator","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleAnalyticsTool","n8n-nodes-base.googleAnalyticsTool","n8n-nodes-base.googleAnalyticsTool","n8n-nodes-base.googleAnalyticsTool","n8n-nodes-base.googleAnalyticsTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.toolCalculator","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.gmailTool","n8n-nodes-base.gmailTool","n8n-nodes-base.gmailTool","n8n-nodes-base.gmailTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.twitterTool","n8n-nodes-base.twitterTool","n8n-nodes-base.twitterTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.slackTool","n8n-nodes-base.slackTool","n8n-nodes-base.slackTool","n8n-nodes-base.slackTool","n8n-nodes-base.slackTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.slackTool","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.wordpressTool","n8n-nodes-base.wordpressTool","n8n-nodes-base.wordpressTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.notionTool","n8n-nodes-base.notionTool","n8n-nodes-base.notionTool","n8n-nodes-base.notionTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleTasksTool","n8n-nodes-base.googleTasksTool","n8n-nodes-base.googleTasksTool","n8n-nodes-base.googleTasksTool","n8n-nodes-base.googleTasksTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent"]

workflow_json_compressed:
  [encoded data, 13884 characters]


name: Automated Project Kickoff with Dropbox MCP, OpenAI, Slack & Gmail
author_name: Khairul Muhtadin
author_username: khmuhtadin
categories: []
created_at: 2025-07-20T05:05:26.803Z
updated_at: 2025-07-20T05:05:26.803Z
url: https://n8n.io/workflows/6191
scraped_at: 2025-12-24 13:02:44
description:
  The Project starter bot takes the hassle out of launching projects by automatically creating a well-structured folder system in Dropbox and sending timely notifications through Slack and Gmail. By combining n8n's intelligent automation and seamless integration with Dropbox, Slack, and Gmail, this workflow streamlines project setup, saving you time and keeping everyone in the loop effortlessly.

  💡 Why Use Project Starter Bot?

  Save Time: Cut down on the tedious manual folder creation by automating nested project directories instantly.

  Avoid Mistakes: Eliminate human error when organizing project files and ensure every necessary sub-folder exists.

  Boost Team Collaboration: Notify your team immediately via Slack and Gmail once the project folders are ready, so no one's left out of the loop.

  Gain an Edge: Impress clients and colleagues with your rapid and professional project kickoff process – no coffee breaks needed!

  ⚡ Perfect For

  Project Managers:** Keep your projects organized from day one without lifting a finger
  Creative Teams:** Focus on creativity while the bot handles folder setup and notifications
  Freelancers & Agencies:** Accelerate project launches and maintain consistency across clients

  🔧 How It Works

  ⏱ Trigger: When you send a chat message requesting a new project folder
  📎 Process: The bot creates the main project folder and five standardized sub-folders in Dropbox
  🤖 Smart Logic: It verifies success and asks if you want to send notifications before proceeding
  💌 Output: Sends a Slack message in the #projects channel and an email via Gmail confirming the setup
  🗂 Storage: All folders are neatly organized inside Dropbox ensuring your files are easy to find

  🔐 Quick Setup

  Import JSON file to your n8n instance
  Add credentials:
     Dropbox OAuth2
     Slack API token
     Gmail OAuth2
  Customize: Adjust folder names or project path if needed
  Update: Change Slack channel URL or Gmail recipient details
  Test: Run with a sample project name to see folders and notifications in action

  🧩 Requirements

  Active n8n instance
  Dropbox OAuth2 credentials
  Slack API token with chat permissions
  Gmail OAuth2 credentials

  🛠️ Level Up Ideas

  Integrate with project management tools like Jira or Trello for automated task creation
  Add personalized email templates with dynamic project details
  Use AI-powered chatbots to handle more complex project setup conversations

  🧠 Nodes Used

  When chat message received
  AI Agent
  Dropbox create folder
  Send a message in Slack
  Send a message in Gmail
  Simple Memory (for context)
  MCP triggers and clients

  📋 Details

  Made by: khaisa Studio  
  Tags: Project Management, Automation, Dropbox, Slack, Gmail  
  Category: Workflow Automation  
  Need custom work? Contact Me

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.mcpTrigger","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.dropboxTool","n8n-nodes-base.gmailTool","@n8n/n8n-nodes-langchain.mcpTrigger","@n8n/n8n-nodes-langchain.mcpClientTool","@n8n/n8n-nodes-langchain.mcpClientTool","n8n-nodes-base.slackTool","@n8n/n8n-nodes-langchain.lmChatAzureOpenAi","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5208 characters]


name: Sequential Google Sheets Data Processing with Execution Control
author_name: Viktor Klepikovskyi
author_username: vklepikovskyi
categories: []
created_at: 2025-07-20T07:30:25.300Z
updated_at: 2025-07-20T07:30:25.300Z
url: https://n8n.io/workflows/6196
scraped_at: 2025-12-24 13:02:45
description:
  Preventing Simultaneous Executions of Scheduled Workflows

  This n8n template provides a robust solution for processing data from Google Sheets in a controlled manner, specifically designed to prevent simultaneous executions of a scheduled workflow. This is crucial for maintaining data integrity, avoiding race conditions, and ensuring that your automated processes handle data sequentially.

  What This Workflow Does and Why It's Important

  Many automated tasks involve processing a list of items, like rows in a Google Sheet. If a workflow is scheduled to run every minute, but a single run takes longer than a minute to complete, you could end up with multiple instances of the same workflow running concurrently. This can lead to:

  Data Duplication**: Processing the same row multiple times.
  Data Corruption**: Inconsistent updates or overwrites.
  Resource Exhaustion**: Overloading your systems or API rate limits.

  This template solves this by leveraging n8n's workflow runtime timeout feature. By setting the workflow's runtime timeout to be equal to or slightly less than its scheduled execution frequency, you ensure that only one instance of the workflow can run at any given time. Once a workflow run successfully completes, it updates a status in your Google Sheet, marking the processed rows and preventing them from being picked up again in subsequent runs. This guarantees sequential, reliable data processing and avoids conflicts.

  Step-by-Step Setup Instructions

  Import the Template: Import this workflow into your n8n instance.
  Google Sheets Credential: Ensure you have a Google Sheets credential configured in n8n and connected to the Google Sheets nodes within the workflow.
  Specify Spreadsheet and Sheet Name: In the "Google Sheet" node, update the Spreadsheet ID and Sheet Name to point to your specific Google Sheet. You can use this example Google Sheet for reference.
  Configure Processing Logic: Customize the nodes between the "Read Google Sheet" and "Update Google Sheet" steps to perform your desired data processing logic (e.g., sending emails, updating a CRM, making API calls).
  Set Up Schedule: Activate the workflow and configure its trigger (e.g., "Cron" node) to run on your desired schedule.
  Configure Workflow Timeout: In your n8n workflow settings, set the Workflow Timeout to a value equal to or slightly less than your scheduled execution frequency (e.g., if scheduled every 5 minutes, set timeout to 4 minutes 50 seconds).

  More details in my n8n tips blog.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.wait","n8n-nodes-base.set","n8n-nodes-base.wait","n8n-nodes-base.wait"]

workflow_json_compressed:
  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


name: Reactivate Solar Leads with AI-Powered SMS, Email & Google Sheets Automation
author_name: David Olusola
author_username: dae221
categories: []
created_at: 2025-07-21T05:04:43.375Z
updated_at: 2025-07-21T05:04:43.375Z
url: https://n8n.io/workflows/6213
scraped_at: 2025-12-24 13:02:46
description:
  ⚡ Solar Lead Reactivation Automation

  This workflow helps solar sales teams reactivate cold leads automatically using value-first SMS follow-ups, AI-powered sentiment detection, real-time alerts, and CRM tracking.

  It’s designed to recover lost revenue, reduce manual outreach, and book more consultations—on autopilot.

  ✅ What It Does:
  Monitors your Google Sheet for leads marked "Ready for Reactivation"
  Sends personalized SMS messages via Twilio based on savings & ZIP code
  Waits and escalates: Follow-up SMS → Email → Final urgency SMS
  Parses all SMS replies using AI sentiment detection
  Updates your Google Sheet with status, response, and timestamps
  Sends Telegram alerts for hot leads or unclear replies
  Updates HubSpot CRM (optional)

  🛠️ Setup Steps:
  Import the workflow into your n8n instance
  Connect your accounts:
  Google Sheets
  Twilio (SMS)
  Telegram (optional)
  HubSpot (optional)
  Use the included Google Sheet template and paste your leads
  In Twilio, set your webhook to:
  https://your-n8n-domain/webhook/sms-reply-handler
  Method: POST
  Set lead status to “Ready for Reactivation” and watch automation begin!
  💼 Requirements:
  Twilio account with SMS credits
  Google Sheet with columns like: Lead Name, Phone, ZIP Code, etc.
  Optional: Telegram Bot for alerts, HubSpot CRM token
  Need help? Contact: David@daexai.com
  For advanced setups or white-label solar workflows, reach out.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleSheets","n8n-nodes-base.twilio","n8n-nodes-base.wait","n8n-nodes-base.twilio","n8n-nodes-base.wait","n8n-nodes-base.emailSend","n8n-nodes-base.wait","n8n-nodes-base.twilio","n8n-nodes-base.wait","n8n-nodes-base.twilio","n8n-nodes-base.googleSheets","n8n-nodes-base.webhook","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.openAi","n8n-nodes-base.twilio","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  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


name: 🧑‍🎓 Test Your JSON Skills with Interactive Challenges and Instant Feedback
author_name: Lucas Peyrin
author_username: lucaspeyrin
categories: []
created_at: 2025-07-21T13:58:59.098Z
updated_at: 2025-07-21T13:58:59.098Z
url: https://n8n.io/workflows/6232
scraped_at: 2025-12-24 13:02:43
description:
  How it works

  This template is a hands-on, practical exam designed to test your understanding of the fundamental JSON data types. It's the perfect way to solidify your knowledge after learning the basics.

  Think of it as the "driver's test" that comes after the "theory lesson". You'll be given a series of tasks, and the workflow will automatically check your answers, providing instant feedback.

  The test is broken down into six sequential challenges, each focusing on a core data type:
  String: Writing text values correctly.
  Number: Using integers and decimals.
  Boolean: Working with true and false.
  Null: Representing a non-existant value.
  Array: Creating ordered lists of data.
  Object: Building nested key-value structures.

  For each challenge, you'll modify a Set node with the correct JSON syntax. When you execute the workflow, a corresponding IF node will validate your input. A green path means you passed and can move to the next challenge. A red path means you need to try again!

  Set up steps

  Setup time: &lt; 1 minute

  This workflow is a self-contained test and requires no setup or credentials.

  Read the instructions on the main sticky note to understand the goal.
  Start with the first challenge, "Test - String". Activate and modify the node according to the instructions on the purple sticky note next to it.
  Click "Execute Workflow".
  If the execution path is green, you've passed! You can move on to the next "Test" node in the sequence to continue. If the path is red, read the hint in the error message and try again.
  Repeat the process until you reach the final success message.

  Good luck!

nodes_used:
  ["n8n-nodes-base.html","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if"]

workflow_json_compressed:
  [encoded data, 9428 characters]


name: 🧑‍🎓 Test Your Data Access Techniques with Progressive Expression Challenges
author_name: Lucas Peyrin
author_username: lucaspeyrin
categories: []
created_at: 2025-07-21T15:11:06.302Z
updated_at: 2025-07-21T15:11:06.302Z
url: https://n8n.io/workflows/6236
scraped_at: 2025-12-24 13:02:41
description:
  How it works

  This template is a hands-on, practical exam designed to help you master n8n Expressions—the key to accessing and manipulating data in your workflows.

  If the 🎓 Expressions Tutorial Template was the theory lesson, this is the practical driving test. You'll learn how to navigate through complex data structures to get the exact piece of information you need. All challenges will reference a single "Source Data" node, which acts as our data "map".

  The test is a series of six sequential challenges that build in complexity:
  Basic Access: Getting a simple value from an object.
  Array Access: Targeting a specific item in a list.
  Nested Object Access: Reaching data inside another object.
  Array of Objects: Combining array and object skills to get a specific value from a list of objects.
  Using JavaScript: Applying simple JavaScript functions (like .toUpperCase()) to your data.
  Combining Text & Expressions: Creating dynamic strings that mix static text with data from previous nodes.

  For each challenge, you'll write an expression in a "Test" node. When you execute the workflow, an IF node will instantly validate your answer, giving you a green path for success or a red path with a hint if you need to try again.

  Set up steps

  Setup time: &lt; 1 minute

  This workflow is a self-contained test and requires no setup or credentials.

  Read the instructions on the main sticky note to understand the goal.
  Start with the first challenge, "Test - Basic Access". Modify the node by writing the correct expression in the value field, according to the instructions on the purple sticky note.
  Click "Execute Workflow".
  If the execution path is green, you've passed! The next "Test" node in the sequence will automatically be enabled for you to continue. If the path is red, read the hint in the error message and try again.
  Repeat the process until you reach the final success message and become an expressions pro.

  Good Luck!

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.html","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 9884 characters]


name: Send WhatsApp Bulk Messages from Google Sheets
author_name: SpaGreen Creative
author_username: spagreen
categories: []
created_at: 2025-07-21T15:11:22.292Z
updated_at: 2025-07-21T15:11:22.292Z
url: https://n8n.io/workflows/6237
scraped_at: 2025-12-24 13:02:44
description:
  WhatsApp Bulk Message Broadcast via Google Sheets (n8n Workflow)

  Use Case

  This workflow enables automated bulk WhatsApp message broadcasting using the WhatsApp Business Cloud API. It pulls recipient and message data from a Google Sheet, sends templated messages (optionally with image headers), and updates the sheet with the message status. It is ideal for marketing teams, support agents, and businesses handling high-volume outreach.

  Who Is This For?

  Businesses conducting WhatsApp marketing or outreach campaigns  
  Customer support or notification teams  
  Administrators seeking an automated, no-code message distribution system using Google Sheets  

  What This Workflow Does

  Triggers automatically every minute to scan for pending messages  
  Fetches unsent entries from a Google Sheet  
  Limits the number of messages processed per execution to comply with API usage guidelines  
  Sanitizes WhatsApp numbers for proper formatting  
  Sends messages using a pre-approved WhatsApp template (text and optional image)  
  Marks the row as "Sent" in the sheet upon successful delivery  

  Workflow Breakdown (Node by Node)

  1. Trigger Every 5 Minutes  
  Initiates the workflow every minute using a scheduled trigger to continuously monitor pending rows.

  2. Fetch All Pending Queries for Messaging  
  Reads rows from a Google Sheet where the Status column is empty, indicating they haven’t been processed yet.

  3. Limit  
  Restricts processing to 2 rows per execution to manage API throughput.

  4. Loop Over Items  
  Uses SplitInBatches to iterate through each row individually.

  5. Clean WhatsApp Number  
  A code node that strips non-numeric characters from the WhatsApp No field, ensuring the format is valid for the API.

  6. Send Message to 300 Phone No  
  Sends a WhatsApp message using the WhatsApp Cloud API and a pre-approved template.  
  Template includes:
  An image from the Image URL column (as header, optional)  
  Dynamic variables for the recipient's Name and Message fields  

  Template variables must be pre-defined and approved in the Meta Developer Portal, such as {{1}}, {{2}}.

  7. Change State of Rows in Sent1  
  Updates the Status column to Sent for each successfully processed row using the row number as a reference.

  Google Sheet Format

  Structure your Google Sheet as shown below:

  | WhatsApp No  | Name       | Message                  | Image URL          | Status |
  |--------------|------------|---------------------------|---------------------|--------|
  | +8801XXXXXXX | John Doe   | Hello, your order shipped | https://.../img.jpg |        |

  Leave the Status column empty for rows that need to be processed.

  Requirements

  WhatsApp Business Cloud API access via Meta for Developers
  A properly structured Google Sheet as described above
  Active OAuth2 credentials configured in n8n for:
    googleSheetsOAuth2Api
    whatsAppApi

  Customization Options

  Update the Limit node to control how many rows are processed in each run  
  Adjust the trigger schedule (e.g., change to every 5 minutes)  
  Replace the message template ID with your own custom-approved one from Meta  
  Add error-handling logic (e.g., IF or Try/Catch nodes) to log failures or set Status = Failed

  Sample Sheet Template

  View Sample Google Sheet

  Workflow Highlights

  Automated execution every 1 minute  
  Reads and processes only pending records  
  Verifies WhatsApp numbers and delivers templated messages  
  Updates Google Sheet after each attempt

  Support & Community

  Need help setting up or customizing the workflow?

  WhatsApp: Contact Support  
  Discord: Join SpaGreen Server  
  Facebook Group: SpaGreen Community  
  Website: Visit SpaGreen Creative

nodes_used:
  ["n8n-nodes-base.googleSheets","n8n-nodes-base.limit","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleSheets","n8n-nodes-base.whatsApp","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WVTW/jNhCG/wqhsxnwU6R82wTN1tiPbDdFeyhyoMihLUSWDIlONgj83ztSjNhJ5Wza3gSKnHlm+M7Lx6wK2TwrPn2squ+Lr8Xi06/efO6zWbaG5LL5Y1Y1fXKNh8WwT1gewVrJuAAjoHTaeGN40KGMxksurXcygsyl9Lp0woWY87ywgluhQ1AYN8F6U7sEFx2E/hrSdnPR4gokwASp28JuljVuDZjtz5VL/YfNhpxv61vyBfreLYGcd60L3vWJXHbtmnxs22UN5HoFkIbwbtln879uMEgbYPh8fCoRTO6dYJrmUgmqLFhauigoUuXe+GC1GPD2qS8h+RX5UNfkGzShapbkty10FfQktt0eBVeHhA+b4UBjGzpmxKg9nC1HqhFqaOam7atUtQ3icGFnUiDfxnWYK0GHkI9D0W2CftFc1u19No+u7mGWdZC6h6vm0lX189qQ8A88NYZTZ/lutq+wyEEYUQhaeMuoEoWi1gRHjee5kyUH7cWhws/Vukon+ev93yNwmZ8AfwHEn3GgECp3eU5zGxRVXBe0FJLTsmBSRM5UCPEIp2035OoOOrJAhfQnwfpNXaVFc+7wfuBVa3PFpgnhB/htgiuU8XQb5TN1lKVTJbc0SIHUWllqGWiq8kJqhYIxrjhQX6xcg5K8Tiho0kbyvb3vSdWQa2gS/y/iYEbMeP6zJh/fulYm6mgM9VE5qoJm1BbGYddFqaW0hSjkARjBwvMkpZZwxsi3VdsA+dqeBr7fD+IErGAWae+hXLXt7egRzHGuCh9oKA3HvkW890JHyiDKGNEQymizd6sI57KMEDjVJlgcW1tQKxXQwFDSTFjrIz+6jxpcQ5594+t2XUJ3siyPny9LssruK3oTTxzwnItBF5zygNaiUCXUGWGoKKyOOmeWh/Ko+6nytw/Y6gSnm92Pm4Y9L9mozdWM8py9pst82yQUHIbKTjdSmsCNsCWqIwJVeAnoExooKBEkKNDcwYH0965aLnEYf8GJfCCafKma7Qh0ghmHMWxr2B97DX5iLF+Snokd7nE+VXeHKe0hJfTZscynKcbNV13AHPPsjg/13j1FGLUHGphyUtBytMBcSOo8M7RkzLA8COZGz8GGNeCHUGPgJyvEj7WrBmB8Moba3nKlcecMH8cAP7I5293cIMnr3VMR3+kY/4g/Owrxtsgn0abPTAG+dgh55BA/SXJCNFNZ/vX7OpnwbTf7/xf6XsrJTC/f14n4u93fvr3hf34JAAA=


name: LinkedIn Job Search: Auto-Match Resume with AI + Cover Letter & Telegram Alerts
author_name: Hojjat Jashnniloofar
author_username: jashnniloofar
categories: []
created_at: 2025-07-21T16:02:16.951Z
updated_at: 2025-07-21T16:02:16.951Z
url: https://n8n.io/workflows/6239
scraped_at: 2025-12-24 13:02:41
description:
  Overview
  This n8n templates helps you to authomatically search Linkeding jobs. It uses AI (Gemini or OpenAPI) to match your resume with each job description and write a sample cover letter for each job and update the job google sheet. You can receive daily matched linkedin job alerts by telegram.
  Prerequisites
  AI API Key from one model like:
  	Google Gemini
  	OpenAI 
  Telegram Bot Token - Create via @BotFather
  Google Sheets - OAuth2 credentials
  Google Drive - OAuth2 credentials
  Setup
  1. Upload your resume
  Upload your CV in PDF format in google drive and configure google drive node to read your resume from list of google drive files. You need to configure Google Drive OAuth2 and grant access to your drive before that. You can find useful infomration about how to configure Googel OAuth2 API key in n8n documents.
  2. Create Google sheet
  You need to create a google sheet document consist of two sheets, one sheet for define job filter criteria and second sheet to store job search result. You can download this Google Sheet Template and copy in your personal space. Then you can add your job filter in Google sheet. You can search job by keywords, location, remote type, job type and easy apply.
  You need to configure Google Sheet OAuth2 and grant access to your drive before that.
  3. Conifgure Telegram Bot
  You need to create a new Telegram Bot in @BotFather and insert API Key in Telegram node and you need to TELEGRAM_CHAT_ID to your telegram ID.

nodes_used:
  ["n8n-nodes-base.splitOut","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.extractFromFile","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.telegram","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.html","n8n-nodes-base.set","n8n-nodes-base.html"]

workflow_json_compressed:
  [encoded data, 7620 characters]


name: 🎓 Optimize Speed-Critical Workflows Using Parallel Processing (Fan-Out/Fan-In)
author_name: Lucas Peyrin
author_username: lucaspeyrin
categories: []
created_at: 2025-07-22T00:31:26.948Z
updated_at: 2025-07-22T00:31:26.948Z
url: https://n8n.io/workflows/6247
scraped_at: 2025-12-24 13:02:41
description:
  How it works

  This template is a hands-on tutorial for one of the most advanced and powerful patterns in n8n: asynchronous parallel processing, also known as the Fan-Out/Fan-In model.

  When should you use this?
  Use this pattern when speed is your top priority and you have multiple independent, long-running tasks. Instead of running them one after another (which is slow), this workflow runs them all at the same time and waits for them all to finish.

  We use a Construction Project analogy to explain the architecture:
  The Main Workflow (Top):* This is the *Project Manager**. It defines the project, assigns all the tasks to specialist teams, and then pauses, waiting for a final report.
  The Sub-Workflow (Bottom):* This represents the *Specialist Teams**. It's a single, reusable workflow that can perform any task it's assigned.
  Static Data (The Brains):* A hidden *Project Dashboard** is used to track the status of every task in real-time.

  The process follows three key phases:
  Fan-Out: The Project Manager starts multiple sub-workflows at once without waiting for them to finish.
  Asynchronous Execution: Each Specialist Team works on its task independently and in parallel. When a team finishes, it updates its status on the Project Dashboard.
  Fan-In: The Project Manager, which has been paused by a Wait node, is only resumed when the Project Dashboard confirms that all tasks are complete. It then receives the aggregated results from all the parallel tasks.

  Set up steps

  Setup time: &lt; 1 minute

  This workflow is a self-contained tutorial. The only setup required is to configure the AI model.

  Configure Credentials:
      Go to the The AI Specialist node in the sub-workflow (bottom flow).
      Select your desired AI credential (Gemini in that case).
  Execute the Workflow:
      Click the "Execute Workflow" button on the Start Project node.
  Explore and Learn:
      Follow the execution path to see how the main workflow fans out, and how the sub-workflow is called multiple times.
      Click on each node and read the detailed sticky notes to understand its specific role in this advanced pattern.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.switch","n8n-nodes-base.splitOut","n8n-nodes-base.set","n8n-nodes-base.wait","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.executeWorkflow","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.executeWorkflow","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 9672 characters]


name: Build Your First AI Agent
author_name: Lucas Peyrin
author_username: lucaspeyrin
categories: []
created_at: 2025-07-22T12:14:21.343Z
updated_at: 2025-07-22T12:14:21.343Z
url: https://n8n.io/workflows/6270
scraped_at: 2025-12-24 13:02:41
description:
  How it works

  This template launches your very first AI Agent —an AI-powered chatbot that can do more than just talk— it can take action using tools.

  Think of an AI Agent as a smart assistant, and the tools are the apps on its phone. By connecting it to other nodes, you give your agent the ability to interact with real-world data and services, like checking the weather, fetching news, or even sending emails on your behalf.

  This workflow is designed to be the perfect starting point:
  The Chat Interface:** A Chat Trigger node provides a simple, clean interface for you to talk to your agent.
  The Brains:** The AI Agent node receives your messages, intelligently decides which tool to use (if any), and formulates a helpful response. Its personality and instructions are fully customizable in the "System Message".
  The Language Model:* It uses *Google Gemini** to power its reasoning and conversation skills.
  The Tools:** It comes pre-equipped with two tools to demonstrate its capabilities:
      Get Weather: Fetches real-time weather forecasts.
      Get News: Reads any RSS feed to get the latest headlines.
  The Memory:** A Conversation Memory node allows the agent to remember the last few messages, enabling natural, follow-up conversations.

  Set up steps

  Setup time: ~2 minutes

  You only need one thing to get started: a free Google AI API key.

  Get Your Google AI API Key:
      Visit Google AI Studio at aistudio.google.com/app/apikey.
      Click "Create API key in new project" and copy the key that appears.

  Add Your Credential in n8n:
      On the workflow canvas, go to the Connect your model (Google Gemini) node.
      Click the Credential dropdown and select + Create New Credential.
      Paste your API key into the API Key field and click Save.

  Start Chatting!
      Go to the Example Chat node.
      Click the "Open Chat" button in its parameter panel.
      Try asking it one of the example questions, like: "What's the weather in Paris?" or "Get me the latest tech news."

  That's it! You now have a fully functional AI Agent. Try adding more tools (like Gmail or Google Calendar) to make it even more powerful.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.rssFeedReadTool","n8n-nodes-base.httpRequestTool","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6516 characters]


name: Track Top Social Media Trends with Reddit, Twitter, and GPT-4o to SP/Drive
author_name: plemeo
author_username: plemeo
categories: []
created_at: 2025-07-22T13:14:05.038Z
updated_at: 2025-07-22T13:14:05.038Z
url: https://n8n.io/workflows/6272
scraped_at: 2025-12-24 13:02:41
description:
  Who’s it for  
  Content creators, marketers, journalists, and product teams who need a quick, automated snapshot of what the internet is talking about—served as a ready-to-use spreadsheet every morning.

  How it works / What it does  
  Manual Trigger / Cron starts the flow.  
  Set Config picks today’s date and a topic keyword (default “Artificial Intelligence”).  
  API calls gather trend data:  
     • Reddit API → /r/artificial “hot” posts.  
     • Twitter (X) Trends via our own plemeo endpoint or any other social API.  
     (Add additional sources before the Merge Data node—Instagram, YouTube, TikTok, etc.)  
  Aggregate Content concatenates raw titles; AI Agent (GPT-4o) analyses them and returns the top 5 trends in JSON.  
  Prepare Excel formats each trend into rows; Create Excel turns them into an .xlsx file.  
  Upload the file to SharePoint (swap for Google Drive, Dropbox, S3—just replace the node).  

  How to set up  
  Import the template into n8n (cloud or self-hosted).  
  Create credentials: Reddit OAuth2, OpenAI, and your preferred storage (SharePoint, Drive, etc.).  
  In Set Config choose your default topic; adjust the cron schedule if required.  
  If you’re using Google Drive/Dropbox: delete the SharePoint node and add the corresponding upload node instead.  
  (Optional) Add more APIs—duplicate Merge Data inputs and map their results in Aggregate Content.  
  Save & activate. A spreadsheet called social-media-trends.xls appears in your target folder each run.

  Requirements  
  n8n 1.33 +  
  Reddit app (OAuth2)  
  OpenAI account
  One storage credential: SharePoint, Google Drive, Dropbox, or any other supported provider

  How to customize  
  Change the number of trends: edit the limit in Aggregate Content and the prompt in AI Agent.  
  Want CSV instead of Excel? Swap Create Excel for Spreadsheet File → to File (CSV).  
  Push trends to Slack/Teams: branch after Prepare Excel and add a chat node.  
  Fully serverless? Trigger via webhook instead of manual/cron.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.spreadsheetFile","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.manualTrigger","n8n-nodes-base.microsoftSharePoint","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52W227bRhCGX4XgVQtonT1xD7qqq7iFL5K4sdEAKYJiuTsrs5FIlqJiB4aAPEb7enmSDmVXomXKln0n08N/P+6c/pu0COk4/XCyeMfD1V8T91a9vfrtIh2lc2hdOr5Ji3LRutLDaRfHfdSSS249BwEgIXOcUmWDCMbpjFOTMSuoyI2SkXLltJVKQnSaqzzYDHVbmNcz18KkgbA4h3ZZTyp8Ai3gAW2zhNUoLd0c8LTuH8UMkraqk0XlCzcjcwiFS9oGyrDA58mibsCFxSVAm1Rlcn7pGjirirJNfqia5HVTfIFXr5uqzqvrH7vD3XSRjv+4uf3qq/rNaX1yXv78sQ5nk/qvdHPyG9d8hrYop/jI4wkId9x23095RqgiVFwwNhZmLPQR5fQjhi3r8HTY6hMeUQXoQTgZAmW5JZkOikgWI7FKUMJyr7hWUZrgtmDvIYSiTY7PTruv+Vp3z0pTkrUoyd0Cji7btn4Pfy9h0WJMXS2KtqhKPJAIoUbSIELtGpRroUGOm9Wt0O/41zpOrEZ3aDFQQXUWiQbOiTTOkNxyRyAKq50OWoLq3Rk0U0heu9btRZt3ITtQVo2Y5U9B8SO2wcqzEITCy3JMZ0QqmxHjKCcULOdC554GscU6nk4bmGJqkklVtlC2e+k8/rwPZ+hBbBsy5zg3nisSIZdEBgvEZiIjPDieS+eEEtmW7KwB1IXk5NrD7BlUippnYgWnbLSOiNxaIr1kxJqAdRYhcCWtYUZusSbren+Cqtd3v2CL7lyb4M8DjCpEHqMkWHHYA1QLkneUTrPAvWKSMtrL6GlyPL2XyJ+Q7tWWcObKqb90RXnk7uJ6cNyYEWHqcDgbPcu4B6w0QLjMc2KCwKbgzoKQMctFr0Hf1VAi4OTStckbpJkdQDmbd+HrN4uHsAfcJDva4grKIWM5kBw4w6Y1eJcKm5Yzb6JXXnrXS/aHSygTPyv8Zxx2yfdv/5xcg19i+q+q5nOcVVffv/27v51duXSzi6aYTqHZaWutDiPfcOO0y7zPDHHYKFgDlhKbC0Yy4S2PweGd696wKXxTLarY9kb+fs7/g+/F9mgZlQd1OuuNRs2DCkACzwKReY4txXmOgwj3Hm5DnEK9ovgVt9PFVdGibHKx3l0vnN6C06cYZa8WNAPpIs1xCtmItQDdPMok0SJQ45hwuedbSlzG3YyMxXR/28MuVaYOujlxJDdUmWUZGgIsTucx09FEYizHq4zYZ8Hz3Lpet5+3WJxfk7dVC/ux1jF3IX26bhIRdCW7eKm/2wXjNN2fZNDS6hAMrmbAJMcYiJVOkEi7hONeFl4OgrJnkzKGoJjhl4HieGSRZgrnmu88RO6Is94Tn2mNfeOdkmEQlD8bVHOK45M9SPhhoMJ6jQtHEoZIRGpEtpFTYpinRnsuheSDoOJFoMLI53FitPMtmsZ0HN1sAaMUK77zgetXYT0bMfRdE3DgjdMvrNP4cvv+2iBbKgQPxhKs4276BkdMZnKCJgVXrfVG2M4yIUQJvpNaC282Gv6e40ZAfLSH3UfutwnruBHa8wDX6ZiuPn1ClJ4HG5J6xAsNyvXc5pDckOMb1OlNliGdIVO7qzPaRD82TAdPv2doBr/j0WUyqHk/KUOiwzZqUOxhWgaT98D2DIo9NCAo5oo/O7uxRD909+xR4Qfhu4cM5OBlBcJu9Q6yIUMnDO2sgWtZrf4Dfd85c+kOAAA=


name: Daily Business News Briefings with NewsAPI & GPT-4 Insights to Slack
author_name: James Carter
author_username: arioloop
categories: []
created_at: 2025-07-22T13:21:21.265Z
updated_at: 2025-07-22T13:21:21.265Z
url: https://n8n.io/workflows/6273
scraped_at: 2025-12-24 13:02:41
description:
  This n8n workflow automatically fetches trending news articles based on your chosen country, category, and keyword — then enriches the data with AI-powered business insights before posting a concise summary to Slack.

  Ideal for sales teams, executives, marketers, or anyone who wants fast, actionable news briefings directly in their Slack workspace.

  ⸻

  Who it’s for

  Executives, analysts, sales teams, or marketing professionals who want curated, AI-enhanced news summaries tailored to business opportunities, risks, and trends — delivered automatically to Slack.

  ⸻

  How it works / What it does
  A Schedule Trigger runs on a daily, weekly, or custom frequency.
  It queries the NewsAPI to retrieve top headlines by country, category, or keyword.
  Headlines are formatted and enriched with your configured query context.
  The AI model (GPT-4) analyzes articles and summarizes key insights, categorizing them as Opportunities, Risks, or Trends.
  Finally, the summarized insights are posted directly into a Slack channel of your choice.

  ⸻

  How to set up
  Set your schedule frequency in the Schedule Trigger node.
  Configure your preferred country, category, and keyword in the Inject Config node.
  Add your NewsAPI Key inside the Fetch News Articles node.
  Connect your Slack credentials in the Post to Slack node.
  Optional: Adjust the AI prompt for more tailored analysis.

  ⸻

  Requirements
  A NewsAPI account to fetch headlines.
  An OpenAI API key for GPT-4 summarization.
  A Slack workspace and connected credentials via n8n.

  ⸻

  How to customize the workflow
  Change the country, category, or keyword in the Inject Config to focus on specific markets or sectors.
  Adjust the AI prompt in the GPT node to prioritize certain insights like ESG factors, M&A activity, or market sentiment.
  Extend the workflow to log results to Google Sheets, email summaries, or send SMS alerts.
  Replace the Schedule Trigger with a Webhook if you want to trigger summaries on demand.

  This template is designed to be modular, making it easy to adapt for competitive intelligence, investment tracking, or industry news curation.

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.slack","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5256 characters]


name: Auto-Generate SEO Content from Trends with GPT-4o, FAL AI & Multi-Storage
author_name: plemeo
author_username: plemeo
categories: []
created_at: 2025-07-22T14:19:31.140Z
updated_at: 2025-07-22T14:19:31.140Z
url: https://n8n.io/workflows/6278
scraped_at: 2025-12-24 13:02:42
description:
  Who's it for  
  Content creators, SEO specialists, and marketing teams who want to automatically generate SEO-optimized content based on trending topics—complete with AI-generated images, optional videos, and ready-to-publish HTML.

  How it works / What it does  
  Webhook receives a request with use case and video preferences.  
  Get Trends XLSX downloads a spreadsheet (created by the Social Media Trends workflow) from SharePoint.  
  Select Topic from Trends randomly picks one trending topic from the spreadsheet.  
  AI Agent (GPT-4o) generates bilingual newsletter content about the selected trend.  
  Get Newsletter Template fetches your HTML template; Build Newsletter injects the AI content.  
  Optional creative assets:  
     • Pollinations AI → generates a 1080 × 1350 image.  
     • FAL AI → creates video from the image + Lyria2 audio → merged via FFmpeg.  
  Gmail Approval sends the draft for review; continues only on approval.  
  Upload all files (HTML + JPG + video URL) to your chosen storage provider.

  How to set up  
  Import the template into n8n (cloud or self-hosted).  
  Create credentials: OpenAI, Microsoft 365 (SharePoint), Gmail, and FAL AI.  
  Upload your HTML newsletter template to SharePoint (see yellow sticky note for required placeholders).  
  Ensure you have a trends spreadsheet (from the Social Media Trends workflow) in your SharePoint folder.  
  Update Configuration Settings with your ENV_* variables.  
  Activate the workflow and POST to the webhook: { "text": "usecase: blog post, include_video: true" }.

  Requirements  
  n8n 1.33 +  
  OpenAI account 
  Microsoft 365 tenant (SharePoint)  
  Gmail account  
  FAL AI API Key (for video generation)  
  A trends spreadsheet (from the Social Media Trends workflow)

  How to customize  
  Change storage provider: replace SharePoint upload nodes with Google Drive, Dropbox, or S3.  
  Modify topic selection: edit Select Topic from Trends for different selection logic.  
  Adjust content tone: tweak the prompt in Prepare Newsletter Data.  
  Skip video generation: set include_video: false in the webhook request.

nodes_used:
  ["n8n-nodes-base.spreadsheetFile","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.microsoftSharePoint","n8n-nodes-base.microsoftSharePoint","n8n-nodes-base.switch","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.microsoftSharePoint","n8n-nodes-base.microsoftSharePoint","n8n-nodes-base.microsoftSharePoint","n8n-nodes-base.gmail","n8n-nodes-base.set","n8n-nodes-base.convertToFile","n8n-nodes-base.webhook","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.extractFromFile","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4304 characters]


name: Email Support Agent w/ Gemini & GPT fallback using Gmail + Google Sheets
author_name: David Olusola
author_username: dae221
categories: []
created_at: 2025-07-22T20:42:47.912Z
updated_at: 2025-07-22T20:42:47.912Z
url: https://n8n.io/workflows/6287
scraped_at: 2025-12-24 13:02:41
description:
  📧 Master Your First AI Email Agent with Smart Fallback!

  Welcome to your hands-on guide for building a resilient, intelligent email support system in n8n! This workflow is specifically designed as an educational tool to help you understand advanced AI automation concepts in a practical, easy-to-follow way.

  🚀 What You'll Learn & Build:

  This powerful template enables you to create an automated email support agent that:

  Monitors Gmail** for new customer inquiries in real-time.
  Processes requests** using a primary AI model (Google Gemini) for efficiency.
  Intelligently falls back to a secondary AI model** (OpenAI GPT) if the primary model fails or for more complex queries, ensuring robust reliability.
  Generates personalized and helpful replies** automatically.
  Logs every interaction** meticulously to a Google Sheet for easy tracking and analysis.

  💡 Why a Fallback Model is Game-Changing (and Why You Should Learn It):

  Unmatched Reliability (99.9% Uptime):** If one AI service experiences an outage or rate limits, your automation seamlessly switches to another, ensuring no customer email goes unanswered.
  Cost Optimization:** Leverage more affordable models (like Gemini) for standard queries, reserving premium models (like GPT) only when truly needed, significantly reducing your API costs.
  Superior Quality Assurance:** Get the best of both worlds – the speed of cost-effective models combined with the accuracy of more powerful ones for complex scenarios.
  Real-World Application:** This isn't just theory; it's a critical pattern for building resilient, production-ready AI systems.

  🎓 Perfect for Beginners & Aspiring Automators:

  Simple Setup:** With drag-and-drop design and pre-built integrations, you can get this workflow running with minimal configuration. Just add your API keys!
  Clear Educational Value:** Learn core concepts like AI model orchestration strategies, customer service automation best practices, and multi-model AI implementation patterns.
  Immediate Results:** See your AI agent in action, responding to emails and logging data within minutes of setup.

  🛠️ Getting Started Checklist:

  To use this workflow, you'll need:

  A Gmail account with API access enabled.
  A Google Sheets document created for logging.
  A Gemini API key (your primary AI model).
  An OpenAI API key (your fallback AI model).
  An n8n instance (cloud or desktop).

  Embark on your journey to building intelligent, resilient automation systems today!

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.gmailTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.stickyNote","n8n-nodes-base.gmail"]

workflow_json_compressed:
  [encoded data, 7220 characters]


name: AI Email Support System: Gmail, Gemini, GPT-4, Slack & Google Sheets Workflow
author_name: David Olusola
author_username: dae221
categories: []
created_at: 2025-07-22T22:06:59.845Z
updated_at: 2025-07-22T22:06:59.845Z
url: https://n8n.io/workflows/6288
scraped_at: 2025-12-24 13:02:46
description:
  🚀 Transform Your Customer Support with AI Automation!

  Unlock unparalleled efficiency and elevate customer satisfaction with our AI-Powered Customer Support: Email, Knowledge Base & Human Escalation Automation template. This sophisticated n8n workflow is engineered to streamline your support operations, ensuring every customer interaction is intelligent, consistent, and handled with speed.

  ✨ How It Works: Your Automated Support Powerhouse

  Witness the magic as customer inquiries are seamlessly transformed into resolved tickets, often without human intervention:

  Effortless Email Intake:** Your journey to automated excellence begins the moment a customer email lands in your Gmail inbox. Our workflow instantly captures new inquiries, ensuring no request ever falls through the cracks.
  Intelligent Inquiry Classification:* Say goodbye to manual triage! An advanced AI text classifier immediately analyzes incoming emails, intelligently categorizing each inquiry into precise buckets like *Technical Support, Billing Support, Urgent Escalation, or General Support**. This ensures every query is sent to the right specialist—virtual or human—from the start.
  AI-Driven, Context-Rich Responses:* The classified inquiry is routed to a specialized AI agent (powered by *Google Gemini), which taps into your comprehensive **Pinecone knowledge base. This Retrieval-Augmented Generation (RAG) ensures every response is not only fast and accurate but also deeply informed by your company's specific policies and documentation, providing personalized and expert answers.
  Instant Communication & Meticulous Logging:* Once generated, the AI's professional response is automatically sent back to the customer via Gmail. Simultaneously, every detail of the interaction – from the classified service type to the full AI response and a unique ticket ID – is meticulously logged in your *Google Sheet**. This creates an invaluable, searchable record for unparalleled insights and accountability.
  Seamless Urgent Human Escalation:* For critical or complex issues requiring a human touch, the workflow instantly escalates the ticket. Your team is notified via *Slack** with all pertinent details, ensuring urgent matters are always prioritized and resolved swiftly, maintaining high customer satisfaction even in challenging situations.
  Self-Updating Knowledge Base:* Keep your AI agents perpetually smart! Our workflow effortlessly maintains your Pinecone knowledge base by automatically processing and ingesting new documents uploaded to a designated *Google Drive** folder. This ensures your AI always has the most current information, without any manual data entry from your side.

  🛠️ Effortless Setup: Go Live in Under an Hour!

  Getting started with this powerful automation is surprisingly simple. You can typically have your core setup ready and operational in just 30-60 minutes, freeing you to focus on strategic growth rather than tedious setup.

  Connect Your Services:** Quickly link your existing accounts for Gmail, OpenAI, Google Gemini, Pinecone, Google Sheets, Slack, and Google Drive using n8n's intuitive credential management.
  Prepare Your Data Hub:** Link the workflow to your Google Sheet with pre-defined columns for seamless logging of all support interactions.
  Empower Your AI with Knowledge:** Simply upload your company's FAQs, policies, and documentation into a specified Google Drive folder. Our workflow handles the rest, automatically building and enriching your Pinecone knowledge base.
  Activate & Automate:** With your credentials connected and data sources in place, activate the workflow in n8n, and watch your customer support transform!

  For comprehensive, step-by-step guidance on advanced customization, API key configuration, and fine-tuning every aspect to your unique business needs, refer to the detailed Sticky Notes embedded directly within the n8n workflow. They are your personal setup assistant!

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.gmail","n8n-nodes-base.googleSheets","n8n-nodes-base.slack","@n8n/n8n-nodes-langchain.textClassifier","n8n-nodes-base.gmailTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.googleDrive","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 9112 characters]


name: Company Website Chatbot Agent (RAG, Calendar integrations)
author_name: Abdul Mir
author_username: abdulmir
categories: []
created_at: 2025-07-22T22:31:19.662Z
updated_at: 2025-07-22T22:31:19.662Z
url: https://n8n.io/workflows/6290
scraped_at: 2025-12-24 13:02:41
description:
  Company Website Chatbot Agent

  Overview
  This workflow implements a modular Website AI Chatbot Assistant capable of handling multiple types of customer interactions autonomously. Instead of relying on a single large agent to handle all logic and tools, this system routes user queries to specialized sub-agents—each dedicated to a specific function.

  By using a manager-style orchestration layer, this approach prevents overloading a single AI model with excessive context, leading to cleaner routing, faster execution, and easier scaling as your automation needs grow.

  How It Works

  1. Chat Trigger  
  The flow is initiated when a chat message is received via the website widget.

  2. Manager Agent (Ultimate Website AI Assistant)  
  The central LLM-based agent is responsible for parsing the message and deciding which specialized sub-agent to route it to.
  It uses an OpenAI GPT model for natural language understanding and a lightweight memory system to preserve recent context.

  3. Sub-Agent Routing  
  calendarAgent: Handles availability checks and books meetings on connected calendars.  
  RAGAgent: Searches company documentation or FAQs to provide accurate responses from your internal knowledge base.  
  ticketAgent: Forwards requests to human support by generating and sending support tickets to a designated email.

  Setup Instructions

  Embed the Chatbot  
     Use a custom HTML widget or script to embed the chatbot interface on your website.  
     Connect the frontend to the webhook that triggers the When chat message received node.

  Configure Your OpenAI Key  
     Insert your API key in the OpenAI Chat Model node.  
     Adjust the model parameters for temperature, max tokens, etc., based on how formal or creative you want the bot to be.

  Customize Sub-Agents  
     calendarAgent: Connect to your Google or Outlook calendar.  
     RAGAgent: Link to a vector store or document database via API or native integration.  
     ticketAgent: Set the destination email and format for ticket generation (e.g. via SendGrid or SMTP).

  Deploy in Production  
     Host on n8n Cloud or your self-hosted instance.  
     Monitor usage through the Executions tab and refine prompts based on user behavior.

  Benefits

  Modular system with dedicated logic per function  
  Reduces token bloat by offloading complexity to sub-agents  
  Easy to scale by adding more tools (e.g. CRM, analytics)  
  Fast and responsive user experience for customers on your site  
  Cleaner code structure and easier debugging

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent"]

workflow_json_compressed:
  [encoded data, 4992 characters]


name: Automated Job Extraction & Publishing with RAG, Jina AI and OpenAI to WordPress
author_name: Khairul Muhtadin
author_username: khmuhtadin
categories: []
created_at: 2025-07-23T04:30:55.957Z
updated_at: 2025-07-23T04:30:55.957Z
url: https://n8n.io/workflows/6299
scraped_at: 2025-12-24 13:02:46
description:
  Auto repost job with RAG is a workflow designed to automatically extract, process, and publish job listings from monitored sources using Google Drive, OpenAI, Supabase, and WordPress. This integration streamlines job reposting by intelligently extracting relevant job data, mapping categories and types accurately, managing media assets, and publishing posts seamlessly.

  💡 Why Use Auto repost job with RAG?

  Automated Publishing: Slash manual entry time by automating job post extraction and publication, freeing hours every week.

  Error-Resistant Workflow: Avoid incomplete job posts with smart validation checks to ensure all necessary fields are ready before publishing.

  Consistent Content Quality: Maintain formatting, SEO, and style consistency backed by AI-driven article regeneration adhering strictly to your guidelines.

  Competitive Edge: Get fresh jobs live faster than your competitors without lifting more than a finger—because robots don't take coffee breaks!

  ⚡ Perfect For

  Recruiters & HR Teams: Accelerate your job posting funnel with error-free automation.

  Content Managers: Keep your job boards fresh with AI-enriched standardized listings.

  Digital Marketers: Automate content flows to boost SEO and engagement without the headache.

  🔧 How It Works

  ⏱ Trigger: Job link inputs via Telegram.

  📎 Process: Auto-download of job documents, data extraction using Jina AI and OpenAI's GPT-4 model to parse content and metadata.

  🤖 Smart Logic: AI agent regenerates articles based on strict RAG dataset rules; category & job type IDs mapped to match WordPress taxonomy; fallback attempts with default images for missing logos.

  💌 Output: Job posts formatted and published to WordPress; success or failure updates sent back via Telegram notifications.

  🗂 Storage: Uses Supabase vector store for document embedding and retrieval related to formatting rules and job data.

  🔐 Quick Setup

  Import the provided JSON workflow into your n8n instances
  Add credentials: Google Drive OAuth, OpenAI API, Supabase API, Telegram API, WordPress API
  Customize: Set your Google Drive folder ID, WordPress endpoints, and Telegram chat IDs
  Update: Confirm default logo URLs and fallback settings as needed
  Test: Submit a new job link via Telegram or add a file to the watched Drive folder

  🧩 You'll Need

  Active n8n instances
  Google Drive Account with OAuth2 credentials
  OpenAI API access for GPT-4 processing
  Supabase account configured for vector storage
  WordPress API credentials for job listing publishing
  Telegram Bot for notifications and job link inputs

  🛠️ Level Up Ideas

  Integrate Slack, Gmail or Teams notifications for teams visibility
  Add a sentiment analysis step to prioritize certain jobs
  Automate social media posting of new job listings for wider reach

  Made by: Khmuhtadin  
  Tags: automation, job-posting, AI, OpenAI, Google Drive, WordPress  
  Category: content automation  
  Need custom work? Contact me

nodes_used:
  ["n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.telegramTrigger","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.telegram","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.memoryPostgresChat","n8n-nodes-base.jinaAi","n8n-nodes-base.code","n8n-nodes-base.telegram","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.wait","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.errorTrigger","n8n-nodes-base.telegram","n8n-nodes-base.code","n8n-nodes-base.telegram","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 17880 characters]


name: Get Blockchain Insights from Chat using GPT-4 and Nansen MCP
author_name: Nansen
author_username: nansen
categories: []
created_at: 2025-07-23T05:26:42.380Z
updated_at: 2025-07-23T05:26:42.380Z
url: https://n8n.io/workflows/6303
scraped_at: 2025-12-24 13:02:45
description:
  This workflow contains community nodes that are only compatible with the self-hosted version of n8n.

  How it works

  This workflow listens for an incoming chat message and routes it to an AI Agent. The agent is powered by your preferred Chat Model (such as OpenAI or Anthropic) and extended with the Nansen MCP tool, which enables it to retrieve onchain wallet data, token movements, and address-level insights in real time.

  The Nansen MCP tool uses HTTP Streamable transport and requires API Key authentication via Header Auth.

  Read the Documentation: https://docs.nansen.ai/nansen-mcp/overview

  Set up steps

  Get your Nansen MCP API key  
     Visit: https://app.nansen.ai/account?tab=api  
     Generate and copy your personal API key.

  Create a credential for authentication  
     From the homepage, click the dropdown next to "Create Workflow" → "Create Credential".  
     Select Header Auth as the method.  
     Set the Header Name to: NANSEN-API-KEY  
     Paste your API key into the Value field.  
     Save the credential (e.g., Nansen MCP Credentials).

  Configure the Nansen MCP tool  
     Endpoint: https://mcp.nansen.ai/ra/mcp/  
     Server Transport: HTTP Streamable  
     Authentication: Header Auth  
     Credential: Select Nansen MCP Credentials  
     Tools to Include: Leave as All (or restrict as needed)

  Configure the AI Agent  
     Connect your preferred Chat Model (e.g., OpenAI, Anthropic) to the Chat Model input.  
     Connect the Nansen MCP tool to the Tool input.  
     (Optional) Add a Memory block to preserve conversational context.

  Set up the chat trigger  
     Use the "When chat message received" node to start the flow when a message is received.

  Test your setup  
     Try sending prompts like:
     What tokens are being swapped by 0xabc...123?
     Get recent wallet activity for this address.
     Show top holders of token XYZ.

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.mcpClientTool","@n8n/n8n-nodes-langchain.chatTrigger"]

workflow_json_compressed:
  H4sIAAAAAAAAE41Vf2vrNhT9KsIMtkGU+JccOzBYXmC0jLZjbfc23kqRpevYqyMZS25eFvzdd+WkTfJSuv5hsK+uztE95+p6663Acm+29SplLFcCLqU384I4iXw5jZKchWniR4wxH2SQJRBPs5iHPhTFNJcxFEEWyiLlURpLP+K+DKdTBsIbeRZWTc0tLFqQ5hZs1yw0RsACEti2g37kKS3BeLMvyO5YYRomUcYE5SIHGmcpoxzZaRpFWRolaZKkASIrvgLMnl+S+RKUdVybxkV+Vqma4EMHXFpztRQlr9SY7/MabSpbaYWUQRyPaJz6DxjlLSJaaI3TQTcuY3g1G4NVXIExCID4P/2lO8JbIJyUUDdFVxNuTOV0s2Rd2ZJwITCbWE2uuTKgyNXiN3KndT0+DlgMEF7Xem3IBiExvVMS+RFIEniGdmPLSi2JLbkllSElbxpQLjKw2BJIXmvxtKvubzVHymoFLhU5XI3P+KGIaDeN1SPkWvONIUsXdputlnzzvSES/XF5LtaCabBuQLg7tzwj2y35Tun12OrL25sffiR97/X9Tuw/8LCDjmE/2psXYlOkoZxSn2WMxixEG5NY0pShc75kkYjlwbwbrAcNXLgCr9Ct+gMu1iuXPuysTs1M/RENWXLm5WpAxpfHx7bedd1oCCJNjb4hyjOvO/e5bCyNx669BBclyN/BdLW93p32ZRGrP7SH00Jgc2NrVbze944727yphgvlVKl1ff/Pjbi/+MV+ziB9+kaBynWM7pSlpDTkXN5gfBAY0pyzJI5pEkc5jSWqzMMgpH4eoeIAQgThAf7Qbh9QdiWaRV1hIa5VT6WNouRtbY+EGHmgZKMrZe+dzF5pbWNmkwnCjtVwjjGvJi13gQnC8w4bDlUTfEfilcCx/ecYxlUDLd6AuxY3Nrq1e7xb2wJf8bwG71x3l3BxwHgR/1OhfmXttfizek6nn/7N3lKHUHJx+5bwwavwopBCgshpnoGgcSg4zSBnNGAMsmmWMA5H0J+xNCJcX692gwNvlgC8efIDRrh9d221XEJ7agMNwvRlXq0hL7V+GgZ1mBZ+kGaCFqIIaByFIc0kRBTntRAsCRLwmfeOded1Rz1SCK0UiNdB+Dpq3Z3Cc+KBvjw84N6jLsMlXj260eZWt8Nsf3NKv2SN8Jcj4as38/sB63wk7CCdOh3quI/9H/Zp+rck77hzVNs7DEPKKWrf/weS/aPpRgcAAA==


name: Salesforce to S3 File Migration & Cleanup
author_name: Le Nguyen
author_username: leeseifer
categories: []
created_at: 2025-07-23T06:15:02.427Z
updated_at: 2025-07-23T06:15:02.427Z
url: https://n8n.io/workflows/6305
scraped_at: 2025-12-24 13:02:45
description:
  Salesforce to S3 File Migration & Cleanup

  Automate archiving old Salesforce files to Amazon S3, log them back in Salesforce, and free up org storage — all from a scheduled n8n workflow.

  🔧 How It Works (High-Level)

  Schedule Trigger kicks off (e.g., daily).  
  Query Salesforce for ContentDocument records older than 365 days.  
  Loop Each File → download binary via REST.  
  Upload to S3 with the original filename.  
  Lookup Links (ContentDocumentLink) to keep the parent record reference.  
  Filter Out Users (ignore LinkedEntityId starting with 005).  
  Create S3_File__c record in Salesforce for traceability.  
  Delete Original File from Salesforce to reclaim storage.  
  Notify via Slack when the batch is done.

  🚀 Set Up Steps (Time: ~45–90 mins)

  Import n8n Workflow JSON and wire up credentials (Salesforce OAuth2, AWS S3, Slack).  
  Install Salesforce Unmanaged Package (Custom Object S3_File__c, Apex controller, LWC, settings).  
  Fill S3Settings__c (bucket, region, keys, expiry) or swap to Named Credentials.  
  Test with a Sandbox Batch (e.g., small date range) and verify upload/delete.  
  Schedule & Monitor (tweak interval, Slack channel).

  💖 Why you’ll love it
  💸 Slash storage costs — offload gigabytes to S3  
  🔍 Full traceability — every file still tracked in Salesforce  
  🧰 Plug & play — import JSON, install package, plug in creds  
  🧱 Modular & extensible — swap S3, add approvals, build an uploader UI  
  ⏱ Set it & forget it — scheduled automation + Slack alerts

  📦 What’s Included

  n8n JSON Flow** – ready to import.  
  Salesforce Unmanaged Package** – Apex (S3FilesController.cls), LWC (s3FilesViewer), S3_File__c, S3Settings__c.  
  S3 + Salesforce Setup Guide** – quick reference for configuring keys, permissions, and the LWC.

  All components are editable — extend, replace, or integrate with your own processes.

  🧱 Requirements

  n8n instance (self-hosted or Cloud) with HTTP Request, AWS S3, Slack, and Salesforce nodes.  
  Salesforce org with API access & permission to install unmanaged packages.  
  You have to have Query All Files permission. Setup-&gt; Permission Sets / Profile -&gt; App Permission -&gt; Content -&gt; Query All Files. Allows View All Data users to SOQL query all files in the org.
  AWS S3 bucket + IAM user/role with GetObject/PutObject (and optional ListBucket).  

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.awsS3","n8n-nodes-base.salesforce","n8n-nodes-base.code","n8n-nodes-base.salesforce","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.slack","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.salesforce"]

workflow_json_compressed:
  H4sIAAAAAAAAE62Y227bRhCGX4XQtTfY88F3aZIWAYK6iJveBEEwuztrC5ZJlaSaBoHfvUParWSbskW5VzqtZr6d/XcO/LG4xh4Wpz8Wy7rroU74Pi9OFwGMlYlbsEpKLYq1ADkbCToYyMGjs9FZjsWkkjAkJQJoZ0LSLuWgcXGy6PF6vYIe37SYu3PsN+s3DX2DPZKDvt3gzcmibjJ2i9PP5H3wCuBj5sUyh1wzzZVlEVVmrmiFBnUIIpLlGq6RVp+nS8ybFVa/t8uLC2wHn9/Xwy+1r9lomkXo8FV3t3C7bt10y37Z1OSaBc5PGO3lC30NLZnusSWmHze35v6gT+NK8UrenNyBogYXrc7MamOZNkIxb3xg1hljC5dopNkB7Zfp6nv1a9PjfsZxzd2Se3iW8Ix+hLdITd1j3ZOpxSPU/0BD4V5HbRgvKJguPLMYCRlB6+KTdUmlLeiHpllXZ39hW72DdFn9vKTgfsTUtHk/93q17N/XP0FPQe5oWVO/a9umpZUD4LLe4Ee82KygPdv0603/YHfajsE3zwVfbUOfZeHIkQUnI9PRKgYFMvMiOCe9xQw7GnnbfKtXDeTbvby5C9m+zVz2/foj/rnB7iGn1MTpH5/CQ069I5IcJPcpkYZtQtqplMwTIOPBlqCcVCG6Lemn9cjZN9W52gsI37rx13toh5FtuWLWPvoIzAblmQZDwfPKsJAcFB4EFIlbrl+wrz4s6yvM7+g4++/vc1Xa5vrfWL5t0uaaXocl+0UCK+xK06YH4pb8MPYdPXNQSXDDPCUGpnORLIbsGCRtIUoOocgtOx06WaxIedWnjt687nvS9YDb7WVN9PY+pZ4dYavoZgVfmEBTKI/lyCAYzpIqwRo6eJPUlpISJKVJOvavg0i/fk3P3rk94bQHinQbTgwahEyeSROAaSUs86iRmexyUJanYnby2G8tkl18ePSDIpq2eouU2wf7h0fW27mRTXRtFM+cFSVIuxodyZaUIOidkwFQlLBz+wckrM4o7y9rWN0mgWVdne8GcGYqEGK/HPBvTJsez6iKLk4LrDp8Ij1QXVWRR81QC0eJDAvzlBdYjjZq7aVOzu/UEKxzdb6CdDXUkWVZJngy2N2wdCqJ2ZH8G8bLprkaa73OAFxYOnpFStBSSBao2jID0kPWlmTBF8+d0Kttho5Ah0QdA5M2U82RAIzS4LDPklzJWnGeJ4ujOLI6Ci6PLI8cNZVsTrsuVL21SZlRnyOHFO1haG944pOocj6qG3QzqOc4VMMpPyctSfRAmU9T1o4JIgsmexOoDsooJ1H3V5O9qIa/KKqSyklEupU8eMoqOhkGaATDyG2SOSSJaRJVz0eV/kVRtdpjgDL0R56TCpAqCy+ByQIlUbcEyU9r1cxH1SPpsZ2c41ahpCLiwVFvDEPly2nE5Z5TT8SlmCS1s0nFeKmEP5IUbCrOaSAZDXLlxjNvw9Aca/DSyEJlf5LUzSZV/kWkpEQPdMuZhKETcpm6SiUEsz6mQMWJeoppofrZpJa/6PRBJi0gOJa9ThRTSlkhcclM4J76+OJznCYNs0n97eU/NqamCEsFozDFKefr4oBFo6hDC+iDFSXDnhs1FpmZQuX6RaxoBdW47JlNlpTqAjJPMyajeZdjtphcDNOsR5SqMVPpx3PmYag6CENDKjAMkRIVdZLkLmtGXYQrsQCNGjtjz9C0v16tHnZqXdWsMvXB/SXUlbKmyvC9q+Cimd1q0hU5cGq+oRW0wxrT8Ndxw/dGHfp8DcvB5ucf4/OAY2eO0crJYlln/Htxym++fCGWR88I9rk7LlqTPqdnzinH0zPfpNG9Q8KU3bmN+qTHJx4GTPl8tkF95ORk++dnxvRJvqeGuynA58es6dN8foaY8nbIo5RJfwee3ZTPOePOpO85924K4KB5e6/nWVfwf4z5zc0/hZbJLwUVAAA=


name: Google Maps Lead Generation with Apify & Email Extraction for Airtable
author_name: Ezema Kingsley Chibuzo
author_username: kingsley
categories: []
created_at: 2025-07-23T06:50:51.634Z
updated_at: 2025-07-23T06:50:51.634Z
url: https://n8n.io/workflows/6307
scraped_at: 2025-12-24 13:02:42
description:
  🧠 What It Does
  This n8n workflow collects leads from Google Maps, scrapes their websites via direct HTTP requests, and extracts valid email addresses — all while mimicking real user behavior to improve scraping reliability. It rotates User-Agent headers, introduces randomized delays, and refines URLs by removing only query parameters and fragments to preserve valid page paths (like social media links).
  The workflow blends Apify actors, raw HTTP requests, HTML-to-Markdown conversion, and smart email extraction to deliver clean, actionable lead data — ready to be sent to Airtable, Google Sheets, or any CRM. 
  Perfect for lean, scalable B2B lead generation using n8n’s native logic and no external scrapers.

  💡Why this workflow
  Modest lead scrapers rely on heavy tools or APIs like Firecrawl. This workflow:
  Uses lightweight HTTP requests (with randomized user-agents) to scrape websites.
  Adds natural wait times to avoid rate limits and IP bans.
  Avoid full-page crawlers, yet still pulls emails effectively.
  Works great for freelancers, marketers, or teams targeting niche B2B leads.
  Designed for stealth and resilience.

  👤 Who it’s for
  Lead generation freelancers or consultants.
  B2B marketers looking to extract real contact info.
  Small businesses doing targeted outreach.
  Developers who want a fast, low-footprint scraper.
  Anyone who wants email + website leads from Google Maps.

  ⚙️ How It Works
  1. 📥 Form Submission (Lead Input)
  A Form Trigger collects:
       Keyword
       Location     
       No. of Leads (defaults to 10)

  This makes the workflow dynamic and user-friendly — ready for multiple use cases and teams.

  2. 📊 Scrape Business Info (via Apify)
  Apify’s Google Maps Actor searches for matching businesses.
  The Dataset Node fetches all relevant business details.
  A Set Node parses key fields like name, phone, website, and category.
  A Limit Node ensures the workflow only processes the desired number of leads.

  3. 🔁 First Loop – Visit & Scrape Website
  Each business website is processed in a loop.
  A Code Node cleans the website URL by removing only query parameters/fragments — keeping full paths like /contact.
  A HTTP Request Node fetches the raw HTML of the site:
       Uses randomized User-Agent headers (5 variants) to mimic real devices and browsers. This makes requests appear more human and reduces the risk of detection or blocking.
  HTML is converted to Markdown using the Markdown Node, making it easier to scan for text patterns.
  A Wait Node introduces a random delay between 2-7 seconds:
       Helps avoid triggering rate limits,
       Reduces likelihood of being flagged as a bot.
  A Merge Node combines scraped markdown + lead info for use in the second loop.

  4. 🔁 Second Loop – Extract Emails
  In this second loop, the markdown data is processed.
  A Code Node applies regex to extract the first valid email address.
  If no email is found, "N/A" is returned.
  A brief 1 second Wait Node simulates realistic browsing time.
  Another Merge Node attaches the email result to the original lead data.

  5. ✅ Filter, Clean & Store
  A Filter Node removes all entries with "N/A" or invalid email results.
  A Set Node ensures only required fields (like website, email, and company name) are passed forward.
  The clean leads are saved to Airtable (or optionally, Google Sheets) using an upsert-style insert to avoid duplicates.

  🛡️ Anti-Flagging Design
  This workflow is optimized for stealth:
  No scraping tools or headless browsers (like Puppeteer or Firecrawl).
  Direct HTTP requests with rotating User-Agents.
  Randomized wait intervals (2-7s).
  Only non-intrusive parsing — no automation footprints.

  🛠 How to Set It Up
  Open n8n (Cloud or Self-Hosted).
  Install Apify node
    search Apify and click on Install. Do this before importing your file.
    
  Import the provided .json file into your n8n editor.
  Set up the required credentials:
  🔑 Apify API Key** (used for Google Maps scraping)
  🔑 Airtable API Key** (or connect Google Sheets instead)

  Recommended 
  Prepare your Airtable base or Google Sheet with fields like: Email, Website, Phone, Company Name.
  Review the Set node if you'd like to collect more fields from Apify (e.g., Ratings, Categories, etc.).

  🔁 Customization Tips
  The Apify scraper returns rich business data. By default, this workflow collects name, phone, and website — but you can add more in the "Grab Desired Fields" node.
  Need safer scraping at scale? Swap the HTTP Request for Firecrawl’s Single URL scraper (or any headless service like Browserless, Oxylabs, Bright Date, or ScrapingBee) — they handle rendering and IP rotation.
  Want to extract from internal pages (like /contact or /about)? Use Firecrawl’s async crawl mode — just note it takes longer.
  For speed and efficiency, this built-in HTTP + Markdown setup is usually the fastest way to grab emails.

nodes_used:
  ["n8n-nodes-base.limit","n8n-nodes-base.formTrigger","@apify/n8n-nodes-apify.apify","@apify/n8n-nodes-apify.apify","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.markdown","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.merge","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.code","n8n-nodes-base.filter","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6928 characters]


name: Google Drive Workflow with Nested Folder Support
author_name: Zain Ali
author_username: zain104
categories: []
created_at: 2025-07-23T13:13:22.185Z
updated_at: 2025-07-23T13:13:22.185Z
url: https://n8n.io/workflows/6320
scraped_at: 2025-12-24 13:02:46
description:
  👤 Who’s it for

  Anyone* who needs to recursively fetch *all files** from a specific Google Drive folder, including files inside all its nested (child) folders.
  Ideal for automation builders, admins, and integrators who want to process, move, list, or report on all files in a complex folder tree.

  ⚙️ How it works / What it does

  This workflow will:
  Accept a Google Drive Folder ID as an input (from another workflow or trigger).
  Recursively discover all child folders starting from the parent, no matter how many levels deep.
  Collect all file IDs & names from every folder (parent + all descendants).
  Return a clean list of all found files (with IDs and names) for further automation, downloading, or processing.

  Key features:
  💡 Works recursively (handles any depth of nested folders).
  🏷️ Outputs file ID & file name for each discovered file.
  🔄 Can be triggered by other workflows (great for modular automation).

  🛠️ How to set up

  1. Google Drive Credentials
  Make sure you’ve set up a Google Drive OAuth2 credential in n8n.
  Connect this credential to all Google Drive nodes in the workflow.

  2. Parent Folder ID
  Input the Google Drive folder ID you want to start from.
  How to pass it:**  
    If running standalone: update the When Executed by Another Workflow node with your folder ID.
    If called from another workflow: pass the folder ID as an input named id.

  3. Check Set Nodes
  There are two Set nodes (Return parent and Return parent1) and one trigger (When Executed by Another Workflow) where you might want to update the hardcoded folder ID.
  ⚠️ Change these IDs to match your use case.

  4. Run the Workflow
  Start the workflow (or execute it via another workflow).
  The result will be a flat list of files in all subfolders.

  ✅ Requirements

  🟢 n8n instance
  🟢 Google Drive OAuth2 credentials connected in n8n
  🟢 A valid Google Drive folder ID to start from

  🧑‍💻 How to customize

  Return Extra Data:**  
    Add fields in the “Search files” node options to return more Google Drive file metadata (e.g., size, webViewLink).
  Filter by File Type:**  
    Adjust the search query or add a filter node to only include certain file types (e.g., PDFs, Docs).
  Change Output Format:**  
    Edit the “Edit Fields” Set node to structure your output differently.
  Integrate Further:**  
    Add new nodes after the Loop to, for example, download, email, or sync files as needed.

  🚨 Notes & Tips

  Performance:**  
    This workflow is optimized for up to hundreds of folders. For very large Drive accounts (thousands of folders/files), consider pagination or batching.
  Credential Security:**  
    Always use n8n’s built-in credential manager—never hard-code sensitive data.
  Static IDs:**  
    As noted in the sticky note, make sure to update all hardcoded folder IDs for your production use.

  🗂️ Node Overview

  When Executed by Another Workflow:** Accepts a folder ID (entry point).
  Google Drive – Get children folders:** Lists subfolders of the given folder.
  If:** Checks if the folder contains any subfolders.
  Execute Workflow:** Handles recursion (calls itself on child folders).
  Code:** Flattens all discovered folder IDs for next step.
  Loop Over Items:** Iterates over all folders to process files.
  Google Drive – Search files:** Finds all files in each folder.
  Edit Fields (Set):** Structures file data for output.
  Sticky Note:** Documentation and reminders inside your workflow.

  🔄 Example Output

  [
    {
      "file_id": "1A2B3C...",
      "file_name": "MyDoc.pdf"
    },
    {
      "file_id": "2B3C4D...",
      "file_name": "Presentation.pptx"
    }
  ]

nodes_used:
  ["n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.executeWorkflow","n8n-nodes-base.googleDrive","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleDrive","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE62X227jNhCGX0XQtRnwTNGXe+giQNug3aLBosgFD0NHjSO5kpzdIPC7d2R7HceWT4u9s2Vq+M0//3Dol7yM+Ti/fb599+W3P24f/uX/3Xz8cpuP8kfoXD5+ycuq7VwV4Lpf5xWVhfCccZ50DFwXWnMvlaImKqOiFVYZCq4ABhR/owy8F15zIwILKWLcDh5nU9fB+wZi+xm6+ex9jU+gA9yga+awGOWVewTc7RN0mZtOs1ROoc0QpIyQuexTXU+m8KEpnyD7pZ5GaPqwbtLm43/u8OU6Qv/xZZWacVEVWnDinAMibWSkcDISZrm2GpxKHvLNltcpm7kGqi5Ly8jZvWuzql5/6/d5nvXrqqIiy42Idy1clQl/mtVt2ZV1hXsbTkecS6TBaBi5gwaRXhar9//Gb8t1/IovRmtO4FbFwDTxAJrIwCNxLEjCjQrUCgBbuFfOz10ZHp6z3+sODkK1yzXrJVtwBMlGRNA9vDzUVYe5Y6h8F5VtQAXVzvBYEGaCR0EZEOcNI0qLqA0VIgZ5SlBosdzrJ21WNyhxd7a4UsuR1ZdoGwzVOopAojfogcgoKcAZUkiZpDPJcq+2tXVNl338BmG+3PEQFyxXwG3dPKRp/fWvppxMlh7Z1prpM1jZ1Za8aFhKmSGuQGUlk+hcbS1R1ljLTBQgtvy6aZGVuGVsD+IG/PgWzvICfcBPKrlhS9jeIDwlkqKEMqBRvQVJoqRBoKJJA39l+xObu6l2yl/Gw36Fbp+PyZNdJK7khlBb0be4JkwaR6RTgljOEuEu+QDWaMnZScKsq7N27snXdWUvIx5orGPEIbBCOVkQbaxAb4LDdpKeMCc5HpuWKcV3vdnDwaX+3D+hzqg92+oiawqruJSEUq1QW1cQzym2kjEFjgMfUhHeOjPcl9OI2m46PTX14xlOmLye8G+puaTD7bTO9QYH1WqK7Co+yt30q3tub+bdbN59cP1wW02b79nFJIBRQYLBk0GyGIhTQAn1xnhplXVWvGb3a13PspsnTOOMzmtn07K7rt65LtxD+zYjpulZhRAbUKYS90E5QgNPRKqEZTBI66UxSkuWdGADB8TbGXpinh0sAHpVj3B0XoCbwIAoKAHlOEFP41yz2JEiWIG2cRFi2uvI78THZd3tviUckcVF7Wc9l14YYo1EUwPeDLz1gaDVjcbJi3cdOjh22eVzF+cWYXwP77yxm8BKwPlKTERXSh6AFIX1JBqlvITolU+DoPxiUJw5P0KKq13oesuMk5u22IJYoa6sJstXN+fVTdM7b5w/sT7G0+r95e0ST24nrRBEyIjO1joRyzgQ42ORKI9YjL4WCFFB6EMtA++Oa3z06Mo+D7wC9tleehgt3x7hxTfCt3xMF3d3yDkwaIc2On4uDEYeOtIP5XBo1A8GHmQZiny06fZCjwaQjh8ug3SHbgc/SdXjaD9pkxP/Fo5offhSdEzvi+8rB6U51QxD6D9ylb+k9HtpbEEckXsQYIj/6N3pmOzn/ikcSHax+B8fo5JBYg8AAA==


name: Extract Local Business Contacts with Google Sheets, SerpAPI, Apify & GPT-4o
author_name: Robert Breen
author_username: rbreen
categories: []
created_at: 2025-07-23T17:25:59.562Z
updated_at: 2025-07-23T17:25:59.562Z
url: https://n8n.io/workflows/6330
scraped_at: 2025-12-24 13:02:41
description:
  Extract Local Business Contacts with Google Sheets, SerpAPI & GPT‑4o

  Status: Ready for Use ✅  
  Disclaimer: This workflow relies on community nodes that are not part of n8n’s core package.  
  Install the following from n8n → Community Nodes before running:

  n8n-nodes-langchain**  
  n8n-nodes-openai** (Structured Output Parser)  
  n8n-nodes-apify**

  📝 Description
  This n8n workflow automates discovery of local‑business contact details by search term and location, then enriches the results with publicly listed email addresses using GPT‑4o AI.

  🔑 Key Features

  🔗 Google Sheets Integration
  Reads search terms and locations from a Google Sheet.  
  Processes only rows that are not marked Complete, preventing duplicates.

  🗺️ Google Maps Search via SerpAPI
  Queries Google Maps through SerpAPI for every search‑term‑and‑location pair.  
  Retrieves the following fields: business name, website, street address, and phone number.

  🧠 Website Scraping & Email Extraction
  Scrapes the business homepage content with Apify’s Fast Website Content Crawler.  
  Sends the scraped HTML to a GPT‑4o AI Agent.  
  Extracts any publicly listed email address.  
  Returns a clean, structured JSON object for downstream use.

  💾 Data Storage & Tracking
  Writes every result to a Results tab in the same Google Sheet.  
  Marks the corresponding row in the Searches tab as Complete once finished.

  🧱 Extensible Design
  The workflow uses modular sub‑workflows and AI agents.  
  You can easily extend it to add:

  Phone‑number verification with Twilio  
  Social‑media enrichment with Clearbit  
  Exports to HubSpot, Salesforce, Airtable, PostgreSQL, or CSV files

  📄 Google Sheet Setup
  Create a Searches tab with these exact columns (one header row):

  Search | Area | Area Name | Complete

  Create a results tab with these columns

  title | website | address | phone | Search | Search Name | Area | email (Manual Entry)

  ⚙️ Prerequisites
  Google Cloud Project with Google Sheets API and Google Drive API enabled  
  SerpAPI account (free trial or paid) – obtain an API key  
  Apify account (free trial or paid) with the Fast Website Content Crawler actor installed  
  OpenAI account with an API key that can access GPT‑4o models

  🚀 Setup Instructions

  Copy the Google Sheet  
     Make a personal copy of the template sheet.  
     Ensure the tab names are Searches and Results.  
     https://docs.google.com/spreadsheets/d/1QgcVMlXRlM_5ZFFUHr6bVK-93Tzia9XseTX03ZYnowI/edit?usp=sharing

  Configure Google Sheets nodes in n8n  
     Open the workflow.  
     Update the nodes Extract Search Terms and Save Emails to Sheet to point at your copied sheet.  
     Authenticate using Google OAuth2 credentials that have access to the sheet.

  Add SerpAPI credentials  
     Sign in at &lt;https://serpapi.com&gt;.  
     Copy your API key.  
     In the Search Google Maps node, create a new credential and paste the key.

  Set up Apify  
     Sign up at &lt;https://apify.com&gt;.  
     Add the Fast Website Content Crawler actor to your account.  
     In the Scrape Web Page HTTP node, append ?token=YOUR_API_KEY to the actor URL.

  Add your OpenAI API key  
     Go to &lt;https://platform.openai.com&gt;.  
     Generate an API key.  
     Add it to the AI Agent and OpenAI Chat Model node credentials.

  ✅ Running the Workflow
  Click Execute Workflow in n8n.  
  For each unprocessed row in the Searches tab, the automation will:  
     Retrieve business information from Google Maps via SerpAPI.  
     Scrape the business website using Apify.  
     Use GPT‑4o to extract a public email address.  
     Write all collected data to the Results tab.  
     Mark the original row as Complete.

  🧩 Example Use Cases
  Build highly targeted lead lists for sales and marketing outreach.  
  Compile local business directories for regional websites or apps.  
  Automate contact‑information collection for lead‑generation campaigns and reduce manual data entry.

  🤝 Connect with Me

  Description  
  I’m Robert Breen, founder of Ynteractive — a consulting firm that helps businesses automate operations using n8n, AI agents, and custom workflows. I’ve helped clients build everything from intelligent chatbots to complex sales automations, and I’m always excited to collaborate or support new projects.

  If you found this workflow helpful or want to talk through an idea, I’d love to hear from you.

  Links  
  🌐 Website: https://www.ynteractive.com  
  📺 YouTube: @ynteractivetraining  
  💼 LinkedIn: https://www.linkedin.com/in/robert-breen  
  📬 Email: rbreen@ynteractive.com

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.splitInBatches","n8n-nodes-base.executeWorkflow","n8n-nodes-base.googleSheets","n8n-nodes-base.filter","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-serpapi.serpApi","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.summarize","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5344 characters]


name: Track Demo Bookings with Google Calendar to Meta Conversions API Integration
author_name: Marcelo Abreu
author_username: mabreum
categories: []
created_at: 2025-07-23T17:46:43.971Z
updated_at: 2025-07-23T17:46:43.971Z
url: https://n8n.io/workflows/6331
scraped_at: 2025-12-24 13:02:46
description:
  Who is this workflow for?
  If you're using Meta Ads to generate new leads to your sales pipeline, this workflow is for you! 🙌🏻

  What this workflow does
  Triggers every time you have a new calendar event on a chosen Google Acount
  Filter only events with the same name of your "Schedule a demo" event
  Formats and send event to Meta Conversion API

  What events can I send?
  Any event you'd like! It's preconfigured with the "Schedule" event, but you can change to "Purchase", "InitiateCheckout", "Lead" and custom events.

  Setup Guide
  Connect Google OAuth2 to n8n
  Get your PIXEL ID and Access Token from Meta
  Set your configuration node with Pixel ID, Access Token, source_url and event_name

  Requirements
  Meta Access Token + Pixel ID (via Meta Conversion API): Documentation
  Google Access (via OAuth2): Documentation
   

  This free template was created by pdf noodle.

  Feel free to contact us via the founder Linkedin, if you have any questions! 👋🏻

nodes_used:
  ["n8n-nodes-base.googleCalendarTrigger","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.httpRequest","n8n-nodes-base.crypto","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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


name: Qualify Real Estate Leads via SMS with GPT-4o, Twilio, and Google Sheets
author_name: Robert Breen
author_username: rbreen
categories: []
created_at: 2025-07-23T18:02:31.495Z
updated_at: 2025-07-23T18:02:31.495Z
url: https://n8n.io/workflows/6332
scraped_at: 2025-12-24 13:02:41
description:
  🏡 AI-Powered Real Estate Lead Qualifier (n8n Workflow)

  Description
  This n8n workflow automates lead engagement and qualification for real estate buyers. When someone submits a form on your real estate website, the system instantly responds via SMS, starting a conversation powered by an AI Agent. The AI asks pre-qualifying questions (like budget, location, and timeline), logs the entire conversation, and then summarizes and sends the lead info to a real estate agent. Chat history is stored in a PostgreSQL database (via Supabase) and tied to each buyer's phone number.

  Key Features
  📩 Instant SMS Response: Follows up immediately after form submission.

  🤖 AI Chat-Based Qualification: Conversational agent gathers buyer needs and preferences.

  🗂 Supabase Chat Memory: Stores chat history tied to the buyer’s phone number to maintain context.

  📊 Lead Summary & Agent Handoff: Summarizes conversation and logs it to Google Sheets for the agent.

  🔁 Customizable AI Questions: Easily edit the questions asked by the AI to suit your process.

  🤝 Connect with Me

  Description  
  I’m Robert Breen, founder of Ynteractive — a consulting firm that helps businesses automate operations using n8n, AI agents, and custom workflows. I’ve helped clients build everything from intelligent chatbots to complex sales automations, and I’m always excited to collaborate or support new projects.

  If you found this workflow helpful or want to talk through an idea, I’d love to hear from you.

  Links  
  🌐 Website: https://www.ynteractive.com  
  📺 YouTube: @ynteractivetraining  
  💼 LinkedIn: https://www.linkedin.com/in/robert-breen  
  📬 Email: rbreen@ynteractive.com

nodes_used:
  ["n8n-nodes-base.formTrigger","@n8n/n8n-nodes-langchain.memoryPostgresChat","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.wait","n8n-nodes-base.twilio","n8n-nodes-base.twilioTrigger","n8n-nodes-base.if","n8n-nodes-base.twilio","n8n-nodes-base.twilio","n8n-nodes-base.postgres","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleSheets","n8n-nodes-base.twilio","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5596 characters]


name: Automatic Email Unsubscribe Handler: Outlook to BigQuery Integration
author_name: Robert Breen
author_username: rbreen
categories: []
created_at: 2025-07-23T19:07:02.461Z
updated_at: 2025-07-23T19:07:02.461Z
url: https://n8n.io/workflows/6333
scraped_at: 2025-12-24 13:02:42
description:
  🚫 Email Unsubscribe Handler for Outlook 

  Description
  This n8n workflow automatically scans recent email replies from your Outlook inbox and identifies unsubscribe requests. If a contact replies with any variation of "unsubscribe" within the past 7 days, the system performs two key actions:

  Saves the contact’s email address in a BigQuery unsubscribes table (for compliance and tracking).

  Deletes that contact from the active leads table in BigQuery (to stop future outreach).

  This flow can be triggered on a schedule (e.g. every 4 hours) or run manually as needed.

  Key Features
  📥 Email Parsing from Outlook: Automatically monitors for replies that contain unsubscribe language.

  🧠 Smart Filtering: Captures unsubscribes based on message content, not just subject lines.

  🔄 BigQuery Integration: Logs unsubscribed emails and removes them from your leads dataset.

  🤝 Connect with Me

  Description  
  I’m Robert Breen, founder of Ynteractive — a consulting firm that helps businesses automate operations using n8n, AI agents, and custom workflows. I’ve helped clients build everything from intelligent chatbots to complex sales automations, and I’m always excited to collaborate or support new projects.

  If you found this workflow helpful or want to talk through an idea, I’d love to hear from you.

  Links  
  🌐 Website: https://www.ynteractive.com  
  📺 YouTube: @ynteractivetraining  
  💼 LinkedIn: https://www.linkedin.com/in/robert-breen  
  📬 Email: rbreen@ynteractive.com

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches","n8n-nodes-base.summarize","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleBigQuery","n8n-nodes-base.code","n8n-nodes-base.microsoftOutlook","n8n-nodes-base.filter","n8n-nodes-base.merge","n8n-nodes-base.summarize","n8n-nodes-base.googleBigQuery"]

workflow_json_compressed:
  [encoded data, 4316 characters]


name: Upload Binary Images to X (Twitter) from Google Drive or AI Sources
author_name: Malik Hashir
author_username: malikx
categories: []
created_at: 2025-07-23T21:11:35.035Z
updated_at: 2025-07-23T21:11:35.035Z
url: https://n8n.io/workflows/6340
scraped_at: 2025-12-24 13:02:46
description:
  This workflow lets you post images to X (Twitter) by uploading binary image files obtained from any source, not just Google Drive. Whether you’re fetching images stored on Google Drive or working with AI image generation models that output images directly as binary files, you can integrate these binary files seamlessly into your n8n workflow. Simply download or receive the image as binary data, then pass it as the file parameter in the media upload node to X’s API. This flexible approach lets you automate posts with images generated on-demand by AI, pulled from cloud storage, or anywhere else you can access as binary data—giving you full control to design powerful, no-code social media automations that combine AI creativity with native X posting, all within n8n.

  How to Setup
  Create Google Drive credentials (if you are using Google Drive for downloading binary files). If you are using any AI model, just connect your download file node before the "Upload Media" node.
  Create OAuth 1 credentials by following the guide in the sticky notes. (Required: Consumer Key, Consumer Secret)
  Create OAuth 2 credentials for the native X node within n8n. (Required: Client ID, Client Secret)

  Key Features
  Only native n8n nodes—no external code or scripts needed. 
  Fully no-code: Uses only native, prebuilt n8n nodes visualized in an easy workflow.
  Supports binary image files: Directly uploads any binary image data from Google Drive or AI generation nodes.
  OAuth2 and OAuth1 ready: Straightforward setup for secure authentication with Google Drive and X.

nodes_used:
  ["n8n-nodes-base.twitter","n8n-nodes-base.manualTrigger","n8n-nodes-base.googleDrive","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52Vy27bMBBFf8XQ2gz4fnibdNFFu2jSB1BkMSKHjhBbcm26ThAYyGe0v9cv6cgN4iaVCycrQeTVnYO55OiummOBanJXNe2qQBvxbaomlREmWc69CvQIBnUMnKN22vMsPQpd16r2URmeLddahWichOhM4rU1TlXjquB8MYOCp0tMq3Ms68VpRytYkAqU5Rq346rtEq6qyVeq3lflJqKLKjIjcs20TooFD4KB1dEr5ZW2mpxbmCOpyZjsRxcbxNLXu130q61v2c6W1bDCk7JpSsEl7S+6VVOarqVyims+1sJe0iosyY0UhHG3/ePyid52QrkdP5BpFCELQWRRI9PJeRaM1MwGK0EYL4xLe7LPV9iO4qyJ1007Hf26//HmBuOaWDfd8jrPus2v+58HiefQrmF2sWym0+fclvtjsMUjdpBByYQ188JypoMAVktlmUuQdLIpUCf22Gfdpp11kEa5meFBvmnXTWd4tmy+41M6IflRXVWPeCk6pbQzTEuXmLZKsBBjZElEBVkioI17vI+LHdw7TA2MSjf6chDxqpTFB/y2xlV5iiiF1scg6pN99PSNzVk4Fh3lr6M2rDYpsCykEzmBAm/2kOeFUr8dve/K4Q6udpoHyd8N9MaOKZHndFXs2oJtIafqcNYKhECrFfMIjrJGZEEHzrLRNSgUdfZxkFO8GFRaJ18PCtyqmtN5RM99Hz0hSx4Y0GwBF8HnPNxQ+WLQQHEzgn0dKHrD6WAiQ4D+jJrIwKSetm9AyoFnHARVr4ueDufLQElN+y3G3mUnf3qFaWEOTe9PE7an+P8t2mnH9CNIeFNN+Pbykkr+qx9yHZ7Fg4ZHDcehGgfG00CR7fY3I8LSctcGAAA=


name: Automated DNS Records Lookup for Subdomains with HackerTarget API Reports
author_name: Adnan Tariq
author_username: adnantariq
categories: []
created_at: 2025-07-24T00:44:06.806Z
updated_at: 2025-07-24T00:44:06.806Z
url: https://n8n.io/workflows/6355
scraped_at: 2025-12-24 13:02:44
description:
  🧠 EnumX: Auto DNS Lookup for Subdomains with Markdown Export

  Who’s it for

  Security engineers, red teamers, or automation-curious teams looking to enhance passive reconnaissance with minimal effort. Ideal for early-stage security setups, bug bounty hunters, and SME SOC analysts.

  What it does

  This workflow performs passive subdomain enumeration and DNS record lookup for a given domain. It parses the data, generates a clean markdown report, and sends it via email.

  🌐 Uses HackerTarget APIs for subdomain and DNS data

  🧠 Parses records (A, AAAA, CNAME, TXT, MX, NS, SOA)

  📨 Sends a structured markdown report to a designated inbox

  🛡️ Useful for recon, misconfiguration detection, and compliance evidence

  How to set up
  Replace the email address in the Gmail node with your recipient.

  (Optional) Replace HackerTarget API with your own recon APIs.

  Click Execute Workflow or trigger via cron on schedule.

  View the full markdown output in your inbox.

  Requirements
  Free Gmail account (with n8n Gmail OAuth2 configured)

  (Optional) Replace example.com with your target domain

  Internet access (API calls use HTTPS)

  How to customize the workflow
  Modify the target domain via the "🌐 Target Domain" Set node

  Adjust markdown format in “📝 Format DNS Markdown”

  Replace Gmail node with Slack/Telegram/Notion if preferred

  Add additional enrichment nodes (e.g., Shodan, VirusTotal) for deeper analysis

  *💼 This template is part of the CYBERPULSE AI BlueOps/RedOps suite. 

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.gmail","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52XyW4bRxCGX2Uw17CF3hfeBFsWslgOLCOb4UNPdzVFiJxhhkPLgkDAD5BDgARIcgiSnIy8lp8gj5CakWxS0oxE+UJw6an6qvrvv5oX+TTm4/z50dHp90++jMtnJol4PM1H+Rwan48v8mm5bHwZ4PN2nU6QkmTeRyispM4IA1xLo5OL1EuVnAII2rvAtE8pWUjWeK25VKrQMWHcBuaLmW/gUQ1xeQzNavGowm+gAUzQ1CtYj/LSzwGzHZSr+XfjbH/VVNnjo+Psq6o6XS2yVNXZ8aqI1dwjXHY2bU6yp74+jdVZmR28WVR10+bxk2U+fnlxWeDkcF8sD5+cl+XBFweH6Yf8WhKofTOt8OFyMi0Bfws1IGLcb3ABp1wRagiXLygdczEWZk8Y1YZYLeL9y9avMFcVYYuG2YitkZaIaByRTAApfKDEU5tiZNpYrTeE355AmYXZNJxOy0n2/u3vB28grBrIzqr6NM2qs/dv/2gLPl+0q0tbki4dhlzC3tyXKz97UU8nE6hx1aJaTttaEYZwxumIU+Rb+BpzNVAj5MX6MtY3+KlbyNajK24OQXorDGEsCSI9vviAH4VUAWTyzkmz4f7vr59+zl74egJN9rjbrEHKJTQ32JjbiU3syY90NjpnXeBEJiqRjnFiwQOhyOyY4oUHvk33yz8bGWWtDAbxTppm8Rx+XMHyFqahu2DKPf4RkxVcJ6YYtl95Iq2zpFCeEgU6UYg8Che3Md/9nX3t6yVsaX4QNODbm4TS7kK44QMXlKYB9zcUKE6eOHHBB0IpTYYFLDjqG5vcHs7nEKo6DqPd0UMu6YjpXZo4yv3szJ8vn62axap57FuLuvSMK3gBjCaL50mgDeHJSkCsd4kE7jWP1Jhkrmvgz+xJVc9909XwwUUe0l+N8PIB7Q1cCWVSQbw2BZEuBmI1k4Tb2AJqaq3cJvz1t+wp4BnqAD/biGD4xLerb0DanSDFlkqDUlGATYQiFJGgDPEcDNFa2WQkxMKbXpXuooU+mVK+kwg2hIW0xiY85MoUDM8RRGyk5iRaybnh1PkCNoSH2LPZINDk6tdr7vihZ2dQnODk6QYgWK6Yc0BSEBQ9RgtiC4cv3hpZGKNU15a7S9jbOGpKVGhgAdVA0QwMizgEnCQu+ojaSLKw1/T67t8rNezPZp8kV/lAuWJJVnhHiVMBTZUpSqwTeKCECtxS0CZu6eC4wSl1nh1VDQx7fbfmaskWGh3dwspDVTZQtuM1H55KwQgcTN4SlQpLpHAFcZQCUdqggNG1rIZeRPZgRhxL6KboqZ+I6pIJou0htzqiwWpDHEchCcaD4YExB6IXlT8cVdCW9Lbz302Kq31opq8xU/KzJYxynM0NXjy6R6G7eeDSZ3XE68Q4f83aGK8vn+9OSAEQE8cTQiND4whUk6LAElMssDhFlSjaayBClBDaUF3gW2MEv+tcbvwSL01tuTu4zJUtTssIb/IxXb96hWw9t5D+2HdcBwYC337iHuq+CT4Qu++Z/uhD8/dm4NHWM/cPlfuw7t+rh+ZgH3P0elxfkhumPrRN/TN+YK/uNtiBFIO1DkjtnltHb5ad/gYMSmTgHt6Tab3+HwpFc08VDgAA


name: Automate E-commerce Orders, Inventory & Feedback with Slack, Sheets & Gmail
author_name: Marth
author_username: marth
categories: []
created_at: 2025-07-24T05:08:32.560Z
updated_at: 2025-07-24T05:08:32.560Z
url: https://n8n.io/workflows/6362
scraped_at: 2025-12-24 13:02:45
description:
  How It Works ⚙️

  This workflow acts as a central nervous system for your e-commerce operations, automating three critical areas:

  A. Order Fulfillment Notification
  Webhook: New Order: 🚀 The workflow is instantly triggered when a new order is placed on your e-commerce platform (e.g., Shopify, WooCommerce) via a webhook. This provides real-time data to initiate fulfillment.
  Extract Order Data (Function): 🧹 This node parses the incoming JSON data from the new order, extracting crucial details such as Order ID, customer name, email, total amount, products purchased, and shipping address.
  Send Fulfillment Notification (Slack/Email): 📢 A detailed, formatted notification containing all necessary order information is immediately sent to your designated fulfillment team's Slack channel or email inbox, ensuring prompt order processing.

  B. Low Stock Alert
  Schedule Trigger (Daily Inventory Check): ⏰ The workflow runs automatically once every 24 hours (or at your configured interval) to regularly monitor your product inventory levels.
  Read Inventory Data (Google Sheets/API): 📊 It connects to your chosen inventory data source (e.g., a Google Sheet configured with product IDs, names, and stock levels, or an e-commerce platform API) to retrieve current stock data for all products.
  Filter Low Stock (Function): 🧹 This node processes the retrieved inventory data. It uses a defined threshold (e.g., 10 units) to identify and filter out any products whose current stock level falls below this critical limit.
  If Low Stock Items?: 🚦 This conditional node checks if the previous step found any products that are low on stock. If yes, it proceeds to send an alert.
  Send Low Stock Alert (Slack/Email): 🚨 A warning notification is sent to your purchasing or inventory management team via Slack or email, providing details on the low-stock items and prompting them to reorder before stock runs out, preventing lost sales.

  C. Post-Purchase Feedback Request
  Webhook: Order Fulfilled (Delayed): 📦 This branch is triggered when an order is marked as fulfilled or delivered in your e-commerce system. Crucially, this webhook should be sent by your e-commerce platform or a separate automation *after a specific delay* (e.g., 3-7 days post-delivery) to ensure the customer has received and experienced the product.
  Extract Customer Data (Feedback) (Function): 🧹 This node extracts the customer's name and email address from the fulfilled order data, preparing it for the feedback request.
  Send Feedback Request (Gmail/Email Service): 📧 A personalized email is sent to the customer. This email thanks them for their purchase and includes a direct link to your chosen customer feedback form (e.g., Google Form, Typeform). This systematic approach encourages valuable insights for continuous business improvement.

  How to Set Up 🛠️

  Follow these steps carefully to get your "E-commerce Operations Hub" workflow up and running in n8n:

  Import Workflow JSON:
      Open your n8n instance.
      Click on 'Workflows' in the left sidebar.
      Click the '+' button or 'New' to create a new workflow.
      Click the '...' (More Options) icon in the top right.
      Select 'Import from JSON' and paste the entire JSON code for this workflow.

  Configure Webhook: New Order (Branch A):
      Locate the 'Webhook: New Order' node (1. Webhook: New Order).
      Activate the workflow. n8n will provide a unique 'Webhook URL'.
      Crucial Step: Go to your e-commerce platform (Shopify, WooCommerce, etc.) and configure a new webhook. Set it to trigger on 'Order Created' or 'New Order' events, and paste the n8n Webhook URL there. Ensure the data format sent by your platform is JSON (most do by default).

  Configure Extract Order Data (Function - Branch A):
      Locate the 'Extract Order Data' node (2. Extract Order Data).
      Adjust Field Names: Review the functionCode inside this node. You MUST adjust the variable assignments (e.g., orderData.id, orderData.customer?.first_name) to accurately match the exact field names sent by your e-commerce platform's new order webhook. Use the 'Test Workflow' feature in n8n (after sending a test order webhook from your platform) to inspect the incoming items[0].json.body data structure and make precise adjustments.

  Configure Send Fulfillment Notification (Slack - Branch A):
      Locate the 'Send Fulfillment Notification (Slack)' node (3. Send Fulfillment Notification (Slack)).
      Credentials: Select your existing Slack API credential or click 'Create New' to set one up. Replace YOUR_SLACK_CREDENTIAL_ID with the actual ID or name of your credential from your n8n credentials.
      Channel: Replace YOUR_FULFILLMENT_SLACK_CHANNEL_ID_OR_NAME with the exact ID or name of the Slack channel where your fulfillment team receives notifications (e.g., #order-fulfillment).
      (Optional: Switch to Email for Fulfillment): Delete this Slack node and add a Gmail or SendGrid node. Configure its credentials, 'To Email', 'Subject' (e.g., New Order #{{ $json.orderId }}), and 'HTML' body (e.g., ={{ $json.fulfillmentMessage }}).

  Configure Schedule Trigger (Daily Inventory Check - Branch B):
      Locate the 'Schedule Trigger (Daily Inventory Check)' node (4. Schedule Trigger (Daily Inventory Check)).
      Adjust 'interval', 'value', and 'timezone' to your preferred daily check time (e.g., every 24 hours at 3 AM in your local timezone).

  Configure Read Inventory Data (Google Sheets - Branch B):
      Locate the 'Read Inventory Data (Google Sheets)' node (5. Read Inventory Data (Google Sheets)).
      Credentials: Select your existing Google Sheets OAuth2 credential or click 'Create New'. Replace YOUR_GOOGLE_SHEETS_CREDENTIAL_ID with the actual ID or name of your credential.
      Sheet ID: Replace YOUR_INVENTORY_GOOGLE_SHEET_ID with the actual ID of your Google Sheet where your inventory data is stored.
      Range: Ensure the 'range' (e.g., Inventory!A:C) correctly covers your product ID, name, and stock level columns. Crucially, ensure your Google Sheet has columns with exact names: ProductID, ProductName, and StockLevel (as numbers).

  Configure Filter Low Stock (Function - Branch B):
      Locate the 'Filter Low Stock' node (6. Filter Low Stock).
      Set Threshold: Inside the functionCode, adjust const lowStockThreshold = 10; to your desired low stock alert level.
      Adjust Field Names: Review the functionCode and adjust the variable assignments (e.g., product.ProductID, product.StockLevel) if your Google Sheet uses different column headers.

  Configure Send Low Stock Alert (Slack - Branch B):
      Locate the 'Send Low Stock Alert (Slack)' node (8. Send Low Stock Alert (Slack)).
      Credentials: Ensure your Slack API credential is selected (same as in step 4).
      Channel: Replace YOUR_INVENTORY_SLACK_CHANNEL_ID_OR_NAME with the exact ID or name of the Slack channel for inventory alerts (e.g., #inventory-alerts).
      (Optional: Switch to Email for Low Stock): Delete this Slack node and add a Gmail or SendGrid node. Configure its credentials, 'To Email', 'Subject' (e.g., Low Stock Alert!), and 'HTML' body (e.g., ={{ $json.alertMessage }}).

  Configure Webhook: Order Fulfilled (Delayed) (Branch C):
      Locate the 'Webhook: Order Fulfilled (Delayed)' node (10. Webhook: Order Fulfilled (Delayed)).
      Activate the workflow. n8n will provide a unique 'Webhook URL'.
      Crucial Step: This webhook should be triggered when an order is fulfilled or delivered. You will need to set up a mechanism in your e-commerce platform or a separate automation tool to send a webhook to this n8n URL after a specific delay (e.g., 3-7 days after the order is marked as delivered). This allows customers time to receive their product before being asked for feedback.

  Configure Extract Customer Data (Feedback) (Function - Branch C):
      Locate the 'Extract Customer Data (Feedback)' node (11. Extract Customer Data (Feedback)).
      Adjust Field Names: Review the functionCode and adjust the variable assignments (e.g., fulfilledOrderData.customer?.email) to accurately match the exact field names sent by your 'Order Fulfilled' webhook.
      Set Feedback Form URL: Replace YOUR_GOOGLE_FORM_OR_SURVEY_LINK with the actual public URL of your customer feedback survey (e.g., Google Form, Typeform, SurveyMonkey).
      Set Store Name: Replace [Your Store Name] in the emailBody with your actual store name.

  Configure Send Feedback Request (Gmail - Branch C):
      Locate the 'Send Feedback Request (Gmail)' node (12. Send Feedback Request (Gmail)).
      Credentials: Select your existing Gmail OAuth2 credential or click 'Create New'. Replace YOUR_GMAIL_CREDENTIAL_ID with the actual ID or name of your credential.
      From Email: Replace YOUR_STORE_EMAIL@example.com with the email address you want feedback requests to be sent from.
      The 'To Email', 'Subject', and 'HTML' body fields are dynamically generated by the previous 'Function' node.
      (Optional: Switch to another Email Service): Delete this Gmail node and add a SendGrid or Mailgun node, configuring it similarly.

  Review and Activate:
      Thoroughly review all node configurations. Ensure all placeholder values (like YOUR_...) are replaced and settings are correct.
      Click the 'Save' button in the top right corner.
      Finally, toggle the 'Inactive' switch to 'Active' to enable your workflow. 🟢 Your "E-commerce Operations Hub" is now live, ready to automate and optimize your store!

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.function","n8n-nodes-base.slack","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.function","n8n-nodes-base.if","n8n-nodes-base.slack","n8n-nodes-base.noOp","n8n-nodes-base.webhook","n8n-nodes-base.function","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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


name: Generate & Upload Images with Leonardo AI, WordPress and Twitter
author_name: Jay Emp0
author_username: jay-emp0
categories: []
created_at: 2025-07-24T05:35:19.947Z
updated_at: 2025-07-24T05:35:19.947Z
url: https://n8n.io/workflows/6363
scraped_at: 2025-12-24 13:02:41
description:
  Prompt-to-Image Generator & WordPress Uploader (n8n Workflow)

  This workflow generates high-quality AI images from text prompts using Leonardo AI, then automatically uploads the result to your WordPress media library and returns the final image URL.

  It functions as a Modular Content Production (MCP) tool - ideal for AI agents or workflows that need to dynamically generate and store visual assets on-demand.

  ⚙️ Features

  🧠 AI-Powered Generation  
    Uses Leonardo AI to create 1472x832px images from any text prompt, with enhanced contrast and style UUID preset.

  ☁️ WordPress Media Upload  
    Uploads the image as an attachment to your connected WordPress site via REST API.

  ☁️ Twitter Media Upload  
    Uploads the image to twitter so that you can post the image later on to X.com using the media_id

  🔗 Returns Final URL  
    Outputs the publicly accessible image URL for immediate use in websites, blogs, or social media posts.

  🔁 Workflow-Callable (MCP Compatible)  
    Can be executed standalone or triggered by another workflow. Acts as an image-generation microservice for larger automation pipelines.

  🧠 Use Cases

  For AI Agents (MCP)
  Plug this into multi-agent systems as the "image generation module"
  Generate blog thumbnails, product mockups, or illustrations
  Return a clean image_url for content embedding or post-publishing

  For Marketers / Bloggers
  Automate visual content creation for articles
  Scale image generation for SEO blogs or landing pages
  Supports media upload for twitter

  For Developers / Creators
  Integrate with other n8n workflows
  Pass prompt and slug as inputs from any external trigger (e.g., webhook, Discord, Airtable, etc.)

  📥 Inputs

  | Field  | Type   | Description                            |
  |--------|--------|----------------------------------------|
  | prompt | string | Text prompt for image generation       |
  | slug   | string | Filename identifier (e.g. hero-image) |

  Example:
  {
    "prompt": "A futuristic city skyline at night",
    "slug": "futuristic-city"
  }
  📤 Output
  {
    "public_image_url" : "https://your.wordpress.com/img-id",
    "wordpress":{...obj},
    "twitter":{...obj}
  }
  🔄 Workflow Summary
  Receive Prompt & Slug
  Via manual trigger or parent workflow execution
  Generate Image
  POST to Leonardo AI's API with the prompt and config
  Wait & Poll
  Delays 1 minute, then fetches final image metadata
  Download Image
  GET request to retrieve generated image
  Upload to WordPress
  Uses WordPress REST API with proper headers
  Upload to Twitter
  Uses Twitter Media Upload API to get the media id incase you want to post the image to twitter
  Return Result
  Outputs a clean public_image_url JSON object along with wordpress and twitter media objects

  🔐 Requirements
  Leonardo AI account and API Key
  WordPress site with API credentials (media write permission)
  Twitter / x.com Oauth API (optional)
  n8n instance (self-hosted or cloud)
  This credential setup:
  	httpHeaderAuth for Leonardo headers
  	httpBearerAuth for Leonardo bearer token
  	wordpressApi for upload

  🧩 Node Stack
  Execute Workflow Trigger / Manual Trigger
  Code (Input Parser)
  HTTP Request → Leonardo image generation
  Wait → 1 min delay
  HTTP Request → Poll generation result
  HTTP Request → Download image
  HTTP Request → Upload to WordPress
  Code → Return final image URL

  🖼 Example Prompt
  {
    "prompt": "Batman typing on a laptop",
    "slug": "batman-typing-on-a-laptop"
  }
  Will return:
  {
  "public_image_url": "https://articles.emp0.com/wp-content/uploads/2025/07/img-batman-typing-on-a-laptop.jpg"
  }
  🧠 Integrate with AI Agents
  This workflow is MCP-compliant—plug it into:
  Research-to-post pipelines
  Blog generators
  Carousel builders
  Email visual asset creators

  Trigger it from any parent AI agent that needs to generate an image based on a given idea, post, or instruction.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.code","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.merge","n8n-nodes-base.httpRequest","n8n-nodes-base.aggregate"]

workflow_json_compressed:
  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


name: Generate Complete SEO Audits with Apify, Claude Sonnet 4, and Gmail Delivery
author_name: Luka Zivkovic
author_username: zivkovic58
categories: []
created_at: 2025-07-25T01:31:37.434Z
updated_at: 2025-07-25T01:31:37.434Z
url: https://n8n.io/workflows/6403
scraped_at: 2025-12-24 13:02:43
description:
  Description
  Get professional SEO audits delivered automatically in under 5 minutes. This complete n8n workflow analyzes any website and generates 4 comprehensive reports that you can send directly to clients.

  What You Get:
  ✅ Complete n8n Workflow - Ready-to-import automation that runs entire SEO audits
  ✅ Technical SEO Analysis - HTML structure, performance, and crawlability assessment
  ✅ Content Quality Audit - Keyword optimization, readability, and E-A-T evaluation
  ✅ Strategic Opportunities Report - Growth strategies and competitive insights
  ✅ Executive Summary - Client-ready action plan with prioritized recommendations
  ✅ Professional Email Templates - Branded delivery system with all reports attached
  ✅ Setup Documentation - Complete installation guide with API configurations

  Perfect for agencies, consultants, and freelancers who want to offer high-value SEO audits without manual analysis.

  Get Started: []https://n8n.partnerlinks.io/ds9podzjls6d

  SEO Audit Workflow Product Window
  Product Name
  "AI-Powered SEO Audit Automation"
  Product Description
  Get professional SEO audits delivered automatically in under 5 minutes. This complete n8n workflow analyzes any website and generates 4 comprehensive reports that you can send directly to clients.
  What You Get:

  ✅ Complete n8n Workflow - Ready-to-import automation that runs entire SEO audits
  ✅ Technical SEO Analysis - HTML structure, performance, and crawlability assessment
  ✅ Content Quality Audit - Keyword optimization, readability, and E-A-T evaluation
  ✅ Strategic Opportunities Report - Growth strategies and competitive insights
  ✅ Executive Summary - Client-ready action plan with prioritized recommendations
  ✅ Professional Email Templates - Branded delivery system with all reports attached
  ✅ Setup Documentation - Complete installation guide with API configurations

  Perfect for agencies, consultants, and freelancers who want to offer high-value SEO audits without manual analysis.
  Requirements: You'll need an n8n account to run this workflow.
  Get Started: https://n8n.partnerlinks.io/ds9podzjls6d

  🚀 How to Setup
  Prerequisites
  Before importing this workflow, ensure you have:

  n8n account (cloud or self-hosted)
  Apify account for web scraping
  Anthropic account for AI analysis
  Gmail account for report delivery

  Step 1: API Credentials Setup
  1.1 Apify API Setup

  Sign up at Apify
  Go to Account Settings → Integrations
  Copy your API Token
  In the workflow, update the Apify Crawl Request node URL with your token

  1.2 Anthropic API Setup

  Create account at Anthropic Console
  Generate an API Key
  In n8n, go to Credentials → Add Credential → Anthropic API
  Enter your API key

  1.3 Gmail OAuth2 Setup

  In n8n, go to Credentials → Add Credential → Gmail OAuth2
  Follow the OAuth2 flow to connect your Gmail account
  Grant permissions for sending emails with attachments

  Step 2: Workflow Configuration
  2.1 Import Workflow

  Copy the provided workflow JSON
  In n8n, click Import from URL/File
  Paste the JSON and import

  2.2 Update Variables

  Open the Variables node
  Set your target website URL (include https://)
  Set the recipient email address
  Save the node

  2.3 Configure Credentials

  Assign your Anthropic API credential to all Claude model nodes
  Assign your Gmail OAuth2 credential to the Gmail node
  Update the Apify URL with your API token

  Step 3: Test & Run
  3.1 Test Run

  Start with a simple website (your own site recommended)
  Click Execute Workflow on the manual trigger
  Monitor execution progress (takes 3-5 minutes)
  Check for any error messages

  3.2 Troubleshooting

  Apify errors: Verify API token and URL format
  Anthropic errors: Check API key and usage limits
  Gmail errors: Re-authenticate OAuth2 connection
  Timeout issues: Increase node timeout settings if needed

  Step 4: Customization (Optional)
  4.1 Audit Scope

  Modify maxCrawlDepth in Apify node for more pages
  Adjust maxCrawlPages for larger sites
  Update CSS selectors for specific content extraction

  4.2 Email Template

  Customize the HTML email template in Gmail node
  Update sender information and branding
  Modify report descriptions and formatting

  4.3 AI Prompts

  Fine-tune prompts in the three audit nodes for specific industries
  Adjust analysis depth and focus areas
  Modify scoring criteria and recommendations

  📋 Workflow Overview
  The complete process takes 3-5 minutes and includes:

  Website Crawling (30-60 seconds) - Extracts content and HTML
  AI Analysis (2-3 minutes) - Three parallel audits using Claude Sonnet 4
  Report Generation (1-2 minutes) - Creates and emails 4 professional reports

  💡 Pro Tips

  Test with smaller websites first to verify setup
  Monitor Anthropic API usage to avoid rate limits
  -Keep backup copies of your customized prompts
  Set up email filters to organize audit reports

  📦 What Workflow does

  Technical SEO Audit PDF (≈ 8-12 pp)
  Core Web Vitals snapshot
  Crawl/index errors & fixes
  Schema, canonical, robots, mobile UX checks
  Colour-coded priority list (🔴 / 🟡 / 🟢)

  Content Quality Audit PDF (≈ 6-10 pp)
  E-E-A-T scoring & gaps
  Keyword density + missed terms
  Readability metrics (Flesch, Gunning-Fog)
  Duplicate-content & freshness flags

  Strategic SEO Opportunities PDF (≈ 5-8 pp)
  SERP-feature wins (Featured Snippets, PAA)
  Competitor content gaps & topic ideas
  Link-building prospects & internal-link map
  ROI-ranked action list

  Executive Summary PDF (≈ 3-4 pp)
  Health scores (/100) for Tech, Content, Strategy
  7-day / 30-day / 90-day action roadmap
  KPIs & ROI projection panel
  Resource/time estimates for each phase

  Potential Improvements
  If you can self-host Gotenberg, you can use it's html-to-pdf function and attach the audit as a document

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.merge","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.convertToFile","n8n-nodes-base.stickyNote","n8n-nodes-base.html","n8n-nodes-base.convertToFile","n8n-nodes-base.html","n8n-nodes-base.convertToFile","n8n-nodes-base.html","n8n-nodes-base.convertToFile","n8n-nodes-base.markdown","n8n-nodes-base.html","n8n-nodes-base.markdown","n8n-nodes-base.markdown","n8n-nodes-base.markdown","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.gmail","n8n-nodes-base.aggregate","n8n-nodes-base.set","n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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


name: CYBERPULSE AI BlueOps: Asset Enrichment Engine
author_name: Adnan Tariq
author_username: adnantariq
categories: []
created_at: 2025-07-25T06:15:15.618Z
updated_at: 2025-07-25T06:15:15.618Z
url: https://n8n.io/workflows/6410
scraped_at: 2025-12-24 13:02:46
description:
  👤 Who it’s for
  Blue teamers, SOC operators, cyber analysts, and SME defenders who want to automatically enrich daily CVE/IOC threats by matching them to their internal asset database.
  Ideal for compliance-driven teams (NIST CSF, Essential Eight) seeking automated enrichment and alert routing.

  ⚙️ How it works / What it does
  Loads current threat data from Sheet or Module 1 output

  Loads internal asset database from Google Sheets

  Merges based on matching IP fields

  Calculates impact score (threat score × asset value)

  Applies basic playbook logic to classify action

  Sends summary emails for matched threats

  Logs to archived and live threat monitoring sheets

  Built with modular, no-code logic and alerting support

  🛠️ How to set up
  Google Sheets:
  Authenticate your Google account
  (OAuth2) and set your Asset DB and Threats log sheet IDs.

  Email:
  Add sender/recipient addresses and SMTP credentials.

  Customize Matching Logic:
  Adjust enrichment rule in the “🧠 Match Threats to Assets” node.

  Triggers:
  Add a Cron node or Webhook to schedule the enrichment job.

  Review sticky notes:
  All steps are explained clearly within the workflow nodes.

  📋 Requirements
  Google Sheets with asset inventory + threat log

  Google account with Sheets API access

  SMTP service (Gmail, Mailgun, SendGrid, etc.)

  Optional: OpenAI for dynamic playbook scoring (if extending logic)

  🧩 How to customize the workflow
  Replace Google Sheets with Supabase, Airtable, or Postgres

  Extend enrichment rule to include hostname or UUID matching

  Fine-tune scoring logic by severity, CVSS, or business unit

  Route alerts via Slack, Discord, or n8n Webhook endpoints

  Add conditional routing for alert suppression or review queues

  📦 No sensitive data included. All credentials and sheet IDs are placeholders.

  🔐 This module is part of the CYBERPULSEBlueOps Pro Pack.
  For full access to advanced Blue Team automations, visit cyberpulsesolutions.com/blueops

nodes_used:
  ["n8n-nodes-base.merge","n8n-nodes-base.cron","n8n-nodes-base.function","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.emailSend","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52VzW7jRgzHX0XQ2RNoRvMl39LNFgjQ3QDNopciKDgzHEddWzYkOVkj8KHorZc9tECP7a2XPkDfqn2EUrIbO3bUfNxGEIf8cUj+eZeWIR2nXy6nb85Xi++lqM4/Tt9cpKN0hi2k47u0rJoWKo/nnZ2OGKPkAAGdlVlhcoNCS6NjETKQKhYK0WsoPNcQY7QYrQGthVTK6RDT9SitYIbk6p1IWHLaNNgmb6u69NczrLrjpKyQwrcwadLxt1dkPw/YHe82qFyCEdoCcyg5k6CAgfKOFUYYx6MOlst0FwXrSe9uteg+K1ux3h9z0ODJbPt3MW/KtpxXFIVn2UjIjOIuoCYfLdYU/G69cfENffV2+Qlfj7ZEygGCCoJ5ySOT6DizHaDIM3odV+Tcix3RP7/98kNyBuV0lXyoy8kE60E8X1OoB3RMimfh7eACuCh8YVjgxjDpA7CCZzkLUdkCspij1vtwf/z+Dlp/nXy4rhHaJmnnmyI1g5RxWfke7wFpPgiKn9AvW7ygnkrHbb3EQ/ZRCtNbWDUXy3axbM+g68PO7j4nzE0WNPQtQDkZyJkFZRm3OngVnAza7+f080/J6QKrkLzH221ig9lM5vPJFC+vcZPyXkZKP+vp5Ym6BwWOxnBnmI7cMukMMuDOMVnwvAiIyht1AHqGU/KcfD2/fSUidchLELXgPlqrWMwUMhl9Tv1hC+ZoerEAGZU0DxD/vOxe8nI5m0G9St7OqJMHSbH729kfY9oX9LDJMpp5kRNUIEbQhOecZFjIoiicj1LKfcZff/z7r89Jclr76/IGw3fbXn7Fgxr58ppLbUPmSQiMp5rrTDKrsozlSJOmRRYFtw9r/t+o3QO8lJIJEi2uX4QZHeZgraRqK5JR6UkXRJDMoJSqyKP28gDzqzmErWCfffFayvxpyl3daaaV17lmgF7R+KiM2cg9I3ENwjptYoQd42Vb+o+r5P28HRb8prfZmuyxZaMjrNTPq5ZWEjlJjxHJGkj1bihGhGlDGkbv0pbVpL+6kTgyvagD6fs4veGdj5vN/X6TcidkHjPNBApBbeINA0GNrZXLVcTcu9D1NEFU2Mtr73izzuhAg9Vx01Lssnuucve3RrTSA35Kx9n66oqojmv7mP+DRfrQE995Omjmx1EHm+kQcPS8+PeZHK3WofhDMzf4Qscb5HHXT2rPQITh6g2k8L86PPyOT2zDJy4+tp0eSWi9/hc7JUkwWAoAAA==


name: Automated 24/7 Crypto News Alerts To X, Telegram & Discord (Gemini Powered)
author_name: Malik Hashir
author_username: malikx
categories: []
created_at: 2025-07-25T11:52:09.693Z
updated_at: 2025-07-25T11:52:09.693Z
url: https://n8n.io/workflows/6434
scraped_at: 2025-12-24 13:02:46
description:
  Purpose & Audience
  This workflow delivers real-time crypto news alerts to X, Discord and Telegram, providing instant updates to help you stay ahead in the fast-moving world of cryptocurrency. Designed specifically for crypto traders, community managers, market analysts, content creators, and anyone needing reliable, up-to-the-minute crypto news. It’s ideal for keeping your audience engaged with timely, well-formatted news, or for making swift trading decisions based on the latest headlines.

  What the Workflow Does
  Aggregates Crypto News:** Continuously fetches the latest news from popular crypto news sources, ensuring 24/7 monitoring with zero downtime.
  Interprets and Formats Alerts:** Processes raw news items, applies relevant interpretation, and transforms them into user-friendly, actionable alerts.
  Adds Visual Enhancements:** Each alert is boosted with emojis and structured formatting, making the info engaging and instantly scannable.
  Multi-Platform Delivery:** Instantly sends these news summaries to X, Discord channels and Telegram groups, so your team or community never misses a critical update.

  Who Is This For?
  Crypto Traders:** Make timely, informed decisions with real-time updates pushed straight to your preferred platform.
  Community Owners & Moderators:** Keep your crypto community engaged and informed without manual curation.
  Market Analysts:** Track the pulse of the market efficiently and without distraction.
  Content Creators:** Use automated news as inspiration for posts, newsletters, or videos.
  Crypto Enthusiasts:** Anyone eager to follow breaking developments in the crypto sector.

  How to Set Up
  Import the Workflow: Download the workflow and import it into your n8n environment.
  Set Up X, Discord & Telegram Nodes:
  Discord: Connect your Discord account for sending alerts.
  Telegram: Link your Telegram bot and specify channel/group details.
  X: Connect your X account for real time post alerts.
  Note: Step by step guide is provided for setup with workflow file.
  Customize Formatting: Tailor the message templates in the workflow to match your branding, including emoji selection and styling.
  Test & Launch: Confirm proper message delivery to your X, Discord and Telegram channels. Tweak formatting if necessary for maximum readability.
  Run 24/7: Activate the workflow for always-on crypto news monitoring—no manual input required.

  Key Benefits
  Stay first to know about crucial crypto events, alerts, and breaking regulatory news.
  Save time with automated curation and delivery—no more switching between feeds and apps.
  Boost engagement in your trading group, crypto server, or Telegram community with visually enhanced, timely updates.

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.filter","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.telegram","n8n-nodes-base.discord","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.twitter","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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


name: WhatsApp Support Assistant with GPT-4 Mini & Google Sheets Data Training
author_name: SpaGreen Creative
author_username: spagreen
categories: []
created_at: 2025-07-25T18:11:49.449Z
updated_at: 2025-07-25T18:11:49.449Z
url: https://n8n.io/workflows/6452
scraped_at: 2025-12-24 13:02:46
description:
  WhatsApp AI HelpDesk – Smart SupportBot Using Trained Data & WasenderAPI

  Overview

  This n8n workflow enables automated AI-driven support replies via your personal WhatsApp number using WasenderAPI.com. The bot intelligently responds to user messages based on trained data stored in Google Sheets, helping you avoid the high cost of WhatsApp Business API.

  What It Does

  Reads real-time data from a connected Google Sheet  
  Sends AI-generated responses based on predefined training data  
  Automatically applies rate limits to avoid account blocking  
  Updates each contact's support status after responding  

  Who’s It For

  This workflow is ideal for:

  Freelancers and small businesses offering support through WhatsApp  
  Customer service teams seeking to automate common queries  
  Entrepreneurs looking to deploy a cost-effective support assistant  
  SaaS founders managing WhatsApp inquiries without expensive API costs  

  Prerequisites

  Make sure the following components are ready:

  An active WhatsApp account (Personal or Business)  
  WasenderAPI subscription (around $6/month)  
  OpenAI API access (around $20/month)  
  n8n instance (self-hosted or cloud)  
  Google Sheets API connected to n8n  
  A training sheet like this sample:  
    https://docs.google.com/spreadsheets/d/1Ui4TzzI-Gq-bsEsrZELwW1Kyddw0IU9L1wxlHikktqw/edit?usp=sharing  

  Setup Instructions

  1. Connect WasenderAPI

  Add your WhatsApp session to WasenderAPI  
  In n8n, create a Webhook node  
  Copy the webhook URL and paste it into your WasenderAPI session settings  

  2. Connect OpenAI

  Add an OpenAI node in n8n  
  Authenticate using your OpenAI credentials  
  Configure the prompt to reference the data from your Google Sheet  

  3. Connect Google Sheets

  Add a Google Sheets node  
  Authenticate using your Google account  
  Select the appropriate Spreadsheet and Worksheet  
  Format your sheet similarly to the sample template above  

  How to Customize the Workflow

  To tailor the workflow to your business needs:

  Update the training data** in your Google Sheet to include your own FAQs, product info, or customer scripts  
  Adjust prompt instructions** in the OpenAI node to change the tone, style, or behavior of the response  
  Add filtering logic** using IF or SWITCH nodes to categorize and route different types of messages  
  Integrate CRM or ticketing systems** via additional HTTP or database nodes  
  Set custom response delay** or batching using WAIT or LIMIT nodes to control the load  

  Support & Community

  Need help setting up or customizing the workflow? Reach out here:

  WhatsApp: Chat with Support  
  Discord: Join SpaGreen Server  
  Facebook Group: SpaGreen Community  
  Website: SpaGreen Creative  
  Envato: SpaGreen Portfolio

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.webhook","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE7WW227jNhCGX0XQRa/MlGeRuWoOKDZotxus081FsSh4GDlCbMmV6OymgYG+Q9+wT9KRnMRO4iDeLGLAsCUO5/9I/DPkTV7FfD//5fg4dZ8Wp9O/TfV+evhzPspnkFy+f5NXdZdcHeCkj+OGlWCMoIxDwcE7VYSiYFFFXxZBMGGCEyUILURQ3nEXS820NZwZrmKUmDfBbD51CY5aiN0Y0mJ+1OAbSIACqV3AcpTXbgaodn7hUncwn2cHJ9k7mM6PobvM/vvn32w8c23Kxov5vGnTYZOy37uqnmRnratqiNmxSy77ITt3HdQR2oPTk17XTbp8/4/PmL2J0P+9Wa29AGfLUirCFCuJVEoTr0JBlGBGaR0FGMjvmRDlYAJ1ykiWHS261MygvSNZjfRa1/M+9qfa1D/ilwyKZOrqSbhAxD13GzdvuipVTY0wgtMR4QVHvrlrUStBi5A3y1W2T/g0BLK9Yjm6JbeKBYhWktJ4R6SJjhhjLAEByoSyjJ7KNfmHOdRI/x5ZpmwHyOnsCPd/mFU9ZGWWjwx9mZTfk1KjuWVQEKDKE8m0JsZ6Q6jtDWLKQhXFmvSoqa8wi+vlsvcwa9rrHXhnQ+DhoiyhPa/q2Hx5tMPa7EQt7qmVAamjokRpivtLtSOeFpZEB+hqDQpKu6b+tZmsHXHSdQs02T31GtijK/cmTTOZwvgCIHVnTTN9SGq5GZGXUeWeukd1WnhtcEe9dwWRYBQxLjLCgGKRxqhEoGvUc/AXTXP5LN6X+/ENKsL0iLBCI9bt+KolUGFDMJFwLTiRgnJidVGQMjDtqaX44fkLK1kbBbOVzjFBgg0S10EtcUGWRAsl0Da2MF5vGiXCs4sIq8GNFRgtd6qxNY6kIgB3gmhnDZExUOKNtkQrCJLTEC3wNc4Y2w36teuwvm9b0ruzs9PsI/yFZkjPkl6kNF/HbBYaNeY5YvgKYZHgA7bmfL900w6e2GNjHd4XEg1MIut7HAA6mZWRhCB9NJ7SKNR6HR/Bxazvyq6+zg5dV4XspC6bdjZU5CtNrfgu5bfpaSwzV0QqiWVG4+ZzbBocjU0jFcIoiKLkj6BP2yYuAh4NPcQrQbX5VlDDbKEN7i7n2H2l0hxNywNusfHAKHAKj0HH0F5VAb4L1MhvBS08c4LpkgjgikjPJTHMM6JlYDSAZW6zusapCpfX2W9NAvYsYjcE9TGPu4XAU4Io+8S7eWjq1J9/+3n+pPsuMdqFVF3B6jIwyjtICStpmLnyPEZ+aPFcxwRXrE9xtZo+tKMApow2WqJwsUQGF4nnDAh3SlsqVGFl73RkqCH0qYbEQyPB3xkeJAiPV4N6eLN7SQ8zR3hbivA136fLz58R7K7Pbsv8LReJrckfnuco4ao/+9NwgajDy1fLPUn0WHpLra30U2/S75BNK5NvUXtYMG+otu3ysZKb3T68XnB2d5d5KLnt5vDW+/l8e39D5ZeqaaNOhvgdNLeV1sNrwZbiWS7/BxMUbmP4DAAA


name: Track Crypto Prices, New Listings & Transactions with CoinGecko & Google Sheets
author_name: Marth
author_username: marth
categories: []
created_at: 2025-07-26T03:37:57.997Z
updated_at: 2025-07-26T03:37:57.997Z
url: https://n8n.io/workflows/6473
scraped_at: 2025-12-24 13:02:46
description:
  ⚙️ How It Works

  This workflow is a comprehensive crypto automation system that combines three critical functions for traders and investors into one powerful tool:

  📊 Price Monitor
  A Cron trigger runs on a schedule (e.g., every minute).
  A HTTP Request node checks the cryptocurrency's price.
  An If node compares the price against a defined threshold.
  If the condition is met, a Telegram node sends an alert.

  📰 New Listing Notifier
  An RSS Feed Trigger monitors exchange announcements.
  When a new listing is published, a Telegram node sends a real-time notification.

  🧾 Automated Crypto Transaction Logger
  A second Cron trigger runs daily (or as scheduled).
  A HTTP Request node fetches trade history from your exchange’s API.
  A Code node formats the transaction data.
  A Google Sheets node logs it in your spreadsheet.

  🛠️ How to Set Up

  1️⃣ Configure Credentials
  You will need credentials for:
  Telegram**: To send alerts and notifications.
  Google Sheets**: To log transaction history.
  Exchange API** (e.g., Binance): To fetch your trade history.

  2️⃣ Customize the Price Monitor
  Node 2**: HTTP Request (Check BTC Price)  
    Change the url to monitor a different crypto (e.g., Ethereum).
  Node 3**: If (Price &gt; $50k)  
    Adjust rightValue to set your target price threshold.
  Node 4**: Telegram (Send Alert)  
    Replace [YOUR TELEGRAM CHAT ID] with your actual ID.

  3️⃣ Customize the Listing Notifier
  Node 1**: RSS Feed (New Listing Trigger)  
    Replace feedUrl with your preferred exchange’s RSS feed.
  Node 2**: Telegram (Listing Notif)  
    Replace [YOUR TELEGRAM CHAT ID] with your actual ID.

  4️⃣ Customize the Transaction Logger
  Node 2**: HTTP Request (Get Binance Trades)  
    Set the url to your exchange’s trade history endpoint.  
    Configure headerParameters for Authorization with your API key.
  Node 4**: Google Sheets (Log Transactions)  
    Replace [YOUR SPREADSHEET ID] and [YOUR SHEET NAME] accordingly.

  5️⃣ Final Activation
  Once credentials and parameters are configured:
  ✅ Save the workflow
  🔁 Activate it!

  Ready to give this a visual punch with icons or a mini preview for the n8n template gallery? I can help dress it up in seconds!

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.telegram","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WX227bRhCGX4UgitYBtMaeD74okDhIWsBNA9vtTZGLPcxKhG1SJSnHqWGgz9GbvmIfoUPJsSxXsiT3Rpbo3Z1vZmf+Gd6WVSqPyhMV//gQpu3F7IbXN69NOSqvoPfl0W1Z1V3v6wg/Dus8t0YzkZlyOnljtFROOamtyiFL4EF6xhmX2VIfbLTG8KxAmJAzo8IDntvD1fTS93DcQurOoJ9Njxt8Aj2ggb6dwd2orP0VoLV//v7rz+K4/TLtm+IM6r6q4fKoeH0JbT8q3lZdbK6hLb4tTppx8XrWN1e+r5q6+OjjxWDIj7vy6LdPeFyTYPh6u3BWOm28zZHwZDSRNAvigeKHddJYm7xzoXyAYIeIgKcefGyrCMVPTV31TVuct9V4DO2rwdCX6bCwtjWZWyLBd3DYxQmk2SXcL8R106arBkAkoSOKXFPfoo0eWoS7vVsc9Cv+mq9hh/xu9JUYhFLURIJBp0QKoMSyYIiK0miqRZY5Lon5YfHD+fnH4hR+n0HXFwfHE4gXxZvz42Luw2bmSd9P73et8nIutxPLR8QKQFAdMvHGBSKTNPgtSJJ9TkOaCMXtklgcFj/mrxH+vvhG0YvNkFVeZZPSbmfjj9gwe2kyQhEfRCbSgSOeUUucdhmzN2Yd2JJNHhbncAljPLw4wCxMiwTczNffr16l1IbPKT9DmDTNxaKaYuZGJIFRSYlI7TRxkBVhzGdk8QHU3Ndd04RJ5WNIgZgc0TGpKQkyKhKxUA2IQDPklcQ+PTsr3gGk4uADfC5Oqg5LbLw9tduuG3adgk/L7K6bfiiy8uAUsL7xHvsJFL+cnhSfq35SePz3BIsVbuLE12P4rpsbz4PxKhc1/oX06mmRcKW3lsmD9ybJGKjBbAsxovdZYsphCIzlibtAE+OwUiTLa/3q+Yemr/K+N8upvQd9fLcQsqZJOYJSaFFkjCCOKcy5GGNKIjIj/T53m7KjSlJFgEqGEqAyCTnhh3GWcoeSZuka0Tpvfd35ONdFlEm8qv+tXIrxfbRLgIxaSyBSJdSuHDwJ1uOHSspox1Bt3TPa9R764k1VDx0IyT1CvkS+8Ip2wJYr2IbqhGWZ+FCb3AcSgtUEOyCPFBUsMbUiYO9m9SLMB++aFjtR8db3fjNrxK9PdIzpXSCXiJonTRWG0vgkCRZ6IC4HTSBKbGQJO7GGFR173zTjSyjOJgB9h1nfDLX+kB/PBHY837jY90TWsDHsFFn9gI0XbnTAFgZZCJRfM7TfDCQwS522jCotlthnfRUvvgyVCZsTdr7mfskjOKLliEj7FK6MTd3jOIEHlZvlxEqvvZVYcDzilGAxxN4xGEIsouYcH8NaTPYiTkzRF3IaFnA+QDqdUPYyCqA1UhMljDKJi6yCXMvJX8QptXwZp+GCRuYi8UKiRkeJEhAzI9iYpA48RU/VWk6xPydOeCMj/tM7dgOl2jgnGCM2WUUkaJwMAudEGLxxT6kLj8eDR6Byb1Au6cs5RRReQx5y02MdJewIPjJOUjI4rsmhFfK1nGpvTizY/Tlx9SAs12gn+8sORmUH/dBm51vhBuJsOP7nNmGPOSqv2XDG9WL/vIUGbl1GvwjT1OBF5MFBxUgOEAU1imk7TL0IUcNCwYaD186S+PzKV4Mr+BIwOLzTYDffMsI3oAQ35RG9+/QJCTdL/QYju6vuWnvb3j/WWd3jDWCTzS2j4Qar20eqtfa2866z9/xbw/PBfG4u2imiz84luzm57ogNfm4bLtYYvLv7FxEZLLXcDwAA


name: Automate Service Booking & Payment with WhatsApp and Xendit
author_name: Khairul Muhtadin
author_username: khmuhtadin
categories: []
created_at: 2025-07-26T03:52:56.500Z
updated_at: 2025-07-26T03:52:56.500Z
url: https://n8n.io/workflows/6474
scraped_at: 2025-12-24 13:02:42
description:
  ⚠️ Disclaimer: This workflow utilizes community nodes that needs self hosted version

  Code for UI Form is accessible here

  The bykhaisa workflow streamlines makeup service bookings by capturing customer details via webhook, calculating pricing including add-ons and payment types, generating payment invoices with Xendit, and sending personalized WhatsApp booking confirmations.

  This powerful combination of n8n, GoWhatsApp API, and Xendit reduces manual work and accelerates payment collection, saving you valuable time and boosting client satisfaction.

  💡 Why Use bykhaisa?

  Save Time:** Automate booking and payment processes to eliminate hours spent on manual data entry
  Simplify Payments:** Generate invoices instantly with Xendit, making it easier for clients to pay securely and promptly


  Enhance Communication:** Send automated WhatsApp messages that keep customers informed and engaged without lifting a finger
  Stand Out:** Offer a modern, seamless booking experience that elevates your makeup business above competitors still stuck in the stone age

  ⚡ Perfect For

  Makeup Artists & Studios:** Who want a hassle-free booking and payment system
  Beauty Salons:** Seeking smooth client communication and invoicing automation
  Freelancers:** Looking to appear professional with automated workflows and instant payment requests
  General Business with booking system**: to make a seamless booking process

  🔧 How It Works

  ⏱ Trigger: Customer sends booking details via Form (a POST request to the webhook)
  📎 Process: Extract and format booking data, calculate prices with add-ons and urgent fees, and create a unique booking ID
  🤖 Smart Logic: Calculate whether payment is a Down Payment (DP) or full amount, set invoice expiry, and generate Xendit invoices automatically
  💌 Output: WhatsApp notification with booking details and payment link sent to customer, complete with friendly typing delays for that human touch
  🗂 Storage: Booking data enriched with pricing and payment state, ready for follow-up or record-keeping

  🔐 Quick Setup

  Import JSON file to your n8n instances
  Add credentials: Xendit API key, GoWhatsApp API credentials
  Customize: Adjust pricing logic, add-on fees, and payment types as needed
  Update: Replace webhook URLs and redirect URLs for payment success/failure pages
  Test: Run the workflow with sample booking data to verify end-to-end automation

  🧩 Requirements

  Active n8n instances
  Xendit account & API credentials for invoice generation
  GoWhatsApp API setup for WhatsApp messaging
  Optional: Custom domain for webhook endpoint

  🛠️ Level Up Ideas

  Add calendar integration to automatically block booked slots
  Integrate Google Sheets or Airtable for backup and reporting
  Set up payment reminders and follow-ups via WhatsApp automatically

  🧠 Nodes Used

  Webhook** - Receives booking requests
  Set (Process Booking)** - Data transformation and formatting
  Code (Calculate Price)** - Custom pricing logic with add-ons
  HTTP Request (Generate Invoice)** - Xendit invoice creation
  Respond to Webhook** - Send response back to client
  GoWhatsApp** - WhatsApp messaging functionality

  📋 Workflow Categories

  Category:** E-commerce, Bussiness
  Tags:** automation, booking, invoicing, payments, whatsapp, makeup

  Made by: khaisa Studio  
  Need custom work? Contact Me

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.respondToWebhook","n8n-nodes-base.wait","@aldinokemal2104/n8n-nodes-gowa.gowa","@aldinokemal2104/n8n-nodes-gowa.gowa","@aldinokemal2104/n8n-nodes-gowa.gowa","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5752 characters]


name: PDF Invoice Data Extraction & Tracking with Google Drive, Claude AI & Telegram
author_name: Automate With Marc
author_username: marconi
categories: []
created_at: 2025-07-26T08:17:55.222Z
updated_at: 2025-07-26T08:17:55.222Z
url: https://n8n.io/workflows/6480
scraped_at: 2025-12-24 13:02:41
description:
  📥 Invoice Intake & Notification Workflow

  This automated n8n workflow monitors a Google Drive folder for newly uploaded invoice PDFs, extracts essential information (like client name, invoice number, amount, due date), logs the data into a Google Sheet for recordkeeping, and sends a formatted Telegram message to notify the billing team.

  For step-by-step video build of workflows like this:
  https://www.youtube.com/@automatewithmarc

  ✅ What This Workflow Does
  🕵️ Watches a Google Drive folder for new invoice files
  📄 Extracts data from PDF invoices using AI (LangChain Information Extractor)
  📊 Appends extracted data into a structured Google Sheet
  💬 Notifies the billing team via Telegram with invoice details
  🤖 Optionally uses Claude Sonnet AI model to format human-friendly summaries

  ⚙️ How It Works – Step-by-Step
  Trigger: Workflow starts when a new PDF invoice is added to a specific Google Drive folder.

  Download & Parse: The file is downloaded and its content extracted.

  Data Extraction: AI-powered extractor pulls invoice details (invoice number, client, date, amount, etc.).

  Log to Google Sheets: All extracted data is appended to a predefined Google Sheet.

  AI Notification Formatting: An Anthropic Claude model formats a clear invoice notification message.

  Telegram Alert: The formatted summary is sent to a Telegram channel or group to alert the billing team.

  🧠 AI & Tools Used
  Google Drive Trigger & File Download

  PDF Text Extraction Node

  LangChain Information Extractor

  Google Sheets Node (Append Data)

  Anthropic Claude (Telegram Message Formatter)

  Telegram Node (Send Notification)

  🛠️ Setup Instructions
  Google Drive: Set up OAuth2 credentials and specify the folder ID to watch.

  Google Sheets: Link the workflow to your invoice tracking sheet.

  Telegram: Set up your Telegram bot and obtain the chat ID.

  Anthropic & OpenAI: Add your Claude/OpenAI credentials if formatting is enabled.

  💡 Use Cases
  Automated bookkeeping and invoice tracking

  Real-time billing alerts for accounting teams

  AI-powered invoice ingestion and summary

nodes_used:
  ["n8n-nodes-base.extractFromFile","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.googleDrive","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.googleSheets","n8n-nodes-base.noOp","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4492 characters]


name: Automated Client Journey Appointment Reminders & Follow-ups with Twilio
author_name: Marth
author_username: marth
categories: []
created_at: 2025-07-26T15:49:49.930Z
updated_at: 2025-07-26T15:49:49.930Z
url: https://n8n.io/workflows/6491
scraped_at: 2025-12-24 13:02:44
description:
  How It Works ⚙️

  This workflow is a comprehensive, AI-powered system that acts as a virtual client relationship manager for any appointment-based business. It handles the entire client journey—from appointment booking to follow-up and re-engagement—all on autopilot.

  Appointment Trigger: The workflow starts when a new event is created in your Google Calendar.
  Client Data Management: It queries your client CRM database (Airtable or Google Sheets) to check if the client's email exists, preparing to send a personalized message.
  Dynamic Reminders: An If node splits the workflow. It sends a personalized welcome message for new clients and a standard reminder for returning clients, drastically reducing no-shows.
  Post-Appointment Follow-up: A Wait node pauses the workflow until after the appointment ends. It then sends a personalized "thank you" message via Twilio with a link to a review or survey.
  Re-engagement Loop: A separate Cron trigger runs weekly, automatically identifying clients who haven't rebooked in a set period (e.g., 30 days) and sends them a personalized offer to encourage them to return.
  Data Logging: It automatically logs all client data and engagement actions into a central database like Airtable or Google Sheets, creating a real-time dashboard for your business.

  How to Set Up 🛠️

  Import the Workflow: Copy the provided workflow JSON and import it into your n8n instance.

  Configure Credentials:
      Google Calendar: Add your OAuth2 credential.
      Twilio: Add your API credentials.
      Google Sheets / Airtable: Add your credentials for your chosen CRM.

  Customize Workflow Nodes:
      Node 1 (Google Calendar Trigger): Select your Google Calendar credential and the calendar you use for bookings.
      Node 2 (Google Sheets / Airtable): Connect to your client CRM. Adjust the filter to search by the client's email from the calendar event.
      Node 4 & 5 (Twilio Reminders): Replace YOUR_TWILIO_NUMBER with your Twilio number. Customize the message body to fit your business.
      Node 6 (Wait): Adjust the Wait Duration if you want to send the follow-up message at a different time after the appointment.
      Node 7 (Twilio Follow-up): Replace the placeholder [LINK TO YOUR REVIEW/SURVEY PAGE] with your actual link.
      Nodes 8, 9, 10 (Re-engagement Loop): This is an optional, high-value part of the workflow. Configure the Cron node to run on your desired schedule. Adjust the filter in the Find Clients node to your specific re-engagement criteria (e.g., last visit date is older than 30 days).

  Save & Activate: Once all settings and credentials are configured, save the workflow and click the "Inactive" toggle in the top-right corner to make it live.

nodes_used:
  ["n8n-nodes-base.googleCalendarTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.twilio","n8n-nodes-base.twilio","n8n-nodes-base.wait","n8n-nodes-base.twilio","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.twilio","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE62W224bNxCGX2WxF0UKiC6PS1J3gdJDWjQB7CC5CHIxJIfyItKuol3ZSQ2/e2eVxJKblSUbvTFkieT/cfjP4aasUzktX37+841+++n6V/dXnv3xz4tyUi6xh3J6U9ZN10MT8eWwDqSzlVBZGF8lsLbSxhuvK2dyyBpl0CCkkDo7DsFFZ63MBpUNOQuuAOncHperBfQ4W2PqLrDfrGYtfYM9kkC/3uDtpGxgiaR2sYR1X8wWNTZ9cY60q26b7rJeFT8Vz1ertm765fDT803fLrc/DufDvCun7z/QKW3C4ePN1zs66VIFoBgKB0wniMzz4JjknKOMOhoU5Z327207X2AxgwU2CdbFm3U9n+N6EPiyGhY0rmFbBRagw7P5dv335bvVq7art2TT90xUE6Ydka1gTSo9rgnv5vbrkW/pv+06cTv5Tmwq48AC8zJKpkMlGQU4MacFt06hQQ57xHgXqxfQQ5HX7bKYnf99BPniErHv7pNK7k4h1WfVHSsog9mAYSZXlulIfwK9PMtcB0jWy2D5jvVlLp69wuviqjujh+0366Zu5sVs09FD4vrng8h1vg+qlTwFVJ7JO1DtbIw6RYaOvKBDyMyjBmYF+UDpijj9DnSA/I5VvMNFpA/kvnNc1k16wA79db2o2/uwlaH3F1qfboAh0USoHDPcC6a5QuZj4kxEHoLSToHQO9YfA/l0zsfYNHrFpXeG7mY905IonRTAsnEqZW518nZH+Q7qvnj2PNOx+0l8+M2vacN9QOf4t1e/xnDZth+3tSnIZKUwwJASnGlFYfNUnpiQVeTSZsXRlMcudbZ3LQEgqSgw6wGZRmtYsCCZ1RX33jtvYK9eXFDeFxeb9RV++eUcr2ryzTl+2mDXPyr2QnD9yCIBGCN3iWkBFP2QBPPkDWYqkIan4DS/5xGGzRzmuC2cx4paFy8xbRZ4sJxpzo+S7uUe+Zlb6TRLKlKRkNYyQB8ZFYgYDKScVd6x/kbW/VbRuuIVYhqsfe8CTyxtJ1DvlzYkX0lVcYbcEXXlJINMjUP7UOnkKmGDPxTh1zk/MvuGknZKWO/wAtFBNFTGyOUU1Ey+B3RMWU0x4wY8d3s+7ev48Uvxqu3x8LNv13xbsv/iQ94JW/2XrYxt0w/PMS3LB4zqjUVHRlWaKoQOlKSOejLDhNlZJ1SlcJRTPAlUyR9ieBqnyIZXNN0wbxQllKtoTqDWRl1X8mwJ09tqlFM+gfNJEaXVEPv6ipQyLDqclB32PWXHdit+xrgZBF6vh8o/La/EcMbV1/3bUok6RmV9Zik78jHHxIICTY6WWgVFaZoCkRJEg3E7dA0Hj9cO+mEJ9XAbGrSGOz8yc7ebJ+XQpj6XU3774QPBHpq+xsSOzz3jEoe2jWmcPK+MSh1seWNSpzSSUZWH2v+Y0PFGPCpzLBRjUidPUT8oTnaHnDTejCIfk/8fo3OC88fUHmwaI0K3t/8C3nHsBLkNAAA=


name: CYBERPULSE AI RedOps: Internal Phishing Simulation for Security Training
author_name: Adnan Tariq
author_username: adnantariq
categories: []
created_at: 2025-07-27T01:35:46.722Z
updated_at: 2025-07-27T01:35:46.722Z
url: https://n8n.io/workflows/6506
scraped_at: 2025-12-24 13:02:46
description:
  Description:

  Simulate phishing awareness campaigns using OpenAI-generated emails. Send to target lists, log clicks with a webhook, and store results in Google Sheets. Built for internal testing and cyber awareness training.

  Who’s it for:

  Security teams conducting internal simulations
  GRC teams doing phishing awareness
  Red Teams wanting modular test setups

  How it works / What it does:

  Loads targets from Google Sheets
  Uses OpenAI to write realistic phishing emails
  Sends them via Gmail
  Tracks who clicked via webhook
  Logs actions in Sheets

  Requirements:

  Gmail or SMTP credentials
  Google Sheets OAuth2
  OpenAI API Key
  Self-hosted webhook or tunnel for /phishlink tracking

  How to customize:

  Replace email template with your own LLM prompt
  Swap Gmail for SendGrid, SES, etc.
  Edit domain in tracking link
  Use Cron or manual start

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","n8n-nodes-base.gmail","n8n-nodes-base.googleSheets","n8n-nodes-base.webhook","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  H4sIAAAAAAAAE51Wy24jRRT9lVavU6ZeXV3lFUM0E0bMI5pEIIFGqB637FbsbtNuJxlFlkbs2MACxENCYoPEkg0LVnzM/AB8ArfbUew4ncQZKXLa7dv3nnvq3HP7Ii1COkzPz9wofHIimDOaKyjSvXQKjU2HF2lRzhtbenjaxqkIMUpmbQCnJTW5yIErmatoArUyiyYD8Moaz5SNMWqIOrdKcZllToWIeRuYzia2gf0awvwImsVsv8I70AAWaOoFLPfS0k4Bq/332w9/Ja8gvJzNk+dVWEwgYcm7t98nh+NiPn5S1SNoE9rRPB1+cbHqZPHiq48fTU4/ap7PD+XoSUivsh3WFX7xNWDx8KjBO5zyjNAc/46pGQo55HQgRf45hi1m4f6w5WtMXgXYKO8C84xnjgjvNJHOe2KcpkRmeK3BC9B2DemzMZSJnxT+pChH2NnPj8/BLxpIzqr6JE6qs3dvf2k7fDNro0tdkq4ccXYOg6ktF3ZyXBejEdQYNavmRVNUJYIhgim6RziniHBma6zWQI0wL5arbJ/ity6ULfcukXcnZ40jnnvECzYjTmlJMiF0xlVkXog18qMGQb9JXlQN3Apw3sVchmyiY4IiOqlvoEt9VTZQtqSntyNVkgKVlpLoXU6kVxnRzjBCKeeKiTyYPEs3RPT7j8kBlFDjga6U05L9eGqLyRr6h4j9gzX+iS1HfmyLcmBHLZ7r+HnOd2OXX2HW2nOVO0W4ZB51kRliuYlEGZcjvyzzRq4xv5xB+ehpsj+2TSt82AXoZNqGd08WN/Ai3ztoYbDGG71yQjtBmANLpGWaOKkioYEJ7pBkZ/I13ne/fvPv398lOJFTRNxRm8SqTo6gDEj27QqBG9SKHYUrBvIKrFWCaR0VyalnKF0UsYvRkNwLmnFrhVB6Dfbg+slvQRpd/noNFJNXoM7AjavqpHPDHJgNhgoSuca6THiimfUkN9ZkLnLBQ+s/d0tksDGCTgfH8pxojx8Sx45onnkiDNfChcznVm8K+49/kmfVqGW52dbzdldVNZrA0RigmW8Po9lRzHKgrpDijFHZyoOCRLOglhErgicsMyzY0Kr62gh++2ey39pcclxbf9LZVT/QS3pvHIBqBbzNv8L1oxUDYkLgeO4+EutRAUpkNGPADfVwL/9XPXkfo3LKEuVbA2SYTQd08pwxANAKdX+N/Z++bjX/CnxVh1V3D9B5x/qqo51lbnLZqpwTFiAQGbwk1kBOstwo6cEGzbflsRO6u8Sxco4HaYMagevCyXYFonWgvyGPqJKMR4WrMQahoHeRsPfZJN1kvuciAeUhoK0RQ4MhEn0NrxjqB4BT6TiPckPFB9AcW3zlaJ4V8+Z9yORG7j5pGGN9U5xiiWgnc9hLUUQNmmnXHnTvCRj8sg44TcP0lLV9nq4ydMNBaXRGWY3DozNszghiOjNRAsdDOWtd6+BIVAm+TdUlXpkjXuD/FjS+17TN3Wc3XfQevisGOE+HdPn6NaK5Tlh/zl12c2/ymysSC9jiy3YhLnBpX957cLEbKbYL95hZf2t3+UNvS72P3HoUD0p8R+d9BXbe573l7nu6r+LBDke+09tyb/L+ye0pslz+D6YrZjgRDQAA


name: CYBERPULSE AI RedOps: Validate Email Security Gateways Generated Payloads
author_name: Adnan Tariq
author_username: adnantariq
categories: []
created_at: 2025-07-27T01:42:49.951Z
updated_at: 2025-07-27T01:42:49.951Z
url: https://n8n.io/workflows/6507
scraped_at: 2025-12-24 13:02:46
description:
  Description:
  Automatically send structured benign payloads (PDF/HTML/JS markers) to test email gateways and sandbox response. AI-generated phishing-style content helps simulate real-world threats without malicious intent. Results logged in Google Sheets.

  Who’s It For:
  Security teams validating email filters and sandboxes

  Red Teams doing payload simulation

  GRC/compliance teams testing Secure Email Gateway (SEG) controls

  How It Works:
  Loads target list from Google Sheets

  Crafts payload using OpenAI prompt logic

  Sends emails with embedded controlled markers

  Logs responses back to the same sheet

  Requirements:

  Google Sheet Requirements

  Sheet Name: Payload_Validation_Log
  Required Columns:
    payload
    status
    response
    timestamp

  Gmail/SMTP or email-sending node

  Google Sheets credential

  OpenAI API Key

  File Templates:
  RedOps_PayloadValidator_Log_Template.xlsx – track targets, payload, status

  How to Customize:
  Modify the OpenAI prompt for alternate payload types

  Adjust fields or webhook triggers

  Add logging to SIEM or ticketing platforms

  This module is part of the CYBERPULSE AI RedOps Suite
  🌐 https://cyberpulsesolutions.com

  Detailed README:

  Purpose

  Simulate benign payloads (e.g., links, encoded HTML) to test how your email security gateway and sandbox environment responds.

  How It Works

  Trigger Test Batch  
     Starts manually or on schedule.

  Get Targets  
     Loads email recipients from Google Sheets.

  Generate Payload  
     Prepares static payload like a fake link.

  OpenAI Node  
     Generates a realistic simulation email using the payload.

  Merge + Format  
     Combines recipient info with OpenAI output, formats the message, and tags it as simulated.

  Validated Node  
     Appends results to Google Sheets with fields like:
     email, payload, response, status, module, time

  Google Sheets Requirements

  Sheet Name: RedOps_Targets
  Columns: email, name, team, payload, status, response, module, time

  Security Note

  This workflow uses simulated payloads and never sends real malicious content. No real user data is stored or transmitted. Meant for internal Red Team and security validation use only.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.merge","n8n-nodes-base.set"]

workflow_json_compressed:
  H4sIAAAAAAAAE52VQW/TMBTHv4rlc1zadKtCTxRpIA5jiFW9oGoy8VtqkdpR4k1UVSW+AYchrjshJM4I7fPsC7CPwEucJiF1tMCp7Xv2///ze/brliq+BjqlD7dffpK3IM6SjJxqcRUD8cn9pxvyhm9izcXFgsdScKNT6lGlBWR0+m5LpcC9mZHhhw1T2kCetILnRZC8tkGzSfKgChQrNrP3PIOB3VguSXQmjdQKdYPJ0JsMlxjjKaoZSNFtS0OtDCiDOnRnJReYKbaMdl4JY1IZRZDWIPdff/2++0zmNk7mkBnynJtw1Ym15uqKx/NKqEHGRv5w6I2CA7huoAgMMzzFj6yGeri9+UZegiHzKuNmibSOYjhfgV3URHka9CI5GkwaLApSboAltqtNoO8/EMim903vbhyYFswxtoz1oBkPjioanYDiku2hapgzTMxe1e7P0P5JjRBzFYUrLtUgV5jJFso475D/eIcGQUUCQhp2KSEWjR6dYJC82Ad7FmKMdfi3KlzbhwWCxTqq3Rf78H9cjeNeEM2LsQa8hrX5afmz432U2Yaj7+ftP3yzhwf3K08uBIM1l3HtOxOCnJShngUPejU7Lziu4aGR16h6yeMMvHygKAhzoWK+2FPjFyTIpXG+5c5dV6FY5VGpBHyk0+FuuUTX8uq6RByHc0rU61wqrdb8rTCyCk1cl4bjbjlJDqaUS+yRydEh7NpTq1fi7UnQVvP61QVt0bX7n8B9rq4R7TjSbvcH1Z2hr0oHAAA=


