# templates

name: Tesla 1day Indicators Tool (Macro-Level Technical AI)
author_name: Don Jayamaha Jr
author_username: don-the-gem-dealer
categories: []
created_at: 2025-05-16T09:06:41.790Z
updated_at: 2025-05-16T09:06:41.790Z
url: https://n8n.io/workflows/4098
scraped_at: 2025-12-24 13:02:45
description:
  📅 Analyze Tesla’s daily trading structure with AI using 6 Alpha Vantage indicators.
  This tool evaluates long-term trend health, volatility patterns, and potential reversal signals at the 1-day timeframe. Designed for use within the Tesla Financial Market Data Analyst Tool, this agent helps swing and position traders anchor macro sentiment.

   ⚠️ Not standalone. Must be executed via Execute Workflow
   🔌 Requires:

   Tesla Quant Technical Indicators Webhooks Tool
   Alpha Vantage Premium API Key
   OpenAI GPT-4.1 credentials

  🔍 What It Does

  This tool queries a secured webhook (/1dayData) to retrieve real-time, trimmed JSON data for:

  RSI (Relative Strength Index)**
  BBANDS (Bollinger Bands)**
  SMA (Simple Moving Average)**
  EMA (Exponential Moving Average)**
  ADX (Average Directional Index)**
  MACD (Moving Average Convergence Divergence)**

  These values are then passed to a LangChain AI Agent powered by GPT-4.1, which returns:

  A 2–3 sentence market condition summary
  Structured indicator values
  Timeframe tag ("1d")

  📋 Sample Output

  {
    "summary": "TSLA shows consolidation on the daily chart. RSI is neutral, BBANDS are contracting, and MACD is flattening.",
    "timeframe": "1d",
    "indicators": {
      "RSI": 51.3,
      "BBANDS": {
        "upper": 192.80,
        "lower": 168.20,
        "middle": 180.50,
        "close": 179.90
      },
      "SMA": 181.10,
      "EMA": 179.75,
      "ADX": 15.8,
      "MACD": {
        "macd": -0.25,
        "signal": -0.20,
        "histogram": -0.05
      }
    }
  }

  🧠 Agent Components

  | Component                     | Description                                        |
  | ----------------------------- | -------------------------------------------------- |
  | 1day Data (HTTP Node)       | Pulls latest data from secured /1dayData webhook |
  | OpenAI Chat Model           | GPT-4.1 powers the analysis logic                  |
  | Tesla 1day Indicators Agent | LangChain agent performing interpretation          |
  | Simple Memory               | Short-term session continuity                      |

  🛠️ Setup Instructions

  Import Workflow into n8n

     Name: Tesla_1day_Indicators_Tool

  Add Required Credentials

     Alpha Vantage Premium (via HTTP Query Auth)
     OpenAI GPT-4.1 (Chat Model)

  Install Webhook Fetcher

     Required: Tesla Quant Technical Indicators Webhooks Tool
     Endpoint /1dayData must be active

  Execution Context
     This tool is only triggered via:
     👉 Tesla Financial Market Data Analyst Tool

     Inputs expected:

       message: optional context
       sessionId: session memory linkage

  📌 Sticky Notes Overview

  📘 Tesla 1-Day Indicators Tool – Purpose and integration
  📡 Webhook Fetcher – Pulls daily Alpha Vantage data via HTTPS
  🧠 GPT-4.1 Model – Reasoning for trend classification
  🔗 Sub-Agent Trigger – Used only by Financial Market Analyst
  🧠 Memory Buffer – Ensures consistent session logic

  🔒 Licensing & Support

  © 2025 Treasurium Capital Limited Company
  This workflow—including prompts, logic, and formatting—is protected IP.

  🔗 Don Jayamaha – LinkedIn
  🔗 Creator Profile

  🚀 Evaluate long-term Tesla price behavior with AI-enhanced technical analysis—critical for swing trading strategy.
  Required by the Tesla Financial Market Data Analyst Tool.

nodes_used:
  ["n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.httpRequestTool","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, 5464 characters]


name: Tesla 1hour & 1day Klines Tool (Candlestick & Volume AI Pattern Detector)
author_name: Don Jayamaha Jr
author_username: don-the-gem-dealer
categories: []
created_at: 2025-05-16T09:09:10.055Z
updated_at: 2025-05-16T09:09:10.055Z
url: https://n8n.io/workflows/4099
scraped_at: 2025-12-24 13:02:45
description:
  📉 Detect key candlestick reversal patterns and volume divergence on Tesla (TSLA) using GPT-4.1 and real-time OHLCV data.
  This AI agent evaluates 1-hour and 1-day candles and is an essential part of the Tesla Financial Market Data Analyst Tool. It identifies signals like Doji, Engulfing, Hammer, and volume anomalies to support trade entry and exit logic.

   ⚠️ Not a standalone template — must be triggered by the Tesla Financial Market Data Analyst Tool
   🔐 Requires:

   Alpha Vantage Premium API Key
   OpenAI GPT-4.1 access

  🔍 What This Agent Does

  Calls Alpha Vantage to fetch:

     🕐 1-hour OHLCV data
     📅 1-day OHLCV data
  GPT-4.1 evaluates:

     📊 Candlestick patterns like Doji, Engulfing, Shooting Star
     🔄 Volume divergence (price/volume inconsistency)
  Returns a structured JSON output like:

  {
    "summary": "Bearish signs detected on 1-day chart. A shooting star formed on high volume while RSI is elevated. Volume divergence seen on 1h chart as price rises but volume weakens.",
    "candlestickPatterns": {
      "1h": "None",
      "1d": "Shooting Star"
    },
    "volumeDivergence": {
      "1h": "Bearish",
      "1d": "None"
    },
    "ohlcv": {
      "1h": {
        "close": 174.1,
        "volume": 1430000,
        "high": 175.0,
        "low": 173.8
      },
      "1d": {
        "close": 188.3,
        "volume": 21234000,
        "high": 189.9,
        "low": 183.7
      }
    }
  }

  🛠️ Setup Instructions

  Import the Workflow

     Name it: Tesla_1hour_and_1day_Klines_Tool

  Install Dependencies

     ✅ Tesla Financial Market Data Analyst Tool (this is the trigger parent)

  Add Required Credentials

     Alpha Vantage Premium → via HTTP Query Auth
     OpenAI GPT-4.1 → via OpenAI credentials

  Verify Web Access

     This tool fetches data live from Alpha Vantage:

       /query?function=TIME_SERIES_INTRADAY&interval=60min
       /query?function=TIME_SERIES_DAILY

  Run via Execute Workflow Trigger
     This tool will activate only when called by the Financial Analyst Agent. Inputs:

     message (optional)
     sessionId (used for memory continuity)

  🧠 Agent Architecture

  | Component               | Description                                         |
  | ----------------------- | --------------------------------------------------- |
  | Candlestick Data Hour | Fetches 60min TSLA candles via Alpha Vantage        |
  | Candlestick Data Day  | Fetches daily TSLA candles via Alpha Vantage        |
  | OpenAI Chat Model     | GPT-4.1 reasoning engine for pattern detection      |
  | Simple Memory         | Maintains short-term logic context                  |
  | Tesla Klines Agent    | LangChain AI agent analyzing both candle and volume |

  📌 Sticky Notes Overview

  📘 Workflow Purpose
  🧠 Short-Term Memory Notes
  🔍 1h/1d Data Fetch Logic
  📉 Candlestick Pattern Types Detected
  📊 Volume Divergence Definitions
  🤖 GPT-4.1 Prompt Configuration

  🔐 Licensing & Support

  © 2025 Treasurium Capital Limited Company
  Logic, pattern reasoning, and prompt structure are proprietary IP.

  🔗 Don Jayamaha – LinkedIn
  🔗 n8n Creator Profile

  🚀 Automate technical edge: detect TSLA candle reversals and volume anomalies with precision using GPT-4.1 and Alpha Vantage.
  Required by the Tesla Financial Market Data Analyst Tool.

nodes_used:
  ["n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.lmChatOpenAi","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, 5292 characters]


name: Bulk Delete HubSpot Contacts from Uploaded Excel/CSV File
author_name: Akhil Varma Gadiraju
author_username: akhilv7
categories: []
created_at: 2025-05-16T10:12:10.320Z
updated_at: 2025-05-16T10:12:10.320Z
url: https://n8n.io/workflows/4100
scraped_at: 2025-12-24 13:02:45
description:
  Bulk Contact Deletion from HubSpot via Uploaded Excel / CSV File

  This workflow allows you to automate the deletion of HubSpot contacts based on email addresses provided in an uploaded Excel (.xlsx) file. It's ideal for bulk-cleaning outdated or invalid contact data.

  ✅ Prerequisites

  Before using this workflow, ensure you have the following:

  A valid HubSpot App Token with permissions to search and delete contacts.
  An Excel (.xlsx) file with a column labeled emails containing the contact emails to be deleted.
  n8n self-hosted or cloud environment with:
    Webhook node enabled and accessible.
    HubSpot node credentials configured.
  Basic familiarity with n8n node configuration for custom adjustments (optional).

  📃Sample Document




  Download
  🧠 n8n Workflow: Delete HubSpot Contacts from an Uploaded Excel File

  This n8n workflow allows you to upload an Excel file containing contact email addresses. It will check each one in HubSpot and delete the contact if it exists.

  🔗 Workflow Overview

  📥 1. Trigger via Webhook (POST)
  The workflow starts when a .xlsx file is uploaded via an HTTP POST request to the webhook. This Excel file should contain a column with contact email addresses.

  📄 2. Extract Data from Excel
  The uploaded file is parsed, and its rows are converted into structured JSON items, making each email address available for further processing.

  🧹 3. Normalize Data
  The data is cleaned and normalized — for example, mapping column headers (e.g., emails) into a standard email field, ensuring consistent downstream logic.

  🔁 4. Loop Through Contacts
  Each row (contact) is processed individually using batch looping. This allows for fine-grained error handling and sequential processing.

  🔎 5. Search for Contact in HubSpot
  For each contact, a search query is made in HubSpot based on the email address. The workflow only fetches the first result (if any).

  🧪 6. Check if Contact Exists
  An IF condition checks whether the contact was found (i.e., if a HubSpot contact ID exists):
  ✅ Yes → proceed to delete the contact.
  ❌ No → skip deletion and continue to the next.

  🗑️ 7. Delete Contact
  If a contact exists, it is deleted from HubSpot using its internal contact ID.

  🛠️ 8. Optional Placeholder for Post-Processing
  A placeholder node named “Replace Me” is included for any custom logic you may want to add after the deletion step, such as:
  Logging
  Notifications
  Writing to external storage

  ✅ Use Cases

  Bulk delete old or bounced email addresses from HubSpot.
  Clean up contacts based on external suppression lists.
  Automate regular CRM hygiene processes.

  💡 Suggested Enhancements

  ✍️ Log results to Google Sheets or a database
  📬 Send completion report via email or Slack
  🔁 Add retry logic for temporary API failures
  🔍 Validate email format before making requests

  📎 Requirements

  n8n (self-hosted or cloud)
  HubSpot App Token (set up in n8n credentials)
  Excel file (.xlsx) with a column for email

  📦 Files

  No external files are required. All logic is contained within the n8n workflow.

  🚀 Getting Started

  Deploy the workflow in n8n.
  Copy the webhook URL and use it in your app or API client (like Postman).
  Upload an Excel file containing contact emails via POST request.
  Watch as it searches and deletes matches in HubSpot.

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","n8n-nodes-base.hubspot","n8n-nodes-base.hubspot","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.extractFromFile","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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


name: Manage Calendar with Voice & Text using GPT-4, Telegram & Google Calendar
author_name: Marian Tcaciuc
author_username: mariantk
categories: []
created_at: 2025-05-16T11:08:27.232Z
updated_at: 2025-05-16T11:08:27.232Z
url: https://n8n.io/workflows/4102
scraped_at: 2025-12-24 13:02:41
description:
  Manage Calendar with Voice & Text Commands using GPT-4, Telegram & Google Calendar

  This n8n workflow transforms your Telegram bot into a personal AI calendar assistant, capable of understanding both voice and text commands in Romanian, and managing your Google Calendar using the GPT-4 model via LangChain.

  Whether you want to create, update, fetch, or delete events, you can simply speak or write your request to your Telegram bot — and the assistant takes care of the rest.

  🚀 Features

  Voice command support using Telegram voice messages (.ogg)
  Transcription using OpenAI Whisper
  Natural language understanding with GPT-4 via LangChain
  Google Calendar integration:
    ✅ Create Events
    🔁 Update Events
    ❌ Delete Events
    📅 Fetch Events
  Responses sent back via Telegram

  🛠️ Step-by-Step Setup Instructions

  1. Create a Telegram Bot
  Go to @BotFather on Telegram.
  Send /newbot and follow the instructions.
  Save the Bot Token.

  2. Configure Telegram Trigger Node
  Paste the Telegram token into the Telegram Trigger and Telegram nodes.
  Set updates to ["message"].

  3. Set up OpenAI Credentials
  Get an OpenAI API key from https://platform.openai.com
  Create a credential in n8n for OpenAI.
  This is used for both transcription and AI reasoning.

  4. Set up Google Calendar
  In Google Cloud Console:
    Enable Google Calendar API
    Set up OAuth2 credentials
    Add your n8n redirect URI (usually https://yourdomain/rest/oauth2-credential/callback)
  Create a credential in n8n using Google Calendar OAuth2
  Grant access to your calendar (e.g., "Family" calendar).

  ⚙️ Customization Options

  🗣️ Change Language or Locale
  The transcription node uses "en" for English. Change to another locale if needed.

  ✏️ Edit Prompt
  You can modify the prompt in the AI Agent node to include your name, work schedule, or specific behavior expectations.

  📆 Change Calendar Logic
  Adjust time ranges or filters in the Get Events node
  Add custom logic before Create Event (e.g., validation, conflict checks)

  📚 Helpful Tips

  Make sure n8n has HTTPS enabled to receive Telegram updates.
  You can test the flow first using only text, then voice.
  Use AI memory or vector stores (like Supabase) if you want context-aware planning in the future.

nodes_used:
  ["n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.telegramTrigger","n8n-nodes-base.if","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","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","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4376 characters]


name: Generate Invoices, Save to Drive and Send Email to Customer with JS + G Sheets
author_name: Joseph
author_username: mjomba
categories: []
created_at: 2025-05-16T11:59:58.245Z
updated_at: 2025-05-16T11:59:58.245Z
url: https://n8n.io/workflows/4105
scraped_at: 2025-12-24 13:02:42
description:
  This workflow automates invoice generation from form submissions, ensuring unique order IDs, creating PDF invoices, storing files, emailing customers, and logging invoice data — all seamlessly integrated.

  🔹 Workflow Overview

  Trigger (Webhook)
     Starts when an order form is submitted, capturing customer and order details.

  Generate Random Order ID
     A Function node creates a unique alphanumeric invoice ID (e.g., INV-X92B7D).

  Check for Duplicate Order ID
     Google Sheets looks up the generated order ID in your invoice log sheet to prevent duplicates.

  Conditional Check (IF Node)

     If the ID already exists → regenerates a new ID (loops back)
     If unique → proceeds to invoice creation

  Prepare Invoice Data
     A Set node formats customer info, date, order items, and the unique order ID to fit your invoice template.

  Convert HTML to PDF
     HTTP Request node sends your invoice HTML to the RapidAPI HTML-to-PDF service and receives the PDF file.

  Upload PDF to Cloud Storage
     Save the PDF in Google Drive or Dropbox with a clear file name like Invoice-INV-X92B7D.pdf.

  Send Invoice Email to Customer
     Email node attaches the PDF and includes the order ID in the email subject/body.

  Log Invoice Details
     Append invoice data (customer info, order ID, total, PDF link) to your Google Sheet for tracking.

  ⚙️ Node Details & Setup

  1. Webhook Trigger

  Configure to receive form submissions (order details like name, email, items, total).

  2. Function: Generate Random Order ID

  Sample JS code generates unique IDs prefixed by INV-.

  3. Google Sheets: Lookup Row

  Set up connection to your invoice log sheet.
  Search for existing order ID to avoid duplicates.

  4. IF Node: Check Order ID Existence

  Condition: If order ID found → loop to regenerate.
  Else → continue workflow.

  5. Set Node: Prepare Invoice HTML

  Define variables like customer name, date, items, and order ID.
  This data populates your HTML invoice template.

  6. HTTP Request: Convert HTML to PDF

  API URL to get your key
  Send invoice HTML in the request body.
  Receive PDF file blob or download URL.

  7. Google Drive (or Dropbox) Upload

  Upload the PDF file.
  Use file name format: Invoice-{{$json["order_id"]}}.pdf

  8. Email Node

  Recipient: customer email from the form data.
  Attach generated PDF.
  Include order ID in email subject or body for reference.

  9. Google Sheets: Append Row

  Log invoice metadata to keep records updated.

  📁 Google Sheets Template

  You can make a copy of the invoice log template here

  This sheet includes columns for order\_id, customer name, email, total, and invoice PDF link. Customize it as needed.

  📌 Additional Notes

  Customize the invoice HTML template inside the Set node to match your branding.
  Ensure API credentials for RapidAPI, Google Drive/Dropbox, and email are properly set up in your n8n credentials.
  You can expand this workflow by adding payment processing or SMS notifications.

  Need help or want a custom workflow?

  Reach out via email at joseph@uppfy.com.

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.emailSend","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4864 characters]


name: Resume Data Extraction and Storage in Supabase from Email Attachments
author_name: Belgacem Dhiflaoui
author_username: kacemdh
categories: []
created_at: 2025-05-16T13:42:57.033Z
updated_at: 2025-05-16T13:42:57.033Z
url: https://n8n.io/workflows/4106
scraped_at: 2025-12-24 13:02:43
description:
  Description
  What Problem Does This Solve? 🛠️

  This workflow automates the process of extracting key information from resumes received as email attachments and storing that data in a structured format within a Supabase database. It eliminates the manual effort of reviewing each resume, identifying relevant details, and entering them into a database. This streamlines the hiring process, making it faster and more efficient for recruiters and HR professionals.

  Target audience: Recruiters, HR departments, and talent acquisition teams.

  What Does It Do? 🌟
  Monitors a designated email inbox for new messages with resume attachments.
  Extracts key information such as name, contact details, education, work experience, and skills from the attached resumes.
  Cleans and formats the extracted data.
  Stores the processed data securely in a Supabase database.

  Key Features 📋

  Automatic email monitoring for resume attachments.
  Intelligent data extraction from various resume formats (e.g., PDF, DOC, DOCX).
  Customizable data fields to capture specific information.
  Seamless integration with Supabase for data storage.
  Uses OpenRouter to streamline API key management for services such as AI-powered parsing.

  Setup Instructions

  Prerequisites ⚙️

  n8n Instance**: Self-hosted or cloud instance of n8n.
  Email Account**: Gmail account with Gmail API access for receiving resumes.
  Supabase Account**: A Supabase project with a database/table ready to store extracted resume data. You'll need the Supabase URL and API key.
  OpenRouter Account**: For managing AI model API keys centrally when using LLM-based resume parsing.

  Installation Steps 📦
  1. Import the Workflow:

  Copy the exported workflow JSON.
  Import it into your n8n instance via “Import from File” or “Import from URL”.

  2. Configure Credentials:

  In n8n &gt; Credentials, add credentials for:
    Email account (Gmail API): Provide Client ID and Client Secret from the Google Cloud Platform.
    Supabase: Provide the Supabase URL and the anon public API key.
    OpenRouter (Optional): Add your OpenRouter API key for use with any AI-powered resume parsing nodes.

  Assign these credentials to their respective nodes:

    Gmail Trigger → Email credentials.
    Supabase Insert → Supabase credentials.
     AI Parsing Node → OpenRouter credentials.

  3. Set Up Supabase Table:

  Create a table in Supabase with columns such as:
  name, email, phone, education, experience, skills, received_date, etc.

  Make sure the field names align with the structure used in your workflow.

  4. Customize Nodes:

  Parsing Node(s):* Modify the workflow to use an *OpenAI model* directly for field extraction, replacing the *Basic LLM Chain** node that utilizes OpenRouter.

  5. Test the Workflow:

  Send a test email with a resume attachment.
  Check n8n's execution log to confirm the workflow triggered, parsed the data, and inserted it into Supabase.
  Verify data integrity in your Supabase table.

  How It Works
  High-Level Workflow 🔍

  Email Monitoring: Triggered when a new email with an attachment is received (via Gmail API).
  Attachment Check: Verifies the email contains at least one attachment.
  Prepare Data: Extracts the attachment and prepares it for analysis.
  Data Extraction: Uses OpenRouter-powered LLM (if configured) to extract structured information from the resume.
  Data Storage: The structured information is saved into the Supabase database.

  Node Names and Actions (Example)

  Gmail Trigger:** Triggers when a new email is received.
  IF**: Checks whether the received email includes any attachments.
  Get Attachments:** Retrieves attachments from the triggering email.
  Prepare Data:** Prepares the attachment content for processing.
  Basic LLM Chain:** Uses an AI model via OpenRouter to extract relevant resume data and returns it as structured fields.
  Supabase-Insert:** Inserts the structured resume data into your Supabase database.

nodes_used:
  ["n8n-nodes-base.gmailTrigger","n8n-nodes-base.extractFromFile","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.httpRequest","n8n-nodes-base.supabase","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.supabase","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.supabase","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.stickyNote"]

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


name: Create AI Videos with OpenAI Scripts, Leonardo Images & HeyGen Avatars
author_name: Abdellah Homrani
author_username: adamcrafts
categories: []
created_at: 2025-05-16T14:23:39.655Z
updated_at: 2025-05-16T14:23:39.655Z
url: https://n8n.io/workflows/4107
scraped_at: 2025-12-24 13:02:41
description:
  Short Content Automation 🎬 (AI Video System with Bulk Gen, Avatar & Music Customization)

  Overview 🎯

  The "Short Content" automation is a powerful, all-in-one solution designed to streamline the creation of short videos for social media, marketing, or personal projects. Leveraging cutting-edge AI tools and seamless workflows, this automation handles everything from scriptwriting to video assembly—saving time and effort while delivering professional results.


      
        Best Short Content AI System - Watch Video
  Problem 🛠️

  Creating short videos manually is time-consuming and expensive. Businesses and creators struggle with:

  Hiring writers, designers, and editors.  
  Juggling multiple tools for scripts, visuals, and editing.  
  Inconsistent quality and slow turnaround times.  

  This automation solves these challenges with a fully AI-driven, one-click workflow.

  Solution ✅

  A no-code, end-to-end automation that:

  Writes scripts using AI (LLM) or manual input.  
  Generates visuals (Leonardo AI) or acting scenes (RunwayML).  
  Edits and assembles videos (JSON2Video).  
  Generates avatars using HeyGen or Captions.ai.  
  Tracks progress and analytics in Baserow.  

  🔥 Result:  
  High-quality short videos in minutes, not days—with zero manual effort.

  Setup ⚙️ (4–8 minutes)

  Upload Blueprint to N8N  
     Import the provided JSON workflow into your N8N instance.

  Upload Database to Baserow (Free)  
  Follow the setup video step-by-step.

  How It Works 🌟

  Start with a Pre-Built Form  
     Fill in the included Baserow form with your video requirements.

  Generate Videos Instantly  
     Single Video Mode: Run one video at a time for quick results.  
     Bulk Mode: Upload a CSV or use Baserow to queue unlimited videos—perfect for scaling content.

  Workflow Handles the Rest  

  Manage & Iterate  
     Track all videos in Baserow: Edit inputs, retry failed jobs, or adjust styles anytime.

  What’s Included 📦

  ✅ Baserow Template: Pre-configured database.  
  ✅ N8N JSON Blueprint: Ready-to-use workflow.  
  ✅ Step-by-Step Video Guides: Setup & usage instructions.

  Customization 🎨

  🔧 Video Generation Customization

  Script Options**: Auto-generate using AI or write manually.  
  Captions**: Customize type, color, and style.  
  Video Types**: Storytelling, trends, educational, etc.  
  Audio**: Add background music easily.  
  Avatars**:  
    Switch between HeyGen and Captions.ai.  
    Adjust size, position, voice, and appearance.

  ⚙️ System Customization

  N8N Workflow**: Easily customizable for new integrations, prompts, and logic.  
  Baserow Database**: Modify options or add new ones to match your workflow.

  🌐 Explore more workflows

  ❤️ Buy more workflows at: adamcrafts
  🦾 Custom workflows at: adamcrafts@cloudysoftwares.com

  &gt; Build once, customize endlessly, and scale your video content like never before. 🚀

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.switch","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.if","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.splitInBatches","n8n-nodes-base.code","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.baserow","n8n-nodes-base.baserow","n8n-nodes-base.set","n8n-nodes-base.baserow","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.aggregate","n8n-nodes-base.switch","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","n8n-nodes-base.switch","n8n-nodes-base.code","n8n-nodes-base.executeWorkflow","n8n-nodes-base.code","n8n-nodes-base.webhook","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.baserow","n8n-nodes-base.stopAndError","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5164 characters]


name: AI image generator from text built on fal.ai
author_name: n8n Team
author_username: n8n-team
categories: []
created_at: 2025-05-16T14:29:12.278Z
updated_at: 2025-05-16T14:29:12.278Z
url: https://n8n.io/workflows/4108
scraped_at: 2025-12-24 13:02:42
description:
  Who this template is for

  This template is for developers, content creators, or application builders who want to integrate an AI-powered text-to-image generation service into their applications or systems via an API endpoint.

  Use case

  Creating a secure API endpoint that converts text prompts into AI-generated images, with built-in content moderation to prevent inappropriate content generation. This can be used for creative applications, content creation tools, prototyping interfaces, or any system that needs on-demand image generation.

  How this workflow works

  Receives text prompt through a webhook endpoint
  Filters the prompt for inappropriate content using AI moderation
  Submits valid prompts to the Fal.ai Flux image generation service
  Polls for completion status and retrieves the generated image when ready
  Returns the image results in a structured JSON format to the client

  Set up steps

  Create a Fal.ai account and obtain API credentials
  Configure the HTTP Header Auth credentials with your Fal.ai API key
  Set up an OpenAI API key for the content moderation component
  Deploy the workflow and note the webhook URL for your API endpoint
  Test the endpoint by sending a POST request with a JSON body containing a "prompt" field

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","@n8n/n8n-nodes-langchain.textClassifier","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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


name: Clone Viral TikToks with AI Avatars & Auto-Post to 9 Platforms using Perplexity & Blotato
author_name: Dr. Firas
author_username: drfiras
categories: []
created_at: 2025-05-16T15:33:36.828Z
updated_at: 2025-05-16T15:33:36.828Z
url: https://n8n.io/workflows/4110
scraped_at: 2025-12-24 13:02:41
description:
  Clone a viral TikTok with AI and auto-post it to 9 platforms using Perplexity & Blotato

  Who is this for?

  This workflow is perfect for:
  Content creators looking to repurpose viral content
  Social media managers who want to scale short-form content across multiple platforms
  Entrepreneurs and marketers aiming to save time and boost visibility with AI-powered automation

  What problem is this workflow solving?

  Reproducing viral video formats with your own branding and pushing them to multiple platforms is time-consuming and hard to scale. This workflow solves that by:
  Cloning a viral TikTok video’s structure
  Generating a new version with your avatar
  Rewriting the script, caption, and overlay text
  Auto-posting it to 9 social media platforms — without manual uploads

  What this workflow does

  From a simple Telegram message with a TikTok link, the workflow:

  Downloads a TikTok video and extracts its thumbnail, audio, and caption
  Transcribes the audio and saves original text into Google Sheets
  Uses Perplexity AI to suggest a new content idea in the same niche
  Rewrites the script, caption, and overlay using GPT-4o
  Generates a new video with your avatar using Captions.ai
  Adds subtitles and overlay text with JSON2Video
  Saves metadata to Google Sheets for tracking
  Sends the final video to Telegram for preview
  Auto-publishes the video to Instagram, YouTube, TikTok, Facebook, LinkedIn, Threads, X (Twitter), Pinterest, and Bluesky via Blotato

  Setup

  Connect your Telegram bot to the trigger node.
  Add your OpenAI, Perplexity, Cloudinary, Captions.ai, and Blotato API keys.
  Make sure your Google Sheet is ready with the appropriate columns.
  Replace the default avatar name in the Captions.ai node with yours.
  Fill in your social media account IDs in the "Assign Platform IDs" node.
  Test by sending a TikTok URL to your Telegram bot.

  How to customize this workflow to your needs

  Change avatar output style**: adjust resolution, voice, or avatar ID.
  Refine script structure**: tweak GPT instructions for different tone/format.
  Swap Perplexity with ChatGPT or Claude** if needed.
  Filter by platform**: disable any Blotato nodes you don’t need.
  Add approval step**: insert a Telegram confirmation node before publishing.
  Adjust subtitle style or overlay text font** in JSON2Video.

  📄 Documentation: Notion Guide

  Need help customizing?
  Contact me for consulting and support : Linkedin / Youtube

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","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.telegramTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.telegram","n8n-nodes-base.telegram"]

workflow_json_compressed:
  [encoded data, 10960 characters]


name: Create AI-Powered WhatsApp Quiz Bot with GPT-4o-mini and Supabase Storage
author_name: Danielle Gomes
author_username: daniellegomes
categories: []
created_at: 2025-05-16T16:59:16.154Z
updated_at: 2025-05-16T16:59:16.154Z
url: https://n8n.io/workflows/4114
scraped_at: 2025-12-24 13:02:44
description:
  Quiz Assistant via WhatsApp with Supabase and OpenAI

  Create a quiz assistant that helps users study a topic of their choice through WhatsApp. Using Supabase and OpenAI, this workflow captures missing user data, stores it, and delivers dynamic quizzes tailored to each topic.

  Main Use Cases

  Guide users through personalized study sessions
  Collect and store user preferences (name + topic)
  Automate quiz creation with AI
  Deliver interactive content via WhatsApp

  How It Works

  This workflow is composed of three main paths:

  1. User Info Collection

  Triggered by an incoming WhatsApp message
  Retrieves existing user data from Supabase
  Checks if the name and topic are already defined
  If not, sends WhatsApp prompts to collect missing info
  Updates Supabase with new entries

  2. AI Quiz Generation

  Once name and topic are confirmed, the Merge node consolidates all inputs
  Data is sent to the AI Agent (OpenAI Chat + Memory)
  The agent generates a quiz based on the selected topic

  3. Response Delivery

  The quiz is sent back to the user via WhatsApp
  Flow ends, ready to restart with the next interaction

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

workflow_json_compressed:
  [encoded data, 4716 characters]


name: Analyze Crypto Market with CoinGecko: Volatility Metrics & Investment Signals
author_name: ist00dent
author_username: ist00dent
categories: []
created_at: 2025-05-16T17:00:04.497Z
updated_at: 2025-05-16T17:00:04.497Z
url: https://n8n.io/workflows/4115
scraped_at: 2025-12-24 13:02:42
description:
  This n8n template lets you automatically pull market data for the cryptocurrencies from CoinGecko every hour, calculate custom volatility and market-health metrics, classify each coin’s price action into buy/sell/hold/neutral signals with risk ratings, and expose both individual analyses and a portfolio summary via a webhook. It’s perfect for crypto analysts, DeFi builders, or portfolio managers who want on-demand insights without writing a single line of backend code.

  🔧 How it works
  Schedule Trigger fires every hour (or interval you choose).
  HTTP Request (CoinGecko) fetches the top 10 coins by market cap, including 24 h, 7 d, and 30 d price change percentages.
  Split In Batches ensures each coin is processed sequentially.
  Function (Calculate Market Metrics) computes:
    A weighted volatility score
    Market-cap-to-volume ratio
    Price-to-ATH ratio
    Composite market score

  IF & Switch nodes categorize each coin’s 24 h price action (up &gt;5%, down &gt;5%, high volatility, or stable) and append:
    signal (BUY/SELL/HOLD/NEUTRAL)
    riskRating (High/Medium/Low/Unknown)
    recommendation & investmentStrategy guidance

  NoOp & Merge nodes consolidate each branch back into a single data stream.

  Function (Generate Portfolio Summary) aggregates all analyses into:
    A Markdown portfolioSummary
    Counts of buy/sell/hold/neutral signals
    Risk distribution

  Webhook Response returns the full JSON payload with individual analyses and the summary for downstream consumers.

  👤 Who is it for?
  This workflow is ideal for:

  Crypto researchers and analysts who need scheduled market insights

  DeFi and trading bot developers looking to automate signal generation

  Portfolio managers seeking a no-code overview of top assets

  Automation engineers exploring API integration and data enrichment

  📑 Data Structure
  When you trigger the webhook, you’ll receive a JSON object containing:

  individualAnalyses: Array of { coin, symbol, currentPrice, priceChanges, marketMetrics, signal, riskRating, recommendation }

  portfolioSummary: Markdown report summarizing signals, risk distribution, and top opportunity

  marketSignals: Counts of each signal type

  riskDistribution: Counts of each risk rating

  timestamp: ISO string of analysis time

  ⚙️ Setup Instructions
  Import: In n8n Editor → click “Import from JSON” → paste this workflow JSON.

  Configure Schedule: Double-click the Schedule Trigger → set your desired interval (default: every hour).

  Webhook Path: Open the Webhook node → choose a unique path (e.g., /crypto‐analysis) and “POST”.

  Activate: Save and activate the workflow.

  Test:
    Open the webhook url to other tab or use cURL
  curl -X POST https://&lt;your-n8n-host&gt;/webhook/&lt;path&gt;

  You’ll get back a JSON payload with both portfolioSummary and individualAnalyses.

  📝 Tips
  Rate-Limit Handling: If CoinGecko returns 429, insert a Delay node (e.g., 500 ms) after the HTTP Request.
  Batch Size: Default is 1 coin at a time; you can bump it to parallelize.
  Customization: Tweak volatility weightings or add new metrics directly in the “Calculate Market Metrics” Function node.
  Extension: Swap CoinGecko for another API by updating the HTTP Request URL and field mappings.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.function","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.noOp","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.noOp","n8n-nodes-base.function","n8n-nodes-base.noOp","n8n-nodes-base.function","n8n-nodes-base.splitInBatches","n8n-nodes-base.switch","n8n-nodes-base.splitOut","n8n-nodes-base.respondToWebhook","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6588 characters]


name: AI-Powered Telegram Bot for Data Extraction with Bright Data MCP
author_name: Cyril Nicko Gaspar
author_username: cngaspar
categories: []
created_at: 2025-05-16T17:41:31.909Z
updated_at: 2025-05-16T17:41:31.909Z
url: https://n8n.io/workflows/4116
scraped_at: 2025-12-24 13:02:44
description:
  📌 AI Agent Template with Bright Data MCP Tool Integration

  This template enables natural-language-driven automation using Bright Data MCP tools. It extracts all available tools from MCP, processes the user’s query through an AI agent, then dynamically selects and executes the appropriate tool.

  ❓ Problem It Solves

  Traditional automation often requires users to understand APIs, interfaces, or scripts to perform backend tasks. The Bright Data MCP integration solves this by allowing natural language interaction, intelligently classifying user intent, and managing context-aware execution of complex operations—ideal for data extraction, customer support, and workflow orchestration.

  🧰 Pre-requisites

  Before deploying this template, make sure you have:

  An active N8N instance (self-hosted or cloud).
  A valid OpenRouter API key (or another compatible AI model).
  Telegram bot and its API token
  Access to the Bright Data MCP API with credentials.
  Basic familiarity with N8N workflows and nodes.

  ⚙️ Setup Instructions

  Setup and obtain API token and other necessary information from Bright Data

     In your Bright Data account, obtain the following information:
     API token
     Web Unlocker zone name (optional)
     Browser Zone name (optional)
  Host SSE server from STDIO command
     The methods below will allow you to receive SSE (Server-Sent Events) from Bright Data MCP via a local Supergateway or Smithery

     **

     Method 1: Run Supergateway in a separate web service (Recommended)

     This method will work for both cloud version and self-hosted N8N.

     Signup to any cloud services of your choice (DigitalOcean, Heroku, Hetzner, Render, etc.).

  For NPM based installation:

     Create a new web service.
     Choose Node.js as runtime environment and setup a custom server without repository.
     In your server’s settings to define environment variables or .env file, add:
  `API_TOKEN=your_brightdata_api_token
  WEB_UNLOCKER_ZONE=optional_zone_name
  BROWSER_ZONE=optional_browser_zone_name`
     Paste the following text as a start command: npx -y supergateway --stdio "npx -y @brightdata/mcp" --port 8000 --baseUrl http://localhost:8000 --ssePath /sse --messagePath /message
     Deploy it and copy the web server URL, then append /sse into it.
     Your SSE server should now be accessible at: https://your_server_url/sse

  For Docker based installation:
     Create a new web service.
     Choose Docker as the runtime environment.
     Set up your Docker environment by pulling the necessary images or creating a custom Dockerfile.
     In your server’s settings to define environment variables or .env file, add:
  `API_TOKEN=your_brightdata_api_token
  WEB_UNLOCKER_ZONE=optional_zone_name
  BROWSER_AUTH=optional_browser_auth`
      Use the following Docker command to run Supergateway: `docker run -it --rm -p 8000:8000 supercorp/supergateway \
      --stdio "npx -y @brightdata/mcp /" \
      --port 8000`
     Deploy it and copy the web server URL, then append /sse into it.
     Your SSE server should now be accessible at: https://your_server_url/sse

     For more installation guides, please refer to https://github.com/supercorp-ai/supergateway.git.
     **

     Method 2: Run Supergateway in the same web service as the N8N instance

     This method will only work for self-hosted N8N.

  a. Set Required Environment Variables

     In your server's settings to define environment variables or .env file, add:

        API_TOKEN=your_brightdata_api_token
     WEB_UNLOCKER_ZONE=optional_zone_name
     BROWSER_ZONE=optional_browser_zone_name
  b. Run Supergateway in Background

        npx -y supergateway --stdio "npx -y @brightdata/mcp" --port 8000 --baseUrl http://localhost:8000 --ssePath /sse --messagePath /message
        Use the command above to execute it through the cloud shell or set it as a pre-deploy command.


     Your SSE server should now be accessible at:  
     http://localhost:8000/sse

   
     For more installation guides, please refer to https://github.com/supercorp-ai/supergateway.git.

     *

     *Method 3: Configure via Smithery.ai* (Easiest)
  If you don't want additional setup and want to test it right away, follow these instructions:

     Visit https://smithery.ai/server/@luminati-io/brightdata-mcp/tools to:
     Signup (if you are new to Smithery)
     Create an API key
     Define environment variables via a profile
     Retrieve your SSE server HTTP URL

  Import the Workflow

     Open N8N.
     Import the JSON workflow file included with this template.
     Update any nodes referencing external services (e.g., OpenRouter, Telegram).

  Setup Telegram Integration

     If you haven't setup a bot in Telegram, below is the instruction how to create one using BotFather:
       Search for @BotFather in Telegram and start a conversation with it.
       Send the command /newbot to create a new bot. You'll be prompted to enter a name and a unique username for your bot.
       BotFather will provide you with an access token, which you'll need to use to interact with the bot's API. 

     Edit the HTTP Request node in the workflow.
     Configure the URL as follows:  
            https://api.telegram.org/bot+your_telegram_bot_token+/setWebhook?url=+your_webhook_url
          Replace +your_telegram_bot_token+ with your actual Telegram bot token.
     Replace +your_webhook_url+ with the URL from the Webhook Trigger node in the workflow.
     This will set up Telegram to forward messages to your n8n agent.

  🔄 Workflow Functionality (Summary)

  The user submits a message via chat.
  Memory** nodes retain context for multi-turn conversations.
  The mapped tool is executed and results are returned contextually.

  🧠 Optional memory buffers and memory manager nodes keep the interaction context-aware.

  🧩 Use Cases

  Data Scraping on Demand**: Launch scraping tasks via chat.
  Lead Generation Bots**: Enrich or validate leads with MCP tools.
  AI-Powered Customer Support**: Classify and answer queries with real-time data tools.
  Workflow Assistants**: Let teams run backend processes like lookups or report generation using plain language.

  🛠️ Customization

  Classifier Prompt & Logic**: Tweak the AI’s prompt and tool-matching schema to better fit your use case.
  Memory Configuration**: Adjust retention policies and context depth.
  Tool Execution Sub-Workflow**: Extend for retries, logging, or chaining actions.
  Omni-Channel Support**: Connect via webhooks to chat interfaces like Slack, WhatsApp, Telegram, or custom UIs.

  ✅ Summary

  This template equips you with a powerful no-code/low-code AI agent that translates conversation into real-world action. Using Bright Data’s MCP tools through natural language, it enables teams to automate and scale data-driven tasks effortlessly.

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.webhook","n8n-nodes-base.telegram","n8n-nodes-base.executeWorkflow","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.mcpClientTool","n8n-nodes-base.n8n","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.wait","n8n-nodes-base.executeWorkflowTrigger"]

workflow_json_compressed:
  [encoded data, 4160 characters]


name: Track HDFC Credit Card Transactions with Google Sheets and Telegram Notifications
author_name: Krishna Kumar Eswaran
author_username: mrprogrammer
categories: []
created_at: 2025-05-17T01:19:51.323Z
updated_at: 2025-05-17T01:19:51.323Z
url: https://n8n.io/workflows/4128
scraped_at: 2025-12-24 13:02:45
description:
  🧠 Problem This Solves
  Managing credit card expenses can be tricky, especially when you want to stay transparent and keep your spouse in the loop. Most banks don't offer real-time notification sharing with family members, and manually updating expenses takes time and effort. This n8n workflow automates the entire process: tracking your HDFC credit card usage, logging it in Google Sheets, and sending an instant Telegram notification to your spouse.

  👥 Who This Template Is For
  Couples who want shared visibility of credit card spending

  Individuals looking for automated personal finance tracking

  Anyone using HDFC Credit Card with email alerts enabled

  n8n users who want to integrate Gmail, Google Sheets, and Telegram

  ⚙️ Workflow Breakdown
  Here’s how the automation works:

  Gmail Trigger – Monitors your Gmail inbox for credit card transaction alerts from HDFC Bank.

  Email Parser – Extracts transaction details like amount, merchant name, date, and card type.

  Google Sheets Node – Logs the parsed transaction data into a structured Google Sheet for record-keeping.

  Telegram Node – Sends a message to your wife’s Telegram account with transaction details for instant notification.

  🛾 Step-by-Step Setup Instructions
  Prerequisites
  An HDFC Credit Card with email alerts enabled

  A Gmail account connected to n8n

  A Google Sheet created with columns like Date, Amount, Merchant, Card, etc.

  A Telegram Bot and your wife’s Telegram Chat ID

  Set up Gmail Trigger
  Use the Gmail Trigger Node to monitor incoming emails from alerts@hdfcbank.net or similar.

  Filter emails with subject line containing keywords like Credit Card Transaction Alert.

  Extract Email Content
  Use the HTML Extract or Regex node to parse out transaction amount, merchant name, date, and card number from the email body.

  Log to Google Sheets
  Connect your Google Sheets account in n8n

  Use the Append Row node to add each transaction as a new row in your finance sheet.

  Send Telegram Message
  Set up a Telegram Bot and get the Chat ID of your wife’s Telegram account

  Format a message like:
  "💳 HDFC Transaction Alert: ₹5,000 at Amazon on 17 May via XXXX1234"

  Send it via the Telegram node

  🛠️ Customization Tips
  💡 Add Spending Limits: Add a condition node to alert only if the transaction exceeds a certain amount.

  🧾 Category Mapping: Use additional logic to classify expenses (e.g., Shopping, Dining) based on keywords.

  📊 Weekly Summary: Create another workflow that sends a weekly Telegram summary using data from Google Sheets.

  🔐 Security Tip: Mask part of the card number before sending the Telegram message for added security.

nodes_used:
  ["n8n-nodes-base.gmailTrigger","n8n-nodes-base.code","n8n-nodes-base.filter","n8n-nodes-base.telegram","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.telegram","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  H4sIAAAAAAAAE+1Z3W7cxhV+lQERIJKyXPN/SbmKK8myvU1t2fpJHFuCM5wZ7tLiDilyKFsR9qZArwOkvQ/QJyjQi7av0xdoHqFnhlySu95VJNkoECC+8JLDc75z5sw355wZXWkx1Ta18MxIH73dPjePrIPvuTnSetqECaxtXmkxLwTmhA2lnGuFzDO9iNhhEAQGDtzQtTzPHTiR4TshtUxr4BkBGwSEDWgIcjY2LcsJCRkEjDHAFWySJViw3ZzR4pCJMttNYYQJBgZEXrJpT+N4wsCaFIkF2sU5RccFHil1PCq0zdenIJRSJh+vqim4fuASH7u6SclAd3yMdd/1DN0bWC52wjD0qas10I8nOE7QUR6PRiyXsJeZHOY+1xWuHuKC9UdSqhXK0iIWccrBqO5ZRk+3DPAjwzlgCpYXMlxRnMwezwEwytPJ5pOHj3bRDuZnaCiDuZ2wXBTod1j9/n5MIxLCxz5n4kuwkuCQJUMqp6btbh/tPd4/+PbN8fOH8HionU6lG0lyFE+YMhJDPFUQJuA2GGQXLL98CTAljwW8T2JeChDtaRc4KUHCnZ5OAYRAbBkXMU4UjJrp/nYpxpZClREdOWKPDF/kr76/MDPPyRajhwlJSy7QV3lcjE3TsCzDsDQJLqP5NURBxcrsW9NeDckMa0AMw4GlIaHuBNFAx0FIdcfzBzYe+I7NvNbMBGeoLBhFOBcxSQoU02LlWhE5/7k18pev0NtitwoVcA6poBRoC30W86wUfZwka+t9MLwmA4u2vkTyt/+2SHnFhiFdv3/CT3gOzM05en3CEfy7qn4QkoKb7SuqDWzWv7PxafWgfk7va4shawMWhlZgk4EPYfID3bEGth74zNBtCDZzHIwtN2gDVpEPpTy5RCVXoRteE7JKfD5otrE8amkmBeSjJE/KaTx773zSLpoZAI9ZJL6uOKeBDQIWDxmXhi5YtdPrWeMkprgyrxUij4nQlI1JGHMs0hyGMafavNnZtg9sBzs49PWQeMAoaoZ6aLiGTszIDLBhExJEoJpmLK+wrmbBwHmOL5tPlXmeit2UCwxJD77Axh+Lo1qaX0qvupPaurpCn619voyln6/3W97UHJtOZ5ALAH9M0wztQ+jQEHTmdWMq9aotO0+Rzq6y7IHjmYGjGyyE1MdwqAdWFOoEDwZ4AAmamlFLkgK2PYKJxlFM1LyRSJFgCRvBesvnDF/EKzkzE1zYap7RsxRr3rFwnKZnqlo47oAS28c6pXK3DxxYG+KbOhswmaypjQNbWySaYO9l3tr6+acf/4E2jnLMC0yUmypvbsjN9/NPf/kz2ngIVWRzA30no6iCJQcgXN8hJEV+/Dva2J7IDCWF/vOnfzdy1Wgr+cM///uvH9DGASNxFrNKvhFuRlv5v/4NbRw/H6IDFrGcQW1Ez9I5neMsbr+BmuTuGAsVFHjGtKIxTh7FLKFq2jjLGKfbAvgfllVUI8jNbEmuni3BdhY3ufrxH0rDz4b28TfhNsavRu1yHzAoARTItZMKtP18eH2CNm3btphPgECEyiVz9cC1bZ0EHiNu6PhGRFrsBeauJE2RJbEY8h0syFjVom4ldX454yx6bDf+Bq4XmRGFMu8Fke6YRCYC6upGaLpGNDChA/E7dStNRwlDh2PGxGpvR0qqEer6ano3yI6F1HymLF5pb97kySzb1SU6iQvR1mNtFNMtQyVICA49YEWZiGOppC0MVpCacsyUyYimpJwAMSSvbmLJjL4pxud5cehvG5dne89xEV7QJ2+O3a++PT+Lnl4c7L98yYsXo/GTIr2FQ3IrVO3ZssaiE8yqv+jS9swbH2Xnr15GvmW9FNmLFUs1azU+5K7Td2E/Je/wZbFfCqjgkAPwrI+sjRiGiZ3IMYAeIdGd0DR07LJAN30vZFYUuE6EW8N770UOCQeJMUM5Oy9jmA+C+oSR7OWQ7AFu0YO4K9rEpgmBmlYIBM2cDKDsQ5bVgyjOCwF9iUouBY8hVwjVhVTaWOWzp3J3AUKNBU0MvK/dOyhOTvprr09OaL93+sX6Pdm+VGr5LLOt0IRSsNb/4sE69BMdLQgFW6EAOXoN7FxZU33uZ95onRdXYEgyiU7Sb+QRLychxCQulJF6JvMhALhuLB50316bp2gTQJLkwwCA3kIwHiwMgHYfUvNkbX0RRMYD9NuwPGifl9gsu6VhazEcDxYG5gAqiDRh/SQdrZ1odXE70Xr1PNfv103nvXvItDyjbxiLOm2Nk2rNHEETdIDpYVnY/Qxfls2xBB3sPdw5PkTDZ4tYqv5KGDnfxvbMvqcbrm65t+mV6wnVs+m1H1qvG487X5Uf0ofOWLcCb3ZjfusOPGC25xuep1sY/nOwzB6+a+k+9nzTJFBk/OAWzdWZPCxxfNv+yoE0Yhq/NVi//gYr8ohJI1cnxIMDnWFDwxIwpruMYMeFAzT1aItdZiq9yFpUqgIRc6TaC5Sn7+7QwJiygbGcD+sRSZNyUp/hqm7hSpOm21PKDeriYqWq6SIXRBHio8AaTgFcfRK/7gg1pxtTpdYw7aMc6fJV3rN0qPhRuAuclimpgF5rgtvD7mzezcLL4zKXXKQx9NhwnK37v5xN0gt5oaYoLt8rF5qBWr7u4FpcyiIMnZ0qPo0wwXyHHcMR9yitP8z1V4onn9qlGvQu/tRk+9QeNbB38aml3qd2q4t8F8/m+PupnVsAv4t/kOjeVK3fXbzDdJ8nne/Xejtn6ja+QjqdQH0Bn55WXT0ox5ztsERladXawsfdWZJ93TUFyljIW3FxlO6mHJKYunMqWqPVYFXKjtLDavJ19erNnz27l1lVxdN+O5D+nw+kkg6yo2qvOQsmBKyZss/eM6L6j/0cmgYAvlChq29OVVHDHrUYYZbuOJ6rOzbDeqiOrh4jkU0JxtSurkM5I83d6/yfNGAA3mXNh+LBq+ivvK5Rkj1NtjHvtU1jeir/zDB/WbIM7/r7+aWgiy50YE97LfKKi5qlkEu9WObuL92OL0VfobQM/1Y3B0uNXd/uffyS3sTDZVZuf6pZNN+7Odb89fPSedwMY9lMbthQ383qLApdUp9Op9P/ASpy/EhlHQAA


name: WhatsApp Expense Tracker with PostgreSQL Database & AI-Powered Reports
author_name: Roshan Ramani
author_username: rawsun007
categories: []
created_at: 2025-05-17T05:57:32.971Z
updated_at: 2025-05-17T05:57:32.971Z
url: https://n8n.io/workflows/4136
scraped_at: 2025-12-24 13:02:44
description:
  Track Personal Finances with WhatsApp and AI Assistant

  Transform your WhatsApp into a powerful personal finance command center. This AI-powered workflow converts natural language messages into structured financial data, automates record-keeping, and delivers instant insights—all within your favorite messaging app.

  Who is this for?

  This template is perfect for:
  Personal finance enthusiasts** who want effortless expense tracking
  Small business owners** managing personal and business expenses  
  Freelancers** tracking income and expenses across projects
  Anyone** who prefers messaging over complex finance apps
  Users seeking privacy** with self-hosted financial data

  What problem is this workflow solving?

  Traditional expense tracking requires switching between apps, manual data entry, and complex spreadsheets. Most people abandon these systems within weeks. This workflow solves the friction by:
  Eliminating app-switching—everything happens in WhatsApp
  Converting natural language to structured data automatically
  Providing instant confirmations and reports
  Requiring zero learning curve or behavior change

  What this workflow does

  Smart Transaction Processing
  Send natural messages like Spent 300 on groceries at Walmart and the AI automatically extracts:
  Date**: Today's date (or specified date)
  Category**: Groceries  
  Type**: Expense/Income/Debt
  Amount**: 300
  Person/Company**: Walmart

  Intelligent Message Classification
  The workflow automatically routes messages to three processing branches:
  Branch 1**: Reports and analytics (show March expenses)
  Branch 2**: Transaction logging (spent 50 on coffee)  
  Branch 3**: General financial chat (how can I save money?)

  Advanced Reporting
  Generate instant reports by messaging:
  today's report → Daily income/expense summary
  March vs April report → Monthly comparisons with percentages
  show groceries spending → Category-specific analysis
  Automatic daily summaries at your preferred time

  Database Integration
  All transactions are stored in PostgreSQL with proper schema:
  CREATE TABLE financial_transactions (
   date DATE NOT NULL,
   category TEXT NOT NULL, 
   type TEXT NOT NULL,
   amount NUMERIC(12,2) NOT NULL,
   person TEXT
  );

  Setup

  Prerequisites

  n8n instance** (self-hosted or n8n.cloud)
  WhatsApp Business Cloud API** credentials
  PostgreSQL database** (version 12+)
  OpenRouter API key** for AI processing

  Quick Setup Steps

  Import the workflow template into your n8n instance
  Configure credentials:
    WhatsApp Business Cloud API (App Token + Phone Number ID)
    PostgreSQL connection details
    OpenRouter API key for AI processing
  Create database table using the provided SQL schema
  Test the connection by sending a sample message
  Customize the scheduled report timing (default: 8 AM daily)

  Verification Checklist

  [ ] WhatsApp webhook receives messages
  [ ] AI correctly parses transaction messages
  [ ] Database insertions work properly
  [ ] Confirmation messages are sent back
  [ ] Reports generate with accurate data

  How to customize this workflow to your needs

  AI Model Configuration

  Default**: Uses OpenRouter with GPT-3.5-turbo for cost efficiency
  Upgrade**: Switch to GPT-4 or Claude for better accuracy
  Local**: Replace with self-hosted Ollama for complete privacy

  Database Options

  PostgreSQL**: Recommended for production use
  Google Sheets**: Alternative for simpler setups (nodes included)
  MySQL/SQLite**: Easily adaptable with minor SQL modifications

  Message Classification

  Customize the classification system:
  0**: Reports (modify SQL queries for different analytics)
  1**: Transactions (adjust parsing rules for your language/currency)
  2**: Chat (customize AI responses for financial advice)

  Reporting Customization

  Scheduled reports**: Change timing, format, and recipients
  Custom periods**: Add quarterly, yearly, or custom date ranges
  Categories**: Modify auto-categorization rules for your spending patterns
  Currency**: Update formatting for your local currency

  Advanced Features

  Multi-user support**: Add user identification for family/team use
  Receipt photos**: Extend workflow to process image receipts via OCR
  Budgets**: Add budget tracking and overspend alerts
  Integrations**: Connect to banks via Plaid or other financial APIs

  Complete Package Included

  When you download this template, you get everything needed for immediate implementation:

  Ready-to-Use n8n Workflow

  Fully configured nodes** with descriptive names explaining each step
  Color-coded sticky notes** throughout the workflow explaining:
   What each branch does (Reports/Transactions/Chat)
   How the AI classification works
   Database connection requirements
   Error handling and troubleshooting tips

  Comprehensive Documentation Bundle

  Quick Start Guide**: Get running in under 10 minutes
  Detailed Setup Guide**: Complete configuration walkthrough with screenshots
  Branch Explanation Guide**: Deep dive into each processing branch:
   Branch 0: Reports & Analytics - SQL queries and formatting
   Branch 1: Transaction Processing - AI parsing and database insertion
   Branch 2: Financial Chat - AI responses and conversation handling

  Built-in Workflow Documentation

  Sticky notes at every major step** explaining the logic
  Node descriptions** that clarify what each component does
  Visual flow indicators** showing message routing paths
  Dependency callouts** highlighting required credentials and connections

  Technical Implementation Details

  Database schema** with complete SQL commands
  API configuration examples** for all external services
  Troubleshooting checklist** for common setup issues
  Performance optimization** recommendations

  Bonus Resources

  Example message templates** to test each workflow branch
  Sample data** for testing reports and analytics
  Customization recipes** for common modifications
  Integration patterns** for extending functionality

  Example Usage

  Log Expenses:

  Spent 1200 on rent this month
  Paid 45 for gas at Shell
  Coffee 5.50 at Starbucks

  Log Income:

  Received 5000 salary from Company ABC
  Freelance payment 800 from Client XYZ

  Generate Reports:

  today's summary
  show this week's expenses
  compare March vs April spending
  how much on food this month?

  Expected Responses:
  ✅ Logged: expense | Rent | ₹1,200.00 | Landlord
  ✅ Logged: income | salary |₹12,000.00|company

  📊 Today's Summary:
  Income: ₹0.00
  Expenses: ₹1,245.50  
  Savings: -₹1,245.50

  📈 March vs April:
  Expenses: ₹15,000 vs ₹12,500 (-16.7%)
  Top categories: Rent, Food, Transport

nodes_used:
  ["@n8n/n8n-nodes-langchain.toolCode","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.toolCalculator","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.postgresTool","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.toolCalculator","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.convertToFile","n8n-nodes-base.whatsApp","n8n-nodes-base.whatsApp","n8n-nodes-base.whatsAppTrigger","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.switch","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.splitOut","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.postgres","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.whatsApp","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.postgres","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.whatsApp","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.toolCode","@n8n/n8n-nodes-langchain.toolCode","@n8n/n8n-nodes-langchain.toolCode","@n8n/n8n-nodes-langchain.toolCode","@n8n/n8n-nodes-langchain.toolCode","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE7Va224cxxH9lcU+5Imt9P3Cp8hUDCiJLNkSHASGQfSV3Hi5S3CHlhlB/57Tu5R2SM7szKzoBwskPdN1urrq1Knq+TRfpPnpPL65fPXjf+LL9cXl6uzd2T/nJ/Or3Pj56af5YrVp/Crm19vnQtS26KisoVYWXbISjklPTU6cJ2mUljQG43WRPmXmRNaFRp2Mpzpmi3WbfHW99E0+u8lp8z43t9dna/wlNxkGmpvb/PlkvvJXGdY+3Pj42/n5+cuVX979L5+/yzebNX4+/36xqpA25x8XzeX5vy99s3l5fX3+8vX5y81mUfE257/j4cV6dc5f/BcvVcP+YjM//eVXLL9Ouf74abd5npzUKkiirI9ERkqJN5aTbH2WmRptspp/BfUK2Gd+lWbNAr9j2bvr+ue/rezqr/iPbBcnS7+6iJd+sXrRrNfLM/wNj16vN4sGmGCaSEtPHKVAc+1vsHIDuHD3592CP+/Az0/ZC/755B6niJ5LZjShIRQihcskROpIktFEpxRNwe1xvocvY3MLL8/e3jbXt83snb/Z5JsRkNfb53eP75d5tAGhJ28g5sQKs4GE5LGByB1xuhgSXA4c/0/bwPcbeHudVz8BSr6ZneGEZ2+AcjkC/fKqPr5/+xFuTimA82HgX2FnbnOxPJAooyfSKU2sYZKwGFNRmgsZ4gBs9u24Gef0hNkJuEMKPHgviVVOEak4cNd/OJcucyV1sC3cZ34Zb5GY6zERsg3q9gstpExPxJkK19GFTJwzAWHhEgm2RnhxzCrsWxU74F/xzf6VU0FzKwAsEq6FIFK7QmymgeSkRWZexcTZAGj5DMEMzCfEjEjDr8C5L1Zbroh2hlW2Q3xYakhJQZRgi0q87IG/W2+ai5u84Xuse5jBb/KL6/snPiAkHoesgleJHUbHX+g9SbDAFJxLgsqJSIO4sDZJkr23OWrOEhuKBvUM2ab1OOh7x4K9ChOWkUgzHFskyoiTnkTHuI3gPhp9V7qN4YZD+UYYnRwEhRbubWHEqRoE1BnijM0oJVSAm3lmUg6XEv5ctYRJPtLbrWqiUPR01ooIhAb8jQLuU8KWGI1JeCWNGKom+jlomU51vk6e8qQiQaaB5ZRgxCPokS4gQupoUSG1AmW9gpRpZs169v1imXvzMO6e+7C+f+oBSASIHuHcPUYWUhYqCBKt0HAu9yQEWkDMMXOZbXDCtAIkQw/tRNnCL2c/5c31erXpx/rxXrE9Khy1cuw8+TGHy/X6t63mLIYFSZNAfIBupUsKZay4KiKilEIKyM35+Mg3xlWxRLTG7qTwHMXcRYIc8kFEJhTN+439sL65woZ2Z7DxFehs4q6IqfVQ2j93W5wVAeouJDtHiWTOIrWVITo4yCqVnBKtWv96FddXi9XF7It0nn24WVxctMVhz972zz0oQ1x2nVx0RTkNKqfJIkONzDVDBUnURFs8IDk5fosi0CBNwp5cdqi4CfKXJUpMjFEFZmxMLX59kzcbf5Fnr1dNXjWzs6VHZ1AWo/Qv3ls1T2Qj/7LFgSRye4YKxkqO4BIy64rYItaSJyJF9FDeldRGvKWXWbi7h9x7FBs0PfGyq16NgCdaBGq9ZNpBuGBrVW1BmIP68StlxUKoJ55DSwlUCp/9ZfazXy5S7YHQna02Pm4RHOdTZSe71EGisFw4oVstXiIngUpGrETqllyoKm1eul4umjbQ2b8WK7R+va6tz6PEPXHuOJxfUfqoIsvIQfSSOPgUI6n1iPgoEMI+oMy2GP77SjIPYf7j/dsfDjD9425yHD7e6gxM5tECkHfwYjKQKiEHAvKjjBrvsmx1kl0nDrbPy9TvyacY+bjD3oOUymbHtUQ8GgOmRqV3OTkgjSFxD5bUsk1pm1ol2xAXK9TMV98NKteHOOGCUThbkpUnkFGktabQTKRHq1hPmnjprApeWNnua7+7XSxTLSllUc+9Ir0nq+PSyMjJWVQUnCsr1lgzv/ZenjN042DRDGGYcnuS8Movlncz+/LNYJXYxMucbpe5p0rUmQcZ03q3SIomnqxDrgtvwfrO1pkBmm9TNKPJmyyceuzbHeCf8vUaEfHjbb65O5b0uR6LuOXcoFnUwOl5RAPDPDrDEh1BWkluOTNCtBqYv/+RY+X9Z8PMdG26GB0F+mTulx/93WYn61/5OvIrfrnJX3djVKY6BE/QFCjENhLQRpuITV67IITyznX7f68H399eXfnjN1QHH1MPIWVNPbQ0HCEAW/oI/QoGViZxwQS4L9JH+rV9AlM1npVfIf55Gi9Yj8RUmmSrkLoSPzknLUHTaRkPAq2yfkIzt5tmffUscVWPYdIZaOU5JEQkED7Aa1WV2jQSq0NiXIgYRGtEsmXuglL4BfMW7Ax/mb3bE/XYarM9keGWZ88zWabCoJNJ5Ao8IyknrnBFqgwyPDkTWKva3JfsB0jR9dwum0kgJe0BmXes8HYV831C9gPXEG62ILKYLLX4gCADmktJGZr4KCwi4yndHIyLUXWSaD7Kw606WQJIXKDYSGPrQDILyCKO2u6RpEyngO63J4CfiUwqnctBh9dbiENxLZ2kkcHZLLIq65HQDF2OK9YXEaFQ28Jkyy0P3D2RXOSX5v3PYxbkKeU2e2JQPYjMUtQpiiHIXshCaxRjLVW9WdT7mlnsboqnkUqdTNw3x6N5JVtdskZzSyG6cAiptpUgeJWUK6I2BrnVVr1vFvG3u9kP66Z/HrHZPnP/yAMB4Op0RzxVV3Psftulnc7n/X6NQeuAsk8oqyMqD/ILPDCow6Th06SUL5MYkE1hF2ZH6q09mbCcEjr2QkRWcK1DT+BdQIYqJG5EA+617nRtP7Be34rt2LIOfY5zrommeLTRREVfS3wEVq5BLhp9LRiGs9zSWQ+u7UaPXDucyui4m4L2pDILL6LyhHkNRejBzq5QREUptjgrS2Z9SMeMWLuR1n5rIk4eczTew4/a4/SlyMQZXkjOAccPrEalHpxjLmC6cbqR13EtnJ5LXTwktc9G1GEXB+8FTWIxGZ1QcDLGHpxj7lz6Tr6m00SkkGYpSw+QseZTMvBtRowGT3lwOnGl+66Wx1xi9CGtsyqmpx2+zg78xDJRAtpHKoG2JfFIjHCWGR4dVS2oneP0McE6ME6vomLMrfI+FoKGRxOrPAUWyBmwnaCoDZmbqIw1hQ7ANs9wC7CtY9NmRDgfADfECgF/o1DA38g467gowXHngxkAbr8ZuBkZ0i0qMyo6tIO5MMhkCk0PpcFQZYRIUjufZegsEP0XiL0FYle/2LHFV0qZU/1cQuoq0+onByFALAEqC77e3TPXCVUcA7UO+cXTjBsHtcToLToW4pSsA6SoSLAS7RKEDpdZKGllJ1R5BNQ6q1dTiy6erlO137+q401umsXqYvvmTjzjybc3CRF2Ov+d1SXuv8B5vWuvvFXoxQHO68qGGgnLGVEuozQKzstWrwLDKm+nd9uF97fP+MUvzivfYQ+/fNp+wjNyevLlvZP5YpXyH/NT+vnXXwGvdZ/as/rYDmTYAjtsYnBg0mfh4cdIPTbGTe5HmRjYx8GucpSB3pP+1rN4pFYOWzk4mx1lQfZZGHEvNcqA6jNwuDvrDdVHt8xY/Arl46gj2L742MDj261BA91B9GTtk6lxfmiFw77r3NfT4Xj/zg6xVOfinXi61j98T925dvfndbugqvLhFlF6/7fJ4fvw/VGW2aDpcRRzhGk+aHo0gx5hXUzb+GHqO8K+HGl/oMQeYVkNWh5Z3o+wrSft+tmdbgbND9L4EVbt2FAbqn+HbffdZ3cR16i75U7+6rvb77IyeMPeaaE37rtMTBvede+o74vt3am1v6Q7jp0erNC92y56PXK7A7vt/wapy96IutNppf+9Liu9n+BMOi8+dGAjaW3McXVlatfOBr/Q69zhAaBDKmeqPjzw/cYBqXiQqA5uaWygj7rp67R06M0uS70fenaufog4u1Yf831Mp6GD7NIZakMfXQ2S7dPY6Q3p7kv7AxZ6ZVSviZ67u04bY2ixy9Coa9ljLbKDJic2JZ8//x/DuISvMzYAAA==


name: AI-Powered Telegram Task Assistant with Notion Integration
author_name: Alexey from Mingles.ai
author_username: alexx
categories: []
created_at: 2025-05-17T08:00:32.223Z
updated_at: 2025-05-17T08:00:32.223Z
url: https://n8n.io/workflows/4142
scraped_at: 2025-12-24 13:02:44
description:
  This workflow creates a powerful AI assistant in Telegram that helps you manage your tasks in Notion. The assistant leverages OpenAI's language models to understand natural language commands, process voice messages, and maintain context through conversations.

  Key features:
  Processes both text and voice messages in Telegram
  Transcribes voice messages automatically
  Maintains conversation context with memory
  Manages Notion tasks through a custom tool:
    • List all tasks
    • Add new tasks with priority (today/later)
    • Complete or uncomplete tasks
    • Change task timing

  The workflow consists of two main parts:
  AI Agent section: Handles Telegram connectivity, message processing, voice transcription, and conversation management
  Notion Tool section: Implements the custom tool that connects to your Notion database, allowing the AI to interact with your tasks

  Setup requires:
  A Telegram bot token
  OpenAI API credentials
  Notion integration token and database ID

  Example Notion Database


  Perfect for personal productivity, team task management, or as a foundation for building more complex AI assistants with additional tools.

nodes_used:
  ["n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.notion","n8n-nodes-base.notion","n8n-nodes-base.notion","n8n-nodes-base.switch","n8n-nodes-base.notion","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.switch","n8n-nodes-base.telegram","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote"]

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


name: SmartLead Sheet Sync: Auto-Capture Client Inquiries to Google Sheets
author_name: David Olusola
author_username: dae221
categories: []
created_at: 2025-05-17T13:39:34.835Z
updated_at: 2025-05-17T13:39:34.835Z
url: https://n8n.io/workflows/4148
scraped_at: 2025-12-24 13:02:46
description:
  Capture client inquiries from any webform and send them straight into Google Sheets — automatically.  No code. No headaches.

  🚀 What It Does:

  SmartLead Sheet Sync is a plug-and-play automation that:
  	•	Instantly receives form submissions from your website or funnel via a webhook
  	•	Extracts and formats key info (like name, email, business name, message, timeline, budget)
  	•	Logs everything into a Google Sheet — in real time

  Perfect for freelancers, digital agencies, consultants, and productized service owners who want to stop copying/pasting leads manually.

  ⸻

  ⚙️ What You Get:
  	•	A pre-built 3-step automation (Webhook → Code → Google Sheet)
  	•	Ready-to-use setup in n8n (free and open source automation tool)
  	•	Clean, editable JavaScript code to format your incoming lead data
  	•	Google Sheet connection that logs every new inquiry in its own row

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

workflow_json_compressed:
  H4sIAAAAAAAAE52U204bMRCGX2W1t42RvT7nrqJqQaoKUlBVqeLCh3FYQbzprpNCUd69s0sKCAUVcWfZM7+/f2bs+7qN9bz2MQDNJ+erM/3j4k9e17N6BcXV8/u6zUNxOcDpGNdQSoMSVLPQUCO4ospbGRTXVnpPtdVBMIrbQlMpnZJGCWvASOmtghTq3azObgUotVi5vnwFF6vFFUCpFnc5zKuPm9KRY7cumx6q45sWcqlO869N27cwVKWrvnTd8gYecgbELG451POfl6jbRRiX93tLzDpwQRDNpCdCgCMWqYjyyQUbPY9R1080pQ3Xd9W3rsAoerceN7PJZFIl3g1wNEwx+5B1N7Sl7TJeSIygM6YoMqxdj3oF+mEsXehyQQOoNPoeRb/jyZTEdrM9pxKNaZJRhFpriIjCE49VJEpSx4A3TQRxkJO9D7R5L6hWTGiXKMH6SQRlgWDTOZGcaa+TEImpJ9DPXb+qFhu/aodRqDrpuutXgX+Dv3o4f06rFJ0JMdLuz6cR5AJs8jyRpHwkwglBvJeGqATSpATCaVO/MPjSVPNoiivDJJOchGApmkqcuCg0SUIJYRoAKeHJ1LnrB6g+4GCCy9U0vJ8cPpPXfAVcvjDF6T9TbySUwRoqkybaJEWEAkNsoxJhnCpKuWDJPyNcuC1UFweeyUG+5RT1GPSMU7yJUhzJHca4UNotyid3M8CsHqCUNi+nyYJbCJtR86yP0CPBlo0jtn1QmBrquY2OQyJRBmyo1pY4TnEVAhafaedjRDic0QxhlJqED84X7q9cO/LjLzD6fEvPpowZ/nMRbus53V1eIuBrWYdu+E/ND+jvdn8BIM4/3ngFAAA=


name: Route User Requests to Specialized Agents with GPT-4o Mini
author_name: Dhrumil Patel
author_username: itechdp
categories: []
created_at: 2025-05-17T14:13:40.939Z
updated_at: 2025-05-17T14:13:40.939Z
url: https://n8n.io/workflows/4150
scraped_at: 2025-12-24 13:02:45
description:
  This n8n workflow template is designed to route user input to specialized agents (like a Reminder Agent, Email Agent, etc.) using a structured output from a language model. Here's a complete description of what it does and how each part works:

  🔁 Workflow Purpose:

  This template receives a user's request via Webhook, processes it using an LLM, extracts structured data like the agent name and user query, and routes the input to the appropriate sub-workflow (agent) based on the specified agent type.

  🧩 Workflow Breakdown:

  1. Webhook (Trigger)

  Node: Webhook
  Purpose: Accepts a POST request from any frontend or API source. It contains the raw user input.

  2. GPT Model (LLM Inference)

  Node: GPT 4o Mini
  Purpose: Interprets the user input and determines:

    Which agent should handle it (e.g., "Reminder Agent", "Email Agent", etc.)
    The actual user request (in structured format)

  3. Auto-Fixing Output Parser

  Node: Auto-fixing Output Parser
  Purpose: Ensures that the output from the LLM matches the expected structure. If there's a mismatch, it automatically corrects it using a re-prompt.

  4. Structured Output Parser

  Node: Structured Output Parser
  Purpose: Converts the language model's response into a strict JSON structure with keys like:

    "Agent Name"
    "user input"
    "sessionID"

  5. Agent Router

  Node: Switch ("Agent Route")
  Purpose: Based on "Agent Name", it routes the input to one of the following sub-workflows:

    📅 Reminder Agent
    📧 Email Agent
    🧾 Document Agent
    🤝 Meeting Agent

  6. Sub-Workflow Call (Execute Workflow)

  Each agent is implemented as a separate n8n workflow:

  The input is forwarded to the selected agent.
  For example, if "Agent Name" is "Reminder Agent", the workflow "Reminder Agent" is called with "user input".

  7. Webhook Response

  After the sub-agent workflow finishes, a Respond to Webhook node sends the output back as an HTTP response.

  ✅ Key Features:

  Fully modular and extensible
  LLM-driven routing using OpenRouter GPT-4o
  Auto-corrects structured output errors
  Clean separation of concerns (agent logic is decoupled in sub-workflows)
  Easily add more agents by updating the switch logic

  📦 Use Case Examples:

  User says: “Remind me to call my mom tomorrow.”
    → Routed to Reminder Agent

  User says: “Send an email to the HR team.”
    → Routed to Email Agent

  User says: “Schedule a meeting with John next week.”
    → Routed to Meeting Agent

nodes_used:
  ["@n8n/n8n-nodes-langchain.outputParserAutofixing","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.executeWorkflow","n8n-nodes-base.switch","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.executeWorkflow","@n8n/n8n-nodes-langchain.memoryPostgresChat","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.executeWorkflow","n8n-nodes-base.respondToWebhook","n8n-nodes-base.executeWorkflow","n8n-nodes-base.respondToWebhook"]

workflow_json_compressed:
  [encoded data, 4260 characters]


name: AI SEO Readability Audit: Check Website Friendliness for LLMs
author_name: Leonard
author_username: leonardvanhemert
categories: []
created_at: 2025-05-17T14:15:31.298Z
updated_at: 2025-05-17T14:15:31.298Z
url: https://n8n.io/workflows/4151
scraped_at: 2025-12-24 13:02:42
description:
  Who is this for?
  This workflow is designed for SEO specialists, content creators, marketers, and website developers who want to ensure their web content is easily accessible, understandable, and indexable by Large Language Models (LLMs) like ChatGPT, Perplexity, and Google AI Overviews. If you're looking to optimize your site for the evolving AI-driven search landscape, this template is for you.

  What problem is this workflow solving? / Use case
  Modern AI tools often crawl websites without executing JavaScript. This can lead to them "seeing" a very different version of your page than a human user or traditional search engine bot might. This workflow helps you:
  Identify how much of your content is visible without JavaScript.
  Check for crucial on-page SEO elements that AI relies on (headings, meta descriptions, structured data).
  Detect if your site presents JavaScript-blocking warnings.
  Get an AI-generated readability score and actionable recommendations to improve AI-friendliness.

  What this workflow does
  Receives a URL via a chat interface.
  Sanitizes the input URL to ensure it's correctly formatted.
  Fetches the website's HTML content, simulating a non-JavaScript crawler (like Googlebot).
  Extracts key HTML features: visible text length, presence of H1/H2/H3 tags, meta description, Open Graph data, structured data (JSON-LD), and &lt;noscript&gt; tags. It also checks for common JavaScript-blocking messages.
  Performs an AI SEO Analysis using an LLM (via OpenAI) based on the extracted features.
  Provides a report including an AI Readability Score (0-10), a summary, actionable recommendations, and a reminder to check the robots.txt file for AI bot access.

  Setup
  Estimated setup time:** 2-5 minutes.
  Import this workflow into your n8n instance.
  Ensure you have an OpenAI account and API key.
  Configure the "OpenAI Chat Model" node with your OpenAI API credentials. If you don't have credentials set up yet, create new ones in n8n.
  Activate the workflow.
  Interact with the chat interface provided by the "When chat message received" trigger node (you can access this via its webhook URL).

  How to customize this workflow to your needs
  Change LLM Model:** In the "OpenAI Chat Model" node, you can select a different model that suits your needs or budget.
  Adjust AI Prompt:** Modify the prompt in the "AI SEO Analysis" node (Chain Llm) to change the focus of the analysis or the format of the report. For example, you could ask for more technical details or a different scoring system.
  User-Agent:** The "Get HTML from Website" node uses a Googlebot User-Agent. You can change this to simulate other bots if needed.
  JS Block Indicators:** The "Extract HTML Features" node contains a list of common JavaScript-blocking phrases. You can expand this list with other languages or specific messages relevant to your checks.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi"]

workflow_json_compressed:
  [encoded data, 5444 characters]


name: Automate Outbound Sales Calls to Qualified Leads with VAPI.ai and Google Sheets
author_name: David Olusola
author_username: dae221
categories: []
created_at: 2025-05-17T15:26:49.845Z
updated_at: 2025-05-17T15:26:49.845Z
url: https://n8n.io/workflows/4152
scraped_at: 2025-12-24 13:02:44
description:
  This workflow automates outbound calls to qualified leads using VAPI.ai and Google Sheets. Here's how it works and how to set it up.

  How It Works

  Read Leads: The workflow starts by reading leads from a Google Sheet where the "AI call status" is marked as "NO"
  Batch Processing: Leads are processed one at a time (batch size = 1) to ensure proper sequencing
  Variable Setup: Extracts the phone number and row number from each lead record
  Trigger VAPI Call: Makes an API call to VAPI.ai to initiate an AI-powered outbound call
  Update Status: Marks the lead as "YES" in the Google Sheet after the call is triggered to prevent duplicate calls
  Detailed Setup Guide

  Prerequisites

  n8n instance (self-hosted or cloud)
  Google Sheets account with OAuth2 credentials
  VAPI.ai account with API access
  Step 1: Google Sheets Setup

  Create a Google Sheet with your leads data
  Ensure you have these columns (adjust if needed):
  Phone number (column E in the current setup)
  AI call status (column F in the current setup)
  Mark all leads you want to call with "NO" in the status column
  Step 2: Google Sheets Credentials

  In n8n, go to Credentials &gt; Add New
  Select "Google Sheets OAuth2 API"
  Follow the prompts to authenticate with your Google account
  Name it (e.g., "Google Sheets account 3" as in the example)
  Step 3: VAPI.ai Setup

  Get your VAPI.ai API credentials
  In n8n, go to Credentials &gt; Add New
  Select "HTTP Header Auth"
  Add your VAPI authorization header (typically "Bearer YOUR_API_KEY")
  Name it (e.g., "Header Auth account 4" as in the example)

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

workflow_json_compressed:
  H4sIAAAAAAAAE6WWyW7jRhCGX0XgWW30Ur35GCOLgSAOYiM5BD70Ui0LI5OKSGVmMNC7pygZJq2QE3lyEAQ1i39/qq6/qr9Uz9iF6vpLta7bLtQJb3N1XUnOeTLArUiSO1CGm+h1Msp6HSO33iYQnJbBcq2D0c6Ad+i0jt5gSdWy6vB5uwkd3uwwt/fY7bc3Da1gh7RBt9vjYVnVTca2uv6Tdu93NfS2cCIzLaxgkK1j3kjBQgEurJKmeCDlOjwjRd936/Th8+KXpsN+u8/bfrF2NTuqshhavGqPMS8h26Zdd+umpg2Z40vSfqTFsCO5Dndtn4TU1B3WHQlVh5Pm7/Tk+I44LF8wMeVsiglMI/cMjM/MFUE/RaJUeIsIfoS53ay7xd2+m4fsI04BI0Rh+FI5OEecxyrCOes4sEQ0DILiLArJmckCPIBHleKA9X0mqh/WuMntPBieMSl5EZO6glcqF13RMiBDY4jKFc+i8ppZXwLnIQUR+UB1Q5vP4qTTwxGPFvISHjnQ2MiF1poplxQDzRMLTmXS5xapiCUoMdD89PDw6+I3/GuP7fzpPXXddogZwXnplsD5BBx+wrTv8I7cVl2XsGnxDBiuBuRiUlFWJ/ID4ulYCZmONYIRTsrixMgUPzerRQqbzYLM3O3bxSz2qmlWG7x/Quzas8IDNwd+BqlfIUWEhCaSEQzZFxQmcpcHVsjSGC0GJ8Skc8W7rSutXNLn26yrE4oEMrKSQiTrGs+805EFKx2EZK2xfJJTvpuzr01w34YZFKDjBpgRig4eqREGV5BlDTpBiCorM2D+eDzKxetZvvfAmYFLXARXZgBE0BZ9JBtbyqMohRGzYUWCBCtzARFGeUxPmPeE+LBbr1a4m8/lS+AQN8aUVJeXdMSReSK5JDodWCRjM+AOWcRsWTAcvbSQRBgl8o+w7uYL8iM9PXOK4PDilI8Yn5rmw3F4WoGZ6kywopCTYzMyl4xkSeYsIRXwop8P//EnRtUgTRI6AoNI6JBBs0ijkKHqp7KDpHge/kTYbrHO4ybwjoYqJA3GC7w/ynCiJOoSWJA9nHJkpuANE0SdJU+S5vm4PTXbxd3fuFvc0v3gK5OnH4m39Xeho4o4K1dzWRmoA0WQ22pM/YtH8x3HC30/h3WvRPeO+rgyz3WMXNLlKOOn6pofHh9pn1OdTOl8LfmTUsPtYEpuckhP6owjp5TeDtZJiTfTbkrjzB6TIm970ZTKxH1oUun8SEZaj8tBbnpGzyiezcb/Xwn/6mxTkjP9eVJwooCmKefG/ITq4fAPWWb9++YLAAA=


name: Auto-Ticket Maker: Convert Slack Conversations into Structured Project Tickets
author_name: Varritech
author_username: varritech
categories: []
created_at: 2025-05-17T16:14:42.060Z
updated_at: 2025-05-17T16:14:42.060Z
url: https://n8n.io/workflows/4153
scraped_at: 2025-12-24 13:02:46
description:
  Workflow: Auto-Ticket Maker

  ⚡ About the Creators
  This workflow was created by Varritech Technologies, an innovative agency that leverages AI to engineer, design, and deliver software development projects 500% faster than traditional agencies. Based in New York City, we specialize in custom software development, web applications, and digital transformation solutions. If you need assistance implementing this workflow or have questions about content management solutions, please reach out to our team.

  🏗️ Architecture Overview
  This workflow transforms your Slack conversations into complete project tickets, effectively replacing the need for a dedicated PM for task creation:

  Slack Webhook → Captures team conversation
  Code Transformation → Parses Slack message structure
  AI PM Agent → Analyzes requirements and creates complete tickets
  Memory Buffer → Maintains conversation context
  Slack Output → Returns formatted tickets to your channel

  Say goodbye to endless PM meetings just to create tickets! Simply describe what you need in Slack, and our AI PM handles the rest, breaking down complex projects into structured epics and tasks with all the necessary details.

  📦 Node-by-Node Breakdown
  flowchart LR
    A[Webhook: Slack Trigger] --&gt; B[Code: Parse Message]
    B --&gt; C[AI PM Agent] 
    C --&gt; D[Slack: Post Tickets]
    E[Memory Buffer] --&gt; C
    F[OpenAI Model] --&gt; C

  Webhook: Slack Trigger
  Type: HTTP Webhook (POST /slack-ticket-maker)
  Purpose: Captures messages from your designated Slack channel.

  Code Transformation
  Function: Parses complex Slack payload structure
  Extracts: User ID, channel, message text, timestamp, thread information

  AI PM Agent
  Inputs: Parsed Slack message
  Process:
  Evaluates project complexity
  Requests project name if needed
  Asks clarifying questions (up to 2 rounds)
  Breaks down into epics and tasks
  Formats with comprehensive structure

  Ticket Structure:
  Title
  Description
  Objectives/Goals
  Definition of Done
  Requirements/Acceptance Criteria
  Implementation Details
  Risks & Challenges
  Testing & Validation
  Timeline & Milestones
  Related Notes & References
  Open Questions

  Memory Buffer
  Type: Window Buffer Memory
  Purpose: Maintains context across conversation

  Slack Output
  Posts fully-formatted tickets back to your channel
  Uses markdown for clean, structured presentation

  🔍 Design Rationale & Best Practices
  Replace Your PM's Ticket Creation Time
  Let your PM focus on strategy while AI handles the documentation. Cut ticket creation time by 90%.

  Standardized Quality
  Every ticket follows best practices with consistent structure, detail level, and formatting.

  No Training Required
  Describe your needs conversationally - the AI adapts to your communication style.

  Seamless Integration
  Works within your existing Slack workflow - no new tools to learn.

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

workflow_json_compressed:
  H4sIAAAAAAAAE5WVTW/jNhCG/0qgs5nyS/zwqdlgDymQ7gJb1IciKIbkMBFiS65NZ5MG/u8dyd7YTpyNexBskcPhM8OXr56rJlXjyn19nFz9+3ky/ec3ddF2D9WommGBavxcNe2yQBvxqo8zIeZcY3bADTrujOeylgZ4HSXoaEOuEzjBRXYeaycVF5is414bbrLmlLfgbD6FgpcLTMtvWFbzy45GsCBtUBYrXI+qFmZIu12sSsf+aOI9lrNruMdFvxxul9X4rxsK6hL2f583JYCQ3gZpmOAWmeYpMW98zRzGwGulI8RQvaT+Msf24urs8g4oNSWa9qmf5v3Ur61rf6GHDRuwKbS38Q6a9nw668OHlQ2Fz7tlU5quJQTm+EgZTlBzWNAGBRdE9rze5PyT3oY4cS7Xoy1uHYzFLASrNXKmReAMcuIsq6izqql7Qu1wJxjuuu5+B7njC7DE8+8v8/tUteQjwXus7fxwhlgnb4WzzHkDTEsVmA9gGdJpaQ0oksXqg0p2dXAZQ1LRssAhMl3XhgHngRkqwmJy2aLf1XFJyO8WETeT+xUo/qOCE3EColPJaRZ8MISjgXlBUsAEhjsLSea0w/nW9Mo7u8ZZt3g6QQGzIfDTKmdcTJo2dd8PeYU+UQfqBRghRgAvmAPjmfY5MZeSJkW4rBFEConvgEmyX6/PJjidNu1toVwfM8MttuVVW/VJXRXnbnfMHgxI6qtLluQaetGAMUxFz+nQpaNnr69TiO+Ldbmd3SNSR5VqNXeJZ8U0Osk0aLrNkAyjy2FVTtFmxT9U6l6vybyCcoaUH12vVfCkVaB80hnQEl1Oea+IQs7zdPZ7V96X7HKI2Ybsd1hwsgR2pMlV7NrSn8i4qt40/IUUshXaKc6k6d0BvSJmbZg1deQxBq3reJRU/G/U3iTeSvbnmBQNsTQPuHHsUbXEUkiRw0p8xLjqk39ZJLLscfUg+hQPm+XDwfqMxmkrmQjke9rXZH4agGGQuRZk2HkwDWJoMfaphsSDedDvjGRN4GT87TDyk1sxhI7oG5bwsRrz9c0Nkfww02OpDg3q6PJD06Ak0Pw9276cBLWLf536zZpjiK8u11HGt5+3DWdvCytyhO3YqbiHyw43W6//A4nAnBxECAAA


name: 🔁 Copy all YouTube playlists from one channel to another
author_name: Lucía Maio Brioso
author_username: luciamb
categories: []
created_at: 2025-05-17T17:02:33.900Z
updated_at: 2025-05-17T17:02:33.900Z
url: https://n8n.io/workflows/4154
scraped_at: 2025-12-24 13:02:45
description:
  🧑‍💼 Who is this for?

  This workflow is for anyone with two YouTube channels who wants to copy playlists from one to the other — no technical skills required.

  Whether you're a content creator, hobbyist, educator, or just someone managing multiple channels, this workflow helps you save time and avoid the manual work of recreating playlists video by video.

  🧠 What problem is this workflow solving?

  YouTube doesn't provide an option to transfer or duplicate playlists between accounts or channels. That means if you want the same playlists in two places, you're stuck:

  Creating new playlists manually
  Searching for each video again
  Copy-pasting links one by one

  This workflow automates the entire process for you — accurately, quickly, and with no manual work.

  ⚙️ What this workflow does

  Retrieves all playlists from a source YouTube channel (excluding private ones)
  For each playlist:

    Gets all its videos
    Filters out private or unavailable videos
    Creates a new playlist in the target channel with the same title
    Adds the videos to the new playlist
  Continues smoothly even if some videos fail to copy (e.g., if they’re restricted or deleted)

  🛠️ Setup

  Create two YouTube OAuth2 credentials in n8n:

     One for your source channel
     One for your target channel

  Assign the credentials to the correct nodes as indicated in the sticky notes:

     Source nodes → source credentials
     Target nodes → target credentials

  Click “Test workflow” to run it.

  &gt; ⚠️ Note: If you have many playlists or videos, you may hit YouTube’s API quota. You can request a quota increase in your Google Cloud Console if needed.

  🧩 How to customize this workflow to your needs

  ✂️ Copy only specific playlists
    Use a Filter node after the playlist fetch to include only certain titles or IDs.

  📝 Change the title of the copied playlists
    Modify the title in the Create playlist node (e.g., add “(Copy)” or a prefix).

  🔄 Automate it regularly
    Replace the Manual Trigger with a Cron node if you want to run this periodically.

  🧪 Test safely
    If you're unsure, use a secondary channel as your test target before applying changes to your main account.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.filter","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.youTube","n8n-nodes-base.youTube","n8n-nodes-base.youTube","n8n-nodes-base.youTube","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches"]

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


name: Real-time Gaming Strategy Coach with Telegram & GPT-4o Vision
author_name: Don Jayamaha Jr
author_username: don-the-gem-dealer
categories: []
created_at: 2025-05-17T17:20:10.724Z
updated_at: 2025-05-17T17:20:10.724Z
url: https://n8n.io/workflows/4155
scraped_at: 2025-12-24 13:02:45
description:
  Play smarter, not harder.

  This AI-powered Telegram bot acts as your real-time gaming coach, giving you instant move recommendations for turn-based strategy games like poker, dominoes, mahjong, and more—based on screenshots, voice notes, or text prompts.

  Powered by GPT-4o (Vision + Language), the agent helps casual gamers improve decision-making, strategy, and pattern recognition in friendly games.

  🧠 Whether you're at the table or playing online, this agent reads the board and suggests your best next move.

  🔧 Key Features

  🧠 GPT-4o Vision: Analyzes images (e.g. poker hands, domino boards)
  🎙️ Voice-to-Text Coaching: Transcribe audio and analyze intent
  ✍️ Smart Text Input: Ask for help directly in chat
  📩 Telegram-Powered: Easy to use via a simple bot

  🛠 Setup Instructions

  1. Import the Workflow

  Upload the JSON file into your n8n instance.

  2. Create a Telegram Bot

  Use @BotFather and connect your token under Telegram credentials.

  3. Configure OpenAI API

  Add your GPT-4o credentials
  Enable both chat model and image vision model access

  4. Secure Access

  Replace the Telegram ID in the User Authentication node to limit access to your account only.

  5. Test It

  Send a screenshot or voice message to your Telegram bot
  Example: “Texas Hold’em – my turn – suggest move” + upload an image

  💡 What Can You Ask?

  “Poker – flop: A♠️ Q♠️ 10♠️ – I have K♠️ J♠️ – what now?”
  “Dominoes – screenshot attached – should I play this tile?”
  “Mahjong – what’s the best discard move right now?”

  🧠 System Behavior (Prompt Logic)

  GPT-4o is guided by a focused system prompt that makes it act as a gaming strategist, not a rulebook. It returns results like:

  🧠 Best Move Suggestion: [e.g. Raise with K♠️ J♠️]  
  🎯 Why This Move Works: [based on probability & game state]  
  📈 Confidence Level: High / Medium / Low

  If input lacks clarity, the agent will ask for better context or a new screenshot.

  🎮 Supported Input Modes

  🖼️ Image-based: e.g. a poker or domino board screenshot
  🎤 Voice prompts: e.g. “My turn in blackjack, I have 16…”
  💬 Plain text: typed strategy questions

  📌 Sticky Notes (Included)

  Telegram Trigger + Access Control
  Image & Voice Input Routes
  GPT-4o Vision Integration
  Short-Term Memory
  LangChain Agent
  Structured Output Format
  Telegram Response Node
  Disclaimer + Licensing Note

  ⚠️ Disclaimer & Licensing

  This tool is provided by Treasurium Capital under an educational, entertainment-focused license.

  Do not use for gambling, cheating, or violating game platform terms of use.
  Treasurium Capital and its creators are not liable for any game outcomes.

  👤 Author & Support

  Built by Don Jayamaha
  View more AI agents: https://n8n.io/creators/don-the-gem-dealer/

  🎯 Level up your gameplay with AI—one move at a time.

  🎥 Watch the Live Demo:

nodes_used:
  ["n8n-nodes-base.telegramTrigger","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.editImage","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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


name: Bulk Delete All YouTube Playlists From Your Channel
author_name: Lucía Maio Brioso
author_username: luciamb
categories: []
created_at: 2025-05-17T17:22:02.281Z
updated_at: 2025-05-17T17:22:02.281Z
url: https://n8n.io/workflows/4156
scraped_at: 2025-12-24 13:02:45
description:
  🧑‍💼 Who is this for?

  This workflow is for any YouTube user who wants to bulk delete all playlists from their own channel — whether to start fresh, clean up old content, or prepare the account for a new purpose.

  It’s useful for:

  Creators reorganizing their channel
  People transferring content to another account
  Anyone who wants to avoid deleting playlists manually one by one

  🧠 What problem is this workflow solving?

  YouTube does not offer a built-in way to delete multiple playlists at once. If you have dozens or hundreds of playlists, removing them manually is extremely time-consuming.

  This workflow automates the entire deletion process in seconds, saving you hours of repetitive effort.

  ⚙️ What this workflow does

  Connects to your YouTube account
  Fetches all playlists you’ve created (excluding system playlists)
  Deletes them one by one** automatically

  &gt; ⚠️ This action is irreversible. Once a playlist is deleted, it cannot be recovered. Use with caution.

  🛠️ Setup

  🔐 Create a YouTube OAuth2 credential in n8n for your channel.
  🧭 Assign the credential to both YouTube nodes.
  ✅ Click “Test workflow” to execute.

  &gt; 🟨 By default, this workflow deletes everything. If you want to be more selective, see the customization tips below.

  🧩 How to customize this workflow to your needs

  ✅ Add a confirmation flag
    Insert a Set node with a custom field like confirm_delete = true, and follow it with an IF node to prevent accidental execution.

  ✂️ Delete only some playlists
    Add a Filter node after fetching playlists — you can match by title, ID, or keyword (e.g. only delete playlists containing “old”).

  🛑 Add a pause before deletion
    Insert a Wait or NoOp node to give you a moment to cancel before it runs.

  🔁 Adapt to scheduled cleanups
    Use a Cron trigger if you want to periodically clear temporary playlists.

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

workflow_json_compressed:
  H4sIAAAAAAAAE8VVy3LbNhT9FQzclUbQ8P3QTBeyTCdKNVJGpOJ6Ki9AALToUKCGBGV7NJrJovtu22Th7tpPaH7HP1B/Qi8p27IbJWlW3ZHgufccHB5crHHKcRe/MuzwcHHVq/KRzVfVKW7jhVAUd9c4laWikolBjaOa7ccmTziNbYdS23MZc6jBPMe0EycxXE1jicZczbF4nMS27+nMcBKXcl/Q2PPwpo0lXQhodXfzx0d0JDKhBKJZhpYZvc7SUpUoKfIFoug0r6IqFojNqZQiA0mKnpe4+9MZ9Mi5qB/XW/mu7lnQ3iXCFDaxNN8l1PMMYhq6a3Hf1G1Hx4/MJ3MhEctS9jaV5+j23a+RKBW6zIu3SZZf3r77raa6XtZQ6UnScJGYlqKzoLKiWVSk5+eiANQyL1OV5hKUEMfQ2kT3NFC3pAUwKVGAxPVm2+wNvDVIfdO+V+25scs1ixHT1gWxTJcRnzJOKDctw3UNxnRzp/qFUM99+qzK661x/9Jnafv11W8KALUm+Jak2U54vqyr718KUeZVwWrCBw24XlVVIXtZhruqqATgWCG4kCqlWdP+Xs24V6m50VumTabq7cev+hcVP7k41I4XbPWy2m01pItlJh4DQBnLK6nw5vNWmlx3mMtiwn0OAfA9jVDhQgp0J/E9y9d9N9n1n4hFvhLoyS6+xUjwcL+R/8GtfCkKum2EeZP9uvn99+aEfb9eo+8uylx2Uo42G/w/GWq5zNGMxCSeoVEw1NEIHHxG4ECxROciEfxJNkMFh+kajfJmP/vNLBvMPeSpn14dTNv61E+WZ3mBu2YbX6ZczUGeBlA8F+n5HBJrwoEDjFTgDdAdHKBvHSkzOZMHUHf788e///oF9Q7H0whFLwchOhlPfjgejk9mMpqn5eNsQJcptG21+I5DzcVXeVqtzgPV3c2H32uuMIimr2dS76B+IWjda1f0+LuhyuigHucNy24dqbxZeahoXAawCd3qsYZm+NlIm+G6oqgkSlWjZCZbrbub93+iwwD1e5PgeDrsouDHoD+NBqMXzy0AwDQMQjSYTII3wSQcHA4D1OtHg/Eo7KLT8RQAo9E4QpOgPwYAVAfoKBgGUXCEXg97p8NBGIWtFv40bPDHKVPpCtKSQLhFG5dCKRjKze8XV4JVdUjGBYdp28Urve6x2tZvryMvtoSu+YRzxyKWETNCbdMkwjc1zRG2D3cTbkIiBXs4nHsmKSwuaFqnEW6U2s0vDYkG2YZ7kYsr3NU2Z2eg6ut3yj6OL8z0PSybzT95fNOXrgcAAA==


name: n8n Workflow Manager API
author_name: Jan Willem Altink
author_username: jwa91
categories: []
created_at: 2025-05-17T22:56:26.289Z
updated_at: 2025-05-17T22:56:26.289Z
url: https://n8n.io/workflows/4166
scraped_at: 2025-12-24 13:02:45
description:
  This workflow provides a secure API endpoint to remotely trigger other n8n workflows with custom data and to retrieve information about your existing workflows. It's perfect for users who want to integrate n8n into external systems or programmatically manage their automations.

  example usage: I use this workflow in a Raycast extension i have build, to execute n8n workflows from within Raycast: see Github

  ++How it works++
  Receives API Calls: A webhook listens for incoming HTTP requests (e.g., POST to trigger, GET to retrieve info).
  Triggers Workflows: If the request is to trigger a workflow, it dynamically identifies the target workflow ID (from query parameters) and any input data (from the request body), then executes that workflow. This means you can control any of your workflows without modifying this manager template.
  Retrieves Workflow Info: Similarly, if the request is to get information, it dynamically uses query parameters (workflowId, mode, includedWorkflows) to fetch details about one or more n8n workflows (e.g., specific, all, active, inactive; full or summarized data).
  Responds: Sends back a JSON response indicating success/failure or the requested workflow data.

  ++Set it up++
  Configure Webhook Security: Set up "Header Auth" credentials for the main Webhook node. This is the API key your external services will use.
  Add n8n API Credentials: For the nodes that fetch workflow information (like "Get specific workflowid", "get all active workflows", etc.), connect your n8n API credentials. This allows the workflow to query your n8n instance.
  Note Your Webhook URL: Once active, n8n provides a production URL for the webhook (path: workflow-manager). Use this URL to make API calls.
  Understand API Parameters:
      To trigger: Use ?workflowId=[ID_OF_WORKFLOW_TO_RUN] and send JSON data in the request body.
      To get info: Use parameters like ?workflowId=[ID], ?includedWorkflows=[all/active/inactive], and ?mode=[full/summary].

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.set","n8n-nodes-base.executeWorkflow","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.n8n","n8n-nodes-base.switch","n8n-nodes-base.n8n","n8n-nodes-base.n8n","n8n-nodes-base.n8n","n8n-nodes-base.if","n8n-nodes-base.respondToWebhook","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5616 characters]


name: Natural Language Task Management with Todoist and GPT-4o
author_name: maxique
author_username: maxique
categories: []
created_at: 2025-05-18T06:14:28.118Z
updated_at: 2025-05-18T06:14:28.118Z
url: https://n8n.io/workflows/4186
scraped_at: 2025-12-24 13:02:44
description:
  Turn plain-language chat like “Tomorrow 9 AM: write blog post” into neatly organised Todoist tasks with GPT-4o and n8n—zero code.

  🪄 Ultimate Personal Todoist Agent

  Turn natural-language requests into perfectly-organized Todoist tasks—all on autopilot inside n8n.

  &gt; “Add Finish quarterly report by Friday afternoon” → the agent creates the task, sets the due date & priority, and even drops it into the right project. ✨

  🌟 Why this workflow rocks

  All-in-one Todoist super‑powers** – create, update, complete, move, archive… every major Todoist endpoint is wired up (tasks, projects, sections, labels, comments).
  LLM‑powered intent detection** – an OpenAI model interprets plain-English (or emoji‑filled!) messages so you don’t have to remember slash‑commands.
  Minimal setup** – just two credentials and you’re live.
  Battle‑tested building block** – use it as‑is, or plug the Todoist Agent node into your own agents & chatbots.

  🛠️ What you’ll need

  | Credential         | Where it’s used                        | How to set it up                                                                              |
  | ------------------ | -------------------------------------- | --------------------------------------------------------------------------------------------- |
  | OpenAI API     | Orchestrator & LLM nodes               | Paste your OpenAI secret key into an OpenAI credential in n8n.                            |
  | Todoist OAuth2 | Todoist node and HTTP Request node | Log in Todoist from your browser to set up credential in n8n. |

  &gt; That’s it—no webhooks, no extra secrets.
  &gt; Tested with *gpt‑4o‑latest* – the fastest & most accurate model in our trials.

  ⚡ Quick‑start (5 minutes)

  Import the JSON template (hit ▶️ Try it out on the n8n template page or drag‑drop the file into your canvas).
  Select your credentials in the two credential dropdowns.
  Click Test workflow. In the sample Function node, tweak the message field (e.g. “Tomorrow at 9 am: write blog post”). Run → watch your new Todoist task appear.
  (Optional) Swap the Function node for your favourite chat trigger (Telegram, Slack, WhatsApp, Discord, you name it).

  Boom—your personal Todoist genie is alive! 🧞‍♂️

  🧩 How it works (under the hood)

  [Trigger / Chat message]
          │
          ▼
  [🗂️ Orchestrator Agent]  ← OpenAI Chat Model + Short‑term Memory
          │                 ↳ Parses intent & entities
          │
          ▼
  [🤖 Todoist Agent]       ← 15+ Todoist endpoints
          │                 ↳ Executes the right call (create, update, complete, etc.)
          ▼
  [Done ✅  ]

  The Orchestrator is an example. In production you can drop it and simply expose the Todoist Agent as a tool for any other agent workflow.

  🎛️ Customising & extending

  | Idea                      | How to do it                                                                             |
  | ------------------------- | ---------------------------------------------------------------------------------------- |
  | Notion / Sheets sync  | After the Todoist Agent node, add a Notion or Google Sheets node to log completed items. |
  | Voice commands        | Swap the chat trigger for a Speech‑to‑Text node (e.g. Whisper).                          |

  🤝 Need custom automations?

  Want me to build or tweak something for you?
  → Email maxemelyanenko@gmail.com and let’s make it happen!

  ⚠️ What’s not included (yet)

  Shared projects & other Todoist Pro/Business endpoints.
  File attachments in the comments.
  Editing comments.

  Pull requests welcome! 🙌

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

workflow_json_compressed:
  [encoded data, 9404 characters]


name: Discover HIDDEN Youtube Trends / Outlier Videos in Your Niche (Apify + Airtable)
author_name: Nasser
author_username: nasser
categories: []
created_at: 2025-05-18T07:11:19.482Z
updated_at: 2025-05-18T07:11:19.482Z
url: https://n8n.io/workflows/4187
scraped_at: 2025-12-24 13:02:44
description:
  For Who?

  Content Creators
  Youtube Automation 
  Marketing Team

  How it works?

  1 - Every week, retrieve the keywords you want to track
  2 - Thanks to Apify, scrape videos from YouTube Search related to these keywords, filtered by relevance
  3 - Wait until the dataset is completed
  4 - Get the information contained in the dataset
  5 - For each video, clean and summarize the script
  6 - Upload everything to your Airtable database

  📺 YouTube Video Tutorial: 

  Setup (~5min)

  Scheduled Trigger: Select the frequency you want. If you change it, update the data accordingly in the "Create Videos Dataset" HTTP Request node in Body ➡️ JSON ➡️ dateFilter.

  Setup Keywords: Enter keywords related to the niche you want. If you change the number of keywords, update the data accordingly in the "Create Videos Dataset" HTTP Request node in Body ➡️ JSON ➡️ searchQueries.

  Create Videos Dataset: Refer to the Apify documentation for more: https://docs.apify.com/api/v2/getting-started

  APIs: For all HTTP Request nodes in the URL field, replace [YOUR_API_TOKEN] with your API token.

  👨‍💻 More Workflows : https://n8n.io/creators/nasser/

nodes_used:
  ["n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.lmChatMistralCloud","n8n-nodes-base.noOp","n8n-nodes-base.airtable","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4652 characters]


name: Save Telegram Text, Voice & Audio to Notion with DeepSeek & OpenAI Summaries
author_name: Wild Nomad
author_username: rahimin3d
categories: []
created_at: 2025-05-18T08:54:02.684Z
updated_at: 2025-05-18T08:54:02.684Z
url: https://n8n.io/workflows/4188
scraped_at: 2025-12-24 13:02:44
description:
  Tired of manually copying and pasting Telegram messages into Notion? This n8n workflow solves that!

  What it does:

  This powerful workflow automates the process of saving your Telegram activity to Notion. Whether it's text chats, important voice memos, or shared audio files, "TeleNotion Scribe" captures it all.  But it doesn't stop there!  It also leverages AI to generate clear, concise summaries of your messages, giving you instant context and saving you time.

  Key Features:

  Seamless Telegram Integration:** Automatically triggers on new Telegram messages.
  Versatile Content Capture:** Saves text messages, voice notes, and audio files.
  AI-Powered Summarization:** Get instant summaries of your chats with advanced language models.
  Notion Database Automation:** Creates organized entries in your Notion database.
  Customizable:** Easily adapt the workflow to your specific Notion database structure.
  Time-Saving:** Eliminate manual data entry and streamline your workflow.
  Improved Organization:** Keep all your Telegram information neatly organized in Notion.

  Who is this for?

  Project Managers:** Track team communications and decisions.
  Researchers:** Log observations and data from chat groups.
  Note-Takers:** Capture meeting discussions and action items.
  Anyone who wants to save and organize their Telegram chats!**

  What you'll get:

  The complete n8n workflow JSON file.

  Stop letting valuable information slip through the cracks.  Invest in "TeleNotion Scribe" and transform your Telegram chats into actionable data!

  Requirements:

  n8n instance (cloud or self-hosted)
  Telegram API credentials
  Notion API integration token
  OpenAI API key
  DeepSeek API key

nodes_used:
  ["n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.lmChatDeepSeek","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.notion","n8n-nodes-base.switch","n8n-nodes-base.telegram","n8n-nodes-base.notion","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.telegram","n8n-nodes-base.notion","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatDeepSeek","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.notion","@n8n/n8n-nodes-langchain.lmChatDeepSeek","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.notion"]

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


name: Automated Lead Research – From LinkedIn to Ready-to-Send Report
author_name: LukaszB
author_username: lukaszb
categories: []
created_at: 2025-05-18T11:04:57.172Z
updated_at: 2025-05-18T11:04:57.172Z
url: https://n8n.io/workflows/4191
scraped_at: 2025-12-24 13:02:44
description:
  AI Prospect Researcher – Automated Lead Intelligence Workflow

  This workflow is built for professionals and teams who want to scale their B2B outreach with context-rich, personalized communication. It automates the full prospect research process — from pulling lead data and scraping LinkedIn profiles, to gathering real-time company insights and generating high-quality outreach reports with GPT-4. 

  Using a combination of Apify, Perplexity AI, and OpenAI, this system creates a structured Google Doc for each lead, along with a logged summary in Google Sheets. Whether you’re preparing for sales calls, writing cold emails, or enriching your CRM — this tool delivers ready-to-use intelligence in minutes, without manual research.

  The process is modular, production-ready, and suitable for agencies, SDR teams, or founders managing outbound on their own.

  How it works

  Once triggered, the workflow takes in a list of leads from Google Sheets. For each lead, it uses Apify to scrape both the LinkedIn profile and company page (no login or cookies required). Then, Perplexity AI fetches contextual insights and competitor data. GPT-4 validates the research and synthesizes a structured summary of the individual and their company. Finally, a complete outreach report is generated and saved in Google Docs, while key data is logged in Sheets for tracking or follow-up automation.

  This is a powerful, production-grade automation for anyone serious about personalizing outreach without spending hours per lead.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.wait","n8n-nodes-base.wait","n8n-nodes-base.merge","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDocs","n8n-nodes-base.googleDocs","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","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE61a627bRhZ+FUK/Pdm5X/Jrk7SbGkjrNMlusSiKxVzO2IJlUkvRcYwgQB+j+3p9kj2UHIuSSIl0+kew5eGZb745l+8c+vNsnmbPZ/9++UO8Kz/++HOsFj/8HFazs9kNNH72/PNsXq4aX0Y4b9cZSSNLWScRWNDgrXeJcy4MZVk7KpkR2YGI2QjLYmKWaSkDlUJyGjx1aLeBm+XCN/CqhrR6D83t8lWF30ADuEFT38KXs1npbwB3e1tXqyXEpqhhBb6OV1AXb+blNaTzsrXkL1ez57/+huurBO2Pnzen4Zo7aagmUQdGpOJAPEuRQPZSUWZ5TGn2uMsvV1AWcTGP1/Pysvjz9z8+wKop7qr6Oi+quz9//1+71f2yXVrakqz3IsGv4NmNL2/94kM9v7yEGlctq9W8mVclIiHMSXomLEV0S1/jTg3UCPHzl42xf+Fv65Xsy9kDao8syWgjCY4aRC0zcZYBoZHSKIKXUdIt6jdVtSwuPiIj58joahDjarmYN+flS98gfat9kHQcSPEIUmeZQkBqDQsIMnNFbA6SJKqD9B6k0XoL8mIJ5Yvz4tWVb4ofEdOCb3H+HYH+bQt24cvLeOXn5bPFTbt+/eh8D6+k9EyfpvQZf8TrHLUmqUiEyYGgF3pilTeEaQo8SRGsMFu8SFG8Lool1OiQn+bN/aPnjcC9/nyzuNnHzOkZEj0CtX5ELbM1PFhOwFhKpHWUWG8SkSzZpKOWXMiOA/t5M3j/d5s/dhHhhZ9hICOgOwhXVXW9Du1oosFQUQRsxj2ly8SKDIT7xIQX0arQ7nniDFt31ujLYNGJWVaCSMPQnbVkBIQxSdpI8evdM7Cph2CU75/CSG0c5iLCrUe+RLa4Kzj8SXoduIsU6JRTBC2NDAKIowLtKYupJDuP/AghpLVCS7c9xY9QX8Jwunj4a+cYuo2/0x4tOoiMYVr5qEgKap3cGHFBUKJSYM6mGELu+MZ5HoQzzwfRNcpReSe8cqApe4wsy2Ro6fHERxmJZjQL0AqEzkfSwTdlA2vbZDApGxjpojLGE5Mpws2gEa7WhEWdM40qJ6W2cN9jNYrNLdap4uK2Wd42xVtfr9aZ/hTqar1+s3xrZhc/Y0i4GlEhunxzwAt2gWDRVRhUyhHHYyQWktHRSuGhU9lelH5xj7WsysXyoZQ+OY+5cZ7azWIqZqmtZkQFjREToAULhmgdfaCB2ZDNEedg3+QdHHPDmeaT2NXBCCxvQCIPmDKsZcTbIIgRIMHlrILzW8CvoYQahUzxDpZV/XRmOZ1OraEUojWOcEkxCYS2DFOLOSHTZLw2RnHaRdoULxaL4jvf+MF0cFlVlwt4fwXQHMgE5HGMTJDP1CNCsMiZSZkEGTDUwDMStBX4ESMmKc2Fsp1QQ4RH0a1gvwCwtgKM0S7P5COoqJUzKeGNmsyxmqpMPHJFose8lyIzTnXC5y2aqDCEHjVn8SLG6rbEPHDx/sMg1KumWb6D/96iityD3Gb7TeE9QePWJdHtfHCCExSGtqURq6iKGE3eaQHRaG7sGMSvv38KYMYnAw7GJ8eSQRmREGarwjF1OIKJiSmWk4u6A7iV/r68/0sZflAFoxFTo5TSzBGqKVLsAvosNisk5wSQHJayrlAZRPx0hqcCDt4wa7HeKmrQi5NKJEThCQ1cOqtdFIbvhtY7WN0umlXx1T/GhxmzozygG2TgNJdKIzJ0XCyyqFuD8hr1inciRJDcmn54D9xOQzeGvS48aoMOIaEuNNa2HYxE3zTYZnGFBQmlozFxJ6K+tgLv9xqB8U6pB4VVDU19f1H+w88Xm+b38NpR36L6fQnNHUCJvWbb6CpK6ZbvBJ6j3iI85IxCl7dJFtAdHKikhMdWR+zyPc/Fh3f//H48z3zdw0zjmQfQTgDqf2pTmwiwsZU0ER9QqSjuY+jm2gdYv7y7+On1NFzTnJOJzDB1WuKpb8sSugA22VjntaHJ85A8Db233/omNPOmqlt3faIrMGWHSv1f4QlOZiklRp4CTGdStrkXNS2xyRnGnXVSso46TAnb21a6FE1VpCqekAbfVXFPGHDLRymXTjvuWcwWW8vsjMSGw2ABZtxg6jVKG3DCmg79r2po9dWToI3srHin50bNlCMnom2uUEmjq2IJIIKjLHQoXBM3u+Qha6uvcmmqphKYD8bg60oqk6Ht/g3eLACS1461uMbMFQLlkXMDfKd7mcfr++KnqhnuSFfrNQ9Luilro54P0M1iVTZQNmhpdmSQpTxITzmhTCHOEAzBvruVMMl6E6XDa+7FOTwAGARq2ms+TEzjgKastI+OEgbYSEmG5cp7/FVkx1DzC5tkP1D+BKBtEZBPpVRgG8UNchhMwGTqsZ9y3kXCtcrYoiDjzvQiFZORGttfrcYBxZ5EYYMKRKTcTn00FiNvLMY7pVmrmLgXvUDlZKDMDUzWxiE1hjFsQgTRlKJQjZZiL5AlwS6Aa5asgW6y7CBV05GKb+JUqWS1ZBQVVMtpBmz2pMJEhWSmEDjLmfYi1ZORcjUwBBrJKXUyCExJYh1QwqLuZ9hPA002+qQA+65epGYyUqHWtz81oHC1j838I+6U/WKFVRZFRTMvL9ePwieIt+0GF3WCGi18ZK2Nj5vn1wNGTRXnOgXsP9vLwMKFsiZFdKBsg2TGBNEeEUGUEFtTa8Pnuf28wfYfof/6ef3CYkiMrVedzeZlgk+z5xQhHzywJ5MOnvgNQa+nwn2bjmwSe41uBpx9Vo/OmgYBsl5b43qsXqOPg4Q+u4PvTHpNddRH74GH5dMgsq933Wdvb3bca2NnkDPkULtzlGNYNm70VDC7Eujb+d6fp/V6Ro8i7DW2v3XHWDeeRs4f9rc46wbTUH949KFRg6VB2nf9bsg7e/Rpr8XDsTxa9PP/tIPLW38JD9+NDfaDJ/f3O+Ss7wRj3sWNOw47eZ7BUe7Js/S84Ty12ZiDndy37wYGkv2oDnYwTezPZiZnC35o63EMNdkYezA29GZmw3337cskv915cJ+NI/fWd47um7f++nKsyg0l98FR2bQt1nmmb4+997C9Vo8LiFPID2eQQ5scc9y+XQajeOIpjpJzStSc/GeSfuR9L2h6Nvjy5f+s9fmmsSMAAA==


name: Improve AI Agent System Prompts with GPT-4o Feedback Analysis and Email Delivery
author_name: Daniel Rosehill
author_username: danielrosehill
categories: []
created_at: 2025-05-18T17:45:40.254Z
updated_at: 2025-05-18T17:45:40.254Z
url: https://n8n.io/workflows/4197
scraped_at: 2025-12-24 13:02:44
description:
  AI Agent System Prompt 'Auto-Tuner'

   This workflow configures an AI agent which provides an edited system prompt for an autonomous AI agent Based on the following pieces of information provided by the user in an input form:

  Agent name
  Agent purpose
  What's working
  What's not working
  Current system prompt

  There are two additional form elements that I've marked as non-required but if you want to force more detail from the user you can mark these as required:

  Example prompt
  Example output

  This information gets sent to the AI agent which is configured with a system prompt of its own and the form elements are concatenated into a user prompt prompting the agent to evaluate the system prompt, deliver an improved version, and provide some notes for logging. The output structure is constrained with JSON. OpenAI 4o is recommended for its overall strong adherence to structured outputs.

  Once the agent delivers its improved system prompt, this gets passed to the user via email notification. The final delivery stage can be alternated according to user preference 

  When This Is Useful

  Anyone working on AI agent configurations will likely be familiar with the pivotal importance of the system prompt in directing the desired behavior of the agent. 

  Frequently this requires long hours of iteration before a consistent desired behaviour is achieved.

  Sometimes we can figure out what's working and not based on our own intuition and experience, but at other times soliciting the outside perspective of another AI tool can be a helpful way to consider alternative explanations or improve our own prompt engineering.  

  This configuration is intended to speed up this iterative process and reduce the amount of time we spend working on system prompts to configure effective agent workflows 

nodes_used:
  ["n8n-nodes-base.formTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.gmail"]

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


name: Auto-Repost TikTok Videos to YouTube Shorts with Google Sheets & Telegram Alerts
author_name: Arkady Reveinz
author_username: pineapplesqueez
categories: []
created_at: 2025-05-18T18:17:44.056Z
updated_at: 2025-05-18T18:17:44.056Z
url: https://n8n.io/workflows/4199
scraped_at: 2025-12-24 13:02:46
description:
  TikTok to YouTube Parser Video


  Generate traffic and grow your audience effortlessly with this plug-and-play n8n automation template.
  Automatically fetch TikTok videos, upload them to YouTube Shorts, save logs to Google Sheets, and trigger uploads via Telegram — no coding required.
  Perfect for creators, marketers, and automation enthusiasts.

  What This Workflow Does

  This complete n8n automation:

  ✅ Fetches the latest TikTok videos from any user
  ✅ Avoids duplicate uploads with intelligent filtering
  ✅ Uploads to YouTube Shorts via OAuth2
  ✅ Saves video metadata to Google Sheets
  ✅ Sends Telegram notifications on completion
  ✅ Lets you trigger uploads directly from Telegram
  ✅ Supports custom titles, tags, descriptions, and privacy settings

  Use Cases

  📈 Repurpose TikTok content to grow your YouTube channel
  📲 Automate content curation from influencers
  🕐 Schedule regular syncing (daily/hourly)
  👩‍💼 Perfect for agencies, content managers, or solo creators

  What’s Included


  Intelligent filter to avoid re-uploading already-processed videos (via staticData)
  Dynamic title extraction from TikTok video
  You control the video description (use for ads, credits, or SEO)
  Upload scheduling (via Schedule Trigger or Telegram Trigger)
  Append upload logs to a connected Google Sheets document
  Telegram Trigger support — send a username to your bot and watch the magic happen
  Easily adjustable through Set nodes (number of uploads, tags, etc.)

  🎥 See It in Action

  Want to know exactly how it works?

  Watch the video demo https://www.youtube.com/watch?v=Aci40EpeGvA to see the workflow in action — from fetching TikToks to uploading YouTube Shorts and logging everything in Google Sheets.

  📲 Telegram trigger included — you'll see how easy it is to run the whole process from your phone.

  Requirements

  An n8n instance (self-hosted or cloud)
  YouTube API credentials (OAuth2 setup included)
  Google Sheets API enabled
  Telegram bot token (optional)

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.function","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","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.code","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WYS2/bOBDHv4qhs1nw/citaDdFD9summyBxaKHITlMhDiSa8vJBkW++46UNHZiubbTSx4yNfzNcB5/+kdV5+qkess/fvmeztJtfY6+vdHVtLrGDqqTH1XdLDtoEn7s15WohNfFF+ACQWifOQfIJUSXBCrvojSoshEao4CgVC6xBFlKhpg1crLb4fV8Bh2+W2BenmG3mr9r6Ql2SBt0ixXeT6sGrpF2+6ddna8i9i/BxbI6+fcbfdRm7P/88QBetOXBW8csbcx0UI555TQLUVjPvVdleP/R4J/QrGA2OV/UFxe46O3ezfvnjW/YYJhFWOKb62HZetW8XdZd3Ta0LfOSTz0nkDksyGiHC6L5cf9g6iv9N6wT99NHwJCzL1lEJrhNTNsgmXc5sZwpTMV4i8mvAU+xS5eT8/rqvL2afK0ztsudlJddN/+C31e47J4zWj4Vci+ifEJMHGOQCKygEkyjLMyn4pk2GYrl4IrZiOFpPSOLk094uw+wrJo0ID2jC5xPmTgghNMKZrdwt/y86uar7j306VhgtsQncAmp2Cwc09zQD5c589FkloNCpbkSGqB6mU2Tv+ezFvLkrKnnc+yOD68wmk+l3euAfiP3u+CiBu1KZNwJSg/tFAMTDQMupfGcC+nyTheG+B/vgOQHO/DEaUMqzkNhIWmgUEsKNRBncEUKpWzmcoPzLUW2yZOunXxo24sZTs4uEbvdmXIxrHpa9CzYVG/sENh1OhdbVEpUYqavOJkcC4UDC9oRtstgg1ujvm9vm98JJmXyQcFch9J4U5QXyBxQW9AWFIsqAZNSCIjAgwCx5vsj193ktMZZ3h2+Jb6AooIgKL4XSr1Zh40757zCyMCK/oRDosM1iWKvrPUpBJk3Tvisq9PV3eRT2+FurGHN45JNOjvQvYSrUtt02HRkqNrdT5EKPohsGEpDzcprzXywyIpMFEoHWMJGPz1Ll5hXlID7Wv7yceHupi/1/pa1UTBR6WJjQMZ9pFZqk2HRy8SUEUIbCDS3NsJ5jjO8IMs7+br1gs1KVvZn8t1ivGzbq2FKV0dwUsR4SsqyLFPf/B0VCrnKsg2gbKCZbeQ25954/uQdj2df1GYL20mlMVNhgOOa6Qh0tMUoaucyJ+ROC52PcS15QfM/FeZ86nsrUqHlxJninlq4CToFOZrR4uiUloo82m4Ch6W0osgDlF60eKo8ibyXL8ikLiiTFNRgxznl0ZyC0u7VnFxQukWqOo+UIFq6yKJDzzC5SILQBLmptTY41fGcalAJIzLmMNQQAqDwkQVIiukiaKwmnxgHKbAY6cLmDNhA1ccfvSdSta1nDgQlpZy886w4ZahNiMAComaFijK5AtaVcVBzfNv1/vVtN5scLVigMwlUm5x+BNJajEcfJM0s6hIbnO+IZidfevhwk4wazmM/OFSyQt8ZomKogZSf54l5rUhFSQ8+Oywpb0rWbVU9ualhcv5h0u3pY78S2UcRCykxKpdYyt4yLXxhAEDFI6Fk47TjQY0etH3dQevtcXXYSUcApOMULNGoJR2gFAtBCEZXOFDBZAdpvBu5o0F7HaBfLQQK6mRFZpFkCt1VuCTl4pCmhXXCeMw+hzXncOqTj01pF9fweCk5UEwJ4Q+a/r2YojVAd54bfNT504rMdXVz8eAXzGa4+Kud1emONr5tF1dl1t4uTxft9RkZ/nzbDKmI/2Fa9bt/XmR6cFLdiD4QNw87DbOSFy80NQ9SjTQhtaEG5wUpXS6KDs46430vgyiSDQ6XsAFgqEv6fQ117xldopvhyVEVMrw8reom43/VCb//9o3YNmXqgRvssfhCmI8Z/fV1aNTqi28AxqyOKu5RY1vq8vfMbYmrMXPPW+uone0b+pihvXe0l7anT6/+ophGgbbXH3CaW/fzcV9H8mo0/3Z/azFqdzS1xgxvK/dD7P10bszirhvpof6/LNzfD8f9/f8k9h1OJxQAAA==


name: Extract Structured LinkedIn Profile Data with Airtop & AI Parsing
author_name: Airtop
author_username: cesar-at-airtop
categories: []
created_at: 2025-05-18T21:05:49.407Z
updated_at: 2025-05-18T21:05:49.407Z
url: https://n8n.io/workflows/4203
scraped_at: 2025-12-24 13:02:44
description:
  Extracting LinkedIn Profile Information
  Use Case
  Manually copying data from LinkedIn profiles is time-consuming and error-prone. This automation helps you extract structured, detailed information from any public LinkedIn profile—enabling fast enrichment, hiring research, or lead scoring.

  What This Automation Does
  This automation extracts profile details from a LinkedIn URL using the following input parameters:
  airtop_profile**: The name of your Airtop Profile connected to LinkedIn.
  linkedin_url**: The URL of the LinkedIn profile you want to extract data from.

  How It Works
  Starts with a form trigger or via another workflow.
  Assigns the LinkedIn URL and Airtop profile variables.
  Opens the LinkedIn profile in a real browser session using Airtop.
  Uses an AI prompt to extract structured information, including:
     Name, headline, location
     Current company and position
     About section, experience, and education history
     Skills, certifications, languages, connections, and recommendations
  Returns structured JSON ready for further use or storage.

  Setup Requirements
  Airtop API Key — free to generate.
  An Airtop Profile connected to LinkedIn (requires one-time login).

  Next Steps
  Sync with CRM**: Push extracted data into HubSpot, Salesforce, or Airtable for lead enrichment.
  Combine with Search Automation**: Use with a LinkedIn search scraper to process profiles in bulk.
  Adapt to Other Platforms**: Customize the prompt to extract structured data from GitHub, Twitter, or company sites.

  Read more about the Extract Linkedin Profile Information automation. 

nodes_used:
  ["n8n-nodes-base.airtop","n8n-nodes-base.formTrigger","n8n-nodes-base.set","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.set","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4136 characters]


name: Create Ideal Customer Profiles from LinkedIn Data with Airtop and Claude AI
author_name: Airtop
author_username: cesar-at-airtop
categories: []
created_at: 2025-05-18T21:11:43.078Z
updated_at: 2025-05-18T21:11:43.078Z
url: https://n8n.io/workflows/4204
scraped_at: 2025-12-24 13:02:44
description:
  Define Your ICP from Customer LinkedIn Profiles
  Use Case
  This automation helps marketing and sales teams define their Ideal Customer Profile (ICP) using real LinkedIn profiles of current high-fit customers. By enriching and analyzing profile data, it generates a clear ICP definition and scoring methodology for future targeting.

  What This Automation Does
  This automation analyzes LinkedIn profiles of your existing customers and produces:
  A structured ICP definition
  A scoring model to evaluate future prospects
  A Google Boolean search string to find similar prospects

  Input:
  LinkedIn profile URLs of existing high-fit customers (e.g., https://www.linkedin.com/in/amirashkenazi/)

  Output:
  A Google Doc containing the ICP analysis and scoring methodology

  How It Works
  Trigger: Waits for a chat message containing one or more LinkedIn profile URLs.
  AI Agent: Parses and processes the URLs.
  Airtop Data Enrichment: Uses Airtop to extract structured information from each LinkedIn profile (e.g., job title, company, experience, skills).
  Memory: Maintains state between inputs for consistent analysis.
  LLM Analysis: Uses Claude 3.7 Sonnet to synthesize enriched data into a meaningful ICP.
  Google Docs: Automatically creates a new doc with a timestamped title and appends the ICP definition.

  Setup Requirements
  Airtop Profile connected to LinkedIn, Insert the profile name in the Airtop Tool
  Airtop API credentials. Get it free here
  If you choose to activate saving the profiles in Google Docs you will need OAuth2 credentials (or just copy the ICP definition from the chat)

  Next Steps
  Use the ICP for Scoring**: Feed new LinkedIn profiles through the same Airtop enrichment and use the scoring function to evaluate fit.
  Automate Target Discovery**: Plug the Boolean search output into LinkedIn, Google, or People Data Labs for ICP-matching lead generation.
  Refine Continuously**: Repeat the workflow as your customer base grows or segments evolve.

  Read more about how to Define ICP from Customer Examples

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.stickyNote","n8n-nodes-base.airtopTool","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDocs","n8n-nodes-base.googleDocs","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6636 characters]


name: Score LinkedIn Profiles Against Your ICP with Airtop
author_name: Airtop
author_username: cesar-at-airtop
categories: []
created_at: 2025-05-18T21:14:30.270Z
updated_at: 2025-05-18T21:14:30.270Z
url: https://n8n.io/workflows/4205
scraped_at: 2025-12-24 13:02:45
description:
  Scoring LinkedIn Profiles Against Your ICP
  Use Case
  This automation scores individual LinkedIn profiles against your Ideal Customer Profile (ICP) based on interest in AI, technical depth, and seniority level. It's ideal for prioritizing leads and understanding how well a person fits your ICP criteria.

  What This Automation Does
  Given a LinkedIn profile and an Airtop profile, it:
  Extracts relevant data from the person's profile
  Determines levels of AI interest, seniority, and technical depth
  Calculates an ICP score based on weighted criteria
  Returns the full enriched profile with the score

  Input parameters:
  LinkedIn Profile URL** (e.g., https://linkedin.com/in/janedoe)
  Airtop Profile** connected to LinkedIn
  ICP scoring method** in the Airtop node prompt

  Output fields in JSON format:
  Full name, job title, employer, company LinkedIn URL, location, number of connections and followers, about section content and more
  Calculated ICP Score (out of 100)

  How It Works
  Form Trigger or Workflow Trigger: Accepts input from either a form or another workflow.
  Parameter Assignment: Ensures proper variable names for downstream nodes.
  Airtop Enrichment Tool: Extracts and scores the person based on a detailed prompt.
  Scoring: Uses this point system:
     AI Interest: beginner (5), intermediate (10), advanced (25), expert (35)
     Technical Depth: basic (5), intermediate (15), advanced (25), expert (35)
     Seniority Level: junior (5), mid-level (15), senior (25), executive (30)
  Output Formatting: Cleans and returns the result as JSON.

  Setup Requirements
  IMPORTANT: Enter your ICP scoring method in the prompt field of the Airtop node 
  Airtop Profile connected to LinkedIn.
  Airtop API credentials configured in n8n.
  Optional: a front-end form to collect profile URLs and trigger the automation.

  Next Steps
  Embed in CRM**: Trigger this automation on new leads to auto-score them.
  Batch Process Leads**: Run it over a list of profile URLs for segmentation.
  Customize Scoring**: Adjust point weights based on your sales priorities.

  Read more about Scoring LinkedIn Profiles Against Your ICP

nodes_used:
  ["n8n-nodes-base.airtop","n8n-nodes-base.formTrigger","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4600 characters]


name: Real-time X Post Monitoring & Auto-Categorization with Airtop
author_name: Airtop
author_username: cesar-at-airtop
categories: []
created_at: 2025-05-18T21:19:05.350Z
updated_at: 2025-05-18T21:19:05.350Z
url: https://n8n.io/workflows/4206
scraped_at: 2025-12-24 13:02:45
description:
  Monitor X for Relevant Posts
  Use Case
  This automation monitors X (formerly Twitter) search pages in real time and extracts high-signal posts that match your categories of interest. It’s ideal for community engagement, lead discovery, thought leadership tracking, or competitive analysis.

  What This Automation Does
  Given a search URL and a list of categories, it:
  Logs into X using Airtop
  Opens the specified search URL
  Scrolls through the results
  Extracts up to 10 valid, English-language posts
  Filters and classifies each post by category (or marks as [NA] if unrelated)
  Returns the structured results as JSON

  Input parameters:
  airtop_profile** — An Airtop browser profile authenticated on X
  x_url** — X search URL (e.g., https://x.com/search?q=ai agents&f=live)
  relevant_categories** — Text-based list of categories to classify posts (e.g., "Web automation use cases", "Thought leadership")

  Output:
  A JSON array of posts, each with:
  writer
  time
  text
  url
  category

  How It Works
  Trigger: This workflow is triggered by another workflow (e.g., a community engagement pipeline).
  Input Setup: Accepts the Airtop profile, search URL, and categories to use for classification.
  Session: Starts a browser session using the Airtop profile.
  Window Navigation: Opens the provided X search URL.
  Extraction: Scrapes up to 10 posts with /status/ in the URL and text in English.
  Classification: Each post is labeled with a category if relevant, or [NA] otherwise.
  Filtering: Discards [NA] posts.
  Output: Returns the list of classified posts.

  Setup Requirements
  Airtop profile with an active X login.
  Airtop API key connected in n8n.
  List of category definitions to guide post classification (used in prompt).

  Next Steps
  Feed into Engagement Workflows**: Pass the results to workflows that reply, retweet, or track posts.
  Use in Slack Alerts**: Push classified posts into Slack channels for review and reaction.
  Customize Classifier**: Refine the categorization logic to include sentiment or company mentions.

  Read more about Monitoring X for Relevant Posts

nodes_used:
  ["n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.airtop","n8n-nodes-base.airtop","n8n-nodes-base.airtop","n8n-nodes-base.airtop","n8n-nodes-base.filter","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.stickyNote"]

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


name: Monitoring Job Changes on LinkedIn with Airtop
author_name: Airtop
author_username: cesar-at-airtop
categories: []
created_at: 2025-05-18T21:21:45.614Z
updated_at: 2025-05-18T21:21:45.614Z
url: https://n8n.io/workflows/4207
scraped_at: 2025-12-24 13:02:45
description:
  Monitoring Job Changes on LinkedIn
  Use Case
  This automation tracks job changes among your LinkedIn connections and extracts relevant details. It's ideal for triggering timely outreach, updating CRM records, or feeding lead scoring workflows based on new roles.

  What This Automation Does
  It scrapes your LinkedIn "Job Changes" feed and returns:
  Name of the person
  Their new position
  LinkedIn profile URL
  Functional category (e.g., marketing, sales, HR, executive)

  Each run processes 5 job changes at a time.

  How It Works
  Manual Trigger: Starts the workflow when the user clicks "Test workflow."
  Airtop Enrichment: Navigates to the LinkedIn job changes page and extracts:
     name
     new_position
     linkedin_profile_url
     position_function (classification such as marketing, sales, HR, etc.)
  Formatting: Output is structured into clean JSON for use in further workflows.

  Setup Requirements
  Airtop Profile connected to LinkedIn
  Airtop API key configured in n8n
  A LinkedIn account with a populated “Job Changes” feed

  Next Steps
  Automate Alerts**: Add Slack, email, or CRM integrations to notify your team.
  Enrich and Score Leads**: Chain this with your ICP scoring workflow to evaluate new roles.
  Customize Scope**: Expand extraction to more than 5 job changes or add filters based on job titles or functions.

  Read more about Monitoring Job Changes on Linkedin.

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

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


name: Extract and Structure X Post Comments with Airtop Browser Automation
author_name: Airtop
author_username: cesar-at-airtop
categories: []
created_at: 2025-05-18T21:23:56.516Z
updated_at: 2025-05-18T21:23:56.516Z
url: https://n8n.io/workflows/4208
scraped_at: 2025-12-24 13:02:45
description:
  Extracting Comments from an X Post

  Use Case
  Engaging with conversations on X (formerly Twitter) is critical for brands and individuals monitoring sentiment, leads, or emerging trends. Manually collecting comments is time-consuming—this automation enables scalable extraction of comment data to inform your outreach or analysis.

  What This Automation Does
  This automation extracts comments from a specified X post, with the following input parameters:

  airtop_profile**: The name of your Airtop Profile connected to X.
  x_post_url**: The URL of the X post to extract comments from.
  max_number_of_comments**: The maximum number of comments to retrieve.

  How It Works
  Takes input via a form or another workflow.
  Normalizes the input values.
  Creates a new browser session using Airtop.
  Navigates to the provided X post.
  Uses a prompt to extract up to the specified number of comments, returning:
     Author name
     Author profile URL
     Comment text

  Setup Requirements
  Airtop API Key — free to generate.
  An Airtop Profile connected to X (requires one-time login).

  Next Steps
  Pair with X Monitoring**: Use this with the X monitoring automation to detect relevant posts and extract discussion context automatically.
  Feed into Analytics**: Combine with summarization or sentiment analysis tools to understand audience response at scale.
  Export for CRM/BI**: Pipe the structured comment data into your CRM or business intelligence stack for lead tracking or reporting.

  Read more about Extracting Comments from X Posts

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.airtop","n8n-nodes-base.formTrigger","n8n-nodes-base.set","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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


name: Personalized Taiwan Indie Music Recommendations with AI, Star Sign & Weather via Spotify
author_name: clancy jack
author_username: theclancyjack
categories: []
created_at: 2025-05-19T02:08:54.641Z
updated_at: 2025-05-19T02:08:54.641Z
url: https://n8n.io/workflows/4210
scraped_at: 2025-12-24 13:02:45
description:
  This n8n workflow recommends Taiwan indie music based on a user's city, mood, birthday, today's weather, and star sign. Here's a concise overview:

  Trigger: Starts manually with the "When clicking ‘Test workflow’" node.
  Input Setup: The "infomation" node sets user inputs (e.g., city: Taipei, mood: Happy, birthday: 1996/11/21).
  Song Recommendation: The "get song recommendation" node uses OpenAI's GPT-4o-mini to:
     Fetch today's weather for the specified city.
     Determine the user's zodiac sign from their birthday.
     Check the zodiac sign's daily fortune.
     Recommend a Taiwan indie song considering weather and fortune.
     Explain the song choice and highlight its features.
     Return results in JSON format.
  Data Extraction: The "Information Extractor" node parses the JSON output, extracting fields like date, city, weather, zodiac sign, fortune, song, artist, and additional info.
  Spotify Search: The "Spotify" node searches for the recommended song using the artist and song name, retrieving a Spotify URL.
  Final Output: The "Final Output" node compiles all data, including the Spotify link, into a structured format.
  Additional Note: A "Sticky Note" provides context about the workflow's purpose and credits the creator, n8nguide.

  This workflow integrates AI, weather data, astrology, and Spotify to deliver personalized Taiwan indie music recommendations.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.spotify","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4640 characters]


name: IOT device control with MQTT and webhook
author_name: Tony Duffy
author_username: tduffy
categories: []
created_at: 2025-05-19T04:38:11.299Z
updated_at: 2025-05-19T04:38:11.299Z
url: https://n8n.io/workflows/4211
scraped_at: 2025-12-24 13:02:44
description:
  . 

  IOT device control with MQTT and webhook


  This workflow is for users wanting a practical example of how to control IOT systems using the MQTT protocol in an an n8n environment.

  The template provides typical n8n MQTT and Webhook node implementation and configuration settings necessary to set IOT device inputs and outputs.

  How it works

  A webpage with IOT control 'on and 'off' buttons is presented to the user. When a button is selected on the webpage the value is sent via a webhook to trigger the active workflow. The workflow set node then prepares the received value into a message payload. It then passes the message to the MQTT node for publishing the topic with the payload to a cloud based MQTT broker. A remote ESP32 micro-controller subscribes to the broker and reads the payload contained in the topic. The ESP32 will then toggle the GPIO pin depending on the topic payload value.

  The IOT control webpage

  The webpage is a simple HTML page containing the  clickable 'on' and 'off' buttons. It also has the get webhook URL that sends the selected value to the n8n workflow in this case running locally.

   The URL webhook format is http://localhost:5678/webhook/pin-control?value=action

  The webpage code

  IOT-control.html

  IOT device 

  The IOT device is an ESP32 micro-controller running on a remote network. To keep it simple GPIO2 is selected as the control output.  In this case when the received value is "on" GPIO2 goes high a led will turn on in the ESP32. It will go off when the received value is "off".

  The program for the ESP32 IOT control is 'main.py' . You will require a micropython interpreter to be uploaded to the ESP32 for the program to run automatically. The code can be easily edited and modified to accommodate any further attached IOT devices.

  The ESP32 main.py code

  main.py

  How to customise this workflow to your needs

  ESP32

  You will need a working ESP32 installed with a micro-python interpreter.
  The code main.py is provided.
  The main.py program can loaded and edited with a python IDE. I used Thonny for this example.
  Use a free MQTT broker to get started. I used "broker.emqx.io" in the code.

  IOT Control Webpage

  The webpage contains HTML and can be easily edit to enhance functionality. The embedded webhook is configured for n8n production mode. http://localhost:5678/webhook/pin-control?value=action
  If you want to run the page in test mode you will use the following URL. 
  http://localhost:5678/webhook-test/pin-control?value=action


  n8n workflow.

  The workflow is a good demonstration of how to control IOT devices using n8n.
  Following these steps will give a good insight for microcontroller automation.

nodes_used:
  ["n8n-nodes-base.mqtt","n8n-nodes-base.set","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE5VW227jNhD9FULooxmQoi6kgT7tFm1QdJPFul0U3TzwMrK1USStRDsxDP17h5KSOFkbQfyky3BmzpkzRz5EpYuWEeN//7HeZLn49+N+lz58ihbRHXgdLQ9RWfde1xYuQ1wexzxVMksTK2KpFKgkF1xrw5PEOOuEkLlIbaxtzKWzDO+44FZrZoBBITGvh7u20h4+dOD6L+C37YcGn4AHLOC7LQyLqNZ3gNUur1bENrXvmorsSk3++rxaEV07cg9m0zS3IZte99Hyvxs80zgIl4cJkXDCxCAZTSABmgiw1MSFozljDHLBcsXT6KnSmPl6a6qy35BV05aWfMJ8ocC+DQG1rOlYgRrdw8XdD+/xZdv0pS+bGstmki1ozLCRVneY1EPXB/p8SIYJ2rKmM5aR3L7X65D418OB/PK9b+oLjCDDgC+bNuQMp5GKHmp3Wbdb/1GHeRS66gNDFtmD2pd4G6qM/Sxn6A/e5an/fss3f1afr4x+BVNb22xrHw3DhO4f7HTEwIfFnKFI8FdwRZM40TSRuaHS5ZYKmzGl09QoLp6z4hCJw+5I0XTTjGZ4pNX7qtHuLI09vGJRZKdZ3OlqC+NV77uyXo9znssjb5hkjHjB548tdPuL8XngdbgZXlF7C9Be1dUe+39S3hlCBDilMiNpwlVBk1RqqnOeUyNS4DqNtUx5dFK3XyepkrMcPGv5iIf4kYb57bh8mWIiS3JFC8hzmjDg2ARjVOoY4ozFwGxYsJfMtdpvfpLfEQ3nMSes0BmuMrUpTxF4bKgSrqBgwSglrJBWHYnAl/Z2j1vjz29NP8bMIUdoaZg6z34e+wbK9QaHw5GPKLSPkse0XzdQE78B8i1q6m8RQdnhVVHgpdl639Sk7ImtsBg40kyhxzNBUtsgz/B8Jpiswffjgx4qsGhGZFJOsBuU3HqNLU0Hmu62qJp7Ep2nDj2ykDYDGssU9ycRmhqnHNUgkjQzSmdanqSOv5s7wQJ3yXnu5AvqViNCT0Jm0naAZ2DC1eFcyx1Mm6x7ol9v8bjeIXJc8cnXzlMQpwy7gowWSWbRR2xMTa40TUUONlE5ekh+koL43RRk8VvyYS84mH0ecT8jQQEdrQgK6b70mxHtI/qRF988iSi8+/368upRYL99uRYxuStt18whFXQnCMIutfXI9GzmweK9R08bW4YHsNuA66pzeHwZ7XjIsZvOjzZQpI6jLSuKAuMoriKlhklJrS6MhNQ4tIJoxFujkOc9P+1J4cuhy8BhsNPwwXuXm49nF/gPwcFDtGTDTbDYt8+fqvrmB/hErWH4H1d0pKG+CAAA


name: Automatic Media Download from WhatsApp Business Messages with HTTP Storage
author_name: Usman Liaqat
author_username: usmanliaqat
categories: []
created_at: 2025-05-19T05:57:16.870Z
updated_at: 2025-05-19T05:57:16.870Z
url: https://n8n.io/workflows/4213
scraped_at: 2025-12-24 13:02:44
description:
  This workflow listens for incoming WhatsApp messages that contain media (e.g., images) and automatically downloads the media file using WhatsApp's private media URL.

  The trigger node activates when a WhatsApp message with media is received.
  The media ID is extracted from the message payload.
  A private media URL is retrieved using the media ID.
  The media file is downloaded using an authenticated HTTP request.


  Ideal for:
  Archiving WhatsApp media to external systems.
  Triggering further automations based on received media.
  Integrating with cloud storage like Google Drive, Dropbox, or Amazon S3.


  Set up steps
  Connect your WhatsApp Business API account.
  Add HTTP credentials for downloading media via private URL.
  Set up the webhook in your WhatsApp Business account.
  Extend the workflow as needed for your use case (e.g., file storage, alerts).

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.whatsAppTrigger","n8n-nodes-base.whatsApp","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  H4sIAAAAAAAAE62WUW/bNhDHv4og7NE0KIqSKAN7yNJ2y9CtQZqkaYs8UOTJ0iyLmkTFdQN99x1lO05cJ+uGvgTk6XjH+/2PF9/7S7DSn937Zd1ZWSs40/7M58BYmjAGseKh5GnANdNxHCQi4yIMI6nzJI10Eso8A4gyCpKqiKWhgJxrAf7Et7BsKmnhtAXdvQfbN6cGLWABE9i2h2Hi10ZD588+Y3aXVTIONOUp0SqPCReaE5GlQBQwGoDIRKIFRq7lEtD7vS3VYu39aeyYbt04Yy1qMkYlmexg2o0+W5fGdKUtTY0JCQsFnRBO6S3aZYsRLbSd47AqtS38WcjoxC+gnBfWnzGOG2VqCzXu/Mui7Lwag3plrUuFRXaeLaTFP+CtTLvIK7PybFvO5xjUWxVQe9KrYeV9QK/upGm8JXSdnKN3aQvc6FJ6GLMFBeUd6Kk/bCq6xvPjjYNhsoWUR0GolMiISHVIOBcByZJcEqlwH2ZSRDE7Cin475SC9IdQgi/YCdhfe0ibis9euaL7DrRnDRaPxOAOEFXTlndI1bu6eOvlpvW0WdWVkbqs5/vjL0FCDhBLbCIhIkG4lpzIjCkieCyZCoHmORyFxP4HpJj+CEgFfq+czzeY8rICB2pHAXH13Q7Fjpp+DO3F/olTLjOdEC1VTnggEyKYlCSIkixXecRzEe7RXG6aeN+4f7grPQtptXXbHjt8dMy1E+JAUivICmMW47QRMedxmmvCKEW1eIRChTkQETG8JMtYGLuUT+GaxoV1S6y1b7R7hZjE376szr9Fu8Lhg6BLWW0EeXq9k6YcJ984e3hQx+zmg7HR+TK4eb1H8FD6u5MeH6tUyvSo3fBC94WQcJkyLCWJCE+oJoLSkCRxGOCgzBIa5/v4b8CqYsPVe7WV2In4r5AP+1Acp5tRxKhjSaIoQ7pBGhEZc5yqCFtkCRqU+oZuC53pW+WyL7eKmwZauUm2sV211a9g8cu4w+WY7uf7e++nvzpTT3dKfKa303KJq2mpvWHwn9flsSDr69/Xdx/fVhfd1/XrqLs+Ish3SBFBmtEUBMlSjXpESUCkSLH5OU5LJmOhQrWP/IB/o8YbfHjPqlBY21zA3z109lCIiD4I8ZRq31ZPCOHeAZk8amZHvsElHKwHV6TEBnTY1E6HOdTQlur0Aeelu+tkZ3cNe7m5vbvub4DDo3XGIxo4h19AtluHnQxnxSpb0PNg+XHx7tOnqj2QQaIMJ+eld2kWULuoB3l2YS7Wy75l5uTrTVrB6io9GuZsF+ZQTz5lw+04NmtQD6SemU34ZYn/bVAJ/F3hBPuuNzYemeCvIA1f/Bkdbt34ePbYsRwvNs+R8MPwD6ZN21R9CQAA


name: Cold Email Outreach with Gmail and Google Sheets Status Tracking
author_name: Usman Liaqat
author_username: usmanliaqat
categories: []
created_at: 2025-05-19T06:09:58.904Z
updated_at: 2025-05-19T06:09:58.904Z
url: https://n8n.io/workflows/4214
scraped_at: 2025-12-24 13:02:42
description:
  This workflow automates personalized cold email outreach by pulling lead data from a Google Sheet, sending emails via Gmail, and updating the sheet to track who has been contacted.

  Features
  Automated Scheduling* – Runs daily at a specified hour via the *Schedule Trigger** node.
  Google Sheets Integration** – Fetches leads whose "Is Email Sent" value is empty.
  Batch Processing** – Processes leads in manageable batches.
  Personalized Gmail Outreach** – Sends custom emails using a pre-written template.
  Status Tracking** – Updates each lead’s row after an email is sent to prevent duplicates.

  Requirements

  Google Sheets OAuth2 credentials**
  Gmail account with OAuth2**
  Access to n8n with a deployed instance

  Setup Instructions

  1. Connect Accounts

  Authenticate Google Sheets and Gmail nodes via OAuth2 in your n8n credentials settings.

  2. Prepare Your Google Sheet

  Your Google Sheet must contain the following columns:


  Email
  Name (or WF Full Name (metadata))
  Is Email Sent

  Example:

  | Email               | Name          | Is Email Sent |
  |--------------------|---------------|----------------|
  | test@example.com   | John Doe      |                |
  | jane@company.com   | Jane Smith    | yes            |

  Only rows where "Is Email Sent" is not marked as "yes" will be processed.

  3. Customize the Email Template

  Open the “Send Personalized Email” node and update the message field. You can use variables like:

  {{ $json.Name }}
  {{ $json['WF Full Name (metadata)'] }}

  Example Message:

  Hello {{ $json.Name || $json['WF Full Name (metadata)'] }},

  I’m a software developer and automation expert. I work with businesses and individuals to build websites, mobile apps, and powerful digital solutions that help save time and grow online.

  I offer a range of services including:
  Website & App Development
  SEO & Digital Marketing
  Business Process Automation

  If you’re looking to start a new project or improve your current setup, I’d love to connect and see how I can help.

  Are you interested in discussing any of these services?

  Best regards,  
  Software Developer | Automation Expert

  4. Schedule the Workflow

  Edit the Schedule Trigger node to your preferred time (currently set to 2 PM daily):

  Customization Tips

  Replace the email copy with your branding or offer.
  Add more fields (like company or industry) and update the message for deeper personalization.
  Modify the batch size in the Split In Batches node for rate control.

  Notes & Limitations

  Gmail Quotas:** Gmail has sending limits (e.g., 500 emails/day for free accounts).
  OAuth2 Scope Approval:** Ensure the necessary scopes (e.g., Gmail send and Sheets read/write) are granted.
  Rate Limiting:** If working with large lists, consider time delays or throttle controls.

  Google Sheet Template

  You can make a copy of this sample Google Sheet to get started.

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

workflow_json_compressed:
  H4sIAAAAAAAAE62UQYvbMBCF/4rxOQqSLEtyjl1aWChlIW0vJYeRZpSYTewQK7TbJf+9shs2aePshtKjrNF7n+eN9JxvKEI+e87rpovQeLrHfJYHIF4aIom2EspY5F5yIz2q4LQKBkFXwBGFrXzlgwrIrS84lRwdaGnzSR5ps11DpLsdYTenuN/etekLRUoGcbenwyRvWqQun31L7r0rN94hWskkBsGUIMcsDwXzgYyWngSWlJQb2FCqnvsV4X5N2eddvVzSrvd82vY7jW3YIM0cdDTtjoWnum3b1bFum2TNFJ8ovkjfYJd0I+0S0PPht9bXtBrKxFQeJkdK57wMMhCzoSiYgkomSnBJyOqy5Jw7gDPKWPvHp+xTG+k64FBzLDlnE5pPmOQXeLlvm0hNTFL5BeoLqNAaQoqEAZiER0ozS84zh5VWqA2nQp1A30H0q+xh13rqurpZZm3IPhJgdx17u67jfTMcpO5PdMVvaWvxwsqlVVooZKgKYkqCYLb0gUltDHEdvAhnrHNqMHtIKm0D6/onYfZ+A/X6KunyuHsGqG1qre4Jv5Nbte3jMPeA1luuUralwT5bxZyRkunScWN0ECh4/sZPyekpAiBlHXCVfkvapAcFq6SQLDhVQaikN3A20R+oj+D1pi/bdrmm+Yoo/tVyYW9puZqWL3Raki2ETxdMG8+U454Bd8hKUmCDd7II+kT3ZYvpOg942TxC3P8LpL0ZMtWkKW/I9yeHoT9vT1qmTHvF9Hj0zrdN8HBmkt46pB/5jB8Wi2R98ZCMiY9mMyo30qf/Sntl9sc8XotsVPw61Jn8YnJyePMmjtgcDr8AI7sq2XYGAAA=


name: Customer Authentication for Chat Support with OpenAI and Redis Session Management
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-05-19T07:44:32.243Z
updated_at: 2025-05-19T07:44:32.243Z
url: https://n8n.io/workflows/4216
scraped_at: 2025-12-24 13:02:44
description:
  This n8n template demonstrates one approach to customer authentication via chat agents.

  Unlike approaches where you have to authenticate users prior to interacting with the agent, this approach allows guest users to authenticate at any time during the session or not at all. 

  Note about Security: this template is for illustration purposes only and requires much more work to be ready for production!

  How it works
  A conversational agent is used for this demonstration. The key component is the Redis node just after the chat trigger which acts as the session context.
  For guests, the session item is blank. for customers, the session item is populated with their customer profile.
  The agent is instructed to generate a unique login URL only for guests when appropriate or upon request.
  This login URL redirects the guest user to a simple n8n form also hosted in this template. The login URL has the current sessionID as a query parameter as the way to pass this data to the form.
  Once login is successful, the matching session item by sessionId is populated with the customer profile. The user can now return to the chat window.
  Back to the agent, now when the user sends their next message, the Redis node will pick up the session item and the customer profile associated with it. The system prompt is updated with this data which let's the agent know the user is now a customer.

  How to use
  You'll need to update the "auth URL" tool to match the URL of your n8n instance. Better yet, copy the production URL of your form from the trigger.
  Activate the workflow to turn on production mode which is required for this workflow.
  Implement the authentication logic in step 3. This could be sending the user and pass to a postgreSQL data for validation.

  Requirements
  OpenAI for LLM (feel free to swap to any provider)
  Redis for Cache/Sessions (again, feel free to swap this out for postgresql or other database)

  Customising this workflow
  Consider not populating the session item with the user data as it can become stale. Instead, just add the userId and instruct the agent to query using tools.
  Extend the Login URL idea by experimenting with signup URLs or single-use Urls.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.redis","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.switch","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.redis","n8n-nodes-base.form","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.noOp","n8n-nodes-base.formTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6500 characters]


name: Create OpenAI-Compatible API Using GitHub Models for Free AI Access
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-05-19T07:46:28.781Z
updated_at: 2025-05-19T07:46:28.781Z
url: https://n8n.io/workflows/4217
scraped_at: 2025-12-24 13:02:43
description:
  This n8n template shows you how to connect Github's Free Models to your existing n8n AI workflows.

  Whilst it is possible to use HTTP nodes to access Github Models, The aim of this template is to use it with existing n8n LLM nodes - saves the trouble of refactoring!

  Please note, Github states their model APIs are not intended for production usage! If you need higher rate limits, you'll need to use a paid service.

  How it works
  The approach builds a custom OpenAI compatible API around the Github Models API - all done in n8n!
  First, we attach an OpenAI subnode to our LLM node and configure a new OpenAI credential.
  Within this new OpenAI credential, we change the "Base URL" to point at a n8n webhook we've prepared as part of this template.
  Next, we create 2 webhooks which the LLM node will now attempt to connect with: "models" and "chat completion".
  The "models" webhook simply calls the Github Model's "list all models" endpoint and remaps the response to be compatible with our LLM node.
  The "Chat Completion" webhook does a similar task with Github's Chat Completion endpoint.

  How to use
  Once connected, just open chat and ask away!
  Any LLM or AI agent node connected with this custom LLM subnode will send requests to the Github Models API. Allowing your to try out a range of SOTA models for free.

  Requirements
  Github account and credentials for access to Models. If you've used the Github node previously, you can reuse this credential for this template.

  Customising this workflow
  This template is just an example. Use the custom OpenAI credential for your other workflows to test Github models.

  References
  https://docs.github.com/en/github-models/prototyping-with-ai-models
  https://docs.github.com/en/github-models

nodes_used:
  ["n8n-nodes-base.aggregate","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.respondToWebhook"]

workflow_json_compressed:
  [encoded data, 4748 characters]


name: OpenAI Responses API Adapter for LLM and AI Agent Workflows
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-05-19T07:49:48.086Z
updated_at: 2025-05-19T07:49:48.086Z
url: https://n8n.io/workflows/4218
scraped_at: 2025-12-24 13:02:44
description:
  This n8n template demonstrates how to use OpenAI's Responses API with existing LLM and AI Agent nodes.

  Though I would recommend just waiting for official support, if you're impatient and would like a round-about way to integrate OpenAI's responses API into your existing AI workflows then this template is sure to satisfy!

  This approach implements a simple API wrapper for the Responses API using n8n's builtin webhooks. When the base url is pointed to these webhooks using a custom OpenAI credential, it's possible to intercept the request and remap for compatibility.

  How it works
  An OpenAI subnode is attached to our agent but has a special custom credential where the base_url is changed to point at this template's webhooks.
  When executing a query, the agent's request is forwarded to our mini chat completion workflow.
  Here, we take the default request and remap the values to use with a HTTP node which is set to query the Responses API.
  Once a response is received, we'll need to remap the output for Langchain compatibility. This just means the LLM or Agent node can parse it and respond to the user.
  There are two response formats, one for streaming and one for non-streaming responses.

  How to use
  You must activate this workflow to be able to use the webhooks.
  Create the custom OpenAI credential as instructed.
  Go to your existing AI workflows and replace the LLM node with the custom OpenAI credential. You do not need to copy anything else over to the existing template.

  Requirements
  OpenAI account for Responses API

  Customising this workflow
  Feel free to experiment with other LLMs using this same technique!
  Keep up to date with the Responses API announcements and make modifications as required.

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

workflow_json_compressed:
  [encoded data, 6072 characters]


name: Create AI-Ready Vector Datasets from Web Content with Claude, Ollama & Qdrant
author_name: scrapeless official
author_username: scrapelessofficial
categories: []
created_at: 2025-05-19T09:06:47.948Z
updated_at: 2025-05-19T09:06:47.948Z
url: https://n8n.io/workflows/4219
scraped_at: 2025-12-24 13:02:44
description:
  AI-Powered Web Data Pipeline with n8n

  How It Works

  This n8n workflow builds an AI-powered web data pipeline that automates the entire process of:

  Extraction**
  Structuring**
  Vectorization**
  Storage**

  It integrates multiple advanced tools to transform messy web pages into clean, searchable vector databases.

  Integrated Tools

  Scrapeless**  
    Bypasses JavaScript-heavy websites and anti-bot protections to reliably extract HTML content.

  Claude AI**  
    Uses LLMs to analyze unstructured HTML and generate clean, structured JSON data.

  Ollama Embeddings**  
    Generates local vector embeddings from structured text using the all-minilm model.

  Qdrant Vector DB**  
    Stores semantic vector data for fast and meaningful search capabilities.

  Webhook Notifications**  
    Sends real-time updates when workflows complete or errors occur.

  From messy webpages to structured vector data — this pipeline is perfect for building intelligent agents, knowledge bases, or research automation tools.

  Setup Steps

  1. Install n8n

  &gt; Requires Node.js v18 / v20 / v22

  npm install -g n8n
  n8n
  After installation, access the n8n interface via:

  URL: http://localhost:5678

  2. Set Up Scrapeless

  Register at: Scrapeless  
  Copy your API token  
  Paste the token into the HTTP Request node labeled "Scrapeless Web Request"

  3. Set Up Claude API (Anthropic)

  Sign up at Anthropic Console
  Generate your Claude API key  
  Add the API key to the following nodes:
     Claude Extractor
     AI Data Checker
     Claude AI Agent

  4. Install and Run Ollama

  macOS

  brew install ollama

  Linux

  curl -fsSL https://ollama.com/install.sh | sh
  Windows
  Download the installer from: https://ollama.com

  Start Ollama Server
  ollama serve
  Pull Embedding Model
  ollama pull all-minilm
  5. Install Qdrant (via Docker)
  docker pull qdrant/qdrant

  docker run -d \
    --name qdrant-server \
    -p 6333:6333 -p 6334:6334 \
    -v $(pwd)/qdrant_storage:/qdrant/storage \
    qdrant/qdrant
   Test if Qdrant is running:
  curl http://localhost:6333/healthz

  6. Configure the n8n Workflow
   Modify the Trigger (Manual or Scheduled)

   Input your Target URLs and Collection Name in the designated nodes

   Paste all required API Tokens / Keys into their corresponding nodes

   Ensure your Qdrant and Ollama services are running

  Ideal Use Cases
   Custom AI Chatbots

   Private Search Engines

   Research Tools

   Internal Knowledge Bases

   Content Monitoring Pipelines

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

workflow_json_compressed:
  [encoded data, 15752 characters]


name: Control Your 3D Printer with GPT-4o and OctoPrint API Conversations
author_name: Liam
author_username: unit98
categories: []
created_at: 2025-05-19T12:55:32.539Z
updated_at: 2025-05-19T12:55:32.539Z
url: https://n8n.io/workflows/4222
scraped_at: 2025-12-24 13:02:45
description:
  Ever wanted to just tell your 3d printer what to do remotely? 

  This game changer let's you converse with OpenAI agents to manage OctoPrint connected 3d printers. Great for remote management and monitoring with easy to read responses.

  Query what jobs are available, Load a print job (upload workflow in development, will be released soon for community use), start the print job and request detailed reports on your printers performance as it runs. 

  Chat &gt; AI &gt; OctoPrint API &gt; Your 3d Printer

  ++Example 1:++

  Human Input: "What print job is running?"

  AI Response: 

  Current Print Job Details,
  Job Name: Stand v1.gcode
  File Size: 2,533,233 bytes
  Estimated Print Time: Approximately 6 hours 15 minutes (22536 seconds)
  Progress: 
  Completion: 1.97%,
  Current Position in File: 49,940 bytes,
  Time Spent Printing: 2,611 seconds (~43.5 minutes),
  Time Remaining: Approximately 5 hours 34 minutes (20,123 seconds),

  Status,
  Current State: Printing."

  ++Example 2++
  Human Input: "Is my 3d Printer ok?"

  AI Response:
  "Status: Printing,
  Operational: Yes,

  ++Temperature:++
  Bed Temperature: 
  Actual: 50°C,
  Target: 50°C,

  Nozzle (Tool 0) Temperature:
  Actual: 200°C,
  Target: 200°C,


  ++Connection Status:++
  Connection State: Currently connected to the printer,
  Port: /dev/ttyUSB0,
  Baudrate: 115200,

  Summary,
  Your 3D printer is currently operational and printing without errors. The bed and nozzle temperatures are both at their target values."

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.httpRequestTool","n8n-nodes-base.httpRequestTool","n8n-nodes-base.httpRequestTool","n8n-nodes-base.httpRequestTool","n8n-nodes-base.httpRequestTool","n8n-nodes-base.httpRequestTool","n8n-nodes-base.httpRequestTool","n8n-nodes-base.httpRequestTool","n8n-nodes-base.httpRequestTool","n8n-nodes-base.discord"]

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


name: Create an Automated Customer Support Assistant with GPT-4o and GoHighLevel SMS
author_name: Cyril Nicko Gaspar
author_username: cngaspar
categories: []
created_at: 2025-05-19T13:20:50.764Z
updated_at: 2025-05-19T13:20:50.764Z
url: https://n8n.io/workflows/4223
scraped_at: 2025-12-24 13:02:43
description:
  📌 AI Agent via GoHighLevel SMS with Website-Based Knowledgebase

  This n8n workflow enables an AI agent to interact with users through GoHighLevel SMS, leveraging a knowledgebase dynamically built by scraping the company's website.

  ❓ Problem It Solves

  Traditional customer support systems often require manual data entry and lack real-time updates from the company's website. This workflow automates the process by:

  Scraping the company's website at set intervals to update the knowledgebase.
  Integrating with GoHighLevel SMS to provide users with timely and accurate information.
  Utilizing AI to interpret user queries and fetch relevant information from the updated knowledgebase.

  🧰 Pre-requisites

  Before deploying this workflow, ensure you have:

  An active n8n instance (self-hosted or cloud).
  A valid OpenAI API key (or any compatible AI model).
  A Bright Data account with Web Unlocker setup.
  A GoHighLevel SMS LeadConnector account.
  A GoHighLevel Marketplace App configured with the necessary scopes.
  Installed n8n-nodes-brightdata community node for Bright Data integration (if self-hosted).

  ⚙️ Setup Instructions

  1. Install the Bright Data Community Node in n8n

  For self-hosted n8n instances:

  Navigate to Settings → Community Nodes.
  Click on Install.
  In the search bar, enter n8n-nodes-brightdata.
  Select the node from the list and click Install.

  Docs: https://docs.n8n.io/integrations/community-nodes/installation/gui-install

  2. Configure Bright Data Credentials

  Obtain your API key from Bright Data.
  In n8n, go to Credentials → New, select HTTP Request.
    Set authentication to Header Auth.
    In Name, enter Authorization.
    In Value, enter Bearer &lt;your_api_key_from_Bright_Data&gt;.
    Save the credentials.

  3. Configure OpenAI Credentials

  Add your OpenAI API key to the relevant nodes.
  If you want to use a different model, replace all OpenAI nodes accordingly.

  4. Set Up GoHighLevel Integration

  a. Create a GoHighLevel Marketplace App

  Go to https://marketplace.gohighlevel.com
  Click My Apps → Create App
  Set Distribution Type to Sub-Account
  Add the following scopes:
  locations.readonly contacts.readonly contacts.write opportunities.readonly opportunities.write users.readonly conversations/message.readonly conversations/message.write
  Add your n8n OAuth Redirect URL as a redirect URI in the app settings.
  Save and copy the Client ID and Client Secret.

  b. Configure GoHighLevel Credentials in n8n

  Go to Credentials → New
  Choose OAuth2 API
  Input:
    Client ID
    Client Secret
    Authorization URL: https://auth.gohighlevel.com/oauth/authorize
    Access Token URL: https://auth.gohighlevel.com/oauth/token
    Scopes:  
          locations.readonly contacts.readonly contacts.write opportunities.readonly opportunities.write users.readonly conversations/message.readonly conversations/message.write
      Save and authenticate to complete setup.

  Docs: https://docs.n8n.io/integrations/builtin/credentials/highlevel

  🔄 Workflow Functionality (Summary)

  Scheduled Scraping**: Scrapes website at user-defined intervals.
  Edit Fields** node: User defines the homepage or site to scrape.
  Bright Data Node* (self-hosted) OR *HTTP Node** (cloud users) used to perform scraping.
  Knowledgebase Update**: The scraped content is stored or indexed.
  GoHighLevel SMS**: Incoming user queries are received through SMS.
  AI Processing**: AI matches queries to relevant content.
  Response Delivery**: AI-generated answers are sent back via SMS.

  🧩 Use Cases

  Customer Support Automation**: Provide instant, accurate responses.
  Lead Qualification**: Automatically answer potential customer inquiries.
  Internal Knowledge Distribution**: Keep staff updated via SMS based on website info.

  🛠️ Customization

  Scraping URLs**: Adjust targets in the Edit Fields node.
  Model Swap**: Replace OpenAI nodes to use a different LLM.
  Format Response**: Customize output to match your tone or brand.
  Other Channels**: Expand to include chat apps or email responses.
  Vector Databases**: It is advisable to store the data into a third-party vector database services like Pinecone, Supabase, etc.
  Chat Memory Node**: This workflow is using Redis as a chat memory but you can use N8N built-in chat memory.

  ✅ Summary

  This n8n workflow combines Bright Data’s scraping tools and GoHighLevel’s SMS interface with AI query handling to deliver a real-time, conversational support experience. Ideal for businesses that want to turn their website into a live knowledge source via SMS, this agent keeps itself updated, smart, and customer-ready.

nodes_used:
  ["n8n-nodes-base.html","@n8n/n8n-nodes-langchain.vectorStoreInMemory","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.vectorStoreInMemory","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.splitOut","n8n-nodes-base.filter","n8n-nodes-base.html","@n8n/n8n-nodes-langchain.memoryRedisChat","n8n-nodes-base.scheduleTrigger","n8n-nodes-brightdata.brightData","n8n-nodes-base.set","n8n-nodes-brightdata.brightData","n8n-nodes-base.httpRequest","n8n-nodes-base.webhook","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.vectorStoreInMemory","n8n-nodes-base.set","n8n-nodes-base.highLevel","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.xml","n8n-nodes-base.splitOut","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.merge","n8n-nodes-base.removeDuplicates","n8n-nodes-base.splitInBatches","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  [encoded data, 6820 characters]


name: Sync OVH Invoices to Google Sheets and Save PDFs to Google Drive
author_name: Oliver Bardenheier
author_username: ozdreamwalk
categories: []
created_at: 2025-05-19T13:25:26.337Z
updated_at: 2025-05-19T13:25:26.337Z
url: https://n8n.io/workflows/4224
scraped_at: 2025-12-24 13:02:46
description:
  🛠️Setup Guide  'Get OVH Invoices to Google Sheets'
  Author: Oliver Bardenheier

  Who is this for?
  This Workflow is for all users who have services (Domains, BareMetal, VPS, Cloud, etc.) with Provider OVH.com (European API)
  It automatically retrieves invoice data, -files and puts the Data in a Google Spreadsheet for further processing.

  What problem is this workflow solving? / use case
  Currently the invoices from OVH do not come as an attachment via mail, it is just a link. So, the receiver has to be logged in to the ovh account to download the file. Even more effort if one is using 2FA. This workflow retrieves all information through the oauth2 token.

  What this workflow does
  This Workflow automatically retrieves invoice data, -files from Your OVH.com account and puts the Data in a Google Spreadsheet for further processing.
  It also saves the invoice PDF to a certain (yearly) folder in Your Google Drive.

  Setup

  Make a copy of this Google Sheet Template 

  Set the timeframe for the query to Your likings in "Query Latest OVH Invoices"
  You could set an email trigger before and make the frame only one day.

  Log into Your OVH Account and get Your Credentials here

  Authentication using oAuth2 Authorization Code
  "Login with OVHcloud SSO"

  You need to Authorize OVHcloud API console

  If this worked fine You'll see a green text:  
  "Access Token Received"

  Head over to the OVH API Console to get Your Token.

  Set Up Header Auth in the HTTP nodes: 
  Authentication = Generic Credential Type
  Generic Auth Type = Header Auth
  Header Auth = Your OVH Header Credentials:
     -- a.) In every API Call in the console You'll find a curl example, just take the data from the line including:   
                -H "authorization: Bearer eyJhxxxxxxxxxxxxxxxxxxxxxxxxxxxxx......"

     -- b.) Create a new Credential in n8n for the header auth.  
          Put in the 'name' Field:   authorization
          Copy Your Token including Bearer in the value field:  'Bearer eyJhxxxxxxxxxxxxxxxxxxxxxxxxxxxxx......'

  How to customize this workflow to your needs
  You can put in a mail trigger that activates on every incoming invoice mail from OVH.
  Adjusting the timeframe to get invoices from a certain time period, or remove the time variables completely to get ALL invoices.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.splitInBatches","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.googleDrive","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5252 characters]


name: Automate Cryptocurrency Funding Fee Tracking with Binance API and Airtable
author_name: Mark Shcherbakov
author_username: lowcodingdev
categories: []
created_at: 2025-05-19T14:44:49.716Z
updated_at: 2025-05-19T14:44:49.716Z
url: https://n8n.io/workflows/4225
scraped_at: 2025-12-24 13:02:44
description:
  Video Guide

  I prepared a detailed guide that showed the whole process of integrating the Binance API and storing data in Airtable to manage funding statements associated with tokens in a wallet.



  Youtube Link

  Who is this for?
  This workflow is ideal for developers, financial analysts, and cryptocurrency enthusiasts who want to automate the process of managing funding statements and token prices. It’s particularly useful for those who need a systematic approach to track and report funding fees associated with tokens in their wallets.

  What problem does this workflow solve?
  Managing funding statements and token prices across multiple platforms can be cumbersome and error-prone. This workflow automates the process, allowing users to seamlessly fetch funding fees from Binance and record them alongside token prices in Airtable, minimizing manual data entry and potential discrepancies.

  What this workflow does
  This workflow integrates the Binance API with an Airtable database, facilitating the storage and management of funding statements linked to tokens in a wallet. The agent can:
  Fetch funding fees and current positions from Binance.
  Aggregate data to create structured funding statements.
  Insert records into Airtable, ensuring proper linkage between funding data and tokens.

  API Authentication: The workflow establishes authentication with the Binance API using a Crypto Node to handle API keys and signatures, ensuring secure and verified requests.
  Data Collection: It retrieves necessary data, including funding fees and current positions with properly formatted API requests to ensure seamless communication with Binance.
  Airtable Integration: The workflow inserts aggregated funding statements and token data into the corresponding Airtable records, managing token existence checks to avoid duplicate entries.

  Setup

  Set Up Airtable Database:
     Create an Airtable base with tables for Funding Statements and Tokens.

  Generate Binance API Key:
     Log in and create an API key with appropriate permissions.

  Set Up Authentication in N8N:
     Utilize a Crypto Node for Binance API authentication.

  Configure API Request to Binance:
     Set request method and headers for communication with the Binance API.

  Fetch Funding Fees and Current Positions:
     Retrieve funding data and current positions efficiently.

  Aggregate and Create Statements:
     Aggregate data to create detailed funding statements.

  Insert Data into Airtable:
     Input the structured data into Airtable and manage token records.

  Using Get Price Node:
     Implement a Get Price Node to maintain current token price tracking without additional setup.

nodes_used:
  ["n8n-nodes-base.crypto","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.airtable","n8n-nodes-base.aggregate","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.crypto","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.crypto","n8n-nodes-base.set","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.httpRequest","n8n-nodes-base.set"]

workflow_json_compressed:
  [encoded data, 5420 characters]


name: Automate RSS Content to Blog Posts with GPT-4o, WordPress & LinkedIn Publishing
author_name: Immanuel
author_username: spectrabit
categories: []
created_at: 2025-05-19T15:22:59.133Z
updated_at: 2025-05-19T15:22:59.133Z
url: https://n8n.io/workflows/4226
scraped_at: 2025-12-24 13:02:44
description:
  Automated Blog Post Review and Multi-Platform Publishing Workflow with RSS Feeds

  Description
  This workflow automates the process of generating, reviewing, and publishing blog posts across multiple platforms, now enhanced with support for RSS Feeds as a content source.
  It streamlines the management of blog posts by fetching content from RSS Feeds, formatting, storing, reviewing, templating, and publishing to platforms like LinkedIn and WordPress.
  The workflow is split into three key flows:  
  Initial Flow**: Fetches content from RSS Feeds, prepares and stores blog post data, sends a review email with approval/rejection links. 
  Approval Flow**: Handles review actions via a webhook to update the status in Google Sheets.  
  Status Update Flow**: Monitors status changes and publishes approved posts.  

  Target Audience 
  Content creators, bloggers, and digital marketers. 
  Teams managing multi-platform content publishing.  
  Users familiar with n8n, Google Sheets, LinkedIn, and RSS Feeds.  

  Problem Solved

  Manually managing blog posts, especially when sourcing content from RSS Feeds, can be time-consuming and error-prone 
  This workflow addresses:  
  Content Sourcing**: Fetches blog posts from RSS Feeds for automated processing  
  Content Formatting**: Automatically formats and stores blog posts. 
  Review Process**: Simplifies approval with email notifications and webhook triggers.  
  Multi-Platform Publishing**: Publishes to LinkedIn, WordPress and optionally Medium) with delays to avoid rate limits  
  Status Tracking**: Tracks approval and publishing status in Google Sheets. 

  Setup Instructions

  Prerequisites 
  n8n Instance**: Ensure you have an active n8n instance  
  RSS Feed URL**: Identify an RSS Feed URL (e.g., a blog’s feed like https://example.com/feed)  
  Google Sheets**: Create a spreadsheet with columns: Title, Blogpost, Publication Date, Keywords, Status, Published, Featured Image, articleUrl, Rendered Blog. 
    Sheet Name: Posts Initial  
    Add a dropdown for Status: Pending, Approved, Rejected.  
  Gmail Account**: For sending review and notification emails.  
  LinkedIn Account**: For publishing posts (OAuth credentials needed).  
  Optional**: WordPress.com or Medium account for additional publishing.  

  Customization Guidance 
  Below is a detailed breakdown of each flow and node, including setup instructions.  

  🔹 Initial Flow: Fetch from RSS Feeds, Prepare, and Send for Review.

  Purpose: Fetches blog posts from an RSS Feed, formats them, extracts images, stores data, and sends a review email.  

  Fetch from RSS Feed  
     Type: RSS Feed  
     Purpose: Retrieves blog posts from an RSS Feed  
     Configuration:  
       URL: https://example.com/feed (replace with your RSS Feed URL)  
       Limit: 1 (or adjust based on your needs)  
     Setup: Ensure the RSS Feed URL is valid and accessible; test the node to verify it fetches posts  

  Set Fields  
     Type: Set  
     Purpose: Maps RSS Feed data to blog post fields   
     Setup: Adjust field mappings based on your RSS Feed’s structure  

  Format Blog Post for Storage  
     Type: Code  
     Purpose: Cleans up the blog post content.  
  Extract Featured Image  
     Type: Code  
     Purpose: Extracts or generates a featured image URL.  
     Setup: Ensure originalHtml contains image data; otherwise, it uses a placeholder.  

  Store Blog Posts Initial  
     Type: Google Sheets  
     Purpose: Stores initial blog post data  
     Setup: Ensure Google Sheets credentials are set up and the spreadsheet has the required columns.  

  Set Fields for Email  
     Type: Set  
     Purpose: Prepares fields for the review email.  
     Setup: Replace https://your-n8n-instance with your n8n instance URL.  

  Prepare Email HTML  
     Type: Code  
     Purpose: Generates HTML email content with conditional image display  
     Setup: No additional configuration needed  
  Notify for Review (Gmail)  
     Type: Gmail  
     Purpose: Sends a review email with approval/rejection links  
  🔹 Approval Flow: Handle Review Actions

  Purpose: Updates the blog post status based on approval/rejection  

  Webhook Trigger  
     Type: Webhook  
     Purpose: Triggers on approval/rejection link clicks  
     Configuration:  
       HTTP Method: GET  
       Path: approve-post  
       Response Code: 200  
       Response Data: {"message": "Status updated"}  
     Setup: Ensure the webhook URL matches the one in Set Fields for Email  

  Find Row to Update  
     Type: Google Sheets  
     Purpose: Retrieves all rows to find the matching blog post  
  Filter Row by Title  
     Type: Code  
     Purpose: Filters the row matching the blog post title  
   
     Setup: No additional configuration needed  

  Update Status on Approval  
     Type: Google Sheets  
     Purpose: Updates the status to Approved or Rejected 

  🔹 Status Update Flow: Publish Approved Posts

  Purpose: Monitors status changes and publishes approved posts  

  Google Sheets Trigger (Fetch Row)  
     Type: Google Sheets Trigger  
     Purpose: Triggers when a row’s status is updated  
     Configuration:  
       Event: Update  
       Sheet Name: Posts Initial  
       Output Fields: title, status, published, featuredImage, articleUrl  
     Setup: Ensure Google Sheets credentials are set up  

  Router (Check Status)  
     Type: Router  
     Purpose: Routes based on status and published state  
     Configuration:  
       Route 1: Approved and Not Published  
         Condition: status equals Approved AND published equals NO  
       Route 2: Rejected  
         Condition: status equals Rejected  
       Route 3: Pending  
         Condition: status equals Pending  
     Setup: No additional configuration needed  

  Apply Blog Template    

  Store Blog Posts Final 
     Type: Google Sheets  
     Purpose: Stores the final HTML content  
     Configuration:  
       Operation: Update Row   
     Setup: Ensure the Rendered Blog column exists  

  Loop Over Blog Posts   
     Type: Split in Batches  
     Purpose: Processes each blog post individually  
     Configuration: Default settings  
     Setup: No additional configuration needed  

  Delay Between Posts
     Type: Wait  
     Purpose: Adds a delay to avoid rate limits  
     Configuration:  
       Wait Type: Delay  
       Amount: 1 second  
     Setup: Adjust delay as needed for LinkedIn rate limits  

  Publish to LinkedIn 
     Type: LinkedIn  
     Purpose: Publishes the blog post to LinkedIn  
     Configuration:  
       Operation: Share Post  
       Author: urn:li:person:YOUR_PERSONAL_URN   
     Setup: Set up LinkedIn OAuth credentials and replace YOUR_PERSONAL_URN with your LinkedIn URN  

  Update Published State  
     Type: Google Sheets  
     Purpose: Updates the published status  
     Configuration:  
       Operation: Update Row  
   
     Setup: Ensure the Published column exists  

  Notify Team 
     Type: Gmail  
     Purpose: Notifies the team of successful publishing  
     Configuration:  
    
         The blog post "{{ $json.title }}" has been successfully published
     
     Setup: Set up Gmail credentials; replace [Link] with the LinkedIn URL if captured  

  Notify Rejection (Gmail) (Route 2)  
      Type: Gmail  
      Purpose: Notifies on rejection  
     
          The blog post "{{ $json.title }}" has been rejected
          Suggestions: Rewrite with more engaging content, adjust keywords, or verify facts
          Please update the status in Google Sheets if you wish to revise and resubmit
         
      Setup: Set up Gmail credentials  

  Wait for Status Update (Route 3)  
      Type: Wait  
      Purpose: Delays for status recheck  
      Configuration:  
        Wait Type: Delay  
        Duration: 24h  
      Setup: Adjust delay as needed  

  Conclusion

  This workflow streamlines blog post management with RSS Feeds, making it ideal 
  for busy content creators and teams.
   Customize it by adding more platforms adjusting delays, or enhancing notifications.
   Share your feedback in the n8n community to help others benefit from this automation.

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.merge","n8n-nodes-base.if","n8n-nodes-base.limit","n8n-nodes-base.function","n8n-nodes-base.httpRequest","n8n-nodes-base.htmlExtract","n8n-nodes-base.function","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.gmail","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.webhook","n8n-nodes-base.code","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.gmail","n8n-nodes-base.wait","n8n-nodes-base.switch","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.wordpress","n8n-nodes-base.linkedIn","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.gmail"]

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


name: Multi-platform Video Publishing from Google Sheets to 9 Social Networks via Blotato API
author_name: Sam Yassine
author_username: samyassine
categories: []
created_at: 2025-05-19T15:54:37.730Z
updated_at: 2025-05-19T15:54:37.730Z
url: https://n8n.io/workflows/4227
scraped_at: 2025-12-24 13:02:44
description:
  This workflow automates the process of publishing content from a Google Sheet to multiple social media platforms using the Blotato API. It retrieves content details (caption and Google Drive video URL) from a Google Sheet, uploads the media to Blotato, and then distributes it to Instagram, Facebook, LinkedIn, TikTok, YouTube, Threads, Twitter, Bluesky, and Pinterest. It also includes a separate branch for generating and publishing an AI-created image to Pinterest.
  Tools & Services Used
  Content Source: Google Sheets (for captions, status, and Google Drive video URLs)
  Media Hosting: Google Drive (for source videos)
  Social Media Publishing API: Blotato API (for media upload and posting to all platforms)
  AI Image Generation: 
  OpenAI (DALL-E for generating an image for Pinterest)
  Target Social Platforms:
  Instagram
  Facebook (Pages)
  LinkedIn
  TikTok
  YouTube
  Threads
  Twitter (X)
  Bluesky
  Pinterest
  Workflow Overview
  This automation performs the following steps:
  Trigger & Content Retrieval:
  The Schedule Trigger node initiates the workflow on a defined schedule (e.g., every interval).
  The Google Sheets node reads data from a specified sheet (Sheet1 of "Publish to 9 Social Platforms"). It filters for rows where the "Status" column is "Ready to Post" and returns the first match. This provides the caption and the Google Drive URL for the video content.
  The Get Google Drive ID node (a Set node) extracts the unique Google Drive file ID from the video URL obtained from the sheet.
  Configuration & Media Preparation for Blotato:
  The Setup Social Accounts node (a Set node) defines placeholders for the Blotato API key and various social media account IDs required by the Blotato API. These need to be manually filled with your actual credentials and IDs.
  The Upload to Blotato node (HTTP Request) uploads the video content to Blotato's media endpoint. It constructs the downloadable Google Drive URL using the extracted file ID and sends it to Blotato along with the API key. Blotato then fetches and stores the media, returning a Blotato media URL.
  Content Distribution to Social Platforms via Blotato (Parallel Branches from "Upload to Blotato"):
  The Blotato media URL (from the previous step) and the caption (from Google Sheets) are used to make individual POST requests to the Blotato API (/v2/posts) for each target platform. Each request is an HTTP Request node configured for a specific platform:
  [Instagram] Publish via Blotato (Disabled by default): Posts to the configured Instagram account.
  Publish to Facebook: 
  Posts to the configured Facebook Page.
  Publish to LinkedIn:
   Posts to the configured LinkedIn account.
  Publish to Tiktok: 
  Posts to the configured TikTok account, with specific privacy and feature settings.
  Publish to Youtube: 
  Uploads the video as a public YouTube short/video with a title and notifying subscribers.
  Publish to Threads: 
  Posts to the configured Threads account (caption sliced to 500 chars).
  Publish to Twitter: 
  Posts to the configured Twitter (X) account (caption sliced to 280 chars).
  Publish to Bluesky: 
  Posts text-only (no media URL used in the example body) to the configured Bluesky account (caption sliced to 280 chars).
  AI Image Generation & Pinterest Publishing (Separate Branch from "Upload to Blotato"):
  This branch demonstrates an alternative content type.
  The OpenAI node generates an image based on a prompt ("Image of a manatee staring in the mirror at its AI avatar") and returns image URLs.
  The Upload to Blotato - Image node (HTTP Request) takes one of these generated image URLs and uploads it to Blotato's media endpoint.
  The [Pinterest] Publish via Blotato node then posts this AI-generated image to the configured Pinterest account and board, along with the caption from the Google Sheet and a link.

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

workflow_json_compressed:
  H4sIAAAAAAAAE7WX227bRhCGX4XgbbXung+6aoKgqYEegjoNUAS+2MOsTEgmXYly7Bp+9w4Vx6JtWiET94aSoOXst7Mz/8zclFUq52XTLq8u/6VX1+rkl+XbT8tyVp5D68v5TVnVm9bXEY67dSpA0IxGlpLPNABjIHVOFrqfwLVSmkYnMtPCZouPpL31xqcsZVYGyttZWftzQFOvtm1z7ltIxUkTK78qfoNU+eJDlaAp3m3DqtqcVfViXvzdbNttgFlx3JEs1v58Vryvlu+b5ayQP7xb+TY36/MNIuO/m3L+8RT3aBJ0X28+Hy8xmaTlgQgJksjgIwnZaHxow61XTAdd3pOdxDNI2xUU79fVYgHrzvL1RfdPbWuyM02C38DR5m7hft1Fs6naqqlxa8IYpTNLKeJceKSGFtbIdHP72dwH/LVbyY747ewOVDOTHPIQjp9ESsGIU8KRnKlkmSVlNduDvm2aBWKenAG0m2cpF7tV94v6iNaOIpRHak9Iow4mWBKN00QKZ4mn1hKMgayBOc097bkS2u3Flwt+FWOzrQ+QbqB9BCjlKEBxJO8BI7MpGKaJCSwQ6RknQWS8cMdzzoIr52LPhdAWd258s64uoTh+MwFP68l43gnjJUJJSgXBoOxu2ATCheZBUOFohD3eXxerxqeibYrXq6b1bfMs3FnbXvwJ/2xh8xiS85GXvA9Db7nA1I4EVAaE1IkEySXhHlg0VBkbepf88T4xT78kbnGJqTwNOVUbH1aA27frLTw4AkM34ymmnCB6r3KIiigdGZHOO+K5CiQD3n9QLHumeif42UcITbP8Hw+AoTzlACEHFZX0xKZOsrhhxLpoiAfMvgxae596B/i1qpeon/X3HKAHbMbl3YOYMSrmJA1h3lgERo9jFHFCrfQmUO+Mkj1gVPD2+/zd9y9FIWNiWog4mn3yCjC0UWGlyJYE4EjtrYgcTKauFyJ/XED96niP9hOy/bjnW/l6Ec98VR813cLqMR/iMTuiFNh7vEyZ5ACaaAW5CwBLbHCUJKN1BIWaocMBoShIcXzuF/ANzkS9wK2npZuVViWbSWDWEBmdJ9gQZKK48CHFZD3vR+u7qkajuPNL3X+HrCcmmHSAIoHKliWqsQEgjoZIEgXoCkZmPveQ77qQlwLuIoLraT6W0dtEkVVEjFcVNfFMoCIoZpwNkIMN/QQ7W4NPm5fMMDXNw9lK8MFnwpKlRLKIESwxKCwAZpx2UYDrA3+qWrT6ksATJQx7Qqp0DsRGhVGsUL3QuUBQ1oS0RlvLbA/49Qq3XV6/qIbRr4tEn1gLioQKG0TGsMwpfHjOu7odVbBCeOF7GnbSVnF5XfzetM/Lwma35m7Jg3ZWYBEbkNgyNpjMdYumyid6dg/atbUmaU4U9rFEJov12DpONJdRM6ad4XoQlE0n1d8DmplE/U+WOB2xP8MJgThJMSSoSC5LY7ihg6B8MiidEfY0QMdhgg6Rp8QJt+hKmQ0KbsJiIZgQwgUw6NBBTDkZ09BvAcXVPrbYUZfz7Fcb7IewfW5xoNu9ClcQt539P9YJB6d5eck6G5ef39+NmkLi5KOMwxqisJ+IHpXOpUCMyCaKwLIwXWwgRA2xM7UzfFem8ds5FmOkxxGwO+O4Erl7Z4Yjb4Krck5vT08R6uGUNWT54BAxaPPJiDlodni8GzT4dFAYsji6U3+8x2xvYmSrfMDCyF71gIVRzePz7z/u5Q7sNK7sH0IdVYYPGRhVFg8YGFemhkN/ILCH4uorY/5wCgy+Mypxp+bCfaIP5sTYZnRgr9vb/wCDL9IiQBMAAA==


name: Transform Raw Hiring Transcripts into Briefs & Scorecards with AI and Google Docs
author_name: Nicolas Le Gallo
author_username: nico-lg
categories: []
created_at: 2025-05-19T16:09:59.279Z
updated_at: 2025-05-19T16:09:59.279Z
url: https://n8n.io/workflows/4228
scraped_at: 2025-12-24 13:02:44
description:
  Who is this template for ?

  Basically anyone involved in recurring recruiting processes and looking to save a considerable amount of time and energy (Talent acquisitions Managers, recruiting consultants, hiring managers, founders…etc)

  What it does :

  It takes a messy and raw transcript from an “intake meeting” between a recruiter and a Hiring manager and turns it into a clean and exhaustive brief + scorecard templates for each interview rounds
  It does it under 1 MINUTE while the usual “manual” process usually takes several hours

  How to customize this workflow to your needs

  Google doc is the default choice because it allows easy modification of the output, but you can choose to output this under any format and / or store it wherever you want
  I strongly suggest to choose one of the latest LLM models for better output quality
  Both LLM prompts can be revised to match your expectations better

nodes_used:
  ["n8n-nodes-base.formTrigger","n8n-nodes-base.extractFromFile","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.googleDocs","n8n-nodes-base.googleDocs","n8n-nodes-base.googleDocs","n8n-nodes-base.googleDocs","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5364 characters]


name: Automate Job Search and Matching with Adzuna API, GPT-3.5, and Google Sheets
author_name: Gerald Denor
author_username: dominixai
categories: []
created_at: 2025-05-19T18:55:16.297Z
updated_at: 2025-05-19T18:55:16.297Z
url: https://n8n.io/workflows/4230
scraped_at: 2025-12-24 13:02:44
description:
  Job Search Automation Workflow
  Streamline Job Discovery with API-Powered Intelligence
  This workflow template transforms the job search process by leveraging the Adzuna API and AI to automatically find, summarize, and evaluate job opportunities. Unlike traditional RSS-based job search tools, this workflow connects directly to Adzuna's comprehensive job API for real-time, high-quality job data.
  Workflow Overview
  The Job Search Automation Workflow follows a streamlined process:

      Define job titles to search for
      Fetch current job listings from Adzuna's API
      Split individual job results for processing
      Use AI to extract and summarize key job information
      Score each job against candidate profiles
      Organize results for easy review

  This automation eliminates manual searching across job boards and provides objective evaluation of opportunities, saving valuable time for both job seekers and professionals who support them.
  Technical Implementation
  The workflow is built with a focus on efficiency and extensibility:

      API Integration: Direct connection to Adzuna's job API ensures access to current listings with comprehensive details
      AI Processing: Leverages OpenAI's GPT models to intelligently summarize job descriptions and evaluate candidate fit
      Modular Design: Each node serves a specific purpose, making the workflow easy to understand and customize
      Scalable Architecture: Can be expanded to include additional job sources or evaluation criteria

  Use Cases
  This template serves multiple user groups:

      Job Seekers: Automate discovery of relevant positions matching your skills
      Recruiters: Quickly identify quality positions for your candidate pool
      Career Coaches: Systematically help clients find suitable positions
      AI Automation Builders: Learn how to integrate job APIs with AI evaluation systems

  Prerequisites
  To use this workflow, you'll need:

      An Adzuna API key (available at Adzuna.com)
      n8n instance (cloud or self-hosted)
      OpenAI API credentials (or compatible alternative)

  Getting Started

      Import this template to your n8n instance
      Configure your Adzuna API credentials
      Set up your OpenAI API connection
      Customize job titles and candidate profiles
      Execute the workflow to start discovering opportunities

  Customization Options
  The workflow can be easily adapted to your specific needs:

      Modify job search parameters (location, industry, etc.)
      Adjust AI prompts for different summarization styles
      Customize scoring criteria based on specific skills or requirements
      Add nodes to integrate with other tools in your workflow

  Why This Approach Matters
  Traditional job search methods often rely on RSS feeds, which can be limited in detail and frequency of updates. By connecting directly to the Adzuna API, this workflow ensures you're always working with the most current job data available.
  The AI-powered evaluation provides objective scoring of how well each position matches candidate profiles, helping prioritize applications for positions with the highest potential fit.
  Whether you're a job seeker looking to streamline your search, a professional helping others find opportunities, or an automation enthusiast interested in API integrations, this template provides a solid foundation for more efficient job discovery and evaluation.

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.splitOut","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.googleSheets","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.openAi"]

workflow_json_compressed:
  H4sIAAAAAAAAE52WW2/jNhCF/4qhZzPLq0TlqWmAblssmqLetg+LYDEkh44QWXJlOlf4v3dkB7GcyNkgL4ItDY4+zhwe6jGrQnaatZ+v1+7nu+Lm17qZ3YW/s2m2wATZ6WNWNasEjcff+roofcwVF1CWFkXOrc556W2uTJEXvogyYkG3FRYOpHBGmwLAiMKjEbn2jnQTLpY1JDzvMKxmmNbL85buYEJ6QerWuJlmDSyQ3vZ7677PEDp/9f1sndoFpKptegmYr7LTb5dU2Absfz7uloHBWhtDyZRFzbSxhgGUkfESFEQHGrnPnuVn/grDusbJ166az7Hrle+X/ZPGNmwrzRys8GT1VLivW7aragtz+k1JPmVCc6JZQkfKCTtCetzs1P6hf9tCcSI30ydOy7nzFj2BKeLUuWagQsFcDoWXClDLcsCZKn99P/mjTXgccVvzVDKgkznR0eUlXebbJmGTSCl7RfrMKbwqtHWO6Wgi06XmrPQBGGqi5EYZOOjnnlN8CFTwD3KisU4Hh0wUhKitUMxJKFkE8KDIDKKwo5zyQ5z6o/30GLgLuWIYnGUadE5zB7rkynKBMTcyDv3ZdjihTbCH/IkoP+1Ja2jm/gqq5qRdYnNWHaKWfUtfo742pt03UgrQEDzzQSkypo/MIg+Mk8st8IL48gEgph5v8rVK9Vsjx3QIZvJ3bplnLiO8pjQBJoQjLogF9YwsyV1hI5ZeCV7suT7vuFaT2LWLyVl4WDdwHO8qpeVf+N8aVy8wy3fubL3HdCJazwXzJkfKH5o0YIhMGsOFdcgLLQbtW9bVDvSN3vU1F+sXZEq/b7L7jSy1jY4r5gFoI8tSMOuFYFxbjsJGqYUbgK0XC+iqh635xAfdl7+TceA+7Y3F3DpmqJHkPhqwy8se2qNUTgr0YTDltp1TeM+uENPqaAPn26rnogEgRcXUyB9P98Q8AxY+51KXgRmtKbeFiKxEx5kquCzpuCkj1wPABVT18dHO+8cvHPeMdIvuqm2vt4eu1wBWAFLsIrmKHM9c9JoVUnnNwQUf+ra8uQp5MkhLiBSW/QKCpBSKpWW2AMEcpTo3vrR5GGymf7sq4eS8vcFu8gUT6X/UESp/V8N7R1AN+FTd0Dsi1CucZhQiqWrm26xN1QIf2qYHOItd5eHTF5i3/Xg91DV2f7Z15e/p6W3bXce6vV39QkEwo1de3Dbb8xvv0K97rIsu0I3T7Eb0sX2zY9h1HXIpnVesUAIocoRjzvKCGecNmtIqEH0jKPcb9L3UFm2f2fSHBtyvm75O+vb8qJfb6il9bwW8y0755vKSiIYZMaZ4bKuOih3umDG5l5YdZzqM/VGdtxN4XPZwKaOrfX0ijku9/LIbFTtyeo0qjk1udOHjoTQ+jtEmjaKOnRQjmpvN/wIDQDjQCwAA


name: Context-Aware Google Calendar Management with MCP Protocol
author_name: Simeon
author_username: simealdana
categories: []
created_at: 2025-05-19T19:53:44.325Z
updated_at: 2025-05-19T19:53:44.325Z
url: https://n8n.io/workflows/4231
scraped_at: 2025-12-24 13:02:41
description:
  Google Calendar MCP – Context-Aware Calendar Operations

  This n8n template implements an MCP (Model Context Protocol)-compliant module for managing Google Calendar events in a context-aware, conflict-free manner.

  🧠 What It Does

  This MCP enables structured interaction with Google Calendar based on context and intent, ensuring reliable, reusable operations with awareness of existing data and state.

  ✅ Core Capabilities

  Context-aware event creation**  
    Prevents overlapping by validating time availability before creating new events.

  Gap validation**  
    Checks if a time range is busy or free, enabling smarter scheduling decisions.

  Conditional updates**  
    Only updates events after confirming their existence and current state.

  Safe deletion**  
    Removes events using MCP principles of validation and traceability.

  🚀 How to Use

  To use this MCP in your context-aware systems:

  Deploy the template in your n8n instance.
  Locate the Server node in the workflow — it exposes a Server-Sent Events (SSE) URL.
  Copy that SSE URL.
  Use that URL as the entry point for your MCP client or orchestrator.

  This URL acts as the communication bridge, allowing you to interact with the MCP-compliant Google Calendar logic using standard MCP semantics.

nodes_used:
  ["@n8n/n8n-nodes-langchain.mcpTrigger","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.switch","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.googleCalendar","n8n-nodes-base.googleCalendar","n8n-nodes-base.if","n8n-nodes-base.stopAndError","n8n-nodes-base.googleCalendar","n8n-nodes-base.googleCalendar","n8n-nodes-base.set","n8n-nodes-base.googleCalendar","n8n-nodes-base.googleCalendar","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.set","n8n-nodes-base.set"]

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


