# templates

name: Create Viral Instagram Reel Scenarios from Ideas with GPT-4o and Telegram
author_name: Alexander K.
author_username: autom8npro
categories: []
created_at: 2025-06-16T11:45:34.133Z
updated_at: 2025-06-16T11:45:34.133Z
url: https://n8n.io/workflows/4967
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Transform your creative sparks into professional Instagram Reel scripts instantly! This AI-powered workflow takes your raw ideas (text or voice messages) via Telegram and generates complete, viral-ready Reel scenarios with hooks, scripts, captions, and visual concepts.

  Who is this template for?

  This template is perfect for:
  Content creators looking to streamline their Reel production process
  Social media managers who need to generate multiple Reel concepts quickly
  Marketing professionals seeking data-driven, psychology-based content strategies
  Influencers and entrepreneurs who want to maintain consistent, engaging content
  Small business owners looking to create viral marketing content without hiring expensive copywriters
  Anyone who struggles with writer's block or wants to improve their Instagram engagement

  What this template does

  This comprehensive workflow provides a complete Reel creation assistant that:

  🎯 Accepts Multiple Input Types:
  Text messages with your Reel ideas
  Voice notes that get automatically transcribed
  Processes ideas in real-time through Telegram

  🧠 AI-Powered Content Generation:
  Creates 3 attention-grabbing hook variants designed to stop the scroll
  Generates a complete 30-60 second script with Hook, Subtitle, Body, and Call-to-Action
  Writes engaging captions that complement (not repeat) your video content
  Provides specific visual concepts with cinematic direction for filming

  📊 Smart Features:
  Memory system that remembers your conversation context for personalized suggestions
  Optional Google Sheets integration to automatically log and organize all your Reel ideas
  Error handling for seamless user experience
  Instant delivery of results back to your Telegram chat

  🎨 Professional Quality Output:
  Scripts based on proven marketing psychology from industry legends
  Hooks designed using viral content strategies
  Visual concepts that are specific and actionable (not generic "film yourself" advice)
  Captions optimized for engagement and shareability

  Sample Results

  Input (Idea): How I Saved 10 Hours a Week with Blog Automation?  

  Output: 
  💡 Hook (variants):
  "Blogging doesn't have to be a time-suck. Here's my secret…"
  "Is blogging eating up your spare time? Let's fix that!"
  "Unlock 10 hours a week AND keep your blog thriving!"

  🎬 Script:
  Hook: "Blogging doesn't have to be a time-suck. Here's my secret…"
  Subtitle: "Maximize your time with blog automation hacks!"
  Body: "Picture this: writing, editing, posting, and promoting your blog without breaking a sweat. I was buried under endless tasks until I discovered blog automation. Scheduling posts, auto-publishing, automating social shares—it's a game-changer. 10 hours a week, back in my pocket! More time for creativity or even a break. Imagine what automation could do for your content game."
  CTA: "Which blog task do you wish was automated? Drop a comment!"

  📝 Reel Caption:
  Blog automation isn't just convenience—it's freedom. What will you create with your extra time?

  📸 Visual Idea:
  Open with a whirlwind of papers and sticky notes symbolizing chaos. Transition to a person seamlessly typing on a laptop, where blog posts are auto-scheduled. Quick cuts show blog shares and responses happening automatically. Conclude with a serene scene: the person outdoors, notebook in hand, jotting ideas peacefully on a sunny day.

  Setup Instructions

  Prerequisites:
  Telegram account
  OpenAI API account with GPT-4 access
  Google account (optional, for logging ideas)

  Step 1: Create Your Telegram Bot
  Open Telegram and search for @BotFather
  Send /newbot and follow the instructions to create your bot
  Save the Bot Token you receive - you'll need this for n8n
  Send /setprivacy to @BotFather, select your bot, and choose "Disable" to allow the bot to read all messages

  Step 2: Get Your OpenAI API Key
  Visit OpenAI's API platform
  Create an account or log in
  Navigate to API Keys section
  Create a new API key and save it securely
  Ensure you have access to GPT-4 models (required for optimal results)

  Step 3: Configure the Workflow
  Import this template into your n8n instance
  Set up Telegram credentials:
     Add your Bot Token to all Telegram nodes
     Test the connection
  Configure OpenAI credentials:
     Add your API key to the "OpenAI Chat Model" and "Transcribes audio" nodes
     Verify GPT-4o model access
  Optional - Google Sheets setup:
     Create a new Google Sheet with columns: Status, Date, Description, Script
     Connect your Google account to the "Google Sheets" node
     Select your spreadsheet and sheet

  Step 4: Activate and Test
  Click "Activate" in the top-right corner of your workflow
  Open Telegram and find your bot
  Send a test message like "Create a Reel about morning routines"
  Verify you receive a complete Reel scenario response

  Step 5: Start Creating!
  Send text ideas directly to your bot
  Record voice notes with your concepts
  Receive professional Reel scenarios within seconds
  Use the optional Google Sheets integration to build your content library

  Pro Tips:
  Be specific with your ideas for better results
  The AI remembers your conversation context, so you can refine ideas iteratively
  Voice messages work great for capturing spontaneous ideas on-the-go
  Review the generated visual concepts - they're designed to be immediately actionable

  Troubleshooting:
  Ensure your OpenAI account has sufficient credits
  Verify your Telegram bot privacy settings allow message reading
  Check that all credentials are properly configured and tested
  For Google Sheets issues, confirm the sheet structure matches the expected columns

  This template transforms the tedious process of content creation into an instant, AI-powered system that delivers professional-quality Reel scenarios whenever inspiration strikes!

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

workflow_json_compressed:
  [encoded data, 5136 characters]

metadata_json:
  {"categories":["content creation","social media automation","AI integration","creator tools"],"complexity":"medium","use_cases":["Turn brief ideas or voice notes into full Instagram Reel scripts","Generate multiple hook variants and captions optimized for engagement","Produce actionable visual and cinematic directions for filming","Log and organize Reel ideas in Google Sheets (optional)","Overcome writer's block and speed up content production"],"estimated_setup_minutes":25,"required_services":["n8n","Telegram (Bot API / BotFather)","OpenAI API (GPT-4/GPT-4o and transcription access)","Google account / Google Sheets (optional)"],"key_features":["Accepts text and voice inputs via Telegram (voice auto-transcribed)","Generates 3 attention-grabbing hook variants","Creates 30–60s scripts with Hook, Subtitle, Body, and CTA","Writes complementary, engagement-optimized captions","Provides specific, actionable visual concepts and cinematic direction"],"target_audience":["content creators","social media managers","marketing professionals and growth teams"]}


name: Automated LinkedIn Content Creation with GPT-4 and DALL-E for Scheduled Posts
author_name: Samuel Kimutai
author_username: agenticvibe
categories: []
created_at: 2025-06-16T12:15:50.913Z
updated_at: 2025-06-16T12:15:50.913Z
url: https://n8n.io/workflows/4968
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-30 08:33:37
description:
  How it works
  Automatically generates trending LinkedIn content topics using AI
  Researches current industry angles and hooks  
  Writes posts in your authentic voice using OpenAI
  Creates professional images with DALL-E
  Posts everything on schedule without manual intervention

  Set up steps
  Connect OpenAI API for content generation and image creation
  Link LinkedIn API for automated posting
  Configure scheduling triggers (daily/weekly posting)
  Customize prompts to match your writing style and industry
  Set up content approval workflows (optional)

  Results you can expect
  400% increase in profile views within 3 weeks
  Generate 120+ posts per month vs manual 12 posts
  Free up 15+ hours weekly for revenue-generating activities
  Consistent posting schedule that builds audience engagement
  Professional content that converts followers to clients

  Time to set up: 30-45 minutes
  Technical level: Beginner to intermediate
  APIs required: OpenAI, LinkedIn API
  Cost: OpenAI usage fees only (approximately $5-15/month)

  This workflow transforms LinkedIn content creation from a time-consuming daily task into a fully automated system that works while you sleep. Perfect for entrepreneurs, marketers, and content creators who want consistent LinkedIn presence without the manual effort.

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.merge","n8n-nodes-base.linkedIn"]

workflow_json_compressed:
  [encoded data, 4184 characters]

metadata_json:
  {"categories":["automation","content creation","social media","AI/ML","marketing"],"complexity":"medium","use_cases":["Automated LinkedIn post generation","Trending topic & hook research","Generate professional images for posts","Schedule recurring LinkedIn posts","Maintain consistent brand voice across posts"],"estimated_setup_minutes":30,"required_services":["OpenAI (GPT-4 & DALL-E)","LinkedIn API"],"key_features":["AI-driven topic discovery and industry angle research","Writes posts in your authentic voice via customizable prompts","Creates professional images with DALL‑E","Automated scheduled posting (daily/weekly)","Configurable scheduling triggers and prompt templates"],"target_audience":["marketers","social media managers","content creators/copywriters`,`agencies"]}


name: Automated TikTok Video Creation Pipeline with GPT-4o-mini and Sisif.ai
author_name: Vlad Temian
author_username: vtemian
categories: []
created_at: 2025-06-16T13:07:08.952Z
updated_at: 2025-06-16T13:07:08.952Z
url: https://n8n.io/workflows/4969
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Description

  This workflow creates an automated video content pipeline that generates creative TikTok-style videos using AI. It combines OpenAI's GPT-4o-mini for idea generation with Sisif.ai's text-to-video AI technology to produce engaging short-form content automatically.

  Perfect for: Content creators, social media managers, marketing teams, and anyone who wants to maintain a consistent flow of AI-generated video content without manual intervention.

  Prerequisites

  Sisif.ai Account**: Sign up at sisif.ai and get your API token from sisif.ai/api/
  OpenAI Account**: Get your API key from OpenAI platform
  n8n Instance**: Self-hosted or cloud instance

  How it Works

  The workflow operates on a scheduled cycle, generating fresh video content every 6 hours:

  🤖 AI Idea Generation: OpenAI's GPT-4o-mini acts as a creative video strategist, generating unique, trend-aware video concepts optimized for TikTok and social media
  🎬 Video Creation: Sisif.ai transforms each creative prompt into a high-quality 5-second video in 360x640 resolution
  ⏱️ Smart Monitoring: The workflow intelligently monitors video generation progress, waiting for completion before proceeding
  📊 Data Processing: Final video data is structured and prepared for further use or storage

  Key Features

  ⚡ Fully Automated
  Runs every 6 hours without manual intervention
  Generates 4 unique videos daily (28 videos per week)
  Self-monitoring with automatic retry logic

  🎯 Optimized for Social Media
  TikTok-perfect 360x640 resolution
  5-second duration for maximum engagement
  Trend-aware content generation
  Action-packed, visual storytelling

  🔧 Smart Architecture
  Simple HTTP requests for reliable operation
  Bearer token authentication for secure API access
  Automatic status checking and waiting logic
  Error handling and retry mechanisms

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.function","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE+VYW3PbNhb+KxikD+0MIYH3Syezm7pukmYbZS1vuxnL44LAoYg1BWhJMLbGo/++A5K6WKLTvK8fbBk8/M7tOxfoCa/AMJw9YakawxSH9wJnOMxdFroFzXmYe1EUCC+lUQgeCwPqRj5P8iL0aJq6fsT9PMljiJM85XnqBrmIIMEONrBaV8zARQ2imYNp1xd6ta7AgMCZqVvYOlhpAQ3Obp6wtFpzoKzgkU+YRz0SFFFIUkgoSfMgLfI0jMLExw5WbAU4w3NegmgrQNe1XC6htjo3a/tEJYp00CRnDUyaQfAgt9aNNFIrnN0QN4moE9FbB69ZzVZgoG5sPOq2gj4uBuovrOrMLCRU1tJSt3WDnf7v+71EtL3dbnszfoe66TS4E3frDA4Kn8Yx5D6BACISiDQgzE8TQoGFRZyDCFM4OHhRAzOA5rKRBfpdCtAvulgas76C/7bQmFP3qDfqXltX1g9j1k02nTZWx4TJKVvL6RerqpkuQUHNDEyxY0lSauvBp9n8GjtYry2+Bdo6uAElftJi06fVwaw1JSgjOeuNwB2S5JYJ9pxV19YJB+dabD49s+rYxpunXSDWtV6trWNfWNXag9dPT+i7/zRaTXRr1q2ZSAEMbbfYRnp4SbR1r//wWnj8vIZGV+2JhB/RxyigeHu7dXZmv2lNed1H3YbrJ2A11PYQbx3M9z519p8IZEPe/5Czf+vqWr7Vor2fbcJDjnth9Hn2r6u769mHy4937y6vLhHjXLfKWA0W8h0wcQLZfgSqHqK3Wsc///brZ32A7IWRlT7gnLIyOGJl6HI/DdOQpDwXJMjzlORUAAEeBS6jrh/EyQH+DyYNcmnzIhcfmDwlYRwMHHyAvNT6vusxaZ6mKQ1iEtA4JUGaRiTxaUDihCYpJAXzWY7PaKukwRlugGslrA1s1TmYufSs8PYOgoiSgoeMBCKPSeCnMUnTqCCpn/CQ52kSi6OUXJTA7/t6Q3PDTPuyqy+XXRh8pepef63s9tSWAm2309Ni++bi+n9hL0s8oCELCQBwEgiakjz1bHIhDQUUuefGB/g+rVfAxOZvL6ZVFifZ9OloNi0H5S43uDG1VMuub3XtxH3WqJqOSbZHDd3Gwxm+unzz82c8NjT27iVB5EOaJKRIUyABpxFJRRITl4WJCLwizH1xcO9TDWtWA/pFKlahn5lhLzpZtIoP3e/IVTeiTnDu6U74QgsLNZ2iy0dTM26QKQEVnbaOv0gwwxaKa9WY/sQagV4jaWDV3NDbiY3Gjwu1UNMpGiYcQ027WrF6g3TRAfLdptBDLFQNpq0VunlaKIQsQoa6jwj1syE76Jr0J07/eDcFjgV2Z4PIYRAcCx1OB7GuVu+kOBbanQ0i3YO7tq6OZfaHO5yOCM9QupPh8QMzvOwx/hxpE+tpJzD97unciu30zwFkH787ZjKk4MFSAb7/YWL0+/ls3hH1+x+s7Hahtrc/4pf5VwBjzI8S4vE4JkHhCpLQyCMsjyEKA8FpfNQQ5qZuuWlrEGjWTWb0idXN8W72d5Wo6YGKFVNLXjK5m+S9+AHmdJvxE+p4I6VoOWEXwhW7fGTWeZzhjiELbHeDBc7QAr8dNpqBqpPJZIEXartQ5/5PvH0E/NADEYWUuGHqkiCKU5K7YUAiFrnMA0+kwdHS9t5uItzyWn+L193vf1SrUz/D8aXUwKMdf68/6xbZOh9UyS87n7hWBpRBjbGOLmVjUKFrdC3vr/U9YkqgRnPJKrQCIdkE7UMCasmWUi0HHBu0BpmSmU5PI21MkdGoVQJqe1MQDmpKXRunQ7V6mVSo0g9ItascalvLD7oWzQTNS91We5kM5cB46aAGHjcOKnUlBes+KNistFYO4qWsqv17OQyiG92qpYMeSmkALWVdORaqNbJoq0nP/N2PbTC/zmcfUU8rG4QVM5k9/itasFy3Bt1MJpPbBXYWynbsvqcMc1RAIZVNecma2RFr99eaEypFeyrFEaO5FzASRT5YKoWEJa5LRJz4BbCYMuAHKs3WoN68Rxc2Cb9pAdU38KlaWfHuTTnGKS85J9Wqw86e8N2dXU/6JX7Vd/pKNseL93JtSKDJSippa+ZoMznfJnRnxJu13E/9zUVz/eGXq40/fzf7p1t8OHFVvjzwn9VjEbMoLiiJQgEk8GlhL1ERoUnBXO4HnhcGxx1J8vsN+qgNeC/fEDshK3MaM9ejDnFHJiLXla5xFjj4QQq72bgupQ4uQS5Lg7PQ/jMUI87wq/4WN2HSMvDVq0Pd2ebc885aIpBWXe3tW8h5Z77tgBXw/eaxX8ltMpm0ltvLU5/Br62znbCDpRLwiDO6vbXXnmcdbBTxK/fSUcRnS9cY4tfWljNE5/De+V1kVP/ZNwVjNow37lG888LMnjCTd7YMW7aE4ewvwc9eOVU0krsx08eX2lHTR3I3hvitgX1p3Pfx0M+a47eE49kbz7Vtt/8Dd0uLe6wSAAA=

metadata_json:
  {"categories":["automation","integration","content-creation","social-media","ai-video-generation"],"complexity":"medium","use_cases":["Automated TikTok/short-form video production","AI-driven content idea generation","Continuous content pipeline for social channels","Batch generation of trend-aware short clips","Automating video creation and monitoring"],"estimated_setup_minutes":30,"required_services":["Sisif.ai (text-to-video API)","OpenAI (GPT-4o-mini)","n8n instance (self-hosted or cloud)"],"key_features":["Scheduled run every 6 hours (4 videos/day)","GPT-4o-mini for trend-aware idea generation","Sisif.ai text-to-video to produce 5s 360x640 videos","Progress monitoring and polling until video ready","Bearer token authentication and simple HTTP requests for APIs
  (secure access) - includes retry and error-handling logic]"],"target_audience":["Content creators","Social media managers","Marketing teams and agencies」「Developers/automation engineers"]}


name: Automated Breaking News Headlines with LLaMA3, Google Search and X Posting
author_name: Afnan
author_username: sky-twinclouds
categories: []
created_at: 2025-06-16T13:31:51.696Z
updated_at: 2025-06-16T13:31:51.696Z
url: https://n8n.io/workflows/4971
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  This n8n workflow automates the process of finding, summarizing, and posting breaking news headlines on X (formerly Twitter). It combines Google Custom Search for finding the latest news articles with Groq's LLaMA 3 model to generate short, engaging headlines — complete with hashtags — and posts them on your X account.

  🔧 Features

  Custom topic support (e.g., "AI", "health", "technology")

  Automated scheduling every few hours

  Google Custom Search to find the most recent news articles

  Groq LLaMA3-based headline generation with hashtags

  Auto-post to X (Twitter)

  Built-in credential separation for API keys and access tokens

  📦 Included Nodes

  Schedule Trigger

  Set (Set Topic, Google API Key, Custom Search CX, etc.)

  HTTP Request (Google Search API)

  Code Node (Format prompt and extract article data)

  HTTP Request (Groq API for headline generation)

  Twitter Node (Post to X)

  ⚙️ How It Works (Step-by-Step)

  Trigger
  The workflow starts on a scheduled interval (default: every 5 hours, at a random minute within the hour).

  Set Topic
  You can define your own topic keyword (e.g., AI, mental health, climate change) by editing the Set Topic node.

  Build Search Query
  Constructs a Google search query like:
  latest {topic} news.

  Google API Config
  Injects your own Google API Key and Custom Search CX (replace the placeholders in the Google Config node).

  Search for News
  Performs a real-time search using Google Custom Search API and fetches the latest article result.

  Generate Prompt for AI
  A JavaScript Function node extracts the top article’s title and link, formats it into a clean prompt including instructions to append hashtags.

  Groq AI Request
  Sends the prompt to Groq’s LLaMA 3 model to generate a concise, tweet-length headline with 1–2 relevant hashtags.

  Post to Twitter (X)
  The generated headline is posted to your connected X account via the Twitter OAuth2 API.

  ✅ Requirements

  Google API Key

  Google Custom Search Engine (CX)

  Groq API Key

  Twitter Developer App with OAuth2 credentials

  💡 Customization Tips

  Change the topic in the Set Topic node to anything you like.

  Adjust the posting frequency in the Schedule Trigger node.

  Modify prompt behavior in the Function node to fit a specific tone or brand voice.

  Add logging, filtering, or multiple post variations as needed.

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.twitter","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set"]

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

metadata_json:
  {"categories":["automation","integration","content curation","social media"],"complexity":"medium","use_cases":["Automated breaking-news monitoring","Short-form headline generation for social channels","Scheduled content posting to X (Twitter)","Rapid content curation for newsletters or feeds","Brand/topic monitoring with automated alerts"],"estimated_setup_minutes":45,"required_services":["Google Custom Search (API key + CX)","Groq LLaMA 3 API (API key)","Twitter/X Developer App (OAuth2 credentials)","n8n instance (hosted or cloud)"],"key_features":["Custom topic input","Scheduled triggers (configurable frequency)","Real-time Google Custom Search for latest articles","Groq LLaMA 3 prompt-driven headline generation with hashtags","Automatic posting to X (Twitter) via OAuth2 node(s)"],"target_audience":["Social media managers","Content marketers","Newsrooms and journalists curating headlines quickly」「Developers/automation engineers setting up integrations"]}


name: Monitor AI Chat Interactions with Gemini 2.5 and Langfuse Tracing
author_name: Eduardo Hales
author_username: ehales
categories: []
created_at: 2025-06-16T14:01:56.103Z
updated_at: 2025-06-16T14:01:56.103Z
url: https://n8n.io/workflows/4972
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:33
description:
  This workflow contains community nodes that are only compatible with the self-hosted version of n8n.

  How it works

  This workflow is a simple AI Agent that connects to Langfuse so send tracing data to help monitor LLM interactions.

  The main idea is to create a custom LLM model that allows the configuration of callbacks, which are used by langchain to connect applications such Langfuse.

  This is achieves by using the "langchain code" node:
  Connects a LLM model sub-node to obtain the model variables (model name, temp and provider) - Creates a generic langchain initChatModel with the model parameters.
  Return the LLM to be used by the AI Agent node.

  📋 Prerequisites
  Langfuse instance (cloud or self-hosted) with API credentials
  LLM API key (Gemini, OpenAI, Anthropic, etc.)
  n8n &gt;= 1.98.0 (required for LangChain code node support in AI Agent)

  ⚙️ Setup

  Add these to your n8n instance:
  Langfuse configuration
  LANGFUSE_SECRET_KEY=your_secret_key
  LANGFUSE_PUBLIC_KEY=your_public_key
  LANGFUSE_BASEURL=https://cloud.langfuse.com  # or your self-hosted URL

  LLM API key (example for Gemini)
  GOOGLE_API_KEY=your_api_key

  Alternative: Configure these directly in the LangChain code node if you prefer not to use environment variables

  Import the workflow JSON

  Connect your preferred LLM model node

  Send a test message to verify tracing appears in Langfuse

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.code","@n8n/n8n-nodes-langchain.agent"]

workflow_json_compressed:
  H4sIAAAAAAAAE41Wa2/bNhT9KwSxDxkgOqJellQEWJYCXYC0KLBHh9lGQJGXNluJ0igqSWfovw+UbNlOvCxfbD14zz3nPrXFFViG8y1WurVMc7gVOMcFzYJEZiHMk4QGTIokjIRIBKeZKBhLuQxjSmlYRGmaFvE8kCFQEWQsLoAndI49bKFqSmbhxoBofwXbNTd11ZRgQeDcmg56D+taQIvzxRYr55UHiQiTUJI4FAGJoqQgWSoKIpKURUUWzQseYw9rVgHO8ZcNaMQ3zKIK2patARngoB5AOO/fG3fmJ53qS51qMngiJdNrvmFKz5zdb0at12Cwh5u6VVbVGueLNPW9OPJXHn6EYlPX34Z4hBmdMxlHhIZUkojymLAg9kkRBuBLmQkeS4fDDKvAgmldROvGYbrLvh8Z/QGmHdzQGe29nWqfyiiNqCQBRIJEBRQklTQjQZzyIoJUZml6UL2GSmlFgln8BpVldbNh9kNdr0v4MBieiqU0Tb0scWr/i/qQRzDMdgZw7s+i3sNVLaD8NPIZrtvLAy0iS9ZuSGPgQcEj8WMS+Lj3MDcgQFvFygF2PZD6zMrqulFD/blY/Fl9/ho9/JX40XtWt+b3F7obMG2tWYlfhnQKqExCkVKfEr8IIhJldE4yGiSEA+c8CxJehPwAXEH1hkhWUNXm+8+dlGC+KC3qx2eRDLPEm5+JJK+1hSc72tyBXtsNzqnvv6yIcBLAY56EcylIlgSCRDzgpCjmjPAwloxBGgPQg4A7pteyawHd3X18S+XXAp5Xge978ySYxWfYC3D/bdc05ff3bBwV41MnrbVoi25YWRaMf/uFaVGCQT26Qgb+7pSBiyUud/QOFJb4x3dLvbdWWllXpR9dIZ2xHUwuXb/e72qt0+oBTMvKEWipLy/RB7CI11oDtyDQcHDvYrhBV4g9MmWR3ah2tgZ7q5vO3owWqtZO2sUSM3XvfHZsDQOfJfaQf2A7QH029YMSYNDVeD8r+b1LRdswDotgNTPQlIw7/vfOfonJseKpeSb74Xd6f9Rv04mjZ3vBt1q5XlL/AJoKgO8SgTZjJvaQLbSuyG4FukI/KCd8pixUs69trWfTy4nBPmP7fF4hDY/Ps3yxXWp0QPaWuh+TscMoqynkJxm+mPR7aIA40ua5+5MYD0/2stocLZ5xWx38GrCd0c7xu6UexsOgtB13W9PZYc/suuN5nrGHd1W3W04ertjToTxaN19WvYfrzu5Bx8tXUfvVK2OKxzIOZQEkTvyQRGEakSKSjPjzhCUZozJh7NDl17foeg3avqHD2e7ccYsHfrRba2/eUUG/8jA/DsF2GJb51gkdByLOF4vtsMbPUjycc9kQ8IRzv1+5OE5nHShTjuNieHG030ZHpxE99nd+8J1J7anrE7P/83FW0+v4r3yXHIl9xcNw5BS17/8FUcqRoakJAAA=

metadata_json:
  {"categories":["automation","observability","AI/LLM","integration"],"complexity":"medium","use_cases":["Trace and monitor LLM/chat interactions","Debugging and auditing AI agent behavior","Collect observability data for model calls","Analyze conversation context and memory usage","Integrate Langfuse tracing into AI workflows"],"estimated_setup_minutes":25,"required_services":["Langfuse (cloud or self-hosted) with API keys","LLM provider API key (Google Gemini, OpenAI, Anthropic, etc.)","n8n self-hosted >= 1.98.0 (supports LangChain code node)","LangChain code node (n8n community node) / ability to run custom code"],"key_features":["Sends LLM interaction traces to Langfuse","Custom LangChain LLM initialization with callback support","Works as an AI Agent node with memory buffer","Supports multiple LLM providers (Gemini example included)","Environment-variable or node-level credential configuration"],"target_audience":["Developers integrating LLMs","ML engineers and MLOps","DevOps/SREs responsible for AI observability"]}


name: Automated SSL Certificate Monitoring and Renewal with Notion and Telegram
author_name: Frank Chen
author_username: frankchen
categories: []
created_at: 2025-06-16T14:20:52.859Z
updated_at: 2025-06-16T14:20:52.859Z
url: https://n8n.io/workflows/4973
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:32
description:
  Automatically fetch existing domains from Notion's Database and verify the validity of SSL certificates through SSL-Checker. If the validity period is less than 14 days, send a Telegram message notification and trigger SSH remote automatic refresh. Successful refresh notification will be sent through Telegram.
  This can prevent problems with the server-side automatic refresh program, which may cause unexpected service interruptions.

  Main use cases:
  Notion store domain.
  Telegram receives warning messages.
  Remotely trigger Certbot to refresh SSL.

  How it works:
  Record who triggered this workflow, because if there is a credential that is about to expire, this workflow will be triggered repeatedly.
  After getting all the domains from Notion, send an http request to SSL-Checker.
  After getting all the SSL-Checker results, add the validity label. And use the IF node to check if there are any certificates that are about to expire.

  Then there are two workflows:
  If there is a certificate that is about to expire: send an SSH command to the remote control server to refresh the certificate, notify through Telegram, and call this workflow again to re-verify the validity of the SSL certificate.
  If the validity period of SSL is normal: then refresh the data on Notion, and if a re-called workflow is detected, Telegram will be used to notify that the SSL has been updated.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.notion","n8n-nodes-base.code","n8n-nodes-base.notion","n8n-nodes-base.code","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.manualTrigger","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.merge","n8n-nodes-base.if","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.ssh","n8n-nodes-base.telegram","n8n-nodes-base.telegram"]

workflow_json_compressed:
  [encoded data, 4104 characters]

metadata_json:
  {"categories":["automation","monitoring","integration","security","devops"],"complexity":"medium","use_cases":["Monitor SSL certificate expiry for domains stored in Notion","Automatically trigger remote Certbot renewal via SSH","Send Telegram alerts for expiring or refreshed certificates","Keep Notion domain records up to date after renewal"],"estimated_setup_minutes":45,"required_services":["Notion (Database)","Telegram Bot API (for notifications)","SSL-Checker API or equivalent SSL validity HTTP service","SSH-accessible remote server with Certbot installed (for renewal)","n8n instance (workflow runner)"],"key_features":["Fetch domains from Notion and check SSL validity via HTTP","Flag certificates expiring within a configurable threshold (default 14 days)","Send Telegram alerts for expiring certificates and post-renewal status","Trigger remote SSH commands to run Certbot renewal","Re-run workflow to re-verify post-renewal status and update Notion labels/records (avoids repeated triggers)"],"target_audience":["DevOps engineers","Site Reliability / System administrators","Developers managing HTTPS for small fleets of sites or services"]}


name: YouTube Videos to Viral X Threads by Keywords (using Gemini & Claude)
author_name: Matty Reed
author_username: mattyreed1
categories: []
created_at: 2025-06-16T14:47:52.012Z
updated_at: 2025-06-16T14:47:52.012Z
url: https://n8n.io/workflows/4974
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:33
description:
  Who is this for?
  Content creators, marketers, and social media managers who want to turn high-performing YouTube videos into viral X (Twitter) threads using keywords (without manual research). Perfect for anyone looking to systematically create engaging social content from proven video sources.

  What problem does it solve?
  Finding viral content ideas and writing engaging threads is time-consuming and hit-or-miss. This workflow automates the entire process: discovers high-performing YouTube videos based on your keywords, extracts key insights using AI, and generates multiple viral thread variations using proven patterns from 12.5M+ view threads.

  How it works

  | # | Node | Purpose |
  |---|------|---------|
  | 1 | Form Trigger | Captures your keyword, target audience, and content type preferences. |
  | 2 | YouTube Video Search | Finds recent videos (April 2025+) matching your keyword, sorted by view count. |
  | 3 | Get Video Statistics | Fetches detailed metrics (views, engagement) for discovered videos. |
  | 4 | Filter High-Performers | Keeps only videos with 100K+ views and excludes YouTube Shorts. |
  | 5 | Top 5 Selection | Limits to the best 2 videos to focus on proven winners. |
  | 6 | Save Video Candidates | Logs discovered videos to Google Sheets for manual approval. |
  | 7 | Wait & Check Approval | Pauses 30 seconds, then checks which videos you marked "Yes" for thread generation. |
  | 8 | Video Analysis (Gemini) | Uses Google's Gemini AI to extract key insights, tools, and strategies from approved videos. |
  | 9 | Thread Generation (Claude) | Applies viral thread database patterns to create 3 distinct thread variations using Claude Sonnet 4. |
  | 10 | Structure & Save Threads | Formats the generated threads and saves them back to Google Sheets for review and posting. |

  Setup steps

  Import & configure credentials
    Import the JSON workflow into n8n
    Add your YouTube Data API key (get from Google Cloud Console)
    Add your Google Gemini API key (get from Google AI Studio)
    Connect Anthropic API for Claude access
    Set up Google Sheets OAuth2 credential

  Create your tracking spreadsheet
    The workflow auto-creates a sheet with columns: Keyword, Youtube video title, Description, Video URL, Turn into thread?, Thread 1, Thread 2, Thread 3
    You'll manually review and mark videos "Yes" in the Turn into thread? column

  Configure the viral thread database
    The workflow includes proven patterns from threads with 12.5M+ views
    Adjust the target audience and content style in the AI prompts if needed

  Test the workflow
    Submit the form with a keyword like "AI automation"
    Check that videos appear in your Google Sheet
    Mark one "Yes" and verify threads are generated

  Resources

  YouTube Data API Documentation
  Google Gemini AI Platform
  Anthropic Claude API
  n8n Documentation
  Viral Thread Generator Demo

  Extending the workflow

  Auto-posting** – Connect X API to automatically post generated threads
  Competitor tracking** – Monitor specific channels for new content opportunities  
  Multi-platform** – Adapt threads for LinkedIn, Instagram, or TikTok formats
  Performance tracking** – Log thread performance back to sheets for optimization
  Webhook triggers** – Set up Zapier integration for form submissions from other tools

  Transform proven YouTube content into viral social media threads—systematically and at scale.

nodes_used:
  ["n8n-nodes-base.filter","n8n-nodes-base.limit","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.formTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.wait","n8n-nodes-base.filter","n8n-nodes-base.googleSheets"]

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

metadata_json:
  {"categories":["automation","content repurposing","social media","AI-powered","integration"],"complexity":"complex","use_cases":["Find high-performing YouTube videos by keyword and repurpose them into X (Twitter) threads","Automate social content ideation and generation from proven video sources","Create multiple viral thread variations using AI-trained patterns","Streamline manual review and approval of candidate videos via Google Sheets","Scale content creation workflows for teams and agencies"],"estimated_setup_minutes":45,"required_services":["n8n","YouTube Data API (Google Cloud)","Google Gemini (AI Studio) API","Anthropic Claude API","Google Sheets (OAuth2 credential)"],"key_features":["Keyword-driven YouTube video search sorted by view count","Filters for high-performing videos (100K+ views) and exclude Shorts","Logs candidate videos to Google Sheets for manual approval","AI video analysis (Gemini) to extract insights, tools, strategies","Generates 3 distinct viral thread variations using Claude Sonnet 4 and a viral-thread pattern database (12.5M+ views training set)"],"target_audience":["Content creators","Social media managers","Growth marketers and marketers at agencies or startups"]}


name: Automated HR Service System with WhatsApp, GPT-4 Classification & Google Workspace
author_name: Tanay Agarwal
author_username: tnayagarwal
categories: []
created_at: 2025-06-16T16:25:52.273Z
updated_at: 2025-06-16T16:25:52.273Z
url: https://n8n.io/workflows/4975
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Who is this for?
  This workflow is ideal for HR teams, startups, and enterprises that want to handle employee interactions through WhatsApp and automate responses using LLM (OpenAI) and intelligent routing.

  What problem is this workflow solving?
  Managing WhatsApp messages manually can be time-consuming and error-prone. This workflow solves that by:

  Auto-classifying messages using LLM

  Routing them to the right AI-powered agent

  Automating leave approvals, attendance, HR FAQs, complaints, and candidate shortlisting

  Delivering final responses interactively via WhatsApp

  What this workflow does
  WhatsApp Trigger captures incoming messages

  LLM Classification analyzes message intent and outputs category (1–5)

  Switch Node routes the message to the correct agent:

  1 → Leave Agent

  2 → HR FAQ Chatbot

  3 → Attendance Agent

  4 → Complaint/Request Agent

  5 → Shortlisting Agent

  Each agent performs specific tasks using tools like:

  Google Sheets (fetch dept head emails, JD/applicants, logs)

  Google Calendar (schedule meetings)

  Vector Search (for policy embeddings)

  OpenAI (transcription, classification, chatbot)

  Final WhatsApp Response node sends updates and interactive options to the user

  Setup
  Connect WhatsApp API (e.g., via Twilio or WhatsApp Business Cloud API)

  Configure OpenAI credentials

  Set up Google Sheets with:

  Employee data

  JD and applicants info

  Policy documents (for embedding)

  Prepare Google Calendar access

  Create a vector store with embedded company policy docs

  How to customize this workflow to your needs
  Update the LLM prompt to suit your company’s categories or expand to more intents

  Replace sample sheets with your organization’s actual data

  Train your own policy embeddings if needed

  Add/modify agents (e.g., Payroll Bot, IT Support Bot) by cloning an existing pattern

  Adjust the Switch Node if you add more classifications

  With this modular and intelligent setup, you can turn your WhatsApp into a smart HR & operations assistant powered by AI, accessible 24/7.

nodes_used:
  ["n8n-nodes-base.whatsAppTrigger","n8n-nodes-base.switch","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.gmailTool","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.gmailTool","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.googleSheetsTool","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.switch","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.gmailTool","n8n-nodes-base.googleSheetsTool","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.googleSheetsTool","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolVectorStore","n8n-nodes-base.whatsApp","n8n-nodes-base.whatsApp","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.whatsApp","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.whatsApp"]

workflow_json_compressed:
  [encoded data, 18428 characters]

metadata_json:
  {"categories":["automation","communication","ai","integration"],"complexity":"complex","use_cases":["Automated handling of employee WhatsApp inquiries","Auto-classification and intelligent routing of HR messages","Leave request approvals and attendance management","HR FAQs chatbot powered by company policies","Complaint/issue intake and tracking via WhatsApp interactions and logs"],"estimated_setup_minutes":120,"required_services":["WhatsApp Business API (or Twilio/WhatsApp Cloud API)","OpenAI (GPT-4) credentials","Google Workspace (Google Sheets & Google Calendar access)","Vector database / vector search (e.g., Pinecone, Weaviate, FAISS)","Storage for embeddings and policy documents"],"key_features":["Incoming WhatsApp trigger and interactive WhatsApp responses","LLM-based intent classification and routing (GPT-4)","Modular agent pattern (Leave, FAQ, Attendance, Complaint, Shortlisting)","Google Sheets integration for employee, JD/applicant, and log data","Google Calendar scheduling from workflow actions (interviews/meetings)"],"target_audience":["HR teams","Recruiters and talent acquisition teams","Startups and SMBs wanting automated HR workflows"]}


name: Batch Delete Posts and Featured Images in WordPress
author_name: Eric
author_username: automation-wizard
categories: []
created_at: 2025-06-16T20:02:08.148Z
updated_at: 2025-06-16T20:02:08.148Z
url: https://n8n.io/workflows/4976
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:34
description:
  Why use this
  You need to delete (many) posts on a WordPress website and also delete the featured image associated with each post.

  Hours of rote work cut into a fraction with this automation.

  How it works
  set your wordpress URL in the manual trigger node
  set your WP post search parameters
  (WP API returns 10 posts by default; you could also set up pagination for scaling this automation beyond 10 posts per execution)
  decide (and build) your filter/approval process

  What you can expect
  this automation is set up to run the 10 oldest pending posts, with oldest first
  if you remove the 'Filter' node from the workflow, after each run, another 10 posts will be returned from WP

  Notes on Filter/Approval
  This is arbitrary and depends on your own use case. Maybe you have an editor who needs to approve the post deletion. You might want to get approval by email, slack msg or ticketing system.

  Or maybe you just want to monitor the process  and spare specific posts from deletion.

  I used the Filter node to only grab the first item (itemIndex &lt; 1) which in this case was the oldest pending post.

  This could also be expanded to two separate workflows:
  One triggered when a pending post is created that sends an approval request
  A second triggered by the approval/rejection that either publishes or deletes the post, depending on the approval result

  This would require another HTTP request, similar to the DELETE post request, that instead publishes the post.

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

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

metadata_json:
  {"categories":["automation","integration","content management"],"complexity":"medium","use_cases":["Bulk-delete pending or draft WordPress posts","Remove associated featured images/media when deleting posts","Automate editorial cleanup or spam removal","Create an approval/review step before deletion"],"estimated_setup_minutes":20,"required_services":["WordPress site with REST API access (Application Passwords or other auth)","Optional: Email, Slack or ticketing service for approval workflow"],"key_features":["Batch delete posts (default 10 per run)","Delete associated featured images/media","Manual trigger with configurable WP query parameters","Optional filter/approval step (can integrate email/Slack/ticketing)","Supports pagination for scaling beyond 10 items"],"target_audience":["WordPress site administrators","Content managers and editors","Developers implementing CMS maintenance automations"]}


name: Organize Email Attachments from Gmail to Structured Google Drive Folders
author_name: Michael Gullo
author_username: mgullo
categories: []
created_at: 2025-06-16T20:30:28.839Z
updated_at: 2025-06-16T20:30:28.839Z
url: https://n8n.io/workflows/4977
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  Automated Binary Data Extraction from Gmail to Google Drive Folder


  This workflow is designed to automate the process of handling emails with binary attachments. It triggers when a new email arrives in a specified Gmail account (or can be configured with a similar email trigger) and is set to download any binary attachments. The workflow then filters the email to confirm it contains binary data (attachments). If attachments are present, it proceeds to retrieve the full email details, including all binary data.

  A crucial step is the creation of a new Google Drive folder. This folder is dynamically named using the email's subject and the current timestamp, for example, "[Email Subject] - [Current Timestamp]". Following this, the workflow separates each individual attachment from the email. Finally, these attachments are uploaded into the newly created Google Drive folder, with their original filenames preserved. The overall purpose of this workflow is to automatically organize and store email attachments into a structured Google Drive folder system. This workflow is compatible with any type of binary data found in an email, as the filter is designed to detect any binary data, not just PDFs.


  How It Works

  Trigger: The workflow initiates when a new email arrives in a specified Gmail account. Alternatively, it can be configured with a similar email trigger.

  Download Attachments: The workflow is set to automatically download any binary attachments from the incoming email.

  Filter Attachments: The workflow then filters the email to confirm it contains binary data (attachments).

  Retrieve Full Email Details: If attachments are present, the workflow proceeds to retrieve the complete details of the email, including all binary data.

  Create Google Drive Folder: A new folder is created in Google Drive. This folder is dynamically named using the email's subject and the current timestamp (e.g., "[Email Subject] - [Current Timestamp]").

  Split Out Attachments: Each individual binary attachment from the email is separated into its own item within the workflow.

  Upload to Google Drive: Finally, these separated attachments are uploaded into the newly created Google Drive folder, retaining their original filenames.


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

nodes_used:
  ["n8n-nodes-base.gmailTrigger","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.filter","n8n-nodes-base.gmail","n8n-nodes-base.merge","n8n-nodes-base.splitOut"]

workflow_json_compressed:
  H4sIAAAAAAAAE71Xa2/bNhT9KwIxoC0gZhRJvQz0Q9ouW9Gm2Zq025AYBR9XDltZNCQ6bpDqvw+UZFt27XUFhn6zzctD3nMPz71+QEajCcrrlyvxR/nm1cXr103yt0EhmoMTaPKATNU4USl46eMSRjhkWZoKQQoNLI+YjDhhXIMEkhKS5AkrJM9TnbCCZkTkkZQ6jVWiKIcIhcjBfFEKB89r0M0luOXiuZ0vSnCg0cTVS2hDVIk5oAn6ZS5MGTgbnNlSQ+03i1mDJtfTEFVWg//40CdQEMVIphOcM55iziOJRZpJLGmsIct4kXOKNsC/dsBXtZnNetj7hf+5yirc4WIpGjiZ+aht0MI2xhlbock1ZpyElJJpiBaiFnNwUDeerMb4VNCkEGUDISpMOay0IbILv7sL03ZVlVboU+eEup1D5ZpN7gtblldmDl2gcTDvkpxb7W8Id1Dfn5tq6QC107YNkapBQ+WMKLsN3Z0vTpfulnb7PTfPiH0Pdbb4K6avf6vvVvs8CKXssnIBRR7Qc/Ee6qbLNDqhbTjAxFykJIs4JlEWY06JpxhSnCSgsygqBDA1grZ2VkLwojZ3fdkPU9xFdUG7DEfkCMMD/NOHh+Cnj42tTowO2haFSHsQL9IH9OFDXfZ8hmviStM4FKI7US791/P7/mZopy5tiIpOaUdhjB6BdHfwyVzfoOc1CAeDUG/Q9GR0tzZEplos3QvhxJmBUr8Z5SBNJer7k09w3zx+ck2mw4b9sm556ot7ujCb+pKzhUijiz9f3b+bVWWqDxdhXeavi8w2JeYsVjTSGU41ZZjzVGNBsggLnueRFJwKHm3Rd3L+/hKzjIRRcrzC59YHBjgY0bzzcDc0N0v5EZQLvnwJbtC7yhlXgr5BQdtudq9+oEj2YGpr/Vcl1C3ot9AsSzcI4Ofg8VtrXdDjPfHn1NDYZa38av/rDxADfAa1dHBR+WP7TI7ogwklY5YmmMU0w1wwgvMkojhJpY5ETHKhRxZw6Yz6dB+8sQ6OqqPpYoaQscNySkJ84P0rW9oaTZIQrYx2t2gSpYSE6BbM7NahSZKQEClbOagcmqAr8QmC31+cBUVt50HfT0SlA9VLVwQVrAb6g5Vxt10s+soFNwQAF1AQLbEkKcVcqxRnBAhWmiVxFsex1GJLwFln/0dzL9bL47wjetj3dgSobKXNppuMGsvd+so0RCUU7v2gwU5/DVxC5U+6262zKI0W/fmocbVRrhOdnXtvcp5tJCovpPGx68abpZDTVDLMCy+JjDMsqSZYFSlNcs7SQnlG7ALqHuthzYbtHu1mrT8fPpvGNShEjalmJQz3H1rjOKPOPB8/2jGER09OfMM86T21e/C1l8WGhb5l7tSWjjocp1FGGSmwUppgLjOJBZcMxzzluYJMpCzba57/0tr88n5TW9d2BfLW2k/dTAU0ljrSHGuWF5gnlGARa4l1opnOtUwyztA3Bo3/OFvMoWnErB/lnn7TVteddVyfGbhDjvT/Th30ZPviMsaEZHGGFSQUc6EKnPEUMKFxJAuZQUTZFvoc6tlxs5kPq6OSpOTwcxusvH8EgML999f9/Ox+G3Jall/5BhvlEccaGCkKzIkGzGUcYRlLjYkipJBSZETCyDoXpXHBxdIdN04f0Qfs9VR2oKeO9GEqVS41POveyEYZhZ9LruzlGnWChsnkgBlOQyRU7yKD/BpwzlSzDr/vJsZWF7VvXxN0F3mMwZk66cU6VQmDGCdpQTHPmMYZSMBE5SRPUhFFLO3tpgK1uXhfW18bYXyu1w/dn4Djs2YX52cvDZ/RhLTTaRuuPfkgzN6DPrh/CDq0/0DR9iHCTfCR4engmVvgQ8fuaX4XIeoRdk/7bpRx7pu/TYdQ9jveYZidco1gptO2bf8BqqcMYZIOAAA=

metadata_json:
  {"categories":["automation","integration","file management","email processing"],"complexity":"medium","use_cases":["Automatically archive email attachments to cloud storage","Centralize receipts, invoices, and contracts from email","Create timestamped folders per email for audit or compliance","Backup binary email attachments for recordkeeping","Prepare attachments for downstream processing or workflows"],"estimated_setup_minutes":20,"required_services":["Gmail (or another email trigger compatible with n8n)","Google Drive (Google account / Google Workspace)","n8n instance (cloud or self-hosted) with appropriate credentials/OAuth setup"],"key_features":["Triggers on new incoming email","Automatic download and detection of binary attachments","Retrieves full email details including binary data","Dynamically creates a Google Drive folder named with email subject + timestamp","Splits multiple attachments into separate items for individual handling/uploading  preserving original filenames"],"target_audience":["small business owners","operations teams","accounting/finance teams handling invoices/receipts via email"]}


name: Generate AI Responses with Perplexity Sonar Models (Reusable Module)
author_name: Aleksey Panov
author_username: ampanov
categories: []
created_at: 2025-06-16T23:16:56.877Z
updated_at: 2025-06-16T23:16:56.877Z
url: https://n8n.io/workflows/4978
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:33
description:
  Perplexity API Module

  This reusable workflow allows you to interact with the Perplexity API using the sonar or sonar-pro models. It is designed to be triggered from other workflows and accepts dynamic prompts via input parameters.

  Features

  🧱 Modular: Triggered using Execute Workflow from any other workflow
  📥 Inputs:
    SystemPrompt: Set your system-level instruction for the LLM
    UserPrompt: The main user prompt for the conversation
  🧠 Uses Perplexity’s chat/completions endpoint
  🔐 Built with API authentication in mind (Bearer token or header auth)
  🔁 Easily extendable for any model in the Perplexity suite

  Models supported
  sonar
  sonar-pro  
  See full model list and capabilities

  Usage

  Set up your credentials in n8n under HTTP Bearer or Header Auth.
  Add this workflow as a subworkflow using the “Execute Workflow” node.
  Pass the desired SystemPrompt and UserPrompt as input variables.
  Receive the model response in return.

  Notes

  This template is inactive by default and safe to import.
  Includes sticky notes with API references and model info.

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

workflow_json_compressed:
  H4sIAAAAAAAAE61X3W4jSRV+laPalSYTdTnd7v+WuAi7SIyYZaJNltUqjpTq6tN2MXZVU1VOxrIszRVXINDOXoAEBCQkhMQD8Dx5AfIIqLrbbmfjmQHEVdvVdY7P+eo7X31eE1GRgnzz1avXP3n5uTj9Uixvm4sz4pEFWkaKNRHSWCY5vnD7WJBmrKqjmsfxuMQ4ZMiyNMz9jGOWJFHAccx57tfc97Owinjk+0mYY5imJcurMfGIxUUzZxY/01iZc7TL5jO1aOZosSKF1UvceESyBZKCnKFu5vhG2NWRUZLp51ArDc2ynAvOrFDSpWNTQ4rLK49IVaH7uO5aCsM65HFQ0SiufRrxcUnzPAsoi4KQYeyn6RjJ7qfOreCvV/BTZd2iXTVuUWaStllpyQyOTLun39IoI9oSiksajX2PxmP/yiMN02yBFrVx2HE1V5oUkUduRWVnpMgz3yMzFNOZJcU48j3ClbQoLSnIJ5/Aw913v4ahazg9ewEvpMWpbtudyIm8mAkDt0q/rufqFgzKygADjb9YorFg1V74/dvfG+AzZoF3CAsl25RLI+QU7AzhusX1GpTuP9JGq2tYqArnI/dz93/6y7/++Ru40GI6RY0V3AgGE/KjN8iXFuHrvpAJAZjIh7t3f4VTzrGxBqqVZAvB4fp8ZSwuzrRaNPYamKzg+iuDervQxn33WzhfNo3S1sCPkVWo4XRpZ66Ch7t3v4NLV/bnipuro5m1jSlOTirFzajZNTti4oQ1gmqsUaPkeMLMSnLq+qdD/4Y2ytjnZNMd8s9Qm/YQg43X8ybI0zytyoCWaVnSKOU5LYOwpnkWJmGehHno5wNvvp6hhB6NCsoVnEplZ6h3yLyXTdgFbff1CD9mlu895dT27F/IZmnblRs2X/bM37J5D3LiOuvXB9zJ5mrzBIPRgEKcJWmUxzmtI4dCyZCyhFc08X0/zv10XCblgMLZUOF7hwft494c+592p5r2lEix3niEGSOmcoGy6/PR1+2YBxnGnFcRjeMwoxHjSPM8TqnvszH3eRTGQTYU2hJ7qNFYLeSUeB2EbsHNwCFswlG0w4bXQRZgEtKc5SWNWOlTFvGa8jrDjGPJsrg+qCzBfy0tDiQ6Tg6woNOTMPyInvztz9vBwgq+cN0bN1R0O/nDx3byh4Fr9wJn2umLrICzhpViLqzADw9hC7HpHrSNf97qlgJzKyyfdeJiPKdMcoqdDE26k5mQa2iPAoRsXxwfD9Q6PgaH2OgDs8uwivIsSWhUJgGNgtSnjNUlTXnql+MwGLOQkQPXS6uKX3Ya+t4zcj0Pe/YOKUoOMXmp56QgW6BYI76HkxOmkz1h6q7cmXJ9nL06vyDe42H4uVHyh6pakYL8YD2RADvMCpiQ9frTo2cDVs+ej4TFxcgFjdptm82EeH0YGsOmaFzkpVsCWHcP91arOXY5TasifVj3smfX9jfh06NnH1XAR7XsKxO4mrrcG+8DdSwN6v9vFYMO7tfgHlcTuSEecfdqB7ZzJB4xDXJRr3r8XQ7iEba0M5R260UKMkWJWnDnbNw6m184InnbdXejXXTUcrTo7jm3+ITR0Wi847TPMMviKqeYlTWN8jSieRoFNEqyNM7CBJMqPag24//RyHxIbvbti6P9E7n5O7T3EgxUfGpa8E2D3Bo4Pra3CkR7jx0fw607QrszGrVWC2D9KW5ji168HnuKVubAHd/9L7+Fc7SmFY+Ov9DTHY5wNB15UOKM3QilneexSmJnKt3+ly+/GPX59w3Kw923/xiyX8wQFkxIcKyEVg2crVIanFHWS95+3aYcjNTD3btfuWCDfcfANLoklTNtXPXBnRxuJ/QamNZstUv3WLHavN+oJXAmoWGm7XrROjS3+f7tH75v0+7f/rHVUCevK7XU0DCN0u7gPaStVx5h3IobJEXN5sYNA1or5LQlRudihJKvdIWaFOQmcDluuvj+P0MS5uM0oPU4GNMoCUpaJklASx85q1LMsXRWgispkW8Fb99SFGviECfFpXM4qvpPtLsN8IiQFb4hhb+5utp47wvay99u+7inO1jRAQ90oIrN5t980zcMcw0AAA==

metadata_json:
  {"categories":["automation","integration","ai/llm"],"complexity":"simple","use_cases":["Generate AI responses inside n8n workflows","Add LLM-powered steps to automations","Build conversational or assistant features via subworkflows","Prototype prompt/response flows with Perplexity models"],"estimated_setup_minutes":10,"required_services":["Perplexity API (sonar or sonar-pro model)","n8n instance with Execute Workflow capability","HTTP Bearer or Header auth credentials set in n8n"],"key_features":["Reusable subworkflow triggered via Execute Workflow","Accepts dynamic SystemPrompt and UserPrompt inputs","Calls Perplexity chat/completions endpoint","Supports sonar and sonar-pro models","Built for API auth (Bearer/header) and easy extension"],"target_audience":["n8n users","developers and automation engineers","AI/ML practitioners prototyping LLM integrations"]}


name: Reddit Sentiment Analysis for Apple WWDC25 with Gemini AI and Google Sheets
author_name: Zacharia Kimotho
author_username: imperolq
categories: []
created_at: 2025-06-17T06:55:47.611Z
updated_at: 2025-06-17T06:55:47.611Z
url: https://n8n.io/workflows/4980
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-30 08:33:37
description:
  This workflow automates sentiment analysis of Reddit posts related to Apple's WWDC25 event. It extracts data, categorizes posts, analyzes sentiment of comments, and updates a Google Sheet with the results. 

  Preliquisites
  Bright Data Account: You need a Bright Data account to scrape Reddit data. Ensure you have the correct permissions to use their API. https://brightdata.com/
  Google Sheets API Credentials: Enable the Google Sheets API in your Google Cloud project and create credentials (OAuth 2.0 Client IDs).
  Google Gemini API Credentials: You need a Gemini API key to run the sentiment analysis. Ensure you have the correct permissions to use their API. https://ai.google.dev/". You can use any other models of choice

  Setup


  Import the Workflow: Import the provided JSON workflow into your n8n instance.",
  Configure Bright Data Credentials:,
  In the 'scrap reddit' and the 'get status' nodes, in Header Parameters find the Authorization field, replace Bearer 1234 with your Bright Data API key. Apply this to every node that utilizes your Bright Data API Key.,
  Set up the Google Sheets API credentials,
         In the 'Append Sentiments' node, set up the Google Sheets API by connecting your Google Sheets account through oAuth 2 credentials. ",
  Configure the Google Gemini Credential ID,
       In the ' Sentiment Analysis per comment' node, set up the Google Gemini API by connecting your Google AI account through the API credentials. ,
  Configure Additional Parameters:,
      In the 'scrap reddit' node, modify the JSON body to adjust the search term, date, or sort method.,
     In the 'Wait' node, alter the 'Amount' to adjust the polling interval for scraping status, it is set to 15 seconds by default.,
     In the 'Text Classifier' node, customize the categories and descriptions to suit the sentiment analysis needs. Review categories such as 'WWDC events' to ensure relevancy.,
     In the 'Sentiment Analysis per comment' node, modify the system prompt template to improve context.
  customization_options

  Bright Data API parameters to adjust scraping behavior.
  Wait node duration to optimize polling.
  Text Classifier categories and descriptions.
  Sentiment Analysis system prompt. 

  Use Case Examples

  Brand Monitoring:** Track public sentiment towards Apple during and after the WWDC25 event.
  Product Feedback Analysis:** Gather insights into user reactions to new product announcements.
  Competitive Analysis:** Compare sentiment towards Apple's announcements versus competitors.
  Event Impact Assessment:** Measure the overall impact of the WWDC25 event on various aspects of Apple's business.
  Target_audiences: 
  Marketing professionals in the tech industry,
  Brand managers,
  Product managers,
  Market research analysts,
  Social media managers

  Troubleshooting: 
  Workflow fails to start.
  Check that all necessary credentials (Bright Data and Google Sheets API) are correctly configured and that the Bright Data API key is valid.
  Data scraping fails.
  Verify the Bright Data API key, ensure the dataset ID is correct, and inspect the Bright Data dashboard for any issues with the scraping job.
  Sentiment analysis is inaccurate.
  Refine the categories and descriptions in the 'Text Classifier' node. Check that you have the correct Google Gemini API key, as the original is a placeholder.
  Google Sheets are not updating.
  Ensure the Google Sheets API credentials have the necessary permissions to write to the specified spreadsheet and sheet. Check API usage limits.
  Workflow does not produce the correct output.
  Check the data connections, by clicking the connections, and looking at which data is being produced. Check all formulas for errors.

  Happy productivity!

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.switch","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.textClassifier","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.splitOut","n8n-nodes-base.splitInBatches","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.sentimentAnalysis","n8n-nodes-base.filter","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6464 characters]

metadata_json:
  {"categories":["automation","integration","data processing","social listening","AI/ML"],"complexity":"complex","use_cases":["Monitor sentiment around Apple WWDC25","Social listening and community analysis","Event-related trend detection","Generate reports and dashboards from Reddit data","Customer feedback and product research"],"estimated_setup_minutes":60,"required_services":["Bright Data (for Reddit scraping)","Google Sheets API / Google Cloud credentials (OAuth)","Google Gemini (lmChat) access/API key","n8n instance or runtime"],"key_features":["Scrapes Reddit posts related to WWDC25 via Bright Data","Categorizes posts and classifies content","Performs sentiment analysis on comments using Gemini AI","Batches and rate-limits requests using splitInBatches","Updates and appends results to Google Sheets automatically"],"target_audience":["Data analysts","Social media managers and marketers","Product managers and researchers tracking event sentiment」「Developers/automation engineers building integrations"]}


name: 3D Product Video Generator from 2D Image for E-Commerce Stores
author_name: InfyOm Technologies
author_username: infyom
categories: []
created_at: 2025-06-17T07:39:15.730Z
updated_at: 2025-06-17T07:39:15.730Z
url: https://n8n.io/workflows/4987
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  ✅ What problem does this workflow solve?

  Shopify and E-Commerce store owners often struggle to create engaging 3D videos from static product images. This workflow automates that entire process—from image upload to video delivery—so store owners can get professional-looking 3D videos without any manual editing or follow-up.

  ⚙️ What does this workflow do?

  Accepts a 2D product image and name via a public n8n form.
  Generates a unique slug and folder in Google Drive for the product.
  Uploads the original image to Google Drive and logs data in a spreadsheet.
  Removes the background from the image using remove.bg API.
  Uploads the cleaned image to Google Drive and updates the spreadsheet.
  Creates a 3D product video using the cleaned image via the Fal.ai API.
  Periodically checks the video creation status.
  Once completed, download the video, upload it to Google Drive, and log the link.
  Notifies the store owner via email with the video download link.

  🔧 Setup

  🟢 Google Services
  Google Drive**: Create and connect a folder where all product assets will be stored.
  Google Spreadsheet**: A spreadsheet to log the product name, original image link, cleaned image link, and final video URL.
  Gmail**: Connect Gmail to send the final notification email to the store owner.

  🔑 API Keys Required
  Remove.bg**: Get an API key from remove.bg.
  Fal.ai**: Sign up at fal.ai and obtain your API key to use the image-to-video generation service.

  🧠 How it Works

  📝 1. Product Form Submission
  A store owner submits the product name and 2D image via a public n8n form.

  🗂 2. Organize in Google Drive
  A unique slug is generated for the product.
  A new folder is created inside Google Drive using that slug.
  The original image is uploaded into the folder.

  📊 3. Record in a Spreadsheet
  The product name and original image URL are stored in a Google Sheet.

  🧹 4. Background Removal
  The uploaded image is processed through remove.bg API to eliminate noisy or cluttered backgrounds.
  The cleaned image is uploaded back into the product’s Drive folder.
  The cleaned image link is updated in the spreadsheet.

  🎥 5. Create 3D Video (via Fal.ai)
  The cleaned image is passed to the Fal.ai video generation API.
  The workflow periodically checks the status until the video is ready.

  ☁️ 6. Store Final Video
  Once the video is ready, the file is downloaded.
  The final video is uploaded into the same Google Drive folder.
  Its link is saved in the spreadsheet next to the respective product entry.

  📧 7. Notify the Store Owner
  An automated email is sent to the store owner with the video link, letting them know it's ready for use—no waiting, no manual follow-up needed.

  👤 Who can use it?

  This workflow is ideal for:
  🛍 Shopify Sellers
  🧺 E-commerce Store Owners
  📸 Product Photographers
  🎬 Marketing Teams
  🤖 Automation Enthusiasts

  If you want to automate 3D product video creation using AI—this is the no-code workflow you’ve been waiting for!

nodes_used:
  ["n8n-nodes-base.wait","n8n-nodes-base.formTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDrive","n8n-nodes-base.code","n8n-nodes-base.googleDrive","n8n-nodes-base.code","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.gmail"]

workflow_json_compressed:
  [encoded data, 5380 characters]

metadata_json:
  {"categories":["automation","e-commerce","media generation","AI/ML","integration"],"complexity":"complex","use_cases":["Automated 3D product video generation from 2D images","E-commerce product asset pipeline automation","Removing backgrounds and creating marketing videos","Centralized asset storage and logging","Automated owner notifications when videos are ready"],"estimated_setup_minutes":45,"required_services":["n8n (hosted or self‑hosted) with public form/webhook","Google Drive","Google Sheets","Gmail (or SMTP)","remove.bg API","Fal.ai (video generation)"],"key_features":["Public form for image + product submission","Automatic folder & slug creation in Google Drive","Original and cleaned image upload and tracking in Google Sheets","Background removal via remove.bg","3D/video generation using Fal.ai with polling status checks"],"target_audience":["Shopify and e-commerce store owners","Product photographers","Marketing teams for online stores」「No-code automation users and ops teams"]}


name: Interview Scheduling Automation with Google Sheets, Calendar, Gmail & GPT-4o'
author_name: Rahul Joshi
author_username: rahul08
categories: []
created_at: 2025-06-17T09:43:54.839Z
updated_at: 2025-06-17T09:43:54.839Z
url: https://n8n.io/workflows/5001
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  SEO-Optimized Description:

  Streamline your interview scheduling process with this intelligent n8n automation template powered by Google Calendar, Google Sheets, and GPT-4. This workflow reads candidate information from a spreadsheet, automatically schedules interviews in Google Calendar, and sends personalized interview invitation emails—all without manual input.

  What This Template Does:

  📋 Monitors a Google Sheet for new candidate entries every minute
  🕒 Auto-selects the next available interview slot (Mon/Wed/Fri at 3 PM)
  📅 Creates a calendar invite in your Google Calendar
  ✍️ Uses GPT-4 to generate personalized emails based on candidate data
  📧 Sends the email invite with the interview link via Gmail

  Built-in logic ensures:

  Candidates never get same-day interviews
  AI-generated emails are concise, polite, and professionally formatted
  Scheduling remains conflict-free and easy to manage

  Requirements:

  Google Calendar API credentials
  Google Sheets with candidate info (Name, Email, Background)
  Gmail account with OAuth2
  Azure OpenAI API (GPT-4o recommended)

  Perfect For:

   Startups, HR teams, and recruiters looking to automate interview scheduling, eliminate back-and-forth emails, and deliver a professional candidate experience—all with zero hassle.

nodes_used:
  ["n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.googleCalendar","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatAzureOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.code"]

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

metadata_json:
  {"categories":["automation","integration","scheduling","AI-assisted communication","HR/recruitment"],"complexity":"medium","use_cases":["Automate interview scheduling from candidate spreadsheets","Send personalized interview invitations via email","Prevent same-day interviews and avoid calendar conflicts","Standardize candidate communication using AI-generated templates","Reduce manual back-and-forth for recruiters and hiring teams"],"estimated_setup_minutes":30,"required_services":["Google Sheets (Google account + OAuth2 credentials)","Google Calendar (Google account + API credentials)","Gmail (OAuth2)","Azure OpenAI (GPT-4o recommended)"],"key_features":["Monitors Google Sheet for new candidate rows","Auto-selects next available interview slot (Mon/Wed/Fri at 3 PM)","Creates Google Calendar event with interview details","Uses GPT-4 to generate concise, professional, personalized emails","Sends invitation emails via Gmail with interview link/details and avoids same-day scheduling conflicts (built-in logic checks)"],"target_audience":["Startups","HR teams","Recruiters / talent acquisition specialists"]}


name: Generate AI-Powered LinkedIn Posts with Google Gemini and Gen-Imager
author_name: Evoort Solutions
author_username: evoortsolutions
categories: []
created_at: 2025-06-17T10:03:42.215Z
updated_at: 2025-06-17T10:03:42.215Z
url: https://n8n.io/workflows/5002
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  🚀 AI-Powered LinkedIn Post Automation

  🧩 How It Works

  This workflow automatically generates LinkedIn posts based on a user-submitted topic, including both content creation and image generation, then publishes the post to LinkedIn. Ideal for marketers, content creators, or businesses looking to streamline their social media activity, without the need for manual post creation.

  High-Level Workflow:

  Trigger: The workflow is triggered when a user submits a form with a topic for the LinkedIn post.
  Data Mapping: The topic is mapped and prepared for the AI model.
  AI Content Generation: Calls the Google Gemini AI model to generate engaging post content and a visual image prompt.
  Image Creation: Sends the image prompt to the external API, gen-imager, to generate a professional image matching the topic.
  Post Creation: Publishes the text and image to LinkedIn, automatically updating the user's feed.

  ⚙️ Set Up Steps (Quick Overview)

  🕐 Estimated Setup Time: ~10–20 minutes

  Connect Google Gemini: Set up your Google Gemini API credentials to interact with the AI model for content creation.  
  Set Up External Image API: Configure the external image generation API (gen-imager API) for visual creation based on the post prompt.
  Connect LinkedIn: Set up OAuth2 credentials to authenticate your LinkedIn account and allow publishing posts.
  Form Submission Setup: Create a simple web form for users to submit the topic for LinkedIn posts.
  Activate the Workflow: Once everything is connected, activate the workflow. It will trigger automatically upon receiving form submissions.

  💡 Important Notes:
  The flow uses Google Gemini (PaLM) for generating content based on the user's topic.
  Text to Image: The image generation process involves creating a professional, LinkedIn-appropriate image based on the post’s topic using the **gen-imager API.
  You can customize the visual elements of the posts and adjust the tone of the generated content based on preferences.

  🛠 Detailed Node Breakdown:

  On Form Submission  
     Trigger: Captures the user-submitted topic and initializes the workflow.
     Action: Start the process by gathering the topic information.

  Mapper (Field Mapping)  
     Action: Maps the captured topic to a variable that is passed along for content generation.

  AI Agent (Content Generation)  
     Action: Calls Google Gemini to generate professional LinkedIn post content and an image prompt based on the submitted topic.
     Key: Outputs content in a structured form — post text and image prompt.

  Google Gemini Chat Model  
     Action: AI model that generates actionable insights, engaging copy, and an image prompt for LinkedIn post.

  Normalizer (Data Cleanup)  
     Action: Cleans the output from the AI model to ensure the content and image prompt are correctly formatted for use in the next steps.

  Text to Image (Image Generation)  
     Action: Sends the image prompt to the gen-imager API, which returns a custom image based on the post's topic.

  Decoder (Base64 Decoding)  
     Action: Decodes the image from base64 format for easier uploading to LinkedIn.

  LinkedIn (Post Creation)  
     Action: Publishes the generated text and image to LinkedIn, automatically creating a polished post for the user’s feed.

  ⏱ Execution Time Breakdown:

  Total Estimated Execution Time**: ~15–40 seconds per workflow run.
    On Form Submission: Instant (Trigger)
    Mapper (Field Mapping): ~1–2 seconds
    AI Content Generation: ~5–10 seconds (depending on server load)
    Text to Image: ~5–15 seconds (depends on external API)
    LinkedIn Post Creation: ~2–5 seconds

  🚀 Ready to Get Started?

  Let’s get you started with automating your LinkedIn posts!  
  Create your free n8n account and set up the workflow using this link.

  📝 Notes & Customizations  
  Form Fields**: Customize the form to gather more specific information for the LinkedIn posts (like audience targeting, post category, etc.).
  Image API Customization**: Adjust the image generation prompt to fit your brand’s style, or change the color palette as needed.
  Content Tone**: The tone can be adjusted by modifying the system message sent to Google Gemini for content generation.

nodes_used:
  ["n8n-nodes-base.formTrigger","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.linkedIn","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6640 characters]

metadata_json:
  {"categories":["automation","integration","social media","AI content generation","image generation"],"complexity":"medium","use_cases":["Automated LinkedIn post creation from user-submitted topics","Scale social media content production for marketing teams","Generate branded post images alongside copy","Rapid content ideation and publishing workflow","Customizable tone and style for posts"],"estimated_setup_minutes":15,"required_services":["Google Gemini (PaLM) API","gen-imager API (external image generation)","LinkedIn API (OAuth2 for post publishing)","Form/webhook provider or n8n Webhook for submissions","n8n account/instance"],"key_features":["Generates LinkedIn post copy using Google Gemini","Creates visual images via gen-imager from AI-generated prompts","Automatically publishes text + image to LinkedIn","Field mapping and normalization to ensure clean outputs","Base64 image decoding and upload handling for LinkedIn compatibility"],"target_audience":["marketers","content creators","social media managers and agencies"]}


name: Daily Email Digest with AI Summarization using Gmail, OpenRouter and LangChain
author_name: Roshan Ramani
author_username: rawsun007
categories: []
created_at: 2025-06-17T11:06:08.281Z
updated_at: 2025-06-17T11:06:08.281Z
url: https://n8n.io/workflows/5003
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:33
description:
  📧 Morning Mail Summary Ai Agent

  Simplify your mornings with this automated email summary workflow in n8n, designed for teams and individuals who want a quick, actionable snapshot of their inbox—every day, at a glance.

  📌 Features
  Fully Automated**: Triggers daily at 8 AM IST  
  Targeted Extraction**: Fetches messages from specific senders with dynamic date filtering  
  Structured Data Aggregation**: Pulls key fields (sender, recipients, snippet)  
  AI-Powered Summarization**: Uses LangChain + OpenRouter to generate:  
    Insightful summaries  
    Highlighted issues  
    Assigned action items  
  Memory-Enhanced Context**: Maintains continuity across days  
  Stylish HTML Email Output**: Responsive design with:  
    Summary section  
    Action items  
    Branded footer  
  Team-Ready Sharing**: Auto-distributes to team with CC support  

  🛠️ How It Works
  Trigger: Daily schedule in n8n  
  Fetch: Retrieves last 24h emails from target sender  
  Organize: Aggregates email metadata  
  Summarize: AI agent produces structured report:  
     Key updates  
     Critical issues  
     Actionable tasks  
  Send: Emails digest to team  

  🎯 Ideal For
  Project managers needing stakeholder briefings  
  Customer success teams tracking communications  
  Leadership staying informed efficiently  
  Anyone streamlining email review  

  📦 Included Resources
  Complete n8n workflow JSON (6 nodes)  
  Prompt template for structured summarization (Summary, Issues, Actions, Follow‑Ups).
  -Styled HTML email template, with responsive design and branding sections.

  🆓 Get Started

  Import JSON into n8n  
  Configure:  
     Gmail / OpenRouter credentials  
     Recipient lists  
     Custom prompts  
  Modify freely for your use case  

  ⭐ Benefits

  ⏳ Time saved: Skip inbox digging  
  🔍 Focus: See only what matters  
  ✨ Clarity: Structured tasks & deadlines  
  🔄 Consistency: Daily alignment for teams  

nodes_used:
  ["n8n-nodes-base.gmail","n8n-nodes-base.aggregate","n8n-nodes-base.gmail","n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5020 characters]

metadata_json:
  {"categories":["automation","integration","communication","AI summarization","productivity"],"complexity":"medium","use_cases":["Daily inbox digest for teams or individuals","Project status briefings for managers","Customer success communication tracking","Executive morning summaries","Automated task extraction and assignment from emails"],"estimated_setup_minutes":20,"required_services":["n8n instance","Gmail account / Gmail API (for fetching and sending emails)","OpenRouter API (LLM provider)","LangChain/Agent integration (via n8n lm/agent nodes)"],"key_features":["Daily scheduled trigger (8 AM IST)","Targeted email fetch with dynamic date filtering","Aggregates email metadata (sender, recipients, snippet)","AI-powered structured summarization (Summary, Issues, Actions)","Memory buffer for multi-day context continuity (memoryBufferWindow node)"],"target_audience":["Project managers","Customer success teams","Team leads / executives needing briefings"]}


name: Automate GitHub Issue Assignments via Comment Commands
author_name: Roshan Ramani
author_username: rawsun007
categories: []
created_at: 2025-06-17T11:41:12.184Z
updated_at: 2025-06-17T11:41:12.184Z
url: https://n8n.io/workflows/5004
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:33
description:
  🤖 GitHub Auto-Assign Bot

  Streamline your open source project with intelligent issue assignment automation.

  ✨ What It Does
  Automatically assigns GitHub issues to contributors who comment "assign me" - eliminating manual triage work and creating a fair, first-come-first-served system.

  🔑 Key Features
  Smart Detection**:  
    Monitors both new issues and comments for assignment requests
  Conflict Prevention**:  
    Checks existing assignments before making new ones
  Auto-Labeling**:  
    Adds "assigned" labels for better tracking
  Self-Service Assignment**:  
    Contributors claim issues with simple "assign me" command
  Polite Responses**:  
    Automatically notifies when issues are already assigned

  🎯 Perfect For
  Open source maintainers
  Development teams managing GitHub repos
  Projects with active contributor communities
  Anyone reducing manual issue management

  ⚙️ Setup Requirements
  GitHub repository with issues enabled
  n8n instance with GitHub OAuth credentials
  5 minutes configuration time

  🚀 How Contributors Use It
  Find an unassigned issue
  Comment assign me 
  Get automatically assigned
  Start coding immediately → no maintainer approval needed!

  ✅ Benefits
  Reduces maintainer workload** - No manual assignments
  Faster contributor onboarding** - Instant self-service
  Prevents conflicts** - Built-in assignment checking
  Scales automatically** - Works across unlimited issues
  Improves contributor experience** - Simple, clear process

  ⚡ Workflow Triggers
  New GitHub issues containing "assign me"
  New comments with "assign me" on existing issues
  Automatic label management
  Conflict resolution responses

  &gt; Transform your GitHub workflow - Perfect for growing open source projects and development teams!

nodes_used:
  ["n8n-nodes-base.switch","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.github","n8n-nodes-base.github","n8n-nodes-base.github","n8n-nodes-base.githubTrigger","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","developer tools","collaboration"],"complexity":"medium","use_cases":["Self-service issue claiming via comment commands","Reducing manual triage and maintainer workload","Automatic labeling and tracking of assigned issues","Preventing assignment conflicts in active projects","Scaling contributor onboarding for open source projects"],"estimated_setup_minutes":5,"required_services":["GitHub (repository with issues enabled, GitHub Issues API)","n8n instance (with GitHub OAuth credentials)"],"key_features":["Monitors new issues and comments for 'assign me' command","Checks for existing assignees before assigning","Automatically assigns commenters to issues","Adds 'assigned' label for tracking","Posts polite notifications when issues are already assigned"],"target_audience":["Open source maintainers","Development teams","Community managers for projects with contributors"]}


name: Twitter Keyword & Public-Figure Monitor with Automated Airtable Archiving
author_name: Roshan Ramani
author_username: rawsun007
categories: []
created_at: 2025-06-17T11:57:18.978Z
updated_at: 2025-06-17T11:57:18.978Z
url: https://n8n.io/workflows/5006
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:33
description:
  Monitor & Archive Keyword Tweets to Airtable

  📌 Overview
  Automatically searches Twitter for any keyword/topic (person, brand, hashtag), filters duplicates, and stores new tweets in Airtable with rich metadata - all on a daily schedule.

  🛠️ Workflow Steps
  ⏰ Schedule Trigger  
     Runs daily at 8 AM (customizable)
     
  🐦 Twitter Search  
     Fetches 100 latest tweets matching your keyword

  📦 Reformat Data  
     Structures:
     Text | Likes | ID | URL  
     Author | Timestamp

  🗂️ Fetch Airtable Records  
     Retrieves existing tweet IDs

  🔍 Deduplicate  
     Compares IDs to exclude duplicates

  ➕ Append New Tweets  
     Saves only fresh entries to Airtable

  💡 Key Benefits
  🤖 Automated Monitoring**: Near real-time tracking
  🧹 Clean Data**: Zero duplicate entries
  📁 Structured Archive**: Organized metadata for analysis
  ⚙️ Fully Customizable**: Adapt keywords/schedule/output

  🧩 Perfect For
  Social media analysts tracking brand mentions
  Journalists monitoring public figures
  Researchers archiving topic conversations
  Marketing teams measuring campaign reach

  🚀 Getting Started
  Import into n8n  
  Connect Credentials:  
     Twitter API keys  
     Airtable base + table ID  
  Configure:  
     Search keyword (e.g., "Narendra Modi")  
     Schedule timing  
  Run & Forget:  
     Initial run to backfill  
     Daily auto-archiving  

  ✅ Enhancement Ideas
  Add Filters:
    Exclude retweets
    Filter by language
    Geolocation targeting

   Notifications:
     Slack alerts for new tweets
     Email digests

   AI Extensions:
     Sentiment analysis
     Auto-categorization
     Trend reporting

nodes_used:
  ["n8n-nodes-base.twitter","n8n-nodes-base.set","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.airtable","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","social media monitoring","integration","data archiving"],"complexity":"medium","use_cases":["Monitor brand or public-figure mentions on Twitter","Archive tweets for research or compliance","Create datasets for analysis (sentiment, trends)","Measure campaign reach and engagement"],"estimated_setup_minutes":20,"required_services":["Twitter API (developer keys)","Airtable (base and table access)"],"key_features":["Scheduled daily Twitter search","Fetches up to 100 latest tweets per run","Reformats tweet metadata (text, likes, id, url, author, timestamp)","Deduplication by tweet ID against Airtable","Appends only new tweets to Airtable (archive)"],"target_audience":["Social media analysts","Journalists","Researchers/academics collecting conversation data`,`Marketing teams tracking mentions"]}


name: AI-Powered Cold Calling Automation with Vapi.ai, GPT-4o & Google Sheets
author_name: Amit Mehta
author_username: amitswba
categories: []
created_at: 2025-06-17T14:20:22.988Z
updated_at: 2025-06-17T14:20:22.988Z
url: https://n8n.io/workflows/5008
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:32
description:
  📞AI-Powered Cold Calling Automation with Vapi.ai, GPT-4o & Google Sheets

  Overview

  Transform your lead list into an AI-powered calling machine. This workflow automates your entire cold calling process using Vapi's conversational AI to initiate calls, qualify leads, capture detailed insights, and manage intelligent follow-ups - achieving 10x more calls than manual efforts while maintaining personalized, professional conversations.

  Built for sales teams, recruiters, and customer success professionals who need to scale outreach without sacrificing quality or adding headcount.

  🎯 Use Cases

  Sales & Business Development
  Lead Qualification**: Auto-dial new leads to assess interest and budget
  Demo Scheduling**: Book meetings with qualified prospects automatically
  Re-engagement**: Win back cold leads with personalized outreach
  Product Launches**: Announce new features to your entire customer base

  Recruitment & HR
  Candidate Screening**: Conduct first-round interviews at scale
  Interview Scheduling**: Coordinate availability without back-and-forth
  Reference Checks**: Automate reference verification calls
  Offer Follow-ups**: Ensure candidates received and understood offers

  Customer Success
  Onboarding Calls**: Welcome new customers with consistent messaging
  Renewal Reminders**: Proactively reach out before contract expiration
  Upsell Campaigns**: Identify expansion opportunities through conversations
  NPS Surveys**: Gather voice feedback for authentic insights

  Market Research
  Customer Interviews**: Collect qualitative feedback at scale
  Product Validation**: Test new concepts with target audiences
  Competitive Intelligence**: Understand why customers chose competitors
  Industry Surveys**: Gather market trends through conversational data

  ⚙️ How it Works

  The workflow operates through two parallel processes:

  Process 1: Call Initiation (Manual/On-Demand)
  Trigger: Manual start or scheduled batch processing
  Lead Retrieval: Fetches leads marked "Pending" or "Retry Scheduled" from Google Sheets
  Validation: Checks retry count (max 5 attempts) and routes accordingly
  API Call: Sends request to Vapi with lead details and AI assistant configuration
  Status Update: Marks lead as "Call Initiated" with unique call ID
  Batch Processing: Loops through all eligible leads with controlled pacing

  Process 2: Result Collection (Every 10 Minutes)
  Schedule Trigger: Automatic execution every 10 minutes
  Active Call Check: Identifies all "Call Initiated" records
  Result Fetching: Retrieves call outcomes from Vapi API
  Data Processing: Extracts recordings, transcripts, summaries, and interest scores
  Sheet Update: Writes complete results or schedules retry for missed calls
  Team Notification: Sends Slack alerts on batch completion

  📋 Setup Instructions

  Prerequisites
  n8n Instance**: Version 1.0.0+ (self-hosted or cloud)
  Google Account**: With Sheets API enabled
  Vapi Account**: Active subscription with API access
  Slack Workspace**: Optional, for notifications

  Step 1: Prepare Your Lead Database

  Create a Google Sheet with these exact columns (case-sensitive):
  Customer_id | Name | Phone Number | Email | Status | Recording URL | Transcript | Summary | Interest | Call Duration | Retry count | Last attempt | Call ID

  Initial Setup:
  Customer_id: Unique identifier (e.g., LEAD001)
  Name: Full name for personalization
  Phone Number: International format (+14155551234)
  Email: For follow-up campaigns
  Status: Set to "Pending"
  Retry count: Set to 0
  Other fields: Leave empty (auto-populated)

  Step 2: Configure Vapi AI Assistant

  Create Your AI Voice Agent
     Log into vapi.ai
     Navigate to Assistants → Create New
     Design your conversation flow
     Configure voice settings (gender, accent, speed)
     Set up objection handling
     Save and copy the Assistant ID

  Set Up Phone Number
     Go to Phone Numbers → Purchase/Import
     Select local or toll-free number
     Configure caller ID settings
     Copy the Phone Number ID

  Step 3: Import & Configure Workflow

  Import to n8n
     Download Cold_calling_loop.json
     In n8n: Import → From File
     Select the JSON file

  Connect Credentials
     Google Sheets: OAuth2 authentication
     Vapi API: HTTP Header Auth
       Name: Authorization
       Value: Bearer YOUR_API_KEY
     Slack: OAuth2 (optional)

  Update Configuration
     All Google Sheets nodes: Select your spreadsheet
     HTTP Request nodes: Update assistantId and phoneNumberId
     Slack nodes: Choose notification channels

  Step 4: Test & Deploy

  Add test lead with your phone number
  Execute workflow manually
  Answer call and complete conversation
  Verify results in Google Sheet
  Activate workflow for production

  🔄 Workflow Logic Explained

  Status Flow Diagram
  [New Lead: Pending] → [Call Initiated] → [Completed/Failed]
                                        ↓
                              [Retry Scheduled] ← (if failed & retry &lt; 5)

  Key Decision Points

  Retry Limit Check (If1 Node)
     Condition: Retry count ≤ 5
     True: Proceed with call
     False: Mark as "Max Retries Reached"

  Call Completion Check (If2 Node)
     Validates: Recording exists, transcript available, analysis complete
     Success: Update with full results
     Failure: Schedule retry with incremented counter

  Status Routing (If4 Node)
     "Pending": Direct to call queue
     "Retry Scheduled": Add wait period before calling

  📊 Node Reference Guide

  Core Processing Nodes

  | Node | Type | Purpose | Configuration |
  |------|------|---------|---------------|
  | Get Leads from Sheet1 | Google Sheets | Fetches eligible leads | Filter: Status = "Pending" OR "Retry Scheduled" |
  | HTTP Request | HTTP | Initiates Vapi call | POST to api.vapi.ai/call with assistant config |
  | Loop Over Items | Split In Batches | Processes leads individually | Batch size: 1, ensures sequential processing |
  | Get Call Data | HTTP | Retrieves call results | GET from api.vapi.ai/call?id={callId} |
  | Edit Fields2 | Set | Formats result data | Maps Vapi response to sheet columns |

  Status Management Nodes

  | Node | Updates | Trigger |
  |------|---------|---------|
  | Update Status - Calling1 | "Call Initiated" | After successful API call |
  | Update Status - Calling | "Done" + results | When call completed successfully |
  | Update Status - for Missed call | "Retry Scheduled" | When call failed/no answer |
  | Update Status - Calling3 | "Retry Done" | After retry limit reached |

  Control Flow Nodes

  | Node | Function | Logic |
  |------|----------|-------|
  | If1 | Retry validation | Checks retry count ≤ 5 |
  | If2 | Result validation | Verifies call completion |
  | Wait | Retry delay | Pauses before retry attempt |
  | Merge | Path combination | Unifies success/retry flows |

  🛠️ Customization Guide

  1. Modify Retry Strategy
  // Add to Code node for progressive delays
  const retryCount = $json["Retry count"];
  const delays = {
    1: 30,    // 30 minutes
    2: 120,   // 2 hours
    3: 1440,  // Next day
    4: 2880,  // 2 days
    5: 10080  // 1 week
  };
  return { waitMinutes: delays[retryCount] || 60 };

  2. Add Business Hours Check
  // Add before HTTP Request node
  const now = new Date();
  const hour = now.getHours();
  const day = now.getDay();

  const isWeekday = day &gt;= 1 && day &lt;= 5;
  const isBusinessHours = hour &gt;= 9 && hour &lt;= 17;

  if (!isWeekday || !isBusinessHours) {
    throw new Error('Outside calling hours');
  }

  3. Enhance Lead Context
  {
    "assistantId": "your-assistant-id",
    "phoneNumberId": "your-phone-id",
    "customer": {
      "number": "+{{ $json['Phone Number'] }}",
      "name": "{{ $json.Name }}",
      "customData": {
        "company": "{{ $json.Company }}",
        "lastPurchase": "{{ $json['Last Purchase Date'] }}",
        "accountValue": "{{ $json['Account Value'] }}",
        "preferredProduct": "{{ $json['Product Interest'] }}"
      }
    }
  }

  💡 Sticky Notes Configuration

  Note 1: Status Progression
  Location: Near Google Sheets nodes
  📊 LEAD STATUS FLOW:
  Pending → Call Initiated → Done/Retry Scheduled
  Retry Scheduled → Call Initiated → Done/Failed

  ⚠️ Max retries: 5 attempts
  ❌ Failed = No answer after 5 tries
  ✅ Done = Call completed with results

  Note 2: Phone Format Requirements
  Location: Near HTTP Request nodes
  📱 PHONE NUMBER FORMAT:
  ✅ Correct: +14155551234
  ❌ Wrong: (415) 555-1234
  ❌ Wrong: 415-555-1234

  Must include:
  Plus sign (+)
  Country code
  No spaces or symbols

  Note 3: Vapi Setup Checklist
  Location: At workflow start
  🔧 VAPI CONFIGURATION:
  □ Assistant ID copied from Vapi
  □ Phone Number ID from Vapi
  □ API Key in credentials
  □ Credits available
  □ Assistant tested in playground

  Note 4: Performance Guidelines
  Location: Near Loop nodes
  ⚡ OPTIMIZATION TIPS:
  • Batch size: 10-20 leads
  • Call hours: 9 AM - 5 PM local
  • Delay between calls: 5 seconds
  • Monthly archive old records
  • Monitor Vapi credit usage

  Common Issues & Solutions

  🔴 "Authentication Failed"
  Cause: Expired or invalid credentials
  Fix: 
  Re-authenticate Google Sheets OAuth
  Verify Vapi API key is active
  Check credential permissions

  🔴 "Call Not Initiating"
  Cause: Invalid phone format or Vapi configuration
  Fix:
  Ensure phone includes country code
  Verify Vapi account has credits
  Test assistant in Vapi playground
  Check assistant and phone IDs

  🔴 "Missing Results"
  Cause: Call still processing or webhook failure
  Fix:
  Wait 3-5 minutes for processing
  Check Vapi dashboard directly
  Verify Get Call Data node query
  Review If2 conditions

  🔴 "Infinite Loop"
  Cause: Status not updating correctly
  Fix:
  Check retry count increment logic
  Verify status update mappings
  Clear test data and restart

  🔴 "No Slack Notifications"
  Cause: Bot permissions or channel access
  Fix:
  Invite bot to channel
  Verify OAuth scopes
  Test Slack node individually

  📁 Required Files & Resources

  | File | Description | Location |
  |------|-------------|----------|
  | Cold_calling_loop.json | Complete workflow configuration | Main workflow file |
  | lead_template.xlsx | Google Sheets template with headers | Sample data file |

  🏷️ Tags & Categories

  Primary Category
  Sales & Marketing Automation

  Workflow Tags
  cold-calling vapi-ai voice-automation lead-generation ai-sales google-sheets outbound-calling sales-automation conversational-ai crm-automation

  Use Case Tags
  b2b-sales recruitment customer-success market-research appointment-setting lead-qualification follow-up-automation

  Integration Tags
  vapi google-sheets slack voice-ai telephony

  🚀 Future Enhancements

  Planned Features
  CRM Integration**: Direct sync with Salesforce/HubSpot
  Multi-language**: Support for 10+ languages
  SMS Follow-up**: Automated text after calls
  Analytics Dashboard**: Real-time performance metrics
  Sentiment Analysis**: Emotional intelligence scoring

  Community Roadmap
  Webhook support for real-time updates
  Custom voice training options
  A/B testing for scripts
  Predictive best time to call
  Integration with calendar systems

  📞 Support & Resources

  Support email : amitswba@gmail.com

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.manualTrigger","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleSheets","n8n-nodes-base.splitInBatches","n8n-nodes-base.splitInBatches","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.merge","n8n-nodes-base.if","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.slack","n8n-nodes-base.slack","n8n-nodes-base.slack","n8n-nodes-base.slack","n8n-nodes-base.wait","n8n-nodes-base.wait"]

workflow_json_compressed:
  H4sIAAAAAAAAE62ZSXPbxhKA/woLl1zYqll6Nt5iO4ueF3lL/PJcPszSI7FEETQJWbFd+u+vQCkiRAIgyPgqDbq/6X2a34tpKibFjb385s9ePPvZq9PZc/XfYlxcUeWLyfdiOl9Vfh7ptD4nNEPHiQnJhJaCtBfcZBWt5FL5pIyMklPE7GRgKhlnrPLGpOwiekOqGBcVXS1mvqKnS0qrd1RdL56WV4sZVZSKSbW8pttxMfdXVEyKp+UsjaKfzabz89GsLBf15/58VUw+fr/jfvLq9Pob434Wfv7tjX5jiodv5yXcULgoy8tiXMQl+YrSz1V9BSYUMA1MvedswswE3YkU5n/FuLhepP3Hbsf3ul9m89eH3/hNOLt5ab/w1xvdX/xi2qUVa3FcTJg+kUJ0at0+9qD1z+W355/Lz2I+W7y++rASG61DrotsgvyEWdl/3caxB8WX+UpevH3zn9Oz58K9WT7fKI7lLMG9mwZcW1g35NrrY7efxsW8TNRw+aqaxsuvMC8rAr6BeLf+8+hVWdEIRu8qv6zqaPm6WAeDncNaDAS/opM7EfXRYlwsytW0mpbzYvIRuNZszI1Rn8bFwi/9FVW0XNVZEMt5RfOatbi9E/snLVfrz/iDiZpoogvtBfk0ekvVckpf/OwIRnRsLNiPYJRdjDXe19GL8nwajwAUgo25/hGA2AX41M9mo9fLMtJqdTihZmzMf4gFVWcAxgtK1zNKo6cXFC+PDEVhOfv3kLrbzavrWbX6x5B36XuELQXKH2BL04X5qqymeRp9rfIIb1vJxlz9CG/bLsIP5fIyz8qb0a/kq+slHU65Dkk8FjLyrFBJDzk4AjQygY/SgGXRGGOkxtioR79Rta5Cq1FellejdxdEFe8kPi/L8xmtD622Y5QjG3O7S71Niif4wOqjZzmLCEFqAWiiBMsNQSYUUcfIgm1k1R/rLlHX8+p6dZ/40/n5MbjI2mt7Hyx56zRGBMsEAWay4Dw5yEpEZxKm7OMG9sMFzUdxNo2X9cDy03taVaOb+9D4qZP4ys+v/ez9cnp+TsttC0s9zMKbWLBcoyWrIQiOgJp78FwRBBcVizW3bMTCae425TRv0TgxDEaciAecxJInLxlIZgwgtx4C6QAkQ+bSU5LWbXB+f//+9egtfb6mVXf7vqiqxeZMA5Db9saz6+ENH6bALVEAx3kGlEaDDcwDC6TQh+hD2kqdde955it/OCCgZWNhdqvlDuEDnyRSjHsLhmkDaHKCwBwDKyTnpIV3lvWn9tGZLdxu9+lLFobOUsYI1mAC9EpB8MGBNEZnabhl3O7N7CNoa7cLPcCozcSWykWvEKxHDchQQ0DvgXEMTmeevaYN62uapz62nUwxHeW8L1MixhSSVTUDAibFwfkgATFQ4Cyk6BoD23pEGw5UB96Q4tcE0slw4iLX9bkOPcMhcFJADmUiIZSiRuq+KMvF6OwLLUenFV31dMDFbFqdzp/4Kl7QdtyJjvl7G1M2gk5ZKxiB5pHX5c5AiBgBrTfRaxGydnuDThwZdVwe1k6yiDZEg0DeZECTCIJEBkpp67VkiYfUXgy7q3RPsakB2YAU3rhcGeM1OQne1tUmiAg+eQEMGdeRUzZedbq8m7HX5zjQkBufC04CdU51YHLAUPcUres4jVpzTCSbNbHD5/KYuriu3wc6HQNF4pKDUjwBkjDgLUuQpSaNSC556rRpd2T22rSuP0KKA2waUWVmpICcKdZ9RoHjSoI3CtFxTehSJ2W3LfdTtjxxuik1ucgVOUgiWUDpMgQVBWhndZTCsdBsMae523w7FbIuPUNac7NCcuUNC8GArwcu1MyACyQhRe20kzaE5Dc4v6RpNfp1SrPU51ZqSeMh3U0260xCJVLwEHPwdXfjEFiMoDEJjzqT0z0Jksvl6OV0taK75duxHdke1pFNko4jU8CERUApGDjnJETjLPmoFfeP5lY8sBsfOLdqwzMJTJCiyoARGXjkBhSSiJH5hKzxYH1Jy3PqnvDv/7v1GBkU+ieNyd7qIHU9IGBdSJzzEFyWoLRjmDkPSZimhdRhk/2Qca9pIRMkBiUZYMYMmGz9SpISkg1MJMVTZo3g/2chMto8dDoS4P5gz4NoCClv+tIGEk4riLyeDGTkEBJJYMGmpKz1gTdmhHcz37ewuf/vTgdz6/i6X8Kul+XP/nj58i/48MuT38/OnsPpM2CsbpF7DLwpdlbIEC0zEFOsG4d04FQiiKTrx7IjlXALu6cFd3GrIdziEG7FSdpAEbROHjA4A4HJCAyRtBKcuBZb3D31sINb8CHc8hBuQSZl5SUI5TSgsRk8sxICDxxD1jpnu8Xd0/hauOs6JNk6dvdw40HcqKSQlgHHeqokTWCTyRCCM+hsNDY3WvcHP+1+Et7c/XN7itRDbK32MfNGLfMuRZaDBKHd+m1R1zKTIHjmvHAmJM8eM3eHdgv0+h1xN/vuodZDqD+NCx+r6RcqJtnPVjQuVlRV0/n5ekVHf1O8rjWfLRMt699/eL2r+3InYa3Ye+68ZhJ4Vh4QpQUfBYMojAy5DjWq90ixnM8p3u05J9/Xy5nJ9+LKT+tLffy+/imk7Tm6PjEupvNEfxcTVlv5/uijPrl97NN4I7N77tz56tPteD1ataG1zzh9igdPHx0c2Mqx9TzuA9iq9x1qVKua7jl4r8a+s7XKdZ626WzfkbXKuBtL/iV4LejOnAMEDbhUe0x3PHZbpfwT/wN4+kRte2Sf2kex3aZ770qrVewjfx4gdh/u411lm+BH76O9bO1+279RaRW8HTYN0U2/PG5WQyTxPlH7TLZTBNtuvD2wHFLcdncPQzhk15061tGtMncG8La79e+PO8Ns55P2aFNHiGqPukc/W7TK6srFNmlbr7dD5LXjHVYUO1PoX9a3HtlyiOx9Odz/c9fQ8Dr0BtvzwcEO5bXc29v/A7U9vgX6JAAA

metadata_json:
  {"categories":["automation","telephony","integration","ai"],"complexity":"complex","use_cases":["Outbound cold calling at scale","Lead qualification and scoring","Demo/meeting scheduling","Re‑engagement campaigns","Candidate screening and interview scheduling (recruitment)"],"estimated_setup_minutes":45,"required_services":["n8n (self-hosted or cloud)","Vapi.ai API (voice assistant + phone number/credits)","Google Sheets API (Google Account with Sheets enabled)","Slack API (optional, for notifications)"],"key_features":["AI‑driven voice calls via Vapi (GPT‑4o assistant)","Automated call initiation and batch processing","Recording, transcription and summary extraction","Retry logic with progressive delays and max attempts","Scheduled result collection and status updates to Google Sheets」「Slack notifications for batch completion"],"target_audience":["Sales & business development teams","Recruiters and HR teams","Customer success teams / account managers','Market researchers and product teams"]}


name: RAG Starter Template using Simple Vector Stores, Form trigger and OpenAI
author_name: n8n Team
author_username: n8n-team
categories: []
created_at: 2025-06-17T19:16:08.694Z
updated_at: 2025-06-17T19:16:08.694Z
url: https://n8n.io/workflows/5010
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  This template quickly shows how to use RAG in n8n.

  Who is this for?
  This template is for everyone who wants to start giving knowledge to their Agents through RAG.

  Requirements
  Have a PDF with custom knowledge that you want to provide to your agent.

  Setup
  No setup required. Just hit Execute Workflow, upload your knowledge document and then start chatting.

  How to customize this to your needs
  Add custom instructions to your Agent by changing the prompts in it.
  Add a different way to load in knowledge to your vector store, e.g. by looking at some Google Drive files or loading knowledge from a table.
  Exchange the Simple Vector Store nodes with your own vector store tools ready for production.
  Add a more sophisticated way to rank files found in the vector store.

  For more information read our docs on RAG in n8n.

nodes_used:
  ["n8n-nodes-base.formTrigger","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreInMemory","@n8n/n8n-nodes-langchain.vectorStoreInMemory","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","AI/ML","knowledge management","data processing"],"complexity":"simple","use_cases":["Create a chatbot/agent with custom document knowledge","Document Q&A and support bots","Prototype Retrieval-Augmented Generation (RAG) workflows","Rapidly test prompts and agent instructions with custom docs","Ingest PDFs for searchable knowledge in a chat interface"],"estimated_setup_minutes":20,"required_services":["OpenAI (Embeddings & Chat API)","n8n in-memory vector store (built-in)","User-provided PDF document upload (via form)"],"key_features":["Form-based PDF upload trigger","Embeddings generation using OpenAI","Simple in-memory vector store for retrieval","Retrieval-Augmented Generation (RAG) chat agent","Editable prompts/instructions for the agent to customize behavior and responses to documents"],"target_audience":["Developers prototyping RAG","AI/ML enthusiasts experimenting with knowledge agents","Product managers/PMs testing conversational knowledge UXs with sample docs','n8n users looking to add document-driven agents"]}


name: Save Costs In RAG Workflows using the Q&A Tool With Multiple Models
author_name: Niklas Hatje
author_username: nik8n
categories: []
created_at: 2025-06-17T19:30:43.009Z
updated_at: 2025-06-17T19:30:43.009Z
url: https://n8n.io/workflows/5011
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  This template shows how to use the Question and Answer tool to save costs in RAG use cases.

  Who is this for?
  This template is for everyone who wants to start giving knowledge to their Agents through RAG.

  Requirements
  Have a PDF with custom knowledge that you want to provide to your agent.

  Setup
  No setup required. Just hit Execute Workflow, upload your knowledge document and then start chatting.

  How to customize this to your needs
  Add custom instructions to your Agent by changing the prompts in it.
  Add a different way to load in knowledge to your vector store, e.g. by looking at some Google Drive files or loading knowledge from a table.
  Describe your data properly in the Q&A tool
  Exchange the Simple Vector Store nodes with your own vector store tools ready for production.
  Add a more sophisticated way to rank files found in the vector store.

  For more information read our docs on RAG in n8n.

nodes_used:
  ["n8n-nodes-base.formTrigger","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreInMemory","@n8n/n8n-nodes-langchain.vectorStoreInMemory","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi"]

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

metadata_json:
  {"categories":["automation","integration","knowledge management","ai/ml"],"complexity":"medium","use_cases":["Cost-optimized RAG (retrieval-augmented generation) workflows","Turning PDFs into agent knowledge for Q&A","Prototyping multimodel pipelines (cheaper model for retrieval, stronger model for final responses)","Testing different vector store strategies and ranking approaches"],"estimated_setup_minutes":5,"required_services":["OpenAI API (embeddings + chat/completions)","n8n platform (workflow runtime)","Optional: vector database or storage (Pinecone, Weaviate, Supabase, or Google Drive for document sourcing)"],"key_features":["Q&A tool integrated with RAG workflow","Use of multiple models to reduce inference costs","PDF ingestion and document loader into a vector store","In-memory vector store example with easy swap to production stores","Agent/chat node for conversational queries over custom knowledge base"],"target_audience":["Developers building RAG agents","AI/ML engineers prototyping retrieval pipelines","Product managers validating knowledge-enabled agents quickly (no infra)"]}


name: Natural Language Database Queries with Dual-Agent AI & PostgreSQL Integration
author_name: Paul
author_username: diagopl
categories: []
created_at: 2025-06-17T21:17:10.100Z
updated_at: 2025-06-17T21:17:10.100Z
url: https://n8n.io/workflows/5012
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  AI Database Assistant with Smart Query's & PostgreSQL Integration

  Description:

  🚀 Transform Your Database into an Intelligent AI Assistant

  This workflow creates a smart database assistant that safely handles natural language queries without crashing your system. Features dual-agent architecture with built-in query limits and PostgreSQL optimization – perfect for commercial applications!

  ✅ Ideal for:
  SaaS developers building database search features 🔍
  Database administrators providing safe AI access 🛡️
  Business teams needing user-friendly data queries 📊
  Anyone wanting ChatGPT-like database interaction 🤖

  🔧 How It Works
  1️⃣ User asks a question – "Show me top 10 popular products"
  2️⃣ Main AI Agent – Interprets the request and ensures safety limits
  3️⃣ SQL Sub-Agent – Generates precise PostgreSQL queries
  4️⃣ Database executes – Returns formatted, limited results safely

  ⚡ Setup Instructions

  1️⃣ Prepare Your Database
  Ensure PostgreSQL is accessible from n8n
  Note your table structure and column names
  Set up database connection credentials

  2️⃣ Customize the Templates
  Replace [YOUR_TABLE_NAME] with your actual table name
  Update [YOUR_FIELDS] with your column names
  Modify examples to match your use case
  Important**: Keep all LIMIT clauses intact!

  3️⃣ Configure the Agents
  Copy Main Agent system message to your primary AI node
  Copy Sub-Agent system message to your SQL generator node
  Connect the sub-workflow between both agents

  4️⃣ Test & Deploy
  Test with sample queries like "Show me 5 recent items"
  Verify query limits work (max 50 results)
  Deploy and monitor performance

  🎯 Why Use This Workflow?
  ✔️ System Protection – Built-in limits prevent crashes from large queries
  ✔️ Natural Language – Users ask questions in plain English
  ✔️ Commercial Ready – Generic templates work with any database
  ✔️ Dual-Agent Safety – Smart interpretation + precise SQL generation
  ✔️ PostgreSQL Optimized – Handles complex schemas and data types

  🚨 Critical Features
  Query Limits**: Default 10, maximum 50 results (can be modified)
  Error Prevention**: No unlimited data retrieval
  Smart Routing**: Natural language → Safe SQL → Formatted results
  Customizable**: Works with any PostgreSQL database schema

  🔗 Start building your AI database assistant today – safe, smart, and scalable!

nodes_used:
  ["n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolThink","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.memoryPostgresChat","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.toolThink","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.telegramTrigger","n8n-nodes-base.switch","n8n-nodes-base.set","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.postgres","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, 6920 characters]

metadata_json:
  {"categories":["automation","integration","data processing","conversational AI","database"],"complexity":"complex","use_cases":["Natural language querying of PostgreSQL databases","Building ChatGPT-like database assistants for SaaS products","Safe, constrained SQL generation for non-technical users","Internal business reporting and data exploration","Providing controlled AI access for DBAs and support teams"],"estimated_setup_minutes":30,"required_services":["n8n (automation platform)","PostgreSQL (accessible from n8n)","LLM provider (e.g., OpenAI, OpenRouter or compatible API)","Optional: Telegram (if using telegram nodes) / other messaging integrations"],"key_features":["Dual-agent architecture (main AI + SQL sub-agent)","Natural language → safe PostgreSQL query generation","Built-in query limits (default 10, max 50) to prevent large/expensive queries","PostgreSQL-optimized SQL generation and formatting","Error prevention and safety checks before execution of queries"],"target_audience":["SaaS developers","Database administrators","Product teams/business analysts needing user-friendly data access"]}


name: Track n8n Workflow Changes Over Time with Compare Dataset & Google Sheets
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-06-17T22:43:15.197Z
updated_at: 2025-06-17T22:43:15.197Z
url: https://n8n.io/workflows/5013
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:32
description:
  This n8n template runs daily to track and report on any changes made to workflows  on any n8n instance.

  Useful if a team is working within a single instance and you want to be notified of what workflows have changed since you last visited them. Another use-case might be monitoring your managed instances for clients and being alerted when changes are made without your knowledge.

  See a sample Gsheet here: https://docs.google.com/spreadsheets/d/1dOHSfeE0W_qPyEWj5Zz0JBJm8Vrf_cWp-02OBrA_ZYc/edit?usp=sharing

  How it works
  A scheduled trigger is set to run once a day to review all available workflows.
  An n8n node imports the workflows as json.
  The workflows are brought into a loop where each is first checked to see if it exists in the designated google sheet.
  If not, a new entry is created and skipped.
  If the workflow has been captured before, then the comparison subworkflow can be executed using the previous and current versions of the workflow json data.
  The subworkflow uses the compare dataset tool to calculate the changes to nodes and connections for the given workflow.
  The results are then recorded back to the google sheet for review.

  How to use
  Start with the n8n node and try to filter by the workflows you're interested in tracking.
  Set the scheduled trigger interval to match the frequency to suit how often your workflows are being edited.

  Customising the workflow
  Want to get fancy? Add in an AI agent to help determine changes between the previous and current versions of the workflow. Add contextual explanations to reveal the impact of the changes.

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.compareDatasets","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.set","n8n-nodes-base.compareDatasets","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.if","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.switch","n8n-nodes-base.splitOut","n8n-nodes-base.splitOut","n8n-nodes-base.splitOut","n8n-nodes-base.splitOut","n8n-nodes-base.executeWorkflow","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.n8n","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, 9200 characters]

metadata_json:
  {"categories":["automation","integration","monitoring","audit"],"complexity":"complex","use_cases":["Track changes to n8n workflows over time","Audit and compliance of workflow modifications","Monitor managed client instances for unauthorized edits","Team collaboration visibility into workflow edits","Generate change logs for reviews or incident investigations"],"estimated_setup_minutes":45,"required_services":["n8n instance (source)","Google Sheets (Google account / Sheets API access)"],"key_features":["Scheduled daily scan of all workflows","Import workflows as JSON and loop through each workflow","Compare previous and current workflow versions using compareDatasets","Record change details (nodes and connections) into Google Sheets","Create new sheet entries for previously unseen workflows and skip comparison when new','Subworkflow architecture to encapsulate comparison logic and reuse (executeWorkflow)"],"target_audience":["n8n admins and platform engineers","DevOps / SRE teams","Consultants managing client n8n instances or integrations teams"]}


name: End of Turn Detection for smoother AI agent chats with Telegram and Gemini
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-06-17T22:47:24.712Z
updated_at: 2025-06-17T22:47:24.712Z
url: https://n8n.io/workflows/5014
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:32
description:
  This n8n template demonstrates one approach to achieve a more natural and less frustration conversations with AI agents by reducing interrupts by predicting the end of user utterances.

  When we text or chat casually, it's not uncommon to break our sentences over multiple messages or when it comes to voice, break our speech with the odd pause or umms and ahhs. If an agent replies to every message, it's likely to interrupt us before we finish our thoughts and it can get very annoying!

  Previously, I demonstrated a simple technique for buffering each incoming message by 5 seconds but that approach still suffers in some scenarios when more time is needed. This technique has no arbitrary time limit and instead uses AI to figure out when its the agent's turn based on the user's message, allowing for the user to take all the time they need.

  How it works
  Telegram messages are received but no reply is generated for them by default. Instead they are sent to the prediction subworkflow to determine if a reply should be generated.
  The prediction subworkflow begins by checking Redis for the current user's prediction session state. If this is a new "utterance", it kicks off the "predict end of utterance" loop - the purpose of which is to buffer messages in a smart way!
  New users message can continue to be accepted by the workflow until enough is collected to allow our prediction classifier to determine the end of the utterance has been reached.
  The loop is then broken and the buffered chat messages are combined and sent to the AI agent to generate a response and sent to the user via the telegram node.
  The prediction session state is then deleted to signal the workflow is ready to start again with a new message.

  How to use
  This system sits between your preferred chat platform and the AI agent so all you need to do is replace the telegram nodes as required.
  Where LLM-only prediction isn't working well enough, consider more traditional code-based checking of heuristics to improve the detection.
  Ideally you'll want a fast but accurate LLM so your user isn't waiting longer than they have to - at time of writing Gemini-2.5-flash-lite was the fastest in testing but keep a look out for smaller and more powerful LLMs in the future.

  Requirements
  Gemini for LLM
  Redis for session management
  Telegram for chat platform

nodes_used:
  ["n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.memoryRedisChat","n8n-nodes-base.set","n8n-nodes-base.redis","n8n-nodes-base.redis","n8n-nodes-base.if","n8n-nodes-base.redis","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.redis","n8n-nodes-base.noOp","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.redis","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.textClassifier","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.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.set"]

workflow_json_compressed:
  [encoded data, 9304 characters]

metadata_json:
  {"categories":["automation","integration","conversational AI","real-time messaging"],"complexity":"complex","use_cases":["Preventing AI agents from interrupting users by detecting end of utterance","Improving chat and voice conversation UX by buffering multi-part messages","Integrating an LLM-based turn-taking classifier into messaging workflows","Session-based message aggregation for downstream agent responses","Adapting the pattern to other chat platforms beyond Telegram"],"estimated_setup_minutes":45,"required_services":["Gemini (Google LLM / Gemini API)","Redis (for session management)","Telegram Bot (or another chat platform to replace Telegram nodes)","n8n instance"],"key_features":["LLM-based end-of-utterance prediction instead of fixed timeout buffering","Redis-backed per-user prediction session state","Predictor subworkflow with a loop to accumulate messages until turn is detected","Combines buffered messages and sends single aggregated prompt to the agent","Modular nodes so Telegram can be swapped for other platforms"],"target_audience":["Developers building chatbots and conversational agents","Conversational AI engineers and bot builders","Product teams focused on improving chat UX/voice UX with LLMs"]}


name: Find and email ANYONE on LinkedIn with OpenAI, Hunter & Gmail
author_name: Abhijay Vuyyuru
author_username: abhijayvuyyuru
categories: []
created_at: 2025-06-18T03:13:10.626Z
updated_at: 2025-06-18T03:13:10.626Z
url: https://n8n.io/workflows/5015
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Setup Time

  5-10 minutes

  Problem

  🚨 LinkedIn search is BROKEN. Personalized cold-emailing takes hours!


  I waste hours on LinkedIn manually filtering profiles, reading summaries, hoping they’d reply—tedious, frustrating, inefficient.

  But even after finding the email IDs of the contacts, the job to be done is incomplete. 𝗜 𝘄𝗮𝗻𝘁 𝘁𝗼 𝘀𝘁𝗮𝗿𝘁 𝗮 𝗰𝗼𝗻𝘃𝗲𝗿𝘀𝗮𝘁𝗶𝗼𝗻 𝘄𝗶𝘁𝗵 𝘁𝗵𝗲𝘀𝗲 𝗰𝗼𝗻𝘁𝗮𝗰𝘁𝘀.

  If only I could type "𝘗𝘳𝘰𝘥𝘶𝘤𝘵 𝘮𝘢𝘯𝘢𝘨𝘦𝘳𝘴 𝘸𝘰𝘳𝘬𝘪𝘯𝘨 𝘰𝘯 𝘨𝘦𝘯𝘦𝘳𝘢𝘵𝘪𝘷𝘦 𝘈𝘐 𝘪𝘯 𝘠𝘰𝘶𝘛𝘶𝘣𝘦 𝘪𝘯 𝘕𝘦𝘸 𝘠𝘰𝘳𝘬" and seconds later have 10 personalized outreach emails in my Gmail drafts folder, ready for my review. 

  It would save me hours of research effort!

  Introducing LinkGPT, a LinkedIn Agent, an automated agentic workflow powered by n8n.

  Prerequisites: 
  Required accounts/API keys for Hunter.io, Google, and OpenAI.

  This would be helpful for:

  🎯 Job Seekers wanting direct outreach to hiring managers (everyone applies to multiple jobs, and crafting personal emails takes hours!)

  🎯 Recruiters looking to personalize candidate outreach at scale

  🎯 Sales & Founders aiming for targeted customer conversations 

  Step-by-step workflow:

  Takes 5-10 minutes to setup.

  Generate a Boolean search string for LinkedIn profiles.
  Perform authenticated Google searches using your query.
  Extract LinkedIn URLs and workplace context from the search results.
  Use OpenAI to extract first name, last name, and domain name from the context.
  Use Hunter.io to find emails of the contacts.
  Append all results to your connected Google Sheet. Columns: first_name, last_name, domain_name, email, context
  Read everything publicly available about your target profiles
  Identify common ground (shared backgrounds, interests, experiences)
  Craft highly personalized, thoughtful email drafts
  Automatically save tailored drafts in your Gmail and Google Sheets



  I put together a clear, step-by-step guide on setting this up yourself.

  Sample Query

  Sample:

  Input: "I am headed to NYC later this month, whom should I meet with that works in product management for gen AI products?"

  Output: List of 10 contacts with first name, last name, workplace, email address and context about them, and 10 personalized emails waiting for you review in your Gmail drafts folder 

nodes_used:
  ["n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.gmail","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.hunter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","lead-generation","outreach","recruitment"],"complexity":"complex","use_cases":["Personalized cold outreach at scale","Finding contact emails from LinkedIn profiles","Recruiter candidate outreach","Sales prospecting and founder/customer outreach","Job seeker outreach to hiring managers"],"estimated_setup_minutes":10,"required_services":["OpenAI (API)","Hunter.io (API)","Google account (Gmail & Google Sheets, authenticated Google search)","LinkedIn (public profiles/search via Google)"],"key_features":["Generate Boolean LinkedIn search strings","Perform authenticated Google searches and extract LinkedIn URLs","Parse profile context to extract first/last name and domain","Find emails via Hunter.io","Append contact data to Google Sheets (first_name, last_name, domain_name, email, context)"],"target_audience":["Sales reps / founders","Recruiters / sourcers","Job seekers / candidates targeting hiring managers\",\"Growth marketers / SDRs"]}


name: Place Products on AI Generated Backgrounds with Google Imagen, Ideogram & Placid
author_name: Daniel Setzermann
author_username: danielsetzermann
categories: []
created_at: 2025-06-18T09:08:38.463Z
updated_at: 2025-06-18T09:08:38.463Z
url: https://n8n.io/workflows/5017
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:33
description:
  This workflow transforms product images into professional marketing visuals by combining AI background generation, intelligent copywriting, and automated design templating. Upload a product photo, describe your desired scene, and get publication-ready assets for Meta ads, email campaigns, social media, and more.

  The system uses fal.ai's advanced AI models (Google Imagen 4, Ideogram v3, Time-of-Day relighting) to create stunning product scenes while Placid handles professional text overlay and final composition.



  Watch a quick video walkthrough of the workflow

  Benefits of this Workflow

  🎯 Product-Focused**: Preserves product details while completely transforming backgrounds
  🤖 Multi-AI Pipeline**: Combines 4 different AI models for optimal results:
   Google Imagen 4 for style reference generation
   Ideogram v3 for precise background replacement
   Time-of-Day AI for realistic lighting adjustment
   GPT-4 for intelligent copywriting
  📱 Multi-Platform Ready**: Creates assets for Meta ads, email headers, social posts, newsletters
  ✍️ Smart Copywriting**: Analyzes your website to generate compelling headlines and bullet points
  🎨 Template Control**: Uses Placid for professional text placement and branding
  ⚡ Form-Based Interface**: Simple web form input - no technical knowledge required
  ☁️ Cloud Storage**: Automatically saves final assets to Google Drive

  How It Works

  Input Collection: Web form captures product image, scene description, website URL, and lighting preference
  AI Content Generation: 
    Background prompt agent creates detailed scene descriptions
    Copywriting agent analyzes your website and generates marketing copy
  Multi-Stage Image Processing:
    Creates style reference image with Google Imagen 4
    Replaces background while preserving product with Ideogram v3
    Enhances lighting realism with Time-of-Day AI
  Professional Composition: Placid overlays marketing copy using customizable templates
  Delivery: Final marketing asset saved to Google Drive, ready for immediate use

  Setup Requirements

  API Credentials:
    fal.ai account (for AI image generation models)
    OpenAI API (for copywriting intelligence)
    Placid account (for template-based composition)
    Google Drive (for asset storage)

  Placid Template:
    Create custom template matching your brand
    Configure layer names: subtitle, bullet1, bullet2, bullet3, image

  Form Customization:
    Adjust form fields for your specific use cases
    Modify AI prompts for your industry/brand voice

  Perfect for: E-commerce brands, marketing agencies, content creators, small businesses wanting professional product visuals without expensive photography.

  Follow on LinkedIn or on my website if you want to keep updated on new workflows.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.formTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","image-generation","marketing","design","e-commerce"],"complexity":"complex","use_cases":["Generate publication-ready product visuals for ads, social, and email","Replace and stylize product backgrounds while preserving product details","Automatically generate marketing headlines and bullet copy from a website","Create templated compositions (text overlays) for multi-platform assets","Automate storage/delivery of final assets to Google Drive"],"estimated_setup_minutes":45,"required_services":["fal.ai (Google Imagen 4, Ideogram v3, Time-of-Day relighting)","OpenAI (GPT-4)","Placid (template-based composition)","Google Drive (asset storage)","n8n / Webhook or form endpoint"],"key_features":["Multi-AI pipeline combining style reference, background replacement, and relighting","Smart copywriting agent that analyzes your website","Placid-driven template control for professional text placement","Form-based input for non-technical users","Automated saving of final assets to cloud storage (Google Drive)"],"target_audience":["E-commerce brands","Marketing agencies","Content creators and social managers"]}


name: Zillow Property Scraper by Location via Bright Data & Google Sheets
author_name: Incrementors
author_username: incrementors
categories: []
created_at: 2025-06-18T11:31:57.431Z
updated_at: 2025-06-18T11:31:57.431Z
url: https://n8n.io/workflows/5019
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:33
description:
  🛒 Google Maps Business Phone Number Scraper Using Bright Data API & Google Sheets Integration

  This template requires a self-hosted n8n instance to run.

  An automated workflow that extracts business information including phone numbers from Google Maps using Bright Data's API and saves the data to Google Sheets for easy access and analysis.

  📋 Overview

  This workflow provides an automated solution for extracting business contact information from Google Maps based on location and keyword searches. Perfect for lead generation, market research, competitor analysis, and business directory creation.

  ✨ Key Features

  🎯 Form-Based Input: Easy-to-use form for location and keyword submission
  🗺️ Google Maps Integration: Uses Bright Data's Google Maps dataset for accurate business data
  📊 Comprehensive Data Extraction: Extracts business names, addresses, phone numbers, ratings, and more
  📧 Automated Processing: Handles the entire scraping process automatically
  📈 Google Sheets Storage: Automatically saves extracted data to organized spreadsheets
  🔄 Smart Status Checking: Monitors scraping progress with automatic retry logic
  ⚡ Fast & Reliable: Professional scraping with built-in error handling
  🎯 Customizable Output: Configurable data fields for specific business needs

  🎯 What This Workflow Does

  Input
  Location:** Geographic area to search (city, state, country)
  Keywords:** Business type or industry keywords

  Processing
  Form Submission: User submits location and keywords through web form
  API Request: Sends scraping request to Bright Data's Google Maps dataset
  Status Monitoring: Continuously checks scraping progress
  Data Retrieval: Fetches completed business data when ready
  Data Storage: Saves extracted information to Google Sheets
  Error Handling: Implements retry logic for failed requests

  Output Data Points

  | Field | Description | Example |
  |-------|-------------|---------|
  | Business Name | Official business name from Google Maps | "Joe's Pizza Restaurant" |
  | Phone Number | Contact phone number | "+1-555-123-4567" |
  | Address | Complete business address | "123 Main St, New York, NY 10001" |
  | Rating | Google Maps rating score | 4.5 |
  | URL | Google Maps listing URL | "https://maps.google.com/..." |

  🚀 Setup Instructions

  Prerequisites
  n8n instance (self-hosted or cloud)
  Google account with Sheets access
  Bright Data account with Google Maps dataset access
  5-10 minutes for setup

  Step 1: Import the Workflow
  Copy the JSON workflow code from the provided file
  In n8n: Workflows → + Add workflow → Import from JSON
  Paste JSON and click Import

  Step 2: Configure Bright Data
  Set up Bright Data credentials:
     In n8n: Credentials → + Add credential → HTTP Request Auth
     Enter your Bright Data API key
     Test the connection
  Configure dataset:
     Ensure you have access to Google Maps dataset (gd_m8ebnr0q2qlklc02fz)
     Verify dataset permissions in Bright Data dashboard

  Step 3: Configure Google Sheets Integration
  Create a Google Sheet:
     Go to Google Sheets
     Create a new spreadsheet named "Business Data" or similar
     Copy the Sheet ID from URL: https://docs.google.com/spreadsheets/d/SHEET_ID_HERE/edit
  Set up Google Sheets credentials:
     In n8n: Credentials → + Add credential → Google Sheets OAuth2 API
     Complete OAuth setup and test connection
  Prepare your data sheet with columns:
     Column A: Name
     Column B: Address
     Column C: Rating
     Column D: Phone Number
     Column E: URL

  Step 4: Update Workflow Settings
  Update Google Sheets node:
     Open "Save to Google Sheets" node
     Replace the document ID with your Sheet ID
     Select your Google Sheets credential
     Choose the correct sheet/tab name
  Update Bright Data nodes:
     Open HTTP Request nodes
     Replace BRIGHT_DATA_API_KEY with your actual API key
     Verify dataset ID matches your subscription

  Step 5: Test & Activate
  Test the workflow:
     Activate workflow (toggle switch)
     Submit test form with location: "New York" and keywords: "restaurants"
     Verify data appears in Google Sheet
     Check for proper phone number extraction

  📖 Usage Guide

  Submitting Search Requests
  Access the form URL provided by n8n
  Enter the desired location (city, state, or country)
  Enter relevant keywords (business type, industry, etc.)
  Submit the form and wait for processing

  Understanding the Results
  Your Google Sheet will populate with business data including:
  Complete business contact information
  Verified phone numbers from Google Maps
  Accurate addresses and ratings
  Direct links to Google Maps listings

  🔧 Customization Options

  Adding More Data Points
  Edit the "Bright Data API - Request Business Data" node to capture additional fields:
  Business descriptions
  Operating hours
  Reviews count
  Website URLs
  Photos and videos

  Modifying Search Parameters
  Customize the search behavior:
  Adjust "limit_per_input" for more or fewer results
  Modify search type and discovery method
  Add geographical coordinates for precise targeting

  🚨 Troubleshooting

  Common Issues & Solutions

  1. "Bright Data connection failed"
  Cause:** Invalid API credentials or dataset access
  Solution:** Verify credentials in Bright Data dashboard, check dataset permissions

  2. "No business data extracted"
  Cause:** Invalid search parameters or no results found
  Solution:** Try broader keywords or different locations, verify dataset availability

  3. "Google Sheets permission denied"
  Cause:** Incorrect credentials or sheet permissions
  Solution:** Re-authenticate Google Sheets, check sheet sharing settings

  4. "Workflow execution timeout"
  Cause:** Large search results or slow API response
  Solution:** Reduce search scope, increase timeout settings, check internet connection

  📊 Use Cases & Examples

  1. Lead Generation
  Goal:** Find potential customers in specific areas
  Search for businesses by industry and location
  Extract contact information for outreach campaigns
  Build targeted prospect lists

  2. Market Research
  Goal:** Analyze local business landscape
  Study competitor density in target markets
  Identify market gaps and opportunities
  Gather business intelligence for strategic planning

  3. Directory Creation
  Goal:** Build comprehensive business directories
  Create industry-specific business listings
  Maintain updated contact databases
  Support local business communities

  📈 Performance & Limits

  Expected Performance
  Processing time:** 1-5 minutes per search depending on results
  Data accuracy:** 95%+ for active Google Maps listings
  Success rate:** 90%+ for accessible businesses
  Concurrent requests:** Depends on Bright Data plan limits

  Resource Usage
  Memory:** ~50MB per execution
  Storage:** Minimal (data stored in Google Sheets)
  API calls:** 2-3 Bright Data calls + 1 Google Sheets call per search
  Bandwidth:** ~1-2MB per search request
  Execution time:** 2-5 minutes for typical searches

  Scaling Considerations
  Rate limiting:** Respect Bright Data API limits
  Error handling:** Implement retry logic for failed requests
  Data validation:** Add checks for incomplete business data
  Cost optimization:** Monitor API usage to control expenses
  Batch processing:** Group multiple searches for efficiency

  🤝 Support & Community

  Getting Help
  n8n Community Forum:** community.n8n.io
  Documentation:** docs.n8n.io
  Bright Data Support:** Contact through your dashboard
  GitHub Issues:** Report bugs and feature requests

  Contributing
  Share improvements with the community
  Report issues and suggest enhancements
  Create variations for specific use cases
  Document best practices and lessons learned

  🎯 Ready to Use!

  This workflow provides a solid foundation for automated Google Maps business data extraction. Customize it to fit your specific needs and use cases.

  Your workflow URL: https://your-n8n-instance.com/workflow/google-maps-scraper

  For any questions or support, please contact:  
  info@incrementors.com  
  or fill out this form: https://www.incrementors.com/contact-us/

nodes_used:
  ["n8n-nodes-base.formTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["integration","data processing","automation","web scraping"],"complexity":"medium","use_cases":["Lead generation / prospecting","Market research and competitor analysis","Business directory creation","Contact data enrichment","Local SEO research"],"estimated_setup_minutes":10,"required_services":["Bright Data (Google Maps dataset access)","Google Sheets (Google account with Sheets API / OAuth2)","n8n (self-hosted or cloud instance)"],"key_features":["Form-based input for location and keywords","Uses Bright Data Google Maps dataset to scrape business data","Extracts business name, address, phone number, rating, and URL","Automated status monitoring with retry logic","Saves results directly to Google Sheets (configurable columns)"],"target_audience":["Marketers","Sales and business development teams","Data analysts and researchers producing business lists or directories\",\"Developers/automation engineers building scraping workflows"]}


name: Automated GitHub Scanner for Exposed AWS IAM Keys
author_name: Niranjan G
author_username: niranjan
categories: []
created_at: 2025-06-18T13:22:16.072Z
updated_at: 2025-06-18T13:22:16.072Z
url: https://n8n.io/workflows/5021
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:33
description:
  Automated GitHub Scanner for Exposed AWS IAM Keys

  Overview

  This n8n workflow automatically scans GitHub for exposed AWS IAM access keys associated with your AWS account, helping security teams quickly identify and respond to potential security breaches. When compromised keys are found, the workflow generates detailed security reports and sends Slack notifications with actionable remediation steps.

  🔑 Key Features

  Automated AWS IAM Key Scanning**: Regularly checks for exposed AWS access keys on GitHub
  Real-time Security Alerts**: Sends immediate Slack notifications when compromised keys are detected
  Comprehensive Security Reports**: Generates detailed reports with exposure information and risk assessment
  Actionable Remediation Steps**: Provides clear instructions for securing compromised credentials
  Continuous Monitoring**: Maintains ongoing surveillance of your AWS environment

  📋 Workflow Steps

  List AWS Users: Retrieves all users from your AWS account
  Split Users for Processing: Processes each user individually
  Get User Access Keys: Retrieves access keys for each user
  Filter Active Keys Only: Focuses only on currently active access keys
  Search GitHub for Exposed Keys: Scans GitHub repositories for exposed access keys
  Aggregate Search Results: Consolidates and deduplicates search findings
  Check For Compromised Keys: Determines if any keys have been exposed
  Generate Security Report: Creates detailed security reports for compromised keys
  Extract AWS Usernames: Extracts usernames from AWS response for notification
  Format Slack Alert: Prepares comprehensive Slack notifications
  Send Slack Notification: Delivers alerts with actionable information
  Continue Scanning: Maintains continuous monitoring cycle

  🛠️ Setup Requirements

  Prerequisites

  Active n8n instance
  AWS account with IAM permissions
  GitHub account/token for searching repositories
  Slack workspace for notifications

  Required Credentials

  AWS Credentials:
     IAM user with permissions to list users and access keys
     Access Key ID and Secret Access Key

  GitHub Credentials:
     Personal Access Token with search permissions

  Slack Credentials:
     Webhook URL for your notification channel

  ⚙️ Configuration

  AWS Configuration:
     Configure the "List AWS Users" node with your AWS credentials
     Ensure proper IAM permissions for listing users and access keys

  GitHub Configuration:
     Set up the "Search GitHub for Exposed Keys" node with your GitHub token
     Adjust search parameters if needed

  Slack Configuration:
     Configure the Slack node with your webhook URL
     Customize notification format if desired

  🚀 Usage

  Running the Workflow

  Manual Execution: Click "Execute Workflow" to run an immediate scan
  Scheduled Execution: Set up a schedule to run periodic scans (recommended daily or weekly)

  Repository Compatibility

  This workflow is compatible with both public and private GitHub repositories to which you have access. It will scan all repositories you have permission to view based on your GitHub credentials.

  Handling Alerts

  When a compromised key is detected:

  Review the Slack notification for details about the exposure
  Follow the recommended remediation steps:
     Deactivate the compromised key immediately
     Create a new key if needed
     Investigate the exposure source
     Update any services using the compromised key

  ⚠️ Disclaimer

  This workflow template is provided for reference purposes only to demonstrate how to automate AWS IAM key exposure scanning. Please note:

  The scanning process may produce false positives as it only matches potential AWS access key patterns
  Always verify any reported exposures manually before taking action
  Disabling or deleting access keys without proper verification could have significant negative impacts on your environment
  Understand which systems and applications rely on identified access keys before deactivating them
  This template should be customized to fit your specific environment and security policies

  IMPORTANT: Use this workflow with caution and only after thoroughly understanding your AWS environment. The authors of this template are not responsible for any disruptions or damages resulting from its use.

  🔒 Security Considerations

  This workflow requires access to sensitive AWS credentials
  Store all credentials securely within n8n
  Review and rotate access keys regularly

  📝 Customization Options

  Adjust GitHub search parameters for more targeted scanning
  Customize Slack notification format and content
  Modify security report generation for your specific needs
  Integrate with additional notification channels (email, MS Teams, etc.)

  Optional: Enabling Interactive Slack Buttons

  The Slack Block Kit notification format supports interactive buttons that can be implemented if you want to perform actions directly from Slack:

  Disable Key: This button can be configured to automatically disable the compromised AWS IAM access key
  View Details: This button can be set up to show additional information about the exposure
  Acknowledge: This button can be used to mark the alert as acknowledged

  To make these buttons functional:

  Set up a Slack Socket Mode App:
     Create a Slack app in the Slack API Console
     Enable Socket Mode and Interactive Components
     Subscribe to the block_actions event to capture button clicks

  Create an n8n Webhook Endpoint:
     Add a new webhook node to receive Slack button click events
     Create separate workflows for each button action

  Implement AWS Key Disabling:
     For the "Disable Key" button, create a workflow that uses the n8n HTTP Request node to call the AWS IAM UpdateAccessKey API
     Example HTTP request that can be implemented in n8n:
            Method: POST
       URL: https://iam.amazonaws.com/
       Query Parameters:
         Action: UpdateAccessKey
         AccessKeyId: AKIAIOSFODNN7EXAMPLE
         Status: Inactive
         UserName: {{$json.username}}
         Version: 2010-05-08
       
  Update the Slack Message Format:
     Modify the Format Slack Alert node to include your webhook URL in the button action values
     Add callback_id and action_id values to identify which button was clicked

  This implementation allows for immediate response to security incidents directly from the Slack interface, reducing response time and improving security posture.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.noOp","n8n-nodes-base.slack","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 9504 characters]

metadata_json:
  {"categories":["security","integration","monitoring","automation"],"complexity":"medium","use_cases":["Detect exposed AWS IAM access keys on GitHub","Continuous monitoring for leaked credentials","Immediate alerting and incident response","Generating security exposure reports for auditing","Reducing blast radius by enabling rapid remediation"],"estimated_setup_minutes":30,"required_services":["n8n instance","AWS (IAM) with list-users and access-keys permissions","GitHub (Personal Access Token with search permissions)","Slack (Incoming Webhook or App with interactive components)"],"key_features":["Automated scanning of GitHub for AWS access keys","Filters only active IAM keys","Aggregates and deduplicates findings","Generates detailed security reports with risk assessment","Sends actionable Slack notifications with remediation steps (optional interactive buttons)
  "],"target_audience":["Security teams / SOC","Cloud engineers / DevOps","Site Reliability Engineers (SREs) / Incident responders\",\"Compliance and audit teams"]}


name: LinkedIn Talent Pipeline: AI-Powered Candidate Search & Ranking with GPT-4o
author_name: Badr
author_username: b4dr
categories: []
created_at: 2025-06-18T14:21:55.773Z
updated_at: 2025-06-18T14:21:55.773Z
url: https://n8n.io/workflows/5022
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:33
description:
  The Ultimate AI Recruiting Solution for Finding Perfect Candidates with GPT-4o

  Are you tired of manually sifting through hundreds of LinkedIn profiles to find the right talent? Say goodbye to inefficient recruiting processes and embrace the power of AI-driven candidate selection. Our AI Candidate Ranking Flow automates the entire process from job description to ranked candidate lists, saving you countless hours while delivering superior results.

  💼 Key Features & Benefits

  Automatic Candidate Discovery**: Finds relevant LinkedIn profiles based on your job requirements
  AI-Powered Profile Analysis**: Uses advanced GPT models to evaluate each candidate's fit
  Multi-Factor Scoring**: Analyzes skills, experience, and education match with precision
  Seamless Google Sheets Integration**: Export comprehensive results for team collaboration
  100% Automated Workflow**: No manual intervention needed after initial setup
  Custom Match Criteria**: Tailor scoring parameters to your specific needs

  🚀 How It Works

  Simple Input: Just provide a detailed job description
  Smart Extraction: AI extracts key job requirements automatically
  Intelligent Search: Workflow finds relevant LinkedIn profiles using Google Search API
  Deep Profile Analysis: Apify scrapes comprehensive profile data
  Advanced AI Evaluation: Candidates scored based on match to job requirements
  Organized Results: Ranked candidates exported to Google Sheets

  🛠️ Getting Started

  Prerequisites:

  n8n workflow automation platform
  Google Cloud account with Custom Search API enabled
  Apify account for LinkedIn data extraction
  Google Sheets for results storage

  Quick Setup Guide:

  Import Workflow: Download and import our AI_Candidate_Ranking_Flow.json
  Set API Credentials:
     Configure your Google Custom Search API key
     Connect your Apify API token
     Set up Google Sheets OAuth connection
  .  Prepare Your Google Sheet:
      Create a new Google Sheet. In the first tab, create the following headers in the first row: First Name, Last Name, LinkedIn URL, Match Score (0-100), Skills Match, Experience Match, Summary, Ranking.
  Customize Parameters: Adjust AI matching criteria if needed
  Run & Analyze: Start the workflow and watch AI do the heavy lifting!

  💡 Pro Tips For Maximum Results

  Provide detailed job descriptions with specific technical requirements
  Include industry-specific terminology in your job description
  Adjust LLM temperature settings for more creative or precise matching
  Utilize multiple search result pages for a wider candidate pool
  Export data to multiple sheets for different hiring managers

  🔗 Essential Resources

  Apify LinkedIn Scraper - Get deep LinkedIn profile data
  n8n Documentation - Master workflow automation
  Google Custom Search Setup - Configure search API

  ⚙️ Technical Specifications

  Workflow Platform: n8n (latest version)
  AI Models: OpenAI GPT-4o-mini with optional upgrades
  Profile Data Source: Apify LinkedIn Scrapers
  API Integrations: Google Custom Search, Apify, Google Sheets
  Customization: Fully modifiable workflow and scoring parameters

  🔒 Privacy & Compliance

  This workflow respects all LinkedIn terms of service by utilizing only publicly available profile information through Google Search results and legitimate API services. Data processing complies with GDPR and relevant data protection regulations.

  🤔 Frequently Asked Questions

  Q: Do I need programming knowledge to use this?
  A: No! The workflow is completely visual and requires no coding experience.


  Q: Can I customize the matching criteria?
  A: Absolutely! The AI prompt and scoring system are fully customizable.

  Q: Does this replace human recruiters?
  A: No, it enhances their capabilities by handling the time-consuming initial screening.

  Get Started Today!

  Transform your recruiting process with our AI-Powered LinkedIn Candidate Ranking System. Import the workflow, connect your APIs, and start finding ideal candidates in minutes!

  Get Your Apify Account →

  Keywords: ai recruiting, linkedin automation, candidate ranking, job matching algorithm, n8n workflow, recruiting automation, apify linkedin, ai hr tools

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.function","n8n-nodes-base.function","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.limit","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["recruitment","automation","integration","data-processing","AI"],"complexity":"complex","use_cases":["Automated candidate discovery from LinkedIn/public web","AI-driven candidate scoring and ranking","Building talent pipelines from job descriptions","Exporting candidate lists for team collaboration (Google Sheets)","Customizable matching criteria for role-specific hiring"],"estimated_setup_minutes":45,"required_services":["n8n platform","Google Custom Search API (Google Cloud)","Apify (LinkedIn scraping actors)","Google Sheets (Google account / OAuth)","OpenAI GPT-4o (or compatible LLM) / API access"],"key_features":["Automatic discovery of LinkedIn profiles via Google Custom Search","Deep profile scraping using Apify LinkedIn scrapers","GPT-4o-powered profile analysis and multi-factor scoring (skills, experience, education)","Configurable scoring/matching criteria and LLM parameters","Results exported and organized into Google Sheets for collaboration and ranking automation"],"target_audience":["Recruiters and talent sourcers","Hiring managers","Staffing agencies and RPOs (recruitment process outsourcers )/People Ops teams /HR teams /small to medium businesses seeking hiring automation"]}


name: Build a RAG System with Automatic Citations using Qdrant, Gemini & OpenAI
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-06-18T14:37:45.594Z
updated_at: 2025-06-18T14:37:45.594Z
url: https://n8n.io/workflows/5023
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:32
description:
  This workflow implements a Retrieval-Augmented Generation (RAG) system that:

  Stores vectorized documents in Qdrant,
  Retrieves relevant content based on user input,
  Generates AI answers using Google Gemini,
  Automatically cites the document sources (from Google Drive).

  Workflow Steps

  Create Qdrant Collection
     A REST API node creates a new collection in Qdrant with specified vector size (1536) and cosine similarity.

  Load Files from Google Drive
     The workflow lists all files in a Google Drive folder, downloads them as plain text, and loops through each.

  Text Preprocessing & Embedding

     Documents are split into chunks (500 characters, with 50-character overlap).
     Embeddings are created using OpenAI embeddings (text-embedding-3-small assumed).
     Metadata (file name and ID) is attached to each chunk.

  Store in Qdrant
     All vectors, along with metadata, are inserted into the Qdrant collection.

  Chat Input & Retrieval

     When a chat message is received, the question is embedded and matched against Qdrant.
     Top 5 relevant document chunks are retrieved.
     A Gemini model is used to generate the answer based on those sources.

  Source Aggregation & Response

     File IDs and names are deduplicated.
     The AI response is combined with a list of cited documents (filenames).
     Final output:

            AI Response

       Sources: ["Document1", "Document2"]
  Main Advantages

  End-to-end Automation**: From document ingestion to chat response generation, fully automated with no manual steps.
  Scalable Knowledge Base**: Easy to expand by simply adding files to the Google Drive folder.
  Traceable Responses**: Each answer includes its source files, increasing transparency and trustworthiness.
  Modular Design**: Each step (embedding, storage, retrieval, response) is isolated and reusable.
  Multi-provider AI**: Combines OpenAI (for embeddings) and Google Gemini (for chat), optimizing performance and flexibility.
  Secure & Customizable**: Uses API credentials and configurable chunk size, collection name, etc.

  How It Works  
  Document Processing & Vectorization  
     The workflow retrieves documents from a specified Google Drive folder.  
     Each file is downloaded, split into chunks (using a recursive text splitter), and converted into embeddings via OpenAI.  
     The embeddings, along with metadata (file ID and name), are stored in a Qdrant vector database under the collection negozio-emporio-verde.  

  Query Handling & Response Generation  
     When a user submits a chat message, the workflow:  
       Embeds the query using OpenAI.  
       Retrieves the top 5 relevant document chunks from Qdrant.  
       Uses Google Gemini to generate a response based on the retrieved context.  
       Aggregates and deduplicates the source file names from the retrieved chunks.  
     The final output includes both the AI-generated response and a list of source documents (e.g., Sources: ["FAQ.pdf", "Policy.txt"]).  

  Set Up Steps  
  Configure Qdrant Collection  
     Replace QDRANTURL and COLLECTION in the "Create collection" HTTP node to initialize the Qdrant collection with:  
       Vector size: 1536 (OpenAI embedding dimension).  
       Distance metric: Cosine.  
     Ensure the "Clear collection" node is configured to reset the collection if needed.  

  Google Drive & OpenAI Integration  
     Link the Google Drive node to the target folder (Test Negozio in this example).  
     Verify OpenAI and Google Gemini API credentials are correctly set in their respective nodes.  

  Metadata & Output Customization  
     Adjust the "Aggregate" and "Response" nodes if additional metadata fields are needed.  
     Modify the "Output" node to format the response (e.g., changing Sources: {{...}} to match your preferred style).  

  Testing  
     Trigger the workflow manually to test document ingestion.  
     Use the chat interface to verify responses include accurate source attribution.  

  Note: Replace placeholder values (e.g., QDRANTURL) with actual endpoints before deployment.

  Need help customizing?  
  Contact me for consulting and support or add me on Linkedin. 

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.vectorStoreQdrant","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.chainRetrievalQa","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.retrieverVectorStore","@n8n/n8n-nodes-langchain.vectorStoreQdrant","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.merge","n8n-nodes-base.aggregate","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.vectorStoreQdrant","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5180 characters]

metadata_json:
  {"categories":["automation","integration","RAG (retrieval-augmented generation)","knowledge management","AI/chatbots"],"complexity":"complex","use_cases":["Internal knowledge-base chatbot with source citations","Customer support / FAQ automation","Document search and summarization with traceability","Compliance & audit-friendly responses (traceable sources)","Agent assist / knowledge retrieval for support teams"],"estimated_setup_minutes":45,"required_services":["Qdrant (vector database)","Google Drive (document storage)","OpenAI embeddings (text-embedding-3-small or equivalent)","Google Gemini (response generation)","n8n (workflow runtime)","HTTP endpoint or webhook for chat input"],"key_features":["Automated document ingestion from Google Drive","Chunking with overlap and recursive text splitting","Embeddings generation via OpenAI","Vector storage and similarity search in Qdrant (cosine, 1536-dim)","Query embedding + nearest-neighbor retrieval (top 5) before generation','AI answer generation using Google Gemini based on retrieved context' ,"],"target_audience":["Developers/engineers building RAG systems","Data engineers and ML engineers","Product teams creating knowledge-based features or chatbots"]}


name: Build Custom Workflows Automatically with GPT-4o, RAG, and Web Search
author_name: Franz
author_username: agents-by-franz
categories: []
created_at: 2025-06-18T15:09:18.253Z
updated_at: 2025-06-18T15:09:18.253Z
url: https://n8n.io/workflows/5024
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  🚀 What the “Agent Builder” template does

  Need to turn a one-line chat request into a fully-wired n8n workflow template—complete with AI agents, RAG, and web-search super-powers—without lifting a finger?
  That’s exactly what Agent Builder automates:

  Listens to any incoming chat message (via the Chat Trigger).
  Spins up an AI architect that analyses the request, searches the web, reads n8n docs from a Pinecone vector store, and designs the smallest possible set of nodes.
  Auto-generates a ready-to-import JSON template and hands it back as a downloadable file—plus all the supporting assets (embeddings, vector store etc.) so the next prompt is even smarter.

  Think of it as your personal “workflow chef”: you shout the order, it shops for ingredients, cooks, plates, and serves the meal. All you do is eat.

  🤗 Who will love this?

  No-code builders / power users** who don’t want to wrestle with AI node wiring.
  Agencies & consultants** delivering lots of bespoke automations.
  Internal platform teams** who need a “workflow self-service portal” for non-technical colleagues.

  🧩 How it’s wired

  | Sub-process                | What happens inside                                                                                                                                                                              | Key nodes                                                                              |
  | -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------- |
  | Web Crawler (optional) | Firecrawl scrapes docs.n8n.io (or any URL you drop in) and streams raw markdown back.                                                                                                            | Set URL → HTTP Request (Extract) → Wait & Retry                                      |
  | RAG Trainer            | Splits the scraped docs, embeds them with OpenAI, and upserts vectors into Pinecone.                                                                                                             | Recursive Text Splitter → Embeddings OpenAI → Train Pinecone                         |
  | Agent Builder          | The star of the show – orchestrates GPT-4o (via OpenRouter), SerpAPI web-search, your Pinecone index and a Structured Output Parser to produce → validate → prettify the final n8n template. | Chat Trigger → AI Agent → OpenAI (validator) → Code (extract) → Convert to JSON file |

  Every arrow in the drawn workflow is pre-connected, so the generated template always passes n8n’s import check.

  🛠️ Getting set up (5 quick creds)

  | Service                                             | Credential type                                            |
  | --------------------------------------------------- | ---------------------------------------------------------- |
  | OpenAI / Azure OpenAI – embeddings & validation | OpenAI API                                               |
  | Pinecone – vector store                         | Pinecone API                                             |
  | OpenRouter – GPT-4o LLM                         | OpenRouter API Key                                       |
  | SerpAPI – web search                            | SerpAPI Key                                              |
  | Firecrawl (only if you plan to crawl)           | Generic Header Auth → Authorization: Bearer YOUR_KEY |

  Each node already expects those creds; just create them once, select in the dropdown, hit Activate.

  🏃‍♀️ What a typical run looks like

  User says: “Build me a workflow that monitors our support inbox, summarises new tickets with GPT and posts to Slack.”
  Chat Trigger captures the message.
  AI Agent:

     queries Pinecone for relevant n8n docs,
     fires a SerpAPI search for “n8n gmail trigger example”,
     sketches an architecture (Gmail Trigger → GPT Model → Slack).
  The agent returns JSON ➜ OpenAI node double-checks field names, connections, type versions.
  A tiny JS Code node slices the JSON out of the chat blob and saves it as template.json ready for download.
  You download, import, and… done.

  ✏️ Customising

  Switch the LLM* – plug in Claude 3, Gemini 1.5, or a local model; just swap the *OpenRouter Chat Model node.
  Point the RAG at your own docs* – change the crawl URL or feed PDFs via the *Default Data Loader.
  Hard-code preferred nodes* – edit the “User node preferences” in the system message so the agent always chooses *Notion for databases, etc.

  🥡 Take-away notes

  It's a prototype feel free to experiment with it to improve its capabilities.
  Have fun building!**

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.toolSerpApi","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.convertToFile","n8n-nodes-base.convertToFile","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter"]

workflow_json_compressed:
  [encoded data, 25216 characters]

metadata_json:
  {"categories":["automation","AI/ML","knowledge management (RAG)","developer tools"],"complexity":"complex","use_cases":["Convert a one-line chat request into a ready-to-import n8n workflow template","Build bespoke automations quickly for clients or internal teams","Index and RAG-enable n8n docs (or other docs) to inform automated design","Automate web-search augmented design decisions for node selection","Provide a self-service workflow generator for non-technical users"],"estimated_setup_minutes":15,"required_services":["OpenAI or Azure OpenAI (embeddings & validation)","OpenRouter (GPT-4o chat model)","Pinecone (vector store)","SerpAPI (web search)","Firecrawl (optional web crawler)","n8n instance with credentials configured"],"key_features":["Chat-triggered AI agent that designs full n8n workflows","RAG pipeline: crawl/split/embed and upsert into Pinecone","SerpAPI web search integration to supplement RAG","Structured output parsing, validation, and prettification of generated JSON templates","Auto-export of template.json ready for import (pre-wired nodes/connections) 
  supporting multiple LLMs and customizable node preferences"],"target_audience":["No-code builders / power users","Agencies & consultants delivering custom automations","Internal platform teams enabling self-service workflows for non-technical staff','Developers / automation engineers who prototype and validate workflow designs"]}


name: XOR Encryption and Decryption with Base64 Encoding for Workflow Data
author_name: Tenkay
author_username: tenkay
categories: []
created_at: 2025-06-18T15:34:27.419Z
updated_at: 2025-06-18T15:34:27.419Z
url: https://n8n.io/workflows/5025
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:33
description:
  This workflow performs basic XOR-based encryption and decryption using a custom password. It is intended to be triggered by another workflow and processes structured input in JSON format.

  Input Structure

  The workflow expects a single array of objects with the following fields:

  action-type: either "encrypt" or "decrypt"
  key: the password used for encryption and decryption
  data: the content to encrypt or decrypt

  Example: Encryption Input

  [
    {
      "action-type": "encrypt",
      "key": "Password",
      "data": "Hello, this is a secret message"
    }
  ]

  Example: Decryption Input

  [
    {
      "action-type": "decrypt",
      "key": "Password",
      "data": "ChwGAQceF15eE2QXFRcUagxGVgV8TBoNBA4VQVoQZkwVUhImU1FTEg=="
    }
  ]

  Output

  The output returns an array of results, each containing either the encrypted string (base64 format) or the decrypted plain text.

  Use Case

  This workflow is useful for simple internal message encoding, data obfuscation, or testing purposes. It is not recommended for securing sensitive or personal data, as XOR encryption is not cryptographically secure.

  The workflow logic is written in JavaScript using n8n Function nodes, without any external dependencies.

nodes_used:
  ["n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.code"]

workflow_json_compressed:
  H4sIAAAAAAAAE81WTW/bOBD9KwTRRRxEdClZsih5fcimPWQ/2kOK9hB7AX4MbSU25ZXoNIar/76gKH8kcYB0T3sxJGpm3sx7zxptcaFwjvXHxeUn+Vn+DneFsX/+gQO8BMtxvsWFqS03Eq5dnEhoBAlnQg4lzUIRs2RIJecpEyKJRZxCMlSJSHWUDBhjVAlKwyRLaJjGkokUB9jCcrXgFq4qUPUN2PXqqlyuFmBB4dxWa2gCbPgScI7rwj0gYGS1WdmiNC6dz2qc304DbEoF7nLrRxiGkgKNBRGCSxLLUBOmAIiKgNFsKEHKDO9Lf5uDQR8fQa4tKCQ26NKUdg4V+lZW93pRfndQm5ULNcyQFosIXkMffNIu7ktVzGZQ4QCvyrpom8xvSRjTIKLTAK94xZdgoaodl9+7pGuzWtv25IEv1t0UXWdcuiKkBW+C/fE9bI5vFbccN9Om8W1+hapuocN+6KJaRqJMg2Q0IQLihMRUaMJTnpAkUlLJIY8hgwMj1/rVkQv9dDx2criylchdNgGWpVHF7v7oEX7YdRoFeAHafnUE4BzjAEteww0YB/MA3gvddHxRKO7BcW2rQlrcYixFYbgtK0ebUfgp7M4YTLM4FklKEpYNSBxrRngoGVEwTAZCCy5bGsoVVL7WdkeDgzKz/TOPD/+s+aJ2+Mftj7db9O6uLs3t2ZGAZ1PUNDjAVTGb70M7O59SL+pHe/UyGWUDngmSqiQiscpSwqlISJIyyHQUMcGO/Lwr+pqEslTwVMQBpQFhL2W8q69cbO64rC1aQl3zGaDxu8KZtq+Lqra9876bte9ciH78QBP8qUQfuOUTPJoYn3gPGzRGp7LuYTOamInRa9NShR7L6qPvv2fh0QYu9xxtJwahBVjUzQYKjdEEtxAI6bJCPfe0QGNER6hAvyKX3F+Amdn5CBUXF10NhHxHcs4rNxsa+8jd/aXtFefob4f65Az90h75gucjX+rQzMUY3bQG6euqXF51ib1dBZ/QuJ8K7Loy6Le11lC10b19mfO+LX2Z3plTahifnY/QxDSOoS7x1hXpRnEM5rubo3byYxY70TyRPrTpupmOJga/8N3BdYN0CDHXhGbRgMQ0VoQn2ZAwmlEpqc4k0wfXKfgvrgtPvDyeue5Y8teM90anoffv0V/r2iIByM4B1XwJbcq6BoVsucN67sgPfraeF+XLM196ZGcjNH4i7HH4XtCDxt4Vzrcdd/8PVx+a+WlX71NHbzbtPiU/Jnqv+U/Ydhq0+9KtC80XNQS4BmsLM2tN5Vd1UZrPlQK3JB5CV6NbQe0HDRvoNKR0SNJYDUgMcUw40ymJU5kMwkhxoUO/VwzI/RK71u53yQtnabe6vXdfvITbiAAXRsEjzmkzDQ7BL/47L4KnTfCG75RTjRzv8hNlm+ZfUR2as/cJAAA=

metadata_json:
  {"categories":["data processing","automation","developer tools"],"complexity":"simple","use_cases":["Internal message encoding between workflows","Simple data obfuscation for non-sensitive data","Testing and demo of encryption/decryption logic","Passing encoded payloads between n8n workflows"],"estimated_setup_minutes":10,"required_services":["n8n platform (no external APIs or services required)"],"key_features":["XOR-based encrypt/decrypt implemented in JavaScript Function nodes","Base64 encoding for encrypted output","Processes structured JSON array input with action-type/key/data fields","Can be triggered by another workflow (executeWorkflow node)","No external dependencies"],"target_audience":["Developers","Automation/Workflow builders","QA engineers and testers','Hobbyists and students experimenting with encoding"]}


name: AI Weather Forecasts with MCP Integration
author_name: JaredCo
author_username: jaredco
categories: []
created_at: 2025-06-18T16:33:00.628Z
updated_at: 2025-06-18T16:33:00.628Z
url: https://n8n.io/workflows/5026
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:33
description:
  Real-time Weather Forecasts with MCP Tools

  This n8n workflow demonstrates how to integrate real-time weather intelligence into any automation using the Model Context Protocol (MCP). Get current conditions and 5-day forecasts with natural language queries like "What's the weather like in Miami?" or "Will it rain next Tuesday in Seattle?" - all powered by live weather data and AI.

  Good to know
  No API keys required - uses hosted MCP weather server with built-in WorldWeatherOnline integration
  Provides current conditions and detailed 5-day forecasts
  Natural language queries work for any location worldwide
  Powered by WorldWeatherOnline - the world's most accurate weather system
  Fully preconfigured and ready to run out-of-the-box
  Enterprise-ready with error handling and rate limiting

  How it works
  Natural Language Input**: Receives weather queries via webhook, chat, email, or voice
  AI Agent Processing**: n8n Agent node interprets requests and determines:
   Location extraction from natural language
   Weather data type needed (current or 5-day forecast)
   Response formatting preferences
  MCP Weather Tool**: Live hosted server provides:
   Real-time current conditions (temperature, humidity, wind, conditions)
   5-day detailed forecasts with daily highs/lows
   Weather descriptions and condition codes
   Powered by WorldWeatherOnline's premium data
  Intelligent Responses**: AI formats weather data into:
   Conversational natural language responses
   Structured data for downstream automation
   Action-triggering data for workflows

  How to use
  Import the workflow into n8n from the template
  Add your preferred AI model API key to the Agent node
  Customize the system prompt for your specific use case
  Connect to your preferred input/output channels
  Run and start querying weather with natural language

  Use Cases
  Smart Home Automation**: "Turn on sprinklers if no rain forecast for 3 days"
  Travel Planning**: "Check weather for my Paris trip next week"
  Event Management**: "Will outdoor wedding conditions be good Saturday?"
  Agriculture/Farming**: "Check 5-day forecast for planting schedule"
  Logistics**: "Delay shipping if severe weather forecast in delivery zone"
  Personal Assistant**: "Should I wear a jacket today in Chicago?"
  Sports/Recreation**: "Surf conditions and wind forecast for weekend"
  Construction**: "Safe working conditions for outdoor project this week"

  Requirements
  n8n instance (cloud or self-hosted)
  AI model provider account (OpenAI, Anthropic, Google, etc.)
  Internet connection for MCP weather server access
  Optional: Webhook endpoints for external integrations

  Customizing this workflow
  Location Intelligence**: Add geocoding for address-to-coordinates conversion
  Data Storage**: Save weather history to databases for trend analysis
  Dashboard Integration**: Connect to Grafana, Tableau, or custom visualizations
  Voice Integration**: Add speech-to-text for voice weather queries
  Scheduling**: Set up automated daily/weekly weather briefings
  Conditional Logic**: Trigger different actions based on weather conditions

  Sample Input/Output

  Natural Language Queries:
  "What's the weather like in Miami?"
  "Will it rain next Tuesday in Seattle?"
  "5-day forecast for London"
  "Temperature in Tokyo tomorrow"
  "Weather conditions for outdoor event Saturday"

  Rich Responses:
  {
   "location": "Miami, FL",
   "current": {
     "temperature": "78°F",
     "condition": "Partly Cloudy",
     "humidity": "65%",
     "wind": "10 mph SE"
   },
   "forecast": {
     "today": "High 82°F, Low 71°F, 20% rain",
     "tomorrow": "High 85°F, Low 73°F, Sunny"
   },
   "ai_summary": "Perfect beach weather in Miami today! Partly cloudy with comfortable temperatures and light winds."
  }

  Why This Workflow is Unique
  Zero Setup Weather Data**: No API key management - MCP server handles everything
  World-Class Accuracy**: Powered by WorldWeatherOnline's premium weather data
  AI-Powered Intelligence**: Natural language understanding of complex weather queries
  Enterprise Ready**: Built-in error handling, rate limiting, and reliability
  Global Coverage**: Worldwide weather data with location intelligence
  Action-Oriented**: Designed for automation decisions, not just information display

  Transform your automations with intelligent weather awareness powered by the world's most accurate weather system!

  🧪 Setup Steps
  ✅ The Agent node is already configured:
    The system prompt is included
    The tool endpoint is pre-set
  All you need to do is:
    Add your AI model API key to the existing Agent credential
    Hit run and you're done ✅

  🔗 Full project link: Github: weathertrax-mcp-agent-demo

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.httpRequestTool","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.manualTrigger"]

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

metadata_json:
  {"categories":["automation","integration","AI / NLP","weather data","monitoring"],"complexity":"medium","use_cases":["Smart home automation (sprinklers, HVAC rules)","Travel planning and trip weather checks","Event management (outdoor event condition checks)","Agriculture / farming scheduling","Logistics and shipping delays based on weather risks"],"estimated_setup_minutes":10,"required_services":["n8n instance (cloud or self-hosted)","Hosted MCP Weather server (preconfigured)","WorldWeatherOnline (backend weather data via MCP)","AI model provider account (OpenAI, Anthropic, Google, etc.)","Internet access / optional webhook endpoints"],"key_features":["Natural language weather queries (current & 5-day forecast)","AI Agent for location extraction, intent parsing, and response formatting","Zero weather API key management (hosted MCP handles WorldWeatherOnline)","Structured outputs for downstream automations and human-friendly summaries","Enterprise-ready: error handling and rate limiting built in"],"target_audience":["Developers / automation engineers","Operations / SRE teams","Product owners and event planners managing outdoor activities/venues"]}


name: Generate AI Avatar Videos with HeyGen and Google Sheets Integration
author_name: Sagar
author_username: sagarmasand9
categories: []
created_at: 2025-06-18T16:47:19.959Z
updated_at: 2025-06-18T16:47:19.959Z
url: https://n8n.io/workflows/5027
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  This template streamlines your AI Avatar Video Automation workflow by connecting Google sheets for Voice Text & AI Avatar Video Link storage, using HTTP Nodes for connecting Heygen API & AI Avatar/Voice Id for automated Video generation.

  Pre-requisites
  Before setting up this workflow, ensure you have:

  A Google account with access to Google Sheets

  A Heygen Account with API access in account's settings.



  n8n.io account with workflow access

  Setup Instructions

  Configure Data Source
  Create a Google Sheet with the following columns: Script/Voice Text & Final AI Avatar Video Link.

  Connect Google Sheet
  Add your Google sheet credentials in the “Google Sheet” node
  Specify the folder path where your columns are stored.

  Configure the node to retrieve files based on filenames from your Google Sheet

  Set Up HTTP Node with Heygen API Credentials

  Configure the node to generate AI Video based on Script/Voice Text.


  Configure HTTP Node 2
  Connect Heygen API Credentials
  Set up the API node to Get the AI Avatar Video Link.

  then finally setup Google sheet node again to get & upload the final AI Avatar video link in the column "the Final AI Avatar Video Link"

  Workflow Automation Setup
  Configure the scheduler node to run at your preferred frequency
  Set up error handling to notify you of any posting failures


  Execution Instructions
  After completing all connections, test the workflow.

  Monitor the execution in the n8n dashboard to ensure proper functioning

  View the “Executions” tab to track successful  and troubleshoot any errors.

  This template saves hours of manual AI Avatar video Creation Process. use this without the daily manual effort.


  Details
  Nodes used in workflow
  Manual Trigger Node
  Google Sheet Node 1
  HTTP Node 1
  HTTP Node 2
  Google Sheets Node 2

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

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

metadata_json:
  {"categories":["automation","integration","media generation","data processing"],"complexity":"medium","use_cases":["Bulk AI avatar video creation from text scripts","Automating social media/video content production","Personalized video/message generation at scale","E-learning or training video creation automation","Building scheduled content pipelines with tracking"],"estimated_setup_minutes":30,"required_services":["Google Sheets (Google account)","HeyGen (API access)","n8n account (workflow execution)"],"key_features":["Reads script/voice text from Google Sheets","Calls HeyGen API to generate AI avatar videos","Fetches final AI avatar video link via API","Writes final video links back to Google Sheets","Scheduler node for periodic automation runs\nError handling/notifications support"],"target_audience":["Marketers","Content creators and social media managers","E-learning creators and instructional designers (small teams/agencies)"]}


name: Basic RAG chat
author_name: JustinLee
author_username: justin
categories: []
created_at: 2025-06-18T16:55:03.909Z
updated_at: 2025-06-18T16:55:03.909Z
url: https://n8n.io/workflows/5028
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  This workflow demonstrates a simple Retrieval-Augmented Generation (RAG) pipeline in n8n, split into two main sections:

  🔹 Part 1: Load Data into Vector Store
  Reads files from disk (or Google Drive).

  Splits content into manageable chunks using a recursive text splitter.

  Generates embeddings using the Cohere Embedding API.

  Stores the vectors into an In-Memory Vector Store (for simplicity; can be replaced with Pinecone, Qdrant, etc.).

  🔹 Part 2: Chat with the Vector Store
  Takes user input from a chat UI or trigger node.

  Embeds the query using the same Cohere embedding model.

  Retrieves similar chunks from the vector store via similarity search.

  Uses Groq-hosted LLM to generate a final answer based on the context.

  🛠️ Technologies Used:
  📦 Cohere Embedding API

  ⚡ Groq LLM for fast inference

  🧠 n8n for orchestrating and visualizing the flow

  🧲 In-Memory Vector Store (for prototyping)

  🧪 Usage:
  Upload or point to your source documents.

  Embed them and populate the vector store.

  Ask questions through the chat trigger node.

  Receive context-aware responses based on retrieved content.

nodes_used:
  ["@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.chainRetrievalQa","@n8n/n8n-nodes-langchain.retrieverVectorStore","n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.readWriteFile","@n8n/n8n-nodes-langchain.vectorStoreInMemory","@n8n/n8n-nodes-langchain.vectorStoreInMemory","@n8n/n8n-nodes-langchain.embeddingsCohere","@n8n/n8n-nodes-langchain.lmChatGroq","@n8n/n8n-nodes-langchain.embeddingsCohere"]

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

metadata_json:
  {"categories":["automation","integration","data processing","machine learning","knowledge management"],"complexity":"medium","use_cases":["Document Q&A / knowledge-base chatbot","Internal support assistant (company docs, SOPs)","Prototype retrieval-augmented generation (RAG) workflows","Semantic search over files","Augmenting chatbots with contextual document passages"],"estimated_setup_minutes":15,"required_services":["Cohere Embedding API","Groq LLM (Groq-hosted inference)","n8n (workflow runner)","Local filesystem or cloud storage (for source files)","Google Drive (optional, if using as file source)","Optional: external vector DBs like Pinecone / Qdrant / Weaviate (if replacing in-memory store)"],"key_features":["File ingestion from disk or Google Drive","Recursive text splitting into chunks","Embeddings generation via Cohere","In-memory vector store for prototyping (replaceable)","Similarity search / retriever to fetch relevant chunks by query embedding"],"target_audience":["Developers","ML engineers / data engineers","Product builders prototyping RAG flows"]}


name: Migrate Customer Data from Odoo v15 to v18
author_name: Evozard
author_username: evozardconsulting
categories: []
created_at: 2025-06-18T17:24:43.443Z
updated_at: 2025-06-18T17:24:43.443Z
url: https://n8n.io/workflows/5029
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:33
description:
  📄 Description:
  This workflow helps you migrate customer records directly from Odoo v15 to Odoo v18 without the need for manual exports or intermediate files.

  🔹 It connects to your v15 instance, retrieves customer (res.partner) records, and pushes them directly into your v18 database.
  🔹 The workflow uses pagination (SplitInBatches) for efficient handling of large datasets.
  🔹 Ideal for teams upgrading their Odoo infrastructure and looking to automate data replication between environments.

  ⚡️ Note: Country and state ID mapping is excluded in this version for faster migration. If needed, logic can be added to map based on name lookup.

  🛠 Setup Instructions:
  Configure Odoo API credentials for both v15 and v18. (https://docs.n8n.io/integrations/builtin/credentials/odoo/)
  Adjust domain filters in the “Get Customers” node if needed.
  Run the workflow to begin real-time customer syncing.

  📌 Compatibility:
  Works with Odoo Community & Enterprise
  Tested on n8n v1.17+
  Requires access to Odoo’s JSON-RPC API

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

workflow_json_compressed:
  H4sIAAAAAAAAE5WUTY7bOBCFryLUWhyQFH9ELbsXmSySLBLMLBpelMiio2mLNCTa6cAwkGPMXC8nGcidpDuJjcQ7Aap672MV+Q4wBOjgxj1sd+tXpdgm480/f0INIxWE7gBDmgsmTy+XOtM31HrjG+5D7CM3sm2wiagtF8Y10ptekXfatc547bUyFHVrdIzG2RgF1FBo3G6w0O1EYX5LZbe9zeN2Q4UCdGXa0bGGhCNBB29CzpXfzSWPNFXjsJ6wDDlVe6Grkqu9aBc9XM/Q3a1qSDnQ8nl4PFNopEWrPHPCcKasU8yRlowwtgaNt8408M3rBZXq9ovVXMUpj4vNov9xu/xPbWInA9bjTH/kkDPUsM3zsCBBd2d4LQxf1bDFCUcqNM3QHY6PAn/RNJ/KxLH+ikfeND5IxttGMSWkYahsZFEGI3QbnHXiCe/tdjOUl+kGi39P80Ws+ceyZ4DyWkLluA/a9iy6iEzxXjAnYs+0bgl9DJLb8ER4OxEWejbDIX3d0G9OUF09wp5io3lkkdAypdvAUPYNQyUkV9RLL/AJ8O/3lCq/Gfz9kNbV50//vqO5VB/ydB83+cPnT/9dRB0x7XDzbhrWa5q+Z2ZCXQmtOSoplGIOpWBKeWR9G4lxJaNFH6UK/Nney+DvP1avc6HLSz/VfCn5js3wmgn+Exz4nAqlAh3AZVDS2lkjLNMUialeOdaKaFkIUhhLEgOas6DialKjeK2uxFzVgL4Me4Iu4mamGmYqZUjrUys9kN8t6m+mQBN0sBeLxv6x/5Rlou25jb1lzmFkyumGOVKC+Whtq6K0knuoF4hEfpE6Cf/wELsDjDgsZ7g7nALod17CqaOGIQV6gI4fV6tjfSmAzhlcCoOzur++9ucsfhWHZ6yOx/8B7jcUnk0GAAA=

metadata_json:
  {"categories":["data migration","integration","automation"],"complexity":"medium","use_cases":["Migrate customer (res.partner) records during Odoo upgrades","Replicate customer data between Odoo environments (v15 -> v18)","Automate bulk customer data transfer without manual exports","Handle large datasets using pagination for batched processing"],"estimated_setup_minutes":20,"required_services":["Odoo v15 (JSON-RPC API) - source instance","Odoo v18 (JSON-RPC API) - target instance","n8n instance with Odoo credentials configured","Network access between n8n and both Odoo instances"],"key_features":["Direct transfer of res.partner records from v15 to v18","Pagination via SplitInBatches for large dataset handling","No need for manual exports or intermediate files","Simple extensibility for additional mapping (e.g., country/state lookup)","Compatible with Odoo Community & Enterprise"],"target_audience":["ERP administrators","Developers / Integration engineers","DevOps / Platform teams managing Odoo upgrades"]}


name: AI Text-to-Image for Telegram (Gemini + Hugging Face FLUX)
author_name: Malik Hashir
author_username: malikx
categories: []
created_at: 2025-06-18T19:49:11.964Z
updated_at: 2025-06-18T19:49:11.964Z
url: https://n8n.io/workflows/5031
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:33
description:
  Turn text prompts into stunning AI-generated images—automatically!

  What it does?

  This workflow lets your Telegram bot:

  Receive a user’s image description (e.g., "a cyberpunk cat wearing sunglasses").
  Refine the prompt using AI (Gemini/OpenAI) for better results.
  Generate the image via Hugging Face’s free API (no costs!).
  Send the final image back to the user—all in seconds!

  How It Works?
  Telegram Trigger**
  Listens for user messages (e.g., “/image a futuristic cityscape”).

  AI Prompt Refinement**
  Uses Google Gemini (or OpenAI) to optimize the input for the image model.

  AI Image Generation**
  Calls Hugging Face’s Together API (free tier) to create the image.
  Supports models like black-forest-labs/FLUX.1-schnell.

  Auto-Delivery**
  Downloads the image and sends it in the Telegram chat.

  Setup Guide (3 Minutes!)

  1. Prerequisites

  An n8n instance (cloud/self-hosted).
  A Telegram bot token (get it from @BotFather).
  A Hugging Face API token (free: https://huggingface.co/).

  2. Installation

  Import the JSON template into n8n.
  Replace placeholders:
  Telegram API token (in the Telegram nodes).
  Hugging Face API token (in the HTTP Request node).

  (Optional) Swap Gemini for OpenAI if preferred.

  3. Done!

  Activate the workflow—your bot is now ready to create stunning images! Simply send a command like:
  “Hey, generate an image of a warrior standing on top of a mountain.”

  You can keep your prompt casual or get as detailed as you like. The AI will interpret your request and craft a full, descriptive prompt for image generation. For example:
  “Generate an image of a warrior wearing tattered clothes, chest out, standing on a snowy mountain.”

  Why Use This Template?
  100% Free – Uses Hugging Face’s free tier (no OpenAI costs).
  No Coding – Fully visual n8n workflow.
  Customizable – Swap AI models (Gemini/OpenAI) or image APIs.
  Instant Results – Users get images in seconds.

nodes_used:
  ["n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  H4sIAAAAAAAAE52VTW/bRhCG/wqxJxfguPv9wVMDHxIfWhS10YthBLO7sxRhiVQlqmkg6L8XlB3LiWQ79pU7H887+3J2yxY0Imu2rOvXI/aJLjNrWObaahXROxkjL1EaSVkmL4LzxmfjU9IuZ5WEKcVm7qMImHO2LlCQLrKajbRYznGkixXl9RWNm+XFsFjOaaTMmnG1oV3N+iHTmjU3W9ZNXZMXSMVwCLIk0FYQhIwE2pQYlC2iRMtq1uOCWMOuaU7tChfV9aprW1pNPb8up5Pe97AvDRHXdD4+BB7ilsO6G7uhZ80NaMtrkJLf1uwLxdkw3O0nIChKrmWG4pUCHShCtCGBECYVkzQ5GaZKuMIFjbRas2a7uyf4m1brfXFxLnf1N23OKNJegAvFgBZOALocwQeTtFTCaJQHbR8uqw8t9eNB02+97389CJtj36YZdv05PsQ91ST8o6ZXAMMjoCwZg48ZYnIetMkZMHsJXLvAdbAmF3EA/DgM7Zyqj7To+q66mOFY/T5kmv8E8Hwxhd8XuM//gd7z2r+O/ghebCCBRKBjItCEBbAkAp5TKUY4ci4cu+ZVt3wPJfhkE+GPbCKlslw5UMFw0DI6CEIK8Io7G1OUuri32KTwklziCSwPEbQTGiIpAs21VCjQUCgHMVdjl+6+Vn8MIz2rZ72PeQh5OmYzmcTwo0mzNPTj5KmGseenbrkShNZA8M6ATi4BJp/AC2m0TTxm7k+CireTSs7rd2JqZTJazKC5KKCDkBCDVqBzUE5KssHSSUz5Zsz9T+feO8+SUso5RbBYJGj0HkJIFpJW3DkjXZZPLv7T9fWf1V/0z4bWY3X2adO2Xd8WTPTLs9izcVw+ZHzPbfSjs1+0qX5iU2EQo9EeuPIRtNIBgpz2ZHKUuSL0Wp2mPcvDl34+YP7cLbB9D69/A+9tPU2/pzTl7i/jcbM2W7bAbip4s90/RD851n1Szbo+03+s4bvb2119/Badqn681E/Wena1NluG3edpkW6wpYdvL9Y/Cv+x1wuCX5vP8xd5UtWLqad6XVGfq8vpvDqLmO6qcajGGVVpGsi/HVbfFvXLnXe7/wG1NyB74wgAAA==

metadata_json:
  {"categories":["automation","integration","AI/image-generation"],"complexity":"simple","use_cases":["Generate AI images from Telegram prompts","Interactive chatbots that produce visual content","Social media/content creation","Community engagement via instant image replies","Rapid prototyping of visual ideas"],"estimated_setup_minutes":300,"required_services":["n8n instance (cloud or self-hosted)","Telegram Bot API (bot token from @BotFather)","Hugging Face API (Together/FLUX models; Hugging Face token)","Google Gemini or OpenAI (optional for prompt refinement)"],"key_features":["Refines user prompts with AI (Gemini/OpenAI)","Generates images via Hugging Face Together/FLUX models","Automatically downloads and sends images back to Telegram","No-code visual workflow (importable n8n template)","Uses Hugging Face free tier (no image-generation cost)"],"target_audience":["Developers building chatbots","Marketers and community managers","Content creators and social media managers」「Hobbyists and artists experimenting with AI visuals"]}


name: Reusable and Independently Testable Sub-workflow
author_name: Viktor Klepikovskyi
author_username: vklepikovskyi
categories: []
created_at: 2025-06-18T20:11:59.029Z
updated_at: 2025-06-18T20:11:59.029Z
url: https://n8n.io/workflows/5032
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:33
description:
  Reusable and Independently Testable Sub-workflow
  This n8n workflow provides a standardized structure for building and testing sub-workflows in isolation. Its purpose is to help you create robust, reusable, and maintainable automations by enabling you to test the sub-workflow's logic without needing a separate parent workflow.
  Setup Instructions:
  Define Sub-workflow Inputs: Double-click the Execute Sub-workflow Trigger node to define the parameters (e.g., color) that your sub-workflow will expect from a parent workflow.
  Configure Test Data: Use the Test Input node (an Edit Fields (Set) node connected to the Manual Trigger) to provide sample data for isolated testing.
  Connect Inputs: The Combine Input node (an Edit Fields (Set) node) is the entry point for your sub-workflow's core logic. It should have two inputs: one from the Execute Sub-workflow Trigger and one from the Test Input node.
  Merge Inputs: Ensure the Combine Input node has the 'Include Other Input Fields' option enabled to merge data from both the live and test paths seamlessly.

  You can read the full blog post that explains this workflow setup in detail here.

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

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

metadata_json:
  {"categories":["automation","development","testing","workflow design"],"complexity":"simple","use_cases":["Create reusable sub-workflows","Test sub-workflow logic in isolation","Develop and debug modular automations","Provide standardized input/merge behavior for parent workflows"],"estimated_setup_minutes":10,"required_services":["n8n (Cloud or self-hosted)"],"key_features":["Execute Sub-workflow Trigger for parent integration","Test Input node to provide sample data for isolated testing","Combine Input node merges live and test inputs ('Include Other Input Fields')","Simple conditional branching for test vs live flows","Standardized, reusable structure for unit-testable sub-workflows"],"target_audience":["n8n developers","automation engineers","integration specialists','QA engineers"]}


name: Compare Lists and Identify Common Items & Differences Using Custom Keys
author_name: Tenkay
author_username: tenkay
categories: []
created_at: 2025-06-18T21:17:38.490Z
updated_at: 2025-06-18T21:17:38.490Z
url: https://n8n.io/workflows/5033
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:33
description:
  This workflow compares two lists of objects (List A and List B) using a user-specified key (e.g. email, id, domain) and returns:

  Items common to both lists (based on the key)
  Items only in List A
  Items only in List B

  How it works:
  Accepts a JSON input containing:
     listA: the first list of items
     listB: the second list of items
     key: the field name to use for comparison
  Performs a field-based comparison using the specified key
  Returns a structured output:
     common: items with matching keys (only one version retained)
     onlyInA: items found only in List A
     onlyInB: items found only in List B

  Example Input:
  {
    "key": "email",
    "listA": [
      { "email": "alice@example.com", "name": "Alice" },
      { "email": "bob@example.com", "name": "Bob" }
    ],
    "listB": [
      { "email": "bob@example.com", "name": "Bobby" },
      { "email": "carol@example.com", "name": "Carol" }
    ]
  }

  Output:
  common: [ { "email": "bob@example.com", "name": "Bob" } ]
  onlyInA: [ { "email": "alice@example.com", "name": "Alice" } ]
  onlyInB: [ { "email": "carol@example.com", "name": "Carol" } ]

  Use Cases:
  Deduplicate data between two sources
  Find overlapping records
  Identify new or missing entries across systems

  This workflow is useful for internal data auditing, list reconciliation, transaction reconciliation, or pre-processing sync jobs.

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

workflow_json_compressed:
  H4sIAAAAAAAAE9VX2W7jNhT9FZZToAkguqJESZSDFEi6APOQToEpZlA4RnFJXTqqbcqQ6GRcw6997jf2SwpqsbM50xVon0yTdznnSDwit7Qs6Jim1TfrKPsqvjJXVzJ98zMN6BId0PGWlrZxYDW+9nEqCSNMQCqd6jDnSsgkDTVAJpVKhBIZJmmRqMxESSylDAsVhjzJk5BnQkuV0V1ALSyRjqmuliuosaYBdTBr6HgyDaitCvTDbQcLeQxoABnGWcYEqoKBLnJmVBYCoEFtkO4rvr9BS77+gHrtsCBqQy5s5W6wJu+rem4W1Z1vtVn5UCsta3sxBQ2OsEsa4r6vy9msRbaqmtKVlaXjSRhE4TSgK6hhiQ7rxotz12e8tqu1a2duYbHuKfSwSr/2IxyaQ13Dhu6CRxHqhYg5buhuutt1Ee+wblpQfMR9UKuVTBIpExGxxGjFBE8MU1zmTCkVSyNlrlRy0OrLqsCjcuhu8R55IcIgfob/T01byD9N2ziyKBt3Qc4/bQmNTFk37uR09FNT2VGvAjkj1/YQfEnOyfFodTbEkjlujoTOcXN2bYdAuIIVOScW78gVrE5aQKMlrE5Kh0ty/gWZ+MFkjptpQPxwenq676KeJl/+geQhXVfLZWXJOZlM9yUru9i8thfPTV4Ok9fWVDU56dYm8670xZRUpqVzSrbXlpDSkBMPcHQDzcn8tJ8lfdfRat3ctDgvTs/I55+T3375lcwRV+Tis4bcdi9M29hn7QguGhwq9BgflGijru3uCLrLFp16iO4TeAZez/VQ/PJh8RrdurZk4uf6FP9Yx8OfgeC4/w2G6R71eBg8WrgcFi67+V3f1AtOH++jaL+LDFeIMi9YIlTEhDYZk5lJmUgwMrkIVZbGh1301pV6viHfVu74ZmramD7k3pZiXIQB4+nTTaUr69A6OqavXpHvoGlIaYm7q9od43VvX0d3A45sqjVZlHMkriK9oQYEGnKHi4X/dTdIWu94bBwHwqEwXKcpw4jnTKTAWZ4bw3KMC5MZWUQG7hG+K52+Oc51WL7HM4o8zSck6/UCHxumrmzRprUL1Wo/vN0/qIAu0Lh3PoeOKQ2ohgbfovXtbpGOXb3GnissygI6ELRxdamdl0FXS1VacFXtfdYWvsS9tsOXJ81iCBORsjAuciZEEbE8QWCAGowSHLIipwGtVlh3tbaDJL6Vne3Xuv64XLkNDWhT2tkCe/ge6+4hofPtlnw62BrZ7WhA63J2cyDcfgT+U0phnkiZomAiTQUTYYFM8SxjHETBMwApC/m8Ut1X7u8KNXxY/hdipbkAHkaGRSLiTMjCsBx4xiCPsrCAUOUA/75Y6phY011wXx8Di4UCPX+zdqu19yP84GqgT44h8SgKKCzuYNN0oV+BPzt2SHrmIkkEZFnCMC0EE4Ahk4n3mSQVMk0LLlJx8Jnbvco/LrFpYIaEH3cddE9PKyyST531wG0XUGiacmaXaLuD24O/w/OKc+QijzSTUYj+UJWxPI2RaQOJzoqkCCF9CfUB894WbnvBf6jWZLluHGlWqEuzIUCOnPLikdjLGBpIUpMWLIZIMhHLiOU5T1lRAKqYYxjz8EUZoz8p4z+hogaZhQiaJamRTOjEsDyPJeNKJ7HSmJnoH1NxOG1/RMdICxWrXLIMopAJLjUDI5AJHeVplsQRxvxFHeM/pyN/5vD8P9BRHdNxGlDQnTcaWDQY0AadK+2sRd/dp8rKvqkL9I54y71J9n7b3iSjXBtMFTJQGpiIhGZ5DsCgyCRHlUrMZWeiFvXekbrbxpYuofTKTqbesfpDyb3pbXuR/KiPtOEBLW2BH+g43E2DFzOjv5wZ/7HMh5eyJ5Ge68fvuM/J8PjY9kzp3e53iitgaAsQAAA=

metadata_json:
  {"categories":["data processing","integration","automation","data reconciliation"],"complexity":"simple","use_cases":["Deduplicate data between two sources","Find overlapping records across systems","Identify new or missing entries before syncs","Pre-process lists for sync or merge jobs","Internal data auditing and reconciliation"],"estimated_setup_minutes":10,"required_services":[],"key_features":["Field-based comparison using a user-specified key","Returns three structured outputs: common, onlyInA, onlyInB","Accepts JSON input with listA, listB and key","Preserves object records (returns one version for matches)","Can be embedded in larger n8n workflows"],"target_audience":["Data engineers","Data analysts","Integration engineers/developers (iPaaS)`,`Operations/IT staff"]}


name: Create AI Generated Videos 4x cheaper than veo3 with Google Sheets & Fal.AI
author_name: Maximiliano Rojas-Delgado
author_username: maxr
categories: []
created_at: 2025-06-18T22:02:00.703Z
updated_at: 2025-06-18T22:02:00.703Z
url: https://n8n.io/workflows/5034
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  Turn Your Ideas into Videos—Right from Google Sheets!

  This workflow helps you make cool 5-second videos using Fal.AI and Kling 2.1, just by typing your idea into a Google Sheet. You can even choose if you want your video to have sound or not. It’s super easy—no tech skills needed! 

  And the best?
  4x Cheaper than Veo3 model with similar quality!

  Why use this?

  Just type your idea in a sheet—no fancy tools or uploads.

  Get a video link back in the same sheet.

  Works with or without sound—your choice!

  How does it work?

  You write your idea, pick the video shape, and say if you want sound (true or false) in the Google Sheet.

  n8n reads your idea and asks Fal.AI to make your video.

  When your video is ready, the link shows up in your sheet.

  What do you need?

  A Google account and Google Sheets connected with service account (check this link for reference)

  A copy of the following Google Spreadsheet:
  Spreadsheet to copy

  An OpenAI API key

  A Fal.AI account with some money in it

  That’s it! Just add your ideas and let the workflow make the videos for you. Have fun creating!

  if you have any questions, just contact me at max@nervoai.com

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

workflow_json_compressed:
  [encoded data, 5272 characters]

metadata_json:
  {"categories":["automation","content creation","integration","AI video generation","no-code"],"complexity":"medium","use_cases":["Bulk short-video generation from spreadsheet input","Rapid prototyping of video ideas","Automating social media clip production","A/B testing and iterating creative concepts","Embedding video creation into content pipelines"],"estimated_setup_minutes":15,"required_services":["Google Sheets (service account)","Fal.AI account with credits (uses Kling 2.1)","OpenAI API key","n8n instance"],"key_features":["Create 5-second AI-generated videos from a Google Sheet row","Choose video shape and toggle sound (true/false)","Writes video link back into the same sheet","Cost-efficient (advertised ~4x cheaper than Veo3)","No-code workflow — no file uploads required, just enter ideas in the sheet"],"target_audience":["marketers","content creators","social media managers/growth teams」「non-technical users looking for no-code automation」「product/creative teams prototyping video concepts"]}


name: Generate & Auto-post AI Videos to Social Media with Veo3 and Blotato
author_name: Dr. Firas
author_username: drfiras
categories: []
created_at: 2025-06-18T22:44:00.392Z
updated_at: 2025-06-18T22:44:00.392Z
url: https://n8n.io/workflows/5035
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 19:34:45
description:
  Automate video creation with Veo3 and auto-post to Instagram, TikTok via Blotato

  Who is this for?

  This template is ideal for content creators, social media managers, YouTubers, and digital marketers who want to generate high-quality videos daily using AI and distribute them effortlessly across multiple platforms.

  It’s perfect for anyone who wants to scale short-form content creation without video editing tools.

  What problem is this workflow solving?

  Creating and distributing consistent video content requires:
  Generating ideas
  Writing scripts and prompts
  Rendering videos
  Manually posting to platforms

  This workflow automates all of that. It transforms one prompt into a professional AI-generated video and publishes it automatically — saving time and increasing reach.

  What this workflow does

  Triggers daily to generate a new idea with OpenAI (or your custom prompt).
  Creates a video prompt formatted specifically for Google Veo3.
  Generates a cinematic video using the Veo3 API.
  Logs the video data into a Google Sheet.
  Retrieves the final video URL once Veo3 finishes rendering.
  Uploads the video to Blotato for publishing.
  Auto-posts the video to Instagram, TikTok, YouTube, Facebook, LinkedIn, Threads, Twitter (X), Pinterest, and Bluesky.

  Setup

  Add your OpenAI API key to the GPT-4.1 nodes.
  Connect your Veo3 API credentials in the video generation node.
  Link your Google Sheets account and use a sheet with columns: Prompt, Video URL, Status.
  Connect your Blotato API key and set your platform IDs in the Assign Social Media IDs node.
  Adjust the Schedule Trigger to your desired posting frequency.

  How to customize this workflow to your needs

  Edit the AI prompt** to align with your niche (fitness, finance, education, etc.).
  Add your own branding overlays** using JSON2Video or similar tools.
  Change platform selection** by enabling/disabling specific HTTP Request nodes.
  Add a Telegram step** to preview the video before auto-posting.
  Track performance** by adding metrics columns in Google Sheets.

  📄 Documentation: Notion Guide

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

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.googleSheets","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.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolThink","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolThink","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  [encoded data, 8092 characters]

metadata_json:
  {"categories":["automation","social media","content creation","AI integration"],"complexity":"medium","use_cases":["Automatically generate short AI videos from text prompts","Auto-post generated videos to social channels","Scale social content production and scheduling","Repurpose spreadsheet-driven content into video posts","Automate caption/hashtag injection from a data source"],"estimated_setup_minutes":30,"required_services":["Veo3 (AI video generation) - API key","Blotato (social posting) - API key","Google Sheets (read access) - Google account / credentials","Target social platforms (Instagram, TikTok, YouTube, etc.) configured in Blotato"],"key_features":["Read post data (caption, prompt, schedule) from Google Sheets","Call Veo3 API to generate AI videos from text prompts","Upload and schedule/post generated videos via Blotato API","Multiple HTTP request nodes for orchestration and API calls","Configurable metadata mapping (titles, captions, hashtags) via Set node"],"target_audience":["social media managers","content creators and influencers","marketing teams and agencies"]}


name: Binance Spot Trader - Limit & Market Orders via API
author_name: Todsaporn Sangboon
author_username: nolifelover
categories: []
created_at: 2025-06-18T23:25:21.729Z
updated_at: 2025-06-18T23:25:21.729Z
url: https://n8n.io/workflows/5036
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  📈 How it works
  This n8n workflow allows you to interact with Binance Spot Trading API directly to:

  Place Limit Buy and Limit Sell orders
  Place Market Buy and Market Sell orders
  Query account info* and *open orders**
  Cancel all open orders** for a specific symbol

  All requests are signed using Binance's HMAC SHA256 signature method for secure trading.

  ⚙️ Setup Steps
  Create Binance API Credentials in n8n:
     Go to Credentials &gt; New
     Choose Binance API
     Add api_key and api_secret
     Save as Binance API

  Import this workflow into your n8n instance.

  Update default values:
     In Set Parameter nodes like LimitBuy Parameter, change:
       symbol (e.g. BTCUSDT)
       quantity, price as needed

  Run the workflow manually via the Execute workflow trigger.

  ✅ Notes
  Credential node is marked with instructions.
  HMAC signatures are automatically calculated before making each request.
  HTTP nodes are preconfigured for Binance API v3.

  🔒 No API key or secret is included.

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

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

metadata_json:
  {"categories":["automation","integration","trading","finance"],"complexity":"medium","use_cases":["Place limit buy and sell orders on Binance Spot","Place market buy and sell orders on Binance Spot","Query account information and open orders","Cancel all open orders for a given symbol","Automate simple trading workflows and order management"],"estimated_setup_minutes":15,"required_services":["n8n instance","Binance (Spot) API (api_key and api_secret)"],"key_features":["Limit and market order placement (buy/sell)","Query account info and list open orders","Cancel all open orders for a specific symbol","HMAC SHA256 request signing for secure Binance API requests","Preconfigured HTTP nodes for Binance API v3 and reusable Set/Parameter nodes"],"target_audience":["developers building trading automations","crypto traders automating order placement","DevOps/automation engineers integrating Binance into workflows"]}


name: Stock Market Information Assistant with Telegram, Yahoo Finance, and GPT-4 Nano
author_name: Archit Jain
author_username: architjn
categories: []
created_at: 2025-06-19T07:12:19.448Z
updated_at: 2025-06-19T07:12:19.448Z
url: https://n8n.io/workflows/5039
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:33
description:
  How it works

  Listens to Telegram messages to detect stock-related queries.
  Extracts company name and identifies its exact stock ticker symbol.
  Searches Yahoo Finance for stock info using the ticker.
  Fetches and formats the latest stock data like price and key stats.
  Sends a clean, simplified reply back to the user on Telegram.

  Set up steps
  Requires Telegram Bot Token and Apify API credentials.
  Import workflow to n8n and link both Apify actors (Google Search + Yahoo Finance).
  Link OpenRouter for AI and enable Telegram trigger.
  Takes ~10–15 min to connect services and test.
  Includes sticky notes with setup links and tutorial videos.

nodes_used:
  ["n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.httpRequestTool","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent"]

workflow_json_compressed:
  H4sIAAAAAAAAE61X224bRwz9FWGfRXcunJuemgZBELRJgNqogQZGwZnhyAtLu+5qncQw9O/FSq4lW7Ilp32Tdskzh4fkkHtX1bmaVL9O+c9pvryqfzubyvPz82pczbmnanJX1c2ipybxh8EuaJ2L18mjDDY7kViXkkUsJmuWlEjL6LS1RRWPLItGrywKESwjaQrVuOp5fj2jnt92nBen3N9cv23n1zPuOVeTvrvh5bhqaM7VpDrt23Q1+tCUtptTX7fN4E7TRTX5cjGumjbz8PNuHYIxmIp0BApNBpQhAgXJUNjlhCKjF7l6gD7jGU87mo/Ouno65W5Avr0e3jS+gRU0RFrwSX9vuLG7bhf1iszkixiLi3H1jeNl216tBCJtnTOSoDg2gBwsUEkMOfmUk9TGez1gUEdz7rlbVJO75frsP7hbrGDliVqO76PKJSjplAAnkAFt0eDJBTBRFF8U2SL0JqrP19z83t703I3eXlI/+thmnm1C+7nxzU+b+GbUTNMl1c3JbD6Yb7wfR6mUGCscIn2Z9gNp6WROmRhkIAdIJCHqrAEDk43F5eLNhvT5JTejd9853fScR/F29KZp+0vuRudtd1Vm7bdnc8Nrp3/tnkmRtYepn2zI65Qo6YCQRCJAkxJEnxF8ZOcihlhIbci/5350Vqcr7kafhieHte7bdrYV2RZVh0fprLbKw0UvbBIGijIR0EoEb5UA4UwsJdsoCm/IbnXS6N33vqPUt90RlOuN37bbFnXE1+usg3MaEYRzHlD4CESUwEqmEhWzLPJAZcv/XNroxTiIV5S2MoQ+ogUVYwC0ioE8IkgpNBtnrKAt1u/bdjrj0SlTly6fLePLvr/+nf++4UW/23hHqIpbBWGz5aSjhVwoAQrhIVpJICllNlyMzHbrFtxU7g+T9Melfpukyzmh4ggYIgMKSkBRCOAQMCsfYoxhQ/L0ocWeJbfgJ6SksEex0if4wEoIj0p5Gu5WB2ichkhWgYgBKcoYTBaPG38zn46R7axtZ49ZGivGSr0uv0F4TzaDVmQAC3uIUkQwHItN3kdktzvlDk63p+rh7mRzGgUFH8EHnQBjlhCKYfCZChtKLIp5zWQz5AT6FIDF0EmFNUShGaQqzhhJ1vktuU/7Ol3djj61PT9fBSube5OtcEBaMQa92+ZVapuem76aVNXzLW+MFMaFCCyFBmStIQYyoEIo0bmUXS57icofY4q7FXEcUSm4WPYETqMBDJghFnSgUJG12Ua1PQxO62HrGn3kedvdHnGRzleGv9yUwt153eSn00v747aEE73puOBUopIAEQkwWw1kVAYbDQuTZAjlkbJDt32k7or70ZvpIMdh1nRv92RWHR6yy4txRamvv/J6Kx1XC+77upmu8rHePOq2+dxl7qpJ9VUOifm6dl/1i/QRnQsZqLghuJjBp4yQrDdMqCVHqsZDZhtOA9QK+PHEmNxVc6oH0l/uVvvu4SG+sh9XdZP5ezURy4uL5fhJrid3FdV/ze//bEG/pPDG4yn4k5twjT5sOa/B7teX4y7y9nL1P0Lv7P/7pH4JeL/Ouw77cHev5b1oe6bzXpZ75uNevP2Vs5fgC3vBXuj9Hx7rfA3NeENTvn92fOIeOx51pDx45oH2OXjs4a+VfYI+swju0XK5/AdF8Baqkw8AAA==

metadata_json:
  {"categories":["automation","integration","data processing","chatbot","finance"],"complexity":"medium","use_cases":["On-demand stock lookups via Telegram","Quick investor/company fundamentals checks","Integrating AI to normalize/interpret user queries","Embedding stock info responses into chat/workflows"],"estimated_setup_minutes":15,"required_services":["Telegram Bot (Bot Token)","Apify (Google Search actor + Yahoo Finance actor)","OpenRouter (GPT-4 Nano)","n8n instance"],"key_features":["Listens to Telegram messages and detects stock-related queries","Extracts company name and resolves exact stock ticker using AI","Searches Yahoo Finance (via Apify) for ticker data","Fetches and formats latest price and key statistics","Sends simplified, clean replies back to the Telegram user"],"target_audience":["Developers / automation engineers","Product owners building chat-based features","Financial analysts and retail traders wanting quick lookups to chatbots"]}


name: Generate Deep Research Markdown Reports with GPT, Tavily Search, and Google Sheets
author_name: Archit Jain
author_username: architjn
categories: []
created_at: 2025-06-19T07:16:10.352Z
updated_at: 2025-06-19T07:16:10.352Z
url: https://n8n.io/workflows/5040
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:33
description:
  This workflow generates deep researched report in markdown format and saves it in Google Sheet, that I then use for generating blogs for my website - Architjn Blogs

  How it works
  User submits a search topic through a form.
  AI generates five deep-dive subtopics for that main topic.
  AI creates a research report intro, title, and table of contents based on those topics.
  Each subtopic is sent to a search API (Tavily) to collect top 5 sources.
  AI writes detailed Markdown content for each subtopic using retrieved sources.
  Final content, ToC, intro, and clickable sources are saved to a Google Sheet.

  Set up steps
  Requires connections to OpenRouter (AI), Tavily (search API), and Google Sheets.
  Import into n8n and connect credentials for the above services.
  Configure Google Sheet with proper column headers and grant edit access.
  Estimated setup time: 20–30 minutes with working API keys.
  Includes embedded instructions and markdown-style annotations for guidance.

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.splitOut","n8n-nodes-base.merge","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.splitOut","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.formTrigger","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.httpRequest","n8n-nodes-base.splitOut","n8n-nodes-base.code","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.aggregate","n8n-nodes-base.merge","n8n-nodes-base.aggregate","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","content generation","data processing"],"complexity":"complex","use_cases":["Automated long-form research report generation","Blog post drafting and content planning","Content research and source aggregation","SEO and topical deep-dive generation","Knowledge-base or documentation creation"],"estimated_setup_minutes":25,"required_services":["n8n (workflow platform)","OpenRouter (AI / LLM)","Tavily (search API)","Google Sheets"],"key_features":["Generates five deep-dive subtopics from a user prompt","Creates intro, title, and table of contents via AI","Queries Tavily to collect top sources for each subtopic","Writes detailed Markdown content with cited sources","Saves final Markdown, TOC, intro, and clickable sources to Google Sheets (structured columns)"],"target_audience":["Bloggers and content creators","Content marketers and SEO specialists","Researchers and knowledge managers producing summarized reports"]}


