# templates

name: Automate n8n User Invitations from a Google Spreadsheet
author_name: bangank36
author_username: bangank36
categories: []
created_at: 2025-03-20T12:24:06.239Z
updated_at: 2025-03-20T12:24:06.239Z
url: https://n8n.io/workflows/3233
scraped_at: 2025-12-24 13:02:47
description:
  This workflow retrieves all users from n8n, compares them against entries in a Google Sheets spreadsheet, and automatically creates new users when needed.  

  Once new users are created, invitation emails are sent automatically.  

  You can trigger the workflow manually or set it to run on a schedule to ensure continuous synchronization.  

  Spreadsheet Template  
  This workflow is designed to work with a Google Sheets structure inspired by Squarespace's newsletter block connection. You can modify the node settings to adapt to a different column format.  

  👉 Clone the sample sheet here  

  Suggested columns:  
  Submitted On  
  Email Address  
  Name  

  Requirements
  Credentials
  To use this workflow, you need:

  n8n API Key – to update users from n8n.
  Google Sheets API credentials – Required to get data from a spreadsheet.
  Configure Your n8n Instance  
  To make this workflow work with your n8n instance, update the API endpoint:  

  🔧 Edit Global node 👇  
  Change n8n_url to match your instance URL:  
  Authentication Guide  

  Explore More Templates
  👉 Check out my other n8n templates

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

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


name: Get Real-time NFT Insights via Telegram with OpenSea & AI (Main Interface)
author_name: Don Jayamaha Jr
author_username: don-the-gem-dealer
categories: []
created_at: 2025-03-20T14:59:24.722Z
updated_at: 2025-03-20T14:59:24.722Z
url: https://n8n.io/workflows/3236
scraped_at: 2025-12-24 13:02:47
description:
  Track NFT market trends, collections, and trades in real time—directly from Telegram! This master workflow integrates the OpenSea API, GPT-4o-mini AI, and Telegram, allowing users to request natural-language NFT analytics and receive structured insights instantly.

  Whether you're an NFT trader, collector, or market analyst, this Telegram-native assistant brings you on-demand market intelligence—powered by OpenSea and AI.

  &gt; ⚠️ Important: This workflow requires three sub-workflows to function properly. These must be downloaded and published in your n8n instance.

  🧩 Required Sub-Workflows  
  To activate this template, download and publish the following workflows:

  Analyze NFT Market Trends with AI-Powered OpenSea Analytics Agent Tool  
  Get Real-time NFT Insights with OpenSea AI-Powered NFT Agent Tool  
  Get Real-time NFT Marketplace Insights with OpenSea Marketplace Agent Tool  

  📌 You can also find these by visiting my Creator profile:  
  👉 https://n8n.io/creators/don-the-gem-dealer/

  How It Works  
  A Telegram bot receives a message (e.g., “Top sales for Azuki”).  
  The AI router in this workflow determines which agent should process the request:  
     Marketplace Agent → Listings, offers, and orders  
     Analytics Agent → Sales volume, price trends, wallet behavior  
     NFT Agent → Metadata, traits, ownership info  
  The selected agent queries the OpenSea API using your API key.  
  The response is processed using GPT-4o-mini, formatted, and sent back via Telegram.

  What You Can Do with This Agent  
  🔹 Discover undervalued NFTs based on trait rarity and price  
  🔹 Track market trends for any collection in real time  
  🔹 Compare collection performance by volume, sales, and listings  
  🔹 Analyze flipping trends and whale activity across wallets  
  🔹 Retrieve NFT ownership and metadata instantly  
  🔹 View trait-specific offers for insight into rarity-driven demand  

  Example Queries You Can Use  
  ✅ "What are the cheapest NFTs in the Pudgy Penguins collection?"  
  ✅ "Get sales volume for Azuki and CloneX over the last 30 days."  
  ✅ "Who owns Bored Ape #456?"  
  ✅ "Show the best current offers for Moonbirds."  

  Set Up Steps  
  Create a Telegram Bot  
     Use @BotFather to create your bot and get the API token.  
  Get an OpenSea API Key  
     Apply for your API key via the OpenSea Developer Portal.  
  Configure n8n Credentials  
     Add your Telegram Bot and OpenSea API Key under Credentials in n8n.  
  Download Required Sub-Workflows  
     Install and publish the following workflows:  
       Analytics Agent Tool  
       NFT Agent Tool  
       Marketplace Agent Tool  
  Deploy & Test  
     Chat with your Telegram bot. Try: "Compare BAYC and Azuki volume" or "Show listings for Doodles."

  ✅ Final Notes  
  &gt; If your queries don’t respond correctly, make sure all three sub-workflows are installed and published, not just saved.

  🚀 Dominate the NFT market with AI-powered OpenSea intelligence—right from your Telegram inbox!

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

workflow_json_compressed:
  [encoded data, 9680 characters]


name: Analyze NFT Market Trends with AI-Powered OpenSea Analytics Agent Tool
author_name: Don Jayamaha Jr
author_username: don-the-gem-dealer
categories: []
created_at: 2025-03-20T15:04:08.828Z
updated_at: 2025-03-20T15:04:08.828Z
url: https://n8n.io/workflows/3237
scraped_at: 2025-12-24 13:02:46
description:
  Get deep insights into NFT market trends, sales data, and collection statistics—all powered by AI and OpenSea! This workflow connects GPT-4o-mini, OpenSea API, and n8n automation to provide real-time analytics on NFT collections, wallet transactions, and market trends. It is ideal for NFT traders, collectors, and investors looking to make informed decisions based on structured data.  

  How It Works  
  Receives user queries via Telegram, webhooks, or another connected interface.  
  Determines the correct API tool based on the request (e.g., collection stats, wallet transactions, event tracking).  
  Retrieves data from OpenSea API (requires API key).  
  Processes the information using an AI-powered analytics agent.  
  Returns structured insights in an easy-to-read format for quick decision-making.  

  What You Can Do with This Agent  
  🔹 Retrieve NFT Collection Stats → Get floor price, volume, sales data, and market cap.  
  🔹 Track Wallet Activity → Analyze transactions for a given wallet address.  
  🔹 Monitor NFT Market Trends → Track historical sales, listings, bids, and transfers.  
  🔹 Compare Collection Performance → View side-by-side market data for different NFT projects.  
  🔹 Analyze NFT Transaction History → Check real-time ownership changes for any NFT.  
  🔹 Identify Market Shifts → Detect sudden spikes in demand, price changes, and whale movements.  

  Example Queries You Can Use  
  ✅ "Get stats for the Bored Ape Yacht Club collection."  
  ✅ "Show me all NFT sales from the last 24 hours."  
  ✅ "Fetch all NFT transfers for wallet 0x123...abc on Ethereum."  
  ✅ "Compare the last 3 months of sales volume for Azuki and CloneX."  
  ✅ "Track the top 10 wallets making the most NFT purchases this week."  

  Available API Tools & Endpoints  
  1️⃣ Get Collection Stats → /api/v2/collections/{collection_slug}/stats (Retrieve NFT collection-wide market data)  
  2️⃣ Get Events → /api/v2/events (Fetch global NFT sales, transfers, listings, bids, redemptions)  
  3️⃣ Get Events by Account → /api/v2/events/accounts/{address} (Track transactions by wallet)  
  4️⃣ Get Events by Collection → /api/v2/events/collection/{collection_slug} (Get sales activity for a collection)  
  5️⃣ Get Events by NFT → /api/v2/events/chain/{chain}/contract/{address}/nfts/{identifier} (Retrieve historical transactions for a specific NFT)  

  Set Up Steps  
  Get an OpenSea API Key  
     Sign up at OpenSea API and request an API key.  
  Configure API Credentials in n8n  
     Add your OpenSea API key under HTTP Header Authentication.  
  Connect the Workflow to Telegram, Slack, or Database (Optional)  
     Use n8n integrations to send alerts to Telegram, Slack, or save results to Google Sheets, Notion, etc.  
  Deploy and Test  
     Send a query (e.g., "Azuki latest sales") and receive instant NFT market insights!  

  Stay ahead in the NFT market—get real-time analytics with OpenSea’s AI-powered analytics agent!  

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

workflow_json_compressed:
  [encoded data, 6760 characters]


name: Get Real-time NFT Insights with OpenSea AI-Powered NFT Agent Tool
author_name: Don Jayamaha Jr
author_username: don-the-gem-dealer
categories: []
created_at: 2025-03-20T15:07:10.949Z
updated_at: 2025-03-20T15:07:10.949Z
url: https://n8n.io/workflows/3238
scraped_at: 2025-12-24 13:02:47
description:
  Instantly access NFT metadata, collections, traits, contracts, and ownership details from OpenSea! This workflow integrates GPT-4o-mini AI, OpenSea API, and n8n automation to provide structured NFT data for traders, collectors, and investors.  

  How It Works  
  Receives user queries via Telegram, webhooks, or another connected interface.  
  Determines the correct API tool based on the request (e.g., user profile, NFT metadata, contract details).  
  Retrieves data from OpenSea API (requires API key).  
  Processes the information using an AI-powered NFT insights engine.  
  Returns structured insights in an easy-to-read format for quick decision-making.  

  What You Can Do with This Agent  
  🔹 Retrieve OpenSea User Profiles → Get user bio, links, and profile info.  
  🔹 Fetch NFT Collection Details → Get collection metadata, traits, fees, and contract info.  
  🔹 Analyze NFT Metadata → Retrieve ownership, rarity, and trait-based pricing.  
  🔹 Monitor NFTs Owned by a Wallet → Track all NFTs under a specific account.  
  🔹 Retrieve Smart Contract Data → Get blockchain contract details for an NFT collection.  
  🔹 Identify Valuable Traits → Fetch NFT trait insights and rarity scores.  

  Example Queries You Can Use  
  ✅ "Get OpenSea profile for 0xA5f49655E6814d9262fb656d92f17D7874d5Ac7E."  
  ✅ "Retrieve details for the 'Azuki' NFT collection."  
  ✅ "Fetch metadata for NFT #5678 from 'Bored Ape Yacht Club'."  
  ✅ "Show all NFTs owned by 0x123... on Ethereum."  
  ✅ "Get contract details for NFT collection 'CloneX'."  

  Available API Tools & Endpoints  
  1️⃣ Get OpenSea Account Profile → /api/v2/accounts/{address_or_username} (Retrieve user bio, links, and image)  
  2️⃣ Get NFT Collection Details → /api/v2/collections/{collection_slug} (Get collection-wide metadata)  
  3️⃣ Get NFT Metadata → /api/v2/chain/{chain}/contract/{address}/nfts/{identifier} (Retrieve individual NFT details)  
  4️⃣ Get NFTs Owned by Account → /api/v2/chain/{chain}/account/{address}/nfts (List all NFTs owned by a wallet)  
  5️⃣ Get NFTs by Collection → /api/v2/collection/{collection_slug}/nfts (Retrieve all NFTs from a specific collection)  
  6️⃣ Get NFTs by Contract → /api/v2/chain/{chain}/contract/{address}/nfts (Retrieve all NFTs under a contract)  
  7️⃣ Get Payment Token Details → /api/v2/chain/{chain}/payment_token/{address} (Fetch info on payment tokens used in NFT transactions)  
  8️⃣ Get NFT Traits → /api/v2/traits/{collection_slug} (Retrieve collection-wide trait data)  

  Set Up Steps  
  Get an OpenSea API Key  
     Sign up at OpenSea API and request an API key.  
  Configure API Credentials in n8n  
     Add your OpenSea API key under HTTP Header Authentication.  
  Connect the Workflow to Telegram, Slack, or Database (Optional)  
     Use n8n integrations to send alerts to Telegram, Slack, or save results to Google Sheets, Notion, etc.  
  Deploy and Test  
     Send a query (e.g., "Azuki latest sales") and receive instant NFT market insights!  

  Unlock powerful NFT analytics with AI-powered OpenSea insights—start now!  

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

workflow_json_compressed:
  [encoded data, 7452 characters]


name: Get Real-time NFT Marketplace Insights with OpenSea Marketplace Agent Tool
author_name: Don Jayamaha Jr
author_username: don-the-gem-dealer
categories: []
created_at: 2025-03-20T15:09:34.975Z
updated_at: 2025-03-20T15:09:34.975Z
url: https://n8n.io/workflows/3239
scraped_at: 2025-12-24 13:02:46
description:
  Track NFT listings, offers, orders, and trait-based pricing in real time! This workflow integrates OpenSea API, AI-powered analytics (GPT-4o-mini), and n8n automation to provide instant insights into NFT trading activity. Ideal for NFT traders, collectors, and investors looking to monitor the market and identify profitable opportunities.  

  How It Works  
  A user submits a query about NFT listings, offers, or order history.  
  The OpenSea Marketplace Agent determines the correct API tool:  
     Retrieve active NFT listings for a collection.  
     Fetch valid offers for individual NFTs or entire collections.  
     Identify the cheapest NFT listings by collection or token ID.  
     Track the highest offer made for a single NFT.  
     Access detailed order history for a transaction.  
  The OpenSea API (requires API key) is queried to fetch real-time data.  
  The AI engine processes and structures the response, making it easy to interpret.  
  The NFT marketplace insights are delivered via Telegram, Slack, or stored in a database.  

  What You Can Do with This Agent  
  🔹 Find the Best NFT Listings → Retrieve the cheapest available listings in any collection.  
  🔹 Track Offers on NFTs → See all active offers, including highest bids.  
  🔹 Analyze Collection-Wide Market Data → Compare listings, offers, and sales activity.  
  🔹 Retrieve Order Details → Search by order hash to check buyer, seller, and transaction status.  
  🔹 Fetch NFT Trait-Based Offers → Identify rare traits that receive premium bids.  
  🔹 Monitor Multi-Chain Listings → Works across Ethereum, Polygon (Matic), Arbitrum, Optimism, and more.  

  Example Queries You Can Use  
  ✅ "Show me the 10 cheapest listings for Bored Ape Yacht Club."  
  ✅ "Find the highest bid for CryptoPunk #1234."  
  ✅ "Track all open offers for Azuki NFTs."  
  ✅ "Retrieve details for this OpenSea order: 0x123abc... on Ethereum."  
  ✅ "List all NFTs for sale in the 'CloneX' collection."  

  Available API Tools & Endpoints  
  1️⃣ Get All Listings by Collection → /api/v2/listings/collection/{collection_slug}/all (Fetches active listings for a collection)  
  2️⃣ Get All Offers by Collection → /api/v2/offers/collection/{collection_slug}/all (Retrieves all offers for a collection)  
  3️⃣ Get Best Listing by NFT → /api/v2/listings/collection/{collection_slug}/nfts/{identifier}/best (Finds the lowest-priced NFT listing)  
  4️⃣ Get Best Listings by Collection → /api/v2/listings/collection/{collection_slug}/best (Fetches the cheapest listings per collection)  
  5️⃣ Get Best Offer by NFT → /api/v2/offers/collection/{collection_slug}/nfts/{identifier}/best (Retrieves the highest offer for an NFT)  
  6️⃣ Get Collection Offers → /api/v2/offers/collection/{collection_slug} (Shows collection-wide offers)  
  7️⃣ Get Item Offers → /api/v2/orders/{chain}/{protocol}/offers (Fetches active item-specific offers)  
  8️⃣ Get Listings by Chain & Protocol → /api/v2/orders/{chain}/{protocol}/listings (Retrieves active listings across blockchains)  
  9️⃣ Get Order Details by Hash → /api/v2/orders/chain/{chain}/protocol/{protocol_address}/{order_hash} (Checks order status using an order hash)  
  🔟 Get Trait-Based Offers → /api/v2/offers/collection/{collection_slug}/traits (Fetches offers for specific NFT traits)  

  Set Up Steps  
  Get an OpenSea API Key  
     Sign up at OpenSea API and request an API key.  
  Configure API Credentials in n8n  
     Add your OpenSea API key under HTTP Header Authentication.  
  Connect the Workflow to Telegram, Slack, or Database (Optional)  
     Use n8n integrations to send alerts to Telegram, Slack, or save results to Google Sheets, Notion, etc.  
  Deploy and Test  
     Send a query (e.g., "Get the best listing for BAYC #5678") and receive instant insights!  

  Stay ahead of the NFT market—gain powerful insights with AI-powered OpenSea analytics! 

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

workflow_json_compressed:
  [encoded data, 7284 characters]


name: Smart Email Classifier & Auto-Responder with AI
author_name: Ian Dikhtiar
author_username: ian-dikhtiar
categories: []
created_at: 2025-03-20T18:06:02.934Z
updated_at: 2025-03-20T18:06:02.934Z
url: https://n8n.io/workflows/3242
scraped_at: 2025-12-24 13:02:46
description:
  This n8n workflow automates email management by classifying incoming messages, drafting replies, and sending alerts—all powered by AI.  

  Features  

  🚀 AI-Powered Email Categorization  
  Classifies emails into Spam, Important, Promotion, Notification, Personal, Call Request, Needs Reply.  
  Uses GPT-4o to determine whether an email requires a response.  

  ✉️ Automated Smart Replies  
  Generates context-aware responses using AI.  
  Supports email threading for seamless conversations.  

  🔔 Real-Time Notifications  
  Telegram Alerts** for important emails.  
  Gmail Drafts** auto-generated for quick replies.  

  🛠️ Google Calendar Integration  
  Schedules follow-ups based on email content.  

  Setup Instructions  
  Connect Gmail, OpenAI, Telegram, and Google Calendar.  
  Set up classification categories and notification preferences.  
  Customize AI response styles if needed.  
  Run the workflow—watch it organize your inbox effortlessly.  

  Who Should Use This?  
  Busy Professionals**: Focus on high-priority emails.  
  Customer Support**: Manage inquiries with quick replies.  
  Sales Teams**: Respond to leads instantly.  

  Keep your inbox under control with this automation! 🚀  

nodes_used:
  ["@n8n/n8n-nodes-langchain.sentimentAnalysis","@n8n/n8n-nodes-langchain.lmChatAzureOpenAi","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.sentimentAnalysis","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.set","n8n-nodes-base.gmailTool","n8n-nodes-base.gmailTool","@n8n/n8n-nodes-langchain.sentimentAnalysis","n8n-nodes-base.noOp","n8n-nodes-base.telegram","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.gmailTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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


name: Analyze Brand Mentions on Reddit with GPT-4o Mini and Notion Integration
author_name: Ian Dikhtiar
author_username: ian-dikhtiar
categories: []
created_at: 2025-03-20T18:10:59.601Z
updated_at: 2025-03-20T18:10:59.601Z
url: https://n8n.io/workflows/3244
scraped_at: 2025-12-24 13:02:46
description:
  The Reddit Comment Analyzer is an n8n automation that helps businesses monitor brand mentions, analyze sentiment, and store insights in Notion.  

  🚀 Features  

  💬 Automated Comment Sourcing  
  Tracks brand mentions** (including misspellings) across Reddit.  
  Filters relevant comments** to avoid noise.  

  📊 AI-Powered Sentiment & Emotion Analysis  
  Categorizes sentiment** as Positive, Neutral, Negative, or Unrelated.  
  Identifies emotions** like frustration, excitement, or trust.  

  ✅ Actionable Insights & Recommendations  
  Suggests responses** based on comment sentiment.  
  Provides AI-driven insights** for brand strategy.  

  📂 Seamless Notion Integration  
  Automatically logs comments & analysis** in a Notion database.  
  Prevents duplicates** by checking against existing records.  

  💡 Who is it for?  
  Marketing Teams**: Monitor brand perception & adjust messaging.  
  Customer Support**: Address concerns & engage with users.  
  Social Media Managers**: Track discussions and optimize engagement.  

  🔥 How to Get Started  
  1️⃣ Enter your brand name & business details  
  2️⃣ Connect Reddit & Notion accounts  
  3️⃣ Run the automation & gain instant insights  

  Optimize your brand strategy with real-time Reddit insights! 🚀  

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/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.notion","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.reddit","n8n-nodes-base.splitInBatches","n8n-nodes-base.splitOut","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.merge","n8n-nodes-base.notion","n8n-nodes-base.merge","n8n-nodes-base.reddit","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote"]

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


name: Build a RAG-powered AI Assistant with OpenAI, Google Drive & Supabase Vector DB
author_name: Zakaria Ben
author_username: nocodeinnovate
categories: []
created_at: 2025-03-20T21:22:19.949Z
updated_at: 2025-03-20T21:22:19.949Z
url: https://n8n.io/workflows/3250
scraped_at: 2025-12-24 13:02:41
description:
  Target Audience

  This guide is designed for developers, data scientists, and AI enthusiasts who want to create intelligent chatbots capable of understanding and using custom data. Whether you are building a research assistant, a customer support bot, or an internal knowledge base tool, this workflow helps you integrate your own documents into an AI chat system.

  What Is RAG and Why Use It?

  Retrieval-Augmented Generation (RAG) is an AI architecture that combines information retrieval with text generation. Instead of relying solely on a model’s built-in knowledge, RAG retrieves relevant data from external sources—such as your uploaded documents—and feeds it into the AI’s reasoning process.
  This approach solves a major limitation of traditional language models: their inability to access or recall up-to-date or proprietary information. By using RAG, your chatbot can deliver accurate, context-aware answers drawn directly from your specific data.

  Use Case Example

  Consider a scenario where your organization has a collection of internal reports, manuals, or research documents. With RAG, your AI chatbot can answer detailed questions about these materials without exposing sensitive data externally. This setup is ideal for teams working in customer support, technical documentation, education, or data analysis.

  Workflow Overview
  Step 1: Upload Your Document

  Add your document to the Supabase Vector Store using the "Add Document" feature after downloading or linking it via Google Drive.

  Step 2: Data Retrieval

  The workflow retrieves and embeds your document’s content into the vector database for efficient search and retrieval.

  Step 3: AI Query Processing

  When you ask a question, the AI retrieves the most relevant context from the Supabase Vector Store based on semantic similarity.

  Step 4: Response Generation

  The AI combines the retrieved context with its generative capabilities to produce accurate, data-driven responses tailored to your input.

  Prerequisites

  Before setting up the workflow, ensure you have the following:

  A GitHub account

  A Supabase account

  A Google Drive document containing your data

  Basic understanding of APIs and environment configuration

  Setup Instructions
  Step 1: Create Accounts

  Create a GitHub account and clone the repository containing the workflow. Then, create a Supabase account and a new project to generate your API keys.

  Step 2: Prepare Your Data

  Upload your data to Google Drive and make it downloadable. Add the document to the Supabase Vector Store using the “Add Document” feature.

  Step 3: Configure the Environment

  Set your Supabase keys as environment variables in your workflow configuration.

  Step 4: Run the Workflow

  Execute the workflow to connect your document with the AI agent. Once configured, you can start chatting with the AI agent—your responses will now be powered by your own data.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.googleDrive","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.memoryPostgresChat"]

workflow_json_compressed:
  H4sIAAAAAAAAE61X227bRhD9FYLPWnfv3PVTg7oIAjRNURtNi8Io9jKUiUikQVK2U0NAPqP9vXxJZyVZkiVZppA+CBCluZyZnTl7+JhXMT/PL97f/H3/kYbfH97FXyrR5qN8Cr3Lzx/zqu56Vwd4l+yYN95F4GBY5J4yL4yTZVBKGGo8LaJzWoMxMnAB2utIwRrBPAPunRcin4/y2k0BQ13B9HbiesguZ7fOuw6yX5quH7fQYfLejbv8/M9rtG4ipK+PS6CUAbWq4MRbHokMBoiRjBPnnGSiKBn1Nl/n+HgDdRZuXJ9NoevcGLIWAlR3EFOOz7fJ5vva1N/hhywykYmrx+hR1WfJ76qtxmNI7bhtuqqvmhqhEE7NSAiN6O7B3zTNp0VvFKWOF1oTHYwjMipGvKOeSCe0DUIzQ1kK5FoE10OLVT3OlzB+w6dFbHbG5qNVqTGC1pYHEhUAkehPLOWGgGLCKmfABb0p9cMt1G/eZT+kYt9jJZMBFU6myXzhWe2UKM1ICn79Kly+hmtKaq1BpJQyRSQtGHHcRBIoF0IWVjBmNnB/nHqIsarHXbZEPgAurH0OQVbcjLSkp0AuZNTgpSRgtSVSWUGMY4FA6XGImTKRbg3T26YZTyC7aHF+Nmg3QNMMn40XRk82W/CYHln7akPFGpt3mqbNIlxpQ6TniE0FSrTWzpWemiKGI+1k39xPLumIcaZPaWiUkZeM4aG7UhPJrSIOfyOClcKXDILzfgP6Ako3m/TZhetd9lODvNIOQB2bMJtC3a+8k/Padwu+0GYY/DV47n3hGBSkUIITKZ0itgic6DIClTJgTXQD/lcIMwxxB2nlWhcwfHYFD312eTup+n5QKT3aP5mv463DXW39+7w2idvJJDXDawuFidEyQaxRSJsxFMRhRcSXpfZOuUg526XNSRU+4XBkX7/8cwVdn9037ady0tx//fLvi+M/dfXMTV5mzQErsAFtfGQqBiBeiUSjoIkrLS4Dcr0ESbX1fAP6ske8n7Ofm/7l7ewWNiuTbWxajozc62cemrrHUcNA+ZHeel3w4ARR3gdkEWlx6HlJZKmpKEteCG8OwmQn4+T8G3AyWUYkY00CK5CgtYh4nwCSH863506raA+3k5+ME6+OEd+fz2E4FYKyePCEB+QPiXc6MYUzRFG8c30IEcXFQZziZJxWjwTfuzKGwfTBRUMRpudJiVgcUWs09lQZ5qRCHSTUFl28eZvh9fym66okp/oB7IByZWG33dfEaa+v/ZlZoxQl55Ybi9unBOolgSLCm4DMpnRpOUJn5Tap9W0FyGmujtntrLvJnti2GwD4DkLftJf4gSdNtz8W8hRKttzziG1GSaWQkj2KK+uFJsKr6CwDHIWwPQpNmwjrf8WM1+9prFV4hvrX481XeOQqlfjLBUuoNFYYJpI+3mD+o5m1K9EG06b9PADydGH4JJaT747SKPRKnb4yJWKONnjVJK1yXrpJB6O8g75PiiCtATzgnZSCfmjT9Xqe37G0D3fLCAvN6zQLMsaQGA8pOmpHrARHSiMLVCgClE4HhAtVY6PRaxH4mZLC5ymWhcBR46daj5/kwnaEbyURHvJzOr++Rkh7XcSgrvprunrYivzyHm7sd6Pva9Vl+LV+ep5hyA49897Nty/ll/nSCMyQFVa/Da3qudurxbGj1R05maM1HdJ6yzxPkU5Is3bZzXLkfe/QmL3ctoNTduxkl7X0TXPCwSys95O8pitXqbbV4XbKo6p61/FwA48pv0N9PPxmdKCH8/l/9m2oPnAQAAA=


name: Sync Squarespace Newsletter Signups to Mailchimp via Google Sheets
author_name: bangank36
author_username: bangank36
categories: []
created_at: 2025-03-21T00:14:00.216Z
updated_at: 2025-03-21T00:14:00.216Z
url: https://n8n.io/workflows/3251
scraped_at: 2025-12-24 13:02:47
description:
  This workflow captures Squarespace newsletter signups in a Google Sheet and automatically creates new Mailchimp contacts in the selected audience.  

  It overcomes the limitation in Squarespace’s native Mailchimp integration, which only supports new, empty audiences.  

  You can trigger the workflow manually or schedule it for continuous synchronization.  

  Step-by-step tutorial
  First, you need to connect Squarespace newsletter block submission to Google Drive
  In Mailchimp node, choose your targeted audience in List Name or ID
  Connect a Squarespace Form to Google Drive  
  To connect a form to Google Drive:  

  In the form's storage options, click Connect on Google Drive.  
  Log into your Google account.  
  Click Allow to permit Squarespace to connect to Google Drive.  
  Enter a Spreadsheet Name. This creates a new spreadsheet for your form submissions.  

  Columns in my sheet:  
  Submitted On  
  Email Address  
  Name  

  This structure is inspired by Squarespace’s newsletter block connection, but you can modify it based on your preferred data format.  

  👉 Clone my Google Sheets template  

  Requirements  

  Credentials  

  To use this workflow, you need:  

  Mailchimp API Key** – Required to add contacts to Mailchimp.  
  Google Sheets API credentials** – Required to retrieve signups from the spreadsheet.  

  📌 Mailchimp API Authentication Guide  

  Explore More Templates  

  👉 Check out my other n8n templates

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

workflow_json_compressed:
  H4sIAAAAAAAAE71W227bRhD9lQVTIC1AyrxTFBAUSuKkDnxpIjtJYwvGcncosSaXDHdpRTYE5DPa38uXdJa0JTmWXBdF+yRouTvnzMyZy7VRgKLG4NrIhFRUMNjjxsCA0PMhDPspOCmLPRoFzE9dGqXM5pT37YhRz+knURwGvhNEQHkSB1Hfj0PKEhaFhmkoKKqcKnhRA5cjUE31osQTUIAAqm5gYRqi5CCNwSmia1QapEHoOtRKuM8sP0j6VgJ2bEHCOXU8SBIP0LKgBeDtD1MQhOUZu8jEhHz7+scxSEVmZX2R5uXs29c/NYl5pa+KvrBaLCuhEnoFFQ3Nj+tsMoEab1WlzFRWCmRiuX3bdFx7jKe0RiAFNTK8XnS23uO/9qKzMG9Ix74fpTb3LScBz/KTPrMSJ3ItL037QZi6ThwlK9IjNgXe5EBW6Js5ypuL21laTniPplHjky6beHJJcx3cxXhxj37PXTrgpyn37DS0Qoy+5buMW3HqMMuOkqCPiQXPcdccUBjwOTksFTjbybeX9J3veEc+8nY38GZlXtbGwDeNWcbV1Bh4kdNz4jiwI9f2Xc/um8YUsslUGYPQtnv9vm/HgR9GTmjiY/RW4BfjyROCekPVkQOa5WyaFRXRXylTRDPjpBRk9LmhNciKMiACZhI1iTTOxPE0k0v9kFmW52QCast1IrOJaCpJqOCEdZj4dQNuJoiaAplkl6jXYcMzwCrTPJZXz8QNeHkJNSsLaB/kWZEpqiNHElAzgLvM07IuOvQ7kAJY+2Q2hVqj5HNNyyRYjWpO6C08o9oqaTAkGv23smmP6qYju4wCWuJQaJSyJsmc3MpSP8Jgjyr0nMspYJxuC77zBkh3ioltCoFEkQ22mCrD37Qui21hTfKSXaw5YpKkUWR+w49NqZh04dFyI6oklNNKtaG/hdKRoUrTeJGXort9KqluPjekdGzGP06VquRgZ4eXTPYmZTnJoYfR35Erp+QO33FmmXvCEj/xArCttEmtOJQHYn51nCp7+PLKO5jx3XP2+vyDeLsDPFM/N7J6Jqe0xr7005mwyKhJMJXY+MiROFP6ZLfAnJEh5xgB2R0d6vra3mYimnrcdiMrTbEt+ozaVt/HrmOHPEm92Hahb69V6RbNaiJSm5Zba7cLxKj1/m712ub9ui0r1VprO2QbstYP/HJ+XuddozeNAs0jUp5JhSaxLTX67yTjzzRnRrWo3oFscnWiHxmPzUww9D59uNp7nh4d7vsn587H128ulRz1f1EHb8P4c1194cGLYD8cXkzazDzZBHl4EzJt1dEZQNSmwH6iJ+Fj/PgnNP5Xd1sh8hobj+QXm73WyV+pwtCDApsZR+8zmrcZXtfD0bBRU3dYZe2I0bJ8M9mLUcvJLHgpnn989+tKgq/bd6R7SChjZYMt+t4k8nvBUuOpnYLLfNty48ixfDvE+R8ktoULRoQDKkjTaG0S7ZdlRY6wYxJAv0iG/Wf7QKryTO2J51RhBL6TNY6jh4X9PWVvSRgSyl1uI8MwwdnPgVkxeInFY5aEjPmUps6KMJZ726cKKBJkjb1r2bkfWFVWN0qxW9d6SrYDLxMNtP+PGlU16q5PAc7Z+0uMAdocvn92fU1++F2W4vTpnU70dEwWi9tvvbqcnYum5bpYoH3cD1WDdgwUjGR1luAmZ64FylBZgSsYNtpROxvvAq03wRZHl1oB9QReZZBzedKKau3gvS6vbju8CeCrw+HB7lrhLa33tJpbk+MNCl7GcF24u+HFu0/7w6PZ5eGXV9Xh1SpNq3G6VbSOadB8Rueyi/1LqlfoFOFgMW7XkZvh1cLfW/k6SjpN2rWupfyTht0+NnHF4/DFGNiL8Rj5baqGNaCxucJ6lA43gjz0cpNXD5boPQTztAX5+73+PwngIwz8exdRnou/AIceNhNzDQAA


name: Automate LinkedIn Contact Requests & Icebreaker with Unipile and Google sheets
author_name: PollupAI
author_username: Pollup
categories: []
created_at: 2025-03-21T08:52:28.419Z
updated_at: 2025-03-21T08:52:28.419Z
url: https://n8n.io/workflows/3258
scraped_at: 2025-12-24 13:02:47
description:
  Automate your LinkedIn Contact Requests and send them an Icebreaker

  Disclaimer: this workflow only works on self-hosted instances due to the file system usage.

  Who is this for?
  This n8n template is designed for professionals, recruiters, and marketers who must automate LinkedIn data population and contact request processes. It is particularly useful for those looking to streamline their outreach efforts and manage LinkedIn connections more efficiently.

  What problem is this workflow solving? / Use Case
  The workflow addresses the challenge of manually managing LinkedIn connections and sending contact requests. By automating these tasks, users can save time, reduce errors, and ensure consistent follow-ups with potential clients, partners, or candidates.

  What this workflow does
  This template automates the process of populating LinkedIn data and sending contact requests. After the connection request has been accepted, it sends a predefined "icebreaker". Please note that you are limited to 150 invitations per week from a free LinkedIn account, but you can set up to 10 accounts for $55 / month. 

  Setup
  You will have to create an account at Unipile. You can use this link to create it: Create your account
  Import the Template: Import the provided template into your n8n instance.
  Make a copy of the Google sheet into your Google account. you can find a template here
  Set Up: Follow the instructions inside the workflow to create and configure the Workflow as needed.
  Test the Workflow: Create a LinkedIn user and run the workflow to ensure it populates data and sends contact requests correctly.
  How to customize this workflow to your needs
  Customize Contact Messages**: Personalize the contact request or Icebreaker messages to increase engagement.
  Integrate with Other Tools**: Add additional nodes to integrate with CRM systems or other marketing tools for enhanced functionality.
  Monitor and Optimize**: Regularly review the workflow's performance and make adjustments to improve efficiency and effectiveness.


  By following this setup and customization guide, users can leverage this n8n template to enhance their LinkedIn outreach and connection management processes.

nodes_used:
  ["n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.formTrigger","n8n-nodes-base.form","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.convertToFile","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.extractFromFile","n8n-nodes-base.extractFromFile","n8n-nodes-base.readWriteFile","n8n-nodes-base.readWriteFile","n8n-nodes-base.readWriteFile","n8n-nodes-base.extractFromFile","n8n-nodes-base.readWriteFile","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote"]

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


name: Automate LinkedIn Candidates Sourcing with Google X-ray Boolean Search
author_name: Abdullah Maftah
author_username: abdullah
categories: []
created_at: 2025-03-21T10:28:49.832Z
updated_at: 2025-03-21T10:28:49.832Z
url: https://n8n.io/workflows/3259
scraped_at: 2025-12-24 13:02:45
description:
  Auto Source LinkedIn Candidates with GPT-4 Boolean Search & Google X-ray  

  How It Works:  

  User Input:  
     The user pastes a job description or ideal candidate specifications into the workflow.  

  Boolean Search String Generation:  
     OpenAI processes the input and generates a precise LinkedIn Boolean search string formatted as:  
       site:linkedin.com/in ("Job Title" AND "Skill1" AND "Skill2")  
     This search string is optimized to find relevant LinkedIn profiles matching the provided criteria.  

  Google Sheet Creation:  
     A new Google Sheet is automatically created within a specified document to store extracted LinkedIn profile URLs.  

  Google Search Execution:  
     The workflow sends a search request to Google using an HTTP node with the generated Boolean string.  

  Iterative Search & Data Extraction:  
     The workflow retrieves the first 10 results from Google.  
     If the desired number of LinkedIn profiles has not been reached, the workflow loops, fetching the next set of 10 results until the if condition is met.  

  Data Storage:  
     The workflow extracts LinkedIn profile URLs from the search results and saves them to the newly created Google Sheet for further review.  

  Setup Steps:  

  1. API Key Configuration  
  Under "Credentials", add your OpenAI API key from your OpenAI account settings.  
  This key is used to generate the LinkedIn Boolean search string.  

  2. Adjust Search Parameters  
  Navigate to the "If" node and update the condition to define the desired number of LinkedIn profiles to extract.  
  The default is 50, but you can set it to any number based on your needs.  

  3. Establish Google Sheets Connection  
  Connect your Google Sheets account** to the workflow.  
  Create a document** to store the sourced LinkedIn profiles.  
  The workflow automatically creates a new sheet for each new search, so no manual setup is needed.  

  4. Authenticate Google Search  
  Google search requires authentication** for better results.  
  Use the Cookie-Editor browser extension to export your header string and enable authenticated Google searches within the workflow.  

  5. Run the Workflow  
  Execute* the workflow and monitor the *Google Sheet** for newly added LinkedIn profiles.  

  Benefits:  
  ✅ Automates profile sourcing, reducing manual search time.  
  ✅ Generates precise LinkedIn Boolean search strings tailored to job descriptions.  
  ✅ Extracts and saves LinkedIn profiles efficiently for recruitment efforts.  

  This solution leverages OpenAI and advanced search techniques to enhance your talent sourcing process, making it faster and more accurate! 🚀

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

workflow_json_compressed:
  [encoded data, 6324 characters]


name: Convert PDF to HTML using PDF.co and Google Drive
author_name: WeblineIndia
author_username: weblineindia
categories: []
created_at: 2025-03-21T11:40:37.861Z
updated_at: 2025-03-21T11:40:37.861Z
url: https://n8n.io/workflows/3275
scraped_at: 2025-12-24 13:02:46
description:
  This n8n workflow automates the process of converting a newly stored PDF file from Google Drive into an HTML file and saving it back to Google Drive. The workflow is triggered whenever a new PDF is uploaded to a specific folder, ensuring seamless conversion and storage without any manual intervention.

  This workflow provides an efficient, automated solution for converting PDFs to HTML, eliminating the need for manual file handling and ensuring a smooth document transformation process. It is particularly useful for scenarios where PDFs need to be dynamically converted and stored in an organised manner for web usage, archiving, or further processing.
  Prerequisites :

  Before setting up this workflow, ensure the following:
  PDF.co API Key: Sign up at PDF.co and obtain an API key for PDF to HTML conversion.
  Proper Authentication: Ensure authentication is configured for Google Drive in n8n.

  Customisation Options : 
  Modify the API request to convert PDFs to other formats like Text, CSV, or XML.
  Extend the IF Node to reject files based on size or other properties.
  Send a notification once the conversion is complete using an Email or Telegram Node.

  Steps :

  Step 1: Google Drive Trigger Node (Watch for New Files)

  Click "Add Node" and search for Google Drive.
  Select "Google Drive Trigger" and add it to the workflow.
  Authenticate with your Google Account.
  Select the folder to monitor.
  Set the trigger to activate whenever a new file is added.
  Click "Execute Node" to test.
  Click "Save".

  Step 2: IF Node (Check if File is a PDF)

  Click "Add Node" and search for IF.
  Add a condition to check if the file extension is  .pdf
  If true → Send the file to the next step.
  If false → Stop the workflow.
  Click "Execute Node" to test.
  Click "Save".

  Step 3: HTTP Request Node (Convert PDF to HTML)

  Click "Add Node" and search for HTTP Request.
  Set the Method to POST.
  Enter the PDF.co API endpoint for PDF to HTML conversion.
  In the Headers, add API key which we have get from pdf.co
  Send the binary PDF data as the request body.
  Click "Execute Node" to test.
  Click "Save".

  Step 4: Function Node (Convert Response to Binary)

  Click "Add Node" and search for Function.
  Write a JavaScript function to transform the API response into a binary file.
  Click "Execute Node" to test.
  Click "Save".

  Step 5: Google Drive Node (Save Converted HTML File)

  Click "Add Node" and search for Google Drive.
  Select "Upload File" as the action.
  Authenticate with your Google Account.
  Set the destination folder for storing the HTML file.
  Map the binary data from the Function Node.
  Click "Execute Node" to test.
  Click "Save".

  Step 6: Connect & Test the Workflow

  Link the nodes in this  order (Google Drive Trigger → IF Node → HTTP Request → Function Node → Google Drive Upload)
  Run the workflow manually.
  Upload a test PDF to Google Drive.
  Check Google Drive for the converted HTML file.

  Who’s behind this?

  WeblineIndia’s AI development team. 

  We've delivered 3500+ software projects across 25+ countries since 1999. From no-code automations to complex AI systems — our AI team builds tools that drive results. 

  Looking to hire AI developers? Start with us.

nodes_used:
  ["n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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


name: Daylight Saving Time Notification For Different Timezones
author_name: Łukasz
author_username: lukaszpp
categories: []
created_at: 2025-03-21T11:44:38.698Z
updated_at: 2025-03-21T11:44:38.698Z
url: https://n8n.io/workflows/3276
scraped_at: 2025-12-24 13:02:47
description:
  Who is it for?
  If you are having a lot of meetings as a project manager, CFO, CTO, CEO or any other role that requires handling many meetings, AND you are working with people in different timezones, you may have noticed that it is not uncommon that daylight savings time change day may differ from timezone to timezone. This may be very troublesome at times.

  If DST change day differs between timezones, then you might need to adjust your meetings time accordingly. And this happens twice a year. So it's good to get notification beforehand (at least a day before).

  This automation will notify you if tomorrow you can expect DST in any zone you provide.

  How It Works?
  Script runs daily and loops through provided timezones
  Checks if there is DST change to or from the tomorrow (if you want to be notified sooner, just adjust number of days)
  If there is DST change, script provides you with Slack notification (replace with email if needed)

  How to set up?
  Add and/or edit timezones you want to monitor in "Timezones List" node
  Adjust "Calculate Tomorrow's Date" if you want to be notified sooner than 1 day before DST change
  Adjust "Send Notification on Upcoming Change" to set where on Slack you want to be notified

  And that's it. Hope that you won't miss any other meeting because of DST!

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.slack","n8n-nodes-base.dateTime","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.emailSend"]

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


name: Smart Email Auto-Responder Template using AI
author_name: Amjid Ali
author_username: amjid
categories: []
created_at: 2025-03-21T14:03:18.184Z
updated_at: 2025-03-21T14:03:18.184Z
url: https://n8n.io/workflows/3277
scraped_at: 2025-12-24 13:02:42
description:
  Smart Email Auto-Responder with AI Classification  
  Automatically Categorize and Reply to Emails using LangChain + Google Gemini + Gmail + SMTP + Brevo
   
  This n8n workflow is designed to intelligently manage incoming emails and automatically send personalized responses based on the content. It classifies emails using LangChain's Text Classifier, sends HTML responses depending on the category, and updates Gmail and Brevo CRM accordingly.

  Key Features  

  Triggers and Classifies Emails  
  Listens for new Gmail messages every hour  
  Uses AI-based classification to identify the type of inquiry For Example:  
    Guest Post  
    YouTube Review  
    Udemy Course Inquiry

  Responds Automatically  
  Sends professional HTML replies customized for each type  
  Uses SMTP to deliver emails from your domain  

  Enhances Workflow with Automation  
  Marks processed emails as read  
  Applies Gmail labels  
  Adds sender to Brevo contact list  

  Optional AI Chat Integration  
  Uses Google Gemini (PaLM 2) to enhance classification or summarization  

  Tools & Integrations Required  

  Gmail account (OAuth2)
  LangChain (Text Classifier node)
  Google Gemini API account
  SMTP credentials (e.g., Gmail SMTP, Brevo, etc.)
  Brevo/Sendinblue account and API key

  Step-by-Step Node Guide  

  1. Gmail Trigger  
  Polls Gmail every hour for new emails.  
  Filters out internal addresses (e.g., @syncbricks.com).  
  Avoids replying to already-responded emails (Re: subject filter).

  2. LangChain Text Classifier  
  Uses AI to categorize the content of the email based on pre-defined categories:  
  Guest Post**  
  Youtube**  
  Udemy Courses**

  3. Google Gemini (PaLM) Chat Model (Optional)  
  Provides additional AI support to enhance classification accuracy.  
  Can be used to summarize or enrich the context if needed.

  4. Email Send Nodes  
  Each response category has a separate SMTP node with a custom HTML email:
  Guest Post Inquiry**  
  YouTube Video Inquiry**  
  Udemy Course Inquiry**

  5. Gmail: Mark as Read  
  Marks the email so it isn’t processed again.

  6. Gmail: Apply Label  
  Adds a label (e.g., Handled by Bot) for organization.

  7. Brevo: Create/Update Contact  
  Saves the sender to your CRM for future communication or marketing.

  Email Templates Included

  Guest Post Template  
  Includes pricing, website list, submission guidelines, and payment instructions.

  YouTube Review Template  
  Includes package pricing, review samples, video thumbnails, and inquiry instructions.  
  Step by Step Tutorial

  GET n8n Now  

  N8N COURSE  
  n8n Book  
   
   

  More courses:  
  http://lms.syncbricks.com

  YouTube Channel:  
  https://youtube.com/@syncbricks

  How to Use

  Import the template into your n8n instance.
  Configure your Gmail OAuth2 and SMTP credentials.
  Set up your LangChain Text Classifier and Google Gemini API credentials.
  Update label ID in the Gmail node and ensure all custom fields like from.value[0].name match your use case.
  Run the workflow and watch it respond intelligently to new inquiries.

  Best Practices

  Always test with mock emails first.
  Keep the Google Gemini node optional if you want to reduce cost/API calls.
  Use Gmail filters to auto-label certain types of emails.
  Monitor your Brevo contacts to track new leads.

  Attribution & Support

  Developed by Amjid Ali  
  This template took extensive time and effort to build. If you find it useful, please consider supporting my work.

  Buy My Book:  
  Mastering n8n on Amazon

  Full Courses & Tutorials:  
  http://lms.syncbricks.com

  Follow Me Online:  
  LinkedIn: https://linkedin.com/in/amjidali  
  Website: https://amjidali.com  
  YouTube: https://youtube.com/@syncbricks  

nodes_used:
  ["n8n-nodes-base.gmailTrigger","@n8n/n8n-nodes-langchain.textClassifier","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.emailSend","n8n-nodes-base.emailSend","n8n-nodes-base.emailSend","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.sendInBlue","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 8492 characters]


name: Automated Image Optimizer: convert JPG/PNG to WebP with APYHub and Google Drive
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-03-21T14:41:27.832Z
updated_at: 2025-03-21T14:41:27.832Z
url: https://n8n.io/workflows/3278
scraped_at: 2025-12-24 13:02:46
description:
  This workflow automates the process of converting images from JPG/PNG format to WEBP using the APYHub API. It retrieves image URLs from a Google Sheet, converts the images, and uploads the converted files to Google Drive. 

  This workflow is a powerful tool for automating image conversion tasks, saving time and ensuring that images are efficiently converted and stored in the desired format.

  Using WebP images on a website provides several SEO benefits:  

  Faster Loading Speed – WebP files are smaller than JPG and PNG, reducing page load times and improving user experience.  
  Better Core Web Vitals – Google prioritizes websites with good performance metrics like LCP (Largest Contentful Paint).  
  Improved Mobile Performance – Smaller images consume less bandwidth, enhancing mobile usability.  
  Higher Search Rankings – Faster sites tend to rank better on Google due to improved user experience.  
  Reduced Server Load – Lighter images lower hosting and CDN costs while improving site efficiency.

  Below is a breakdown of the workflow:

  1. How It Works
  The workflow is designed to convert images from JPG/PNG to WEBP format and manage the converted files. Here's how it works:

  Manual Trigger:
     The workflow starts with a Manual Trigger node, which initiates the process when the user clicks "Test workflow."

  Set API Key:
     The Set API KEY node defines the API key required to access the APYHub API.

  Get Images:
     The Get Images node retrieves a list of image URLs from a Google Sheet. The sheet contains columns for the original image URL (FROM), the converted image URL (TO), and a status flag (DONE).

  Get Extension:
     The Get Extension node extracts the file extension (JPG, JPEG, or PNG) from the image URL and adds it to the JSON data.

  Determine Image Type:
     The JPG or PNG? node checks the file extension and routes the workflow to the appropriate conversion node:
       JPG/JPEG: Routes to the From JPG to WEBP node.
       PNG: Routes to the PNG to WEBP node.

  Convert Image:
     The From JPG to WEBP and PNG to WEBP nodes send POST requests to the APYHub API to convert the images to WEBP format.
     The API returns the URL of the converted image.

  Update Google Sheet:
     The Update Sheet node updates the Google Sheet with the URL of the converted image and marks the row as done (DONE).

  Get Converted Image:
     The Get File Image node downloads the converted WEBP image from the URL provided by the APYHub API.

  Upload to Google Drive:
     The Upload Image node uploads the converted WEBP image to a specified folder in Google Drive.

  2. Set Up Steps
  To set up and use this workflow in n8n, follow these steps:

  APYHub API Key:
     Obtain an API Key from APYHub.
     In the Set API KEY node, define the API key.

  Google Sheets Integration:
     Set up Google Sheets credentials in n8n for the Get Images and Update Sheet nodes.
     Create a Google Sheet with columns for FROM (original image URL), TO (converted image URL), and DONE (status flag).
     Provide the Document ID and Sheet Name in the Get Images node.

  Google Drive Integration:
     Set up Google Drive credentials in n8n for the Upload Image node.
     Specify the folder ID in Google Drive where the converted images will be uploaded.

  Test the Workflow:
     Click the "Test workflow" button in n8n to trigger the workflow.
     The workflow will:
       Retrieve image URLs from the Google Sheet.
       Convert the images to WEBP format using the APYHub API.
       Update the Google Sheet with the converted image URLs.
       Upload the converted images to Google Drive.

  Optional Customization:
     Modify the workflow to include additional features, such as:
       Adding more image formats for conversion.
       Sending notifications when the conversion is complete.
       Integrating with other storage services (e.g., Dropbox, AWS S3).

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

workflow_json_compressed:
  H4sIAAAAAAAAE+0aaW/byPWvEMwCPqCReIv0IggcR06cxEd9xHHsYDGcebQYUyTLI4pqCNif0f69/SV9M6QkyqI2h7vtFth8CETyzbvv8b0acnVHPZi8eN3/cDu0Dt9Z5tX5UO2oIyiounOvhnFe0JjBgYCjlh8wzwSvbzNqmCZllg28zzzD6HPXYoGNbw3P1DXbsD29TzkNTFM3QNe4bTkG4i1glEa0gL0MeH4GRZnuJfgGCkACRVbCtKPGdARIbS+JP0NWKOGI3oISZMlI+ZTe9tL4VikSZQx+KvDR21zduf6IpxIO4ud9JZPmef2+7/oENM8mlqV7xNdNh/jMpzzQAhsZVue0LocQKywK2V2I6H/79Z/nkBfKOMnugigZ//brvwSpSSpAYzcmkhbxaQ7dEY1LGp1n4e0tZAiVJnlYhEmMnBDT0DrE0JC5lGZIqIAMObyfVrje4ZME1KedmmnbZpruWjrx7L5DLMcxie8bFmEeaJprAKO+vWAa1afsnhwobwZXa9nLoVhmymplSU1S8b3mjuZ5eBuPIC7kt6XHmX71gFqOyykxwdSQVV8j1LJ8QvuGCZbN7IDTBas0De9gsuAyLzJUND5/plEpXuyeXG0/6p86/Th9qFiza81Va3BbA8NDLl1HJ5bdtwn1fUb6ganrXPdMy/cX/L6E2u/ytZq9TZLbCM6GAEW+rGLT/ZqO1Qw9P4v3wywvDmnBhnPfD8JIgF8cCCipnErnUZLciViJyhGSUF8cHw2ExB01FwwcSa7v1V9+yaIKFUYwsoqQUZgXDT3fhvyphs+MsiHwU8jLqLgQh9RhUaT5Tq/HE5bXwnVZMurlaQaUSzJ5j/f0Mv1kDl68HV/oR/2jV5eX78wXw/FhOXCKiekVB2/sf9jR3rsXl5flYQ94WDxpI1kxrO4jlTDRVZQDyZbCxUSi+RZBvoeP/6q8z8o8fcqz8DPk/K5d7KXMlqvCbxnmQ5Q+pJH0j6ZzHe+WxdDYTUOZj4Uvv746dahj/Q0Ydwr3VdNv5TmlOqhQxpIyLtSVwLC69jwwfJPZ3LEYwfCgxOobPnHNoE88HbMNt7juWM5yYMCXAmKJaF1sMGGypZhwnPaY+JTvVebt9ZS3SZIqCWpGCeO0RPVgsUAhYq5QzpUYxkoQQsRzZWP/4O3gaPdwsCG/bgzenw+Ozg6OjzZEZSiGoLw+Oz5SkkABVL6SxHATB0mmbDIMvwqv+PiTJNOlUbS5taXc38SKglwMvhQZZYVEs7F/eny4UZEVn6vzZRYpTyWW7qc8ibsC6OebeAGAQQxCX5dhMRzMlIVH8GA3T6Ow2NzobWx10yTd3Kpf9K6fPPvY27rWPi5hgsbpVqwzfN0ZvlZG1p8u/SoVb2qdNSD47rYYKmTBy+KVPiPXUEZtmgbJn5ch5tZCkDlOhJkKVFViXDINflIfOrAxd18wXB3DwCR9j2NeZ9Qkrss04uqU0j5o3Ad34b6vT14q6AgnRy+frS+Z41Bk5NVSbjmr/puVEeQPcnVSFsj8G6x3O+qnFESZQ3PwcJ79G4Xg81yijhpBULyr05tMHDmcCe0UmEtmyVBqgUYhpxVnspKyQigIk5cfxrRIMlFwY/6A7KxwB4bt2DpQAqBhYwQux1CnLgmo52DPBEbfE41RkkJW4bpfKdrVt4o+/L0UOWu6zP7T+3vlpwfWnk7xKPZJwzkUtnNVEcuknxxLvc1K4Z9djw41ONMDTmywMW9quo3ugy4Ihu3yAEuIawUP9Fg7YVXju7Mv3VqFq83Rf07P8M2KTuM/mZ51rmELzznBAglYn/ou8XyTEg/bTcOjmsN97U+iZ6G7dWoWrxtN9mqrukhpgWnYfdfsYyIDbK0DO8ApgNvEZg7Wap9awPVFStsXg5HIa1j6LgfPT9bmNdHwnKJ4kD8YCYiuaR2zpTiXslF6OuuUsInv0nQyLH3ZKLGqi+nJLqYnfKwnhrIennpWedTTAmmRnIoBr5oph4kQ8OT47FztLM8cQrnPEz6RyhYF40aQv1F3btS57kWhRbXfqFgsFESQQ8yrM5WziedXGHmS/fpVCiwMJjVmgQXPDSXMyZKsTcmv7xszKBaogpwLjS6aT5pi1WXSZXoSp7DdYtQhRXIHcQNeus/mRmNgw3K9qIjVdCQcqmWIsRqewUHXPZeZBGdrg1i+hUOMaVrEwf98w/dMmzWGWqxyj3QK232cU2BA/OUT8tvkD/MJ0/Utx3I1wjTXQ59gFPMGFYOtpjlMN7jpewufuEgxE9cDwg+Mtjq28Za16hRMDqaLRkj8OD9eSpxIl1Y5Uw6vO+oXkT6T8S9xOfIhW2hkMXsvKWQBKpWCZsS5akQXhUJ4Qkty5yG2yHTuDxk6e5iJbVOAeR7m32cTaYWEQ0BxXqtn8xqS0fg5XOTAz5Olob2mj/I+lrpE8SO0pUofS71G8iP0G3b8Bi5GOOQtmBDj9nEcfSuXS6S+h1d02hEGKfJ0WI2ceDiM4TlEyVhkIgGKH/dmrnzdJIWHaSGWl8V5Uo/vIv7zBdHq5b6cUM+Ts0r46uv0QV5r9hulDEj1r0XO//8ip31H/b/d7uCMYnisbxIImI/VAQLico8Sm+qebvHAMShf3u6Iqb0S6PubBstoLw91zzCvBefHVSVY2ojmKf6Edb/3kwwjtOrqAWX+3ZpIGUBfN7Amgm+JnRYQ6lk60RxHsx1ObVRtsyZGCeVfkbmy2QvhDssy97V2mWvkjaI2X3Ys1bX5wmQ67daXGtLpvjV+DidKxdXDLBMkEXY03xyG7ycXZ1fv+VH24WCsvZ98MK/Skn55+frTMd09nQxe/37sCQ6awSdf9CoW8t73Iq/D62CEJgnjcH0MSclXQ+jVYGIPyg93tycf3g2oN14JIXluFkHKZmyO0SJbq6Fkzl1Ko5anQ98nhuVi6214QDxP0wnDvjswuWnZWqPNOitCdjdRjpJivUflEqYGWdo1iV2p3TKPYZclBlyzo45DXmBdc9H3sHMVMyhO5OKBVc0pUnvyRPn6DZpYuZ0Pw3x+1aXQskgw0DCbiQVomiUM8lxsS+sCJ+7Hmuluextnzx6OGtvbSiBjVODe3hZTB74qc3FAoNre3j25elX6otvd3u4qB4WSAVZJwPxac3hx+rbGShG8me22tzszBirGKhY6cv9byvit3tdAwGUeyytemkYXpFelxt9USZMxZEEZ4aEkEsLMlDGXuUYvF7IFze+QgZx+lhKGI5DMYISXWSUznRcGmoECQRCyEG0TTRpciiN5kaBvK2EsJUD/EN1PrczuyupzcVvYd6mYBjHBWV5ALOq4xHPAIoaGpUOzrAD0oNUl9R/0SaNlHGzzRMy8Dzzx5HTw9uDw4Gj39Eo5Ox+c3MREESlxkpSZsn86GMxmoMr815WrfNxcTJnzCbO3JQ7vRUkMynUhrChL/AL2D+kD8iEVVt2SBguxHmXVDQG6rAgOKUdt7M0Em1kRaB1FLEXkCRFylUG3ZnauRiYcacXIcaO22Fn0nKxaptVNZg6FcEapePgCrBTmOc64HJ8+y/ards+DajceiOtYhwR+gKOhCYxQQ+8TilXRdByL64ZXbd1iYPNK3Lj7xKcRDYUDiPG3qhtrboAkXEcNYw5f1B1t+lEsvJrr9jZc63dXK+g6jz3Vug1p5boJ2cZ1+wzdiqp5Rb9OmQ/vmVsRLdFch6mtdWvFtmzDNnStFyVrcTUItyusrcFqxbZi20ca4Ot/2NFGoPUvK1rwT6f/BgRedHxCIwAA


name: OAuth2 Settings Finder with OpenRouter Chat Model and Llama 3.3
author_name: Hendriekus
author_username: h3rx
categories: []
created_at: 2025-03-21T15:16:14.485Z
updated_at: 2025-03-21T15:16:14.485Z
url: https://n8n.io/workflows/3279
scraped_at: 2025-12-24 13:02:47
description:
  Find OAuth URIs with AI Llama

  Overview:
  The AI agent identifies:
  Authorization URI
  Token URI
  Audience

  Methodology:
  Confidence scoring is utilized to assess the trustworthiness of extracted data:
  Score Range: 0 &lt; x ≤ 1
  Score Granularity: 0.01 increments

  Model Details:
  Leveraging the Wayfarer Large 70b Llama 3.3 model.
  How it works:
  This template is designed to assist users in obtaining OAuth2 settings using AI-powered insights. It is ideal for developers, IT professionals, or anyone working with APIs that require OAuth2 authentication. By leveraging the AI agent, users can simplify the process of extracting and validating key details such as the authorization_url, token_url, and audience.

  Set up instructions:
  1. Configuration Nodes
  Structured Output Node**: Parses the AI model's output using a predefined JSON schema. This ensures the data is structured for downstream processing.
  Code Node**:  If the AI model’s output does not match the required format, use the Code node to re-arrange and transform the data. Example code snippets are provided below for common scenarios.
  2. AI Model Prompt
  The prompt for the AI model includes:
  A detailed structure and objectives of the query.
  Flexibility for the model to improvise when accurate results cannot be determined.
  3. Confidence Scoring
  The AI model assigns a confidence score (0 &lt; x ≤ 1) to indicate the reliability of the extracted data. Scores are provided in increments of 0.01 for granularity.
  Adaptability
  Customize this template:
  Update the AI model prompt with details specific to your API or OAuth2 setup.
  Adjust the JSON schema in the Structured Output node to match the data format.
  Modify the Code logic to suit the application's requirements. 

nodes_used:
  ["n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6432 characters]


name: Sync Shopify customers to Google Sheets + Squarespace compatible csv
author_name: bangank36
author_username: bangank36
categories: []
created_at: 2025-03-21T16:22:09.245Z
updated_at: 2025-03-21T16:22:09.245Z
url: https://n8n.io/workflows/3280
scraped_at: 2025-12-24 13:02:47
description:
  This workflow retrieves all Shopify Customers and saves them into a Google Sheets spreadsheet using the Shopify Admin REST API. It uses pagination to ensure all customers are collected efficiently.

  N8n does not have built-in actions for Customers, so I built the workflow using an HTTP Request node.

  How It Works
  This workflow uses the HTTP Request node to fetch paginated chunks manually.

  Shopify uses cursor-based pagination (page_info) instead of traditional page numbers.
  Pagination data is stored in the response headers, so we need to enable Include Response Headers and Status in the HTTP Request node.
  The workflow processes customer data, saves it to Google Sheets, and formats a compatible CSV for Squarespace Contacts import.
  This workflow can be run on demand or scheduled to keep your data up to date.

  Parameters
  You can adjust these parameters in the HTTP Request node:

  limit** – The number of customers per request (default: 50, max: 250).
  fields** – Comma-separated list of fields to retrieve.
  page_info** – Used for pagination; only limit and fields are allowed when paginating.

  📌 Note: When you query paginated chunks with page_info, only the limit and fields parameters are allowed.

  Credentials
  Shopify API Key** – Required for authentication.
  Google Sheets API credentials** – Needed to insert data into the spreadsheet.

  Google Sheets Template
  Clone this spreadsheet:
  📎 Google Sheets Template

  According to Squarespace documentation, your spreadsheet can have up to three columns and must be arranged in this order (no header):

  Email Address  
  First Name (optional)  
  Last Name (optional)  
  Shopify Customer ID (this field will be ignored)  

  Exporting a Compatible CSV for Squarespace Contacts
  This workflow also generates a CSV file that can be imported into Squarespace Contacts.

  How to Import the CSV to Squarespace:
  Open the Lists & Segments panel and click on your mailing list.
  Click Add Subscribers, then select Upload a list.
  Click Add a CSV file and select the file to import.
  Toggle These subscribers accept marketing to confirm permission.
  Preview your list, then click Import.

  Who Is This For?
  Shopify store owners** who need to export all customers to Google Sheets.
  Anyone looking for a flexible and scalable** Shopify customers extraction solution.
  Squarespace website owners** who want to bulk-create their Contacts using CSV.

  Explore More Templates  
  👉 Check out my other n8n templates

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

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


name: Download and Merge Multiple PDFs from URLs with the CustomJS API
author_name: CustomJS
author_username: customjs
categories: []
created_at: 2025-03-21T17:19:55.309Z
updated_at: 2025-03-21T17:19:55.309Z
url: https://n8n.io/workflows/3281
scraped_at: 2025-12-24 13:02:46
description:
  This n8n template demonstrates how to download multiple PDF files from public URLs and merge them into a single PDF using the PDF Toolkit from www.customjs.space.

  @custom-js/n8n-nodes-pdf-toolkit

  What this workflow does

  Defines** an array of PDF URLs.
  Splits** the array to process each URL individually.
  Downloads** each PDF using an HTTP Request.
  Merges** all downloaded PDFs using the Merge PDF node from the @custom-js/n8n-nodes-pdf-toolkit.
  Writes** the final merged PDF to disk.

  Requirements

  A free CustomJS account.
  An API Key saved in n8n as credentials of type CustomJS account.

  Notice

  Community nodes can only be installed on self-hosted instances of n8n.

  Usage

  Get API key from customJS

  Sign up to customJS platform.
  Navigate to your profile page
  Press "Show" button to get API key

  Set Credentials for CustomJS API on n8n

  Copy and paster your API key generated from CustomJS here.

  Design workflow

  A Manual Trigger for starting workflow.
  A code node that returns URLs of PDF files as an array
  Split Out node for concurrent processing
  HTTP node for downloading PDF file locally
  Merge PDFs node for merging files
  Write to Disk node for saving merged PDF file.

  You can replace logic for triggering and returning results.
  For example, you can trigger this workflow by calling a webhook and get a result as a response from webhook. Simply replace Manual Trigger and Write to Disk nodes.

  Perfect for

  Bundling reports or invoices.
  Generating document sets from external sources.
  Automating PDF handling without writing custom code.

nodes_used:
  ["n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.readWriteFile","n8n-nodes-base.readWriteFile","n8n-nodes-base.manualTrigger","n8n-nodes-base.code","@custom-js/n8n-nodes-pdf-toolkit.mergePdfs"]

workflow_json_compressed:
  H4sIAAAAAAAAE51V227jNhD9FUHoo2mJ1JUGCjTNNu22aBskRoNikwdeho4SiXJJCt4gMLCf0f7efklJO60Sr7yb9sWQiZlzmeEMH+MOHIsXj3GjrWNawFsZL2JepFlNqVSSMsgI56oGrPK8ZFgRQXkmCqrqVFSUkyoXOeW4TEteMaBFRQHHs9hBt26Zg1MD0l6CG9anvT8BB57AmQG2s1j3Emy8eOfZAyumKiOCFEgqUqKclBLVQGqksCRU1EWFeUDWrAMffbluGxf9OrhA9rAOR7rWaIeJOLMwtyFiH7DubeOaXnsyRNJ0hkie3vhjZjyYA2NDCfp1CAmfXptqoJXL/vIfjEUsma/Udk/2m0/ZweHt7El9lZWpyBRFBDBGeZ1RxHFaIBCMlyXLKFNkVP/DcnkeXcAfA1iHjzq4dW79FPTSBDliYTCtR/n68TH66s72eh40R9utT35m7tBDPif/usip4L6vHAkqa5RzhRFTrECF/+UUKlpWMLq4ACaTK9M4iM6aFmykTN9Fbxp7T456Mj5nlxIyXrrKy9d1poVf9vzOF2a+lmrnDwzb48SbAP+ZVqUFKH+XvL8aS5Snqkas5BmqsL/qlDPCS/Uak9n/MVnWrzV5CS0I15vnRo+bErVKaYUFAgwpypn005MJjmhGaEr8tPKiHE1d3YKORNuI+0avoo8f/lx6hmjTm3vV9puPH/46aq1jemDt0jSrFZiD0SrzaW/HVXOvscDAkB8PgXKMmWdhvimEVlUJdZ6pbFR9/uYsOjGGPRxVJ/zngaj82LDc2dMQvYiNX09GR49RGJdF9O5aR9F1HIbPLpJks9nMG+1gwzx6l4TOMNk1OpG9GDrQzia+MyichxZdx7OD5E02780quTp5m3x3kYRW2uT9reva3XfIs4kB2w9GwA4rkUPXPezBrvXN9pOuj/PKMfG3FXJEpGIoV1ihusgrlJWcUSwY9RtprN/PYFYQ+SqO9ftGDNb1HbqzyVjK4Mf1fXvfuHkXcs6lsgcb6HirhV/5viwNa3dl3hP8aE/Wze6hCbK/Pfue36eswuqnq9/9Thklnu6jLyMmRD9oF3+yrvDWc4peaz8cTwPzzJj/07EmKPTPit7391Vrapc18++ghPfxIt3e3Hji8cJN4U48QZMoY9wUypGnYBLpZewU2kSLJ5E+V5P/VsPsC0xfXjVTfBOjPoG+3f4Nmt/Ds8IIAAA=


name: Create Notes and Comments on Any Odoo Model Record
author_name: Carlos Contreras
author_username: carlosecv
nodes_used: ["n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.odoo","n8n-nodes-base.stickyNote"]
categories: []
created_at: 2025-03-21T17:49:37.686Z
updated_at: 2025-03-21T17:49:37.686Z
url: https://n8n.io/workflows/3282
scraped_at: 2025-12-24 13:02:43
description:
  Introduction
  This workflow is designed to create and attach notes or comments to any record in your Odoo instance. It acts as a sub-workflow that can be triggered by a main workflow to log messages or comments in a centralized manner. By leveraging the powerful Odoo API, this template ensures that updates to records are handled efficiently, providing an organized way to document important information related to your business processes.

  Setup Instructions
  Import the Workflow:

  Import the provided JSON file into your n8n instance.

  Odoo Credentials:

  Ensure you have valid Odoo API credentials (e.g., "Roodsys Odoo Automation Account") configured in n8n.

  Node Configuration:

  Verify that the "Odoo" node (consider renaming it to "Odoo Record Manager" for clarity) is set up with your server details and authentication parameters.

  Check that the workflow trigger ("When Executed by Another Workflow") is configured to receive input parameters from the parent workflow.

  Execution Trigger:

  This workflow is designed to be initiated by another workflow. Make sure the main workflow supplies the required inputs.

  Workflow Details
  Trigger Node:
  The workflow begins with the "When Executed by Another Workflow" node, which accepts three inputs:

  rec_id: A numeric identifier for the Odoo record.

  message: The text of the comment or note.

  model: The specific Odoo model (e.g., rs.deployment.action.log) where the note should be attached.

  Odoo Node:
  The second node in the workflow calls the Odoo API to create a new log message. It maps the inputs as follows:

  message_type is set to "comment".

  model is assigned the provided model name.

  res_id is assigned the record ID (rec_id).

  body is assigned the message content.

  Additional Information:
  A sticky note node is included to provide a brief overview of the workflow’s purpose directly within the interface.

  Input Parameters
  Record ID (rec_id):
  The unique identifier of the record in Odoo where the note will be added.

  Message (message):
  The content of the comment or note that is to be logged.

  Model (model):
  The Odoo model name indicating the context in which the note should be created (e.g., rs.deployment.action.log).

  Usage Examples
  Internal Logging:
  Use the workflow to attach internal comments or logs to specific records, such as customer profiles, orders, or deployment logs.

  Audit Trails:
  Create a comprehensive audit trail by documenting changes or important events in Odoo records.

  Integration with Other Workflows:
  Link this workflow with other automation processes in n8n (like email notifications, data synchronization, or reporting) to create a seamless integration across your systems.

  Pre-conditions
  The Odoo instance must be accessible and correctly configured.

  API permissions and user roles should be validated to ensure that the workflow has the necessary access rights.

  The workflow expects inputs from an external trigger or parent workflow.

  Customization & Integration
  This template offers several customization options to tailor it to your needs:

  Field Customization: Modify or add new fields to match your logging or commenting requirements.

  Node Renaming: Rename nodes for better clarity and consistency within your workflow ecosystem.

  Integration Possibilities: Easily integrate this workflow with other processes in n8n, such as triggering notifications or synchronizing data across different systems.



  This sub-workflow receives data from a main workflow (for example, a record ID, a message, and the Odoo model) and creates a new note (or comment) in the corresponding Odoo record. Essentially, it acts as a centralized point for logging comments or notes in a specific Odoo model, ensuring that the information remains organized and easy to track.

  Your model must inherit from

   _inherit = ['portal.mixin', 'mail.thread.main.attachment']

workflow_json_compressed:
  H4sIAAAAAAAAE4VV72/bNhD9Vwh2QFtA8iRZkiUD+xBkGRCsbYokbT5sQUCRJ5mNRBokFccN/L/3SDm/mnQDDFgi7+69e/dI3VEp6JJ29Ycig+NN/cUNR3/31zSiAzhGl3dUKuuY4nDs41IQGWdJk+FvkadlklU8ZYu8SQEKllaiamqWZrwtRLZo02IuMgZlC3Wb5/hSY10Hw7pnDg4NCHsGblwfalwBBwjgzAi7iCo2AKKdgRLkg+7IR7CWdUCcJidCa1+FdZYu/7nEWC3AP95NnTDgGa+KIk6qMo3zRbGIWT6HOFtktSjn9WIOjD4gXKxAkaNb4CPCk2ZLDpR2KzDkQpvrttcbD7Vd+1BVqThgxQ2zMIMp6T7u3MiuA4Pha22lk1ohpSRKkOCaGQRzYKyXc7NPOFbr0YWVG9aP+w72rAzwK2zmEXocGqy9ix4ihkmQZ0vIrae7y91uyvuKgIFGOkt9WFBnnrBkkSd5XDKWxTmwPK5B8BiKohJFkbZlmj6qc6/1qwLoafNJu1n2WsMGrB4N9xX4aJ0eMGl6OH3c+ePujrwdmOxn+87ekt0OA1sJvbDnGs2CljkxX9YC/33ZaSeoFh4/PRPmKnDe53/1Ant4PQygXBDtWU5Q7qdgz+i3b1arWdj2dH7Ow86mMf0icRrja5mNFtv/ANy73SeGcXI8Kkhcsj4o6pU/WMtwOP1Qj8RnUVSm7C7Ovl3n4vRxgKdaC7u14dCQgxE1Z35W5IBzPXolXnjlwSlNwesC2iwuS7bAc5SUcd22TVzPizqdz3lV1fAIdOYkv96ST9rBLw1jQ8w+5Ilt4qJKorh86Ryue23osozoRgq3oss8SSK6AtmtHF1mJb5wrZwf6ZK+eUMmk1jCAg8iFWFqav0UuDbiX3W+kpbYsYnvTyHBGYG8wST0FSOt0QOmoxEVeQh512pD4Jb5SyrCXROKkeM//ct+VviIVxXeHBNesMz7sMYfSCnYEOWJvcN6ey++9yx9GpZEO621ElJ1U5EJZ0aOrJ2G328jIh1h3GE5X5HjumG9/I5311pL5Yin2uuu80X2EJbgmse1QRFi18BlK/kTphEBZUfjk9yKuUBIKqy1t4sBr4gv1DEV0HxnwOzW38hIgV/P6Esr4UCRK6pLly1aFyJqwTlECdN1coDvWnmjHAxgJGe/f4RbyfXVoXT+dHDsGMxn3Uu+xaD7edi/cEhnaJOTjQoX7nQTI+aJEbiwpDfp09VzxNEjWiRGc9ObiV74mCWQlfO0KONFNq/jHD0eNxUTcQZ52VbzrFnk/lOBHlPAfanA+/8/GRjk9UJr+ysdBX5xlYbtCD+tAm7pMtld4jHf/QBc7ioHiwcAAA==


name: Youtube RAG search with Frontend using Apify, Qdrant and AI
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-03-22T22:04:12.727Z
updated_at: 2025-03-22T22:04:12.727Z
url: https://n8n.io/workflows/3288
scraped_at: 2025-12-24 13:02:44
description:
  Ever wanted to build your own RAG search over Youtube videos? Well, now you can! This n8n template shows how you can build a very capable Youtube search engine powered by Apify, Qdrant and your LLM of choice to quickly and efficiently browse over many videos for research.

  I originally started to template to ask questions on the "n8n @ scale office-hours" livestream videos but then extended it to include the latest videos on the official channel.

  Check out a demo here: https://jimleuk.app.n8n.cloud/webhook/n8n_videos

  How it works
  Stage 1 is to collect the Youtube video transcripts and push them into a vector database. For this, I've used Apify to scrape Youtube and Qdrant to store the embeddings.
  Transcripts are broken down into smaller chunks and carefully tagged with metadata to assist in later search and filtering.
  Stage 2 is to build a web frontend for the user to query the vectorised transcripts. I'm using a webhook to serve a simple web app and API to dynamically fetch the results.
  When searching for a video, I've opted to use Qdrant's search groups API which in this use-case, performs better as it returns a wider range of videos results.
  In the web frontend, when the user clicks on the results, the matching Youtube video plays in an embedded video player.

  How to use
  Once credentials are all set, first run steps 1 - 3 to populate your vector store.
  Next, set the workflow to active to expose the web frontend. Visit the webhook URL in your browser to use it.
  If only for personal use, you may want to remove the rate limiting mechanism in step 4.

  Requirements
  Apify for Youtube Channel and Video Scraping
  Qdrant for Vector store
  OpenAI for LLM and Embeddings

  Customising the template
  Not interested in official n8n videos? Swap to a different channel - this template will work on many as long as videos are not private or set to prevent embeds.
  Technically any vector store should work but may not have the same grouping API. Use the simple vector store node and revert back to basic searching instead.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.vectorStoreQdrant","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.set","n8n-nodes-base.sort","n8n-nodes-base.respondToWebhook","@n8n/n8n-nodes-langchain.informationExtractor","n8n-nodes-base.webhook","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.redis","n8n-nodes-base.if","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.webhook","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.removeDuplicates","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.splitOut","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.respondToWebhook","n8n-nodes-base.html","n8n-nodes-base.markdown","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.respondToWebhook","n8n-nodes-base.splitOut","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi"]

workflow_json_compressed:
  [encoded data, 18440 characters]


name: 🎥 Analyze YouTube Video for Summaries, Transcripts & Content + Google Gemini AI
author_name: Joseph LePage
author_username: joe
categories: []
created_at: 2025-03-22T22:53:17.485Z
updated_at: 2025-03-22T22:53:17.485Z
url: https://n8n.io/workflows/3289
scraped_at: 2025-12-24 13:02:43
description:
  🎥 Analyze YouTube Video for Summaries, Transcripts & Content + Google Gemini

  Who is this for?
  This workflow is ideal for content creators, video marketers, and research professionals who need to extract actionable insights, detailed transcripts, or metadata from YouTube videos efficiently. It is particularly useful for those leveraging AI tools to analyze video content and optimize audience engagement.

  What problem does this workflow solve? / Use case
  Analyzing video content manually can be time-consuming and prone to errors. This workflow automates the process by extracting key metadata, generating summaries, and providing structured transcripts tailored to specific use cases. It helps users save time and ensures accurate data extraction for content optimization.

  What this workflow does
  Extracts audience-specific metadata (e.g., video type, tone, key topics, engagement drivers).
  Generates customized outputs based on six prompt types:
    Default: Actionable insights and strategies.
    Transcribe: Verbatim transcription.
    Timestamps: Timestamped dialogue.
    Summary: Concise bullet-point summary.
    Scene: Visual descriptions of settings and techniques.
    Clips: High-engagement video segments with timestamps.
  Saves extracted data as a text file in Google Drive.
  Sends analyzed outputs via Gmail or provides them in a completion form.

  Setup
  Configure API keys:
     Add your Google API key as an environment variable.
  Input requirements:
     Provide the YouTube video ID (e.g., wBuULAoJxok).
     Select a prompt type from the dropdown menu.
  Connect credentials:
     Set up Google Drive and Gmail integrations in n8n.

  How to customize this workflow to your needs
  Modify the metadata prompt to extract additional fields relevant to your use case.
  Adjust the output format for summaries or transcripts based on your preferences (e.g., structured bullets or plain text).
  Add nodes to integrate with other platforms like Slack or Notion for further collaboration.

  Example Usage
  Input: YouTube video ID (wBuULAoJxok) and prompt type (summary).
  Output: A concise summary highlighting actionable insights, tools, and resources mentioned in the video.

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.code","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.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDrive","n8n-nodes-base.gmail","n8n-nodes-base.markdown","n8n-nodes-base.form","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.formTrigger","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.merge","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 8352 characters]


name: 🔍🛠️Generate SEO-Optimized WordPress Content with AI Powered Perplexity Research
author_name: Joseph LePage
author_username: joe
categories: []
created_at: 2025-03-23T02:02:14.835Z
updated_at: 2025-03-23T02:02:14.835Z
url: https://n8n.io/workflows/3291
scraped_at: 2025-12-24 13:02:41
description:
  Generate SEO-Optimized WordPress Content with Perplexity Research

  Who is This For?
  This workflow is ideal for content creators, marketers, and businesses looking to streamline the creation of SEO-optimized blog posts for WordPress. It is particularly suited for professionals in the AI consulting and workflow automation industries.

  What Problem Does This Workflow Solve?
  Creating high-quality, SEO-friendly blog posts can be time-consuming and challenging, especially when trying to balance research, formatting, and publishing. This workflow automates the process by integrating research capabilities, AI-driven content creation, and seamless WordPress publishing. It reduces manual effort while ensuring professional-grade output.

  What This Workflow Does
  Research: Gathers detailed insights from Perplexity AI based on user-provided queries.
  Content Generation: Uses OpenAI models to create structured blog posts, including titles, slugs, meta descriptions, and HTML content optimized for WordPress.
  Image Handling: Automatically fetches and uploads featured images to WordPress posts.
  Publishing: Drafts the blog post directly in WordPress with all necessary formatting and metadata.
  Notification: Sends a success message via Telegram upon completion.

  Setup Guide
  Prerequisites:
     A WordPress account with API access.
     OpenAI API credentials.
     Perplexity AI API credentials.
     Telegram bot credentials for notifications.

  Steps:
     Import the workflow into your n8n instance.
     Configure API credentials for WordPress, OpenAI, Perplexity AI, and Telegram.
     Customize the form trigger to define your research query.
     Test the workflow using sample queries to ensure smooth execution.

  How to Customize This Workflow to Your Needs
  Modify the research query prompt in the "Form Trigger" node to suit your industry or niche.
  Adjust content generation guidelines in the "Copywriter AI Agent" node for specific formatting preferences.
  Replace the image URL in the "Set Image URL" node with your own source or dynamic image selection logic.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.wordpress","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.merge","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.formTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.aggregate"]

workflow_json_compressed:
  [encoded data, 9000 characters]


name: Automate NPM Package Installation and Updates for Self-Hosted Environments
author_name: Joachim Brindeau
author_username: joachimbrindeau
categories: []
created_at: 2025-03-23T06:46:26.211Z
updated_at: 2025-03-23T06:46:26.211Z
url: https://n8n.io/workflows/3293
scraped_at: 2025-12-24 13:02:45
description:
  Are you looking to install external libraries for your self-hosted N8N instance? This automated workflow makes adding npm packages to your N8N environment quick and effortless.



  Beware, this workflow only works on self-hosted instances.
  What This Workflow Does
  This solution automatically installs npm packages like axios, cheerio, or node-fetch in your self-hosted N8N Docker container, making them immediately available in Code nodes.
  Key features

  ✅ Automated Installation: No manual npm commands needed
  ✅ Daily Updates: Scheduled trigger keeps packages current
  ✅ Smart Installation: Only installs missing packages
  ✅ Multiple Triggers: Manual, scheduled, and on startup of the N8N instance so you can upgrade your N8N version without worrying about external libraries.

  How to install and update external libraries automatically
  Step 1: Setting Up Your Environment Variables
  Before using external libraries in N8N Code nodes, configure these environment variables in your Docker comppose file.
  Option A to allow specific external npm packages in N8N Code nodes
  NODE_FUNCTION_ALLOW_EXTERNAL=axios,cheerio,node-fetch
  Option B to allow all external npm packages in Code nodes
  NODE_FUNCTION_ALLOW_EXTERNAL=*

  Step 2: Import the external packages workflow

  Import the workflow into your N8N instance by copy pasting all nodes.

  Step 3: Input the list of external libraries you need

  Edit the libraries_set node
  Change the comma-separated list (e.g., axios,cheerio,node-fetch).

  If you chose Option A above, update your NODE_FUNCTION_ALLOW_EXTERNAL variable with the same packages

  Step 4: Start the workflow!
  Run the workflow manually or let it trigger automatically

  Why use this to install NPM packages in N8N?
  Managing external packages manually in N8N can be time-consuming. This workflow automates the entire process, making sure your libraries are always installed and up-to-date.

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.executeCommand","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.n8nTrigger"]

workflow_json_compressed:
  H4sIAAAAAAAAE6VWbW/bNhD+K6ySDxtgOiT1QilDP3RdOwTY2iErBgx1EJzIY6xNlgJJzhIY+u87yi+xYzve0A82xOPxuedeeMdFMMMOgstFUFRtB5XBKxtcBkqEWZ4BJrm1yjjULgEZqlxbxCQJM4GZApcbhUZlLtEGHEi0LjFgUxvHQT8KqtpiG1x+JWgPaYzQuTLAlXaKRyCQZ8pprqwgoCSEXEQBnYIZknZZ5A00Bba3LXYk7p7uvbhKKz7g8hxaHC/37uu26Iq6Ils8VmKkEnFDUmgIqsOm9d7V915j+CzuqrrB93X1QHsk/NA0tVdyULZIvKFtSWWGVTeo7yzXzkAuHaa55okWCY9cnPHchBmXLhVaJValmTjgzLMjbdcU1R2tH6CcewE8FnU7MlPEpqhH3kfusDPToL/p++WxP5Z8g8twHPWjFRMXO6WMBK5FlPNI25xnLkaepg7zyOY6ztNnJmT17g6b2xlUcyiPxnW5/WWp/CLC+nCEX3KUG4ZpTMVj44hDlkkeCY08FzIl9yyAdnkIkT2UeGgaePofqQ/FqdT/x+QmLpcxJBRSY4EIp4KDimMuhUtjK9M0jQ9V6jPVNfN1bt8uFuz8r7auxhvlcXtfFt13k2A0Cb5nfX8qzTIzABgnPDG5oILLiFOEGY/DUEsFIrPy8O3xZo4H0e9+nr+MpDwZyYAguqICv/5YYGk/bRt+8tffefGX+ve1ie1IHS8WhyKBSFmuJFCx6Ah4GkWKWy1CJ5MkMkn60s+n26F3lcfrGR/RzDu68zOqbLvrrTzSMcxKmdJ39uYiL6oLgppOqkl1xn7Gjq1sM0+FuaaesQdyDvISJ9UvVz9ev7v+8/bTu18/vJ0Ei8V29p/6fhIscd5P0fzNCrcBs0WDpqvpCx+LtmufoX66uiaki2k9wwvv2fB3O6vtvMT24nzb4lH0omVQNgiWPpcRQzupSOEre8O4ZZPgfMvcJGA3P7BuigTGGJppTQpXy3PUu9iOzfF47M0yVt3P1uDbeGtejPnfGaPUF25DY6gjvzFwOcFkw2UHnP0DLWvnxmDbunlZbrm4YobU3nfOf4SCdllXbwjvusR+K5Gqh5khjq5uGA6jYoXHfI46Jv23KybVGv8gu0OhZ9CxbTcHXI9EBbqq2M80kJ8n07EGm4fSqNhwITQNI6MlB9SCp8Lo0Mo8VUrsj4CW3PLFc7w5rBSOjwHqE3vXpvGQw3OCJNQAfVs90NvkWG34Az0GdCQ18TdIdz6lAWHoZRAak1krQMcO9vmv3ytH+dPyOPUo2qeOD6s5QOSpad7sR5yOmLqq6Iqu++DuO4UEMyi8EZolnsprA23QHJEti4/BpehvBoO7A/p1wJ2n0UG4l8ZP4O0OixOIS+3jiAfa8qsubxL6rU7vVfi3Afb9vwC9y3IlCwAA


name: 🧑‍🎓 AI Powered Language Teacher with Telegram, Google Sheet and GPT-4o
author_name: Samir Saci
author_username: samirsaci
categories: []
created_at: 2025-03-23T12:31:06.542Z
updated_at: 2025-03-23T12:31:06.542Z
url: https://n8n.io/workflows/3295
scraped_at: 2025-12-24 13:02:46
description:
  Tags: Productivity, Education, Learning, Language

  Context
  I’m a Supply Chain Data Scientist from Paris who lived six years in China — and yes, learning Mandarin while working full-time was tough.




  Learning Mandarin as an adult can be very difficult, especially if you have a full-time job. With AI, you can now have a Chinese tutor available 24/7 on your phone — no excuses left!

  It is with this spirit that I designed this workflow to support fellow Mandarin learners with a Chinese Teacher powered by GPT-4o. 

  &gt;Boost your language skills with AI using N8N!

  📬 For business inquiries, you can add me on LinkedIn

  Who is this template for?
  This workflow template is designed for language learners and educators who need support to learn a vocabulary list in Mandarin (or any other language) using Open AI GPT-4o, an AI agent and a Telegram Bot to interact with users.


   

  For the vocabulary list, you can use another template shared in my profile 🉑 Generate Anki Flash Cards for Language Learning with Google Translate and GPT-4o to generate the Google Sheet needed in this workflow.

  How does it work?
  The workflow loads a vocabulary list stored in your Google Sheet.


   

  The bot will:
  📥 Load your vocabulary list from Google Sheets
  🧠 Generate multiple-choice questions with GPT-4o
  ✅ Evaluate your answer and give instant feedback
  🔁 Loop to the next word until you're fluent





  These fields will be automatically added to a Google Sheet, ready to be loaded in Anki to create flash cards.

  What do I need to start?
  This workflow does not require any advanced programming skills.
  Prerequisite
  A Google Drive Account with a folder including a Google Sheet filled with the vocabulary list you want to learn.
  API Credentials: Open AI API for the chat model, Google Drive API and Google Sheets API activated with OAuth2 credentials
  A Telegram Bot with its token recorded in the Telegram Node Credentials
  A Google Sheet** with two columns (initialText: words in your own language, translatedText: words in the target language)

  Next Steps
  Follow the sticky notes to set up the parameters inside each node and get ready to pump your learning skills.



  🎥 Watch My Tutorial

  🚀 Curious how N8N can supercharge learning or supply chain?
  📬 Let’s connect on LinkedIn

  Notes
  This workflow can be used for any language. In the AI Agent prompt, you just need to replace Chinese with your language.

  This workflow has been created with N8N 1.82.1
  Submitted: March 23th, 2025

nodes_used:
  ["n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.telegramTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.aggregate","n8n-nodes-base.telegram"]

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


name: Automatic Shopify Order Fulfillment Process
author_name: bangank36
author_username: bangank36
categories: []
created_at: 2025-03-23T16:08:02.680Z
updated_at: 2025-03-23T16:08:02.680Z
url: https://n8n.io/workflows/3296
scraped_at: 2025-12-24 13:02:45
description:
  This workflow automates the Mark as Fulfilled action in Shopify for each order, ensuring a seamless fulfillment process without manual intervention.

  How It Works
  This workflow retrieves all unfulfilled orders and processes their fulfillment automatically. Since Shopify requires a Fulfillment Order ID (not Order ID) to trigger fulfillment, the workflow follows these steps:

  1️⃣ Get all unfulfilled orders using the Shopify node.
  2️⃣ Retrieve the Fulfillment Order ID using the "List Fulfillment Orders" action.
  3️⃣ Create a fulfillment request using "Mark fulfillment order as fulfilled."
  4️⃣ Handle edge cases, such as partially fulfilled orders or API errors.

  This ensures that every valid order is marked as fulfilled efficiently.
  🔗 Ongoing discussions on this topic: Relevant Shopify API Discussion

  Step-by-step
  The workflow can be run as requested or on schedule

  You can adjust these parameters within the Shopify and filter nodes:

  Shopify Admin URL – A Global node to customize the Shopify store URL.
   To find your Shopify store ID, login into your Shopify admin, then look at the URL in your browser's address bar, the subdomain portion (e.g., example_store_id.myshopify.com) is your store ID (in this case: example_store_id)

  Order Filtering – Ensures only valid orders are fulfilled, particularly useful if:

  You sell digital downloads or gift cards exclusively.
  You use third-party fulfillment services for all products.

  Credentials
  To run this workflow, you'll need:

  Shopify API Key – Required for authentication.

  Who Is This For?
  Shopify store owners looking to automate their fulfillment process.

  Merchants selling digital or personalized products who need instant fulfillment.

  Explore More Templates  
  👉 Check out my other n8n templates

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

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


name: Monitor Dropbox Folders for New Files with DB Comparison
author_name: David Levesque
author_username: davidlevesque
categories: []
created_at: 2025-03-23T17:50:18.345Z
updated_at: 2025-03-23T17:50:18.345Z
url: https://n8n.io/workflows/3297
scraped_at: 2025-12-24 13:02:46
description:
  Here's the corrected English text:

  Dropbox Folder Monitoring Workflow

  As we don't have (yet?) a Dropbox node "Watching new files" or "Watching folder", I created this central workflow to do it.

  How it works
  Triggered by Dropbox webhook
  I respond immediately to Dropbox to avoid webhook disabling
  Then I add/duplicate one branch per monitored folder, according to my needs

  In my case, I need to monitor several folders, like "vocal notes to process", "transcriptions to LinkedIn posts" or "quotes to add".

  This workflow shows 2 types of folder monitoring:
  Way #1: Each file in the monitored folder calls a sub-workflow
  Way #2: We get all files from the monitored folder and compare them to a database. If the file is not listed in DB, i supposed it's new one.

  Way #1 - We get all files from the monitored folder
  I set a variable folder_to_watch to indicate which folder to monitor. This step is here just to be homogeneous and allow setting the folder path only once in this branch.
  I list the folder files
  We keep only files (exclude folders)
  Then I call the specialized sub-workflow

  Way #2 - We want only new files from the monitored folder
  I set a variable folder_to_watch to indicate which folder to monitor 
  I list the folder files and keep only files
  Meanwhile, I query my DB to get known files about this folder (I send the query to NocoDB (folder_to_watch,eq,{{ $json.folder_to_watch }}))
  Now I can exclude old files and keep only new ones by merging (I compare from Dropbox file id - as the file could be renamed by the user)
  I add the new file in DB to be sure to recognize it next time - I save the JSON Dropbox data:
  {
  "id":"{{ $json.id }}",
  "name":"{{ $json.name }}",
  "lastModifiedClient": "{{ $json.lastModifiedClient }}",
  "lastModifiedServer": "{{ $json.lastModifiedServer }}",
  "rev": "{{ $json.rev }}",
  "contentSize": {{ $json.contentSize }},
  "type": "{{ $json.type }}",
  "contentHash": "{{ $json.contentHash }}",
  "pathLower": "{{ $json.pathLower }}",
  "pathDisplay": "{{ $json.pathDisplay }}",
  "isDownloadable": {{ $json.isDownloadable }}
  }
  And now I can call my sub-workflow :)

  My DB
  Columns details:
  folder_to_watch
  data (json/text)
  timestamp
  file_id (Dropbox file ID, to ease future searches)

  My vision:
  I have only one workflow in my n8n that monitors Dropbox folders/files
  This workflow calls the required sub-workflow specialized for the tasks required
  I will have as many branches as I have folders to monitor (if I have 5 different folders to watch, I will get 5 branches and 5 sub-workflows)

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

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


name: Automatic Event Creation in Google Calendar from Google Sheets Data
author_name: WeblineIndia
author_username: weblineindia
categories: []
created_at: 2025-03-24T05:50:32.747Z
updated_at: 2025-03-24T05:50:32.747Z
url: https://n8n.io/workflows/3300
scraped_at: 2025-12-24 13:02:44
description:
  This workflow streamlines the process of creating events in Google Calendar using event data stored in a Google Sheet.

  The process begins by retrieving the latest event entry from Google Sheets, ensuring only the most recent event details are processed. Once fetched, a Function node formats the event date to align with Google Calendar's required format—ensuring consistency and preventing date-related errors.

  After formatting, the structured event details are sent to Google Calendar, where an event is created with essential information such as the event title (summary), description, date, and location. Additionally, the workflow allows customization by setting the event's status as either "Busy" or "Available," helping attendees manage their schedules. A background color can also be assigned for better visibility and categorization.

  By automating this process, you eliminate the need for manual event creation, ensuring seamless synchronization between Google Sheets and Google Calendar. This improves efficiency, accuracy, and productivity, making event management effortless.
  Prerequisites : 

  Before setting up this workflow, ensure the following:

  You have an active Google account connected to Google Sheets and Google Calendar.
  The Google Sheets API and Google Calendar API are enabled in the Google Cloud Console.
  n8n has the necessary OAuth2 authentication configured for both Google Sheets and Google Calendar.
  Your Google Sheet has columns for event details (event name, description, location, date, etc.).

  |Event Name|Event Description|Event Start Date|Location|
  |-|-|-|-|
  |Birthday|Celebration|27-Mar-1989|City|
  |Anniversary|Celebration|10-Jun-2015|City|

  Customization Options : 

  Modify the Google Sheets trigger to track updates in specific columns.
  Adjust the data formatting function to support:
  	Different date/time formats
  	Time zone settings
  	Custom event colors
  	Attendee invitations

  Steps :
  Step 1: Add the Google Sheets Trigger Node

  Click "Add Node" and search for Google Sheets.
  Select "Google Sheets Trigger" and add it to the workflow.
  Authenticate using your Google account (select an existing account if already authenticated).
  Select the Spreadsheet and Sheet Name to monitor.
  Set the Trigger Event to "Row Added".
  Click "Execute Node" to test the connection.
  Click "Save".

  Step 2: Process Data with Function Node

  Click "Add Node" and search for Function.
  Add the Function Node and connect it to the Google Sheets Trigger Node.
  In the function editor, write a script to extract and format data.
  Ensure the required fields (title, location, date) are properly structured.
  Click "Execute Node" to verify the formatted output.
  Click "Save".

  Step 3: Add the Google Calendar Node

  Click "Add Node" and search for Google Calendar.
  Select "Create Event" operation.
  Authenticate with Google Calendar.
  Map the required fields
  	Title
  	Description
  	Location
  	Start time
  Optional: Set Event Status and Event Colors.
  Click "Execute Node" to test event creation.
  Click "Save".

  Step 4: Final Steps

  Connect all nodes in sequence (Google Sheets Trigger → Function Node → Google Calendar Node).
  Test the workflow by adding a sample row in Google Sheets.
  Verify that the event is created in Google Calendar with the correct title, description, date, and location.

  About WeblineIndia

  This workflow was built by the AI development team at WeblineIndia. We help businesses automate processes, reduce repetitive work, and scale faster. Need something custom? You can hire AI developers to build workflows tailored to your needs.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.googleCalendar"]

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


name: Forward Filtered Gmail Notifications to Telegram Chat
author_name: WeblineIndia
author_username: weblineindia
categories: []
created_at: 2025-03-24T06:25:35.050Z
updated_at: 2025-03-24T06:25:35.050Z
url: https://n8n.io/workflows/3301
scraped_at: 2025-12-24 13:02:45
description:
  This workflow automatically forwards incoming Gmail emails to a Telegram chat only if the email subject contains specific keywords (like "Urgent" or "Server Down").

  The workflow extracts key details such as the sender, subject, and message body, and sends them as a formatted message to a specified Telegram chat.

  This is useful for real-time notifications, security alerts, or monitoring important emails directly from Telegram — filtering out unnecessary emails.

  Prerequisites: 

  Before setting up the workflow, ensure the following:

  The Gmail API should be enabled.
  Create a bot using @BotFather and obtain the API key.
  Retrieve the telegram Chat ID (for personal messages or group messages).
  Set up OAuth2 for Gmail and use the Bot Token for Telegram.

  Customisation Options :

  Modify the subject keywords in the IF Node to change the filtering criteria.
  Customize how the email details appear in Telegram (bold subject, italic body, etc.).
  Extend the workflow to include email attachments in Telegram.

  Steps :

  Step 1: Gmail Trigger Node (On Message Received)

  Select "Gmail Trigger" and add it to the workflow.
  Authenticate with your Google Account.
  Set Trigger Event to "Message Received".
  (Optional) Add filters for specific senders, labels, or subjects.
  Click "Execute Node" to test the connection.
  Click "Save".

  Step 2: IF Node (Conditional Filtering)

  Add an "IF" Node after the Gmail Trigger.
  Configure the condition to check if the email subject contains specific keywords (e.g., "Urgent", "Server Down", "Alert").
  If the condition is true, proceed to the next step.
  If false, you can stop or route it elsewhere (optional).

  Step 3: Telegram Node (Send Message Action)

  Click "Add Node" and search for Telegram.
  Select "Send Message" as the action.
  Authenticate using your Telegram Bot Token.
  Set the Chat ID (personal or group chat).
  Format the message using email details received from the email trigger node and set the message in text.

  Steps 4. Connect & Test the Workflow

  Link Gmail Trigger → if node → Telegram Send Message.
  Save and execute the workflow manually.
  Send a test email to your Gmail account.
  Verify if the email details appear in your Telegram chat.

  About the Creator, WeblineIndia

  This workflow is created by the Agentic business process automation developers at WeblineIndia. We build automation and AI-driven tools that make life easier for your team. If you’re looking to hire dedicated developers who can customize workflows around your business, we’re just a click away.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.gmailTrigger","n8n-nodes-base.if","n8n-nodes-base.telegram"]

workflow_json_compressed:
  H4sIAAAAAAAAE51W224bNxD9FWLThwQQhb1fBPTBSOo2KZw0sBMUqPLAJYcS411S4XItC4aAfkS/sF/S4a5udu2kDSAstORw5vDMmZm9C5QIZsHZze/Nlw+q59GXN5frWxlMghYcC2Z3gdKdY5rDa28XpZDyoojCtIhjVkdlniWVkMCyqIwhjSoGnJeJKLMqTyREicwFlHnMyyKDWrJgOwk0awFdnRu7ZlaQc9U4sCDIzy1TDXlrnJKKM6eM7ogz5AoaWFjWkpdL5hCXY4sumP3xCR0ZAf7v3XiHqkrTKElLGolM0DSrJK3ySNK0rEVWJVGayjg4hL90il9vfDjwTjcrv6hLTQevtGYdTLvBZmeyMp3yoDAgzcNJiABWDHEBou88Udw0xgazdBKslXDLYBaFYTgJlqAWSxfMEv/CjXag8S14Rr6LgLn2FHq4HzHsACfaTnYMABMyyzNOocgSmuZlTFnJY5rXPE9Chr+4eJSB6LsoSOL/TUL8gIRn5BV03KqVd0tmc/0Ml66WqiOIg6yNvZaNWRPWO9MiI5w1zYbIkbiOKM1Nq/Rixxz450AZO5LGkTRiNB5TkrgljFak6+vPwB3xWBhKnHQr4J53cg0bjIvenzfqGsg8+GAXiHYeEGPx7RLsDVjyyqz1PHgxRbBwxAm3zjLuOu+ECCwgj6fr+ZKwbgjegRZgJ/vwE8K0IC10HVsAqY3YjCvebDjQ+oPM3xiv7+BoO1xyhxmX7113OjKIv74D2Tf+OLHAGupUC0SfCgyhAO+tchvCGrAOF9C4NVo5Yz21ql0Ziw3A7ekVyiJynwZr2mPgv//8i8hByf6U6R3ptQbu4drN7uz0K9qt65gVpShoFdWMplByyioZUSbjImRZWItSHrX7ep/5n4ZsXox4n1TxwltdWbVYgL2v4zicoEL/JePxJv7v1ps3zRUyN+woB+3Qc1p072sO1bC5ULrHCtl+2qI5x1pGwSjWDAeG2O/OereMh/P+stnHsHp/+eYl/GLem18/rE6K8oJcIGG/keeDpl8E3iNmDLrX+hwlFswk+oWHNE7jA5FMCCl5UVOQWUlTWWe0iouMJqLOpShTmfLwGG/k7yNrlBgEgU0G+PWTRCp5n74kfZw/MxT0SNhCGwsv8fQO+3boAEIdLE6Mb/Y3iidBA9IhsN7DwKgcPVyC9qFvcMnZfs/CATwaNsZgoCFEWyvNvCpmwSCN06D7mRGnVS5CHBICZwSqLk5omfKESpQi8Los8sp3TLMCO7q62xPTOS/0w94Yfd9NPIBT+D/e3ZEfPndGTy93fWe7xaPWN8W9zdhmgkMe4yKFCsKMZrxIcYgVQMssEjTkLI/jKOR1VT2AtsvpKN7pfmcKX3qvxclXoe+MvgP4SUf0FTAZc3D1IDM+Xw+rPz6RLZSFSPM6R9nyHGdXLikrwpLWspZJWsswjOqTMsEGeew9F2NTfFK1bmd4X7sFzqLSS3cN9dKY6+EDh5cyEhEGr/MKq4fJCmFUWEKM4fAseFzLPHiodod935N17jvijBw4G96327nekzd7hM653sE/PdlptVrBuI3hsKYH1Kw5V9CIIShDAy3OHCaz7scrjeX1XxsG3hxn1VBMO5MOnENlDO7hFueCd/vO4sTC291EXhy7Ah25YjIDEDVNeY4P/LxDmkJGY1Hip0cVsTLhY93hIDiU+BMdB3dww+cFa1OPvfUbWR7sJ/iBKuA2mIXbT158T0yGx9x/q/c94n+7/Qcw/eMZMQsAAA==


name: Transform Press Releases (PDF & Word) into Polished Articles with Gmail & OpenAI
author_name: Julian Reich
author_username: julianreich
categories: []
created_at: 2025-03-24T08:01:17.609Z
updated_at: 2025-03-24T08:01:17.609Z
url: https://n8n.io/workflows/3302
scraped_at: 2025-12-24 13:02:45
description:
  This n8n workflow automates the transformation of press releases into polished articles. It converts the content of an email and its attachments (PDF or Word documents) into an AI-written article/blog post. 

  What does it do?
  This workflow assists editors and journalists in managing incoming press-releases from governments, companies, NGOs, or individuals. The result is a draft article that can easily be reviewed by the editor, who receives it in a reply email containing both the original input and the output, plus an AI-generated self-assessment. This self-assessment represents an additional feedback loop where the AI compares the input with the output to evaluate the quality and accuracy of its transformation.

  How does it work?
  Triggered by incoming emails in Google, it first filters attachments, retaining only Word and PDF files while removing other formats like JPGs. The workflow then follows one of three paths:

      If no attachments remain, it processes the inline email message directly.
      For PDF attachments, it uses an extractor to obtain the document content.
      For Word attachments, it extracts the text content by a http request.

  In each case, the extracted content is then passed to an AI agent that converts the press release into a well-structured article according to predefined prompts. A separate AI evaluation step provides a self-assessment by comparing the output with the original input to ensure quality and accuracy. Finally, the workflow generates a reply email to the sender containing three components: the original input, the AI-generated article, and the self-assessment. This streamlined process helps editors and journalists efficiently manage incoming press releases, delivering draft articles that require minimal additional editing."  

  How to set it up
  1. Configure Gmail Connection: 
  Create or use an existing Gmail address
  Connect it through the n8n credentials manager
  Configure polling frequency according to your needs
  Set the trigger event to "Message Received"
          Optional: Filter incoming emails by specifying authorized senders
  Enable the "Download Attachments" option

  2. Set Up AI Integration:
  Create an OpenAI account if you don't have one
  Create a new AI assistant or use an existing one
  Customize the assistant with specific instructions, style guidelines, or response templates
  Configure your API credentials in n8n to enable the connection

  3. Configure Google Drive Integration:
  Connect your Google Drive credentials in n8n
  Set the operation mode to "Upload"
  Configure the input data field name as "data"
  -Set the file naming format to dynamic: {{ $json.fileName }}

  4. Configure HTTP Request Node:
  Set request method to "POST"
  Enter the appropriate Google API endpoint URL
  Include all required authorization headers
  Structure the request body according to API specifications
  Ensure proper error handling for API responses

  5. Configure HTTP Request Node 2:

  Set request method to "GET"
  Enter the appropriate Google API endpoint URL
  Include all required authorization headers
  Configure query parameters as needed
  Implement response validation and error handling

  6.  Configure Self-Assessment Node:

  Set operation to "Message a Model"
  Select an appropriate AI model (e.g., GPT-4, Claude)
  Configure the following prompt in the Message field:



  Please analyze and compare the following input and output content:

  (for example)

  Original Input:
  {{ $('HTTP Request3').item.json.data }}
  {{ $('Gmail Trigger').item.json.text }}

  Generated Output:
  {{ $json.output }}

  Provide a detailed self-assessment that evaluates:
  Content accuracy and completeness
  Structure and readability improvements
  Tone and style appropriateness
  Any information that may have been omitted or misrepresented
  Overall quality of the transformation

  7. Configure Reply Email Node:

  Set operation to "Send" and select your Gmail account
  Configure the "To" field to respond to the original sender: {{ $('Gmail Trigger').item.json.from }}
  Set an appropriate subject line: RE: {{ $('Gmail Trigger').item.json.subject }}
  Structure the email body with clear sections using the following template:

  handlebars

  EDITED ARTICLE*   

  {{ $('AI Article Writer 2').item.json.output }}

  SELF-ASSESSMENT*
  Rating: 1 (poor) to 5 (excellent)
  {{ $json.message.content }}

  ORIGINAL MESSAGE*

  {{ $('Gmail Trigger').item.json.text }}

  ATTACHMENT CONTENT*

  {{ $('HTTP Request3').item.json.data }}

      Note: Adjust the template fields according to the input source (PDF, Word document, or inline message). For inline messages, you may not need the "ATTACHMENT CONTENT" section.

nodes_used:
  ["n8n-nodes-base.gmailTrigger","n8n-nodes-base.extractFromFile","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleDrive","@n8n/n8n-nodes-langchain.openAi"]

workflow_json_compressed:
  [encoded data, 7100 characters]


name: AI-Powered Research Assistant for Platform Questions with GPT-4o and MCP
author_name: Onur
author_username: onurpolat05
categories: []
created_at: 2025-03-24T09:42:01.239Z
updated_at: 2025-03-24T09:42:01.239Z
url: https://n8n.io/workflows/3303
scraped_at: 2025-12-24 13:02:42
description:
  Description

  This workflow empowers you to effortlessly get answers to your n8n platform questions through an AI-powered assistant. Simply send your query, and the assistant will search documentation, forum posts, and example workflows to provide comprehensive, accurate responses tailored to your specific needs.

  &gt; Note: This workflow uses community nodes (n8n-nodes-mcp.mcpClientTool) and will only work on self-hosted n8n instances. You'll need to install the required community nodes before importing this workflow.

  !

  What does this workflow do?

  This workflow streamlines the information retrieval process by automatically researching n8n platform documentation, community forums, and example workflows, providing you with relevant answers to your questions.

  Who is this for?

  New n8n Users**: Quickly get answers to basic platform questions and learn how to use n8n effectively
  Experienced Developers**: Find solutions to specific technical issues or discover advanced workflows
  Teams**: Boost productivity by automating the research process for n8n platform questions
  Anyone** looking to leverage AI for efficient and accurate n8n platform knowledge retrieval

  Benefits

  Effortless Research**: Automate the research process across n8n documentation, forum posts, and example workflows
  AI-Powered Intelligence**: Leverage the power of LLMs to understand context and generate helpful responses
  Increased Efficiency**: Save time and resources by automating the research process
  Quick Solutions**: Get immediate answers to your n8n platform questions
  Enhanced Learning**: Discover new workflows, features, and best practices to improve your n8n experience

  How It Works

  Receive Request: The workflow starts when a chat message is received containing your n8n-related question
  AI Processing: The AI agent powered by OpenAI GPT-4o analyzes your question
  Research and Information Gathering: The system searches across multiple sources:
     Official n8n documentation for general knowledge and how-to guides
     Community forums for bug reports and specific issues
     Example workflow repository for relevant implementations
  Response Generation: The AI agent compiles the research and generates a clear, comprehensive answer
  Output: The workflow provides you with the relevant information and step-by-step guidance when applicable

  n8n Nodes Used

  When chat message received (Chat Trigger)
  OpenAI Chat Model (GPT-4o mini)
  N8N AI Agent
  n8n-assistant tools (MCP Client Tool - Community Node)
  n8n-assistant execute (MCP Client Tool - Community Node)

  Prerequisites

  Self-hosted n8n instance
  OpenAI API credentials
  MCP client community node installed
  MCP server configured to search n8n resources

  Setup

  Import the workflow JSON into your n8n instance
  Configure the OpenAI credentials
  Configure your MCP client API credentials
  In the n8n-assistant execute node, ensure the parameter is set to "specific" (corrected from "spesific")
  Test the workflow by sending a message with an n8n-related question

  MCP Server Connection

  To connect to the MCP server that powers this assistant's research capabilities, you need to use the following URL:
  https://smithery.ai/server/@onurpolat05/n8n-assistant

  This MCP server is specifically designed to search across three types of n8n resources:
  Official documentation for general platform information and workflow creation guidance
  Community forums for bug-related issues and troubleshooting
  Example workflow repositories for reference implementations

  Configure this URL in your MCP client credentials to enable the assistant to retrieve relevant information based on user queries.

  This workflow combines the convenience of chat with the power of AI to provide a seamless n8n platform research experience. Start getting instant answers to your n8n questions today!

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

workflow_json_compressed:
  H4sIAAAAAAAAE71WC2/bNhD+K4QwIG0huno/AgxYZnRDh2UJtm5d1xQpRZ5srjKpklQeDfzfd5ScOA+na4FhBgzL5PG+77sHT1fBChwL9q8CqaxjisNLEewHUQJlleRlBk2TRm0jRJPwtBVVmvA6K7KiEGVcVXEtkrwtWsiaOoniJGvbtOUJj4MwcLDqO+ZgbkDY38AN/VzjCjhAAGcGWIeB0gJssP8W0T1qw/OqEWVK6yRmNMtyTlkd5bRo46ZpeAQ1T9GzYitA69dLUIQvmSMrsJYtgBjgIM/QP6Jf9t7mO1Wp5/ilIxLtmFrgCalm/twrIxcLMGjdayud1AqpxHERhVkSvQuDc2iWWn8YA8LbskjyPKJ1BSXNkjaiLGpTykWd11maxjyKvCNmkJwDY31Ide+d+sf1eqL0B+6MOPEsXocb2WlUMWBlRJMqjWnGGkHrqC2oyHjTpnUUN5BtZaMa8itYYIYvycFLcrAA5b5AMdvY3daaZddaHyMe2EuLmTycIoz+3+iBMAOEKcKslb5mHJHKwcJgsgU5l25J3BKI53k4dE7S+ZIpBR05xnJotVmRJ4fz46czgq4M6Y1cMXNJjO6ASEucHr0Zxt3WF9r7DQPOSDhD8DMmO9bgCad1Z5GMIFzjMeTSMIs0tCKDBUM+DoBH0KLRg/OcZmSsGzZtM/vBEuSEmJ4Z87KJNjfSuC+qBTNCqoU/HZJWGuuIBURkuIf+8S9yu0WzBccn3gY6OPMBekBzRg4U6y4/wcZuEiaIYI55H4MSmAvnT3iDreBNakK/jOVvAKOOTBzua+w0dGV73Pd+sTOYELhgMQBoLg2xPXDZSk4UYFfe1UbaQXHvnHVYIIAQQvNhhWTHsIQ+TsOKYP043MMgwQXzDU3OtfnQdvrczsgLZQezwb706b2mY8ei4R2WbUjYBINywjEmQmLnuu7Sx2ssok08fYr27I4cBjv6qbrppxr7pqzanKZ5EuE1kia0SXlNozzJshg/KdR3+oluK/kVJor8jF0/9Nue2rbTivcz/M47iWHxtvcaKo+isMgeNBSyxUwJPCNZN7bVjZODXo63ryd+Hv91pI//fPPjp+J1sohfPUJyh/ob7WXFqrLOaspagVcozxPKoG5pW4k0S9umyIvyMe0vLoAPWE0bXV8tvtwtPvDF/8sE+O3V1Tet0auDl09OxvWTIDwJcDpgvrH5b8rTbxFP8iR4ul4jju7xSpiAAph4XtPEn+NbeB6DPH82ShucpnjtwXg10QmY6jMwRgp49pxcc9nzvk63XvZC8v59SPb+tlrtPSXI4P/LIOdxEdfAcephGrMcClqxssE6jgQrAXKcklu3Rz0oHAJz33CHmKUu+YJR0K28/XhU3sthmuzO4cr79g+np6ab5nc4LiJOh6LQzRnrBv930TuaabqSSvqw3R2C94KoRw63I/gxkdHFgfzh4vejN0fdT9F9qaffz493tX+yRs54uSrgN7NrR3BwlclTH4oB59nhpOotvoCoScu/TNcHZ0N8bxJwEexH63fv/BvNo7fJhOyr9SsB3VTnd3E+8/Ljs4VZ/hqU0f7zUu5cDv+llvX6H5OQPHSECgAA


name: Custom Deal Recommendations by Email using Forms, Bright Data & GPT-4o-mini
author_name: Miquel Colomer
author_username: mcolomer
categories: []
created_at: 2025-03-24T09:46:22.640Z
updated_at: 2025-03-24T09:46:22.640Z
url: https://n8n.io/workflows/3304
scraped_at: 2025-12-24 13:02:46
description:
  This n8n workflow template automates the process of collecting and delivering the "Top Deals of the Day" from MediaMarkt, tailored to user preferences. By combining user-submitted forms, Bright Data web scraping, GPT-4o-mini deal generation, and email delivery, this workflow sends personalized product recommendations straight to a user’s inbox.

  &gt; ⚠️ Note: This workflow uses community nodes (Bright Data and Document Generator) which only work on *self-hosted n8n instances*.

  🚀 What It Does

  Collects user preferences via a form (categories + email)
  Scrapes MediaMarkt’s deals page using Bright Data
  Uses GPT-4o-mini (OpenAI) to recommend top deals
  Generates a structured HTML email using a template
  Sends the personalized deals directly via email

  🧩 Community Node Integration
  We created and used the following community nodes:

  Bright Data** – To scrape MediaMarkt deals using proxy-based scraping
  Document Generator** – To generate a templated HTML document from deal data

  These nodes are not available in n8n Cloud and require self-hosted n8n.

  🛠️ Step-by-Step Setup

  Install Community Nodes  
     Make sure you're on a self-hosted n8n instance. Install:
     n8n-nodes-brightdata
     n8n-nodes-document-generator

  Configure Credentials  
     Bright Data API Key (Proxy + Scraping setup)
     OpenAI API Key (GPT-4o-mini access)
     SMTP Credentials for sending emails

  Customize the Form  
     Adapt the form node to collect desired categories and email addresses. Typical categories include appliances, phones, laptops, etc.

  Design Your HTML Template  
     In the Document Generator node, you can tweak the HTML/CSS to change how deals appear in the final email.

  Test the Workflow  
     Submit the form with test data and check that the entire flow—from scraping to email—executes as expected.

  🧠 How It Works: Workflow Overview

  User Interaction via Form  
     Users select product categories and enter their email. This triggers the workflow.

  Data Extraction via Bright Data  
     Bright Data scrapes the MediaMarkt offers page and returns HTML content.

  HTML Parsing  
     Key elements like product names, prices, and links are extracted for processing.

  GPT-4o-mini Recommendation Generation  
     The extracted data is sent to OpenAI (GPT-4o-mini), which filters, ranks, and enhances deals based on the user’s preferences.

  Data Structuring & Split  
     The result is split into individual deal items to be formatted.

  HTML Document Creation  
     Document Generator populates a clean HTML template with the top recommended deals.

  Email Delivery  
     The final document is emailed via SMTP to the user with a friendly message.

  📨 Final Output

  Users receive a custom HTML email featuring a curated list of top MediaMarkt deals based on their selected categories.

  🔐 Credentials Used

  Bright Data API** – Web scraping with proxy support  
  OpenAI API** – Generating personalized recommendations  
  SMTP** – Sending personalized deal emails

  ✨ Customization Tips

  Change the Data Source**: You can adapt this to scrape other e-commerce sites.
  Update the Email Template**: Make it match your branding or include images.
  Extend the Form**: Add preferences like price range or specific brands.
  Add Scheduling**: Use Cron to run the workflow daily or weekly.

  ❓Questions?

  Template and node created by Miquel Colomer and n8nhackers.com.  

  Need help customizing or deploying? Contact us for consulting and support.

nodes_used:
  ["n8n-nodes-brightdata.brightData","n8n-nodes-document-generator.documentGenerator","n8n-nodes-base.splitOut","n8n-nodes-base.emailSend","n8n-nodes-base.form","n8n-nodes-base.html","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.formTrigger"]

workflow_json_compressed:
  H4sIAAAAAAAAE5VY644TyxF+lcaJAkhur+c+tgBlWa46LMsJDigJCPV016yHnduZ7mExK//J8+Sp8iSp6vGsL2sbIq0suy91/eqr6r0ZFGDEYHozyEptRCnhtRpMB4mTxgEI8AI3VRCFKh47whGh44aho9Iwdn0pXQjjJFVh5DvgOd44cMKxiLwIQhgMBwaKOhcGzhpQ+j2Ytj6rcAUMoALTtLAcDspKgR5M/4XaSatAnWkaj7nvefiRqJgLqSZ8kqQhjJMwksEEJZeiADz9Egw7B5WJc9FcGXaRptBo9hESnRlrwKKmY2VccquHJ012OTdKGDHqvj7Dr3iwrvBGVpVoiD8ecvTiMy6KBtUYFEnBaZscRc2NqfX05OT6+npUkOaCNI9An+CfFEUtssuy+1IKzRe8QpOM0KjjR1UCCfryhSSR+8NBgVah1DzTBk98E3lLP68h+dKWeSWvoHFwXQo5B/U30G1u3naebx/BOKZVUwiDO181uoF3qrY0zeLXFILerwXXUXQDf7SgzUVNEaJYLHFRYk6hNJnIbXTWgT2tM4slyubXq4kfXL1uT1+cVpNEXq4z9/Q2+kxIa+uApFLCPmDAbSqc5XAlR7lRMvZgzJNx6nBfRiFPwhi4ipzQmzgycpRYy0a4IejYq9n5G4ZhYc8LkeX70KAq2RboBL+EEhphqmbUL73sV7bBEY6HzvguNnqgo/RHSfPkUzmbgwYmGmBV27AGZFWgVAWKKcCIMVMpsZh2Zx+1OX7e3PwJMAEMgVvo5RKX8+zJzY1EqZdVs1gup+yRYPMG0seftlCYYGqSdjFCFTc3eVZe4eUB3qRgLJePTsQTG4Sbm7rJJK7899//eXSCsknlCam0yk6sEWQQOoxAnd16tKrTQ5nxI4Cxn3LpyID7QkiOFBFwIcI4DYSrQqnWmXn+3TRCms5JljZVgbEhvOm9xSo0jHSdZ+aiNdt54I6/PxPVGqRYExnkala970VMkem0FpeAwSoNZnnUaz/soOcj13kKkIHGivuuH/A4jSPuhYEvRTKWTgRrB99WJksX7Hmp2N81NCxZHEafdQ9o9z1CY9s/N+7dw0KfV9WVpeTQDcdjRyU88AMsA9cNeJJOYi5V5EtvErhR4A92IzI3BRHX41fZvS7BlHj2Z6KJkYHvhlH+P5VPEUbD/gDCl6Ghc0H0gmgFUdwjXGwGV7fJV5AU1H8QxnOhTQduOmmqzm3US8oe3P84h7ILSd8CNHuBlHX/4SjNGm0ePBxZi+y15RJFEDp6IVbuX9cWEdgHd0lIF6a+5Z4f3lX25uPbf85e+de/i5eLdZLen8/eHWYdd7ROfpokKoJJwNUkcrmPDZBPhBQcW2GAvVCmQeBtyJ1X19Yp1pGoZu8QawdTT4y903r2Zl2EUex7ic89kUww61HCYwhcrlLpu7HnjMNA3cn6VqqqmrjM6sC+YMOfrZpE/2OWmZxsvNhHV/e2jp53NUS5/QhsLr4B05gE1iX6cIljqkWeY6JzKC/NHHG3lxjZguBk6+LekboE7AeJdBOuEh9TI2LF4yiIeeKpSRxLP5n43l3ieVqpBRNYndbfzrxj4wLlyRbQdnUemhHWUR+YJis+UHvVtxS6mQboDHqFss86LkIV1D7fNXTMLFYdOEGDcWd1HO/2Mm+65t2NTleAjX5gbA4xVRqHrRxrE7tXv0px606tJG4fsovLz3db8Mi9jXjkIwMi1XAVex73A1fy2E2RGGPhOonyJspxN0cz20CBvcFRg1Upe2bzi4R4tmpp64BTZZ+so56L8lLORVaOMBTlabZD/YG7n/pptMmpYn5l4rmsDfcrXmRltn/0efluxv0Lfv767evBcof6Vl1kNwtNZUtILzRi35ZMl9iNYAiWr8JxF/pZyYgC7YkRO0NC1dRLukLCuPWjwIjdijPE08ThdYeaDPSUUQKGKFPLJrNWD5lt/UNG04FF/1rUaZ5vXGbXGf5OgGwR/TppznNQ076QR2zWiFLn1gLUbqsWaxoNx/mFXPujzZCZRxZ16yg8praSlXVr7DWW6elGLyIIIifs3lmhhYxDLWmWY7qn7KdNhaLWdZQebqOvVVY+uD+8/9Bq+Yx5pH2cC2oaDVY1utNROgBujrTVbz/SbxfXGVwUflv/voH4C3v2yDg7im9rSTjjSSBB8FAoiQNtii8cD2vJQ7JXcoyPrChcSz7k59HWMsMJ+xKa3bkpvqWuzR7jeRCnkfSoohN6e6E9coIzRuJMcJSTjp+IIz0GN8ycqgoMN1XNLaDxPL6FqgaeVkb31Zi0xlTlG5FAvnq/WV7oXzB9G5pVNeuF0PoLmuR2660b77oAKMSqqq6pqdnlXsMG2RSI3UxbzuutsUfX75pN4Z1zKOG0xvGRXsXaQvN2/Qwj0Qg9RD4rzqpG0aD0F/asweH5zkl8g5Ba3MukZju7gCX3br7nGua6NZ3YmUgw7TsHZh9w51VVAMPCQj+b7e0PmYKKvUQzdQf3vi5tMHvEb4cRVsPqVgz7CRYfBBLmVY6urswjKG7068F+HZ1uXWOQ4XzFxjgtvqWvXXqfrcmK/Jpnmt4sNDmYtimp8ldwIB60+mp8CEEDlBYiKyJCjZ6ymqZ7mmdxKEXeKpkmZm/zlZlpiwJhJavC2wwZjuFbjAljhSAhEzsbMgHLzIzujCAutsTPltxLkLfI2f/mpK6EfQwBhYgqO9d//kSwV7B4sDd8H0zHy88UwIPX9un42SS6V8NBltmn4Rf/87JX0ZFX4D5VP3nO71Vx3Lx9Wv6vCfGAzp9OPMcUH3sTHw3jMYv3p+7XJ7M9ipfL/wFsybBSMRQAAA==


name: 🗼 AI Powered Supply Chain Control Tower with BigQuery and GPT-4o
author_name: Samir Saci
author_username: samirsaci
categories: []
created_at: 2025-03-24T10:55:56.536Z
updated_at: 2025-03-24T10:55:56.536Z
url: https://n8n.io/workflows/3305
scraped_at: 2025-12-24 13:02:46
description:
  Tags: Supply Chain, Logistics, Control Tower

  Context

  Hey! I’m Samir, a Supply Chain Engineer and Data Scientist from Paris, and the founder of LogiGreen Consulting.

  We design tools to help companies improve their logistics processes using data analytics, AI, and automation—to reduce costs and minimize environmental impact.

  &gt; Let’s use N8N to build smarter and more sustainable supply chains!

  📬 For business inquiries, you can add me on LinkedIn

  Who is this template for?

  This workflow template is designed for logistics operations that need a monitoring solution for their distribution chains.

   

  Connected to your Transportation Management Systems, this AI agent can answer any question about the shipments handled by your distribution teams.

  How does it work?

  The workflow is connected to a Google BigQuery table that stores outbound order data (customer deliveries).



  Here’s what the AI agent does:
  🤔 Receives a user question via chat.  
  🧠 Understands the request and generates the correct SQL query.  
  ✅ Executes the SQL query using a BigQuery node.  
  💬 Responds to the user in plain English.

   

  Thanks to the chat memory, users can ask follow-up questions to dive deeper into the data.

  What do I need to get started?

  This workflow requires no advanced programming skills.

  You’ll need:
  A Google BigQuery account with an SQL table storing transactional records.
  An OpenAI API key (GPT-4o) for the chat model.

  Next Steps

  Follow the sticky notes in the workflow to configure each node and start using AI to support your supply chain operations.

    

  🎥 Watch My Tutorial

  🚀 Curious how N8N can transform your logistics operations?  

  Notes

  The chat trigger can easily be replaced with Teams, Telegram, or Slack for a better user experience.
  You can also connect this to a customer chat window using a webhook.

  This workflow was built using N8N version 1.82.1  
  Submitted: March 24, 2025

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

workflow_json_compressed:
  [encoded data, 4764 characters]


name: Analyze Telegram Messages with OpenAI and Send Notifications via Gmail & Telegram
author_name: Immanuel
author_username: spectrabit
categories: []
created_at: 2025-03-24T11:31:45.336Z
updated_at: 2025-03-24T11:31:45.336Z
url: https://n8n.io/workflows/3306
scraped_at: 2025-12-24 13:02:46
description:
  AI-powered Telegram message analysis with multi-tool notifications (Gmail, Telegram)

   
  This workflow triggers on Telegram updates, analyzes messages with an AI Agent using MCP tools, and sends notifications via Gmail and Telegram.

  Detailed Description

  Who is this for?
  This template is for teams, businesses, or individuals using Telegram for communication who need automated, AI-driven insights and notifications. It’s ideal for customer support teams, project managers, or tech enthusiasts wanting to process Telegram messages intelligently and receive alerts via Gmail and Telegram.

  What problem is this workflow solving?  Use case
  This workflow solves the challenge of manually monitoring Telegram messages by automating message analysis and notifications. For example, a support team can use it to analyze customer queries on Telegram with AI tools (OpenAI, Airbnb, Brave, FireCrawl) and get notified via Gmail and Telegram for quick responses.

  What this workflow does
  The workflow:  
  Triggers on a Telegram update (e.g., a new message) using the Listen for Telegram Updates node.  
  Processes the message with the Analyze Message with AI node, an AI Agent using MCP tools like OpenAI Chat, Airbnb search, Brave search, and FireCrawl.  
  Sends notifications via the Send Gmail Notification and Send Telegram Alert nodes, including AI-generated insights.

  Setup
  Prerequisites:  
  Telegram bot token for the trigger and notification nodes.  
  Gmail API credentials for sending emails.  
  API keys for OpenAI, Airbnb, Brave, and FireCrawl (used in the AI Agent).  

  Steps:  
  Configure the Listen for Telegram Updates node with your Telegram bot token.  
  Set up the Analyze Message with AI node with your OpenAI API key and other tool credentials.  
  Configure the Send Gmail Notification node with your Gmail credentials.  
  Set up the Send Telegram Alert node with your Telegram bot token.  
  Test by sending a Telegram message to trigger the workflow.  

  Setup takes ~15-30 minutes. Detailed instructions are in sticky notes within the workflow.

  How to customize this workflow to your needs
  Add more AI tools (e.g., sentiment analysis) in the Analyze Message with AI node.  
  Modify the notification message in the Send Gmail Notification and Send Telegram Alert nodes to include specific AI outputs.  
  Add nodes for other channels like Slack or SMS after the AI Agent.

  Disclaimer
  This workflow uses Community nodes (e.g., Airbnb, Brave, FireCrawl), which are available only in self-hosted n8n instances. Ensure your n8n setup supports Community nodes before using this template.

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-mcp.mcpClientTool","n8n-nodes-mcp.mcpClientTool","n8n-nodes-mcp.mcpClientTool","n8n-nodes-mcp.mcpClientTool","n8n-nodes-mcp.mcpClientTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.stickyNote","n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.gmail","n8n-nodes-base.telegram","n8n-nodes-mcp.mcpClientTool"]

workflow_json_compressed:
  [encoded data, 7056 characters]


name: 🍅 Custom Pomodoro Tracker using Telegram and Google Sheet
author_name: Samir Saci
author_username: samirsaci
categories: []
created_at: 2025-03-24T11:35:08.457Z
updated_at: 2025-03-24T11:35:08.457Z
url: https://n8n.io/workflows/3307
scraped_at: 2025-12-24 13:02:47
description:
  Tags: Productivity, Pomodoro, Organization

  Context  
  Hey! I’m Samir, a Supply Chain Engineer and Data Scientist from Paris, founder of LogiGreen Consulting 🌱

  A significant improvement in my productivity came from following the Pomodoro Technique.

  What is the Pomodoro Technique?  
  The Pomodoro Technique is a time management method that breaks your workday into 25-minute focus intervals followed by short breaks. After 4 cycles, you take a longer break to recharge.  
  It helps maintain concentration while preventing burnout.



  I’ve used this technique with web apps to receive break/work notifications. But I always wished I had a way to track my sessions for self-assessment.

  &gt; Let’s use n8n to boost our productivity and log our deep work sessions automatically!

  📬 For business inquiries, you can add me on Here

  Who Is This Template For?  
  I built this workflow for creators, freelancers, students, and professionals who love the Pomodoro technique but want more than just timers — they want data.

  This template helps you:
  Track every deep work session automatically
  Store logs in Google Sheets for later analysis
  Stay in control via Telegram commands  

  There is no need to pay for premium apps. It’s all free and powered by n8n.

  How Does It Work?  
  This Telegram bot tracks your Pomodoro sessions and sends you alerts during the process.

  Here’s what happens:

  A user sends /start to the bot.
  It launches a 25-minute deep work timer.
  After 25 minutes, the bot sends a break reminder.
  After four cycles, a long break is triggered and the session is logged.
  The session is automatically recorded to Google Sheets with (Date & Time, User ID, Pomodoro count, Session ID, Duration of focus and breaks)

  What Gets Tracked?

  | Field              | Description                          |
  |-------------------|--------------------------------------|
  | Date & Time        | When the session was logged          |
  | User ID           | Your Telegram ID                     |
  | Block Type    | Deep Work or Short Break
  | Pomodoro Count    | Number of cycles completed            |
  | Working Session ID        | Unique ID for each session           |
  | Focus Duration    | Length of each deep work session     |
  | Break Duration    | Short or long break info             |

  You can use this workflow as a base to bring additional features like:
  Connecting with tasks from Google Task
  Send automated productivity reports to monitor your activity
  Link a Pomodoro with a task using Google Calendar

  What Do I Need to Start?

  This workflow is beginner-friendly — no coding required.

  Google Drive API* and *Google Sheet API** credentials
  A Google Sheet set up to log sessions (with the columns of the table above)
  API Credentials:
    Google Sheets API (OAuth2)
    Telegram Bot Token
  Telegram app to chat with the bot

  &gt; The template is plug-and-play. Just follow the sticky notes in the n8n editor to configure it.

  Next Steps  
  Follow the sticky notes in the n8n workflow editor to:

  Set your credentials  
  Connect your Google Sheet  
  Initialize the static data  
  Launch your first /start command on Telegram


    
  🎥 Watch My Tutorial

  🚀 Curious how n8n can supercharge productivity and learning skills??  
  📬 Let’s connect on LinkedIn

  This workflow has been created with N8N 1.82.1
  Submitted: March 24th, 2025

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.telegramTrigger","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.wait","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.telegram","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6060 characters]


name: Push Multiple Files to GitHub Repository via Github REST API
author_name: Custom Workflows AI
author_username: customworkflowsai
categories: []
created_at: 2025-03-24T12:24:08.927Z
updated_at: 2025-03-24T12:24:08.927Z
url: https://n8n.io/workflows/3308
scraped_at: 2025-12-24 13:02:46
description:
  Introduction
  This workflow offers a streamlined solution for uploading multiple files to a GitHub repository simultaneously using GitHub's REST API. It addresses a significant limitation of n8n's native GitHub node, which only supports single-file uploads at a time. By leveraging GitHub's Git Data API, this workflow creates a new Git tree containing multiple files, commits this tree, and updates the target branch—all in a single automated process.

  The workflow is particularly valuable for automation scenarios that require batch file operations, such as deploying website updates, publishing documentation, or maintaining configuration files across repositories. It eliminates the need for multiple separate API calls when working with multiple files, making your automation more efficient and less prone to partial update issues.

  By abstracting the complexities of GitHub's Git Data API into a reusable workflow, it provides a practical solution for developers, content managers, and DevOps professionals who need to programmatically manage repository content at scale.

  Who is this for?
  This workflow is designed for:

  Developers and DevOps engineers who need to automate file updates in GitHub repositories
  Content managers who regularly publish multiple files to GitHub-hosted websites or documentation
  Automation specialists looking to integrate GitHub operations into larger workflows
  Teams using n8n for CI/CD processes who need to push code or configuration changes

  Users should have basic familiarity with GitHub concepts (repositories, branches, commits) and should be comfortable obtaining and using GitHub Personal Access Tokens. While the workflow handles the API complexity, users should understand the fundamentals of version control to effectively utilize and customize it.

  What problem is this workflow solving?
  This workflow addresses several key challenges:

  Limited batch operations: n8n's native GitHub node only supports uploading one file at a time, making multi-file operations cumbersome and inefficient.

  API complexity: GitHub's Git Data API requires multiple sequential calls with interdependent data to create commits with multiple files, which is complex to implement manually.

  Automation bottlenecks: Without this workflow, automating multi-file updates would require either multiple separate API calls (risking partial updates) or custom scripting outside of n8n.

  Consistency issues: When files need to be updated together (e.g., code and corresponding documentation), this workflow ensures they're committed in a single atomic operation.

  By solving these issues, the workflow enables reliable, atomic updates of multiple files, maintaining repository consistency and simplifying automation processes.

  What this workflow does
  Overview
  This workflow uses GitHub's REST API to push multiple files to a repository in a single operation. It follows Git's internal model by:
  Retrieving the current state of the repository
  Creating a new tree with the files to be added or updated
  Creating a new commit with this tree
  Updating the branch reference to point to the new commit

  Process
  Initialization: The workflow starts with a manual trigger and sets up GitHub credentials and repository information.

  File Content Definition: Two "Set" nodes define the content for the files to be uploaded.

  Repository State Retrieval: 
     The workflow fetches the latest commit SHA for the specified branch
     It then retrieves the base tree SHA from this commit

  Tree Creation: A new Git tree is created that includes both files (file1.txt and file2.txt), specifying their paths and content.

  Commit Creation: A new commit is created with the specified commit message, referencing the new tree and the parent commit.

  Branch Update: Finally, the branch reference is updated to point to the new commit, making the changes visible in the repository.

  Setup
  To use this workflow:

  Import the workflow: Download the workflow JSON and import it into your n8n instance.

  Create a GitHub Personal Access Token:
     Go to GitHub Settings → Developer Settings → Personal Access Tokens → Fine-grained tokens
     Create a new token with "Contents" permission (Read and write) for your target repository

  Configure the workflow:
     Update the "Set Github Info" node with:
       Your GitHub Personal Access Token
       Your GitHub username
       Your repository name
       The target branch (default is "main")
       A commit message

  Define file content:
     Modify the "File 1" and "File 2" nodes with the content you want to upload

  Adjust file paths if needed:
     In the "Create new tree" node, update the file paths if you want to change where the files are stored in the repository

  Save and run the workflow: Click "Test workflow" to execute the process.

  How to customize this workflow to your needs
  This workflow can be adapted in several ways:

  Add more files: 
     Create additional "Set" nodes for more file content
     In the "Create new tree" node, add more tree entries following the same pattern (path, mode, type, content)

  Change file locations:
     Modify the "path" parameters in the "Create new tree" node to place files in different directories

  Dynamic file content:
     Replace the static content in the "File" nodes with data from other sources
     Use previous nodes or HTTP requests to generate file content dynamically

  Conditional file updates:
     Add IF nodes to determine which files should be updated based on certain conditions
     Create separate branches in your workflow for different update scenarios

  Scheduled updates:
     Replace the manual trigger with a Schedule node to run the workflow at specific intervals
     Combine with other triggers like Webhook or database events to push files when certain events occur

  Error handling:
     Add Error Trigger nodes to handle potential API failures
     Implement notification nodes to alert you of successful pushes or failures

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

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


name: WebSecScan: AI-Powered Website Security Auditor
author_name: Dale Dunlop
author_username: daledunlop
categories: []
created_at: 2025-03-24T18:13:24.596Z
updated_at: 2025-03-24T18:13:24.596Z
url: https://n8n.io/workflows/3314
scraped_at: 2025-12-24 13:02:42
description:
  WebSecScan: AI-Powered Website Security Auditor

  This n8n workflow provides comprehensive website security analysis by leveraging OpenAI's models to detect vulnerabilities, configuration issues, and security misconfigurations. The workflow generates a professional HTML security report delivered directly via Gmail.

  Key Features

  Dual-Layer Security Analysis:** Performs parallel security audits using specialized OpenAI agents:
    Header Configuration Audit: Analyzes HTTP headers, CORS policies, CSP implementation, and cookie security
    Vulnerability Assessment: Identifies XSS vectors, information disclosure, and client-side weaknesses
    
  Detailed Security Grading:** Automatically calculates a security grade (A+ to F) based on findings severity and quantity

  Professional Report Generation:** Creates a comprehensive HTML report with:
    Security grade visualization
    Color-coded vulnerability categories
    Detailed recommendations with example configuration fixes
    Header presence/absence indicators
    Implementation guidance for remediation

  Non-Invasive Testing:** Performs analysis without active scanning or exploitation attempts

  Technical Implementation

  Multi-Agent Architecture:** Utilizes two specialized OpenAI agents with custom prompts tailored for security analysis
  Advanced Header Analysis:** Detects presence and proper implementation of critical security headers:
    Content-Security-Policy
    Strict-Transport-Security
    X-Content-Type-Options
    X-Frame-Options
    Referrer-Policy
    Permissions-Policy

  Intelligent Issue Detection:** Uses JavaScript processing to analyze OpenAI outputs and count critical/warning issues
  Responsive HTML Report:** Dynamically generates a mobile-friendly report with detailed findings and recommendations

  Setup Requirements

  1. OpenAI API Configuration
  Create an OpenAI API key at platform.openai.com
  In n8n, go to Settings → Credentials → New → OpenAI API
  Enter your API key and save

  2. Gmail Integration
  Navigate to Settings → Credentials → New → Gmail OAuth2 API
  Complete the OAuth authentication flow
  Configure recipient email in the "Send Security Report" node

  3. Workflow Customization (Optional)
  Modify the form title/description in the Landing Page node
  Upgrade from gpt-4o-mini to gpt-4o for more comprehensive analysis
  Add additional recipients to the email report

  Usage Instructions

  Activate the workflow and access the form via the generated URL
  Enter any website URL to analyze (including the http:// or https:// prefix)
  Receive a detailed security report via email within minutes
  Share findings with your development team to implement fixes

  This workflow represents a non-invasive security assessment tool. For production environments, complement with professional penetration testing services.

nodes_used:
  ["n8n-nodes-base.formTrigger","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.merge","n8n-nodes-base.aggregate","n8n-nodes-base.code","n8n-nodes-base.gmail","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.code","n8n-nodes-base.code"]

workflow_json_compressed:
  [encoded data, 15232 characters]


name: AI-Powered Product Research & Comparison with GPT-4o and SerpAPI
author_name: AiAgent
author_username: lifehacks
categories: []
created_at: 2025-03-25T02:47:46.888Z
updated_at: 2025-03-25T02:47:46.888Z
url: https://n8n.io/workflows/3315
scraped_at: 2025-12-24 13:02:46
description:
  What It Does
  This powerful workflow can take hours of difficult research attempting to identify the perfect product to buy and condense it into a few short minutes. Simply typing the name of an item you wish to purchase into a chat message will initiate the workflow to begin its search process to identify 5 top of the line products for you to purchase. The initial chat with prompt the Item Finder AI agent utilizing the power of GPT-4o in combination with SerpAPI to conduct a search and find 5 top end items that match the prompt. It will then send the name of each item to a separate Reviewer Tools Agent that will gather information on each item. Each Reviewer Tools Agent will again harness the power of GPT-4o and SerpAPI to give a detailed description of the item features, lowest price available, options of retailers available to purchase the item, a summary of the reviews and overall star ratings. 
  Who This Is For
  This is the perfect workflow for anyone who is interested in making a big-time purchase and wants to have all the information presented in a quick organized fashion to make the best decision possible. Rather than searching through multiple stores and reading through hundreds of reviews and product description, you can now utilize the power of GPT-4o and SerpAPI to conduct that search for you and bring all the information to you. Whether you are searching for a TV with the best screen quality, a work laptop that will have the power and memory you need, or that unique item for your business that is difficult to find and even harder to find the cheapest price, this workflow is exactly what you need.
  How It Works
  Begin by opening the chat trigger node and typing the name of an item you would like to purchase and would like it to do an in-depth search for. Example: golf driver, gaming desktop computer, or mid-size three row SUV.
  This will trigger the Item Finder Tools Agent to begin to utilize GPT-4o to begin to create search queries based off the item you wish to purchase. It will then use these search queries with SerpAPI to identify 5 high quality, modern items. After it has obtained the names of five items it will then in a structured output, send each item to a separate Reviewer Tools Agent.
  Once the Reviewer Tools Agent has received the name of the item it will then begin an in-depth review of that item. Each Reviewer Tools Agent will again use the power of GPT-4o connected with SerpAPI to obtain the most up to date information on each item from the internet. For each item you will be provided with:
  Detailed description of item features
  	It will go in depth and give features that make that item unique. Qualities that will allow you to compare one items features to another.
  Lowest Price available
  Online retail stores available for purchase
  Summary of reviews
  	It will give both the pros and cons discussed by various reviewers in regard to the item.
  Overall star rating
  After each of the Reviewer Tools Agent is complete with its review of the item, they will all send the information along to a Compiler Tools Agent.  This tools agent uses GPT-4o-mini to arrange the data and present it in a concise, organized fashion. This allows for easy readability.
  Set Up Steps
  Set up steps:
  You will need to obtain an Open AI API key from platform.openai.com/api-keys
  After you obtain this Open AI API key you will need to connect it to the Open AI Chat Model for all of the Tools agents (Item finder, Reviewer 1, Reviewer 2, Reviewer 3, Reviewer 4, Reviewer 5, and Compiler).
  You will now need to fund your Open AI account. GPT 4o costs ~$0.06 to run the workflow.
  Next you will need to create a SerpAPI account at https://serpapi.com/users/sign_up
  After you create an account you will need to obtain a SerpAPI key.
  You will then need to use this key to connect to the SerpAPI tool for each of the tools agents (Item finder, Reviewer 1, Reviewer 2, Reviewer 3, Reviewer 4, and Reviewer 5)
  	Tip: SerpAPI will allow you to run 100 free searches each month. This workflow uses ~8-15 SerpAPI searches per run. If you would like to utilize the workflow more than that each month, create multiple SerpAPI accounts and have an API key for each account. When you utilize all 100 free searches for an account, switch to the API key for another account within the workflow.
   

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.toolSerpApi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.merge","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolSerpApi","@n8n/n8n-nodes-langchain.toolSerpApi","@n8n/n8n-nodes-langchain.toolSerpApi","@n8n/n8n-nodes-langchain.toolSerpApi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolSerpApi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote"]

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


name: Automated Resume Review System Using OpenAI + Google Sheets
author_name: Mirza Ajmal
author_username: ajmalmirza
categories: []
created_at: 2025-03-25T09:20:13.331Z
updated_at: 2025-03-25T09:20:13.331Z
url: https://n8n.io/workflows/3318
scraped_at: 2025-12-24 13:02:43
description:
  Who is this for?
  This workflow is ideal for:
  HR teams and recruiters seeking to streamline resume screening.
  Hiring managers who want quick, summarized candidate insights.
  Recruitment agencies handling large volumes of applicant data.
  Startups and small businesses looking to automate hiring without complex systems.
  AI and automation professionals who want to build smart HR workflows using n8n and OpenAI.

  What problem is this workflow solving? / Use Case
  Manually reviewing resumes is time-consuming, inconsistent, and prone to human bias. 
  This workflow automates the resume intake and evaluation process—ensuring that each applicant is screened, summarized, and scored using a consistent, data-driven method.
  It enhances efficiency and supports better hiring decisions.

  What this workflow does

  Accepts resume submissions via form and saves files to Google Drive.
  Extracts key information from resumes using AI (e.g., name, contact, education, experience).
  Summarizes candidate qualifications into a short, readable profile.
  Allows HR to rate applicants and leave comments.
  Logs all extracted data and evaluations into a centralized Google Sheet for tracking.

  Setup

  Resume is submitted through an n8n form.
  The uploaded file is automatically stored in Google Drive.
  n8n uses OpenAI and document parsing tools to extract candidate data.
  Extracted information is structured and summarized using GPT.
  A review form is triggered for internal HR rating and notes.
  All data is appended to a Google Sheet for records and filtering.
  How to customize this workflow to your needs**

  Change the form tool (e.g., Typeform, Tally, or custom HTML) based on your stack.
  Adapt the summary prompt to align with your specific role requirements.
  Add filters to auto-flag top-tier candidates based on score or skills.
  Integrate Slack or email to notify hiring managers when top resumes are processed.
  Connect to your ATS if you want to push processed resumes into your recruitment system.

nodes_used:
  ["n8n-nodes-base.formTrigger","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDrive","n8n-nodes-base.extractFromFile","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainSummarization","@n8n/n8n-nodes-langchain.lmChatOpenAi"]

workflow_json_compressed:
  [encoded data, 6116 characters]


name: Add new incoming emails to a Google Sheets spreadsheet as a new row
author_name: WeblineIndia
author_username: weblineindia
categories: []
created_at: 2025-03-25T11:09:29.929Z
updated_at: 2025-03-25T11:09:29.929Z
url: https://n8n.io/workflows/3319
scraped_at: 2025-12-24 13:02:44
description:
  This n8n workflow automates the process of capturing and storing incoming email details in a structured spreadsheet format, such as Google Sheets or Excel. Whenever a new email is received, the workflow extracts key details—including the sender’s email, subject, email body, and optional attachments—and logs them as a new row in the spreadsheet.

  You can customise this workflow to extract additional details, filter emails based on specific criteria, or send notifications when new entries are added.

  Pre-conditions & Requirements

  Before setting up this workflow, ensure that:

  You have access to the email provider (e.g., Gmail, Outlook, or IMAP-supported email services).
  The Gmail Node must be enabled in n8n.
  You must authenticate n8n with Google OAuth2 to access your inbox.
  Ensure that the Gmail API is enabled in the Google Cloud Console.
  You have an existing Google Sheet where data will be stored.
  The Google Sheets API is enabled.
  You authenticate n8n with your Google account.

  Steps

  Step 1: Add the Gmail Trigger Node

  Click on "Add Node" and search for "Gmail".
  Select "Gmail Trigger" and click to add it.
  Under Authentication, click "Create New" and authenticate with your Google account. (If you have already connected your Google account, simply select it.)
  In the Trigger Event field, select "Message Received".
  Under Filters, you can specify:
  	Label/Mailbox: If you want to listen to emails from a specific folder (optional).
  	From Address: If you only want to receive emails from specific senders (optional).
  Click "Execute Node" to test the connection.
  Click "Save".

  What This Does:
  This node listens for new incoming emails in your Gmail inbox.
  Step 2: Store Email Data in Google Sheets

  Click on "Add Node" and search for "Google Sheets" (or Microsoft Excel, if applicable)
  Under Authentication, connect your Google account
  Select the target Spreadsheet and Sheet Name where the data will be stored
  Set the Operation to "Append Row"
  Map the extracted email data to the correct columns.
  Click "Execute Node" to test and verify data storage
  Click "Save"

  What This Does:
  This node automatically adds a new row for each incoming email, ensuring a structured and searchable email log.
  Final Step
  Attach both node and execute the workflow.

  Who’s behind this?

  WeblineIndia’s AI development team. 

  We've delivered 3500+ software projects across 25+ countries since 1999. From no-code automations to complex AI systems — our AI team builds tools that drive results. 

  Looking to hire AI developers? Start with us.

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

workflow_json_compressed:
  H4sIAAAAAAAAE61WXW/bNhT9K4S6hw2wDEmWLSlAH5Ks6TosKda4Bba1CCjyymYjkxpJxXED//fdK8mOEyRAP/aSWOT9OofnXvIuUDI4CuTpHzdv278XIvdz8+e6DUbBCjwPju4CpZ3nWsAbsotTSEWWxVGaJQkv43w2nRSyAj6N8wTSuOAgRD6R+bSYTSqIJ9VMQj5LRJ5Noaw4xvWwamru4dSCdJfg2+bU4Ap4wATetrAdBZqvALMdS8k0rJnSwqyUXjBYcVU75g3j7LUxixrY5RLAO+YaC1w6+mDc4Tb5WbMeU0a+cMHRP58wrpFAP+961Kks46pIqnCWJtMwjUUa5lUyC4sUK4dqKmRcBftqXlNyNrdqsQBLYTcNLetch13csOQOxguyujfSxlPGh84fNe40ximvjMZywiSKRvgHK2y4xWwerCPuK1UPP7fkUNdztYJuRyGNHZAVpsb4cAN2c6506yHYftqiuUB+QXvF686hq+vtceuXSedP+O+xBeTR1fpGn9Vm3Z9Ej/EDVtDVGY+T7WhwzTKRRaKUYSV4FqYF8lfwNAshEUU0KXM+S+GAusOzep66zmpvdEBQnD/NjzB1u9Ldzxtet0A/SiM3GPvl3R376bMzeuy0ahqUxXaLQS/b8jMI/8BgWBsMQEuw7BXR9cDqzJoVmSBRTixRifc6euCzR+e8Rc3it1QOFb/ZcWrh31ZZUnuFZwP7/Yueq0fBJFS8rf0592K59xBcn8B7B3Juho2+cXb1DCB/uJR9nO+pojuIHy1hCPIt+VElK940mO287w10VhpOgHRNe2iKm6c77dBg4J7GEs6+U6Oxk/wci3b3ifrFMwW1dHNz2UPpd1EOpiGZDl1qGrC8l22AVeBhYs5uLvWI7oKrK1vv0A/dWytHLA8aDhZKvowCAohCk+/AIfT35BQ8WrzYdS8yZES7wn6nMf01OWKT5CdnJ/7LF6fXF1H8YS6qd01y8n5zfKYKCIv4t6uySKKrxe/im0p5YvQc9HU/gY4b9dwQejBx0vF0L6eoFLM8yychFNMiTKMqC3MhJiHP8yiCWRIlBb+PdemVuN6wCxxpz84b19kMJg/G8QzHTf7kuDE2OEpGwVpJj3qboWGwBLVY4kQhL5KKR+iY7MWLF+z/uMDwsnhMS7wnpYh4kfJUhrOoEkiKTMK8jCGMyyqKRZHLLC+eJCX+PlbwovpKVg6JYL+CE1Z1bcKOPur5UjmGadna2OsK25Lx1htsTEBqlsAaawQ4x0zFnDd2TxyT+CYh/pRGgg4ZWy9B0xU48NZbYxILAtQNyDF741nrVa2+DDleHV7IjPDTqWACugkenxfXkpw0g1tvufB9CNdN6hFz/ZgcdWZ96gH9CAtTYsm4BbJyOOtwtd4wx7EoTNMJ4RDIz3gNjkePtGEQl2avbgXUDJ8E8MuYdRSCdq0FEgtO11Z4/JAE2VhJ3A3FV+hetRYrtjtmERpVy+uNU25E8S00xnpcR7191H+ZluF0ZaJF/lfIGeLFfPfH5RiOObYxLXl2A5xmjyMuCC6WJCXxR//o1DlR0s1bOruOvAPQyAKdM7AV/dkdMlaFo0tVGwqkfIcDPyuwmIq1DrBEB5izVtfAaozG6HCuO3B95Vij0lSegh7mTme7c6rNYkGg2RM9RteC8Kie/T3gwBNFnerhFkRL0N5aFAHK/CamGDe9f/dYljkvkzKehWVUxGE6nZYhl+kkzCGOM54WkBRZ0HWKRvkMV8ijZyYu4Df1Hz42dD/Jn3lNdXYjfK9LuA2Oou0nfAZu/wMvsA504AsAAA==


name: Post New Google Calendar Events to Telegram
author_name: WeblineIndia
author_username: weblineindia
categories: []
created_at: 2025-03-25T11:13:46.722Z
updated_at: 2025-03-25T11:13:46.722Z
url: https://n8n.io/workflows/3320
scraped_at: 2025-12-24 13:02:45
description:
  This n8n workflow automatically sends a Telegram message whenever a new event is added to Google Calendar. It extracts key event details such as event name, description, event creator, start date, end date, and location and forwards them to a specified Telegram chat. This ensures you stay updated on all newly scheduled events directly from Telegram.

  Prerequisites
  Before setting up the workflow, ensure the following:
  Google Account with Google Calendar Access: The Google Calendar API must be enabled.
  Telegram Bot: Create a bot using BotFather on Telegram.
  Telegram Chat ID: Retrieve the Chat ID (personal chat or group).
  Use OAuth2 for Google Calendar and a Bot Token for Telegram.

  Steps

  Step 1: Google Calendar Trigger Node (Event Created Event)

  Click "Add Node" and search for Google Calendar.
  Select "Google Calendar Trigger" and add it to the workflow.
  Authenticate with your Google Account.
  Select "Event Created" as the trigger type.
  Choose the specific calendar to monitor.
  Click "Execute Node" to test the connection.
  Click "Save".

  Step 2: Telegram Node (Send Message Action)

  Click "Add Node" and search for Telegram.
  Select "Send Message" as the action.
  Authenticate using your Telegram Bot Token.
  Set the Chat ID (personal or group chat).
  Format the message using details from Google Calendar Trigger and  set the message in text.
  Click "Execute Node" to test.
  Click "Save".

  Step 3: Connect & Test the Workflow

  Link Google Calendar Trigger → Telegram Send Message.
  Execute the workflow manually.
  Create a test event in Google Calendar.
  Check Telegram to see if the event details appear.

  n8n Workflow Created by WeblineIndia

  This workflow is built by the AI development team at WeblineIndia. We help businesses automate processes, reduce repetitive work, and scale faster. 

  Need something custom? You can hire AI developers to build workflows tailored to your needs.

nodes_used:
  ["n8n-nodes-base.googleCalendarTrigger","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE51V227jNhD9FULbR8nQ/WKgD0G2WwRoN0U3LbDbBAuKHNlsJNIlqTiG4X/vkFJs5/bQvvFyOJczZzj7QPBgGVyqr9tP47ebf4r7P0bR0iAMBrA0WO4DIY2lksGVwyU55Kyqkjiv0pS2SV0WWcM7oEVSp5AnDQXG6ozXRVNmHSRZV3Koy5TVVQFtR4NDGEg6AJr6TRlLJGzJz0qteiCXtAfJqSbwANIaYhW5gR5Wmg4YjaUrEyz/usPnioNb7qfIW0jrnJZtVHHaRXnN6qhpcAVN1gBrm7LL0uDo9KWvGy1WK9DOwW7jALKWkfcQtdTAYuXxT/ATeqOMsEJJjCOJ47COMbANxVDBgjaONrVx9255cPC+vxED+BthYfDxD+gHXWK+everkKOF4HCHaDu5uZbTpbSXGqgFjn7ZHIkrxj74/l33wdLqEcInY70wFnEPtB/d1j9ha+C/gxl7+3liITigF6aBo21Bex/V80yvL0a7Ti82wgfMJ0vy7LWj609M1XOQHMIZ1VQ11HFbRg1qI8o7YFFdQR0lVUfTLCugy+uTpfP6vkm/PQHOGM+fGN9Cu1bq3iuTt21JmxIi3mYt6iCtoiYviog2WKCqrZsyKYOXRbLwaPHtjz85loljZ0nIfk9++NsouTDjMFC9I4fDrfwIhmnha7o8Ifjp1KMmO78oRl8A+/nIo75Yqi35iCU9Qxh3uOB46IQyWZP8JQqL8xzjpaH0GYRNJwsYqOg95lY6GaypvZoLSTn3XNL+k4CeeyroZoPGLyyKrx0nojuUBrwu9iI9lrur47TqWojStqiivC1oRNOmjdK0xR5MK1ZW7FTuL1aw+x35rFDo71XceMwMOat5HL5uMaZ6pYNliUIQ3K5xlcdhsAaxWmNV0xI3TEmLJUE/Hz6Q//DjIGXvi7zjCZQxJFHBchrlGSZc5x1mXULBaRq3NMnezDr5H2mnb/wtbyf+LNczvd7Km7UwBD2SrdL3Xa+2hI5WDahI/E/6HTFIgyH0mD3Bn8rQFZDtGqT7nvDO8eZ5ImgLBQTc8fWCyQW5sgR7SlOGfN7Dbn7CcZaI3hAzsjWhZj51BIXkrIfC+WKWcEh8UxAneLzCbphWFFfHhnKbTukt1ZiCXcPgwqLEbICJTmCUx6RcByyI5wKkGTUYslOj87Ej48aZ5sQZ7HuXrKPFfZxjj8ezQLjQwCzedFoNR8OLN6SCJUMKxAPMXRQGBqwVcuXrB4/AfI9da47jZBk8JM7Gw/Ted2lTpjHH6RmVWZpHedPVUZvH+LvRDIdqEecouMDXXGJI86R5d7zhFf4GTlA4duQ0KV5/vh4S4sDn8Bgs48Pd3eFw+Ber3hx2IQgAAA==


name: Capture URL Screenshots from Google Sheets with ScreenshotOne & Save to Drive with Gmail Alerts
author_name: Niko
author_username: niko
categories: []
created_at: 2025-03-25T11:27:09.805Z
updated_at: 2025-03-25T11:27:09.805Z
url: https://n8n.io/workflows/3321
scraped_at: 2025-12-24 13:02:46
description:
  Capture URL Screenshots Automatically from Google Sheets & Drive with ScreenshotOne & Gmail Alerts

  Summary
  This automation template streamlines the process of capturing screenshots for multiple URLs. Instead of manually visiting each URL, taking a screenshot, and organizing the results, this workflow automates everything. When a spreadsheet is added to a designated Google Drive folder, the template extracts URLs from the column named "Url." These URLs are then processed through ScreenshotOne to capture screenshots, which are saved back to the same folder. Finally, an email notification is sent via Gmail with a link to the folder containing the screenshots.

  Problem Solved
  This template addresses the challenge of manual screenshot capture for multiple URLs. Without this automation, a user would need to:

  Open each URL from a spreadsheet.
  Take a screenshot manually.
  Save each screenshot with an appropriate name.
  Organize the screenshots in a folder.
  Notify stakeholders when the process is complete.

  These steps are not only time-consuming but also repetitive, especially when handling a large number of URLs.

  Who Can Benefit:
  Digital Marketers:** Monitor website appearances for competitive analysis or to track campaign landing pages.
  Web Developers/Designers:** Capture screenshots of multiple websites for inspiration or reference.
  QA Teams:** Document the visual state of web pages during various stages of development.
  SEO Specialists:** Track visual changes to websites they are optimizing.
  Content Managers:** Monitor how content appears across various web properties.

  Prerequisites
  Google Drive Node:** Must have appropriate permissions to create and access folders.
  Connected Google Sheets Node:** To extract URLs from the spreadsheet.
  Authenticated Gmail Node:** For sending notifications.
  ScreenshotOne Account:* Either a free or paid plan depending on volume needs, along with an *Access key**.  
    Ensure you replace the placeholder --YOUR ACCESS KEY-- with your generated access key in the "Get Screenshots" node.

  Workflow Details
  Step 1: Google Drive Integration
  Trigger Node:**  
    Monitors a specific folder in Google Drive. When a spreadsheet is added, the workflow is initiated.  

  Step 2: Google Sheets Processing
  Google Sheets Node:**  
    Extracts URLs from the column named "Url."

  Step 3: Screenshot Capture
  Get Screenshots Node:**  
    Sends each extracted URL to ScreenshotOne to capture screenshots.

  Step 4: Saving Screenshots and Notifications
  Google Drive Node:**  
    Saves the captured screenshots back into the same folder.
  Gmail Node:**  
    Sends an email notification with a link to the folder, alerting stakeholders that the screenshots are ready.

  Customization Guidance
  Folder Monitoring:
  	The workflow is set to monitor a specific Google Drive folder. It can be customized by selecting a different folder in the node settings.

  Spreadsheet Structure:
  	While the template expects a spreadsheet with a column named "Url." for extracting URLs, users can add additional columns (e.g., titles, categories, or tags) and modify the workflow to utilize them as needed.

  Email Settings:
  	Customize the recipient, subject, and body of the notification email to suit your needs. If required, enable optional notifications for different stakeholders.

  ScreenshotOne Access Key & Configurations:
  	A valid ScreenshotOne Access key is required to capture screenshots. Users can further refine screenshot settings (e.g., viewport size, device emulation, or delay timing) by exploring the available options in the ScreenshotOne API documentation.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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


name: Build Custom AI Agent with LangChain & Gemini (Self-Hosted)
author_name: shepard
author_username: shepard
categories: []
created_at: 2025-03-26T01:02:38.093Z
updated_at: 2025-03-26T01:02:38.093Z
url: https://n8n.io/workflows/3326
scraped_at: 2025-12-24 13:02:44
description:
  Overview  
  This workflow leverages the LangChain code node to implement a fully customizable conversational agent. Ideal for users who need granular control over their agent's prompts while reducing unnecessary token consumption from reserved tool-calling functionality (compared to n8n's built-in Conversation Agent).  

  Setup Instructions  
  Configure Gemini Credentials: Set up your Google Gemini API key (Get API key here if needed). Alternatively, you may use other AI provider nodes.  
  Interaction Methods:  
     Test directly in the workflow editor using the "Chat" button  
     Activate the workflow and access the chat interface via the URL provided by the When Chat Message Received node  

  Customization Options  
  Interface Settings: Configure chat UI elements (e.g., title) in the When Chat Message Received node  
  Prompt Engineering:  
     Define agent personality and conversation structure in the Construct & Execute LLM Prompt node's template variable  
     ⚠️ Template must preserve {chat_history} and {input} placeholders for proper LangChain operation  
  Model Selection: Swap language models through the language model input field in Construct & Execute LLM Prompt  
  Memory Control: Adjust conversation history length in the Store Conversation History node  

  Requirements:  
  ⚠️ This workflow uses the LangChain Code node, which only works on self-hosted n8n.  
  (Refer to LangChain Code node docs)

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

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


name: Automatic Squarespace Order Fulfillment Process
author_name: bangank36
author_username: bangank36
categories: []
created_at: 2025-03-26T01:38:35.591Z
updated_at: 2025-03-26T01:38:35.591Z
url: https://n8n.io/workflows/3327
scraped_at: 2025-12-24 13:02:47
description:
  This workflow automates the Mark as Fulfilled action in Squarespace for each order, ensuring a seamless fulfillment process without manual intervention.

  How It Works
  This workflow retrieves all pending Squarespace orders and processes their fulfillment automatically. The workflow follows these steps:

  1️⃣ Get all pending orders using the HTTP Request node (Since Squarespace does not have a n8n node)
  2️⃣ Create a fulfillment request using Fulfill Order node

  The Filter Orders node can be used to filter valid pending order to process.

  Step-by-step
  The workflow can be run as requested or on schedule

  You can adjust these parameters within the Global and filter nodes:

  Global node for API Setting
  api-version** (string, required) – The current API version (see Squarespace Orders API documentation).
  modifiedAfter**={a-datetime} (string, conditional) – Fetch orders modified after a specific date (ISO 8601 format).
  modifiedBefore**={b-datetime} (string, conditional) – Fetch orders modified before a specific date (ISO 8601 format).
  cursor**={c} (string, conditional) – Used for pagination, cannot be combined with other filters.
  fulfillmentStatus**={status} (optional, enum) – Filter by fulfillment status: PENDING, FULFILLED, or CANCELED.
  maxPage** – Set -1 to enables infinite pagination to fetch all available orders.

  Filter Orders node
  Order Filtering – Ensures only valid orders are fulfilled, particularly useful if:

  You sell digital downloads or gift cards exclusively.
  You use third-party fulfillment services for all products.

  Requirements
  Credentials
  To use this workflow, you need:

  Squarespace API Key – Retrieve from your Squarespace settings.

  Who Is This For?
  Squarespace store owners looking to automate their fulfillment process.

  Merchants selling digital or personalized products who need instant fulfillment.

  Explore More Templates  
  Get all orders in Squarespace to Google Sheets
  Convert Squarespace Profiles to Shopify Customers in Google Sheets
  Fetch Squarespace Blog & Event Collections to Google Sheets

  👉 Check out my other n8n templates

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

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


name: Automatically Create and Upload YouTube Videos with Quotes in Thai Using FFmpeg
author_name: Jaruphat J.
author_username: jaruphatj
categories: []
created_at: 2025-03-26T03:39:20.929Z
updated_at: 2025-03-26T03:39:20.929Z
url: https://n8n.io/workflows/3328
scraped_at: 2025-12-24 13:02:43
description:
  Who is this for?
  This workflow is perfect for digital content creators, marketers, and social media managers who regularly create engaging short-form videos featuring inspirational or motivational quotes. While the workflow is universally applicable, it specifically highlights Thai as an example to demonstrate effective language and font integration.

  What problem is this workflow solving?
  Creating consistent and engaging multilingual video content manually, including attractive fonts and proper video formatting, is time-consuming and repetitive. Additionally, managing files, background music, and updating statuses manually can be tedious and prone to errors.

  What this workflow does
  Automatically fetches background video and music files stored on Google Drive.

  Randomly selects a quote (demonstrated with Thai language) and author information from Google Sheets.

  Dynamically combines the selected quote and author text using appealing fonts, such as the Thai font "Kanit," directly onto the video using FFmpeg on your n8n local environment.

  Creates visually engaging videos with a 9:16 aspect ratio, optimized for YouTube Shorts and other vertical video platforms.

  Automatically uploads the finalized video to YouTube.

  Updates the status and YouTube URL back into your Google Sheet, ensuring you have up-to-date records.

  Setup
  Requirements:
  This workflow requires a self-hosted n8n instance, as the execution of FFmpeg commands is not supported on n8n Cloud. Ensure FFmpeg is installed on your self-hosted environment.

  Google Sheets Setup:
  Your Google Sheet must include at least these columns:

  Index: (Unique identifier for each quote)
  Quote: (Text of the quote)
  Author: (Author of the quote)
  CreateStatus: (Track video creation status; values like 'DONE' or blank for pending)
  YoutubeURL: (Automatically updated after upload)

  To help you get started quickly, you can use this template spreadsheet.

  Next steps:

  Organize your video and music files in separate folders in Google Drive.
  Authenticate your Google Sheets, Google Drive, and YouTube accounts in n8n.
  Ensure fonts compatible with your target languages (such as Kanit for Thai) are available in your FFmpeg installation.

  How to customize this workflow to your needs

  Fonts:** Adjust font styles and sizes within the workflow's code node. Ensure the fonts you choose fully support the language you wish to use.

  Quote Management:** Easily add or remove quotes and authors in your Google Sheets document.

  Media Files:** Change or update background videos and music by modifying the files in your Google Drive folders.

  Video Specifications:** Customize video dimensions, text positioning, opacity, and music volume directly in the provided FFmpeg commands.

  Benefits of Using Localized Fonts and Quotes

  Utilizing fonts specific to your target language, as demonstrated with Thai, significantly increases audience engagement by making your content more relatable, shareable, and visually appealing. Ensure you select fonts that properly support the language you're targeting.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.googleDrive","n8n-nodes-base.set","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.readWriteFile","n8n-nodes-base.readWriteFile","n8n-nodes-base.code","n8n-nodes-base.executeCommand","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.readWriteFile","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 7124 characters]


name: WooCommerce AI Post-Sales Chatbot with GPT-4o, RAG, Google Drive and Telegram
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-03-26T08:48:36.972Z
updated_at: 2025-03-26T08:48:36.972Z
url: https://n8n.io/workflows/3329
scraped_at: 2025-12-24 13:02:45
description:
  This WooCommerce-integrated chatbot is designed to transform post-sales customer support by combining automation and artificial intelligence to deliver fast, secure, and personalized assistance. 

  The chatbot retrieves real-time order information, including shipping details and tracking numbers, after verifying the customer's identity through a strict email-based authentication system.

  Beyond order management, the chatbot answers frequently asked questions about return policies, delivery times, and terms of service using RAG. 

  If a request is too complex, the system seamlessly escalates it to a human operator via Telegram, guaranteeing no customer query goes unresolved. 

  Key Features of the Chatbot  
  Order Tracking: Retrieves real-time tracking information for WooCommerce orders, including carrier URLs and pickup dates.  
  Order Details Retrieval: Provides customers with past/current order information after strict email verification.  
  Policy & FAQ Assistance: Answers questions about shipping, returns, and store policies using a vectorized knowledge base (ToS tool).  
  Identity Verification: Ensures privacy by requiring exact email-order matches before sharing sensitive data.  
  Human Escalation: Transfers complex issues to human agents via Telegram when the AI cannot resolve them.  
  Context-Aware Conversations: Maintains dialogue context using memory buffers for seamless interactions.  
  Who Benefits from This Chatbot?  
  E-commerce Stores: WooCommerce businesses needing 24/7 automated post-sales support.  
  Customer Support Teams: Reduces ticket volume by handling repetitive queries (tracking, policies).  
  SMBs: Small-to-medium businesses lacking resources for full-time support staff.  
  Customers: Shoppers who want instant, self-service access to order status and FAQs.  

  How It Works  
  Customer Interaction: The workflow starts when a customer sends a chat message, triggering the AI agent.  
  Identity Verification: The agent requests the order number and associated email, strictly verifying the match before proceeding.  
  Order & Tracking Retrieval: Using WooCommerce API tools (get_order, get_tracking), it fetches order details and tracking information.  
  Policy & Support: The ToS tool answers shipping and policy questions, while human_assistance escalates unresolved issues to a human agent via Telegram.  
  Memory & Context: A buffer memory retains conversation context for coherent interactions.  

  Set Up Steps  
  Configure Qdrant Vector Store: Replace QDRANTURL and COLLECTION in the nodes to set up document storage.  
  Add Telegram Chat ID: Insert your Telegram CHAT_ID in the human_assistance node for escalations.  
  Integrate WooCommerce Tracking Plugin: Install the YITH WooCommerce Order Tracking plugin and update the HTTP request URL in the tracking node.  
  Test & Activate: Verify the workflow by testing order queries and ensuring proper email verification.  

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

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.wooCommerceTool","n8n-nodes-base.wooCommerceTool","n8n-nodes-base.wooCommerceTool","@n8n/n8n-nodes-langchain.toolCalculator","n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterTokenSplitter","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreQdrant","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreQdrant","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.telegramTool","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 7788 characters]


name: Monitor USDT ERC-20 Wallet Balance with Etherscan and Telegram Notifications
author_name: FORK SOFTWARE TECHNOLOGIES INC.
author_username: fork
categories: []
created_at: 2025-03-26T09:00:34.592Z
updated_at: 2025-03-26T09:00:34.592Z
url: https://n8n.io/workflows/3330
scraped_at: 2025-12-24 13:02:46
description:
  Overview

  This n8n workflow is specifically designed to monitor the USDT ERC-20 balance within a specific wallet. It uses Etherscan's public blockchain database, which does not require API authentication, to periodically check and process transaction data. This workflow is ideal for users who need an automated solution to track ERC-20 wallet transactions.

  Features
  Automatic Monitoring**: Executes every 5 minutes to capture new transactions.
  Customizable Filters**: Customize tracking based on parameters like transaction duration and wallet addresses.
  Data Aggregation**: Compiles transaction data into a single, structured list.
  Formatted Outputs**: Presents processed data in an organized format.
  Telegram Tracking**: Tracks wallet balances via Telegram notifications using the bot.

  Requirements
  n8n Setup**: Requires a self-hosted or cloud-based n8n instance.
  Basic Understanding**: Basic knowledge of n8n workflows and nodes.

  Installation and Configuration

  Import Workflow: Load the provided JSON workflow into your n8n instance.
  Configure the User Data Node:
     Enter your ERC-20 Wallet Address in the 'Your Wallet Address' field.
     Enter your Etherscan API Key in the “Your Etherscan API Key” field.
     Enter your USDT ERC-20 Contract Address in the "Your ERC-20 USDT Contract Address" field (0xdAC17F958D2ee523a2206206994597C13D831ec7). You can also monitor another token by entering a different contract address.
     
  Configure the Telegram Node:
     Go to Telegram and search for "BotFather".
     
     Select /newbot from the BotFather menu to create your bot.
     Get the API key BotFather provides.
     Go to Telegram and search for "Get My ChatID".
     
     Start the conversation and get your ChatID.
     Use this information to configure the Telegram Node.

  Schedule Trigger Node: By default, the workflow is triggered every 5 minutes. Adjust this according to your needs.

  Test the Workflow: Execute the workflow manually to ensure everything is working as expected.

  How It Works

  Schedule Trigger: Starts the workflow at predetermined intervals.
  Edit Fields: Sets the wallet address, Etherscan API key, and USDT ERC-20 token address.
  Edit Telegram Settings: Create a bot via BotFather. Configure the API key and Telegram Chat ID.
  Etherscan Data Import: Collects transaction data from the ERC-20 wallet using Etherscan's public database.
  Final Results: Organizes and formats the transaction data for review.
  Telegram Bot Message Sending: If there is a balance change, it sends a formatted message about the balance change. If there is no balance change, it sends a message that your balance has not changed. You can configure it to avoid sending a message when there is no change.

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

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


name: Convert HTML to PDF and Return via Webhook using CustomJS API
author_name: CustomJS
author_username: customjs
categories: []
created_at: 2025-03-26T09:52:28.987Z
updated_at: 2025-03-26T09:52:28.987Z
url: https://n8n.io/workflows/3331
scraped_at: 2025-12-24 13:02:45
description:
  !
  n8n Workflow: HTML to PDF Generator

  This n8n workflow converts HTML content into a styled PDF and returns it as a response via a webhook. The workflow receives HTML input, processes it using CustomJS's PDF toolkit, and sends back the resulting PDF to the original webhook requester.

  @custom-js/n8n-nodes-pdf-toolkit

  Features:

  Webhook Trigger**: Accepts incoming requests with HTML content.
  HTML to PDF Conversion**: Uses CustomJS to transform HTML into a PDF.
  Response**: Sends the generated PDF back to the webhook response.

  Requirements:

  Self-hosted** n8n instance
  A CustomJS API key for HTML to PDF conversion
  HTML content** to be converted into a PDF

  Workflow Steps:

  Webhook Trigger:

     Accepts incoming HTTP requests with HTML content.
     This data is passed to the next node for processing.

  HTML to PDF Conversion:

     Uses the CustomJS node to convert the incoming HTML into a PDF document.
     You can customize the HTML content to match the design requirements.

  Respond to Webhook:

     Sends the generated PDF as a binary response to the original webhook request.

  Setup Guide:

  1. Configure CustomJS API
  Sign up at CustomJS.
  Retrieve your API key from the profile page.

  Add your API key as n8n credentials.

  2. Design Workflow

  Create a Webhook:

     Set up a webhook to trigger the workflow when HTML content is received.

  Prepare HTML Content:

     The incoming request should include the HTML content you wish to convert into a PDF.

  Configure HTML to PDF Node:

     Use the HTML to PDF node to convert the provided HTML into a PDF.
     The node uses the HTML input to generate a PDF using the CustomJS API.

  Respond with the PDF:

     The Respond to Webhook node will send the generated PDF back to the original requester as a binary response.

  Example HTML Input:

  Hello CustomJS!
  CustomJS provides the missing toolset for your no-code projects

  Result PDF

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","@custom-js/n8n-nodes-pdf-toolkit.html2Pdf"]

workflow_json_compressed:
  H4sIAAAAAAAAE42UW0/cMBCF/0qa5zXYjnNbIdSKXgCVChXEqhcefBk3gY2dxt62K5T/XjsLbBGrtm+xPT5nvpNM7tIOPE/nd2lrnOdGwolK56mWmlRasiqXMssKnhEhizwvmVa0AkJZUWDNiopWRJScq7LMClIIUtY44xqKdJZ66Pol93A0gHIX4Ff9kQ074CEY+GEF4yw1VoFL51+Ce3TNSqEKKWuUSckQYxRQzSRBjNYllVhLwCooG95BqF6AaKy9jVbrPm6YyqBJEQnuYO/n43lvXetba4JThWf4epben02suMBKcKkR1iAQyxRDgnEZ/DEhvFSKcBZF+BB8PQwuptVz3/z/XdtH+3gxQA/g+rCAs9BqkHhYfojLcQNzFVymfuk4e8hG4lxiYKgkNCRSKIxElkukZVZLpbKcQ7nN5uMkqhJvk3/FtPFXl3axK6/8PrCn9Dt41KKdEhGt4cP6GQjZI1sUnQtOeYkIqxRideARVHJUKwBScipoWW1Rji/P3keO89dvtwwv5cp526Ebt7/F6ZVG3trlbev3Gt8t6bnST2kytosm1p6YfuWD8EFDDo9hubTJ0eRwevHiYD/sfTUHDT182Ev6wf5og2fiG0i61rnWfEuitwOfaDska7saEmORDJ3F6huQ3gUlehijkWEmwPiWL6cGNjCn7lXfTpMYQ7r4fPsd3hxffVovGv4Oum0gj01wKe3K+HR8FvYYGKU1Jpjev6fHaQmPHW9jGGHqzOYT3BnxVDULvwUFv9I5Hq+vg82flbuU/vbd7RAcx9+WKdtUgAQAAA==


name: Capture Website Screenshots via Google Sheets to Google Drive with CustomJS
author_name: CustomJS
author_username: customjs
categories: []
created_at: 2025-03-26T09:57:20.649Z
updated_at: 2025-03-26T09:57:20.649Z
url: https://n8n.io/workflows/3332
scraped_at: 2025-12-24 13:02:45
description:
  n8n Workflow: Automating Website Screenshots from Google Sheets

  This n8n workflow captures screenshots of websites listed in a Google Sheet and saves them to Google Drive using the CustomJS PDF Toolkit.

  @custom-js/n8n-nodes-pdf-toolkit

  Features

  Monitors** a Google Sheet for new rows with website URLs.
  Captures** screenshots of the websites using the CustomJS PDF Toolkit.
  Uploads** the screenshots to a specified Google Drive folder.

  Notice 
  Community nodes can only be installed on self-hosted instances of n8n.

  Requirements

  Self-hosted** n8n instance
  A Google Sheets document containing website URLs and Titles.
  A Google Drive folder to store the screenshots.
  A CustomJS API key for website screenshots.
  n8n credentials** for Google Sheets and Google Drive.

  Workflow Steps

  Google Sheets Trigger

     Monitors a specified sheet for new rows.
     Extracts the URL and Title from the row.

  Website Screenshot Node

     Uses CustomJS PDF Toolkit to take a screenshot of the given URL.

  Google Drive Upload
     Saves the screenshot to a specific Google Drive folder.
     Uses the Title column as the filename.

  Setup Guide

  1. Connect Google Sheets

  Ensure your Google Sheet has a column named Url for website URLs and Name for website names.
  Set up Google Sheets credentials in n8n.

  2. Configure CustomJS API

  Sign up at CustomJS.
  Retrieve your API key from the profile page.

  Add your API key as n8n credentials.

  3. Set Up Google Drive

  Create a folder in Google Drive to store screenshots.
  Copy the folder ID and set it in the Google Drive node in n8n.

  Perfect for:

  Website monitoring**
  Generating visual archives of web pages**
  Automating content curation**

  This workflow streamlines the process of capturing and organizing website screenshots efficiently.

nodes_used:
  ["n8n-nodes-base.googleSheetsTrigger","@custom-js/n8n-nodes-pdf-toolkit.websiteScreenshot","n8n-nodes-base.googleDrive"]

workflow_json_compressed:
  H4sIAAAAAAAAE72Va0/bMBSG/0qU7WPd3JxbJbShTUMwmBAtTGxCyJeTNiWJQ+y0lCr/fU5aKGwFypd9dHwu73v82FmaOShiDpZmWkhFCgaH3ByY1Le9KI55wmMCnktpEoGTYBwQJ3FZTD3mx0lkszCmbogZjqkT2AENCcR+GINjNj2zEBykOfitS7clXYeTkNIABT7GCId+gGJuE0RoRMB1At/m2NRZJAcdfSDEOANjOAFQ0hhV6XgMld5Wi7LdLqICdfURJRL64y56FbyJLYVMVSoKrQE5rt1Drn2lv5JKt1BQydY1zKBQumAl5vucA9dpomyT2t2mrZFlozSHLjhVkHeGct1aJ+nkanGSFrUCs7nS0bJV8KNzsDSvr6vMHKiqht5DQpZKpTvMSFa3y3HK92y9ZoRNgJ+BrDN13iaZE6VKObAsLphcu+szkVuyrIDwro20uOUMT6NLdJskX+Lg14VXw8X55c9Tv5zeKrJg5CT8Tmf+MbpXc39sAU/Vh20tV4LNbnzdyemuda7n0qKwi4/3yPivdj/VstzjVToDyW+2uz4/OzY6O02zoutCk9FB4zS9NbpeTGJiEw85HgsRdkMHUUYw8pwIR67tAI7oBt0RuQGDGJJVAIWcCGWIRK/nQDWOsGH4M6ulEjmaSmuDc8kTpITIblLVX2cMHws9Z1rfuK1I11V2WJR1S/Xecml8nEpR9PWcjaYxX/bocOYx6hAUxwAIQ+QjGrgRshNMwtDBcehGG49DJSp9Ox+VyTeu5tf2DJ7Lx/Z2+esOG+mjVOmXoGn6ZdHS0x3nrmSeLIxV6+ave52IjEO1M+DiG83vxwduIs/SO+xX/pES88vpPp/LmyP7NHid6lbBU6y7D9ZKgrTeW3wNrnwy/H/Y9Ro9VyaKAtiD6ReeVL2Rk7Q9EP2uFSv3uxLcJfb0n4PDnTmwm6v2DXwjeVu/V2ja0qJp/gCRsSkktQYAAA==


name: Generate PDF Invoices with CustomJS API
author_name: CustomJS
author_username: customjs
categories: []
created_at: 2025-03-26T10:03:14.743Z
updated_at: 2025-03-26T10:03:14.743Z
url: https://n8n.io/workflows/3333
scraped_at: 2025-12-24 13:02:44
description:
  n8n Workflow: Invoice PDF Generator

  This n8n workflow captures invoice data and generates a PDF invoice, ready to be sent or saved. It uses a webhook to trigger the process, preprocesses the invoice data, and converts it to a PDF using HTML and custom styling.

  @custom-js/n8n-nodes-pdf-toolkit

  Features:

  Webhook Trigger**: Receives incoming data, including invoice details.
  Preprocessing**: Transforms the invoice data into HTML format.
  HTML to PDF Conversion**: Converts the preprocessed HTML into a styled PDF document.
  Response**: Sends the generated PDF back to the webhook response.

  Notice

  Community nodes can only be installed on self-hosted instances of n8n.

  Requirements

  Self-hosted** n8n instance
  A CustomJS API key for website screenshots.
  Invoice data** for PDF generation

  Workflow Steps:

  Webhook Trigger:

     Accepts incoming data (e.g., invoice number, recipient details, itemized list).
     This data is passed to the next node for processing.

  Set Data Node:

     Configures initial values for the invoice, including the recipient, sender, invoice number, and the items on the invoice.
     The invoice details include information like description, unit price, and quantity.

  Preprocess Node:

     Processes the raw data to format it correctly for HTML. This includes splitting addresses and converting the items into an HTML table format.

  HTML to PDF Conversion:

     Converts the generated HTML into a PDF document. The HTML includes a header, a detailed invoice table, and a footer with contact information.

  Respond to Webhook:
     Returns the generated PDF as a response to the initial webhook request.

  Setup Guide:

  1. Configure CustomJS API

  Sign up at CustomJS.
  Retrieve your API key from the profile page.

  Add your API key as n8n credentials.

  2. Design Workflow

  Create a Webhook:

     Set up a webhook to trigger the workflow when invoice data is received.

  Prepare Data:

     Ensure the incoming request contains fields like "Invoice No", "Bill To", "From", and "Details" (list of items with price and quantity).

  Customize the HTML:

     The HTML template for the invoice includes custom styling to give the invoice a professional look.

  Convert to PDF:
     The HTML to PDF node is configured with the data generated from the preprocessing step to convert the invoice HTML to a PDF format.

  Example Invoice Data:

  {
    "Invoice No": "1",
    "Bill To": "John Doe\n1234 Elm St, Apt 567\nCity, Country, 12345",
    "From": "ABC Corporation\n789 Business Ave\nCity, Country, 67890",
    "Details": [
      {
        "description": "Web Hosting",
        "price": 150,
        "qty": 2
      },
      {
        "description": "Domain",
        "price": 15,
        "qty": 5
      }
    ],
    "Email": "support@mycompany.com"
  }

  Result PDF File

nodes_used:
  ["@custom-js/n8n-nodes-pdf-toolkit.html2Pdf","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook"]

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


name: LinkedIn Profile Finder via Form using Bright Data & GPT-4o-mini
author_name: Miquel Colomer
author_username: mcolomer
categories: []
created_at: 2025-03-26T17:02:16.057Z
updated_at: 2025-03-26T17:02:16.057Z
url: https://n8n.io/workflows/3335
scraped_at: 2025-12-24 13:02:43
description:
  This n8n workflow template automates the process of finding LinkedIn profiles for a person based on their name, and company. It scrapes Google search results via Bright Data, parses the results with GPT-4o-mini, and delivers a personalized follow-up email with insights and suggested outreach steps.

  🚀 What It Does
  Accepts a user-submitted form with a person’s full name, and company.
  Performs a Google search using Bright Data to find LinkedIn profiles and company data.
  Uses GPT-4o-mini to parse HTML results and identify matching profiles.
  Filters and selects the most relevant LinkedIn entry.
  Analyzes the data to generate a buyer persona and follow-up strategy.
  Sends a styled email with insights and outreach steps.

  🛠️ Step-by-Step Setup
  Deploy the form trigger to accept person data (name, position, company).
  Build a Google search query from user input.
  Scrape search results using Bright Data.
  Extract HTML content using the HTML node.
  Use GPT-4o-mini to parse LinkedIn entries and company insights.
  Filter for matches based on user input.
  Merge relevant data and generate personalized outreach content.
  Send email to a predefined address.
  Show a final confirmation message to the user.

  🧠 How It Works: Workflow Overview
  Trigger:** When User Completes Form
  Search:** Edit Url LinkedIn, Get LinkedIn Entry on Google, Extract Body and Title, Parse Google Results
  Matching:** Extract Parsed Results, Filter, Limit, IF LinkedIn Profile is Found?
  Fallback:** Form Not Found if no match
  Company Lookup:** Edit Company Search, Get Company on Google, Parse Results, Split Out
  Content Generation:** Merge, Create a Followup for Company and Person
  Email Delivery:** Send Email, Form Email Sent

  📨 Final Output
  An HTML-styled email (using Tailwind CSS) with:
  Matched LinkedIn profile
  Company insights
  Persona-based outreach strategy

  🔐 Credentials Used
  BrightData account** for scraping Google search results
  OpenAI account** for GPT-4o-mini-powered parsing and content generation
  SMTP account** for sending follow-up emails

  ❓Questions?
  Template and node created by Miquel Colomer and n8nhackers.  

  Need help customizing or deploying? Contact us for consulting and support.

nodes_used:
  ["n8n-nodes-base.html","n8n-nodes-base.formTrigger","n8n-nodes-brightdata.brightData","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.form","n8n-nodes-base.filter","n8n-nodes-base.limit","n8n-nodes-base.splitOut","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.html","n8n-nodes-brightdata.brightData","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.splitOut","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.merge","n8n-nodes-base.emailSend","n8n-nodes-base.form"]

workflow_json_compressed:
  [encoded data, 4272 characters]


