# templates

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: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:20
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, 4976 characters]

metadata_json:
  {"categories":["AI/ML","Communication"],"complexity":"medium","use_cases":["Handle customer queries autonomously","Route user requests to specialized sub-agents","Manage calendar integrations","Retrieval Augmentation Generation (RAG)"],"estimated_setup_minutes":120,"required_services":["Google Calendar","Slack","HubSpot","Discord","Telegram","Custom API","PDF Extractor","Slack","Email"],"key_features":["Manager-style orchestration layer","Specialized sub-agent routing","Context optimization","Multi-channel support"],"target_audience":["customer support teams","marketing managers","product managers"]}


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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
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]

metadata_json:
  {"categories":["Data Processing","Communication"],"complexity":"medium","use_cases":["extract job data from sources","map job categories and types","manage job media assets","publish jobs to WordPress","repost jobs with AI summarization"],"estimated_setup_minutes":45,"required_services":["Google Drive","OpenAI","Supabase","Telegram","WordPress"],"key_features":["RAG-based job data extraction","AI-powered content summarization","automated category and type mapping","media asset management","cross-platform job reposting"],"target_audience":["HR professionals","career coaches","tech job administrators"]}


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: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
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:
  H4sIAAAAAAAAE41VXYvrNhD9K8IU2kKU+EuOHSg05KX7sPeW7ral3C7LWJrE5jqSsZTNDcH/vSMnm4/msrsPAXt0dM7MmfFkH6zRQTDbB7W2DrTEOxXMgijNklBNk6wUcZ6FiRAiRBUVGabTIoU4xOVyWqoUl1ERq2UOSZ6qMIFQxdOpQBmMAofrtgGHiw6VfUC3aReGIuiQBFy3wX4UaKPQBrMvpO5VcRpnSSEkB1kiT4tccCB1nidJkSdZnmV5RMwa1kjo+R2br1A7r7VrfeRXnesJ/fjAyxvQK1lBrcdwxLXG1q42miSjNB3xNA+fKAodMTrsrPfBtB4xPNqdpSru0VoiIP5f/jEbBh0yYBU27XLTMLC29r45tq1dxUBKQjNn2CfQFjW7X/zOHo1pxpcBRwEGTWO2lu2IkuAbrUifiBTDF+x2rqr1irkKHKstq6BtUfvIoOIqZGVj5NdDdf/qOUnWa/RQ0vA1vtCLZrLbtc6MSGsLO8tWPuwvO6Ng96NlivrjcT7WoW2pbiS6R388Y/s9+0Gb7diZu4fPP/3M+j7o+4PZf1Gyg49xPzo2L6ahyGM15aEoBE9FTG3MUsVzQZ0LlUhkqs7N+0z1UAMXvsB76lbzgS42aw8fbtbXzczDEY9FdtPL9cBMD8/PXXOYutEQJJmG+kYsL9Bs/OuqdTwd+/GSICtUf6DdNO7TIdvXQ6r+PB7eC0nDTaNVQ3OcHZ/bvK2HD8q7cgbw+qL8E5AtToBbc6Px2V7MSxBZmvIsTUqeKvIY4ijmYZmQ34hSRvGZ/zxsH/B1LdtFU1MSflCvjU2S7PvOXtgwClCr1tTa/elNDirnWjubTIh2rIc8xlBPOvCBCdHDhsaNKpZwEAkqBBr+OYXp1GJH8//Y0cXWdO7I9+A6hDWUDQa3rnvAb2eOd6y/Rr/jf3TyXy6VVChLXhYoeRpL4AWWgkdCYDEtMgFYnEX+pgqZ9MO9PmwP+rwk0uenPtAPf++xq1cr7K67waM4f11aWywrY74O2zrOl2GUF5Iv5TLiaRLHvFCYcFraUoosyjAUwRsdvK076UlCGq1Rnrbhad/6D4vypIS+PD3R3YthoyOon/1+86f7YcF/d1W/okb0v6PwWzAL+4Hrdi8cKL07G/LxGHuP+xr+f5E3unNR2xsKA+Sate//A4R3I45LBwAA

metadata_json:
  {"categories":["AI/ML","Data Processing"],"complexity":"medium","use_cases":["Analyze chat messages","Retrieve onchain wallet data","Fetch token movements","Get address-level insights"],"estimated_setup_minutes":30,"required_services":["OpenAI","Anthropic","Nansen MCP"],"key_features":["Chat model with MCP tool extension","Real-time blockchain data retrieval","Wallet analysis","Token movement tracking","Address-level insights"],"target_audience":["developers","data analysts","blockchain researchers"]}


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: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
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=

metadata_json:
  {"categories":["DevOps","Data Processing","Automation"],"complexity":"medium","use_cases":["Archive old files to S3","Free up Salesforce storage","Log archival in Salesforce","Backup critical data"],"estimated_setup_minutes":30,"required_services":["Salesforce","Amazon S3","n8n"],"key_features":["Scheduled execution","ContentDocument querying","Binary file downloading","S3 upload automation","Link record preservation"],"target_audience":["DevOps engineers","Data administrators","System architects"]}


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: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
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, 6872 characters]

metadata_json:
  {"categories":["Data Processing","Marketing"],"complexity":"medium","use_cases":["web scraping","lead extraction","email harvesting"],"estimated_setup_minutes":30,"required_services":["Google Maps","Apify","Airtable","HTTP/Servers"],"key_features":["rotating user agents","webpage scraping","email extraction","URL path normalization"],"target_audience":["developers","business developers","sales teams"]}


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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
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==

metadata_json:
  {"categories":["Data Processing"],"complexity":"medium","use_cases":["recursive file retrieval","folder structure discovery","automated file listing","batch processing"],"estimated_setup_minutes":15,"required_services":["Google Drive API"],"key_features":["Recursive folder traversal","ID input flexibility","Batch node implementation","Sticky note documentation"],"target_audience":["automation builders","system administrators","integration specialists"]}


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: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
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, 5264 characters]

metadata_json:
  {"categories":["Data Processing","Marketing","Lead Generation"],"complexity":"medium","use_cases":["discover local business contacts","search and scrape business data","automate contact list creation","enrich business search results","export research data to spreadsheets"],"estimated_setup_minutes":15,"required_services":["Google Sheets","SerpAPI","Apify","OpenAI (GPT-4o)","LangChain"],"key_features":["location-based business search","AI-powered data enrichment","structured output parsing","automated data piping to spreadsheets","batch processing for discovery"],"target_audience":["marketing teams","sales development representatives","market researchers"]}


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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
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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

metadata_json:
  {"categories":["Marketing"],"complexity":"medium","use_cases":["track demo bookings","send conversion events","sync calendar data"],"estimated_setup_minutes":15,"required_services":["Google Calendar","Meta Conversion API"],"key_features":["filters scheduled events","sends structured conversion data","supports multiple event types"],"target_audience":["marketers","sales teams"]}


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: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
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, 5516 characters]

metadata_json:
  {"categories":["Real Estate","Communication","AI/ML","Data Processing"],"complexity":"complex","use_cases":["Automate lead qualification","Conduct property interest screening","Log SMS conversations with AI","Sync qualified leads to spreadsheets","Trigger notifications for agents"],"estimated_setup_minutes":30,"required_services":["GPT-4o","Twilio","Google Sheets","n8n"],"key_features":["AI-driven SMS conversations","Structured lead data extraction","Automated follow-up summaries","Form submission triggers","Real-time lead processing"],"target_audience":["Real Estate Agents","Marketing Automators","CRM Managers"]}


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: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
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, 4312 characters]

metadata_json:
  {"categories":["Marketing","Data Processing","Compliance"],"complexity":"medium","use_cases":["automatic unsubscribe detection","email list cleanup","GDPR compliance","inbox rule enforcement"],"estimated_setup_minutes":45,"required_services":["Microsoft Outlook","Google BigQuery"],"key_features":["regex pattern matching","scheduled email scanning","batch data deletion","compliance logging"],"target_audience":["marketing managers","compliance officers","email automation administrators"]}


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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
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=

metadata_json:
  {"categories":["Communication"],"complexity":"simple","use_cases":["Upload images","Post tweets","Integrate AI outputs"],"estimated_setup_minutes":5,"required_services":["Twitter (X)","Google Drive"],"key_features":["Binary data handling","Multi-source image uploads","Twitter API integration"],"target_audience":["social media managers","developers","marketing teams"]}


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: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
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

metadata_json:
  {"categories":["Security"],"complexity":"medium","use_cases":["subdomain enumeration","DNS record lookup","passive reconnaissance","auto report generation"],"estimated_setup_minutes":15,"required_services":["HackerTarget API"],"key_features":["automated DNS lookup","subdomain scanning","markdown report generation","email delivery"],"target_audience":["security engineers","penetration testers","SOC analysts"]}


name: Automate E-commerce Orders, Inventory & Feedback with Slack, Sheets & Gmail
author_name: Marth - Business Automation
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: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
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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

metadata_json:
  {"categories":["Data Processing","E-commerce"],"complexity":"medium","use_cases":["process new orders","track inventory updates","collect customer feedback","notify order status"],"estimated_setup_minutes":60,"required_services":["Shopify","WooCommerce","Metabase","Slack","Google Sheets","Gmail"],"key_features":["webhook-based trigger","JSON data extraction","multi-channel notifications","inventory sync"],"target_audience":["e-commerce managers","operations teams","customer support"]}


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: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
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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

metadata_json:
  {"categories":["AI/ML","Content Creation","Communication","Marketing","Web Development"],"complexity":"medium","use_cases":["Generate AI artwork from text prompts","Automatically upload images to WordPress media library","Share generated images to Twitter","Create on-demand visual assets","Streamline content production pipelines"],"estimated_setup_minutes":5,"required_services":["Leonardo AI API","WordPress REST API","Twitter API","n8n (Execution)"],"key_features":["Text-to-image generation with Leonardo AI","Automatic media library upload","Social media integration","Modular content production capabilities","Custom image dimensions (1472x832)"],"target_audience":["Content Creators","Web Developers","Digital Marketers"]}


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: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
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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

metadata_json:
  {"categories":["Marketing","Data Processing","AI/ML"],"complexity":"complex","use_cases":["conduct SEO audits","analyze website content","generate technical SEO reports","deliver automated audit results"],"estimated_setup_minutes":15,"required_services":["Apify","Anthropic Claude","Gmail"],"key_features":["automated website analysis","technical SEO assessment","content quality evaluation","direct email delivery"],"target_audience":["marketers","SEO analysts","webmasters"]}


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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
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==

metadata_json:
  {"categories":["Security","Data Processing"],"complexity":"medium","use_cases":["enrich workflow assets","merge threat data","calculate risk score","auto alert routing"],"estimated_setup_minutes":15,"required_services":["Google Sheets","Email"],"key_features":["IP field matching","threat data ingestion","impact scoring","cron scheduling","auditable sticky notes"],"target_audience":["blue teamers","SOC operators","cyber analysts"]}


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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
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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

metadata_json:
  {"categories":["Fintech","Communication"],"complexity":"medium","use_cases":["crypto news alerts","real-time updates","audience engagement","market monitoring"],"estimated_setup_minutes":15,"required_services":["Google Gemini","Twitter API","Discord","Telegram"],"key_features":["real-time RSS parsing","AI news summarization","multi-channel distribution","customizable filtering"],"target_audience":["crypto traders","market analysts","community managers"]}


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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
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

metadata_json:
  {"categories":["Communication","Customer Support","Data Processing"],"complexity":"medium","use_cases":["automate support messages","train AI with sheet data","personalize customer replies","integrate WhatsApp with AI models"],"estimated_setup_minutes":30,"required_services":["Google Sheets","WasenderAPI","OpenAI API"],"key_features":["real-time data ingestion","AI-driven dynamic responses","sheet-based training data","cost-effective WhatsApp automation"],"target_audience":["customer support agents","CRM managers","small business owners"]}


name: Track Crypto Prices, New Listings & Transactions with CoinGecko & Google Sheets
author_name: Marth - Business Automation
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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
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

metadata_json:
  {"categories":["Finance","Monitoring","Notifications"],"complexity":"medium","use_cases":["price tracking","new listing alerts","transaction monitoring","investment notifications","crypto market surveillance"],"estimated_setup_minutes":15,"required_services":["CoinGecko API","Google Sheets","Telegram Bot","RSS Feed Feeds"],"key_features":["enforcement custom alert thresholds","scheduled automated price checks","real-time notifications via messaging apps","custom webhook triggers","spreadsheet logging and data storage"],"target_audience":["crypto traders","investors","financial analysts"]}


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: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
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, 5704 characters]

metadata_json:
  {"categories":["Data Processing","Communication","Financial Services"],"complexity":"medium","use_cases":["Customer service booking","Automated invoice generation","Payment processing integration","WhatsApp notifications"],"estimated_setup_minutes":15,"required_services":["GoWhatsApp","Xendit"],"key_features":["Dynamic pricing calculation","Payment invoice creation","Automated booking confirmations","Customer data capture"],"target_audience":["service business owners","payment processors","marketing staff"]}


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: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
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]

metadata_json:
  {"categories":["Finance & Accounting","Document Management","Communication","Automation"],"complexity":"medium","use_cases":["automate invoice processing","track billing data","receive invoice notifications","extract financial details from PDFs"],"estimated_setup_minutes":15,"required_services":["Google Drive","Google Sheets","Claude AI (Anthropic)","Telegram"],"key_features":["file change monitoring","LLM-based data extraction","custom data formatting","webhook notifications"],"target_audience":["accountants","finance managers","billing teams"]}


name: Automated Client Journey Appointment Reminders & Follow-ups with Twilio
author_name: Marth - Business Automation
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: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
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=

metadata_json:
  {"categories":["Customer Relationship Management","Communication","Automated Workflows"],"complexity":"medium","use_cases":["automate client appointment reminders","send follow-up messages","manage client re-engagement","synchronize calendar events"],"estimated_setup_minutes":45,"required_services":["Twilio","Airtable","Google Sheets","Google Calendar"],"key_features":["AI-powered personlization","automated communication sequences","client data validation","multi-channel notifications"],"target_audience":["appointment coordinators","customer support managers","business owners"]}


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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
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

metadata_json:
  {"categories":["Cybersecurity","Communication"],"complexity":"medium","use_cases":["Phishing simulation","Security training","Awareness campaigns"],"estimated_setup_minutes":15,"required_services":["OpenAI","Gmail","Google Sheets"],"key_features":["AI-generated phishing emails","Click tracking integration","Target list management"],"target_audience":["security teams","GRC teams","Red team members"]}


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: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:22
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=

metadata_json:
  {"categories":["Security","DevOps"],"complexity":"medium","use_cases":["validate email security gateways","test phishing simulations","verify sandbox responses","log security results"],"estimated_setup_minutes":15,"required_services":["Google Sheets","AI/ML"],"key_features":["AI-generated payload content","structured test data creation","automated logging","multi-format payload handling"],"target_audience":["Security teams","Red Teams","Compliance managers"]}


name: CYBERPULSE AI RedOps: Role-Based LinkedIn Profile Discovery with Google OSINT
author_name: Adnan Tariq
author_username: adnantariq
categories: []
created_at: 2025-07-27T01:47:52.766Z
updated_at: 2025-07-27T01:47:52.766Z
url: https://n8n.io/workflows/6508
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  Description:
  Automates public profile discovery for CISO, CEO, and other key roles using Google Programmable Search. Extracts LinkedIn profile links, names, and timestamps to a structured Google Sheet for OSINT, exposure analysis, or Red Team prep.

  Who’s It For:
  Red Teams planning phishing simulations

  OSINT investigators and social engineers

  Cybersecurity trainers mapping exposure risk

  How It Works

  This workflow simulates role-based OSINT (Open Source Intelligence) by performing automated LinkedIn discovery using Google Search. Here's a breakdown:

  Trigger: 
     Can run manually or via Cron for daily/weekly scraping tasks.

  Load Roles to Target: 
     Reads role-based search queries (e.g., "CISO site:linkedin.com/in/") from a pre-filled input list or Google Sheet.

  Query Google Custom Search API: 
     Sends requests to the Programmable Search Engine using secure API credentials (CSE ID + API Key).
     Each query returns up to 10 LinkedIn profile results.

  Parse and Extract:  
     Captures full name, title snippet, LinkedIn URL, and description using JSON response parsing.

  Output:  
     Logs results to a structured Google Sheet for review or later enrichment.
     Sheet columns include: role, name, snippet, url, timestamp

  Optional enhancements can include:
  Entity tagging by organization
  Filtering by location or keyword
  Lead scoring based on search terms
  Search query editing
  Requirements:
  Google Programmable Search Engine (API key + CX ID)

  Google Sheets credentials

  File Templates:
  RedOps_SocialGraph_Log_Template.xlsx

  name	linkedin	team	status	module	timestamp
  John Doe	https://linkedin.com/in/johndoe	GRC	active	Social_Graph_Builder	2025-07-27T12:00:00Z

  Customization Tips:
  Update queries (CISO, CEO, VP IT, etc.)

  Filter results by region or org using site filters

  Extend to track Twitter or GitHub links

  Setup Instructions

  Set up a Google Programmable Search Engine (CSE) at https://programmablesearchengine.google.com/
  Restrict it to search only linkedin.com/in/
  Copy your CSE ID and generate a Google API Key from https://console.cloud.google.com/apis/credentials
  In n8n, use the HTTP Request node:
     Select Use Authentication: Yes
     Store your API Key and CSE ID in n8n credentials (not in query parameters)
  Configure pagination to extract multiple results
  Optional: Append results to Google Sheets or another storage system

  Ethics Note:
  This tool uses public Google Search results. It is meant for educational or internal red teaming only. Do not use for scraping or unauthorized targeting.

  🔗 Part of the CYBERPULSE AI RedOps Suite
  🌐 https://cyberpulsesolutions.com
  📧 info@cyberpulsesolutions.com

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE62VzW7bRhDHX4XgWWss95Ormw2kqYsmcSKjhwaGsdydlYjIJEOtDBuGgBTosYcCyamXtqcCPeeJ8gR5hAxpwWFT0VaKApIgErP/+c3n3qSlT6fp/Cqn18tXUT0H8338rk0n6QVEm05v0rJaRVs5OO7sVIAQRGathyIX1GiugSmhVTCeWiGDkQBOWeMyZUMIOYRcW6WYkLJQPqSbSVrZC0Cpj7+/e5+8AP+sWSVPar9eQsKTD2/eJrPalXZ5/ri1zeL8aF0uPXQ80c5X6fTlzS3w+unrbw+Xl0fxyepEzL/x6Z3uSVvjg2vBRvCHEd8wyiShGj+n1Ey5mDJ6ILj+Ec3WjX/YbHOG4rWHgXuqBXU5Z4SBDkSAdsRKkRMfCqOs9L4I+jPSh9/+TE7bcj6HdhtdH1wX1HXTGVR5RXoPpLArOLiw1doutyfQqqlXZSzrCv2TjCs6EYoiU2Nb1I/QItjN5lbsB3zqLbPNZMuqtdeS5oxYLj0RJghifciIo8ZILA3PpEkHZfnrj2QGEb+2dYvk+RraEkMfY11B/JIwE3sR8gNxx8gNUMUKhal0jghdBGKsNAQyJb1VOdeUDxnf/ZTMmmUZH8brrI6rIxvdojcbkhq2H+gdJg1FkWcgicSkESGpJ4UKOf4ok7mMMgFsiPnLr8njup5ja2+zeXhyPIq6iLF5Aa/XsPoyowpLLtmDnOKA3ZFazVyBk0k0tZhQGpDUCEUsA28MKwTn6h9F/zt5dBVb62KCAxTK5VeVXLC9AIcVN5RyhiuEBGw/7MrcYFd6QSQDJYPIhXduCPj25+SwaaDySay3a+P81LZziOOg8z73swXcGg2JGd0zpepzjyqDVEETYFwQ/CdJwVwglHNasDxjzg6KP4ule3WdPK0jjCeyt9maDOjo5F9gqaurCFW3p9J7Rl3aLMuFJT53FquSeWK0AUKBmTy3DgwUOxGz/8CIKfw6SrTG/iov0UuwyxVMUuykWFbz/ihcgVt34s/abuFP08us07i8Pd/fPgXnIQBgp+SKEZExSwoNivjCMc1Be2VCt/vrqgLXSfXCO7YFvr2wZRfGy7MJ7vQu3j0Gtj8zwRvRw1U6pZuzMwTcPTsDDwP5vZp4xMtOtN1u7h3mnfJjN9SI/v03xFiadp7a7WF8v4+I35fZ/8HFZvMJ2MnrSykJAAA=

metadata_json:
  {"categories":["Cybersecurity"],"complexity":"medium","use_cases":["role-based profile discovery","OSINT investigation","phishing simulation prep","risk exposure mapping"],"estimated_setup_minutes":15,"required_services":["Google Programmable Search","Google Sheets"],"key_features":["automated public profile discovery","structured data extraction","batch processing roles","spreadsheet output"],"target_audience":["security practitioners","OSINT investigators","trainers"]}


name: CYBERPULSE AI RedOps: Phishing Simulation with Redirect Tracking
author_name: Adnan Tariq
author_username: adnantariq
categories: []
created_at: 2025-07-27T01:52:22.617Z
updated_at: 2025-07-27T01:52:22.617Z
url: https://n8n.io/workflows/6509
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Description:
  Simulate cloaked phishing links that redirect through a controlled proxy. This module tracks if secure email gateways (SEGs) or sandboxes trigger the redirect before users do. Logs access, response, and timestamps in Google Sheets.

  Who’s It For:
  Red Teams simulating real-world phishing redirects

  Security teams testing gateway/sandbox behavior

  Awareness teams tracking click-throughs

  How It Works:
  Loads target list from Google Sheets

  Generates dynamic redirect links per target

  Emails the links using Gmail or SMTP

  Simulates access via webhook or internal call

  Logs metadata and redirect access to Sheets

  Requirements:

  Google Sheet Requirements

  Sheet Name: Redirect_Logs
  Required Columns: name, team, email, module, status, payload, response, timestamp

  Google Sheets credentials

  Email service (Gmail, SMTP, or custom node)

  Optional: Real endpoint for link redirection (e.g., Vercel Function, Cloudflare Worker)

  Setup Instructions

  Clone or copy the provided Google Sheet template (linked below).
  Set up the webhook trigger in the Redirect Proxy node.
  Use URL shortener node (optional) to obfuscate redirect links.
  Connect Google Sheets node and map fields: timestamp, IP, user-agent, original URL.
  Configure redirection logic using IF and Set nodes.
  Run a test redirect to validate Google Sheet logging.

  File Templates:
  RedOps_RedirectCloak_Log_Template.xlsx

  email	name	team	payload	response	status	module	timestamp
  test@org.com	John Doe	IT	redirect.link/...	Redirect triggered	Simulated	RedirectCloak	2025-07-27T12:00:00Z

  Customization

  Redirect Logic**: Modify the HTTP Response or Set node to redirect to real servers or simulation targets.
  Tracking Format**: Adjust the structure of the logged data — include fields like user-agent, referrer, campaign ID, etc.
  Redirection Endpoint**: Host the redirection logic on a public API gateway (e.g., AWS API Gateway, Vercel Edge Function) if deploying outside of n8n.
  Obfuscation**: Integrate a URL shortener (like Bitly) or a custom domain to hide the true destination during simulations.

  Ethics Note:
  This module is intended for internal simulations only and does not contain malicious payloads. Always use with authorization and red team awareness protocols.

  🔗 Part of the CYBERPULSE AI RedOps Suite
  🌐 https://cyberpulsesolutions.com
  📧 info@cyberpulsesolutions.com

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52VzW7bRhDHX4XgWWvsx3A/dHMNNAnQxEGc9tDCCJa7swoRiVRJSrBrCMih9x5SoEB7KPoGPfTQ58kLtI/QoWwociolsmDBgFbz8ZvZmf/e5FXMx/kSdLPEr7n9YVm9fvHkPB/lM+x9Pr7Jq7rrfR3wyWCnE6YEwvuIpQXujDIoNRidXOQeiuQKxKC9C0L7lJLFZI3XWkJRlDomitvjbD71PZ61GLsL7Bfzs4ZOsEdK0LcLXI3y2s+Qsv37+89/ZS8wns+77GkTF1PMIHv/9t1wVrUY+lfP2+bq+tXZtPFvhtB+0uXj725ua1o8+/7x6XT5Rf+0ew6TL2O+iUte9CW0SBjxtKcTyWXBuKHPS+7GCsaSn4Ay35LZYh4/b7a6pOBNxK30ETyIwiADiZyBcY6VynuGqUzGJcW5NR+QLvoqvLnOnjU9DoVcz4fD2tZsHZWVvsOTbm1zZzJvuqqvmpoSskLzEQNODHPfUrwe2264utDUPdYDeL66DfoN/bJ2EqvRHacPKnELniXlNAOhDPNcJKbQxzIYDEaXHzjf//pH9rKtJhNsN7ewaf9O6pmvF3565/MRuHDAR4X9H/l+WsGFVzIkRmMmGAQnmQPQjGqgv2Aghq2LftQ0Exqai9eIfbeXcLK22hjdAzTyIEA40RtEG40BF0vmYlEySGVgJTGyVEb0QHsjgsu3Z/yX7BHW2NKUbVqafVXV+1vaYf8xZ8EP4lQnsOEE7XgS3DKP6Bl4DqwUFhkvnbCSGyhLu83525///P1TdlHNFtN7qI+r/iGk8rCObpNqpQyHFFgoVKRV0o75KAyzaKOVWpAe6Z2rJB6+S0IRnzl2mcBKsBwiUwFpmXQZWSkLy5KPSshSFDaI7Z6++zE7nc+xjls330yOGlV32ARsT6qXppBBK5Y0qRO4QMuUjGQKSLmURJUQdvZVHqdRdPXHtVUosE5xZGgttRVSYt4JThpVaONJUGVKO0HVcaCgHwhK1j701ZISJT/tcJTT5PdVPVm74hWGxRD/vI2kgfTciiHG8tb/9mGNkVtrOHOe/oFInjnjDZM04EFz5EoMKkwQNQ0Jea0D39c3Opj5aiiC3qCh1EPlZe01opc+4lU+5qvLS6Lbr/S78uxR2p2RP8W0u4aDpGdPrk/57s722aXckWm1+g8EKndMSgkAAA==

metadata_json:
  {"categories":["Security"],"complexity":"medium","use_cases":["simulate phishing attacks","track redirect behavior","test email gateway responses"],"estimated_setup_minutes":15,"required_services":["Google Sheets"],"key_features":["dynamic link generation","red team simulation","redirect tracking","email segmentation"],"target_audience":["security analysts","red team operators"]}


name: CYBERPULSE AI RedOps: Credential Trap Sim: Fake Login Page Simulation
author_name: Adnan Tariq
author_username: adnantariq
categories: []
created_at: 2025-07-27T01:56:24.179Z
updated_at: 2025-07-27T01:56:24.179Z
url: https://n8n.io/workflows/6510
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  📝 Description:
  Simulate a phishing login page to test user behavior and SOC response. This controlled workflow sends trap links to predefined targets and logs simulated interaction results—without capturing real credentials.

  ✅ Who’s It For:
  Red Teams conducting phishing awareness campaigns

  SOCs validating alert triggers for credential-based phishing

  GRC/Compliance teams performing control testing

  ⚙️ How It Works:
  Loads test targets from Google Sheets

  Generates trap page URLs (non-malicious)

  Fakes login interaction upon click

  Logs timestamped event and status to Google Sheet

  📦 Requirements:
  Google Sheets credentials

  Optional: Use Vercel/Cloudflare to deploy a real HTML page for advanced simulation

  No sensitive data is collected

  📁 File Templates:
  RedOps_CredentialTrapSim_Log_Template.xlsx

  email	name	team	payload	response	status	module	timestamp
  jane@org.com	Jane Doe	HR	fake-login.com	User clicked	Simulated	Credential_Trap_Sim	2025-07-27T11:00:00Z

  🧠 Customization Tips:
  Change trap content using a public static site

  Connect to real EDR/alert system for end-to-end SOC validation

  Adjust payload wording for different awareness campaigns

  ⚠️ Ethics & Warning:
  This module is 100% simulated and does not capture real credentials. Use only in authorized environments with informed consent. It is designed for training, awareness, and control testing under ethical guidelines.

  🔗 Part of the CYBERPULSE AI RedOps Suite
  🌐 https://cyberpulsesolutions.com
  📧 info@cyberpulsesolutions.com

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52VzYrcRhDHX0XoPD30l/pjbpuAnUDsNd7Fh5jF9Ee1LKyRxpJmsVnmlnMuySmXEDAEcskll7xOniCPkNLMsDvejJhdgy5qVf/r19VVf93kVcwXuY8vbf1exvb8qWFv+zKf5UsYXL64yaumH1wT4NsxTiVISTLnIngjqdVCA1dSq2QjdbJItgAIytnAlEspGUhGO6W4LAqvYso3s7xxS0Cpf3/9+a/sJcTzVZ89a+O6hqzIvu4gQjNUrn5z2bnVm4tqiSiDK/t88fpmx7p+/v6bs/r6q+FZ/0KWT2J+K/mia/EldOAGiGcDrnDKC0I1PpfULoRccDqXQn+PYetVPB22uULxNsJBeqHwcBApwZN6IrlSxFnghKnEXPIghBR3SBdDFd59zJ63A4wH+bgaFxvTkK0q8a6Heb+N2Yes2r4aqrbBhHRGMf3KdSg1QNePtxHaZsACochYylHvFX7ZxrPNbI9IbRCUB0MMLyKRPnBio1ckMC1SoIUOXN8h/vPLb9llV5UldNlY9H3Nj6IuXbN29T76c1rChKEzZv7HPM3pg+UCjCAphkCkNI64BECUc6B4YoyDyQ8a5qcfsqcwbCGzS9eVMPSTpGXbljVcvIVd0GegTD0IVM7VXUm94NIzQWgMQCSVkXhtNNGM0wRBx2jCIervf2dPqhqFs1euruJJ3Crdg7TyQYx8zm8ZkzEMmApEayuwM1lBHI+SSGWllZJq5f0h449/Yjkb6HAMdjX9rmreTXcpDPcQNaez04RiLm8JgzChSKFAJI2zo4QkXhlGrPDaumRCFO6Q8I9PGXbjuh4J76whu1j7ZdVv5R9OW9DH0rqobMELj3PjsD0N9zhGMRD0tYh19lwYea89z1YraOK+mm35Jd3JzUM4D3szaWawikA0pYbIKApiuRNEeeA8aOFcKo46Ev8CSxL0kaaE0S4M1TVmSa7uYZbj3QxVU263wgcI61H8vIvoKIv8mo0a17v9u38ORwOjhSLorJrIVFj0NWFIiNF5unW0cXgQooEwSm2Fj7kaLi9dNZ4DzXw87WlX2cbP8CcY4UO+oJurK6Q7vue4+kkjmMhwfDiP53jEmExkm6I8nu+EcUzkOE05eT+TY3Uk1WbzH+A/qmfUCAAA

metadata_json:
  {"categories":["Cybersecurity","IT Operations"],"complexity":"simple","use_cases":["Simulate phishing attacks","Test SOC response","Validate security controls"],"estimated_setup_minutes":25,"required_services":["Google Sheets","n8n"],"key_features":["Phishing simulation","Safe credential trapping","SOC alert validation"],"target_audience":["Red Teams","SOC analysts","GRC officers"]}


name: CYBERPULSE AI RedOps: Generate Daily RedOps Security Simulation Reports
author_name: Adnan Tariq
author_username: adnantariq
categories: []
created_at: 2025-07-27T02:00:33.516Z
updated_at: 2025-07-27T02:00:33.516Z
url: https://n8n.io/workflows/6511
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:22
description:
  Description
  Automatically compiles a daily HTML report of all RedOps simulations (Modules 1–5), summarizing offensive activity, response logs, and module effectiveness. Designed for GRC teams, Red/Purple teams, and internal auditors — no manual formatting required.

  Who’s It For:
  Red Teams running daily simulations

  Purple Teams reviewing impact and response

  CISOs, SOCs, or compliance teams requiring summaries

  How It Works:
  Trigger manually or on schedule (e.g., daily cron)

  Reads simulation logs from a shared Google Sheet

  Filters data by time or module

  Formats data into an HTML summary table

  Sends email with report or uploads to Drive/S3

  Requirements:
  Gmail or SMTP node for email

  Google Sheets connected (OAuth)

  Google Sheet Requirements:
  Columns: Date, Module, Action, Result, Status
  One row per offensive simulation log
  Make sure headers are in the first row


  Unified log format for RedOps Modules 1–5

  File Templates:
  RedOps_AutoReport_Log_Template.xlsx

  email	module	payload	status	response	timestamp

  Customization Tips:
  Set filtering timeframe (24h, 7d) in JavaScript node

  Modify the table style in the HTML generator

  Connect to PDF node or S3 for exporting to other tools

  Ethics & Compliance:
  This workflow is designed for internal reporting only. It does not simulate attacks or initiate actions.
  Use for audit logs, red team reviews, and awareness tracking only.

  Setup Instructions

  Copy the provided Google Sheet template (linked in File Templates).
  Fill in your RedOps logs (columns: date, module, action, result, status).
  Connect Google Sheets node using OAuth credentials.
  In the Gmail node:
     Set recipient email (use your_email@example.com as a placeholder).
     Choose HTML output from the summary table.
  Trigger via Cron node (daily) or manually.
  Optional: Connect Drive or S3 node to store a backup.


  Supports:

  NIST 800-53 AU-6, AU-12

  ISO 27001 A.16.1.6

  ACSC Essential Eight reporting practices

  🔗 Part of the CYBERPULSE RedOps Suite
  🌐 https://cyberpulsesolutions.com
  📧 info@cyberpulsesolutions.com

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.gmail"]

workflow_json_compressed:
  H4sIAAAAAAAAE5WUz27cNhDGX0XQeWlQFP/uzUESOEEcG7HRQwqjGJLDjeJdaStR2xjG3nLqrU167rEv0AfrI5SSN8k6iewY0EESh9/8+HFmrvPK5/P89JKf9PrZuUO6efv86G0+y1cYIZ9f51XdRagdPhviZMAQeAHg0WpOjSoVMsmVDMZT4CIYgegkGFdICCFoDFqBlIwLYaUP+XaW17DCJPXf3x//zV6hP1l32XHj+yVmMiPZYR+bX17humljgoiw6PL5z9c3lP3LX48Ol5tH8bg75YunPv8sdto26cO1CBH9YUx/GGWCUJWec2rmJZ8zesBL9TqF9Wt/f9j2Iok3HvfSawOqoNoTFUpBOFOWGKRAbKF18J4xoPIL0lms3OVV9rKJOBzkaj38rHVNRlViocODbozZhaybropVU6eEdEZT+jW0SSpi2w334Jo6Yj0wDyYOej+llTG+2M52iD4go1YG4gI3hDsuiRVGERCGlqKgYKXN967grz+z87ZaLLAdjf/i+3dxV1D3sNxtuE1MilQOM/4N9jQqFcZRpTnhRheEa+qJUQpJWfAgHVOItNxH/fA+VQv4xAvr7EWzyM7eIE6zLppmscQxpvsaVbIfQeUH8jOsKLSyAIYA44pwj0CMtIqg8txYyRzj8hbs79nTpl1BzG4szR5D6qYpVpdev2bk9EcY2Z6dZbA6MCLQUMKFdsQ4X5DksjUSmRKK3SL8I3vUV0ufHZ0fv/hEedavVtBePQi00A8DBXQsGK2IkwUkUINEM0RieWkgSGWNvVWiH/7JzrD2n9iyJyuoltPXvlvdRzRyR/gb2jdNc3kzyTgyzgQj0uKIAURTURCjBQPUUCbL8vsOdVAMYwJcrDaJJcCyw1neYYxVvRibFt+h6weOk9anlpnnm2Lo3s2NwggS0vhAaTmhUKbSEqUdiswTLCUfpqvlhRtmW1PX6AapUXiqxNJScmA4dppagy8PuOxx4ywNfI/v8jndXlwk1KkZMZHoniadSDGxbSLH3b01leIuCyYS3V1530m03f4P8t7AfFAHAAA=

metadata_json:
  {"categories":["DevOps","Security","Data Processing"],"complexity":"medium","use_cases":["Automate daily RedOps simulation reports","Summarize offensive and response activity","Export security simulation results to HTML"],"estimated_setup_minutes":15,"required_services":["Spreadsheets"],"key_features":["Manual or scheduled triggers","Dynamic HTML report generation","Offensive and response log aggregation","Module effectiveness analysis"],"target_audience":["Red Teams","Purple Teams","GRC professionals"]}


name: Automate Patient Journey with GPT-4, Twilio & Slack Notifications
author_name: Marth - Business Automation
author_username: marth
categories: []
created_at: 2025-07-27T06:31:27.139Z
updated_at: 2025-07-27T06:31:27.139Z
url: https://n8n.io/workflows/6517
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  How It Works ⚙️

  This workflow is a comprehensive, AI-powered system that acts as a virtual patient assistant for clinics. It automates the entire patient journey from appointment confirmation to post-procedure follow-up.

  Appointment Trigger: The workflow starts when a new event is created in your Google Calendar for a patient appointment.
  AI-Powered Education: The new appointment is sent to an OpenAI (GPT-4) node, which acts as a virtual clinic assistant. It instantly generates a personalized pre-procedure guide based on the appointment's details.
  Automated Communication: The workflow then uses Twilio to send this AI-generated guide directly to the patient via SMS or WhatsApp, ensuring they are well-prepared for their appointment.
  Post-Procedure Follow-up: After the appointment ends, a Wait node pauses the workflow for a set period. It then sends a personalized follow-up message—also generated by OpenAI—to the patient, encouraging them to provide feedback.
  Staff Notification: A Slack notification is sent to the team once a follow-up message has been dispatched, keeping everyone informed and ready to act on incoming feedback.

  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.
      OpenAI: Add your API Key.
      Twilio: Add your API credentials.
      Slack: Add your Bot Token credential.
  Customize Workflow Nodes:
      Node 1 (Google Calendar Trigger): Select your clinic's booking calendar.
      Node 2 & 5 (OpenAI): You can customize the prompts to better match your clinic's tone and specific procedures.
      Node 3 & 6 (Twilio): Replace YOUR_TWILIO_NUMBER with your Twilio number and ensure you can extract the patient's phone number from your calendar events (e.g., from the event description).
      Node 7 (Slack): Replace YOUR_SLACK_CHANNEL_ID with the ID of your team's feedback or operations channel.
  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.openAi","n8n-nodes-base.twilio","n8n-nodes-base.wait","n8n-nodes-base.openAi","n8n-nodes-base.twilio","n8n-nodes-base.slack","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52Vb2/iRhDGv4rlF1Uqscj7f827qGqjU3W9qIlaVVVezO7OclbAptiEiyK+e8cmPcrVJFBeGZid57fjmWde8irms1z+9esfNz8vFsmVWtftUz7Jl9hBPnvJq7rtoA74oY8D4azhMnFdmgjWGqVLXSrjdPJJofAKuOBCJVeAd8FZK5JGaX1KvJCA+W6S17BESnW96ZoldBizW+gqrLvsI9Qwx2X/+F32Y9wE+r2ps7vntsNltq26z9nN7T1TBNfBvM1nfz5QtiZi//iyv4gNiXtMyKCInqnCceaM8Sx6JXUROQgf868MfJrdNM18gdkPsMA6wjq7X1fzOa57jedVH1O7mg0izEOL0/kQ/0/4IXrVtFWPSyiMCzfhhuBWsCahDtdE+LLbp/yNvg1xfDd5hZZcJClFwUqnHFOoAvNFTMyCpAom4238F7SYZp9WWF9/yK5u18hu103AuFljdrOpIn5/krzpD1XHqKW5CJRKqwoe4mt1ES0DrgNLMSlrrZaFkQdQOc3ut9WiarKrO6rWe3zdEHvMR0W5CNBR7wWRPBM+BHr9WjDHoWBeaAvKQmlMOgCqafY7VF12dZ0oc/a1kqcZtxR+TKiV2hNu0X9umsdhTEKpscRQMlckSxjGMF+iZlYgF0J6ULzIz74UhKBdIQ0rpDBMBctZaXTBkhdOCCW0V3i4lD60x0/NYtFs2WaVfcS2pdm6rDmsuayNY6TBExFYP+1MGVQMgqEnZaNSTnuZzIHTfNMdF8COdUpZiotgRTBRJ0KMwSamoi1ZSRbFlFQoRYnWpfIAa6fZ3QLCI7F2kFL2S9NVqdob1GnOtj9yjEnueNnIgdfK0YehRaLTNHLeFMgccPQBJMSoDpx3XRUen3s8PE01xLyGHNkWlZAp9y1bHpq6I1OmTPlpTrIAJIdXzHMrmCq1YSCVYDpIK6TlUoEY5eT/D1To/xTxbVCKhtBVTySUYNHiJG+x66p6PhzFLxg2ff5P60h+PsufeJ/jaX9+v/u0AaGsYty4waXJWyK9Ceu50Yk2J7p+qAmixtCnGhKfMEH6ZwlVfxvaXP2dz7Oj4cyEdnLEL/ms2D08EOTpc2MqZ/rDqNIb+3JM6uxNNSr2NuiY3iWWMir5HvCY6HtbblToDNIxrTNtaERyt/sbYTAEl+oJAAA=

metadata_json:
  {"categories":["Healthcare","Communication","AI/ML"],"complexity":"medium","use_cases":["automate patient onboarding","send appointment reminders","post-procedure follow-ups","patient education"],"estimated_setup_minutes":30,"required_services":["OpenAI","Twilio","Google Calendar","Slack","Adazero"],"key_features":["AI-driven personalization","multi-channel notifications","automated patient scheduling","workflow triggers from calendar events"],"target_audience":["clinic administrators","patient experience managers","healthcare practitioners"]}


name: Automatic Job Listings Extraction and Publishing Template
author_name: Khairul Muhtadin
author_username: khmuhtadin
categories: []
created_at: 2025-07-27T06:42:41.239Z
updated_at: 2025-07-27T06:42:41.239Z
url: https://n8n.io/workflows/6518
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  Automatically extract job listings from any website URL, format them with AI, and publish directly to WordPress. Just send a URL via Telegram, and watch as the workflow scrapes the job details, enhances the content with GPT, and creates a polished post on your site.

  💡 Why Use Job Repost?

  ⏰ Save countless hours
  Automatically extract, process, and publish job offers from any website, freeing your time from repetitive tasks.

  ✅ Eliminate human errors
  Say goodbye to typos and missed fields — every job post is validated before going live.

  📈 Boost engagement
  Fresh, well-structured job listings attract more candidates, improving your site's reach and authority.

  🚀 Stay ahead
  Leveraging AI with GPT means your content is not just automated but polished and SEO-friendly — the digital assistant you never knew you needed.

  ⚡ Perfect For

  Job board managers:** Want to aggregate listings from multiple sources with minimal effort
  Recruiters & HR teams:** Who need to streamline job posting workflows without technical hassles
  Content creators & marketers:** Looking to automate publishing while maintaining style and SEO standards

  🔧 How It Works

  | Step | Process | Description |
  |------|---------|-------------|
  | 📱 | Trigger | Send a job URL via Telegram bot to initiate the process |
  | 🔥 | Extract | Firecrawl API scrapes and extracts clean content from the provided URL |
  | 📎 | Process | Job data is extracted via AI, text split and cleaned, job categories and types mapped to your system |
  | 🤖 | Smart Logic | GPT crafts formatted job posts, intelligent validation ensures all key data is present, default values fill in the blanks if necessary |
  | 💌 | Output | Posts automatically published to WordPress with company logos uploaded, and success or error notifications sent via Telegram |
  | 🗂 | Storage | Uses Supabase vector store for managing document embeddings, ensuring quick lookup and reference compliance |

  🔐 Quick Setup

  Import the provided JSON file into your n8n instances
  Add credentials:
     Firecrawl API key
     Google Drive OAuth2 (for RAG storage)
     OpenAI API
     WordPress API
     Telegram API
     Supabase
  Customize:
     Telegram bot token
     WordPress URLs
     Default images and category mappings if needed
  Update: URLs and API tokens where placeholders are used
  Test: Send a job URL to your Telegram bot to verify accurate extraction and posting

  🧩 You'll Need

  ✅ Active n8n instances
  ✅ Firecrawl account with API access
  ✅ Google Drive account for RAG document storage
  ✅ OpenAI account with GPT API access
  ✅ WordPress site with autojob plugin and API enabled
  ✅ Telegram bot for URL submission and notifications
  ✅ Supabase account for vector store management

  🛠️ Level Up Ideas

  🌍 Add multi-language support to expand global reach
  🔗 Support batch URL processing for multiple jobs at once
  💬 Integrate Slack or email notifications for wider team alerts
  🎯 Use more AI nodes to summarize or rate job offers for quality control
  🔄 Schedule periodic cleanup of vector store for performance optimization
  📊 Add analytics tracking for published jobs performance

  🧠 Nodes Used

  Core Components:
  Firecrawl HTTP Request** (Web scraping and content extraction)
  Google Drive** (RAG document storage)
  Supabase Vector Store**
  OpenAI** (Embeddings, GPT Extraction)
  Code Nodes** for mapping categories
  Telegram Trigger & Message**
  HTTP Request** (for WordPress API and image uploads)

  Made by: Khaisa Studio  
  Tags: automation recruitment job-posting wordpress AI web-scraping firecrawl  
  Category: Human Resources, Recruitment, Wordpress, Scrapping  
  Need a custom? contact me on LinkedIn or Web

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.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-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.httpRequest"]

workflow_json_compressed:
  [encoded data, 16824 characters]

metadata_json:
  {"categories":["Recruitment","Data Processing"],"complexity":"medium","use_cases":["scrape job listings from websites","enhance content with AI","auto-publish to WordPress"],"estimated_setup_minutes":15,"required_services":["WordPress","Telegram","GPT","Google Drive","Supabase"],"key_features":["automatic content scraping","AI content enhancement","direct WordPress publishing","error elimination"],"target_audience":["recruitment managers","HR professionals","web administrators"]}


name: Automate AI News Videos to Social Media with GPT-4o & HeyGen and Postiz
author_name: David Olusola
author_username: dae221
categories: []
created_at: 2025-07-27T10:50:06.847Z
updated_at: 2025-07-27T10:50:06.847Z
url: https://n8n.io/workflows/6524
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  🤖 Automated AI News Video Creation and Social Media Publishing Workflow
  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  🎯 Overview:
  This workflow fully automates the creation and social media distribution of AI-generated news videos. It fetches news, crafts captions, generates avatar videos via HeyGen, stores them, and publishes them across Instagram, Facebook, and YouTube via Postiz.

  🔄 WORKFLOW PROCESS:
  News Fetching: Reads the latest news from an RSS feed.
  AI Captioning: Generates concise, engaging captions using an AI agent (GPT-4o-mini).
  Video Generation: Creates an AI avatar video using HeyGen with the generated caption.
  Video Storage: Downloads the video and uploads it to Google Drive for archival.
  Data Logging: Records all news and video metadata into Google Sheets.
  Postiz Upload: Uploads the video to Postiz's internal storage for publishing.
  Social Publishing: Fetches Postiz integrations and routes the video to Instagram, Facebook, and YouTube after platform-specific content cleaning.

  ⚙️ KEY TECHNOLOGIES:
  RSS Feeds:** News source.
  LangChain (n8n nodes):** AI Agent and Chat OpenAI for caption generation.
  HeyGen API:** AI avatar video creation.
  Google Drive:** Video file storage.
  Google Sheets:** Data logging and tracking.
  Postiz API:** Unified social media publishing platform.

  ⚠️CRITICAL CONFIGURATIONS:
  API Keys:** Ensure HeyGen and Postiz API keys are correctly set in credentials and the 'Setup Heygen Parameters' node.
  HeyGen IDs:** Verify avatar_id and voice_id in 'Setup Heygen Parameters'.
  Postiz URL:** Confirm https://postiz.yourdomain.com is your correct Postiz instance URL across all HTTP Request nodes.
  Credentials:** All Google, OpenAI, and Postiz credentials must be properly linked.

  📈BENEFITS:
  Automated content creation and distribution, saving significant time.
  Consistent branding and messaging across multiple platforms.
  Centralized logging for tracking and performance analysis.
  Scalable solution for high-volume content demands.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.rssFeedRead","n8n-nodes-base.limit","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.switch","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.httpRequest","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","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, 10240 characters]

metadata_json:
  {"categories":["Content Creation","Social Media Marketing","AI/ML"],"complexity":"medium","use_cases":["Generate news videos","Auto post social media","Create AI avatars"],"estimated_setup_minutes":10,"required_services":["GPT-4o","HeyGen","Postiz","Google Drive","RSS Feeds","Instagram API","Facebook API","YouTube API","n8n"],"key_features":["AI news aggregation","Automated video generation","Social media scheduling","Multi-platform publishing"],"target_audience":["content creators","social media managers","marketing teams"]}


name: Fetch All Page Content from Website and Store with Gemini Embedding in Pinecone
author_name: Zain Khan
author_username: zain
categories: []
created_at: 2025-07-27T13:54:43.036Z
updated_at: 2025-07-27T13:54:43.036Z
url: https://n8n.io/workflows/6526
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  Fetch and Extract all Website Pages Content and Store in Pinecone Vector Database as KnowledgeBase with Google Gemini Embeddings
   
  Use cases are many: Populate a custom chatbot's knowledge base, create a powerful search index for your website, or build a comprehensive repository of information for internal tools!

  Good to know

  At time of writing, Pinecone and Gemini API costs apply based on usage. Refer to their respective pricing pages for updated information.
  The models used in this workflow are subject to regional availability. If you encounter a "model not found" error, the service may not be available in your country or region.

  How it works

  Input Collection: The workflow starts by collecting URLs, either from a user-provided sitemap or a list of individual page URLs.
  URL Processing: It then fetches sitemap XML (if provided), converts it to JSON, extracts all page URLs, and merges them with any manually entered URLs. All duplicate URLs are removed to ensure efficiency.
  Content Fetching: The workflow iterates through the unique URLs, sending HTTP requests to download the HTML content of each page. A small delay is added between requests to be courteous to the website servers.
  Content Extraction: The HTML content is then processed to extract the main textual content from the page's body, excluding images, and cleaning the text for better quality.
  Embedding Generation: Gemini's embedding model converts the extracted text into vector embeddings, capturing the semantic meaning of the content.
  Pinecone Storage: Finally, these vector embeddings, along with their associated content, are uploaded to your specified Pinecone index, creating a searchable knowledge base. Existing data in the namespace is cleared before new data is inserted.

  How to use

  The workflow is triggered by a form where you input your sitemap or page URLs.
  You can monitor the execution flow within n8n to see pages being processed and uploaded.
  The Wait 5 sec node can be adjusted if you need to fetch content more rapidly or slowly, depending on the website's rate limits.

  Requirements

  Google Gemini API key** for text embeddings.
  Pinecone API key** for vector database storage.

  Customising this workflow

  This workflow can be adapted for various purposes. Consider:

  Adding more sophisticated HTML parsing logic to extract specific sections of a webpage.
  For building a Web Support Chatbot
  Integrating with other services to trigger updates to the knowledge base (e.g., automatically updating when new blog posts are published).
  Connecting the Pinecone knowledge base to a chatbot or search application for enhanced functionalities.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.xml","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.merge","n8n-nodes-base.removeDuplicates","n8n-nodes-base.splitInBatches","n8n-nodes-base.html","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.embeddingsGoogleGemini","@n8n/n8n-nodes-langchain.vectorStorePinecone","n8n-nodes-base.formTrigger","n8n-nodes-base.switch"]

workflow_json_compressed:
  H4sIAAAAAAAAE62WaY/bNhCG/4rgz8uU95FPRc4G3bRBkh5AERQjcugVYkuurc1uEOx/78h7SCvLR4p+MGDY5MuHw3ln5tusbhJuZk//+jar0uzpzECyYARnKmpg2qFmpc+ZRY7GGpQmSTM7m9WwRFr9oa3i56/FL02L9GP7ddX9WPuabVVZCRt8stmuuVuyajZVWzU1HaisPwtaf6IfYU1yLa6J49ssNnWLdUtCs5tbzd/pn+0ecXN2h6lyds6VjkldJqYljwyy8sxKUMFkI0FAj/nyul1DbIt3MMfit/fnm72wkb4+xhRB2TOhghyDjuHkA5wVzqI1gkXMhmmNnkGJifFssy29MMKVPdyfb8+L50395U5nH9n1cjECc0GeBNZHLUYQ6NAxJbOlqOXESqkivbU03iqtwfAe7BW28aL4ULW4hNVerou2Xb3Hfy5x0474rDqNTz/pQ2ckR6EEcZksmfbGMUB6YeOkTiDBc68G6bdaVLevuume9XtedRs8Kezpr0pxy2ikZ95pT87gJSutJD4eXSgNZIjYo73F9bFcW3ZLHmNJIT1hqaMxU4OYAaeEAsjMxkhe8F30gkNWCq+S4kYbMUi397hsvmDx4pJiF6E9wrjern5YvBnhSidPwh1EUUZvYswMQupSsBTMG3DMWc95CV4JHNSX86ZZFb+SNU6w7qZLhjf1M6Cs3QHVnp8W1x5UdYknArMckGmeBAOnHeNlMMolondxt8I8vyte+90ytrG0XQyFOpqJYvDkPJXZ8UgVpiSHaBsEC8JmJskiEEBHjDtG3kbwp49UbV416yIeBd1j61teJf332DqDiMJHSykqA9PoiJcbZDxoE3iAHMIgRf8AcrUpNhj34l3RkhGXVw9cV1heNM3nN93RIXmHlmcWUibbglAsRCkZKjRgyjJQZ5sdDX1fQ2WZFSRHCdyVT61zoDJA5iMxzjF7boLor/ICWijOG0i47u/yI13mh/5CC6jn8QKq+klq4uWSXuUFZrhctN3mh73Dzimtpqvu9s5D3OBt0lEiMyZEpoOWDCJPTKYUo8PSZRV67te4rOqqeLmkvpWqer45gR4fFr9umvkCbzVG6HybPSeg97mjrfCeekDkQC0h6cBCacmIQbnsgwBUtgd/V9VIuY3Fz3VztcA0x2eULyfQf8HYNusP9MF7jSn0k4zaVxGdTYoWFfPZ0ShggZqGQkHxTxRyGwx5t4d/U68u2/uOW5BLV51nL9eL/VUvN+vlx3U1n4+TRMjQzS3OjvwApdEgqVFITDTgxexowCM/+FzqgLGUxh31gxxY27psMXhgQVvKK205Cypp5rgzQtAtKQSDjn1VUS3aX8Pv/x5eRGt+f5GjPZHW0MvR83Wbt+Pk3Yn0bUnPTHo06XYnHhoftivPZlWd8Hr2lJNqv2nPVLSz5RPhDYaAqfOPtOJJyUFtnJI82DAnBYcVihSh+vu+Cj0SPuar4b7xEY9DNoW9bwaeJB4tntI7MPBPSo7b95TmsQhMCo9TbEp4alQ8SNnf6r/JiVu53Rp/+/4Pdfx7E6DfOCafSstD77YzRh135JHxZjKg0wb8f3x1oJZP1qJRYZzUPHTTKdGpQWpC+ObmXzO3nLQHEAAA

metadata_json:
  {"categories":["AI/ML"],"complexity":"medium","use_cases":["populate chatbot knowledge base","create website search index","build information repository"],"estimated_setup_minutes":5,"required_services":["Pinecone","Google Gemini API"],"key_features":["web content extraction","content scraping with pagination","text embedding generation","vector database storage"],"target_audience":["developers","product managers","data engineers"]}


name: Generate Personalized Icebreakers
author_name: Abdul Mir
author_username: abdulmir
categories: []
created_at: 2025-07-27T14:53:36.549Z
updated_at: 2025-07-27T14:53:36.549Z
url: https://n8n.io/workflows/6530
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  Overview

  Create hyper-personalized cold outreach messages at scale by combining Google Sheets, web scraping, and AI.
  This workflow is perfect for sales teams, SDRs, and agency owners looking to boost reply rates with icebreakers that actually feel personal. It takes lead info from a Google Sheet—including name, email, company, and website—then visits each site, pulls meaningful text, and crafts a tailored message using AI. The personalized message is then written back into your lead sheet, ready for use in cold email, LinkedIn DMs, or CRM enrichment.

  Who’s it for
  Cold email outreach specialists  
  B2B sales and SDR teams  
  Lead generation agencies  
  Founders doing outbound manually  

  How it works
  Pull lead data from Google Sheets  
  Loop through each lead and scrape their website using an HTTP node  
  Clean and format the website content  
  Use OpenAI to generate a custom-written icebreaker for each lead  
  Write the final icebreaker back into the spreadsheet

  How to set up
  Connect your Google Sheets account  
  Replace the spreadsheet ID and column names with your own  
  Set up your OpenAI credentials (or whichever LLM you prefer)  
  Tweak the prompt for tone or style  
  Hit "Execute Workflow" and watch the sheet populate

  Requirements
  Google Sheets credentials  
  OpenAI (or any compatible LLM node)  
  The websites listed must be publicly accessible and static

  How to customize
  Modify the scraping logic to focus on specific sections (e.g. About page, Case Studies)  
  Adjust the AI prompt to match your brand’s tone  
  Add filtering logic to skip low-value leads  
  Integrate with your CRM to send the data downstream

nodes_used:
  ["n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.markdown","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.limit","n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.openAi","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, 8600 characters]

metadata_json:
  {"categories":["Marketing","Sales"],"complexity":"medium","use_cases":["Generate cold outreach messages","Scrape website content","Create personalized icebreakers"],"estimated_setup_minutes":30,"required_services":["Google Sheets","Web Scraping","AI Service"],"key_features":["Lead data extraction","Website content analysis","AI message generation","Batch processing","Custom field mapping"],"target_audience":["Sales teams","SDRs","Agency owners"]}


name: LinkedIn Content Creator System
author_name: Abdul Mir
author_username: abdulmir
categories: []
created_at: 2025-07-27T15:10:25.327Z
updated_at: 2025-07-27T15:10:25.327Z
url: https://n8n.io/workflows/6531
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  Overview

  Automate your entire LinkedIn content machine — from research and image generation to scheduling and posting — with this AI-powered workflow.

  This workflow pulls in past content ideas, researches new ones using Perplexity, generates a new post (with image) using your brand's voice and style, saves the output to Google Sheets, and auto-posts twice a week to LinkedIn. It’s perfect for founders, creators, and marketers who want to stay consistent on LinkedIn without manually writing or designing every post.

  Who’s it for

  Solo founders or marketers building a LinkedIn presence  
  Content creators growing their audience  
  Agencies managing client content calendars  
  Anyone who wants to post consistently without spending hours on content  

  How it works

  Pulls old ideas from a Google Sheet  
  Schedules content creation using n8n’s cron node  
  Uses Perplexity to research current topics and trends  
  Feeds the data into an AI agent (like Claude or GPT) to generate post copy  
  Creates a branded image using a reference style and OpenAI’s image model  
  Saves post content + image URL into Google Sheets  
  Twice a week, selects one ready post, downloads the image, and publishes it to LinkedIn

  How to set up

  Add your Google Sheet ID and column names for posts  
  Connect your OpenAI (or Claude) and Perplexity API keys  
  Upload a brand-style reference image to Google Drive  
  Configure your LinkedIn account and connect the node  
  Adjust the cron schedule for both post creation and auto-posting  
  (Optional) Edit the AI prompt to match your personal voice or niche  

  Requirements

  Google Drive & Sheets access  
  OpenAI or Claude API key  
  Perplexity API key  
  LinkedIn credentials (via n8n’s LinkedIn integration)

  How to customize

  Change the prompt for the AI to fit your voice or audience  
  Swap out Perplexity for another research method  
  Adjust how often you want posts scheduled or published  
  Swap LinkedIn for Twitter, Slack, or another platform  
  Add Notion or Airtable as your CMS backend

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.convertToFile","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.code","n8n-nodes-base.limit","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.googleDrive","n8n-nodes-base.linkedIn","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 7872 characters]

metadata_json:
  {"categories":["Marketing","Communication","Content Creation"],"complexity":"medium","use_cases":["generate LinkedIn posts","auto-schedule content","manage content calendar"],"estimated_setup_minutes":15,"required_services":["Perplexity AI","Anthropic (Claude)","Google Sheets","Google Drive","LinkedIn API"],"key_features":["AI-driven content ideation","Automated posting workflow","Schedule social media posts"],"target_audience":["Founders","Digital Marketers","Social Media Managers"]}


name: Lead Gen Agent (Telegram)
author_name: Abdul Mir
author_username: abdulmir
categories: []
created_at: 2025-07-27T15:18:20.672Z
updated_at: 2025-07-27T15:18:20.672Z
url: https://n8n.io/workflows/6532
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  Overview
  Use your voice or text to command a Telegram-based AI agent that scrapes leads or generates detailed research reports—instantly.

  This workflow turns your Telegram bot into a full-blown outbound machine. Just tell it what type of leads you need, and it’ll use Apollo to find and save them into a spreadsheet. Or drop in a LinkedIn profile, and it’ll generate a personalized research dossier with info like job title, company summary, industry insights, and more. It handles voice messages too—just speak your request and get the results sent back like magic.

  Who’s it for
  Cold emailers and growth marketers  
  Solo founders running outbound  
  SDRs doing daily prospecting  
  Agencies building high-quality lead lists or custom research for clients  

  How it works
  Triggered by a message (text or voice) in Telegram  
  If it’s voice, it transcribes using OpenAI Whisper  
  Uses an AI agent to interpret intent: scrape leads or research a person  
  For lead scraping:
    Gathers criteria (e.g., location, job title) via Telegram  
    Calls the Apollo API to return fresh leads  
    Saves the leads to Google Sheets  
  For research reports:
    Takes a LinkedIn profile link  
    Uses AI and lead data tools to create a 1-page professional research report  
    Sends it back to the user via email

  Example outputs
  Lead scraping**: Populates a spreadsheet with names, roles, LinkedIn links, company info, emails, and more  
  Research report**: A formatted PDF-style brief with summary of the person, company, and key facts

  How to set up
  Connect your Telegram bot to n8n  
  Add your OpenAI credentials (for Whisper + Chat agent)  
  Plug in your Apollo API key or scraping tool  
  Replace the example spreadsheet with your own  
  Customize the prompts for tone or data depth  
  (Optional) Add PDF generation or CRM sync

  Requirements
  Telegram Bot Token  
  OpenAI API Key  
  Apollo (or other scraping API) credentials  
  LinkedIn URLs for research functionality

  How to customize
  Replace Apollo with Clay, People Data Labs, or another scraping tool  
  Add a CRM push step (e.g. Airtable, HubSpot, Notion)  
  Add scheduling to auto-scrape daily  
  Reformat the research report as a downloadable PDF  
  Change the agent’s tone or role (e.g. “Outreach Assistant,” “Investor Scout,” etc.)

nodes_used:
  ["@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.switch","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegramTrigger","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, 6440 characters]

metadata_json:
  {"categories":["Marketing","Data Processing"],"complexity":"medium","use_cases":["scrape LinkedIn leads","generate research reports","save leads to spreadsheet","handle voice commands"],"estimated_setup_minutes":30,"required_services":["Telegram","Apollo.io"],"key_features":["voice command parsing","automated lead generation","personalized research dossiers","spreadsheet integration"],"target_audience":["Sales teams","Marketing agents","BDR teams"]}


name: Personalized Thank-You Emails with Website Scraping, GPT-4o, and Gmail
author_name: Abdul Mir
author_username: abdulmir
categories: []
created_at: 2025-07-27T15:27:41.560Z
updated_at: 2025-07-27T15:27:41.560Z
url: https://n8n.io/workflows/6533
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:22
description:
  Overview
  Impress your leads with ultra-personalized “thank you” emails that look hand-written — sent automatically seconds after they submit your intake form.

  This workflow instantly scrapes the prospect's website, extracts meaningful copy, and uses AI to write a custom thank-you message referencing something specific from their site. It gives the impression you immediately reviewed their business and crafted a thoughtful reply — without lifting a finger.

  Who’s it for
  Agencies and consultants using intake forms  
  Freelancers booking discovery calls  
  B2B businesses that want high-touch first impressions  
  Sales teams automating initial follow-ups  

  How it works
  Triggered when a form (e.g. Tally, Typeform) is submitted  
  Scrapes the website URL provided in the form  
  Converts HTML to Markdown and extracts plain copy  
  Uses AI to write a personalized thank-you message referencing the site  
  Waits briefly to simulate real typing delay  
  Sends the message via Gmail (or any email provider)

  Example use case
  &gt; Prospect submits a form with their website: coolstartup.ai  
  &gt;  
  &gt; 30 seconds later, they receive:  
  &gt;  
  &gt; “Thanks for reaching out! I just checked out Cool Startup’s homepage — love the clean UX and mission around AI for teams. Looking forward to diving into how we might collaborate!”

  How to set up
  Connect your form tool (e.g. Tally or Typeform)  
  Connect Gmail or another email provider  
  Customize the AI prompt to match your tone  
  Set the wait time (e.g. 30 seconds) for a realistic delay  
  Update your website scraping logic if needed  

  Requirements
  Form tool with webhook support  
  OpenAI (or other LLM) credentials  
  Email sending integration (Gmail, Mailgun, Postmark, etc.)

  How to customize
  Edit the email tone (casual, formal, funny, etc.)  
  Add CRM integration to log form submission and response  
  Trigger additional workflows like lead scoring or Slack alerts  
  Add fallback logic if the website doesn’t scrape cleanly

nodes_used:
  ["n8n-nodes-base.markdown","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.wait","n8n-nodes-base.typeformTrigger","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4356 characters]

metadata_json:
  {"categories":["Marketing","Communication","Data Processing"],"complexity":"medium","use_cases":["automate personalized thank-you emails","scrape prospect website data","generate custom AI responses","build lead nurturing sequences"],"estimated_setup_minutes":30,"required_services":["Gmail","Typeform","Typeform","GPT-4o","HTTP/Webhook"],"key_features":["real-time website scraping","LLM content generation","hyper-personalization","automated email delivery"],"target_audience":["consultants","agencies","sales professionals"]}


name: AI Proposal Generator
author_name: Abdul Mir
author_username: abdulmir
categories: []
created_at: 2025-07-27T15:40:45.891Z
updated_at: 2025-07-27T15:40:45.891Z
url: https://n8n.io/workflows/6534
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:55
description:
  Overview
  Stop spending hours formatting proposals. This workflow turns a short post-call form into a high-converting, fully-personalized PandaDoc proposal—plus updates your CRM and drafts the follow-up email for you.

  After a sales call, just fill out a 3-minute form summarizing key pain points, solutions pitched, and the price. The workflow uses AI to generate polished proposal copy, then builds a PandaDoc draft using dynamic data mapped into the JSON body (which you can fully customize per business). It also updates the lead record in ClickUp with the proposal link, company name, and quote—then creates an email draft in Gmail, ready to send.

  Who’s it for
  Freelancers and consultants sending service proposals  
  Agencies closing deals over sales calls  
  Sales reps who want to automate proposal follow-up  
  Teams using ClickUp as their lightweight CRM  

  How it works
  After a call, fill out a short form with client details, pitch notes, and price  
  AI generates professional proposal copy based on form input  
  Proposal is formatted and sent to PandaDoc via HTTP request  
  ClickUp lead is updated with:
    Company Name  
    Proposal URL  
    Quote/price  
  A Gmail draft is created using the proposal link and a thank-you message  

  Example use case
  &gt; You hop off a call, fill out:  
  &gt; - Prospect: Shopify agency  
  &gt; - Pain: No lead gen system  
  &gt; - Solution: Automated cold outreach  
  &gt; - Price: $2,500/month  
  &gt;  
  &gt; 3 minutes later: PandaDoc proposal is ready, CRM is updated, and your email draft is waiting to be sent.

  How to set up
  Replace the form with your preferred tool (e.g. Tally, Typeform)  
  Connect PandaDoc API and structure your proposal template  
  Customize the JSON body inside the HTTP request to match your business  
  Link your ClickUp space and custom fields  
  Connect Gmail (or other email tool) for final follow-up draft  

  Requirements
  Form tool for capturing sales call notes  
  OpenAI or LLM key for generating proposal copy  
  PandaDoc API access  
  ClickUp custom fields set up for lead tracking  
  Gmail integration

  How to customize
  Customize your PandaDoc proposal fields in the JSON body of the HTTP node  
  Replace ClickUp with another CRM like HubSpot or Notion  
  Adjust AI tone (casual, premium, corporate) for proposal writing  
  Add Slack or Telegram alerts when the draft is ready  
  Add PDF generation or auto-send email step

nodes_used:
  ["@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.clickUp","n8n-nodes-base.clickUp","n8n-nodes-base.clickUp","n8n-nodes-base.clickUp","n8n-nodes-base.typeformTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 8632 characters]

metadata_json:
  {"categories":["AI/ML","Communication","Sales"],"complexity":"medium","use_cases":["Generate personalized sales proposals","Automate CRM updates from call summaries","Draft follow-up emails for leads","Format client intake data into documents"],"estimated_setup_minutes":30,"required_services":["PandaDoc","n8n","Typeform","AI/ML"],"key_features":["AI-driven proposal copywriting","Dynamic PDF generation from JSON","Automated CRM synchronization","Comprehensive data integration"],"target_audience":["sales representatives","business development managers","operations staff"]}


name: Lead Research Report Emails
author_name: Abdul Mir
author_username: abdulmir
categories: []
created_at: 2025-07-27T15:54:08.744Z
updated_at: 2025-07-27T15:54:08.744Z
url: https://n8n.io/workflows/6535
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  Overview
  This workflow auto-generates a personalized research report on any prospect who books a call with you—using their LinkedIn profile and advanced web research.

  When a call is booked in your calendar, the system looks up the lead’s LinkedIn URL from a Google Sheets database. That profile is then scraped using Relevance AI to extract posts, experiences, and education. It also runs a deep-dive query on the person using Perplexity to uncover relevant news, insights, and context. This structured data is passed to an AI model that produces a clean profile summary, suggested pain points, and solution ideas. Finally, the system builds and sends you a fully formatted HTML report via email—ready to review before your meeting.

  Who’s it for
  Founders taking high-stakes sales calls  
  SDRs/BDRs booking back-to-back meetings  
  Agencies and consultants who want to personalize discovery calls  
  Teams doing high-touch enterprise sales or B2B outreach  

  How it works
  Triggered when a new call is booked via Cal.com  
  Finds matching LinkedIn URL from a local database (Google Sheets)  
  Scrapes public LinkedIn data via Relevance AI  
  Runs a Perplexity query on the prospect for deeper context  
  Formats the scraped data using Code nodes  
  Sends structured info to AI to generate:
    A company + person profile  
    Suggested pain points and solutions  
  Formats everything into a clean HTML report  
  Emails you the final summary to prep for the call

  Example use case
  &gt; Someone books a call. You receive a report 2 minutes later in your inbox with:  
  &gt; - Their role, company, and latest posts  
  &gt; - What their business does  
  &gt; - Recent news and context from Perplexity  
  &gt; - Predicted pain points and how you might help  
  &gt;  
  &gt; You show up to the call prepped and ready

  How to set up
  Connect your Cal.com trigger (or replace with any booking tool)  
  Set up your Google Sheet(s) with contact info + LinkedIn profiles  
  Add Relevance AI API key and configure LinkedIn scraping (they have free credits)  
  Link Perplexity API for web research  
  Customize the AI prompts and report formatting  
  Connect Gmail or preferred email provider to send reports

  Requirements
  Cal.com or other booking platform  
  Google Sheets for lead storage  
  Relevance AI account and API access  
  Perplexity API key  
  OpenAI or similar LLM for summarization  
  Email integration (e.g. Gmail)

  How to customize
  Replace Cal.com with Calendly, SavvyCal, etc.  
  Change AI prompt tone and structure of the report  
  Add CRM push (e.g. log into HubSpot, Notion, or Airtable)  
  Add Slack or Telegram notifications for call alerts  
  Format reports as PDF instead of HTML for download

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.html","n8n-nodes-base.gmail","n8n-nodes-base.calTrigger","n8n-nodes-base.perplexity","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.filter","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, 11212 characters]

metadata_json:
  {"categories":["Marketing","Communication","Lead Generation"],"complexity":"medium","use_cases":["generate personalized research reports","lookup prospect LinkedIn profiles","auto-summarize prospect background","compile prospect news and insights"],"estimated_setup_minutes":15,"required_services":["Google Sheets","Relevance AI","Perplexity","Calendly","Twilio","Slack"],"key_features":["modern stack","multi-AI agent coordination","structured data extraction","personalized communication generation","automated research compilation"],"target_audience":["sales representatives","marketing managers","business development"]}


name: Inbox Manager (GPT, Google Calendar & Supabase)
author_name: Abdul Mir
author_username: abdulmir
categories: []
created_at: 2025-07-27T16:09:15.362Z
updated_at: 2025-07-27T16:09:15.362Z
url: https://n8n.io/workflows/6537
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  Overview
  Turn your cluttered inbox into a smart, autonomous assistant that categorizes emails, replies to leads, checks your calendar, and notifies you on Telegram—all without lifting a finger.

  This workflow is designed for a marketing agency, but can be adapted for any business. It classifies incoming emails into categories like Sales, Client Communication, Reports, Billing, and Other. If it detects a new lead or priority message, it routes the email to one of two agents:
  The Calendar Agent checks your availability in Google Calendar and drafts a consultation reply  
  The Knowledge Agent answers FAQs using your business knowledge base (with Supabase embeddings)  

  Both agents create draft email responses and send a Telegram alert so you're always in the loop.

  Who’s it for
  Founders and agency owners buried in emails  
  Marketing teams handling lots of inbound leads  
  Customer support managers automating Tier 1 replies  
  Anyone who wants a cleaner, smarter inbox without hiring a VA  

  How it works
  Gmail trigger watches for incoming emails  
  Email content is passed to an AI classifier to apply a label (Sales, Client, Billing, etc.)  
  If the message is a new inquiry or lead, it’s routed to:
    Calendar Agent → checks Google Calendar and drafts a reply with available slots  
    Knowledge Agent → searches vector DB and drafts a helpful reply from documentation  
  Both agents create a Gmail draft response and send a Telegram notification with summary  

  Example use case
  &gt; A lead emails you asking for a discovery call.  
  &gt;  
  &gt; ✅ Email is labeled "Sales"  
  &gt; ✅ AI Calendar Agent checks your Google Calendar  
  &gt; ✅ A reply is drafted offering free time slots  
  &gt; ✅ You get a Telegram ping:  
  &gt; "New lead: Abdul Mir. I checked your calendar and drafted a reply. Check your email!"  

  How to set up
  Connect your Gmail and set up a trigger for new messages  
  Train the AI classifier with example categories and emails  
  Connect Google Calendar API for availability checks  
  Upload your internal docs and sync to Supabase vector store  
  Connect Telegram for alerts  
  Customize AI prompts and escalation logic as needed  

  Requirements
  Gmail integration  
  OpenAI or Claude API (for classification + chat agents)  
  Google Calendar API  
  Supabase (or Pinecone, Weaviate) for RAG vector DB  
  Telegram bot API key

  How to customize
  Add custom labels like “Recruiting,” “Investor,” or “Support”  
  Replace Telegram with Slack or SMS alerts  
  Add CRM sync to update lead status  
  Escalate complicated replies to a human via task creation  
  Add auto-send (instead of drafts) after review or based on confidence score

nodes_used:
  ["n8n-nodes-base.gmailTrigger","@n8n/n8n-nodes-langchain.textClassifier","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.googleCalendarTool","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolThink","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.gmail","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.switch","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolVectorStore","n8n-nodes-base.gmail","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 12820 characters]

metadata_json:
  {"categories":["AI/ML","Communication","Marketing"],"complexity":"medium","use_cases":["automate email classification","respond to leads","sync calendar events","notify team channels","categorize incoming messages"],"estimated_setup_minutes":30,"required_services":["GPT / AI Language Model","Google Calendar","Supabase","Telegram","Email Provider"],"key_features":["AI-driven email categorization","multi-agent routing","automated client replies","calendar synchronization","real-time channel notifications"],"target_audience":["marketing professionals","customer support agents","business owners"]}


name: Company Knowledge Base Agent (RAG)
author_name: Abdul Mir
author_username: abdulmir
categories: []
created_at: 2025-07-27T16:25:45.103Z
updated_at: 2025-07-27T16:25:45.103Z
url: https://n8n.io/workflows/6538
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  Overview
  Turn your docs into an AI-powered internal or public-facing assistant. This chatbot workflow uses RAG (Retrieval-Augmented Generation) with Supabase vector search to answer employee or customer questions based on your company documents—automatically updated via Google Drive.

  Whether it’s deployed in Telegram or embedded on your website, this agent supports voice and text input, transcribes voice messages, pulls relevant context from your internal files, and responds with a helpful, AI-generated answer. Two additional workflows listen for file changes in a shared Google Drive folder, convert them into embeddings using OpenAI, and sync them with your Supabase vector DB—so your knowledge base is always up to date.

  Who’s it for
  Startups building an internal ops or HR assistant  
  SaaS companies deploying help bots on their websites  
  Customer support teams reducing repetitive questions  
  Knowledge-driven teams needing internal AI assistants  

  How it works
  Triggered via Telegram bot (or easily swapped for website chatbot or “on chat message”)  
  If user sends a voice message, it’s transcribed to text using OpenAI Whisper  
  Input is passed to a RAG agent that:
    Searches a Supabase vector store for relevant docs  
    Pulls context from matching chunks using OpenAI embeddings  
    Responds with an LLM-powered answer  
  The response is sent back as a Telegram message  
  Two separate workflows:
    New File Workflow: Listens for file uploads in Google Drive, extracts and splits text, then sends to Supabase with embeddings  
    Update File Workflow: Detects file edits, deletes old rows, and updates embeddings for the revised file  

  Example use case
  &gt; You upload your internal policy docs and client FAQs into a Google Drive folder.  
  &gt;  
  &gt; Employees or customers can now ask:  
  &gt; - “What’s the refund policy for annual plans?”  
  &gt; - “How do I request a day off?”  
  &gt; - “What tools are approved for use by the engineering team?”  
  &gt;  
  &gt; The chatbot instantly pulls up the right section and responds with a smart, confident answer.

  How to set up
  Connect a Telegram bot or use n8n’s webchat / chatbot widget  
  Hook up OpenAI for transcription, embeddings, and completion  
  Set up a Supabase project and connect it as a vector store  
  Upload your internal docs to Google Drive  
  Deploy the “Add File” and “Update File” automations to manage embedding sync  
  Customize the chatbot’s tone and personality with prompt tweaks  

  Requirements
  Telegram bot (or n8n Chat widget)  
  Google Drive integration  
  Supabase with pgvector or similar enabled  
  OpenAI API key (Whisper, Embeddings, ChatGPT)  
  Two folders: one for raw documents and one for tracking updates  

  How to customize
  Swap Supabase for Pinecone, Weaviate, or Qdrant  
  Replace Telegram with web chat, Slack, Intercom, or Discord  
  Add logic to handle fallback answers or escalate to human  
  Embed the chat widget on your site for public customer use  
  Add filters (e.g. department, date, author) to narrow down context

nodes_used:
  ["n8n-nodes-base.set","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.extractFromFile","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.supabase","n8n-nodes-base.set","n8n-nodes-base.limit","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.extractFromFile","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.vectorStoreSupabase","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.switch","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolVectorStore","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 8068 characters]

metadata_json:
  {"categories":["AI/ML","Communication","Data Processing","Development","Marketing"],"complexity":"medium","use_cases":["build AI assistant","create knowledge base bot","deploy chatbot on website","integrate with messaging platform","store and query documents"],"estimated_setup_minutes":60,"required_services":["Google Drive","Supabase","Telegram"],"key_features":["rag retrieval augmented generation","voice-to-text transcription","content chunking and splitting","vector database storage","multi-channel deployment"],"target_audience":["developers","product managers","customer support teams"]}


name: Build an All-Source Knowledge Assistant with Claude, RAG, Perplexity, and Drive
author_name: Paul
author_username: diagopl
categories: []
created_at: 2025-07-27T21:17:51.143Z
updated_at: 2025-07-27T21:17:51.143Z
url: https://n8n.io/workflows/6542
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  📜 Detailed n8n Workflow Description

  Main Flow

  The workflow operates through a three-step process that handles incoming chat messages with intelligent tool orchestration:

  Message Trigger: The When chat message received node triggers whenever a user message arrives and passes it directly to the Knowledge Agent for processing.

  Agent Orchestration: The Knowledge Agent serves as the central orchestrator, registering a comprehensive toolkit of capabilities:
     LLM Processing: Uses Anthropic Chat Model with the claude-sonnet-4-20250514 model to craft final responses
     Memory Management: Implements Postgres Chat Memory to save and recall conversation context across sessions
     Reasoning Engine: Incorporates a Think tool to force internal chain-of-thought processing before taking any action
     Semantic Search: Leverages General knowledge vector store with OpenAI embeddings (1536-dimensional) and Cohere reranking for intelligent content retrieval
     Structured Queries: Provides structured data Postgres tool for executing queries on relational database tables
     Drive Integration: Includes search about any doc in google drive functionality to locate specific file IDs
     File Processing: Connects to Read File From GDrive sub-workflow for fetching and processing various file formats
     External Intelligence: Offers Message a model in Perplexity for accessing up-to-the-minute web information when internal knowledge proves insufficient

  Response Generation: After invoking the Think process, the agent intelligently selects appropriate tools based on the query, integrates results from multiple sources, and returns a comprehensive Markdown-formatted answer to the user.

  Persistent Context Management

  The workflow maintains conversation continuity through Postgres Chat Memory, which automatically logs every user-agent exchange. This ensures long-term context retention without requiring manual intervention, allowing for sophisticated multi-turn conversations that build upon previous interactions.

  Semantic Retrieval Pipeline

  The semantic search system operates through a sophisticated two-stage process:

  Embedding Generation**: Embeddings OpenAI converts textual content into high-dimensional vector representations
  Relevance Reranking**: Reranker Cohere reorders search hits to prioritize the most contextually relevant results
  Knowledge Integration**: Processed results feed into the General knowledge vector store, providing the agent with relevant internal knowledge snippets for enhanced response accuracy

  Google Drive File Processing

  The file reading capability handles multiple formats through a structured sub-workflow:

  Workflow Initiation: The agent calls Read File From GDrive with the selected fileId parameter
  Sub-workflow Activation: When Executed by Another Workflow node activates the dedicated file processing sub-workflow
  Operation Validation: Operation node confirms the request type is readFile
  File Retrieval: Download File1 node retrieves the binary file data from Google Drive
  Format-Specific Processing: FileType node branches processing based on MIME type:
     PDF Files: Route through Extract from PDF → Get PDF Response to extract plain text content
     CSV Files: Process via Extract from CSV → Get CSV Response to obtain comma-delimited text data
     Image Files: Analyze using Analyse Image with GPT-4o-mini to generate visual descriptions
     Audio/Video Files: Transcribe using Transcribe Audio with Whisper for text transcript generation
  Content Integration: The extracted text content returns to Knowledge Agent, which seamlessly weaves it into the final response

  External Search Capability

  When internal knowledge sources prove insufficient, the workflow can access current public information through Message a model in Perplexity, ensuring responses remain accurate and up-to-date with the latest available information.

  Design Highlights

  The workflow architecture incorporates several key design principles that enhance reliability and reusability:

  Forced Reasoning**: The mandatory Think step significantly reduces hallucinations and prevents tool misuse by requiring deliberate consideration before action
  Template Flexibility: The design is intentionally generic—organizations can replace **[your company] placeholders with their specific company name and integrate their own credentials for immediate deployment
  Documentation Integration**: Sticky notes throughout the canvas serve as inline documentation for workflow creators and maintainers, providing context without affecting runtime performance

  System Benefits

  With this comprehensive architecture, the assistant delivers powerful capabilities including long-term memory retention, semantic knowledge retrieval, multi-format file processing, and contextually rich responses tailored specifically for users at [your company]. The system balances sophisticated AI capabilities with practical business requirements, creating a robust foundation for enterprise-grade conversational AI deployment.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.memoryPostgresChat","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.rerankerCohere","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.postgresTool","@n8n/n8n-nodes-langchain.vectorStoreSupabase","n8n-nodes-base.manualTrigger","n8n-nodes-base.googleDrive","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.toolThink","n8n-nodes-base.stickyNote","n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.mcpTrigger","n8n-nodes-base.googleDrive","n8n-nodes-base.switch","n8n-nodes-base.switch","n8n-nodes-base.extractFromFile","n8n-nodes-base.extractFromFile","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.googleDriveTool","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.mcpClientTool","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.perplexityTool","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 11212 characters]

metadata_json:
  {"categories":["AI/ML","Knowledge Management","Chatbot Development"],"complexity":"medium","use_cases":["create knowledge base assistant","implement RAG systems","build AI chatbots"],"estimated_setup_minutes":120,"required_services":["Anthropic API","Perplexity API","Google Drive API","Supabase Vector Store","Cohere API","PostgreSQL"],"key_features":["multi-source knowledge retrieval","RAG technology","LLM orchestration","document processing"],"target_audience":["developers","data architects","AI engineers"]}


name: Forward Chatwoot Messages to WhatsApp via Evolution API with Media Support
author_name: Thiago Vazzoler Loureiro
author_username: thiagovazzoler
categories: []
created_at: 2025-07-27T23:30:49.094Z
updated_at: 2025-07-27T23:30:49.094Z
url: https://n8n.io/workflows/6544
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:20
description:
  Description
  This workflow automates forwarding messages received in Chatwoot to WhatsApp using the Evolution API. It provides full support for different types of messages, ensuring rich and seamless communication with the end user.

  What Problem Does This Solve?
  Manually forwarding messages from Chatwoot to WhatsApp can be time-consuming and error-prone, especially when handling diverse message types like media files. This subworkflow streamlines the process, automating message delivery while maintaining message fidelity and media compatibility.

  Features

  Support for plain text messages;
  Support for media messages including images, videos, documents, and audio;
  Automatic detection of media type based on the content_type field;
  Automatic processing of incoming messages from Chatwoot via webhook or native integration

  Prerequisites
  Before using this subworkflow, make sure you have:
  Evolution API key and URL;
  Incoming messages from Chatwoot via webhook or native integration;
  Configured HTTP Request node in n8n

  Suggested Usage
  This subworkflow should be attached to a main workflow that receives messages from Chatwoot. It is ideal for automated customer service, help desks, or hybrid bots (human + automated), enabling messages originating from Chatwoot to be faithfully redirected to WhatsApp.

nodes_used:
  ["n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.noOp","n8n-nodes-base.switch","n8n-nodes-base.if","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-evolution-api.evolutionApi","n8n-nodes-evolution-api.evolutionApi","n8n-nodes-evolution-api.evolutionApi","n8n-nodes-evolution-api.evolutionApi","n8n-nodes-evolution-api.evolutionApi","n8n-nodes-base.switch","n8n-nodes-base.splitInBatches","n8n-nodes-base.code","n8n-nodes-evolution-api.evolutionApi"]

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

metadata_json:
  {"categories":["Communication"],"complexity":"medium","use_cases":["forward messages","handle media files","sync chatbots"],"estimated_setup_minutes":5,"required_services":["Chatwoot","WhatsApp (Evolution API)"],"key_features":["media attachment support","multi-channel integration","message routing","conditional logic"],"target_audience":["customer support agents","developers","marketing teams"]}


name: Automated Blog Creation & Multi-Platform Publishing with GPT/Gemini & WordPress
author_name: Khairul Muhtadin
author_username: khmuhtadin
categories: []
created_at: 2025-07-28T03:59:54.721Z
updated_at: 2025-07-28T03:59:54.721Z
url: https://n8n.io/workflows/6547
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Ultimate Blogblizt is a powerhouse workflow that solves the tedious task of crafting and publishing SEO-optimized tech blog posts. It integrates AI models (OpenAI, Google Gemini), WordPress, and multiple social media platforms to automate everything from topic selection and article writing to image creation and virality-driven social sharing—saving content creators hours while boosting online engagement and reach.

  💡 Why Use Wp + Socmed?

  Time saver:** Cuts blog production time drastically by automating 100% of content creation, image generation, and publishing
  Stress relief:** No more writer's block or juggling multiple platforms—your n8n instance is your tireless content assistant
  Boost engagement:** Tailored social media posts optimized for X, LinkedIn, Discord, Threads, and Bluesky maximize your viral potential
  Competitive edge:** Combines multi-AI tech with multi-platform publishing to keep your blog ahead of the curve and your audience hooked
  No 3rd Party Cost:** This workflow use official API at no cost.

  ⚡ Perfect For

  Content creators:** Bloggers focused on technology and AI topics who want stress-free publishing
  Small businesses:** Teams needing consistent, SEO-rich content and social presence without extra hires
  Marketing pros:** Those craving seamless workflows connecting WordPress blogging and social channels effortlessly

  🔧 How It Works

  | Step | Phase | Description |
  |------|-------|-------------|
  | ⏱ | Trigger | Automatically runs every 3 hours or manually via Telegram command "generate" |
  | 📎 | Process | AI picks a blog category and crafts a unique, SEO-friendly title plus metadata, then writes a 1,500–2,500 word article |
  | 🤖 | Smart Logic | Generates a lifelike featured image with OpenAI, uploads post and media to WordPress, and uses OpenRouter AI to create viral social media posts tailored by platform |
  | 💌 | Output | Publishes blog posts live and posts viral-ready content simultaneously to X, LinkedIn, Discord, Threads, and Bluesky |

  🔐 Quick Setup



  Import JSON file to your n8n instances
  Add credentials: WordPress API, OpenAI, Google Gemini, Twitter/X OAuth2, LinkedIn OAuth2, Discord Webhook, Threads API, Bluesky API, OpenRouter API, Telegram Bot
  Customize: Input your WordPress site URL, category mappings, social account IDs, and access tokens
  Update: Replace placeholder URLs/endpoints with your live WordPress and API URLs
  Test: Trigger manually via Telegram or run scheduled trigger and verify content creation and social posts

  🧩 You'll Need

  Active n8n instances
  WordPress site with REST API enabled and credentials
  API keys/accounts: OpenAI, Google Gemini, Twitter/X, LinkedIn, Discord Webhook, Threads, Bluesky, OpenRouter
  Telegram Bot for manual triggering (optional but recommended)

  🛠️ Level Up Ideas

  Integrate newsletter automation for blog post digests
  Customize social post templates to include trending hashtags or emojis automatically

  Made by: khaisa Studio  
  Tags: automation, blogging, social media, AI, WordPress, SEO  
  Category: Content Creation & Social Sharing  
  Need custom work? Contact me

nodes_used:
  ["@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.telegramTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.splitOut","n8n-nodes-base.switch","n8n-nodes-base.twitter","n8n-nodes-base.linkedIn","n8n-nodes-base.discord","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.if","n8n-nodes-base.wordpress","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.lmChatAzureOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["Content Creation","Marketing","AI/ML"],"complexity":"medium","use_cases":["automate blog post creation","generate SEO-optimized content","publish across social media","create AI-generated images","distribute content to platforms"],"estimated_setup_minutes":30,"required_services":["WordPress","OpenAI","Google Cloud Gemini","Telegram","OpenRouter","Social Media APIs"],"key_features":["AI-powered content generation","multi-platform social media publishing","SEO optimization","automated image generation","scheduled content workflow"],"target_audience":["content creators","marketing managers","bloggers"]}


name: Generate & Test SQL Code with GPT/OpenRouter AI and PostgreSQL Sandbox
author_name: Muhammadumar
author_username: muhammad
categories: []
created_at: 2025-07-28T13:49:22.924Z
updated_at: 2025-07-28T13:49:22.924Z
url: https://n8n.io/workflows/6583
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  This is the core AI agent used for queryverify.com. 

  Don't trust complex AI-generated SQL queries without double-checking them in a safe environment. That's where queryverify comes in. It automatically creates a test environment with the necessary data, generates code for your task, runs it to double-check for correctness, and handles errors if necessary.
  If you enable auto-fixing, queryverify will detect and fix issues on its own. If not, it will ask for your permission before making changes during debugging. In the end, you get thoroughly verified code along with full details about the environment it ran in.

  Setup

  It is an embedded chat for the website, but you can pin input data and run it on your own n8n instance.

  Input data
  sessionId: uuid\_v4. Required to handle ongoing conversations and to create table names (used as a prefix).
  threadId: string | nullable. If aiProvider is openai, conversation history is managed on OpenAI’s side. This is not needed in the first request—it will start a new conversation. For ongoing conversations, you must provide this value. You can get it from the OpenAIMainBrain node output after the first run. If you want to start a new conversation, just leave it as null.
  apiKey: string. Your API key for the selected aiProvider.
  aiProvider: string. Currently supported values: openai, openrouter.
  model: string. The AI model key (e.g., gpt-4.1, o3-mini, or any supported model key from OpenRouter).
  autoErrorFixing: boolean. If true, it will automatically fix errors encountered when running code in the environment. If false, it will ask for your permission before attempting a fix.
  chatInput: string. The user's prompt or message.
  currentDbSchemaWithData: string. A JSON representation of the database schema with sample data. Used to inform the AI about the current database structure during an ongoing conversation. Please use the '[]' value in the first request. Example string for filled db structure : '{"users":[{"id":1,"name":"John Doe","email":"john.d@example.com"},{"id":2,"name":"Jane Smith","email":"jane.s@example.com"}],"products":[{"product_id":101,"product_name":"Laptop","price":999.99}]}'

  Make sure to fill in your credentials:

  Your OpenAI or OpenRouter API key
  Access to a local PostgreSQL database for test execution

  You can view your generated tables using your preferred PostgreSQL GUI. We recommend DBeaver.
  Alternatively, you can activate the “Deactivated DB Visualization” nodes below. To use them, connect each to the most recent successful Set node and manually adjust the output.
  However, the easiest and most efficient method is to use a GUI.

  Workflow Explanation

  We store all input values in the localVariables node. Please use this node to get the necessary data.
  OpenAI has a built-in assistant that manages chat history on their side. For OpenRouter, we handle chat history locally. That’s why we use separate nodes like ifOpenAi and isOpenAi. Note that if logic can also be used inside nodes.
  The AutoErrorFixing loop will run only a limited number of times, as defined by the isMaxAutoErrorReached node. This prevents infinite loops.
  The Execute_AI_result node connects to the PostgreSQL test database used to execute queries.

  Guidance on customization

  This setup is built for PostgreSQL, but it can be adapted to any programming language, and the logic can be extended to any programming framework.

  To customize the logic for other programming languages:
  Change instruction parameter in localVariables node.
  Replace the Execute_AI_result PostgreSQL node with another executable node. For example, you can use the HTTP Request node.
  Update the GenerateErrorPrompt node's prompt parameter to generate code specific to your target language or framework.


  Any workflows built on top of this must credit the original author and be released under an open-source license.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.postgres","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.mySql","n8n-nodes-base.switch"]

workflow_json_compressed:
  [encoded data, 9724 characters]

metadata_json:
  {"categories":["Development","AI/ML","Data Processing"],"complexity":"medium","use_cases":["Generate SQL queries","Validate SQL syntax","Test data transformations","Automate database scripting","Debug SQL errors"],"estimated_setup_minutes":5,"required_services":["OpenRouter AI","PostgreSQL","GitHub"],"key_features":["Automated code generation","Safe SQL testing sandbox","Auto-fix error detection","Human-in-the-loop approval","Error recovery mechanisms"],"target_audience":["developers","devops engineers","data engineers"]}


