# templates

name: Ask AI about your Meta Ads - ask questions about your Facebook Ads insights
author_name: Solomon
author_username: solomon
categories: []
created_at: 2025-02-09T18:42:21.046Z
updated_at: 2025-02-09T18:42:21.046Z
url: https://n8n.io/workflows/2870
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Chat with an AI and ask questions about your Meta Ads metrics.

  Get key metrics like impressions, spend, reach, conversions, CTR, CPC… you name it.

  Who is this template for?

  Marketing professionals who want an AI assistant to analyze their Meta Ads data.

  You can also replace the Telegram node with another chat app, like WhatsApp, Slack, or Discord.

  Which languages are supported?

  Any of the 85+ languages supported by OpenAI.

  How to set up

  Instructions are included within the workflow itself.

  Check out my other templates
  👉 https://n8n.io/creators/solomon/

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

workflow_json_compressed:
  H4sIAAAAAAAAE62YTW8bRwyG/4qwZzGdD86XTnXdFvUhLdAEzSEIipkhaQuRVq60bhoY/u/Fyo61lta2XPcqcLgPOS/fmdF1s+QuN7PrZt5uutxWPqNm1pAvThmSjJSIVDCVqqumlOCtc9F7rZwV77SJySRtnckRUVlWuljSpZk2HS8vF7nj0zXT5h13V5enq+XlgjumZtatr/hm2rQr4k0z+3jdzPuvOlSaxBgoVSfAYASKVAe+RGWjFyqWmmnT5iU3s+bkbHJyzm3Xf+vrZf/L921sv2tjC9u8sMjteb3I8/ZNvou7XG3m3XzVNrOP6NUUtFefps1lXucld7zeNLPrm9tsf/B6sw3Ub8LN9I6Pq69iJYH1lACr9lCqqaBdpRq0y9qZHd9vl9yenE1OL3I3ebsiXhwBulj24duV84e8JqqpNkfgmntclaOt2muwWC1gLRoymwiCFKJ3PgfUO9wPF9xOag+75M0mn/NkzZXnfzMdwd2ve7+en5/z+iE2WFRT2HJ/4XKxWn3e6gtZJDoVATMLoI8KYkgOPHnyQr46m5tnS9X3pVafrbNeQYxMgN4j5OwslJpSKiTVR96VepoX9WqRu9X6iNK61WrxYMGguuCP25R7TqMjZuEAhrQASimQknJAwXsfay5U647zLXd5ckKbyVm7mZ9fdJsjcX/pusvf+a8r3uyJ3qsjRbQjJi49cIScQwDkqiEGV0GQQ8UYdCpqR/yeF3y+zsvJTgx3wDvWkjf8prsLfEI0FvdVw1YZ0+9trdYCcvaQYlWgCwkFKypEeYlqLCntfCQQFRUgBgcFpYJyMVN0trC2u9p+ni86Xk/K19spOfvx0eJkG7lXkzb3NT0JaAYTHJTOyikP7HUFJDGQiCMk8tVaV2vEgSG+6+b189fJr6uOH0XbbGPuQoZ4RqkpOHWA19RV2/XuOWuax3WdqnGxmgIKEwO6oiCSY2CfSPsiQfLAGd9xN9nwpk9yRo+j8p56NR5n2fYN7iw7OFQuarBBHGDOGrLDBDYqVYL3IXs72kH94hbG1zQQbaqiqwdLpQBSSZAkRdAiubKREszAGE5vbXq5Wn89whJuA3+4EuH1h3lLqy97RyEe6Qr2HldYKadzAY1VAwbnIdZcIUoqFG0uSspwv1v6dqo86wh7TY33e/7ACQixiAQIZBOgMQGiMwhOtIgo74jD806wGzRvnXc+esg1BkCKFkpfmRhNWnunkNSoTMzLJ00r/xqliDISAitgYwpgEgXRWA/CMakkydahUgao9sWooW8+HlrWcaBKGe9LFECTNCB6ghLIgzPOFnKsddajoPhiUOfV1Bwaw5ENDRwFFYMiroBSCZKoCk7bipxMtNrsjd7b7URN3uY2PzjknhnBXfzQ1Vw/fvFFh7IzwWpiDVRdf1HmAMUqhiTV1hjF5GJGW+te3Frsz4X/3NsajA0heEDpxapKhVikgiaPOlpRMeAoqH8xqO4P2EMXO44z10ARjQcrSgDZeigcFYhDViawYuRRDfwP9qt79dpjXiJ2wKuVMDLYaHq/KgGiV/39vjpUmYstacC74NweD9xfIT+s1p9lcYCq+0E7dK6DO8zuwktGFSYGJF0AsQaIhRNoCTpUEquF9t4gP/3D9apj6m9aJ+2qu+D1ZIAzrgq+XfQtbvRaqe3xk/Zp2gun5dqv3ero/rk5u26Wed4n/Hi9fcE+esJtw6bNvCX+p5mpm0+fbqbDx8fsusnzP/t2P0h2+LD9FnWQayDE22R3l4Jhuicda7dkNPfymdyjqI8lHKrw1aU/vEOO7clhrtH9OHiyjOV64u4/mvQwflw1o/fg0YyHb8FXt/DwD4rblL0TXOVzvvvtudwPw/c/8sTfCq9tyfNuMfaFJ8dh5Ds3N/8CeIMakyQTAAA=

metadata_json:
  {"categories":["automation","integration","data processing","analytics"],"complexity":"medium","use_cases":["Conversational analysis of Meta/Facebook Ads performance","Quick ad performance reporting (impressions, spend, reach, CTR, CPC, conversions)","Ad performance monitoring and troubleshooting","Generating insights and recommendations from ad metrics","Delivering reports via chat platforms (Telegram, Slack, WhatsApp, Discord)"],"estimated_setup_minutes":30,"required_services":["OpenAI (Chat API)","Meta / Facebook Marketing API (Ads Insights)","n8n instance","Chat platform (Telegram, Slack, WhatsApp, Discord) - optional replacement"],"key_features":["Chat-based AI assistant for querying ad metrics","Retrieves common ad metrics (impressions, spend, reach, conversions, CTR, CPC)","Supports 85+ languages via OpenAI","Replaceable chat output node (Telegram → Slack/WhatsApp/Discord)","Uses memory buffer and agent nodes to maintain context and perform calculations (calculator, HTTP requests)"],"target_audience":["Marketing professionals","Advertisers and media buyers","Growth teams and performance marketers」「n8n users and automation builders"]}


name: RAG:Context-Aware Chunking | Google Drive to Pinecone via OpenRouter & Gemini
author_name: Udit Rawat
author_username: ailistmaster
categories: []
created_at: 2025-02-09T19:03:21.513Z
updated_at: 2025-02-09T19:03:21.513Z
url: https://n8n.io/workflows/2871
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:31
description:
  Workflow based on the following article.
  https://www.anthropic.com/news/contextual-retrieval

  This n8n automation is designed to extract, process, and store content from documents into a Pinecone vector store using context-based chunking. The workflow enhances retrieval accuracy in RAG (Retrieval-Augmented Generation) setups by ensuring each chunk retains meaningful context.

  Workflow Breakdown:
  🔹 Google Drive - Retrieve Document:
  The automation starts by fetching a source document from Google Drive. This document contains structured content, with predefined boundary markers for easy segmentation.

  🔹 Extract Text Content - Once retrieved, the document’s text is extracted for processing. Special section boundary markers are used to divide the text into logical sections.

  🔹 Code Node - Create Context-Based Chunks:
  A custom code node processes the extracted text, identifying section boundaries and splitting the document into meaningful chunks. Each chunk is structured to retain its context within the entire document.

  🔹 Loop Node - Process Each Chunk:
  The workflow loops through each chunk, ensuring they are processed individually while maintaining a connection to the overall document context.

  🔹 Agent Node - Generate Context for Each Chunk:
  We use an Agent node powered by OpenAI’s GPT-4.0-mini via OpenRouter to generate contextual metadata for each chunk, ensuring better retrieval accuracy.

  🔹 Prepend Context to Chunks & Create Embeddings - The generated context is prepended to the original chunk, creating context-rich embeddings that improve searchability.

  🔹 Google Gemini - Text Embeddings:
  The processed text is passed through Google Gemini text-embedding-004, which converts the text into semantic vector representations.

  🔹 Pinecone Vector Store - Store Embeddings:
  The final embeddings, along with the enriched chunk content and metadata, are stored in Pinecone, making them easily retrievable for RAG-based AI applications.

  Use Case:
  This automation enhances RAG retrieval by ensuring each chunk is contextually aware of the entire document, leading to more accurate AI responses. It’s perfect for applications that require semantic search, AI-powered knowledge management, or intelligent document retrieval.

  By implementing context-based chunking, this workflow ensures that LLMs retrieve the most relevant data, improving response quality and accuracy in AI-driven applications.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsGoogleGemini","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.googleDrive","n8n-nodes-base.extractFromFile","n8n-nodes-base.code","n8n-nodes-base.splitOut","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","data processing","ML/NLP","knowledge management"],"complexity":"complex","use_cases":["Semantic search / vector search indexing","Retrieval-Augmented Generation (RAG) for QA","AI-powered knowledge management and document retrieval","Document ingestion and indexing pipeline","Improving LLM retrieval accuracy with context-aware chunks"],"estimated_setup_minutes":60,"required_services":["Google Drive (Google API / Workspace)","OpenRouter (routes to GPT-4.0-mini / OpenAI)","Google Gemini text-embedding-004 (Vertex AI / Gemini embeddings API)","Pinecone vector database","n8n runtime/environment"],"key_features":["Context-aware chunking that preserves section boundaries","Custom code node to create meaningful, document-level chunks","Agent (LLM) generation of contextual metadata per chunk","Prepending generated context to chunks before embedding","Google Gemini embeddings for semantic vectors"],"target_audience":["Developers","ML / AI Engineers","Data Engineers / ETL engineers implementing ingestion pipelines`,`Knowledge managers and product managers looking to enable semantic search"]}


name: 🤖🧠 AI Agent Chatbot + LONG TERM Memory + Note Storage + Telegram
author_name: Joseph LePage
author_username: joe
categories: []
created_at: 2025-02-09T19:29:31.836Z
updated_at: 2025-02-09T19:29:31.836Z
url: https://n8n.io/workflows/2872
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 19:51:23
description:
  This workflow template creates an AI agent chatbot with long-term memory and note storage using Google Docs and Telegram integration.

  Google Docs Integration 📄
  n8n Google Docs Node Setup
  Google Credentials

  Telegram Integration 💬
  Telegram Setup

  Core Features 🌟

  AI Agent Integration 🤖
  Implements a sophisticated AI agent with memory management capabilities
  Uses GPT-4o-mini and DeepSeek models for intelligent conversation handling
  Maintains context awareness through session management

  Memory System 🧠
  Long-term memory storage using Google Docs
  Separate note storage system for specific information
  Window buffer memory for maintaining conversation context
  Intelligent memory retrieval and storage mechanisms

  Communication Interface 💬
  Telegram integration for message handling
  Real-time message processing and response generation

  Technical Components 🔧

  Memory Architecture 📚
  Dual storage system separating memories from notes
  Automated memory retrieval before each interaction
  Structured memory saving with timestamps

  AI Models 🤖
  Primary GPT-4o-mini mini model for general interactions
  DeepSeek-V3 Chat for specialized processing
  Custom agent system with tool integration

  Storage Integration 💾
  Google Docs integration for persistent storage
  Separate document management for memories and notes
  Automated document updates and retrievals

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.googleDocsTool","n8n-nodes-base.googleDocs","n8n-nodes-base.stickyNote","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDocsTool","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDocs","n8n-nodes-base.aggregate","n8n-nodes-base.merge"]

workflow_json_compressed:
  [encoded data, 5432 characters]

metadata_json:
  {"categories":["automation","chatbot","integration","knowledge management"],"complexity":"complex","use_cases":["Telegram AI chatbot with long-term conversational memory","Persistent note-taking and knowledge capture","Context-aware customer/community support via messaging","Automated memory retrieval for smarter agent responses"],"estimated_setup_minutes":45,"required_services":["n8n instance","Google Docs / Google Drive API (Google credentials)","Telegram Bot API / Telegram account","OpenAI or provider supporting GPT-4o-mini","DeepSeek API (DeepSeek-V3 Chat)"],"key_features":["Long-term memory stored in Google Docs","Separate note storage documents","Window buffer memory for short-term context","Automated memory retrieval before each interaction","Session/context management for conversations and agents','Dual storage architecture (memories vs notes)"],"target_audience":["developers","automation engineers","product managers building conversational agents」「community managers / support teams"]}


name: Author and Publish Blog Posts From Google Sheets
author_name: Daniel Nolde
author_username: dnolde
categories: []
created_at: 2025-02-10T12:01:15.051Z
updated_at: 2025-02-10T12:01:15.051Z
url: https://n8n.io/workflows/2873
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:31
description:
  What it is:

  An automation to plan→draft→finalize and publish your textual blog post ideas to your wordpress blog
  Works in stages and hand back control to you in between those
  You can use a Google Spreadsheet for planning topics and configuring LLM models and prompts

  What it does:

  plans→drafts→finalizes blog post topics you specify in a Google Spreadsheet using an LLM with prompts that also ar configured in that spreadsheet (even which model to use)
  savs the results in the corresponding 
  columns of the "Schedule" sheet in the spreadsheet
  hands control back to the user for inspecting or changing the results and for setting the next "Action" for th workflow
  Finally publishes the blog post to your Wordpress instance

  Limitations
  Probably slightly over-engineered ;-)
  No media generation yet
  some LLM models don't work because of their output format

  How it works:

  The Workflow is triggered manually or scheduled every hour
  It ingests a Google Spreadsheet to get
    Config for prompts/context tc
    Blog-Topics and their status and next action
  Depending on each blog topics "Status" and "Action" it then either uses an LLM for th next action ("plan"→"draft"→"final" actions) or publishes the written content to your Wordpress instance ("publish" actions)

  Set up steps:

  Import the workflow
  Make your own copy of the Google Spreadsheet
  Update the credentials using your individual credentials for:
    Google Spreadsheets
    OpenRouter
  Edit the "Settings" node and enter your individual values for
    Your spreadsheet copy URL
    Your wordpress blog URL
    Your wordpress blog username
    Your wordpress blog app password (a 4x4 alphanumeric sequence), that you probably have to create first, for which your wordpress user has to have 2-factor-authentication enabled.
  In your own copy of the spreadsheet:
    individualize the "Config" sheet's "Value" column for the prompts/context/etc
    Populate the "Schedule" sheet with at least one line in which you specify
      a "Topic"
      a "Schedulded" date (YYYY-MM-DD HH:mm:ss)
      a "Status" of "idea"
      an "Action" of "plan" (to kick off that action)

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.manualTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","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, 10692 characters]

metadata_json:
  {"categories":["automation","content publishing","integration","AI/LLM","CMS"],"complexity":"complex","use_cases":["Plan, draft and finalize blog posts using LLMs","Human-in-the-loop content workflow controlled from a Google Sheet","Scheduled or manual publishing to a WordPress blog","Use per-topic prompts and model selection stored in a spreadsheet","Save and track content status and results in Google Sheets"],"estimated_setup_minutes":45,"required_services":["Google Sheets (Google account)","LLM provider (OpenRouter / OpenAI or compatible model)","WordPress (site URL, username, app password)"],"key_features":["Spreadsheet-driven prompts, model selection and topic schedule","Stage-based pipeline: plan → draft → final → publish","Writes results back to corresponding Google Sheet columns","Hands control back to user between stages for inspection/edits","Scheduled or manual trigger options for the workflow"],"target_audience":["Bloggers and content creators","Marketing teams and content managers","Developers/automation engineers setting up content pipelines\",\"Agencies managing multiple blogs"]}


name: Host Your Own AI Deep Research Agent with n8n, Apify and OpenAI o3
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-02-11T00:02:26.780Z
updated_at: 2025-02-11T00:02:26.780Z
url: https://n8n.io/workflows/2878
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 20:27:49
description:
  This template attempts to replicate OpenAI's DeepResearch feature which, at time of writing, is only available to their pro subscribers.

  &gt; An agent that uses reasoning to synthesize large amount of online information and complete multi-step research tasks for you.
  Source

  Though the inner workings of DeepResearch have not been made public, it is presumed the feature relies on the ability to deep search the web, scrape web content and invoking reasoning models to generate reports. All of which n8n is really good at!

  Using this workflow, n8n users can enjoy a variation of the Deep Research experience for themselves and their teams at a fraction of the cost. Better yet, learn and customise this Deep Research template for their businesses and/or organisations.

  Check out the generated reports here: https://jimleuk.notion.site/19486dd60c0c80da9cb7eb1468ea9afd?v=19486dd60c0c805c8e0c000ce8c87acf

  How it works
  A form is used to first capture the user's research query and how deep they'd like the researcher to go.
  Once submitted, a blank Notion page is created which will later hold the final report and the researcher gets to work.
  The user's query goes through a recursive series of web serches and web scraping to collect data on the research topic to generate partial learnings.
  Once complete, all learnings are combined and given to a reasoning LLM to generate the final report.
  The report is then written to the placeholder Notion page created earlier. 

  How to use
  Duplicate this Notion database template and make sure all Notion related nodes point to it.
  Sign-up for APIFY.com API Key for web search and scraping services.
  Ensure you have access to OpenAI's o3-mini model. Alternatively, switch this out for o1 series.
  You must publish this workflow and ensure the form url is publically accessible.

  On depth & breadth configuration
  For more detailed reports, increase depth and breadth but be warned the workflow will take exponentially longer and cost more to complete. The recommended defaults are usually good enough.

  Depth=1 & Breadth=2 - will take about 5 - 10mins.
  Depth=1 & Breadth=3 - will take about 15 - 20mins.
  Dpeth=3 & Breadth=5 - will take about 2+ hours!

  Customising this workflow
  I deliberately chose not to use AI-powered scrapers like Firecrawl as I felt these were quite costly and quotas would be quickly exhausted. However, feel free to switch web search and scraping services which suit your environment.
  Maybe you don't decide to source the web and instead, data collection comes from internal documents instead. This template gives you freedom to change this.
  Experiment with different Reasoning/Thinking models such as Deepseek and Google's Gemini 2.0.
  Finally, the LLM prompts could definitely be improved. Refine them to fit your use-case.

  Credits
  This template is largely based off the work by David Zhang (dzhng) and his open source implementation of Deep Research: https://github.com/dzhng/deep-research

nodes_used:
  ["@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.formTrigger","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.noOp","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.splitOut","n8n-nodes-base.form","n8n-nodes-base.splitInBatches","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.form","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executionData","n8n-nodes-base.switch","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.notion","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.notion","n8n-nodes-base.notion","n8n-nodes-base.notion","n8n-nodes-base.splitOut","n8n-nodes-base.markdown","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.notion","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.executeWorkflow","n8n-nodes-base.executeWorkflow","n8n-nodes-base.form","n8n-nodes-base.form","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.aggregate","n8n-nodes-base.splitInBatches","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.filter","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.stopAndError","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 24188 characters]

metadata_json:
  {"categories":["automation","integration","data processing","research","AI/ML"],"complexity":"complex","use_cases":["Automated multi-step web research and report generation","Market and competitor research","Literature reviews and academic research synthesis","Due diligence and investigative research","Content research for writers and product teams"],"estimated_setup_minutes":30,"required_services":["n8n (hosted instance with public form URL)","Apify (web search and scraping API)","OpenAI (o3-mini or o1 series model access)","Notion (Notion API / database template)"],"key_features":["Recursive web search and web-scraping pipeline to collect large amounts of online data","LLM-based reasoning to synthesize partial learnings into a final report","Creates and writes final report into a placeholder Notion page","Configurable depth and breadth to control search granularity and runtime","Modular workflow (many nodes) enabling customization of scrapers, models and prompts"],"target_audience":["Developers / automation engineers","Data scientists and researchers","Knowledge workers and analysts (market, product, content teams)"]}


name: Open Deep Research - AI-Powered Autonomous Research Workflow
author_name: Leonard
author_username: leonardvanhemert
categories: []
created_at: 2025-02-11T16:42:07.823Z
updated_at: 2025-02-11T16:42:07.823Z
url: https://n8n.io/workflows/2883
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  Open Deep Research - AI-Powered Autonomous Research Workflow  

  Description  
  This workflow automates deep research by leveraging AI-driven search queries, web scraping, content analysis, and structured reporting. It enables autonomous research with iterative refinement, allowing users to collect, analyze, and summarize high-quality information efficiently.

  How it works  

  🔹 User Input  
     The user submits a research topic via a chat message.

  🧠 AI Query Generation  
     A Basic LLM generates up to four refined search queries to retrieve relevant information.

  🔎 SERPAPI Google Search  
     The workflow loops through each generated query and retrieves top search results using the SerpAPI API.

  📄 Jina AI Web Scraping  
     Extracts and summarizes webpage content from the URLs obtained via SerpAPI.

  📊 AI-Powered Content Evaluation  
     An AI Agent evaluates the relevance and credibility of the extracted content.

  🔁 Iterative Search Refinement  
     If the AI finds insufficient or low-quality information, it generates new search queries to improve results.

  📜 Final Report Generation  
     The AI compiles a structured markdown report, including sources with citations.

  Set Up Instructions  
  🚀 Estimated setup time: ~10-15 minutes  

  ✅ Required API Keys:**  
    SerpAPI → For Google Search results  
    Jina AI → For text extraction  
    OpenRouter → For AI-driven query generation and summarization  

  ⚙️ n8n Components Used:**  
    AI Agents with memory buffering for iterative research  
    Loops to process multiple search queries efficiently  
    HTTP Requests for direct API interactions with SerpAPI and Jina AI  

  📝 Recommended Enhancements:**  
    Add sticky notes in n8n to explain each step for new users  
    Implement Google Drive or Notion Integration to save reports automatically  

  🎯 Ideal for:  
  ✔️ Researchers & Analysts - Automate background research  
  ✔️ Journalists - Quickly gather reliable sources  
  ✔️ Developers - Learn how to integrate multiple AI APIs into n8n  
  ✔️ Students - Speed up literature reviews  

  🔗 Completely free and open-source! 🚀  

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.splitInBatches","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.toolWikipedia","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4368 characters]

metadata_json:
  {"categories":["automation","research","web scraping","content analysis","AI"],"complexity":"medium","use_cases":["automated background research","literature reviews","source credibility evaluation","journalism fact-finding","competitive/market research"],"estimated_setup_minutes":12,"required_services":["SerpAPI (Google Search)","Jina AI (web text extraction)","OpenRouter (LLM for query generation & summarization)"],"key_features":["LLM-generated refined search queries","SERPAPI integration to fetch top results","Jina AI web scraping and summarization","AI agent content evaluation and credibility scoring","Iterative search refinement loop with memory buffering','Batched processing of queries and results','Final structured Markdown report with citations"],"target_audience":["Researchers","Analysts","Journalists / Reporters / Investigative writers - use case group too large? Wait this field should be array of strings. Fix."]}


name: Find Top Keywords for Youtube And Google and Store them in NocoDB
author_name: Shannon Atkinson
author_username: rainmanjam
categories: []
created_at: 2025-02-12T01:32:32.725Z
updated_at: 2025-02-12T01:32:32.725Z
url: https://n8n.io/workflows/2884
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Template Description  
  WDF Top Keywords: This workflow is designed to streamline keyword research by automating the process of generating, filtering, and analyzing Google and YouTube keyword data. Ensure compliance with local regulations and API terms of service when using this workflow.

  📌 Purpose  
  The WDF Top Keywords workflow automates collecting, processing, and managing keyword data for both Google and YouTube platforms. Leveraging multiple data sources and APIs ensures an efficient and scalable approach to identifying high-impact keywords for SEO, content creation, and marketing campaigns.

  Key Features
  Automates the generation of keyword suggestions using autocomplete APIs.
  Integrates with NocoDB to store and manage keyword data.
  Filters keywords based on monthly search volume and cost-per-click (CPC).
  Supports bulk import of keyword data into structured databases.
  Outputs both Google and YouTube keyword insights, enabling informed decision-making.

  🎯 Target Audience  
  This workflow is ideal for:
  Digital marketers aiming to optimize ad campaigns with data-driven insights.
  SEO specialists looking to identify high-potential keywords efficiently.
  Content creators seeking trending and relevant topics for their platforms.
  Agencies managing keyword research for multiple clients.

  ⚙️ How It Works  
  Trigger: The workflow runs on-demand or at scheduled intervals.  
  Keyword Generation:  
     Retrieves base keywords from NocoDB.  
     Generates autocomplete suggestions for Google and YouTube.  
  Data Processing:  
     Filters and formats keyword data based on specific criteria (e.g., search volume, CPC).  
     Consolidates results for efficient storage and analysis.  
  Storage and Output:  
     Saves data into structured NocoDB tables for tracking and reuse.  
     Bulk imports monthly search volume statistics for detailed analysis.

  🛠️ Key APIs and Tools Used  
  NocoDB**: Stores and organizes base and processed keyword data.  
  DataForSEO API**: Provides search volume and keyword performance metrics.  
  Google Autocomplete API**: Suggests relevant Google search terms.  
  YouTube Autocomplete API**: Suggests trending YouTube keywords.  
  Social Flood Docker Instance**: Serves as the local integration hub.  

  Setup Instructions  
  Required Tools:
     NocoDB  
     n8n  
     DataForSEO Account  
     Social Flood Docker Instance  
  Create the following NocoDB tables:  
     Base Keyword Search  
     Second Order Google Keywords  
     Second Order YouTube Keywords  
     Search Volume  

  This template empowers users to handle complex keyword research tasks effortlessly, saving time and providing actionable insights. Share this template to enhance your workflow efficiency!

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

workflow_json_compressed:
  [encoded data, 7444 characters]

metadata_json:
  {"categories":["automation","integration","data processing","SEO"],"complexity":"complex","use_cases":["Automated keyword research for SEO and content planning","Optimizing paid ad campaigns with search volume and CPC data","Bulk importing and managing keyword datasets in a database","Monitoring and extracting trending YouTube and Google search terms","Agency workflows for multi-client keyword management"],"estimated_setup_minutes":60,"required_services":["NocoDB","n8n","DataForSEO API","Google Autocomplete API","YouTube Autocomplete API","Social Flood (Docker)"],"key_features":["Generate autocomplete keyword suggestions for Google and YouTube","Filter keywords by monthly search volume and CPC","Store and manage keywords in NocoDB tables","Bulk import monthly search volume statistics","Scheduled or on-demand runs for automated collection','Consolidate and format results for analysis"],"target_audience":["Digital marketers","SEO specialists","Content creators and publishers','Agencies managing keyword research for multiple clients"]}


name: Backup all n8n workflows to Google Drive every 4 hours
author_name: Zacharia Kimotho
author_username: imperolq
categories: []
created_at: 2025-02-12T04:51:48.065Z
updated_at: 2025-02-12T04:51:48.065Z
url: https://n8n.io/workflows/2886
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  This workflow takes off the task of backing up workflows regularly on Github and uses Google Drive as the main tool to host these. 

  This can be a good way to keep track of your workflows so that you never lose any workflows in case your n8n goes down.

  How does it work

  Creates a new folder within a specified folder with the time its backed up
  Loops around all workflows, converts them to a JSON file and uploads them to the created folder
  Gets the previous backups and deletes them

  This has a clean feel and look as it simplifies the backup while not keeping a cache of workflows on your drive.

  Setup

  Create a new folder
  Create new service account credentials
  Share the folder with the service account email
  Upload this workflow to your canvas and map the credentials
  Set the schedule that you need your workflows to run and manage your backups
  Activate the workflow

  Happy Productivity!

  @Imperol

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.n8n","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleDrive","n8n-nodes-base.convertToFile","n8n-nodes-base.googleDrive","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.filter","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive"]

workflow_json_compressed:
  H4sIAAAAAAAAE81YbW/bNhD+KwIxIC0mupRESZSBfmjTpsu2NkWbpcC6oKDIo6NWJh2JSmIY+rh/sV+3XzJI8otsy1m7Al0/GTaPd8/dPfdCL9AULEfjBcp0abkWcCrRGMmUES8KpaJEpCQWJIhjL4oFCUkaqISnJCUqJVQRYIIDkSIMVMhZ6MceCQRHLrIwneXcwnEBsnwLtpodm+ksBwsSjW1RQe0ibSSUaPx+gbLGauSDVCQJMSc+xzRlEvM49TB4CW2MBFHoIxdpPgU0RmfaEXkmPmV64hzBHYjKwlFjeD5rjjXTuNWPU17CaMp1xfPzIptMoEAumpkys5nRaPweRxFxPY+QSxfNeMGnYKEo0XhRd8ouoChbSa92l0g98AiLwxSrkKaYBpxhHnMf00BSJVLlUyY3SDXTB3F1Z300ASGu5/t7aJDK8g2wAq4rKO3ZrLnW/la7SBQgQduM5+0FzfSTWdYmtwFdXb+bHz+b2wtLf/8lvXi+Afj6yoDO7v7+609Ut7ptMT/TJzzLu1TtxsFFPL/l8/KssrPKPuMNg7qUruKjQsF5mmIZRymmMaU4hTjCSQwJT4F7UoqN+V+NmTlnN1A4pxam5cFYlbM8s6f6KbfiCsqdsHmHwma2QrTlSLAGHIchEEYCLEJBMGU8xokgAlOqmAxjj0mSbgCLArgFR8Oto0wuW0INQ54YM8nhWZHdwA5eyg7gXdp4/M4Un1Rubp2nXHyqZqWzWDg/aHM7UqaYcvvgSAghHOtIiV++xPP5fH700Klr5CLZmGvqeIE+fCjWOZwa2SjOs9IiF93wvGq+vpw7Hbza7YfKRZ1nn6umgFnOBUwbNwUXVyDfQFnl9rfmIrqydlaOHz1qkS2DMhJm2v3wqDNVPjqk5FUXkt2IoJarpakK0RwvU7FfB70knD2p7JXfr4qfrnP4eBHevSb59fl1CJssv2ivddFxuBCm0nZVIgdo5PsspmHg40iyGFMe+zhNQw9LyUQEJBBEeBsDx0bfQGEda5yTLIeDJBKd3LlZSvVo5PnE9YJ7WY86vqzSp7IclvF83DDqY2n0qAHk/Oj8gUbN1z+QU9dORwgoeGcKWfNzaTTaa4qjTVskKfHCUHnYC1OBacgI5ioCHEsQQUpkGAfxcHy/vIDaNjnkue459+Bop7ccPRxlFqajQ15/q+rJZE/JEupeV9kCm8kG3kCX/3bsFnEaBySIsMcCD1MpI8ykTLAC5QVhxD1Ge139bVO/VQ7OZugeaOtLwXuGcxDt57mocugWFwvFDc/bPUJlkDdQr0xVNBOi/TxdS9D6cs8/b+SvPYyiSAqVhDjxmcDUjwlmhCkchyFP4tjj1CMbD0/agXzQL7U63mWtd3+9ZhNtCjjmJawXJWG0zNYCPdmblRe+i3JQ9mJJqbaBlvAWdGP6BtBY8bxcDXKeZ3JV1rkxZUtfYaZpprk1BRojrhuC9s2ulrQwYEr4icR+lASYisjHCaMMp1JwxcIoSkiCVp2j0bVYhae0RaYnaLuraGOfX1cNlettDzbNqWO+i4pscrV9/Jk1c9mobtw833F+Gd0tOvg9OqhIUSpSwDxhgCmnCWaCChwmkALxZZpAuKGDhGa7/c8bQbsQ/As1OhOvoZhyDdrm87UP+3NwO87dzZPVUSfzyrwxxn5Bk/peOpFMIk5IojBhMsBUEYkTFROsEiASkjRRSW/OvgC7zMrh3fJgWtoJO5SWZXm3A/b735R251OfL1m+Isb/kdPLts9oEGuWN2+i8QJNedYk4P2ifSfe905oJV2UaQl3aEzqy6biT9b52VN0oFIH1fTJM6RrdwgMK+mvOl/v2jb+nr72dHetHLI3vHsNGtuFNqhuqML2tLmbCwdX30EIe6vEEIZ7HmWDSvflh7Ruvd0H9Qz/D/H1COv6H2mVUqadEQAA

metadata_json:
  {"categories":["backup","automation","integration","operations"],"complexity":"medium","use_cases":["Automated periodic backup of n8n workflows","Offsite storage for disaster recovery","Maintaining versioned workflow snapshots","Automated cleanup of old backups to save storage","Centralized archive for audit or rollback"],"estimated_setup_minutes":15,"required_services":["n8n (self-hosted or cloud)","Google Drive (Google Workspace or personal)","Google Service Account / Drive API access"],"key_features":["Scheduled export of all n8n workflows to JSON","Creates timestamped folder for each backup run","Uploads individual workflow JSON files to Google Drive","Deletes previous/old backups to control storage use","Configurable schedule (example: every 4 hours)"],"target_audience":["n8n users","DevOps engineers / system administrators","SREs and platform engineers who manage automation infrastructure"]}


name: Export PDF invoices from SmartBill to Google Drive
author_name: Codez & AI
author_username: codez
categories: []
created_at: 2025-02-12T11:02:03.340Z
updated_at: 2025-02-12T11:02:03.340Z
url: https://n8n.io/workflows/2887
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  This workflow automates the retrieval of invoice PDFs from the Smartbill API and saves them to Google Drive in a dynamically created folder based on last month’s date. It also generates a range of invoice numbers, ensuring proper formatting, and uploads each PDF with a structured filename.

  Overview

  Trigger and Data Setup:  
     The workflow is manually triggered. It sets the invoice range (start and end numbers), invoice series, the parent Google Drive folder ID and the folder where to save the PDF files.

  Folder Handling:  
     Folder Name Calculation: Calculates a default folder name based on last month’s date (formatted as YYYY-MM).

  Invoice Generation:  
     A code node generates invoice items by iterating over a specified range of numbers. Each invoice number is padded to custom number of digits (e.g., 0013), and the invoice series and folder ID are attached to each item.

  Retrieving Invoice PDFs:  
     For each generated invoice, the Smartbill API is called (using an HTTP Request node) to retrieve the corresponding invoice PDF.

  How to Use

  Credentials:**  
    Ensure you have configured the Smartbill API (HTTP Basic Auth) and Google API credentials correctly.
    
  Parameter Adjustment:**  
    Modify the SetData node if you need to change the invoice range, series, or target parent folder.
    
  Execution:**  
    Click Execute Workflow to run the workflow manually.

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

workflow_json_compressed:
  H4sIAAAAAAAAE62XW2/bRhCF/wqxzxxjb9yLHhM3hYEiAZq2eUj8sJdZmzBFsuQqTmDovxdUHEtySEdC+r48/Hhm5szygawxO7J6IHU7ZtcGvIpkRZBxjtJb6mkMnPEgtZccBVXBGxmsFZEaro1ktIo6YaUNBmedjVSZiJSUJOO6b1zG1wPG8T3mTf+6W/cNZoxklYcNbkvSdhFHsvr4QOrprYxZxphXYLkzIF0lwRhBgTvGHY0SMRhSktatkazIh1tsi9DU4a5ub4pP5LcvGDYZiw/dcJea7v4TmSi+9tPZ1rSwexl4N+LF2rUb1/w11Dc3OJCS9N1Y57pryeojVIaWoOh1SXo3uDVmHEayeth+0/oHh3F3kG3LR2qfqFY6ejAxcpDJCHBcJxA6MKaoZSrKPfX7tRuyr5umuMFc1O3nrg5Y9DEtwt7m3P+J/25wzMeoTMmTUOXFHjYZH2kVK6BRI8joDdhENVBNUUZpXBL+ABbzpctuEW3EZ0gg6ElI4kI+IVXaWhuVAc2iBBlFAKuMg4oGljgNnjJ6hFSs6zUuMoUu4jOf7GlQ/AlJMa2ZkBXISnGQQXrwlEaI3iRPvaGJ4QFSrsPd1+Jtl5epxt2ZxyOHhk3dxswZ7RZFNAk9hxCdAhm0AW9VAB2MFcZz4b2eZWPnwwlFS6j4GXSIiunoPWBKHqTSDCYkYBWnlcEYtUrHxbzE5DZNLt50TcSheOvOqi3wpdK2Xcbxqn3TdPdklVwz4mK5WRUd41MHoqMgpXTggrYgosJAaaW9OepAN4Tb4nKoP+Mj9SLwTdfdNLg7eszNT5yTkrjm3n0d321yv/k2jI/h+b0dlKCaoYfghASJXoOJjkEVDNM8yaTTQatepQK/1GMeF4nrdAwqFw0+NvNib6cOGKgJDLSYMoZpA5ajgynepeEMOR70wOsBXcZftFMZWv58iMQe0VSCB0aBBk1BBhPAeivAx+AFGhp9wOM2zbdYNF3Xn5M7TJ2ZO1b4UBkWgCouQaYYwTuqAGlKwgiFrhJ7rD+6ri/efcahuMq4Xi7p2Dd1vmpfuRxucXzGKE5bd3vrJI1cczQgK5NAWqnAMoUg0SVrFY0yHQzL333TuVikusEid8XvuwIW3yt47tCw0xbeHpaaWDkhHQhUAaRPEXwQCDT4hDHZqFl1cKNwdS5cMWJYZLt39bOVx3cOygnqHv1t193tblApiCSFpCBSYCC9cWCTiCBZDMEnb4ScYvrlWD1Y3I7F4ERg4G1AkFJ48FZysNQ4z2hg6vmWfAzUq8vT17c9bdin7X1dktC1LYbp0enQ02Vh9UDWrp7kPj7sbninBP3uiZLUbcQvZEW319fbcr/r5yRP6qxZ2X0ILqHOWPeDUrl/5MUIm0U46LQ5hsXJXrTpKZ7+H7m9AUsW/ZiHs2LPX30gd+jgCbfiWfk553+lqN++/8f9Pqc5s0sX/Zzr/XnOF+4W8+qLzi35cHx7nhV9abbmZOeCc77vf/7PtoB9/B8yI77d/gdyJSO/zA4AAA==

metadata_json:
  {"categories":["automation","integration","data processing"],"complexity":"medium","use_cases":["Automated archival of invoice PDFs","Monthly bookkeeping and audit trails","Sharing or backing up invoices to cloud storage","Generating and exporting a series of invoices for reconciliation"],"estimated_setup_minutes":20,"required_services":["SmartBill API (HTTP Basic Auth)","Google Drive API (Google credentials)"],"key_features":["Dynamically creates target folder named for last month (YYYY-MM)","Generates a numeric invoice range with configurable padding and series","Retrieves invoice PDFs from SmartBill via HTTP requests","Uploads each PDF to a structured filename in Google Drive","Processes invoices in batches to handle large ranges reliably"],"target_audience":["Accountants and finance teams","Operations and back-office staff","Small business owners/freelancers needing automated backups of invoices」「Developers/automation engineers implementing integrations"]}


name: Post to an XMLRPC API via the HTTP Request node
author_name: Daniel Nolde
author_username: dnolde
categories: []
created_at: 2025-02-12T11:18:36.582Z
updated_at: 2025-02-12T11:18:36.582Z
url: https://n8n.io/workflows/2888
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  What this does

  Show you how to us XMLRPC APIs via the generic HTTP-Request-node, by the example of posting to a wordpress blog
  This is also a feasible workaround if a specific n8n integration does not work or stops working (which happens e.g. with the Wordpress node)

  How it works

  First, the XML payload for the request is being prepared (in a code node, which also properly escapes special character in the values that you want to send to the XMLRPC endpoint)
  Then, the HTTP Request node sends the request using the HTTP post method
  Last, the returned XML response is converted to JSON which a conditional node uses to determine whether th operation was successful or not

  Setup steps:

  Import workflow
  Ensure you have a wordpress blog with a user that has an app-Password
  Edit the "Settings"-node and enter your individual values for url/user/app-pw

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

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

metadata_json:
  {"categories":["integration","automation"],"complexity":"medium","use_cases":["Post content to a WordPress blog via XML-RPC","Interact with any XML-RPC API when no native node exists","Automate content publishing or remote procedure calls over XML-RPC","Workaround for broken or missing native n8n integrations"],"estimated_setup_minutes":10,"required_services":["WordPress with XML-RPC enabled (and an app password) or any XML-RPC-compatible HTTP endpoint","n8n instance with HTTP Request and Code nodes available"],"key_features":["Constructs and escapes XML payload in a Code node","Sends XMLRPC requests via the generic HTTP Request node (HTTP POST)","Parses returned XML to JSON for downstream logic","Conditional flow (IF node) to handle success/failure responses","Generic approach that works for any XML-RPC API as a fallback"],"target_audience":["Developers","n8n power users / integrators","Sysadmins automating publishing or remote API calls"]}


name: Export WordPress Posts to CSV and Upload to Google Drive
author_name: Codez & AI
author_username: codez
categories: []
created_at: 2025-02-12T11:24:39.213Z
updated_at: 2025-02-12T11:24:39.213Z
url: https://n8n.io/workflows/2889
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Overview  
  This n8n workflow automates the process of extracting published WordPress posts, converting them into a CSV file, and uploading it to Google Drive. It’s perfect for content backups, SEO audits, and data migration.  

  Features  
  Fetches all published posts from a WordPress website  
  Extracts key post details (ID, Title, Link)  
  Converts the extracted data into a CSV file  
  Uploads the CSV file to Google Drive for easy access and storage  

  Use Cases  
  SEO Optimization**: Export post data for keyword analysis and performance tracking  
  Automated Content Backup**: Store WordPress post details in Google Drive. You can add more fields to the Csv file if needed  

  Workflow Steps  

  1. Trigger Workflow Manually  
  The workflow starts when triggered manually in n8n.  

  2. Retrieve WordPress Posts  
  The workflow fetches all published posts using the WordPress API. It extracts:  
  Post ID  
  Title  
  Link  
  Rendered Content

  3. Format Data  
  The retrieved data is structured to ensure correct CSV formatting.  

  4. Convert to CSV File  
  The formatted data is transformed into a downloadable CSV file.  

  5. Upload to Google Drive  
  The CSV file is automatically uploaded to a specified Google Drive folder for easy access and storage.  

  How to Use  
  Connect your WordPress and Google Drive accounts to n8n.  
  Run the workflow manually or set up a scheduled trigger.  
  Access the CSV file from your Google Drive folder.  

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.wordpress","n8n-nodes-base.set","n8n-nodes-base.convertToFile","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE5VW247bNhD9FYHpQwuIG1K8SDLQh8W2CfLQIMjmgiK7CHgZ2crKpCDSm2wNA/mM9vfyJYVkey1n5W76pstwzuFczswaLSEqNFuj2oWonIEXFs0Q0CwDrkuiiTUZzQzPNc+AEWl0wU1ZMkuKLC84JcLmFYi8AKNKVVoiCwsEpSjCsm1UhIsObLiEuGov/LJtIIJFs9itYJMi5y0ENPuwRnWPalglmSIUUy4I5lWZY6Uzi6nklEvKKkEMSpFTS0Az9H4BLjFNbW5qN0++ff37DYSYfPbdTdX4z9++/tOTuGt7U1c4PGBhrQKcLZVbqeZNV8/n0KEUtT7UsfYOzT5wQlKWkesUtapTS4jQBTRbb7au3kEXBju6SXectckzAYxhJpjFXDOLtRQVBp2VgggGwow4P4eYvPedbTsIIXnlQwwnWX7e2x0zlHySIfJtbzA8hqjiKqAZale6qcMCbVLkW+jU1gWaQzxvGpSiDuKqc/3zPiOmAwsu1qoZPN1zOG/roUj6K3958ddCkzfCLgWzN96OUnJ/NWWMX7mINqcjR3KwrMoUNpmWmAMzuCA2xzwTyhqpLJMj1+f20yrE5FkNjT0dswDxOFqFfCxamxSpEOq5W4KLw7+j131tslJZyCnBoEFgbrjFpTYFFsoWUjGTSy0ObGs7orha6qHMblWz6j/8ul4nP30K3p3VNtls0H1Espxyk1HbO2WYk0JjXVKLleKCsooVvGIHjFjHBg4wIXa1m0/CDJZnHTgLHRxD5pSWvO82I4zEXFcEF4oxLJQqCksyayt+gGxqd/NDiL3hEY4stTCyILiUAjAneYELUlqcc02JVVRlZXXAMd5FcPGHoHa2x9e7flB37Iwf4sy4lbkQGAqZYZ7lOdZE55gqI4WxRW5odiBz4d0tdDGJPrm4fJc8q8dR/67+zNb2jd9ZjSqRkuLRUnzQLGeHduFlSaixBRZQCcypFrjIDcNKlHlpKkolH2Xqbdt4ZXvOz72fN5D81tW3p3nPB6O9zZg1mxbEBx2PBzE7M+EWpcj2jvpBskYfP3Y7dUnR0tttFYU4SuUfdztyg0qN2rLyjYXuR9103vevRpkF2NcQVk18259BixjbMHv6dCC1u+mZ8cvth++OvNxe62ny82vvY7Kl8EtPTa3ioldGs1fRAN1tbeB8r3QPxHMLNVZOOpoE27Scn9JJdp94xaQ2xua4zMoCc1NKXFQccMF0SUoJgtmRTl7G2tzcJS99PJ3tMNjsTMZiSUhK5cNcL6CeLyKaUU7S+96coSdPniQ7Wa4GWb5yf/pVYpRLlLXJ0new+9HXYVzA0D9V3UCi7xKwdewHd1zUIenJodOjQthCWqYBWytLzAVXWOesxDS3YIVkEoBOhoD+7xhQQtJsot73Mcjkgxj8/qX13XauvzrM9b1eKGeT6W68clfuMkIbZlcOJ5cQkzu/6kZ+RvWU1G6I4NX9CjGCukJDAI+8jIH6adwb73xsv+1PXPQbVHK0O01k4nq4tANzv2QcD+TZGi1V3Qfww3pY6x4TzsE6RbWz8AXNyOb6epNOnpjy/Ji6TTqf2r2mnJ/YNCZ9Pr6DTiH85xY4gbPZ/AteSmN6pwsAAA==

metadata_json:
  {"categories":["automation","integration","data processing"],"complexity":"simple","use_cases":["SEO optimization and keyword analysis","Automated content backup","Content data migration","Generating reports or CSV exports for analytics"],"estimated_setup_minutes":10,"required_services":["WordPress (REST API)","Google Drive","n8n"],"key_features":["Fetches all published WordPress posts","Extracts key fields (ID, Title, Link, Rendered Content)","Formats data for CSV","Converts data to a downloadable CSV file","Uploads CSV to a specified Google Drive folder (manual or scheduled run)"],"target_audience":["content managers","SEO specialists","site administrators / WordPress owners\",\"developers and automation engineers\",\"data analysts"]}


name: Drive-To-Store Lead Generation (with coupon) with Google Sheets & SuiteCRM
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-02-12T16:18:39.735Z
updated_at: 2025-02-12T16:18:39.735Z
url: https://n8n.io/workflows/2890
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Drive-to-Store is a multi-channel marketing strategy that includes both the web and the physical context, with the aim of increasing the number of customers and sales in physical stores. This strategy guides potential customers from the online world to the physical point of sale through the provision of a coupon that can be spent in the store or on an e-commerce site.

  The basic idea is to have a landing page with a form and a series of unique coupons to assign to leads as a "reward" for filling out the form.

  This workflow is ideal for businesses looking to automate lead generation and management, especially when integrating with CRM systems like SuiteCRM and using Google Sheets for data tracking.

  How It Works
  Form Submission:
     The workflow starts with the On form submission node, which triggers when a user submits a form on a landing page. The form collects the user's name, surname, email, and phone number.

  Form Data Processing:
     The Form Fields node extracts and sets the form data (name, surname, email, and phone) for use in subsequent steps.

  Duplicate Lead Check:
     The Duplicate Lead? node checks if the submitted email already exists in a Google Sheets document. If the email is found, the workflow responds with a "duplicate lead" message (Respond KO node) and stops further processing.

  Coupon Retrieval:
     If the email is not a duplicate, the Get Coupon node retrieves a coupon code from the Google Sheets document based on the lead's email.

  Lead Creation in SuiteCRM:
     The Create Lead SuiteCRM node creates a new lead in SuiteCRM using the form data and the retrieved coupon code. The lead includes:
       First name, last name, email, phone number, and coupon code.

  Google Sheets Update:
     The Update Sheet node updates the Google Sheets document with the newly created lead's details, including:
       Name, surname, email, phone, coupon code, lead ID, and the current date and time.

  Response to Webhook:
     The Respond OK node sends a success response back to the webhook, indicating that the lead was created successfully.

  Set Up Steps
  Configure Form Trigger:
     Set up the On form submission node to collect user data (name, surname, email, and phone) via a web form.

  Set Up Google Sheets Integration:
     Configure the Duplicate Lead?, Get Coupon, and Update Sheet nodes to interact with the Google Sheets document. Ensure the document contains columns for email, coupon, lead ID, and other relevant fields.

  Set Up SuiteCRM Authentication:
     Configure the Token SuiteCRM node with the appropriate client credentials (client ID and client secret) to obtain an access token from SuiteCRM.

  Set Up Lead Creation in SuiteCRM:
     Configure the Create Lead SuiteCRM node to send a POST request to SuiteCRM's API to create a new lead. Include the form data and coupon code in the request body.

  Set Up Webhook Responses:
     Configure the Respond OK and Respond KO nodes to send appropriate JSON responses back to the webhook based on whether the lead was created or if it was a duplicate.

  Test the Workflow:
     Submit a test form to ensure the workflow correctly checks for duplicates, retrieves a coupon, creates a lead in SuiteCRM, and updates the Google Sheets document.

  Activate the Workflow:
     Once tested, activate the workflow to automate the process of handling form submissions and lead creation.

  Key Features
  Duplicate Lead Check**: Prevents duplicate leads by checking if the email already exists in the Google Sheets document.
  Coupon Assignment**: Retrieves a coupon code from Google Sheets and assigns it to the new lead.
  SuiteCRM Integration**: Automatically creates a new lead in SuiteCRM with the form data and coupon code.
  Data Logging**: Logs all lead details in a Google Sheets document for tracking and analysis.
  Webhook Responses**: Provides immediate feedback on whether the lead was created successfully or if it was a duplicate.

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

workflow_json_compressed:
  [encoded data, 4580 characters]

metadata_json:
  {"categories":["marketing","integration","automation","data processing","lead generation"],"complexity":"medium","use_cases":["Drive-to-store promotions with coupon distribution","Automated lead capture and CRM creation","Preventing duplicate leads before CRM insertion","Centralized lead logging and analytics in Google Sheets","Issuing unique coupons to form respondents"],"estimated_setup_minutes":30,"required_services":["Google Sheets (Google account)","SuiteCRM (API access / client credentials)","Web form / webhook endpoint (landing page provider)","n8n instance or server to run workflow"],"key_features":["On-form-submission trigger for real-time processing","Duplicate email check against Google Sheets","Coupon retrieval and assignment from Google Sheets","Automated lead creation in SuiteCRM (with coupon code)","Update/log lead details and coupon usage in Google Sheets with timestamp and lead ID response handling (OK / KO)"],"target_audience":["Marketers running drive-to-store campaigns","Small business owners","CRM administrators and marketing ops teams"]}


name: AI Virtual TryOn automated generation 🤖🧠 for WooCommerce clothing catalog 👔
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-02-12T17:48:05.133Z
updated_at: 2025-02-12T17:48:05.133Z
url: https://n8n.io/workflows/2892
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  This AI Agent is designed to streamline the process of creating realistic images of clothing products worn by models, eliminating the need for expensive photoshoots. The primary goal is to automate the generation of virtual try-on images for an eCommerce store selling clothing, using advanced image processing technologies.

  Example of results

  How It Works
  Triggering the Workflow:
     The workflow can be triggered manually using the When clicking ‘Test workflow’ node or automatically via the Schedule Trigger node, which runs the workflow at regular intervals (e.g., every 5 minutes).

  Data Retrieval:
     The Get new product node retrieves data from a Google Sheets document containing the URLs of the model image, the clothing product image, and the WooCommerce product ID. The document also includes a column for the resulting virtual try-on image URL, which is initially empty.

  Setting Up the Request:
     The Set data node prepares the data for the AI request by assigning the model image URL and the product image URL to variables.

  AI Image Generation:
     The Create Image node sends a request to API to generate a virtual try-on image. The request includes the URLs of the model and the clothing product.
  When you register for the API service you will get 1$ for free. For continuous work add API credits to your account.

  Image Retrieval:
     The Get Url image node retrieves the URL of the generated virtual try-on image.
     The Get File image node downloads the generated image from the provided URL.

  Image Storage:
     The Upload Image node uploads the generated image to a specified Google Drive folder for storage.

  Updating Google Sheets:
     The Update result node updates the Google Sheets document with the URL of the generated virtual try-on image.

  Updating WooCommerce:
     The Update product node updates the corresponding product in WooCommerce by adding the generated virtual try-on image to the product's image gallery.

  Functionality
  This AI Agent is designed to streamline the process of creating realistic images of clothing products worn by models, eliminating the need for expensive photoshoots. The primary goal is to automate the generation of virtual try-on images for an eCommerce store selling clothing, using advanced image processing technologies.

  By offering realistic images of clothing items worn by models, this automation process saves time and resources, making product catalog management more efficient. This approach not only enhances the competitiveness of the eCommerce store but also provides greater flexibility in creating high-quality visual content adaptable to various digital marketing campaigns.

  Key Features
  Automated Virtual Try-On**: Generates realistic images of models wearing clothing items using AI.
  Google Sheets Integration**: Retrieves and updates data in Google Sheets for seamless data management.
  Image Storage**: Uploads generated images to Google Drive for easy access and archiving.
  WooCommerce Integration**: Updates product pages with virtual try-on images, enhancing the shopping experience.
  Scheduled Automation**: Can be triggered manually or run at regular intervals for continuous processing.

  This workflow is ideal for eCommerce businesses looking to enhance their product catalogs with high-quality, realistic images without the need for costly photoshoots. It leverages AI to provide a cost-effective and efficient solution for virtual try-on image generation.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.wait","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.wooCommerce","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WYy27jxhKGX4XgWmX0pfqmTRBMkGA2J8DJJFkMvKjurpaJkUiHoscZGAbyGOe8Xp4koGYwoi1yLCs7LZrVX/9d9Ve1HuodD1SvH+qm3Q/UJn6b63VNGEsKmoMziZTWlNBwdiko5bLHVAwprYKWwigTpKNMRWupWIps0Kr6cVW3tON6XX//tvqt6Yc72lbv+k8/t1Xp+ur3rnvT7XbcJ67ebLvhpmk31RsaaNtt6lU90GZfr99fr+q2yzz+fKibkSujIAzGgFTZA1pRIFDykEJRKlmBSXP9devfb7it0rZJH8bwf//1v3e8H6r7rv9Qtt3933/9f9zq0+24tPUtHPaCSHu+2lF7R9t3fbPZcF+v6ttu3wxN19br94BiJS2K61V9Sz3teOB+X68fHj/H+o37/WGhfFx9gbZUvMtegwzJAiZS4DlpEM6xVAGzEPYI/RMP1Y/NlqtmRxteJLwZhtv/8h93vB+e8kkvVkqoF/nwSn0lTLZg9DGD8DICmqAg2ijBi2ikNd4HoqeEv/bbSwFHAV8LiJK0FlaAJqEBSRF4pxxwsoaYyUkvngLuBxru9hfIJ9R59zvFK9IZZ1iDpmgBnYoQlEugiw8pYhEk/BHvl6FJHz5V/+mGZfX2hzVfljzPPn8CV6euHbgd6nVdLyciumiRggeSEQFtMODRW8BQCplQnCWexZSv5tT/hlMUZTmiB+85AyaW4IMsQDY44aRShublVK/mlEL8C1DllQ8mZSCLCTAVDV5lATIW6Z2NyXs1sSNqhsqKas/pahH0nppnGemPhnPP8abrPhwsWhsZMwYLFFICRJPA22KBjJU+5CKEGkX6tkddHc9iMEdEq0HYzIBJJiDyGpiCTJG9DxEnoqcbzndbro4euSD8l4XLXmrEy146qTUltSxKBKAs4tgCHJBQDjw55cgYq7OYTQ59UbGBOnWqM7NYeInJMaSSDWDGBBGDBiuUokIxqKRmQfEiUH8q43mc2toUORRwyqTPrkA6OhBSSp+9dCK6I+ebbne75YHzd4uUTXlWY0qcZ6lq2pJIsQtJQ2LlAbUTQNIGENEnR1ZLJeSR6tfbbUe5evvNjrTpus2Wf+ibj8/kQ3FeR9KTlp6SZYWgS06AUjME9gy6UPAhKcc2TekyDVz1vL/bDi/g/XLDPOyf8ll1bsc0R8KAgZQQgMYioDEEMcUCTsSQpEKSQU+yj4cq00DLmcfDqWbn3Km+woldlhBtZDA5ppGJIeiYwWnMQqEljThbEeayPqntpb4ui1WuIMhMDpBHe0kig/ekpCkqW8yTkuh5vN5vJ9/iwGEvmDeM1SRG2/eaMiBnAyGjAW9JCUWUNdtZIe1lQspLvUUUr2QYLZpsALQmAhXjgEvBLJ2UbtpUxrmt5fvqtu/yXbqkUsbh9zwxj5XiM4cYD4OGdYBaGYhJIYRYRPRCOyXFSS2/hHh/fOCcdvNzavmooXQ6FuYILIMZ/ZlGDS0EzTkF46iINHvZ7tWXbUb5zGunoetVTWkYXXVdaLvnVb3nYWjazeFT/pPT3Rj/5z5zX6/rj3KM8fHz94dRpl6NG7ScxmWHj7760fqh3lEzsr1/ODwGF+vtsGxVN23mP+u1eLy+flxNu9VcpIWXzEmo1fGT+SFudvPJM2T2GDOddP4Q0/PORXoF05NGORdroVfNBnuy75K+zx9ii1IdL2Ip1NyzeOGU00N845gnZbxIN9l7Pt7cALIYbepyc+FO+/H8Bbz4B8eSlLM2O7PH4+M/0TV5hiISAAA=

metadata_json:
  {"categories":["automation","eCommerce","AI image generation","integration","image processing"],"complexity":"complex","use_cases":["Generate virtual try-on images for clothing product catalogs","Automate updating WooCommerce product galleries with generated images","Bulk/scheduled processing of new product entries from Google Sheets","Reduce or replace photoshoots for apparel eCommerce","Archive generated assets to cloud storage (Google Drive)"],"estimated_setup_minutes":45,"required_services":["AI image-generation API (external)","Google Sheets","Google Drive","WooCommerce (REST API credentials)","n8n (hosted or self-hosted with scheduler/webhooks enabled)"],"key_features":["Automated virtual try-on image generation using AI","Google Sheets-driven input/output for product and image URLs","Downloads generated images and uploads them to Google Drive","Updates WooCommerce product image galleries with new images","Supports manual testing and scheduled automatic runs"],"target_audience":["eCommerce managers","Product/catalog managers","Growth/marketing teams for apparel brands"]}


name: Fetch Dynamic Prompts from GitHub and Auto-Populate n8n Expressions in Prompt
author_name: RealSimple Solutions
author_username: joeperes
categories: []
created_at: 2025-02-12T20:03:29.866Z
updated_at: 2025-02-12T20:03:29.866Z
url: https://n8n.io/workflows/2893
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who Is This For?

  This workflow is designed for AI engineers, automation specialists, and content creators who need a scalable system to dynamically manage prompts stored in GitHub. It eliminates manual updates, enforces required variable checks, and ensures that AI interactions always receive fully processed prompts.

  🚀 What Problem Does This Solve?

  Manually managing AI prompts can be inefficient and error-prone. This workflow:  
  ✅ Fetches dynamic prompts from GitHub  
  ✅ Auto-populates placeholders with values from the setVars node  
  ✅ Ensures all required variables are present before execution  
  ✅ Processes the formatted prompt through an AI agent

  🛠 How This Workflow Works

  This workflow consists of three key branches, ensuring smooth prompt retrieval, variable validation, and AI processing.

  1️⃣ Retrieve the Prompt from GitHub (HTTP Request → Extract from File → SetPrompt)

  The workflow starts manually or via an external trigger.
  It fetches a text-based prompt stored in a GitHub repository.
  The Extract from File Node retrieves the content from the GitHub file.
  The SetPrompt Node stores the prompt, making it accessible for processing.

  📌 Note:  
  The prompt must contain n8n expression format variables (e.g., {{ $json.company }}) so they can be dynamically replaced.

  2️⃣ Extract & Auto-Populate Variables (Check All Prompt Vars → Replace Variables)

  A Code Node scans the prompt for placeholders in the n8n expression format ({{ $json.variableName }}).
  The workflow compares required variables against the setVars node:
      ✅ If all variables are present, it proceeds to variable replacement.
      ❌ If any variables are missing, the workflow stops and returns an error listing them.
  The Replace Variables Node replaces all placeholders with values from setVars.

  📌 Example of a properly formatted GitHub prompt:

  Hello {{ $json.company }}, your product {{ $json.features }} launches on {{ $json.launch_date }}.

  This ensures seamless replacement when processed in n8n.

  3️⃣ AI Processing & Output (AI Agent → Prompt Output)

  The Set Completed Prompt Node stores the final, processed prompt.
  The AI Agent Node (Ollama Chat Model) processes the prompt.
  The Prompt Output Node returns the fully formatted response.

  📌 Optional: Modify this to use OpenAI, Claude, or other AI models.

  ⚠️ Error Handling: Missing Variables

  If a required variable is missing, the workflow stops execution and provides an error message:

  ⚠️ Missing Required Variables: ["launch_date"]

  This ensures no incomplete prompts are sent to AI agents.

  ✅ Example Use Case

  📜 GitHub Prompt File (Using n8n Expressions)

  Hello {{ $json.company }}, your product {{ $json.features }} launches on {{ $json.launch_date }}.

  🔹 Variables in setVars Node

  {
    "company": "PropTechPro",
    "features": "AI-powered Property Management",
    "launch_date": "March 15, 2025"
  }

  ✅ Successful Output

  Hello PropTechPro, your product AI-powered Property Management launches on March 15, 2025.

  🚨 Error Output (If Missing launch_date)

  ⚠️ Missing Required Variables: ["launch_date"]

  🔧 Setup Instructions

  1️⃣ Connect Your GitHub Repository

  Store your prompt in a public or private GitHub repo.
  The workflow will fetch the raw file using the GitHub API.

  2️⃣ Configure the SetVars Node

  Define the required variables in the SetVars Node.
  Make sure the variable names match those used in the prompt.

  3️⃣ Test & Run

  Click Test Workflow to execute.
  If variables are missing, it will show an error.
  If everything is correct, it will output the fully formatted prompt.

  ⚡ How to Customize This Workflow

  💡 Need CRM or Database Integration?

  Connect the setVars node to an Airtable, Google Sheets, or HubSpot API to pull variables dynamically.

  💡 Want to Modify the AI Model?

  Replace the Ollama Chat Model with OpenAI, Claude, or a custom LLM endpoint.

  📌 Why Use This Workflow?

  ✅ No Manual Updates Required – Fetches prompts dynamically from GitHub.  
  ✅ Prevents Broken Prompts – Ensures required variables exist before execution.  
  ✅ Works for Any Use Case – Handles AI chat prompts, marketing messages, and chatbot scripts.  
  ✅ Compatible with All n8n Deployments – Works on Cloud, Self-Hosted, and Desktop versions.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.github","n8n-nodes-base.extractFromFile","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.stopAndError","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatOllama"]

workflow_json_compressed:
  [encoded data, 4124 characters]

metadata_json:
  {"categories":["automation","integration","AI/ML","content management"],"complexity":"medium","use_cases":["Dynamic prompt management from GitHub","Templated AI prompt generation and processing","Preventing incomplete prompts via variable validation","Automating content generation for marketing/chatbots"],"estimated_setup_minutes":15,"required_services":["GitHub (repo access)","Ollama Chat Model (configurable)","Optional: OpenAI/Anthropic/Claude or custom LLM endpoint","Optional: Airtable, Google Sheets, HubSpot (for dynamic vars)"],"key_features":["Fetches prompt files from GitHub","Scans and auto-detects n8n expression placeholders","Validates presence of required variables and stops on missing ones","Replaces placeholders with setVars values","Processes final prompt with an AI agent (pluggable model)"],"target_audience":["AI engineers","Automation specialists","Content creators/marketers who use prompts for LLMs」「Developers implementing n8n workflows"]}


name: Upload to Instagram, Tiktok & Youtube from Google Drive
author_name: Juan Carlos Cavero Gracia
author_username: carlosgracia
categories: []
created_at: 2025-02-12T20:39:02.442Z
updated_at: 2025-02-12T20:39:02.442Z
url: https://n8n.io/workflows/2894
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Description
  This automation template is designed for content creators, digital marketers, and social media managers looking to simplify their video posting workflow. It automates the process of generating engaging video descriptions and uploading content to both Instagram and TikTok, making your social media management more efficient and error-free.

  Who Is This For?
  Content Creators & Influencers:** Streamline your video uploads and focus more on creating content.
  Digital Marketers:** Ensure consistent posting across multiple platforms with minimal manual intervention.
  Social Media Managers:** Automate repetitive tasks and maintain a steady online presence.

  What Problem Does This Workflow Solve?
  Manually creating descriptions and uploading videos to different platforms can be time-consuming and error-prone. This workflow addresses these challenges by:
  Automating Video Uploads:** Monitors a designated Google Drive folder for new videos.
  Generating Descriptions:** Uses OpenAI to transcribe video audio and generate engaging, customized social media descriptions.
  Ensuring Multi-Platform Consistency:** Simultaneously posts your video with the generated description to Instagram and TikTok.
  Error Notifications:** Optional Telegram integration sends alerts in case of issues, ensuring smooth operations.

  How It Works
  Video Upload: Place your video in the designated Google Drive folder.
  Description Generation: The automation triggers OpenAI to transcribe your video’s audio and generate a captivating description.
  Content Distribution: Automatically uploads the video and description to both Instagram and TikTok.
  Error Handling: Sends Telegram notifications if any issues arise during the process.

  Setup
  Generate an API token at upload-post.com and configure it in both the Upload to TikTok and Upload to Instagram nodes.
  Google Cloud Project: Create a project in Google Cloud Platform, enable the Google Drive API, and generate the necessary OAuth credentials to connect to your Google Drive account.
  Set up your Google Drive folder in the Google Drive Trigger node.
  Customize the OpenAI prompt in the Generate Social Description node to match your brand’s tone.
  (Optional) Configure Telegram credentials for error notifications.

  Requirements
  Accounts:** upload-post.com, Google Drive, and (optionally) Telegram.
  API Keys & Credentials:** Upload-post.com API token, OpenAI API key, and (optional) Telegram bot token.
  Google Cloud:** A project with the Google Drive API enabled and valid OAuth credentials.

  Use this template to enhance your productivity, maintain consistency across your social media channels, and engage your audience with high-quality video content.

nodes_used:
  ["n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.googleDrive","n8n-nodes-base.errorTrigger","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.writeBinaryFile","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.readBinaryFile","n8n-nodes-base.readBinaryFile","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.readBinaryFile","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  [encoded data, 4136 characters]

metadata_json:
  {"categories":["automation","integration","social media management"],"complexity":"medium","use_cases":["Automate multi-platform video uploads","Generate transcriptions and social descriptions","Maintain consistent cross-platform posting","Notify on upload or workflow errors"],"estimated_setup_minutes":45,"required_services":["Google Drive (Google Cloud Project & Drive API)","upload-post.com (API token)","OpenAI (API key)","Instagram (via upload-post.com)","TikTok (via upload-post.com)","Telegram (optional, bot token for notifications)"],"key_features":["Monitors a Google Drive folder for new videos","Uses OpenAI to transcribe audio and craft social descriptions","Uploads videos and descriptions to Instagram and TikTok","Optional Telegram error/alert notifications","Configurable OpenAI prompt for brand tone"],"target_audience":["Content creators","Social media managers","Digital marketers and agencies"]}


name: N8N for Beginners: Looping over Items
author_name: Dominik Baranowski
author_username: dom
categories: []
created_at: 2025-02-13T00:40:12.140Z
updated_at: 2025-02-13T00:40:12.140Z
url: https://n8n.io/workflows/2896
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  N8N for Beginners: Looping Over Items

  Description

  This workflow is designed for n8n beginners to understand how n8n handles looping (iteration) over multiple items. It highlights two key behaviors:

  Built-In Looping:** By default, most n8n nodes iterate over each item in an input array.
  Explicit Looping:* The *Loop Over Items* node allows controlled iteration, enabling *custom batch processing** and multi-step workflows.

  This workflow demonstrates the difference between processing an unsplit array of strings (single item) vs. a split array (multiple items).

  Setup

  1. Input Data

  To begin, paste the following JSON into the Manual Trigger node:

  {
    "urls": [
      "https://www.reddit.com",
      "https://www.n8n.io/",
      "https://n8n.io/",
      "https://supabase.com/",
      "https://duckduckgo.com/"
    ]
  }

  📌 Steps to Paste Data:
  Double-click** the "Manual Trigger" node.
  Click "Edit Output" (top-right corner).
  Paste the JSON and Save.
  The node turns purple, indicating that test data is pinned.

  1. Click "Test Workflow" button at the bottom of the canvas

  Explanation of the n8n Nodes in the Workflow

  | Node Name | Purpose | Documentation Link |
  |-----------|---------|--------------------|
  | Manual Trigger | Starts the workflow manually and sends test data | Docs |
  | Split Out | Converts an array of strings into separate JSON objects | Docs |
  | Loop Over Items (Loop Over Items 1) | Demonstrates how an unsplit array is treated as one item | Docs |
  | Loop Over Items (Loop Over Items 2) | Iterates over each item separately | Docs |
  | Wait | Introduces a delay per iteration (set to 1 second) | Docs |
  | Code | Adds a constant parameter (param1) to each item | Docs |
  | NoOp (Result Nodes) | Displays output for inspection | Docs |

  Execution Details

  1. How the Workflow Runs

  Manual Trigger starts execution** with the pasted JSON data.
  The workflow follows two paths:
    Unsplit Array Path → Loop Over Items 1  
       Processes the entire array as a single item.
       Result1 & Result5: Show that the array was not split.
    
    Split Array Path → Split Out → Loop Over Items 2
       Splits the array into separate objects.
       Result2, Result3, Result4: Show that each item is processed individually.
       A Wait node (1 sec delay) demonstrates controlled execution.
       Code nodes modify the JSON, adding a parameter (param1).

  2. What You Will See

  | Node | Expected Output |
  |------|---------------|
  | Result1 & Result5 | The entire array is processed as one item. |
  | Result2, Result3, Result4 | The array is split and processed as individual items. |
  | Wait Node | Adds a 1-second delay per item in Loop Over Items 2. |

  Use Cases

  This workflow is useful for:

  ✅ API Data Processing: Loop through API responses containing arrays.  
  ✅ Web Scraping: Process multiple URLs individually.  
  ✅ Task Automation: Execute a sequence of actions per item.  
  ✅ Workflow Optimization: Control execution order, delays, and dependencies.

  Notes

  Sticky notes are included in the workflow for easy reference.
  The Wait node is optional—remove it for faster execution.
  This template is structured for beginners but serves as a building block for more advanced automations.

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

workflow_json_compressed:
  [encoded data, 4640 characters]

metadata_json:
  {"categories":["automation","integration","education","data processing"],"complexity":"simple","use_cases":["Learning n8n iteration and looping behavior","Processing API responses containing arrays","Web scraping / processing multiple URLs","Batch task automation with delays","Testing and debugging item-level workflows"],"estimated_setup_minutes":5,"required_services":["None — uses Manual Trigger and built-in nodes (optional: public URLs for testing)"],"key_features":["Demonstrates built-in per-item iteration of nodes","Shows explicit iteration using Loop Over Items node","Splits arrays into individual items with Split Out/Split In Batches","Adds delays per iteration with Wait node","Modifies items using Code node (adds param1) for each iteration\",\"Uses NoOp/result nodes for inspection and debugging\",\"Includes sticky notes for guidance"],"target_audience":["n8n beginners","Developers and automation engineers","Data analysts testing item-level workflows\",\"Technical marketers and non-developers learning automation"]}


name: Use OpenRouter in n8n versions <1.78
author_name: Daniel Nolde
author_username: dnolde
categories: []
created_at: 2025-02-13T12:32:31.015Z
updated_at: 2025-02-13T12:32:31.015Z
url: https://n8n.io/workflows/2897
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  What it is:

  In version 1.78, n8n introduced a dedicated node to use the OpenRouter service, which lets you to use a lot of different LLM models and providers and change models on the fly in an agentic workflow.

  For prior n8n versions, there's a workaround to make OpenRouter accessible, by using the OpenAI node with a OpenRouter-specific BaseURL.

  This trivial workflow demonstrates this for version before 1.78, so that you can use different LLM model dynamically with the available n8n nodes for OpenAI LLM and OpenAI credentials.

  What you can do:

  Use any of the OpenRouter models
  Have the model even dynamically configured or changing (by some external config, some rule, or some specific chat message)

  Setup steps:

  Import the workflow
  Ensure you have registered and account, purchased some credits and created and API key for OpenRouter.ai
  Configure the "OpenRouter" credentials with your own credentials, using an OpenAI  type credential, but making sure in the credential's config form its "Base URL" is set to https://openrouter.ai/api/v1 so OpenRouter is used instead of OpenAI. 
  Open the "Settings" node and change the model value to any valid model id from the OpenRouter models list or even have the model property set dynamically

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

workflow_json_compressed:
  H4sIAAAAAAAAE51WbW/cNhL+KwLbT4XGJkWKFAUccG7Qu0tqt2mTpr1LjAMpDnd1lqitRDlxjf3vBXfX3vVr0vuy0FKjmXlmnnk416R1pCbvlj/wF7/Jn15/e/GbUqv/kJz0GA2pr0kbpmhCgy+Tna6sp04a9My5yiqjykLpihVMCOotU8x6JStpdakK5Z1kygsuyoJr7ozhJCcR+1VnIr4Y0U1vMM6rF0O/6jCiI3UcZ1znJJgeSU1+mTAz4So7PT2Ds8Fhl122JvtxheHnYY44Jm9mMZH6/fUWxjz3l4t//uvfJco/vjtV78itq9ez7dppiS57u4tPctKMaCK6k0hqUtCiBFoAo28Zq1lVM3qkC54qMa/c583W5zkJg8ODbKwqVMFcAbZBBaKsHFTeM2ga7aWjWhvj9xm+wRjbsJgSqKtVOglVgI1LsGbCowkjyclqmNrYDoHU70EUNAcp6HlOVmY0PUYcp9SzYZVM0uM6J2aa2kXoMcTNuzt/b1LlTnktlYJGlRwEKyRYzg04VaFXlCnFDlLtUy/2eU5xbMOC5OTSdHM6cIirCfHi+OYBRgaunWLbddB1pjdQWbLOb4JT5iuJDRSSehBOajDWabAOdVUgR2rMPvhqHPpVfCb6366vs6//Nw3hqFma+DKs5pit1/twRntZsoqBpoUDUfkSdNkgMF4WjmtmaCn34SacpnYIL90XRby13kQ8X6+3H73Dcdr0jB+JfR6i1NxJASiVAaEpgm6sAM1l0whZKG7oAT1i21xcZT8MG+Y+wZCNzc7kDlEkzUE9QpSPrYtLUrOK5mSJ7WIZSS0ozUkzhIghMf6rr7Iban4Ib1bYtP4qi0vMtiy4j5Dt24qGW6oNUGMVCKQerBUeuKuoclQVTuCj+NhfB1iIJwA2QzeMpOb5DVT+PNSf55Dk5kP4ZWrD4kBrsjhkvbnYwc783HVXWTME3y7m0dgOn6kE004o31gwnisQzhiohHfAveDeN1ZTfzBdvy4xZIm6WY/TZBaYjdhge4kHFPx7qMLxvjidCYtmadot5d+O7WKxUcfDEkl5KxYf0S6H4WKj6Ir5UqIQICjzIIQ1YEvhoNFCYVFxR7kgz+jLA9RHe9y+NEpzXwDDwoPgQoOhqgRtNVOs0KpQao/75GV2skiN+DxKs7M7xJc4/KgYRvwU7wzpVkHShOZ3lXL74u02uEPfhke6eqRu8TlrnVZCQmOKEgSTHDRrSjAaObfey8KIPb4XqaVn2A/j1RdA7DeG387e4/hrG9zw8R7eBFfIh3B3EvQ9Xj2tTPle1nZom3mKQ58+egiY3wJGz2XVoAFmeQWiLC1YIQ2UjqJXhjdo+R7w6elZdnb3qngSbten8qRxO2nvzzZ9AulWgA5BbmfzfmPXm5veYYit6Xb8TXFOVu1mwUnIpHz13U+vyotX2LHXOh6gOFg3niU7LyRlqCRQrTQIqSlUrvHAhHbOesl0xR+Vu+L/1HNePKnnkh6IXNLGuyK33aXwk0l71/QhfAjfZKkkpj0eOPRtaNPJYhgWHR4vMB1AcUTBd2ZaAqUsvf6iSz4Z9u0UR9OZ9nj3BFNvug4KYSEtl+PcRChKymo/IqYvfv+I4Tj9QJxHO6QE/zGMWT+MmE2I2TLG1VQfH6ecx01rjpL3hGp6RIbPc2Ka2F4iqb3pJkzs3+1a9TXBT9jMqbA/jg5HUpNLlnxcbr/faKR0tDG+dOAkShC01KALxkAJYakXtilomvNmCAGbG9rtF7pEVdOmxr2/3uyIj4rdxiQnbXD4idR0fX6+zg9GKG1u7X/TwMxmgbuzZx0+ML/v/FCQtu773Z/P+e1vVOyuw2dursdq8HDjfaQG6/WfoG9MaaMMAAA=

metadata_json:
  {"categories":["integration","AI/chatbot","automation"],"complexity":"simple","use_cases":["Enable OpenRouter models on n8n versions before 1.78","Dynamically switch LLM models in agentic workflows","Prototype agentic LLM workflows using existing OpenAI node","Maintain compatibility when upgrading n8n is not possible"],"estimated_setup_minutes":10,"required_services":["OpenRouter (https://openrouter.ai) with API key and credits","n8n instance (pre-1.78)"],"key_features":["Uses OpenAI node with OpenRouter-specific BaseURL to call OpenRouter models","Dynamic model selection (model can be set or changed at runtime)","Agentic workflow support with memory buffer and chat nodes","Simple compatibility workaround for older n8n releases"],"target_audience":["n8n users","Developers/automation engineers","AI/ML prototypers and integrators"]}


name: AI Agent: Find the Right LinkedIn Profiles in Seconds
author_name: Badr
author_username: b4dr
categories: []
created_at: 2025-02-13T14:50:33.590Z
updated_at: 2025-02-13T14:50:33.590Z
url: https://n8n.io/workflows/2898
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  Automate LinkedIn Prospecting with AI Agent and Get Results Straight to Google Sheets!

  A practical AI-powered workflow that helps you find relevant LinkedIn profiles using natural language queries and saves the results automatically to Google Sheets.

  🎯 What It Actually Does

  Accepts natural language requests (e.g., "Find marketing managers in Paris")
  Uses AI to extract search parameters:
    Job titles
    Industry
    Location
  Searches for matching LinkedIn profiles
  Saves profile URLs and titles to Google Sheets

  🛠️ Technical Components

  AI Query Processor
     Converts natural language to structured search parameters
     Handles various input formats and languages
     Maintains context for accurate parameter extraction

  Search Engine Integration
     Uses Google Custom Search API
     Handles pagination for multiple results
     Filters for actual LinkedIn profile URLs

  Data Storage
     Automatically saves to Google Sheets
     Stores profile titles and URLs
     Easy to access and export

  📋 Prerequisites

  OpenAI API key
  Google Custom Search API credentials
  Google Sheets access

  💡 Adaptation Possibilities

  This template can be modified to scrape other websites by:
  Changing the search domain in the HTTP Request node
  Adjusting the URL filter in the Code node
  Modifying the column structure in Google Sheets
  Updating the AI prompt for different parameter extraction

  Example adaptations:
  Twitter profile finder
  GitHub repository search
  Company website finder
  Professional blog discovery

  🔧 Setup Instructions

  API Setup
     Configure Google Custom Search API
     Set up OpenAI API
     Prepare Google Sheets

  Workflow Configuration
     Import both workflows
     Connect your API credentials
     Set up your Google Sheet
     Test with a sample query

  📝 Usage Example

  Input: "Find software developers in London working in fintech"
  Output: A Google Sheet containing:
  LinkedIn profile URLs of software developers
  Profile titles/headlines
  Ready for your review and outreach

  #AIAgent #WebScraping #Automation #n8n #Workflow #LinkedInProspecting

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE5WXW2/qRhDHv4rlZ4bu/cJT06itIvVc1Bz1PERRtZdZsIJtasy5CPHdKwMJDjGJ8wZoLr/57+zssM1LbF0+2+ZFtW5dFfAm5rNcaKN8IomaQNCgZYErGlE6Kk1wPgn0xHvubaCUE0s9kSIlppBL6wiz+SRvsVwtXYvXDcb1Lbab1XVdrpbYYsxnbbPB3SSv6ojrfHa3zYsuK1chGMolcEUdCJ84WIcRjJSBp6SlZjqf5JUrMZ/lXxdYZWHh2qzE9drNMWswYPENY5f956qz+bUy1S+VqWCfCZaumoeFK6pp5/elKeZzbPJJvqrXRVvUVT67M4JMyP0k/45+UdcPezUISh1Z0qBUJCA8JvBUJ0jKEB4Nt9p3Fa9c40pssVnns+3uwPAPNut9YDqlu8mxzmiTdag5RC8FCOITeC0j8BR5SNx59O5U59VNdjXHqh1RlTva9eqhRB0KeoNOP9ERo0NwhgGRgoNINoBD40FGqYXhnBFKTnSfVlhd3WTX3Tl8qCMuR2Auy85871k8p7WKTBh7G/cJ1qETkUsLInkEoQgFo7mA5JAp4rnHpHotU1Sx/p79tkkJm+wDlnXzcwRvuTc8eB1CnGlMxTjsKX8C51E46xUFIqOB7r6BVdJACkQHI4KmfZWv3XKZVabKvtbNQ1rW37MvdT1G6raul48+Z9D8/dBRe8ZoZEAc1SBMZGBS4EAcOhej0kmyE/TvPzBsWuwxP124I/aJ2Ls1TvHg8Gg/eD+lIhOp3tMhMliqU4QUjAHBlAIrUwJlhbDBoQ/RnbfzCGHrge7VZhxb77IZTDQ4bUEjVSCEcWBM8OAtCTRKFaUTJ7pbbLNbdE1YZJ+7gfdxU/ouxyVB13g+DbpOHYHIp+LUqYnY5KUCF1g3lYkGj06BljTRaLwmVvYQV8viGeQrdJ3pp805Ih+p4gnQSENCIkCVSiAY9eCIkUCZSqi4oeh7z8afdT1fYna9Wbd1+Qh69fkm+xv/2+C6vYi7aNvVyaZPrMgoYjFlT8zJeecEOjBaaBDdDLAWE3CmUelAdaL8xPxHsWyxyf4qqgeMN1X2ualTsXxF2lBHPIM0bBQk641WyV3UGmxyEYTXBiy1BIwi3iYvWCQ9xFv3DbO2zo7y3i4Q28t8873Vk1GPk5FxHSqmsjeWTIiIFHzEBEIjB+8SBU0j9cFzJoTvkbZFePiZfaxbvNyae5ujSY8OaIcH3LyjPVmkNmiXIBCRQFBpwTIngTrJYjQembaDdPTdeKzTjryDTTGhk3cRokAKglICxisFSANhVCvNpBpkY+9mE4ZMYIxu95M81FWFoXPsTB6H8mybl67oYt1t96vjmIm495jkRRXxRz4ju/v73WRgaZltc1f82433jZvj8bdenpdL2Avz8yQDk3CogvHzaLCUwZXmUE15/PJWGeXjHvQ88oWd4xC73X98K3J7WFLOdLlwZIPH+8prMijHxZ1jKPr5Yz8Y8eLsHeR9fQoOn+Dl/zFDKV4KPRj1zbYaiv32OzOQa7f7H1s49a1FDgAA

metadata_json:
  {"categories":["automation","lead generation","web scraping","data enrichment","AI"],"complexity":"medium","use_cases":["LinkedIn prospecting and list building","Recruiting candidate discovery","Sales outreach and lead generation","Market research and competitor discovery","Building contact lists for outreach campaigns"],"estimated_setup_minutes":30,"required_services":["OpenAI API (or other LLM)","Google Custom Search API","Google Sheets (Google Drive account)","n8n instance with internet access"],"key_features":["Natural-language query parsing to structured search parameters","AI-driven extraction of job titles, industry, location","Google Custom Search integration with pagination","Filtering for LinkedIn profile URLs","Automatic saving of profile URLs and titles to Google Sheets"],"target_audience":["sales reps and SDRs","recruiters and talent sourcers","growth marketers and demand gen teams`,`automation engineers and ops specialists`"]}


name: Unique QRcode coupon assignment and validation for Lead Generation with SuiteCRM
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-02-13T15:06:26.229Z
updated_at: 2025-02-13T15:06:26.229Z
url: https://n8n.io/workflows/2899
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  This workflow is designed to manage the assignment and validation of unique QR code coupons within a lead generation system with SuiteCRM.

  How it Works

  This workflow automates the process of assigning unique QR code coupons to leads generated through a form submission, ensuring no duplicates are created, and validating the usage of coupons. Here's how it operates:

  Webhook Trigger:
     The workflow starts with a Webhook node that listens for incoming requests containing QR code data.
     A Set coupon node extracts the QR code value from the request parameters.

  Validation of QR Code:
     An If node checks if the QR code exists in the incoming data. If it does, the process proceeds; otherwise, a "No coupon" response is sent back.

  Coupon Lookup:
     The Get Lead node queries a Google Sheets document to check if the QR code corresponds to an existing lead.
     A subsequent Not used? node verifies whether the coupon has already been used by checking the "USED COUPON?" field in the sheet.

  Lead Duplication Check:
     When a new lead submits the form (On form submission), the Duplicate Lead? node checks if the email already exists in the system to prevent duplicates.

  Coupon Assignment:
     If the lead is not a duplicate, the Get Coupon node retrieves an available unassigned coupon from the Google Sheets document.
     The Token SuiteCRM node generates an access token for SuiteCRM, and the Create Lead SuiteCRM node creates a new lead entry in SuiteCRM, associating it with the assigned coupon.

  QR Code Generation and Email Notification:
     The Get QR node generates a QR code image URL for the assigned coupon.
     The Send Email node sends an email to the lead with the QR code attached.

  Response Handling:
     Depending on the validation results, the workflow responds with appropriate messages:
       "Coupon OK" if the coupon is valid and unused.
       "Coupon KO" if the coupon has already been used.
       "Coupon not valid" if the QR code does not exist.

  Set Up Steps

  To replicate this workflow in your own n8n environment, follow these steps:

  Configuration:
     Set up an n8n instance either locally or via cloud services.
     Import the provided JSON configuration file into your workspace.
     Configure all required credentials, such as:
       Google Sheets OAuth2 API for accessing the spreadsheet.
       SuiteCRM API credentials (e.g., SUITECRMURL, CLIENTID, CLIENTSECRET).
       SMTP credentials for sending emails.

  Customization:
     Adjust the Webhook URL to match your deployment environment.
     Modify the Google Sheets document ID and sheet name in nodes like Duplicate Lead?, Get Coupon, Update Sheet, and Update coupon used.
     Update the SuiteCRM API endpoint and credentials in nodes like Token SuiteCRM and Create Lead SuiteCRM.
     Customize the email template in the Send Email node to match your branding and messaging requirements.
     Ensure the QR code generation URL in the Get QR node points to a valid QR code generator service.

  By following these steps, you can effectively implement and customize this workflow to manage lead generation and coupon assignments in your organization. 

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

workflow_json_compressed:
  [encoded data, 6288 characters]

metadata_json:
  {"categories":["automation","integration","CRM","lead generation","data processing"],"complexity":"medium","use_cases":["Assign unique QR-code coupons to new leads","Validate coupon usage and prevent reuse","Prevent duplicate leads in CRM","Create leads in SuiteCRM from form submissions","Send QR-code coupon emails to leads"],"estimated_setup_minutes":45,"required_services":["Google Sheets (OAuth2)","SuiteCRM API (client ID/secret)","SMTP/email provider","QR code generator service (external URL)","n8n webhook endpoint"],"key_features":["Webhook-triggered form processing","Lookup and update coupons in Google Sheets","Duplicate lead detection by email","Generate access token and create leads in SuiteCRM","Generate QR-code image URL for coupon codes','Send email with QR code attachment or link','Respond to webhook with coupon validation result"],"target_audience":["marketers","growth teams","sales/CRM admins implementing coupons/promotions','automation engineers/developers integrating CRM and sheets"]}


name: Convert Notion to Markdown and Back to Notion
author_name: Anton Vanhoucke
author_username: antonvh
categories: []
created_at: 2025-02-13T19:19:23.284Z
updated_at: 2025-02-13T19:19:23.284Z
url: https://n8n.io/workflows/2901
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  This workflow converts Notion pages to markdown, and then converts that markdown back to Notion blocks. It will triple the content of the last updated page it finds. This is useless by itself, but you can copy-paste from this workflow to create your own.

  Prerequisites
  A notion account with some pages or databases

  Setup instructions
  Create a notion credential and share some pages as described here: https://docs.n8n.io/integrations/builtin/credentials/notion/

  How it works
  The HTTP Request gets notion child blocks from a page, because the default n8n block only gets plain text and no links.
  The first code block converts it to markdown.
  The second code block converts it back to Notion blocks
  The last HTTP block appends everything to the original Notion page, essentially duplicating it for the purpose of demoing the script.

  I hope in the future we get official n8n blocks that extract markdown, or use markdown to write to Notion. There is community block that also does this, but this template is easier: you can simply copy-paste the blocks from this workflow.

nodes_used:
  ["n8n-nodes-base.notionTrigger","n8n-nodes-base.notion","n8n-nodes-base.code","n8n-nodes-base.splitOut","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest"]

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

metadata_json:
  {"categories":["integration","data processing","content management"],"complexity":"medium","use_cases":["Export Notion pages to Markdown","Import/convert Markdown back into Notion blocks","Content migration or transformation between Notion and Markdown","Learning/demo template for building custom Notion workflows","Testing or debugging Notion block extraction and insertion"],"estimated_setup_minutes":15,"required_services":["Notion account / Notion API","n8n instance (self-hosted or cloud)"],"key_features":["Fetches Notion child blocks via HTTP to preserve links and structure","Converts Notion blocks to Markdown using a code node","Converts Markdown back into Notion blocks using a code node","Appends converted content back to the original Notion page (demo duplication)","Provides copy-pastable blocks as a template for custom workflows"],"target_audience":["Developers","Automation engineers","Power users of Notion looking to automate content workflows"]}


name: Youtube Outlier Detector (Find trending content based on your competitors)
author_name: Leonardo Grigorio
author_username: leonardogrig
categories: []
created_at: 2025-02-14T01:13:30.607Z
updated_at: 2025-02-14T01:13:30.607Z
url: https://n8n.io/workflows/2903
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:31
description:
  Video explanation

  This n8n workflow helps you identify trending videos within your niche by detecting outlier videos that significantly outperform a channel's average views. It automates the process of monitoring competitor channels, saving time and streamlining content research.

  Included in the Workflow

  Automated Competitor Video Tracking
  Monitors videos from specified competitor channels, fetching data directly from the YouTube API.

  Outlier Detection Based on Channel Averages
  Compares each video’s performance against the channel’s historical average to identify significant spikes in viewership.

  Historical Video Data Management
  Stores video statistics in a PostgreSQL database, allowing the workflow to only fetch new videos and optimize API usage.

  Short Video Filtering
  Automatically removes short videos based on duration thresholds.

  Flexible Video Retrieval
  Fetches up to 3 months of historical data on the first run and only new videos on subsequent runs.

  PostgreSQL Database Integration
  Includes SQL queries for database setup, video insertion, and performance analysis.

  Configurable Outlier Threshold
  Focuses on videos published within the last two weeks with view counts at least twice the channel's average.

  Data Output for Analysis
  Outputs best-performing videos along with their engagement metrics, making it easier to identify trending topics.

  Requirements

  n8n installed on your machine or server

  A valid YouTube Data API key

  Access to a PostgreSQL database

  This workflow is intended for educational and research purposes, helping content creators gain insights into what topics resonate with audiences without manual daily monitoring.

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

workflow_json_compressed:
  [encoded data, 6108 characters]

metadata_json:
  {"categories":["automation","integration","data processing","social media analytics"],"complexity":"medium","use_cases":["Competitor video monitoring","Trending content discovery","Content ideation and research","Performance anomaly detection","Automated reporting and alerts"],"estimated_setup_minutes":45,"required_services":["n8n (self-hosted or cloud)","YouTube Data API (API key)","PostgreSQL database (accessible to n8n)"],"key_features":["Automated competitor channel video tracking","Outlier detection by comparing video views to channel averages","Stores historical video stats in PostgreSQL to avoid refetching","Filters out short videos by duration threshold","Fetches up to 3 months of historical data on first run, then only new videos thereafter"],"target_audience":["Content creators and YouTubers","Social media managers and marketers","Growth hackers and channel strategists"]}


name: Arxiv Paper summarization with ChatGPT
author_name: Teddy
author_username: teddysbeach
categories: []
created_at: 2025-02-14T03:10:30.202Z
updated_at: 2025-02-14T03:10:30.202Z
url: https://n8n.io/workflows/2904
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  Webhook | Paper Summarization

  Who is this for?
  This workflow is designed for researchers, students, and professionals who frequently read academic papers and need concise summaries. It is useful for anyone who wants to quickly extract key information from research papers hosted on arXiv.

  What problem is this workflow solving?
  Academic papers are often lengthy and complex, making it time-consuming to extract essential insights. This workflow automates the process of retrieving, processing, and summarizing research papers, allowing users to focus on key findings without manually reading the entire paper.

  What this workflow does
  This workflow extracts the content of an arXiv research paper, processes its abstract and main sections, and generates a structured summary. It provides a well-organized output containing the Abstract Overview, Introduction, Results, and Conclusion, ensuring that users receive critical information in a concise format.

  Setup
  Ensure you have n8n installed and configured.
  Import this workflow into your n8n instance.
  Configure an external trigger using the Webhook node to accept paper IDs.
  Test the workflow by providing an arXiv paper ID.
  (Optional) Modify the summarization model or output format according to your preferences.

  How to customize this workflow to your needs
  Adjust the HTTPRequest node to fetch papers from other sources beyond arXiv.
  Modify the Summarization Chain node to refine the summary output.
  Enhance the Reorganize Paper Summary step by integrating additional language models.
  Add an email or Slack notification step to receive summaries directly.

  Workflow Steps
  Webhook receives a request with an arXiv paper ID.
  Send an HTTP request using "Request to Paper Page" to fetch the HTML content of the paper.
  Extract the abstract and sections using "Extract Contents".
  Split out all sections using "Split out All Sections" to process individual paragraphs.
  Clean up text using "Remove useless links" to remove unnecessary elements.
  Summarize extracted content using "Summarization Chain".
  Aggregate summarized content using "Aggregate summarized content".
  Reorganize the paper summary into structured sections using "Reorganize Paper Summary".
  Extract key information using "Content Extractor" to classify data into Abstract Overview, Introduction, Results, and Conclusion.
  Respond to the webhook with the structured summary.

  Note: This workflow is designed for use with arXiv research papers but can be adapted to process papers from other sources.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chainSummarization","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.httpRequest","n8n-nodes-base.html","n8n-nodes-base.splitOut","n8n-nodes-base.set","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook"]

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

metadata_json:
  {"categories":["automation","data processing","document processing","integration","AI/ML"],"complexity":"medium","use_cases":["Generate concise summaries of arXiv research papers","Quick literature review / extract key findings","Automate alerting or ingestion of paper summaries","Convert long papers into structured abstracts for teams"],"estimated_setup_minutes":20,"required_services":["n8n instance (self-hosted or cloud)","arXiv (paper HTML access)","OpenAI API or compatible LLM (lmChatOpenAi nodes)","Publicly reachable webhook endpoint"],"key_features":["Trigger by webhook with arXiv ID","Fetch paper HTML and extract abstract/sections","Split and clean text (remove links/noise)","Summarize content with LLM chain","Aggregate and reorganize summaries into Abstract/Introduction/Results/Conclusion structure','Respond to webhook with structured JSON summary"],"target_audience":["Researchers","Graduate students","Academics and PhD candidates doing literature reviews\",\"Knowledge workers and R&D professionals"]}


name: Slack slash commands AI Chat Bot
author_name: InfoGrab
author_username: infograb
categories: []
created_at: 2025-02-14T04:46:59.611Z
updated_at: 2025-02-14T04:46:59.611Z
url: https://n8n.io/workflows/2905
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  This is a response chatbot in public channels through slash commands. I explain more in detail through the YouTube video, but it's only available in Korean.

  How it works?

  When you request the created slash command in Slack, the request comes to the webhook. Then, the Switch Node branches appropriately according to each slash command request. Here, a slash command called /ask is connected to the chatbot, and the chatbot generates answers to the questions asked. The final node responds to the channel.

  Set up steps

  Create a Slack app.
  Add chat:write permission in Slack OAuth&Permissions&gt;Scopes.
  Create a Command in Slack Slash Commands menu and enter the n8n Webhook node's URL.
  Complete creating the Slash Commands.
  Enter the created command in the Switch node.





  슬래시 커맨드를 통한 공개 채널에서의 응답 챗봇 입니다. 유튜브 영상에 더 자세하게 설명 드립니다.

  설명

  슬랙에 생성한 슬래시 커맨드를 슬랙에서 요청하면 웹훅에 요청이 들어옵니다. 이후 Switch Node에서 각 슬래시 커맨드의 요청에 따라 알맞게 분기합니다. 여기에서는 /ask​라는 슬래시 커맨드가 챗봇으로 연결되어 있고, 챗봇에서 질문한 내용의 답변을 생성합니다. 마지막 노드에서 채널로 응답을 합니다. 

  설정 방법

  Slack 앱을 만드세요.
  Slack OAuth&Permissions&gt;Scopes 에서 chat:write 권한을 추가하세요.
  Slack Slash Commands 메뉴에서 Command를 생성하고, n8n Webhook 노드의 url을 입력하세요.
  Slash Slash Commands 생성을 완료하세요.
  Switch 노드에 생성한 커맨드를 입력하세요.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.switch","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.slack","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["communication","chatbot","integration","automation"],"complexity":"medium","use_cases":["Public channel Q&A via Slack slash commands","Team knowledge assistant / internal helpdesk","Automated community or support responses","Routing different slash commands to different behaviors"],"estimated_setup_minutes":30,"required_services":["Slack (app with slash commands and chat:write scope)","n8n instance with a public webhook URL","AI provider compatible with lmChatOpenAi (e.g., OpenAI)"],"key_features":["Handles Slack slash command requests via webhook","Switch node routes different commands","AI-generated answers using lmChatOpenAi","Responds back into public Slack channels","Supports adding multiple slash commands"],"target_audience":["Developers","Slack administrators","Community managers and moderators\",\"Support/Product teams"]}


name: AI-Powered Crypto Analysis Using OpenRouter, Gemini, and SerpAPI
author_name: Udit Rawat
author_username: ailistmaster
categories: []
created_at: 2025-02-14T14:17:26.205Z
updated_at: 2025-02-14T14:17:26.205Z
url: https://n8n.io/workflows/2906
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  This n8n automation is designed to analyze cryptocurrency trends by extracting, processing, and interpreting candlestick charts using AI-powered agents. The workflow enhances technical analysis by integrating real-time market data, ensuring traders receive accurate and actionable insights.

  Workflow Breakdown:

  🔹 1. Chat Node – Provide Crypto Information
  Users enter a crypto symbol in the required format (EXCHANGE:SYMBOL), such as BINANCE:BTCUSDT. This ensures the workflow retrieves the correct market data.

  🔹 Retrieve Daily Candlestick Chart
  Once the input is received, the workflow fetches the full-day candlestick chart for the selected crypto, providing a macro-level market trend.

  🔹 AI Agent – Analyze Daily Chart
  The first AI agent, powered by Google Gemini 2.0 Flash via OpenRouter, analyzes the daily candlestick pattern to detect trends and potential market signals.

  🔹 Fetch 5-Minute Candlestick Chart
  To refine the analysis, the workflow retrieves a 5-minute interval candlestick chart, allowing for real-time market movement evaluation.

  🔹 AI Agent – Advanced Candlestick Analysis
  This AI agent combines the 5-minute chart with the daily analysis to provide an in-depth market prediction. Here’s where the real magic happens—AI interprets short-term trends in the context of long-term movements.

  🔹 Shared Windows Buffer – Store Intermediate Results
  The Windows Buffer temporarily stores analysis results, ensuring seamless data flow between AI agents for a more structured interpretation.

  🔹 Serp API – Retrieve Crypto News
  To add fundamental analysis, the Serp API tool fetches the latest crypto-related news from the web, providing additional market context.

  🔹 Chat Window – Deliver Final Insights
  Once all data points are processed, the final market analysis is displayed in the chat window, combining technical and fundamental analysis for a more comprehensive trading strategy.

  Use Case:

  This automation simplifies crypto market analysis by integrating AI-driven technical and fundamental insights. It’s ideal for:

  ✅ Traders looking for automated market insights
  ✅ Analysts seeking structured candlestick interpretations
  ✅ Developers wanting to integrate AI-powered trading analysis into applications

  By automating candlestick chart analysis, this workflow enhances decision-making and reduces manual effort, making it a valuable tool for anyone involved in cryptocurrency trading.

  Setup Instructions:

  1️⃣ Import the workflow to your n8n instance

  2️⃣ Prepare & add credentials:

  OpenRouter (Google Gemini 2.0 Flash) Get a free API key from https://openrouter.ai/
  Serp API (for news retrieval) Get a free API key from https://serpapi.com/
  Chart Img (For candlestick chart) Get a free API key from https://chart-img.com/

  3️⃣ Run the workflow and get AI-powered crypto insights!

  NOTE
  Remember: Not all LLM models are capable of analyzing image data, so choose your model wisely.

  Limitations: All free services come with usage limits. For example, OpenRouter has a daily limit, and once it's consumed, the workflow will stop processing further requests.

  Disclaimer
  This workflow is designed purely for educational and research purposes. It does not provide financial advice. 🚀

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolSerpApi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE6VW227bOBD9FYHPopd3kXraNEWKoNvLNum2aBAUvIwcoZbklWinbuB/X0hOY8eRN0n7aHnmzDkzhxzeoDKgHJ19fH31+pOeVz9emhj5CUpRBdGi/AaVdRdt7eG0jwtUFS4LwnFwxpkgbGAAymaFsyANDxkHk1EJkhZSc88sAWN9oJmmnmhAKYpQzWc2wnELoTuDuJgfN9V8BhECymO7gHWKalsBytH7tgl5cnSK3zfX0EJIjtvVPDbJUW1nq67skqNFbCoby6buge20Q/nFzUbRq5rH+YsPjH0+uf54/eIlukN9CUuYNfMK6ohS5FuwEcJRRDlihAlMGWbinIpcsFxmE8HpF5SixTw8HrZOb4t//nL692v1Nvx4tZy6LydhW/wMZrOHVSUmFFN5TlnOdC70RDAxUnU8bH2ZoroJsCOec6DacYKVLhgWChzWhHKswTlOQyYtsWi3zcsywM/unq0q1/Qk42re//1nres/al3joQie2Xrqr2xZT/yVjedtOZ1Ci1I0b7pymER+QVJymaJrcFdN823wDZfOa+ospryQWEDmsAskwwI4OOt04Q3tMWxrK4jQdii/WW8Y/ANtN8DSCb1rsFNKFcI6HJg3WHAI2FDisKcFEE2MBsW2AmX19fjKtnGraSvH2Q4mVzHOP8C/C+j6mLqJfTPRK4iJTKqyTrytwwy6WPpvie+RJvcFU0JSrnvR+woGrNP6ZNZcb9y9J0pM2J0oTRlhhmnsueJYGK+x4cxhzg11QhTGDU26FXV0mhxNNx5+bFD2Nm6HsTjIeK/n2R09wTQx3hHsPKdYcKOx9qAx10r6wjoKcqfnn8o6NNfJi0VRQJu8gappV0+gWg2Bm6wNxH3emGqSiqcQ53fEQQElNBQ404xiYYnDViuJC+F8BsITK2FLnIZfNkuwq0etItjmdPyOUWymvTCywMayDAuuFNaEeFxkxhhmC+LojqB3c6g/NIsIbXJ8ZWPypgnwlOM9q/rwbfbIIDh5fBDbMQTHJFMea2YVFhnn2GUEMLOCUe2NJ2LH3n64jL52e5fR3iw62J3BWWxaSJZ2toCkKZINhF+0LdR+tTcH9otz4BNxp0gZa72XGoPVqr+FPLYmWKy1NJllxipwW0V/NfU0OYe2+p1zqw7QPnhqtdQiZJZhJrnBwgHtb16FlRRGCasFV2J3PbXzo/enT+AWm2Y2RM/L+wylIqlUz/CFKJR34CVWut8IsiDYFZJjTVyQTmeKw869ctafrFXytolw2BVDzG3IrmcZISmmD02LfFPHvtc5QoeJuuCZ5NbikCmDBfGAjVYM88wxIoFwzdQoUfpspiRl7BdZkkCdCTrg4DzHwnKHHTUFVtwFr2SRMWdHWbLn97N34/P7eZki62O5BJQXdtZBijqIsaynQyp8B7/oC7xrA7QoR0vaYyw3+cNrgqpQMJopTLIgsaC8wNZQjQtpnCIZyxwh/SOrqWvwPdQA/NPb+Q2y5dfevyi/uLgZ3k6j+/RnVIrKOsB3lJP15eU63W6I/AZVtqzvwRw85UPkPtTdy2QM6iGjUYz7N+UY0MOVNgq0T30M6uFTahRqdPtvGl/d/nhKz7bhOwXS/x/Zw4SB0fgW3FDqb7WFncLttycyu5/1dIIH8wae44/xsVEc2JAj81iv/wOxgDC75w0AAA==

metadata_json:
  {"categories":["automation","integration","data processing","AI/ML","trading/finance"],"complexity":"complex","use_cases":["Automated crypto technical analysis","Combining short-term and long-term candlestick interpretation","Augmenting technical signals with news/fundamental context","Integrating AI agents into trading tools or dashboards","Generating trade insights for traders and analysts"],"estimated_setup_minutes":15,"required_services":["OpenRouter (access to Google Gemini 2.0 Flash)","SerpAPI (news/web search)","Chart Img (chart-img.com) for candlestick images","Cryptocurrency market data API or exchange (e.g., Binance)","n8n instance"],"key_features":["User input for EXCHANGE:SYMBOL to fetch correct market data","Retrieves daily and 5-minute candlestick charts","Two AI agents (long-term and short-term) using Gemini via OpenRouter","Combines technical analysis with web-sourced news (SerpAPI)","Shared windows buffer to pass intermediate results between agents','Final chat output delivering consolidated insights"],"target_audience":["Traders","Market analysts","Developers integrating AI trading features into apps or bots"]}


name: A Very Simple "Human in the Loop" Email Response System Using AI and IMAP
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-02-14T16:31:27.525Z
updated_at: 2025-02-14T16:31:27.525Z
url: https://n8n.io/workflows/2907
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-30 08:33:37
description:
  Functionality
  This workflow automates the handling of incoming emails by summarizing their content, generating appropriate responses, and validating the responses through a "Human-in-the-Loop" system. It integrates with IMAP email services (e.g., Gmail, Outlook) and uses AI models to streamline the email response process.

  The workflow ensures that all AI-generated responses are reviewed by a human before being sent, maintaining a high level of professionalism and accuracy. This approach is particularly useful for businesses that receive a high volume of emails and need to respond quickly while ensuring quality control.

  How It Works
  Email Trigger:
     The workflow starts with the Email Trigger (IMAP) node, which monitors an email inbox for new messages. When a new email arrives, it triggers the workflow.

  Email Preprocessing:
     The Markdown node converts the email's HTML content into plain text for easier processing by the AI models.

  Email Summarization:
     The Email Summarization Chain node uses an AI model (OpenAI) to generate a concise summary of the email. The summary is limited to 100 words and is written in a professional tone.

  Email Response Generation:
     The Write email node uses an AI model (OpenAI) to draft a professional response to the email. The response is based on the email content and is limited to 100 words.

  Human-in-the-Loop Approval:
     The Set Email text node prepares the drafted response for approval.
     The Approve Email node sends the drafted response to a human approver (e.g., an internal email address) for review. The email includes:
       The original message.
       The AI-generated response.
     The Approved? node checks if the response has been approved by the human reviewer. If approved, the workflow proceeds to send the response; otherwise, it stops.

  Sending the Response:
     The Send Email node sends the approved response back to the original sender.

  Key Features
  Automated Email Summarization**: Summarizes incoming emails to provide a quick overview of the content.
  AI-Powered Response Generation**: Drafts professional responses to emails using AI.
  Human-in-the-Loop Approval**: Ensures all AI-generated responses are reviewed and approved by a human before being sent.
  IMAP Integration**: Works with IMAP email services like Gmail and Outlook.
  Efficient Email Management**: Reduces the time and effort required to handle incoming emails while maintaining high-quality responses.

  This workflow is ideal for businesses looking to automate their email response process while maintaining control over the quality of outgoing communications. It leverages AI to handle repetitive tasks and ensures that all responses are reviewed by a human, providing a balance between automation and human oversight.

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

nodes_used:
  ["n8n-nodes-base.emailReadImap","n8n-nodes-base.markdown","n8n-nodes-base.emailSend","@n8n/n8n-nodes-langchain.chainSummarization","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.emailSend","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if"]

workflow_json_compressed:
  H4sIAAAAAAAAE81Za28bNxb9K8TsAu0CojrkcB4U2m7dJNsajZPUDvpAEhR3yDsS4xlSmaFku4b/+4Izsl6W4qQFFvvFHkucw3sPL899+DYyOppEL5Y2L/zZ+Qv703uT/2cajaIGPUST28jYzoNVeBrWgSgrJROUeaqAJwkokaLOleQ814VQVQo84TJhccpTyXLQUCUJ48hinYqMR6PIYzOvweOTFnV3gX4xf+KaeY0edTTx7QLvRpGFBqNJ9Au2N6Qz4Vvy46IBS4wlfoakdm5OupvOY0OwAVOTK+Nn5OSUIDk9O3kVtoFpF03evBtF1mkMj7eDqzxnZcmyisoy41QwLSmUeUYZE0rnJUiWQrQ24VmP/ro10ym25MsA/q+AfjMP39rC0h6eltDhuDflHEGfNjCPRtHcdcYbZ6PJG8qSOB6xRMTvRtEcWmjQY9sFgt08rAmPd3ejSLWo0XoDdf+lCUiTlemXCftVuh+0ruX87OmN2JgZ7CLGVu47m1wZD7WBsXJNFBCDrb9g2/WG8LvRCkxwzdJYF1SnuaBCVpJKFSPNGXClEZIyl5sNzqC91O7KHvW92SzYcTsWR9ye+aaOJtE3t7fkn+87Z8cer/2PvqnJ3V002mNlxwe29gGlkAVkMY3jvKAiLRgteSZpXlVpyisRi3zrLC/QatIf6MdPMKzbdUPy4AQPTlxhOXPucrgNuQRkpaCZKBQVqhS0zJSmsUBIFNMyYeGMjvv95RcX6AeTSHD/i3+Njcdm3PMxBPY+GaOoW5TvUfmAcY4TMuAcitMdtNVbA553Aw1rMx59vWpdM7wbnj73be/Cuw+ju2v8Jrpn5+9fJb+VT83pzx+WJr/eOriz158Y3eNNbEApqwxUQnksUyqErihgCZQjlDJDVQme7t/zi0XTQGv+hEA3eTIDsxXw39nCfrWJlxrsVIUV4/7nzqt7lyAvHr36UWkstDdPwcNPeLNzLzR4GKjvtvc4Qz9z+sTqV61r5r4HWUK9wP5p3n8YcH5tjUcCRDmrTIdkALkhruqltHJ17a6MnQZtbeCasDgmV67V3eStfWvfRvt2vI3C508dsc4TtB7bHsc7DzWxi6bENmD3EGTRoR5Ho0i5pjQWz2D+6v/JsLsQQW6O7cCo070kOI2ndr7w3/dHEh2X0CIrc5XomCKrOBXIK1pymdAiFjyPY50VLNuE2OAv7urP0aCCKVq/F0fJMS0N2rGhtPcarz3xjrQ4r2/Cwy6lvRU9j2sWW+zmznbY6/C+7ERDsj3DroNpsPt3tyDQIgFL8HqOrSfgCdjuCts1fjcmYZlF1MGC4dtgSEPmrauwC3xCXd+QoL2auCG5h4veNsMVvHELMoMljsnrmemI6QiQctEZi103bDIm3+M6hMBqYnGJLcFrFbZdx8yYvLSBiBmS0ul1kPUQoz5iVIuwIu9eYe9Gq3v0ejgsjZWxGI2iGXQvF36+8K+g7bBd1y27aWqcryMl1SkkMq9oJVVCRSYZhUrHVELGYp7lEkFtIuXlHO3J6ScESd08mYHvl5u9WBGh3Eizh7HSOI11ePjjj7YeLB/1H0aTqDZdiLleRqJJNJ17KhxtjA3oCtQM9Tl2i9q/GAzdXnC3n7P3tN71Vp7MzVrwnzz9Lfv5TEyf/w52Fr8SewQYAkq5hfUPdZ6NN5cwLZMMuExppSGjguWCylANxFCgSvOMx5pvpRJv1OUNeeE88qNVQNcvCmv2SC0CqfwAqVdG+1k0SXg8imZopjMfTbiIg/BZHy7yJOqzCfEz8ORex7Hrw61FhWaJeqUNx8udnLG4QlbROJaSCglAZUhuMsM8SQBEVlQHXU0/39Uke8RVcdzVk6Bdg6st+tbgErvNtd2+331ZAWSJyruWBCEPVvX3eN46hV235mhQp4+wg7zUpc4ETVSSU1FkOQXkisZVJpNcF7ws2EF22Oezw9ixSDh2+s4ug0oORZ135L6gJgMZ4Rcp0YestbAa29B06SClriLPn5+R/tp2H3G/AEw1ZxlNC5lToZKQh2KgPK8qmciS5QIOup9/tvtZXw7Hx51nxY7zp6uMjqhLUJdBxl/+RLpQjj8W8kJVCrNE0VQmjIpUpVRKBRTLItUKZMbLrSruZD5v3RL/WpGfbKq07SJfVLKKM8ypLHlJRSEzKsuUUS5SmfNEMM34gyK/WSfKb76eJd+ePbu4OPnh2ddfzZJvh5T7KUXzph8KiTrgnJyS82cXr16+uNjG+tRu4c1AD9TkHD8sTIv6Hfmb7cOBony3Qzi4YF1xRZMoRMGJ1b+C8f/jBkFnqgClOcVSMSoAgJaVUlTpkhWVUkXO0v2cHHoCT876FPq30nPB/3561ojzDvGSqhn4wwl6d8nnp2iZP/lTqA835oada/Xz8w0fTxHnF4iXH0/OSVKWqLGkjEugAmUYtqRAJcaohEgzlmbbDfp2M3xclnCvMGafMFoZRdB1ZmobtEOvtPPn/XAoSXWukjihgleCCq0ZLQVDmmEZF7niiUr0xt69Wr7zofbdOqBND+f6arFvgt89ICwZizVhnMsEY8yoqDhQkXFOQ4lIM1FmaZUIZJgeVPHPFvHkM0X8wQDuI6qdspiFHpuG+R8VmCkKoGJaKCjKPBUiKQ7nIvZXc7E8cPrK1a6NJsnovmZJd2qWbMe9f5Af3RUxPrQLl91b2/cb4bmq3RWBhXcN+FUxMgOr61VuNla5ZtPyjPaKO9OS1R4jMkUbdA87AkGI560JDcd9ZdP1Vc8SaqPDxyYUUK1bTGdDouwnfFuzzrcPD+RttJqJjklIGKH3UmDJh4VRl/UNMdbjNOxPfuhhwnYvF7527pIsDfQw24YNc9Pjh6yEkizNNRU6TqnIgVFIsaRZUmQpFkmhE/kgNet/Hz1gU+1VGY9PTe76E9Rm3aZudazLteaPohor/8vqUvZC2eEF2rDTEu81tvdyYH+VmXxrhiZwmF6AD9EUQV83bG97Lx4ZR56VKqUsT3ho8iSFLOZUSiFjlYs4q/Q6+wWs23smSudqBLuXGoNdYepj7LTGlfmrRnPbod1J0RhWRA+pug3Bvnb9gPjwMb97N4pADVxUUHc4ijr03thpTyReo1oEk162OvS60ZIFUlb8DjVSjrnkRUbjOMhmgQWFWDOKcZVmWpYQ63QgzaJan9CqzQ1abP4IWXMBUxxy6+TNm9t+EHNsbvLgjVFkrMbraBLfvXt3N9oMrENODXO8bchPmPY1w1+7oJsgPoR6aL78AGb0pkfaduow1uFU+DGzVnsfgjtw+w4i7W37EahHHQ1wD4umxw77E07m0aM/+D+bQ648/KfGQS+O23QI9GC4HsC9u/svpaCXG3wbAAA=

metadata_json:
  {"categories":["automation","communication","email-processing","ai-assistance","human-in-the-loop"],"complexity":"medium","use_cases":["Automated email triage and summarization","Drafting reply suggestions for customer support or sales","Human-reviewed outbound email responses","Reducing agent workload while retaining quality control","Archiving/labeling and logging of handled emails"],"estimated_setup_minutes":30,"required_services":["IMAP email account (Gmail, Outlook, etc.)","AI model/API (e.g., OpenAI or other LLM provider)","Email send service or SMTP (if not using IMAP account for sending)","n8n instance (for human review UI and workflow orchestration)"],"key_features":["Fetch incoming emails via IMAP","Summarize email content with AI","Generate draft responses using AI","Human-in-the-loop approval step before sending","Conditional logic to route/label or archive messages based on content or decision outcome','Logging and notes (sticky notes/markdown) for auditability"],"target_audience":["Customer support teams","Sales teams handling outreach","Operations/administrators automating communications processes','Developers and automation engineers setting up email workflows"]}


name: Automate Google OAuth2 Credential Creation in n8n
author_name: Jordan Haisley
author_username: jordan
categories: []
created_at: 2025-02-14T23:08:08.900Z
updated_at: 2025-02-14T23:08:08.900Z
url: https://n8n.io/workflows/2909
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Overview: Automate Your Google OAuth2 Credential Creation

  This workflow template streamlines the process of creating and naming individual Google OAuth2  credentials for multiple Google services within n8n. By automating tasks typically done manually, it saves significant time and reduces the risk of errors.

  Who Is This For?

  This template is perfect for:  
  Marketers who frequently use Google Docs, Google Sheets, Google Slides, and Google Drive for document automation.  
  Developers or technical users who manage numerous integrations and need to minimize credential creation overhead.  
  Teams or solo users with multiple Google accounts who want to eliminate repetitive Google OAuth2 credential creation tasks.

  Prerequisite Knowledge

  • Basic familiarity with n8n, including how to configure nodes and connect services.  
  • A Google OAuth JSON file (client ID, client secret, etc.) already set up in your Google Cloud Console.  
  • An understanding of Google services (Docs, Sheets, Slides, Drive, Gmail, Calendar, Contacts and others) and which you may need for your use cases

  What Problem Does It Solve?

  Manually creating and naming separate OAuth2 credentials for each Google service can be time-consuming and prone to errors. For instance, if you manage 16 Google accounts, you might need to create 112 credentials manually. This workflow automates that process by using your Google OAuth JSON file and email address, generating uniquely named OAuth2 credentials for each Google service in just a single run per account.

  Key Features

  Manual Trigger – Start the workflow on demand to generate new credentials.  
  Set Node for Google OAuth Details – Store your client ID, client secret, and other JSON info securely in one place.  
  Automated Naming Convention – Use your Google email address to create distinct names for each credential, simplifying organization.  
  Array of Google Services – Customize which services to create credentials for, such as Docs, Sheets, Slides, Drive, Gmail, Calendar, or Contacts.  
  Batch Credential Creation – Split the array of Google services and automatically create separate OAuth2 credentials for each.  
  Seamless OAuth2 Integration – Effortlessly authenticate all generated credentials within n8n.

  How to Set Up

  Insert Your JSON Details – Paste your Google OAuth 2.0 JSON data into the “Google JSON” node.  
  Add Your Google Email Address – Specify your email address in the “Google Email” node to personalize the naming convention.  
  Configure n8n Account Credentials – In the “n8n Create Credentials” node, select or add proper credentials (e.g., n8n API credentials).  
  Execute the Workflow – Run the workflow to automatically generate individual OAuth2 credentials.  
  Finalize in n8n – Visit your n8n Credentials dashboard to complete the OAuth sign-in for each newly created credential.

  Customization Options

  Modify the Services Array** – Easily add or remove Google products based on your workspace needs by editing the array in the “Services” node.  
  Adjust Naming Logic** – Tailor the credential naming convention in the “n8n Create Credentials” node to match your organization’s style or best practices.  
  Set Role-Based Access** – In n8n, control who can view and use these automatically generated credentials by adjusting user permissions.

  Time-Saving Example

  I initially had 16 Google accounts, requiring 112 credentials if done manually. With this workflow, I needed just one run per account—saving around two hours of repetitive data entry. Yes, I spent three hours building and documenting this, but it pays off quickly for anyone managing multiple accounts or large teams.

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

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

metadata_json:
  {"categories":["automation","integration","credentials-management","google-services"],"complexity":"medium","use_cases":["Bulk creation of Google OAuth2 credentials for multiple Google services","Onboarding or provisioning integrations across many Google accounts","Standardizing credential naming and organization","Batch setup for Docs/Sheets/Slides/Drive/Gmail/Calendar/Contacts integrations","Reducing manual errors and repetitive data entry when creating credentials"],"estimated_setup_minutes":30,"required_services":["Google Cloud Console (OAuth 2.0 client JSON)","n8n instance with API/credentials access","Google accounts for OAuth sign-in"],"key_features":["Manual trigger to run on demand","Secure storage of Google OAuth JSON in a Set node","Automated naming convention using Google email address","Configurable array of Google services to create credentials for","Batch/split processing to create separate OAuth2 credentials per service in one run per account\",\"n8n Create Credentials node integration to register credentials programmatically"],"target_audience":["Marketers using Google Docs/Sheets/Slides/Drive integrations","Developers or technical users managing many integrations","IT admins or DevOps provisioning credentials at scale for teams or multiple accounts"]}


name: Extract license plate number from image uploaded via an n8n form
author_name: Daniel Nolde
author_username: dnolde
categories: []
created_at: 2025-02-15T06:43:10.899Z
updated_at: 2025-02-15T06:43:10.899Z
url: https://n8n.io/workflows/2911
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  What it does

  This is a simplistic demo workflow showing how to extract a license plate number from an image of a car submitted via a form – or in more general terms showcasing how you can:

  use a form trigger to upload files and feed it into an LLM
  use a changeable LLM model for image-to-text analysis

  Set up steps

  Import the workflow
  Ensure you have registered and account, purchased some credits and created and API key for OpenRouter.ai
  Create/adapt the OpenRouter credential with your indivial API key for OpenRouter
  "Test workflow" and submit an image of a car with license plate to extract its number

  How to adapt

  By changing the "prompt" in th "Settings" node you can quickly adapt this exemplatory workflow to other image-to-text use cases, such as:

  summarization: "summarize what's seen in the image"
  location finding: "identify the location where the image was taken"
  text extraction: "extract all text from the image and return it as markdown"

  Thanks to using OpenRouter, you also can quickly experiment with finding good model choices by simply changing the "model" in the "Settings" node. The following models gave good results for this demo use-case:

  google/gemini-2.0-flash-001
  meta-llama/llama-3.2-90b-vision-instruct
  openai/gpt-4o

  The llama-3.2-11b and even claude-3.5-sonnet didn't recognize all characters in all test images.

  Using a generic LLM-model offers a quick way of prototyping an image-to-text application. For specific use cases in serious and scalable production deployments, consider using an API based service specifically made to that purpose, such as:

  Google Cloud Vision API
  Microsoft Azure Computer Vision
  Azure AI Document Intelligence
  Amazon Textract

nodes_used:
  ["@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.form","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.set","n8n-nodes-base.formTrigger"]

workflow_json_compressed:
  H4sIAAAAAAAAE42W227cNhCGX0UgeiluJIo6cIECjZ26TeIckBi5MYxiSI52lUqUSlE+YLHvXpDag9exg9wsSHE4M/xm+HM3pNFkSc6y8u72LHH6/er7BPKOxKRDB2S5IY0ZHRiFb72dqGSd6AKwTrWuZAllzkpRpSzlPKllWqayLouqkCIvWVnrIi1rnvGcZSLTABmJicNuaMHhuUU9fkU3Ded9N7ToUJOlsxNuY2KgQ7IkbztYYeT6qG0UmhGjsDEyUyfRelewGsny+iYmptfoh5v5OFDkRZZxoEma5ZRrkVEodE0ViJIxpkSZ+1R2Yc5gbFR0efkhOl9DY7zjh8Ev/GEq88pUhgb3tAWzUt5iEX4v247EZOjHxjW9IctrmvIkplmV3MRkAAsdOrSjZ+jw3pEl+X2ziX77PvZmMdi+G1y03QbQ4wgrDIa78Tdop915dqn8PXVgPsyrn8Pmqx3Ho4er2bTx1M4aA/aBxESGQSD5Bhy8x4c9WLK92cZkzmS3VWPdGCTbmcA3tGM4WbrIt/EOLU9BJLlglIFIKU/qmoKsOc2gFHmZZTpn6RHtRW+7LzhOrfvsIx7IHqFKGHFR9/YJS8YOKO9Qrvv+39B/LK0qxmqkOUpBOc9TClgBTbmsal7xWmsf5ZR+P3inYegDXTWu9Tn4Y/YDWphDEjW3oZ/EjyZ78z/vnQXlUEeN8W7CtuWJ6a4+J5X2pfd1/oHpgahimRS5FlSWwChHgRSSVNC8ZBxEUTCQ+kj004DmSz85tL5jf6FX2+58De647UnPFklM02datus1ticnCV/mlj0S3W5joixqNK6Bdod7H+r10AQF8aeUY+k+u9vVm6t3H/96ffHu2ROBUv1kHNm+TKtiolI6T2mleEm5VJxCXVaUKZYWLCmxLouj76/oXGNW44udN6J7AiR76RI/OnRMYByblenQuLB2Mt2rUCqrrEq1orkUQDkDRisoSqpUmRSSZ1laJcdUZ+CHPEdnG7MiMbn1WkCWASs0r1aDo7wnBx4lA1RpllCQeUE5FimVRSKpgMxLtE4YPuIx3/afRNl1eeTWe52N+jrMTjW4N+FjbXvjaNePLlJgI41Ds7siYRmcA7X286DkYHRk0U3WRL1pH4IJHq6VWkMY2TG6a9y6n1wE5iHq3RptFK5Rb6PR2Um5yeJilq/GqHbS+MkbXTTY6vHwiJw0ULbgB2Q1YClqJajM04RyDpxKREW5VqzQikGawSMJs313ZZvVan5yXtSvo83jbsqLZ3WMp5jVGZe0BImUq4JTkStNmeAsTzKdo6h+omPb+ETJXhtoH0acKZN5bQ9jM5d2bsvaf9xpfd20wdZ/ugQZLvvbnQOL/02NRR2czEBjAkrh4C6aNjw0I1mSxfdhFUeLwazmYlgch96M+KHXPkILo/vY631Gb3BUthl2anvVR7BLG8yceRxNQ9uDjhoXrTGU+EkV2YJtb3wmrrnFfV7j/o4vNwTvUU0+wier0ZIluU29k9vZQUCfS6HyTAqaCVFRXpQFFUJomkpI01LWRSHyoOrGoDo8HF8fBen8n4Tl9fUm/O342R+Ibp41RuM9WSbbG0/pcUM95+1HzXrWzZOHwItQ84+X/QlWoQLtr+X4w66ngZ7ufC7nl975ZzLfbv8HVgyb0nQKAAA=

metadata_json:
  {"categories":["automation","integration","AI/ML","image-processing","form-handling"],"complexity":"simple","use_cases":["Extract license plate number from an uploaded car image (image-to-text OCR)","Prototype image-to-text workflows using an LLM","Create custom image analysis prompts (summarization, location detection, full text extraction)","Collect files via a form and process them automatically"],"estimated_setup_minutes":15,"required_services":["n8n instance (workflow host)","OpenRouter.ai API (API key)"],"key_features":["Form trigger to accept image uploads","LLM-based image-to-text analysis via OpenRouter","Configurable prompt to adapt extraction goals","Easily switch model selection for experimentation (e.g., Gemini, Llama, GPT-4o)","Simple demo flow useful for prototyping"],"target_audience":["Developers building integrations or prototypes","Automation/No-code engineers using n8n","ML/AI prototypers testing image-to-text workflows"]}


name: Automatically create YouTube short videos using Elevenlabs, Hailuo AI
author_name: Nguyen Quoc Hai
author_username: haismartlife
categories: []
created_at: 2025-02-16T09:27:08.840Z
updated_at: 2025-02-16T09:27:08.840Z
url: https://n8n.io/workflows/2914
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  AI-Powered Workflow for Automated Video Creation
  Overview
  This workflow is designed for individuals and businesses looking to streamline the creation of engaging promotional videos. Whether you're marketing a product or developing a personal brand, this AI-driven system automates the entire video production process, from script generation to final video upload.

  Key Features
  🎙️ AI-Generated Voiceovers with ElevenLabs
  Using ElevenLabs, this workflow converts text-based scripts into natural-sounding voiceovers, making your videos more engaging and professional.

  ✍️ Enhanced Prompt Engineering with Together AI
  To ensure high-quality content, Together AI refines and optimizes prompts, helping generate more compelling narratives and animations.

  🎥 Image-to-Video Conversion with Hailuo AI
  With Hailuo AI, static images are transformed into dynamic animated videos, allowing for visually appealing content without the need for manual editing.

  🧠 Intelligent Processing with OpenAI
  Various inference tasks, such as text generation and content refinement, are handled by OpenAI, ensuring smooth and efficient video production.

  Automated Video Upload & Sharing
  📊 Google Sheets Integration
  Once the video is created, its downloadable URL is automatically uploaded to a Google Sheets document, making it easy to access and manage content. Add video title, video url, video status columns for tracking and archiving.

  📢 Multi-Platform Distribution
  Users can download and upload the generated videos to major social media platforms, including Facebook, YouTube, Instagram, and TikTok, maximizing reach and engagement.

  Who Can Benefit?
  This workflow is ideal for:

  Marketers looking to create fast, automated promotional videos

  Content creators who want to streamline video production

  Businesses seeking an efficient way to generate engaging product showcases

  By leveraging the power of AI, this workflow simplifies video creation, saving time while delivering high-quality content. 🚀

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

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

metadata_json:
  {"categories":["automation","content creation","video production","AI/ML integration"],"complexity":"complex","use_cases":["Automated promotional short video production","Social media content repurposing and scheduling","Product showcase videos","Batch creation of short-form videos for marketing campaigns","Maintaining a content catalog with tracking URLs"],"estimated_setup_minutes":60,"required_services":["ElevenLabs (text-to-speech)","Hailuo AI (image-to-video)","Together AI (prompt optimization)","OpenAI (text generation/refinement)","Google Cloud Storage","Google Sheets","YouTube/Facebook/Instagram/TikTok (for uploads)","n8n HTTP/Webhooks"],"key_features":["AI-generated natural voiceovers (ElevenLabs)","Prompt engineering and refinement (Together AI)","Image-to-animated-video conversion (Hailuo AI)","Text generation and content refinement (OpenAI)","Automatic upload of video files to cloud storage (GCS) and logging to Google Sheets with status tracking columns (title, url, status)"],"target_audience":["Marketers","Content creators/Influencers","Small businesses and product teams producing promotional content for social platforms"]}


name: Allow Users to Send a Sequence of Messages to an AI Agent in Telegram
author_name: Chris Carr
author_username: chriscarr
categories: []
created_at: 2025-02-16T12:03:51.655Z
updated_at: 2025-02-16T12:03:51.655Z
url: https://n8n.io/workflows/2917
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  Use Case
  When creating chatbots that interface through applications such as Telegram and WhatsApp, users can often sends multiple shorter messages in quick succession, in place of a single, longer message. This workflow accounts for this behaviour.
  What it Does
  This workflow allows users to send several messages in quick succession, treating them as one coherent conversation instead of separate messages requiring individual responses. 
  How it Works
  When messages arrive, they are stored in a Supabase PostgreSQL table
  The system waits briefly to see if additional messages arrive
  If no new messages arrive within the waiting period, all queued messages are:
     Combined and processed as a single conversation
     Responded to with one unified reply
     Deleted from the queue
  Setup
  Create a table in Supabase called message_queue. It needs to have the following columns: user_id (uint8), message (text), and message_id (uint8)
  Add your Telegram, Supabase, OpenAI, and PostgreSQL credentials
  Activate the workflow and test by sending multiple messages the Telegram bot in one go
  Wait ten seconds after which you will receive a single reply to all of your messages
  How to Modify it to Your Needs
  Change the value of Wait Amount in the Wait 10 Seconds node in order to to modify the buffering window 
  Add a System Message to the AI Agent to tailor it to your specific use case
  Replace the OpenAI sub-node to use a different language model

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.telegram","n8n-nodes-base.telegramTrigger","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.supabase","n8n-nodes-base.noOp","n8n-nodes-base.aggregate","n8n-nodes-base.supabase","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.sort","n8n-nodes-base.supabase","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.memoryPostgresChat","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, 4284 characters]

metadata_json:
  {"categories":["integration","automation","messaging","conversational AI","data processing"],"complexity":"medium","use_cases":["Buffering multiple short user messages into a single conversation","Telegram/WhatsApp chatbot message aggregation","Reducing duplicate or fragmented bot replies","Context accumulation for multi-part user inputs","Customer support and conversational workflows"],"estimated_setup_minutes":15,"required_services":["Telegram Bot API","Supabase (Postgres)","OpenAI (or other LLM) credentials","n8n instance"],"key_features":["Stores incoming messages in a queue table","Wait window to batch rapid messages","Combines queued messages into a single conversation","Sends one unified AI-generated reply","Deletes processed messages from the queue after reply」「Configurable wait amount to tune buffering window」「Replaceable language model or system prompt for customization"],"target_audience":["developers","no-code/low-code builders","chatbot creators/engineers」「product managers and support teams automating conversational flows"]}


name: WordPress Auto-Blogging Pro - Content Automation Machine for SEO topics
author_name: Daniel Ng
author_username: danielng
categories: []
created_at: 2025-02-16T16:48:40.938Z
updated_at: 2025-02-16T16:48:40.938Z
url: https://n8n.io/workflows/2919
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-30 08:33:37
description:
  The best content automation in the market! This advanced workflow not only creates and publishes SEO-optimized blog posts to your WordPress website but also backs up all content and images to a designated folder in your Google Drive. In addition, It generates a unique image for each chapter and a featured image for the overall article, and it automatically collects internal website links—seamlessly inserting them throughout each chapter and the entire article. This integrated approach enhances on-page SEO, improves navigation, and streamlines your content creation process, saving you time while ensuring your work is securely stored.

  How it works

  Triggers upon adding a new row to a Google Sheets.
  Generates a full blog post by writing content based on customizable parameters such as topic, target audience, length, style, and seed keyword.
  Generates and adds images for each chapter as well as a featured image for the article.
  Gathers internal website links and strategically embeds them within each chapter and throughout the article, boosting SEO and enhancing user navigation.
  Publishes the blog post directly to your WordPress website.
  Saves all content (blog post and images) to Google Drive, organizing them in a folder named after the blog post title.

  Unique features

  Full Automation: The workflow is designed to be 100% automated. Once imported and configured, it can run without manual intervention.
  Simple Activation: It can be easily triggered through the Google Spreadsheets interface. You simply add a new row to a Google Sheet.
  Customization Options: Offers a wide array of customization options, including topic, category, target audience, word count, number of chapters, length of introduction and conclusion, and writing style. It also allows for the inclusion of calls-to-action (CTAs) and company/product introductions.
  Automatic Content Saving: After writing a blog post, all content and images are automatically saved to Google Drive, preventing data loss. The folder is even named after the title of the blog post.
  SEO-Optimized Content: It's designed to create content optimized for SEO using seed keywords.
  AI Model Flexibility: It’s super easy to switch between different AI models through the Open Router node.
  Rate Limit Handling: Includes "Wait" nodes to avoid rate limits.
  Internal Link Limit: Limits the number of internal links to 20 by default.

  Set up steps

  Install the workflow template: Import the JSON file into your n8n instance.
  Connect the workflow to your accounts: This includes linking your WordPress website, Google Drive, and AI models (such as OpenAI GPT-4o).
  Configure the Google Sheet: Ensure your Google Sheet is set up to trigger the workflow upon adding a new row and that the input data is correctly formatted.
  Customize the workflow: Adjust parameters like topic, target audience, and writing style to match your specific content needs. Optimize prompts for best results.
  Test the workflow: Use low-cost AI models and image settings initially to ensure everything runs smoothly.
  Tailor Further as Needed: Modify workflow elements to align perfectly with your needs and content strategy.

nodes_used:
  ["n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.merge","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.xml","n8n-nodes-base.splitOut","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.editImage","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.markdown","n8n-nodes-base.wordpress","n8n-nodes-base.editImage","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.splitInBatches","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.wait","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.limit","n8n-nodes-base.if","n8n-nodes-base.merge","n8n-nodes-base.googleDocs","n8n-nodes-base.googleDocs","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.set","n8n-nodes-base.googleDrive","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.limit","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.aggregate"]

workflow_json_compressed:
  [encoded data, 5020 characters]

metadata_json:
  {"categories":["content automation","integration","SEO","blogging","digital marketing"],"complexity":"complex","use_cases":["Automated creation and publishing of SEO-optimized blog posts","Generating chapter-level and featured images for articles","Backing up article content and assets to cloud storage","Automatically discovering and inserting internal links","Scaling content production with batching and structured outputs"],"estimated_setup_minutes":60,"required_services":["WordPress site with REST API access","Google Drive (API) for backups","AI text & image generation provider (e.g., OpenAI, Stable Diffusion)","Image editing/generation API (if separate)","HTTP/Webhook endpoint or crawler for internal link discovery"],"key_features":["Create and publish SEO-optimized posts to WordPress automatically","Generate a unique image for each chapter and a featured image","Backup all content and images to a specified Google Drive folder","Automatically collect internal website links and insert them into chapters/article","Structured output parsing and batching for scalable content generation workflows (split/merge/batch nodes used)"],"target_audience":["content marketers","SEO specialists","bloggers and publishers looking to scale content production rapidly"]}


name: UTM Link Creator & QR Code Generator with Scheduled Google Analytics Reports
author_name: Marketing Canopy
author_username: johnmarketingcanopy
categories: []
created_at: 2025-02-17T03:48:16.890Z
updated_at: 2025-02-17T03:48:16.890Z
url: https://n8n.io/workflows/2921
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  UTM Link Creator & QR Code Generator with Scheduled Google Analytics Reports

  This workflow enables marketers to generate UTM-tagged links, convert them into QR codes, and automate performance tracking in Google Analytics with scheduled reports every 7 days. This solution helps monitor traffic sources from different marketing channels and optimize campaign performance based on analytics data.

  Prerequisites

  Before implementing this workflow, ensure you have the following:

  Google Analytics 4 (GA4) Account & Access

  Ensure you have a GA4 property set up.
  Access to the GA4 Data API to schedule performance tracking. Refer to the Google Analytics Data API Overview for more information.

  Airtable Account & API Key

  Create an Airtable base to store UTM links, QR codes, and analytics data.
  Obtain an Airtable API key from your Account Settings. Detailed instructions are available in the Airtable API Authentication Guide.

  Step-by-Step Guide to Setting Up the Workflow

  1. Generate UTM Links

  Create a form or interface to input:

  Base URL** (e.g., https://example.com)
  Campaign Name** (utm_campaign)
  Source** (utm_source)
  Medium** (utm_medium)
  Term** (Optional: utm_term)
  Content** (Optional: utm_content)

  Append UTM parameters to generate a trackable URL.

  2. Store UTM Links & QR Codes in Airtable

  Set up an Airtable base with the following columns:

  UTM Link**
  QR Code**
  Campaign Name**
  Source**
  Medium**
  Date Created**

  Adjust as needed based on your tracking requirements. For guidance on setting up your Airtable base and using the API, refer to the Airtable Web API Documentation.

  3. Convert UTM Links to QR Codes

  Use a QR code generator API (e.g., goqr.me, qrserver.com) to generate QR codes for each UTM link and store them in Airtable.

  4. Schedule Google Analytics Performance Reports (Every 7 Days)

  Use the Google Analytics Data API to pull weekly performance reports based on UTM parameters.
  Extract key metrics such as:
    Sessions
    Users
    Bounce Rate
    Conversions
    Revenue (if applicable)
  Store the data in Airtable for tracking and analysis.

  Adjust timeframe as needed


  For more details on accessing and using the Google Analytics Data API, consult the Google Analytics Data API Overview.

  Benefits of This Workflow

  ✅ Track Marketing Campaigns: Easily monitor which channels drive traffic.

  ✅ Automate QR Code Creation: Seamless integration of UTM links with QR codes.

  ✅ Scheduled Google Analytics Reports: No manual reporting—everything runs automatically.

  ✅ Improve Data-Driven Decisions: Optimize ad spend and marketing strategies based on performance insights.

  This version ensures proper Markdown structure, includes relevant documentation links, and improves readability. Let me know if you need any further refinements! 🚀

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.googleAnalyticsTool","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.airtable","n8n-nodes-base.httpRequest","n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4520 characters]

metadata_json:
  {"categories":["marketing automation","analytics & reporting","integration","data management"],"complexity":"medium","use_cases":["Generate UTM-tagged campaign URLs","Create and store QR codes for UTM links","Automate weekly Google Analytics (GA4) performance reports","Centralize campaign data in Airtable for analysis","Track channel/source performance and optimize campaigns"],"estimated_setup_minutes":60,"required_services":["Google Analytics 4 (GA4) Data API","Airtable API","QR code generator API (e.g., goqr.me, qrserver.com)"],"key_features":["UTM parameter builder (customizable fields)","Automated QR code generation for each UTM link","Persistent storage of links, QR codes and metrics in Airtable","Scheduled (every 7 days) GA4 report extraction","Captures key metrics: sessions, users, bounce rate, conversions, revenue (if available)"],"target_audience":["marketers","growth teams","marketing analysts/data analysts in SMBs and agencies"]}


name: Detect hallucinations using specialised Ollama model bespoke-minicheck
author_name: Guido Zockoll
author_username: gzockoll
categories: []
created_at: 2025-02-17T06:20:24.449Z
updated_at: 2025-02-17T06:20:24.449Z
url: https://n8n.io/workflows/2922
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Fact-Checking Workflow Documentation

  Overview
  This workflow is designed for automated fact-checking of texts. It uses AI models to compare a given text with a list of facts and identify potential discrepancies or hallucinations.

  Components

  1. Input
  The workflow can be initiated in two ways:
    a) Manually via the "When clicking 'Test workflow'" trigger
    b) By calling from another workflow via the "When Executed by Another Workflow" trigger
  Required inputs: 
    facts: A list of verified facts
    text: The text to be checked

  2. Text Preparation
  The "Code" node splits the input text into individual sentences
  Takes into account date specifications and list elements

  3. Fact Checking
  Each sentence is individually compared with the given facts
  Uses the "bespoke-minicheck" Ollama model for verification
  The model responds with "Yes" or "No" for each sentence

  4. Filtering and Aggregation
  Sentences marked as "No" (not fact-based) are filtered
  The filtered results are aggregated

  5. Summary
  A larger language model (Qwen2.5) creates a summary of the results
  The summary contains:
    Number of incorrect factual statements
    List of incorrect statements
    Final assessment of the article's accuracy

  Usage
  Ensure the "bespoke-minicheck" model is installed in Ollama (ollama pull bespoke-minicheck)
  Prepare a list of verified facts
  Enter the text to be checked
  Start the workflow
  The results are output as a structured summary

  Notes
  The workflow ignores small talk and focuses on verifiable factual statements
  Accuracy depends on the quality of the provided facts and the performance of the AI models

  Customization Options
  The summarization function can be adjusted or removed to return only the raw data of the issues found
  The AI models used can be exchanged if needed

  This workflow provides an efficient method for automated fact-checking and can be easily integrated into larger systems or editorial workflows.

nodes_used:
  ["n8n-nodes-base.code","n8n-nodes-base.splitOut","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatOllama","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.filter","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.aggregate","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmOllama","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, 6324 characters]

metadata_json:
  {"categories":["automation","integration","data-processing","ai-ml","content-moderation"],"complexity":"medium","use_cases":["Automated fact-checking of articles and posts","Editorial review and quality control","Content moderation and misinformation detection","Research validation and compliance checks","Integration into publishing or editorial pipelines"],"estimated_setup_minutes":30,"required_services":["n8n instance","Ollama with bespoke-minicheck model (ollama pull bespoke-minicheck)","Access to a larger LLM for summarization (e.g., Qwen2.5 or equivalent)","Source of verified facts (manual list or database)"],"key_features":["Per-sentence splitting and preprocessing (handles dates and list elements)","Per-sentence verification using bespoke-minicheck Ollama model (Yes/No)","Filtering and aggregation of non-factual/hallucinated sentences","Summary generation with a larger LLM (counts, list of issues, final assessment)","Triggerable manually or by other workflows (integration-friendly)"],"target_audience":["Editors and journalists","Fact-checkers and content moderators","Developers integrating AI-powered checks into pipelines"]}


name: Bitrix24 Chatbot Application Workflow example with Webhook Integration
author_name: Ferenc Erb
author_username: fefehun
categories: []
created_at: 2025-02-17T08:49:40.226Z
updated_at: 2025-02-17T08:49:40.226Z
url: https://n8n.io/workflows/2923
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Use Case
  Automate chat interactions in Bitrix24 with a customizable bot that can handle various events and respond to user messages.

  What This Workflow Does
  Processes incoming webhook requests from Bitrix24
  Handles authentication and token validation
  Routes different event types (messages, joins, installations)
  Provides automated responses and bot registration
  Manages secure communication between Bitrix24 and external services

  Setup Instructions
  Configure Bitrix24 webhook endpoints
  Set up authentication credentials
  Customize bot responses and behavior
  Deploy and test the workflow

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

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

metadata_json:
  {"categories":["automation","integration","chatbot","webhooks"],"complexity":"medium","use_cases":["Automate Bitrix24 chat responses","Route and handle webhook event types (messages, joins, installs)","Bot registration and lifecycle management","Validate/authenticate incoming webhook requests","Integrate Bitrix24 events with external services"],"estimated_setup_minutes":45,"required_services":["Bitrix24 account (webhook-enabled)","n8n instance (cloud or self-hosted)","Public HTTPS endpoint / SSL (to receive webhooks)","Optional: secrets manager or database for token storage"],"key_features":["Processes incoming Bitrix24 webhooks","Authentication and token validation","Event routing by type (message, join, install) using switch/if logic","Automated responses and bot registration","Secure communication handling between Bitrix24 and external services (respondToWebhook)"],"target_audience":["Developers","System integrators","Customer support / chatbot builders"]}


name: Hacker News Job Listing Scraper and Parser
author_name: Julian Kaiser
author_username: jksr
categories: []
created_at: 2025-02-17T09:05:52.229Z
updated_at: 2025-02-17T09:05:52.229Z
url: https://n8n.io/workflows/2924
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  This automated workflow scrapes and processes the monthly "Who is Hiring" thread from Hacker News, transforming raw job listings into structured data for analysis or integration with other systems. Perfect for job seekers, recruiters, or anyone looking to monitor tech job market trends.

  How it works

  Automatically fetches the latest "Who is Hiring" thread from Hacker News
  Extracts and cleans relevant job posting data using the HN API
  Splits and processes individual job listings into structured format
  Parses key information like location, role, requirements, and company details
  Outputs clean, structured data ready for analysis or export

  Set up steps

  Configure API access to [Hacker News](https://github.com/HackerNews/API
  ) (no authentication required)
  Follow the steps to get your cURL command from https://hn.algolia.com/ 
  Set up desired output format (JSON structured data or custom format)
  Optional: Configure additional parsing rules for specific job listing information
  Optional: Set up integration with preferred storage or analysis tools
  The workflow transforms unstructured job listings into clean, structured data following this pattern:

  Input: Raw HN thread comments
  Process: Extract, clean, and parse text
  Output: Structured job listing data

  This template saves hours of manual work collecting and organizing job listings, making it easier to track and analyze tech job opportunities from Hacker News's popular monthly hiring threads.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.splitOut","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.filter","n8n-nodes-base.splitOut","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.limit","n8n-nodes-base.stickyNote","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  [encoded data, 7328 characters]

metadata_json:
  {"categories":["integration","data extraction","automation","web scraping"],"complexity":"medium","use_cases":["Monitor monthly Hacker News “Who is Hiring” threads","Aggregate and analyze tech job listings","Feed job data into ATS, spreadsheets, or BI tools","Recruiter lead generation and candidate sourcing","Trend analysis of roles, locations, and requirements"],"estimated_setup_minutes":20,"required_services":["Hacker News API / HN Algolia (no auth)","Hacker News Firebase API (optional)","OpenAI (lmChatOpenAi node) — optional for advanced NLP parsing","Storage/analysis endpoints (optional): Google Sheets, Airtable, databases, BI tools"],"key_features":["Automatically fetches latest “Who is Hiring” HN thread","Extracts and cleans raw comment text via HN API","Splits thread into individual job listings","Parses structured fields: role, company, location, requirements","Uses AI/NLP to normalize and enrich listing data (optional)"],"target_audience":["Developers/engineers building integrations","Recruiters and talent sourcers","Data analysts tracking job market trends or metrics for reporting"]}


name: Send Email if server has upgradable packages
author_name: Hostinger
author_username: hostinger
categories: []
created_at: 2025-02-17T15:03:19.594Z
updated_at: 2025-02-17T15:03:19.594Z
url: https://n8n.io/workflows/2925
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:31
description:
  This workflow automates the routine check for upgradable packages on your Ubuntu server, ensuring you stay updated with the latest software patches and security improvements. By running a daily script, it efficiently monitors any available package upgrades and promptly notifies you via email, saving you time and enhancing your server’s security.

  How It Works:
  Daily Monitoring**: The workflow is configured to execute a script daily that connects to your Ubuntu server and checks for any upgradable packages.
  Email Notification**: If any upgradable packages are detected during the check, the workflow triggers an alert mechanism that automatically sends you a notification email detailing the available updates.

  Set Up Steps:
  SSH Credentials**: Provide the SSH login credentials for your Ubuntu server. This will allow the workflow to securely connect and perform checks for software updates.
  SMTP Credentials**: Provide SMTP login details for your email account. These credentials are used to configure the email notifications system, enabling it to send alerts about the upgradable packages.

  Benefits:
  Timeliness**: Receive prompt updates on critical software upgrades to maintain the optimal performance and security of your server.
  Automation**: Reduces the need for manual checks, allowing you to focus on other critical tasks with peace of mind.
  Customizable**: Easily adjust the checking frequency or update the notification settings according to your preferences.

nodes_used:
  ["n8n-nodes-base.ssh","n8n-nodes-base.emailSend","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","server monitoring","IT operations","security"],"complexity":"simple","use_cases":["Automated server package/update monitoring","Security patch awareness and compliance","DevOps / sysadmin alerting","Reduce manual maintenance checks"],"estimated_setup_minutes":10,"required_services":["Ubuntu server with SSH access (credentials)","SMTP email provider/account (credentials)"],"key_features":["Daily scheduled check for upgradable packages via SSH","Conditional logic to send email only when upgrades are found","Email notifications with upgrade details","Configurable schedule and notification settings","Minimal nodes and lightweight implementation"],"target_audience":["Sysadmins","DevOps engineers","IT managers / operations teams"]}


name: Import CSV files from Filesystem into Postgres
author_name: rpshu
author_username: rpshu1
categories: []
created_at: 2025-02-17T15:04:27.565Z
updated_at: 2025-02-17T15:04:27.565Z
url: https://n8n.io/workflows/2926
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  -- Disclaimer: This template is mainly made for self-hosted users who can reach CSV files in their file system. For Cloud users, just replace the first few nodes with your file system of choice, like Google Drive or Dropbox --

  How to automatically import CSV files into postgres

  1、project description
  This workflow demonstrates how CSV file can be automatically imported into existing PostgreSQL database.


  Before running the workflow please make sure you have a file on the server:
  /tmp/t1.csv

  The name of the test database is db01, and you can replace it.

  then create table t1
  create table t1(id int,name varchar(10));


  And the content of the file is the following:
  |id|name|
  |-|-|-|
  |1|a|
  |2|b|
  |3|c|

  2、Other
  If you want to import a custom csv file, please refer to the following methods.
  2.1、Create a table in the database
  SQL Commands:
  https://www.postgresql.org/docs/current/sql-createtable.html

  2.2、Upload csv file 
  Upload csv file to N8N server and make sure it can be read.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.readBinaryFile","n8n-nodes-base.spreadsheetFile","n8n-nodes-base.postgres"]

workflow_json_compressed:
  H4sIAAAAAAAAE41VTW/jNhD9KwIvexGzFPXtYxKkCdBstom7LRoYixE5stlKpFakvDEM//cFJTtxN3bRm0QO37w3nHncEiXJjHwrfvlUPa7+/u36+3X3pzEkJC06ILMtUdo60ALvfBwTvOZRKcsoiouoEphmMo5zWYkiwyxDLKK0ylAWnNdFmsaSxZAImUBR87RgKQmJw7ZrwOFVj9I+oRu6K9N2DTqUZOb6AXch0dAimZFb8z1wJoDBmRacEtA0m0C1neldcPX0JahVgzZQ2pmgM9Yte7Q+ASwtmT0vQqKNRP+5nUSWgDxnNacZxpwmECW0ABbTLE6qUmQZY4kkr8kfdCAaJf5Rehl8wBcUg8MPHn7T+W1daDri0wosXrSgB2jmvVousSch6YxVThlNZs80TlhIC7YISQc9tOiwt2S23U1YX7C3Y2C0Cw9EM4lRwkpaiqSgSZzmFABryjnjEkWSF1C+EX1EkMFNb9rgRjV4lmGPIC+Vhn6zDzumGJ2mSHyFP4NbkRn56Nruo4suhF2T89Q5rxjjsqZpVEuasDyhRZ5EVJSQp0lZZlHO3qhfGb3G3gVzEzx1nqBdIbqzEuxbzHsN2WkFpvP7Y73Ps2YoWIJJRiuMYpowEVNIIKEZy4u8qhmHqH5j/fmo107yPGrGI4IxP83QQdWg//j6tW+mEQhJa+QI7DOGZA3N4H9d5EtvxQpbOHOiUdYdneiGqlGChESAWKF8RDs07tOkY7+3C4kwzdCORTocnArDjrIdpkjJI91DW43tLpXtGtgcuPTYmrWf5xoaO/5/G1R/tLCP3xMZISXWMDTuHpxYHXAE6Ev83aKcm6P112vbV2dPxrpe6eUpMv+ZfA/y7/T7yDP5FyFpoeuUXt5PRfcOdQ/dne4Gdw0OvH36eKWXV4fSPnvOi5CA8w7o5mbf/PNN503qkHFavFHYSDs3T5OmaXcX/tTNokeJ2iloxqt7bbv97RGx/PXy4Y9bVLft3V/Dzcv7Fg5ACDNoR94NB79IvU4QTq3xlZ5F55RejikmT1RGP/QSezIj67E71xPC+FzEMa/rouRU5oLTBKOIFlFUUixT4NI/E5iTUbRGcVD2s6HNtqQF5SfoeTta+v8wjvFASJSW+OLbeLHYhWcc/RT8OUs9CXuGyync985xAnG3+wGRfyyjlQcAAA==

metadata_json:
  {"categories":["automation","integration","data processing"],"complexity":"simple","use_cases":["Automated CSV ingestion into PostgreSQL","ETL / batch data import","Migrating CSV files to a database table","Processing uploaded CSVs for analytics","Periodic or manual CSV-to-DB sync"],"estimated_setup_minutes":10,"required_services":["PostgreSQL database","Filesystem access on the n8n host (local file read)","Optional: Google Drive or Dropbox (for cloud-hosted setups)"],"key_features":["Read CSV from server filesystem (readBinaryFile)","Parse CSV into rows (Spreadsheets node)","Insert parsed rows into existing PostgreSQL table (Database node)","Template includes example file/table and SQL creation guidance","Simple 4-node workflow with manual trigger for testing"],"target_audience":["Self-hosted users","Developers","Database administrators (DBAs) / Data engineers doing imports','Analysts needing ad-hoc CSV imports"]}


name: Generate multispeaker podcast 🎙️ with AI natural-sounding 🤖🧠 & Google Sheets
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-02-17T15:49:59.027Z
updated_at: 2025-02-17T15:49:59.027Z
url: https://n8n.io/workflows/2927
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  This workflow automates the generation of multi-speaker podcasts using AI-powered text-to-speech technology. It starts by retrieving a podcast script from a Google Sheets document, where each speaker’s lines are clearly defined. The workflow then processes the script, generates a natural-sounding audio file with different voices for each speaker, and stores the final audio file in Google Drive.

  The workflow is designed to save time and resources by automating the podcast production process, making it ideal for content creators, marketers, and businesses that need to produce high-quality audio content regularly.

  How It Works
  Triggering the Workflow:
     The workflow starts with the When clicking ‘Test workflow’ node, which can be triggered manually to begin the process.

  Data Retrieval:
     The Get Podcast text node retrieves data from a Google Sheets document containing the podcast script. The document includes columns for the speaker's name and the corresponding text.

  Data Aggregation:
     The Get all rows node aggregates the data from the Google Sheets document, combining the speaker names and their respective text into a single dataset.

  Text Formatting:
     The Full Podcast Text node processes the aggregated data, formatting it into a single string where each speaker's text is prefixed with their name.

  Audio Generation:
     The Create Audio node sends a request to the API to generate a multi-speaker podcast audio file. The request includes the formatted text and specifies the voices for each speaker.
  When you register for the API service you will get 1$ for free. For continuous work add API credits to your account.

  Status Check:
     The Get status node checks the status of the audio generation request. If the status is "COMPLETED", the workflow proceeds; otherwise, it waits again.

  Audio Retrieval:
     The Get Url Audio node retrieves the URL of the generated audio file.
     The Get File Audio node downloads the audio file from the provided URL.

  Audio Storage:
     The Upload Audio node uploads the generated audio file to a specified Google Drive folder for storage.

  Key Features
  Multi-Speaker Support**: Generates podcasts with different voices for each speaker, creating a more dynamic and engaging listening experience.
  Google Sheets Integration**: Retrieves podcast scripts from a Google Sheets document, making it easy to manage and update content.
  AI-Powered Text-to-Speech**: Uses advanced AI models to generate natural-sounding audio from text.
  Automated Audio Generation**: Streamlines the process of creating podcast audio files, reducing the need for manual recording and editing.
  Google Drive Storage**: Automatically uploads the generated audio files to Google Drive for easy access and sharing.

  This workflow is ideal for businesses and content creators looking to automate the production of multi-speaker podcasts. It leverages AI to handle the complex task of generating natural-sounding audio, allowing users to focus on creating compelling content.

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

workflow_json_compressed:
  H4sIAAAAAAAAE52Wy27bRhSGX0WYtU4w94s2RZAiQbpoisZtFoEXZ2bOyIQpUiWpOIEhII/Rvl6epKASyJJNxbZ2hjz85zu3Of8tqzJbsNaW2NYpXlx8kL+922Q2ZysakC1uWdX0AzaJ3o7nUMeSgqLgTEKpFCZtKLsUpHTZ61QMSiWDEtxIE4TDjEUpIUnwbLSVbM4GWq1rHOhVR7l/T8Nm/apdrWsaKLPF0G1oO2cNrogt2BtqqMOBZqtNPVT9mvCautm6zQn7YXZTDVezl29nDQ6bDmvo202Tq2Y5wybP3rTtsqbZ+yuioR9vxWXPFh8v56xpM41/3n6PHIXinLQE51UEnWUGRBOAG5ESjaHykXpPNMz6AYfNTvPLevyt8Q3sRCFiTy+uhmH9J/2zoX5gc7Zu+2qo2oYtPo4XzUFYfjlna+xwRQN1PVvcbr9L/U1dvzupX8jt/AdeIcetKR64MBp0KgmCkgE8ZZdlwRDoAO8DVsPM8llP6cVJwBus7pMJuSe7oXjVtte7altLKHz2oDUhaJ40YJYeOPcG0VMuJrFHghEvxD6YoMnbRAGCshq0xAIRMwfvk1DSSRPsQTD7tvjlZChVuReI9k9LsTxIsTTJUSQLUcUEWkQByEmCDg6pSK1L4gcpvqJmluoqXY+t9u3rvxc09mLbXZe6vfn29b+TsCtsNlhfdNVySd0xN4gntsZdLhVJmQgFGCUSaJMzRCMMWOeyw1SMM3SQy47GOXq5yVX7/M719ozG5T5aoQTkmC3oYAiCMxl8jEFpobKz6niu/urqcwGF5vNn8lHgmURGcHxs8OIRUAQBWRC3smgr5T2+11V9dgaVfzZgomBF4hGsGofPFgeIkcBZ7y2ixKTiHeBf67rF/Ajecvco/tpVn+gYz/In4ak9nECUphQBQhYO2kkPyE2BIAOpQNlqd9B974cqXX+Z/d4OpE7C9btD45mHtQUh+AM6ltpmoGZgC8ZOz4nUJgdtHeQYBGjpIiDXBXJC4azKJaOaJNXnkfpzQbnOSnvhIShPoBUvEEkHsJLH8bFPJMUkqDkPVOkzQTWWQtZzEC560DFmQC8VGC6SR1WsjXkS1J4HavyZoFlwaWXIUJA86FwQvJEJtEYnnDQUjD0e8T9+WIuBPg+PTNHeWTxo1aeMubkbc8ycghbgcvLjmEcIMUvguQSrnENNB2V/vanrPeXFzyhTmyeG/Em7cc/mk3NchQQ80bhjuAR0RYMQOlqHHpULxwnEup517c1pd4TLZUdLvF9o9cS9LbaXc4ZpGF+wRcG6pznraRiqZrnrC/pMaTNqvusydWzBPomxQT59/35nalQM2asigLRRoLFk8DZw4CkVJ3Li2o4TldqmoTRK7YQPzMjilq2wGqk/3u7c5On9tTs3Z1WT6TNb8O3l/O6Taa/24IvL7fzQdU5dPmWUJnWOXMCU0jOZ9tWe0vpJq04KHm2wA8HdP4/AThXgvjE/yX1XqVNSU7v+pNzB4Sm96dV8Uu3oDTrF93DOJvUe1mCyfybN4aTg4+73FPH00zpxyXb7P76rTxuUDgAA

metadata_json:
  {"categories":["automation","integration","audio production","AI text-to-speech"],"complexity":"medium","use_cases":["Generate multi-speaker podcasts from scripts","Batch/automated audio production from Google Sheets","Repurposing written content into audio (episodes, promos)","Automated storage and organization of generated audio"],"estimated_setup_minutes":20,"required_services":["Google Sheets (API/credentials)","Google Drive (API/credentials)","AI Text-to-Speech API service (HTTP, requires credits)","n8n instance (workflow runner)"],"key_features":["Multi-speaker TTS with distinct voices","Google Sheets script retrieval and aggregation","Automated status polling for generation completion","Download of generated audio and upload to Google Drive","Text formatting and speaker-prefixing before TTS request"],"target_audience":["Content creators","Podcasters","Marketers and marketing teams producing audio content regularly」「Agencies and media teams"]}


name: Smart Email Assistant: Automate Customer Support with AI & Supabase
author_name: Badr
author_username: b4dr
categories: []
created_at: 2025-02-18T00:07:16.517Z
updated_at: 2025-02-18T00:07:16.517Z
url: https://n8n.io/workflows/2929
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:31
description:
  Intelligent Email Support System with Vector Database

  Overview

  This n8n workflow automates email support using AI and vector database technology to provide smart, context-aware responses. It seamlessly integrates email automation and document management, ensuring efficient customer support.

  📌 System Components

  ✉️ Email Support System

  Email Monitoring & Classification

     Gmail trigger node monitoring inbox
     AI-powered email classification
     Intelligent routing (support vs non-support inquiries)

  AI Response Generation

     LangChain agent for response automation
     OpenAI integration for NLP-driven replies
     Vector-based knowledge retrieval
     Automated draft creation in Gmail

  Vector Database System

     Supabase vector store for document management
     OpenAI embeddings for vector conversion
     Fast and efficient similarity search

  📂 Document Management System

  Google Drive Integration

     Monitors specific folders for new/updated files
     Automatic document processing
     Supports various file formats

  Document Processing Pipeline

     Auto file download & text extraction
     Smart text chunking for better indexing
     Embedding generation via OpenAI
     Storage in Supabase vector database

  🔄 Workflow Processes

  📧 Email Support Flow

  Monitor Gmail inbox for new emails
  AI classification of incoming messages
  Route support emails to AI response generator
  Perform vector similarity search for knowledge retrieval
  Generate personalized AI-driven response
  Create email drafts in Gmail

  📁 Document Management Flow

  Monitor Google Drive for new/updated files
  Auto-download and process documents
  Clean up outdated vector entries for updated files
  Extract and split document text efficiently
  Generate OpenAI embeddings
  Store processed data in Supabase vector DB

  ⚙️ Setup Instructions

  1️⃣ Prerequisites

  Supabase** account & project
  OpenAI API key**
  Gmail account** with OAuth2 setup
  Google Drive API** access
  n8n installation**

  2️⃣ Supabase Database Setup

  -- Create the vector extension
  create extension if not exists vector;

  -- Create the documents table
  create table documents (
    id bigserial primary key,
    content text,
    metadata jsonb,
    embedding vector(1536)
  );

  -- Create an index for similarity search
  create index on documents using ivfflat (embedding vector_cosine_ops)
    with (lists = 100);

  3️⃣ Google Drive Setup

  Create & configure two monitored folders:
    RAG folder for new documents
  documents
  Assign correct folder permissions
  Add folder IDs to the workflow

  4️⃣ Document Processing Configuration

  Set up triggers for file creation and file updates
  Configure text extraction:
    Define chunk size & overlap settings
    Set document metadata processing

  🔍 Maintenance & Optimization

  📌 Regular Tasks

  Monitor system performance
  Update the knowledge base regularly
  Review AI response quality
  Optimize vector search parameters
  Clean up outdated document embeddings

  ✅ Best Practices

  Document Organization

     Maintain structured folders & naming conventions
     Keep knowledge base content updated

  System Optimization

     Track AI classification accuracy
     Tune response times & chunk sizes
     Perform regular database maintenance

  🛠️ Troubleshooting

  Email Issues

     Verify Gmail API credentials
     Check AI service uptime
     Monitor classification performance

  Document Processing Issues

     Ensure correct file permissions
     Validate extraction & embedding processes
     Debug vector database insertions

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

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

metadata_json:
  {"categories":["automation","integration","data processing","AI/ML","document management"],"complexity":"complex","use_cases":["Automated customer support email handling and drafting","Context-aware AI responses using a knowledge base","Document ingestion, indexing and semantic search (RAG)","Automated routing/classification of incoming emails","Keeping a searchable vectorized knowledge base up to date"],"estimated_setup_minutes":120,"required_services":["n8n (self-hosted or cloud)","Supabase (Postgres with vector extension)","OpenAI API (embeddings + chat/completion)","Gmail account with OAuth2","Google Drive API / Google Workspace","Optional: LangChain agent or equivalent agent tooling"],"key_features":["Gmail inbox monitoring and AI classification/routing","LangChain/OpenAI-driven response generation","Supabase vector store for embeddings and similarity search","Automated document ingestion from Google Drive with text extraction and chunking","Embedding generation and index maintenance (insert/update/delete vectors)"],"target_audience":["Customer support teams","Developers / automation engineers","Knowledge base / content managers / librarians"]}


name: Generate a YouTube Bedtime Story using OpenAI
author_name: Samautomation.work
author_username: contactexpertly
categories: []
created_at: 2025-02-18T00:51:37.840Z
updated_at: 2025-02-18T00:51:37.840Z
url: https://n8n.io/workflows/2930
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Automated YouTube Bedtime Story Video Generator (No Code) n8n Workflow

  Free Support:

  Setting up and getting the workflow tailord to your needs.
  One small free adjustment included.

  Transform your creative ideas into enchanting bedtime story videos with this fully automated n8n workflow. Designed for content creators, digital marketers, and storytellers, this tool streamlines the process of turning audio recordings into professional, engaging YouTube videos.

  Samautomation.work
  You will have the best and cheapest video rendering service online. Check the website for more information. You can customize every video and change all these settings:

  Change the aspact ratio to 16:9 for long form content. Check the API docs for more information. 

      "settings": {
        "aspect_ratio": "9:16",
        "background_volume": 0.15,
        "voice_volume": 1.0,
        "font": "bangers",
        "font_size": 40,
        "text_color": "blue",
        "stroke_color": "white",
        "stroke_width": 10,
        "disable_captions": "true"

  More information on:
  Samautomation.work

  support
  Contact our whatsapp support if you have any questions, we are ready to assist with customizing the template if needed.

  Key Features

  Seamless Audio-to-Text Conversion:**  
    Utilize OpenAI Whisper to convert audio recordings into accurate transcripts, ensuring every word of your story is captured.

  AI-Powered Image Generation:**  
    Automatically generate beautiful, thematic visuals using advanced AI image tools that create captivating 16:9 backgrounds tailored for bedtime stories.

  Dynamic Video Compilation:**  
    Merge images, voiceovers, and background music into a polished video with a few clicks. Customize video length, style, and audio levels to match your vision.

  Automated YouTube Integration:**  
    Upload your videos directly to YouTube complete with autogenerated titles, descriptions, and metadata. Manage your content easily with real-time updates.

  Efficient Workflow Management:**  
    Track your projects via Google Sheets and receive instant notifications through Telegram, keeping you always in the loop.

  Cost Efficiency:**  
    Each video costs only 25 cents to produce, making this solution incredibly affordable for large-scale content creation.

  How It Works

  Capture & Transcribe:  
     Record your bedtime story and let OpenAI Whisper transcribe the audio into text.

  Generate Stunning Visuals:  
     Use integrated AI image generation to create dreamy visuals that complement your narrative.

  Compile Your Video:  
     Combine the visuals, transcripts, and background music into a complete video ready for distribution.

  Publish & Manage:  
     Automatically upload your video to YouTube, with all details saved and tracked in Google Sheets for seamless management.

  Who Is It For?

  This workflow is perfect for:
  Content Creators** looking to effortlessly produce engaging bedtime story videos.
  Digital Marketers** aiming to boost video content output without heavy manual intervention.
  Storytellers & Educators** who want to bring their narratives to life with a professional finish.
  Small Businesses & Startups** seeking scalable video production solutions.

  Setup Requirements

  API keys for OpenAI, Google Cloud Storage, and YouTube.
  Basic familiarity with n8n and API integration.
  A passion for storytelling and creative video production.
  Video Rendering with samautomation.work

  Start automating your video creation process today and captivate your audience with enchanting bedtime stories. With this workflow, you can save time, enhance productivity, and focus on what you do best—telling magical stories, all while keeping your production cost at just 25 cents per video!

  Ready to transform your content game?  
  Get your Automated YouTube Bedtime Story Video Generator now and start creating charming videos in minutes!

  Demo video
  Check out the link to the demo video of the end result. 

nodes_used:
  ["n8n-nodes-base.code","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleCloudStorage","n8n-nodes-base.youTube","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.googleCloudStorage","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.convertToFile","n8n-nodes-base.wait","n8n-nodes-base.googleCloudStorage","n8n-nodes-base.limit","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.telegram","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","media production","integration","content generation"],"complexity":"complex","use_cases":["Automated bedtime story video creation from audio","Batch-producing short-form YouTube videos","Repurposing audio content into visual videos","Educational storytelling and children’s content production","Automated upload and metadata management on YouTube"],"estimated_setup_minutes":60,"required_services":["OpenAI (Whisper for transcription, GPT/image APIs)","YouTube Data API (account and OAuth credentials)","Google Cloud Storage","samautomation.work (video rendering API)","Google Sheets API","Telegram (for notifications)","n8n instance/account"],"key_features":["Audio-to-text transcription with OpenAI Whisper","AI-powered image/background generation tailored to story scenes","Automated assembly of images, voiceover and music into video","Direct upload to YouTube with autogenerated titles/descriptions/metadata","Project tracking in Google Sheets and notifications via Telegram or webhook feedback loops\",\"Highly customizable rendering settings (aspect ratio, fonts, volumes, captions)"],"target_audience":["Content creators and YouTubers","Digital marketers and growth teams","Storytellers and educators producing children's content or audiobooks on video formats\",\"Small businesses and startups seeking scalable low-cost video production"]}


name: AI Agent with Ollama for current weather and wiki
author_name: Thomas Chan
author_username: tomkart
categories: []
created_at: 2025-02-18T04:00:45.136Z
updated_at: 2025-02-18T04:00:45.136Z
url: https://n8n.io/workflows/2931
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  This workflow template demonstrates how to create an AI-powered agent that provides users with current weather information and Wikipedia summaries. By integrating n8n with Ollama's local Large Language Models (LLMs), this template offers a seamless and privacy-conscious solution for real-time data retrieval and summarization.

  Who is this for?

  Developers and Enthusiasts: Individuals interested in building AI-driven workflows without relying on external APIs.
  Privacy-Conscious Users: Those who prefer processing data locally to maintain control over their information.
  Educators and Students: Learners seeking hands-on experience with AI integrations and workflow automation.

  What problem does this workflow solve?

  Accessing up-to-date weather information and concise Wikipedia summaries typically requires multiple API calls to external services, which can raise privacy concerns and incur costs. This workflow addresses these issues by utilizing Ollama's self-hosted LLMs within n8n, enabling users to retrieve and process information locally.

  What this workflow does:

  User Input Capture: Begins with a chat interface where users can input queries.
  AI Processing: The input is sent to an AI Agent node configured with Ollama's LLMs, which interprets the query and determines the required actions.
  Weather Retrieval: For weather-related queries, the workflow fetches current weather data from a specified source.
  Wikipedia Summarization: For queries seeking information, it retrieves relevant Wikipedia content and generates concise summaries.

  Setup:

  Install Required Tools:
  Ollama: Install and run Ollama to manage local LLMs.
  Configure n8n Workflow:
  Import the provided workflow template into your n8n instance.
  Set up the AI Agent node to connect with Ollama's API.
  Ensure nodes responsible for fetching weather data and Wikipedia content are correctly configured.
  Run the Workflow:
  Start the workflow and interact with the chat interface to test various queries.

  How to customize this workflow to your needs:

  Automate Triggers: Set up scheduled triggers to provide users with regular updates, such as daily weather forecasts or featured Wikipedia articles.

nodes_used:
  ["n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.manualChatTrigger","@n8n/n8n-nodes-langchain.toolWikipedia","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.lmChatOllama","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE+VXbW/cNhL+KwTTD3eAuKbeKQEFLk2Ri4Hm0muMFkUSBBQ5WvFCkTqR8sYw9r8fKO1mZXudOOjH+yZRM8OZZ5550S3uwXNc32JlnOdGwKXENc5zJhkrado2Rd4kkkKWFXHaiDSv4iLJWUNb2rQVS0UuszKlglKRJVlTloKnBccR9tAPmvvFXlKl8ersxQjSvQU/DS9sP2jwIHHtxwn2ETZWgsP1u1usgmZMaZukMiWigYpkOeOkgjYmpRB5KxrO2lTgCBveA67xW6/Epxv0L+shC/fdDOHUMENms6ThDjZuFgoyOMKDdcora3D9rsholGf0Q4QHPvIePIwuILNT0ne4TimNcAdq23lcJzSPsLDGg/G4xs+ePUNXHSBhzTWMjgeLqFPO2/Hmb5o7jxKKenCOb8H9HSmHwieQSBnEUTO1LYyoh96ON3i/+P07jG72K95HByyajLUVq1oioalIVlaCNHGREpq2tGKSUlGtsHhjkIEd6rmZuEYvOu7R68WDEzL/MMxcnODR3GxFx5XZLFpB6WpU2y2Md6FKGY2Sh1A97jqXkgGTLSmahJNMNJKwDEqSNpQWZZpCW8qT63+oT2oAqfgTPPXW6rX8yss4ZjQqvsvNqszyjDNCaSxJVrGCVKLJCUvjskiSCnhJz7It/W62Veyvsc1a7dCuU6JDfAvGI8ENmhwgbxEXItSVch3yHSDP3aev0CpPmryEMiFMiIpkrMhJxSklkqZNAmUbN1VyNuji+0uM0iguHg06S5JV0HF8P+gXq/Li+hD3TmmNJq+0coD4NVeaNzrAEAAKYBi3g3EGYhhtP/gN+goYrKVFnvKGpGXRkIw2FWlYWRAoKJPQSmhYtSaqkXaHfloK+PVSwE+orllw0VpM3IWpzGhU0IcwzWh89ovKL2C2AbSEPh5NnCZpWWU5gThLSdYWOWlompGS5W0OjYS8aU7RPL9EzwOkT4iAH+TWuT3fE3DwGNf4x9tb9MN/nDUbZYbJo/0eR9gOQXkWczfOQ3/sUDX+8U87IT4C4qgDPbSTRtw5FYaUj9BO+Q7tgPsupNZajbiRaKc+qfltg1plJLKTn/OuuVd+kjALaWu2y5syrR37pVnbFnGkrVjefAeHYurg7jWtHZGYxnFm3uHDfPXhubUjCO78Br20I9qCgZHr+aboZPCLm4GICymvFsAltMrAQ35uii85BaCFoG1GmkQCyZK8JFWZ5iQFkSSsTZqyylYMPfj16urqV/Qb/HcC95T8Bu9eeT+cNNZ9lSY0KpKHqZ5GjWvceT+4+uKCD2pjBzAkCNiNsP3FdXxxBAhH2IGR/55gvFmG/9ra4fgWX3M9HfaBQ0THZOKAyPHsmNP14fGmj5LfOBwtpkJRHJ9/He21kjAGWQVa/j4LrCx0dhr1zUo1LDAwcj+N8DHpv2HnQ8iitfpncGJUwwIefgledF8otDI4U2urrsEgYe0oleEe3EwRYz24S/NS290Rqnv0OJV8CnlBmWAkYWGElUAJbytJyrKkZZ7SVharkn+jNe/5YTuwEvQTuKH7IL5o3iVG/ggv+tlyjWeVdJPUYQmcKXBqAPt9hMUIEoxXXM9qdpZ/Pqh5Pw3BfX41/Qn09c//fOOqy+GnP06B/GIF1+gQjoPxWgnA+6/sUqksq6zNSFo2OckKwUglS0m4jCkrKS0E5GeH3nfPvJhmNIrPNEZhtR1xna1GXkbvj7xLg97OnfG4vEWISzm3kdZqbXfKbDfvzXvzHv8/NMz3+Mzs/jCDZkB8GSanhbC+xVx9DLq4fheaiJXnR91RKsLKSPiMa7r/ECr4YYUsJkM9THwLh7Nv2b4rfv+Ss136L7t+djtZrB7+Nb5ptz+uNPdAefzfIpQ7V+YbpmeRu1b3+/8BbzFY740OAAA=

metadata_json:
  {"categories":["AI / LLM","Integration","Automation","Data retrieval"],"complexity":"medium","use_cases":["Real-time current weather lookup via chat","Fetch and summarize Wikipedia articles","Privacy-preserving local AI assistants (self-hosted LLM)","Building conversational workflows that combine multiple data sources"],"estimated_setup_minutes":30,"required_services":["Ollama (local LLM host)","n8n instance","Weather data source/API (e.g., OpenWeatherMap or a public weather endpoint)","Wikipedia / MediaWiki API (accessed via toolWikipedia or HTTP requests)"],"key_features":["AI agent orchestrating actions based on user queries","Local LLM inference via Ollama for privacy-conscious processing","Current weather retrieval and integration into responses","Wikipedia retrieval and concise summarization","Chat input interface for user queries (manualChat node integration)"],"target_audience":["Developers and enthusiasts","Privacy-conscious users","Educators and students"]}


name: AppSheet Intelligent Query Orchestrator- Query any data!
author_name: Mohammed Rifad
author_username: rifadm817
categories: []
created_at: 2025-02-18T06:18:43.596Z
updated_at: 2025-02-18T06:18:43.596Z
url: https://n8n.io/workflows/2932
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-30 08:33:37
description:
  AppSheet Intelligent Query Orchestrator  

  A friendly, practical tool that makes working with AppSheet data simpler and more efficient. This workflow is your go-to helper for building precise queries without getting lost in a sea of different tables.  

  Background  
  Previously, I built a community node to enable this functionality: Appsheet n8n Community node

  How It Works  

  This workflow fetches the most up-to-date schema and taxonomy from your Google Sheet mirror and constructs a custom query using key components:  

  TableName**: Specifies exactly which table to query.  
  Selector**: Uses powerful functions like SELECT(), FILTER(), and CONTAINS() to filter data with precision.  
  Columns Required: Extracts only the essential fields, keeping the payload **lean and focused.  
  Natural Language Search Query: Provides a **clear, descriptive context that helps refine and re-rank results.  

  Real-World Use Cases  

  This orchestrator is designed for various industries, making data retrieval effortless:  

  📦 Supply Chain & Manufacturing  
  Find the right product based on specific attributes.  
  Locate suppliers that meet certain quality or pricing criteria.  
  Obtain details about the lowest-priced raw materials.  

  🛍 Retail & E-commerce  
  Match customer queries to the most relevant product listings.  
  Identify inventory levels and stock variations.  
  Compare pricing and product features across vendors.  

  🏥 Healthcare  
  Retrieve patient records based on specific attributes.  
  Track inventory of medical supplies.  
  Schedule and manage appointments dynamically.  

  🎓 Education  
  Monitor student attendance or performance metrics.  
  Allocate resources and track equipment usage.  
  Manage events and class schedules efficiently.  

  🔧 Field Services & Maintenance  
  Schedule maintenance tasks by matching service requirements.  
  Track asset conditions and inventory for field equipment.  
  Monitor work orders and dispatch field teams based on real-time data.  

  Examples: 

  Iterative Refinement  

  This workflow operates iteratively, refining the query until it finds the best match—even if it takes multiple rounds. This makes it incredibly versatile for complex inventory management, procurement, and precise data retrieval.  

  In a Nutshell  
  The AppSheet Intelligent Query Orchestrator is like having a smart assistant that:  
  ✅ Understands your data structure  
  ✅ Builds the perfect query every time  
  ✅ Handles a variety of real-world scenarios with ease  

  🚀 Practical, adaptable, and ready to tackle your toughest data challenges!

nodes_used:
  ["@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.limit","n8n-nodes-rifad-appsheet.appSheet","n8n-nodes-base.aggregate","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.googleSheetsTool","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","data processing","AI/ML","no-code"],"complexity":"complex","use_cases":["Generate precise queries for AppSheet-backed data","Fetch and use up-to-date schema/taxonomy from a Google Sheet mirror","Orchestrate queries across multiple AppSheet tables","Use AI to build and parse structured query results","Aggregate and transform query results for downstream workflows"],"estimated_setup_minutes":45,"required_services":["AppSheet API","Google Sheets (Spreadsheets) / Google Sheets API","Google Cloud AI (Gemini / lmChat) or equivalent LLM service","Webhook endpoint / HTTP access","n8n host or instance"],"key_features":["Automatically fetches schema and taxonomy from Google Sheet mirror","AI-assisted query construction (Google Gemini / LLM)","Structured output parsing and validation","Aggregation and limiting of results","Supports HTTP/Webhook triggers and integrations with AppSheet"],"target_audience":["AppSheet app creators","Citizen developers / no-code builders","n8n workflow builders and integrators (automation engineers)"]}


name: Convert RSS to tweet with text and image using free Twitter API
author_name: Víctor Manuel
author_username: grimvik90
categories: []
created_at: 2025-02-18T07:33:19.114Z
updated_at: 2025-02-18T07:33:19.114Z
url: https://n8n.io/workflows/2933
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  🎯 Who is this automation for?

  Perfect for content creators, marketers, and any X (Twitter) user looking to grow their account quickly without manual effort.

  ⚙️ How does this workflow work?

  ✔️ Auto-publishing: Whenever a new article appears in your RSS feed, a tweet is generated and posted on X.
  ✔️ Optimized content: A unique, engaging tweet with text and an image is created in under 280 characters. (Verified users can bypass this limit for longer tweets).
  ✔️ Free X API: No extra subscription costs for automation.
  ✔️ AI-powered: Use models like OpenAI, gemini and Perplexity, but you can configure your preferred model, whether free or paid.

  🛠️ Easy Setup

  📂 The downloaded file includes a step-by-step video tutorial. If you need help, I’m here for you!

  💡 Save time and grow your X audience efficiently with this n8n automation.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.rssFeedReadTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.html","n8n-nodes-base.twitter","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WX224bNxCGX2Wx15qUh+FJVw3Spg3QtEGSpgEMo+BhaC8qrdRdOrZrGOhr9PX6JMXKbqRYq1iSb/ZiQXK++Tkn3tRzKr6e3tRN2xffRnqV6mmtBOWgolNOOi0EsUDZRORILmtFVhPmjNrEjJQZtywE1GispGBlDq6e1IXmy5kv9KKj1L+jcrF8sZgvZ1Qo1dPSXdDtpG4Xifp6enJTN4NV7kXyznLIXAXAaBg4JzwQKaat84KcqSd16+dUT+t3pYl/XFc/Lwrxwd71cvjb2hZWx0LwPT3rV4uGNfWkXi76pjSLtp6eIJuAsOx0Ui995+dUqOsHFeKiLdSWelrXt3dnfqCuX+3ht5N7TqO5ClpkMIkyoDcJrLEGhPWorEKJho9yioM5gTM7oOojUWPiSengwXuWAUkgWJYQQgwx++CCDmIUVR6OOoCqYzWVPlI25MHZmAGFZBBy9KAyz8EgSubtKOgRkronSUoSKYvsIAsUgDFKcIEEGMd4RmeUU3JN+gOVqpxTNaRCXyrflSbOqMrdYr76n4nSThe6vn9JlN6ST++75uyMuoeuWMsmXGx5sptexOyNUBa4VQww8QzWSD74EWIwjmntR3XGI4TGpwktjNCZR3BeMkAeNdiQPHjjjKOYtPIbafaSSjynfiXqvcr//v1PX/34/vVP1f/2drlwXsryLf15QX3Z8oGxyfB9TGJ8Jj6TW8YDipggC+kAmTNgU4rgc5SGZc6Zimvy769K52O5Q5/7pq2auT/bHdjnZT7bqhJ7UvINSuF5ZJgtOMYSoIwOnNAKDJIIQVnDwkYgf9zJUy6bUh6GplAD0XY1eAi0xkkyOpcVQpTBAYrEwbGcQIoolMwoNG5E5gfqmnxdlUuiMlxvXzrftKXfSdnkLwGtZpMD6IThBkUOoD3nQ33yECQqCNZxFaMWWdFo3qiD84bLIW0kOzZtFIqcYoDhegEz5qHaW9DCipjQZpXYmvS7xWU7W/jUPxp0OzLkLsn54ze9mSDOihCM0OCiy4AyRwhRe5A8GDLRJs7kqJr68CqkxZOKEIbItZGASQ69Piew1mtglJxk2kYt3CipOZjUsKcMJdzG5KxXYJ0JgDkrsIgMkBT3UvNskh4FtYcHqB3GJ7nddvYjFUmSEkYBS9kAehuGMLBgs8HgLZmUxi/fHUwqVtVbHJtKVqBVTiGoGDhg1gSeSweKuZgl42jERtI/f1U9P/uiy3zb2vabNerMt2fx3DftM3+/blPUIUz5Nul2BTef+ZjUXOukwIqhmTMXITDuIKcQyMiYgtic7i7mc981f9Gq0fxGoW8KVc/fvKreULec0VVTro/okEP+jyj8tfQfBnmtUgDUyQO6wCEYK4C4Uzl40mIz/X9ZUvt2cVGoq16c+1K9XiSa7SHybD4sX+/e1ptvV4WvBEPCLKS3wKJmgEEb8MpHyCFIQTbmoNIa+tflUFXvimpVFtXHqqfuE3XVZVPOq/d3LXMl/qfdr5fdRXc1wu5Xc08nQ7C3FIe9q9j/HKjTm3qYN+rpycnN6jG2V2NdbZnUTZvoqp6y29PT28lWHxk7+jhNRs2Nx8T0pvbN70MEXPgzuv+3AbCdoVvLHxraNZyN+XdYgo36tVP9MXvb7mydOVmv3tnpR0H2GqfHoB6dZkfN7fVMGjN32Ng/anuvaztS/+H8g8J+zM7Hrxq4vf0Pz9ut8sURAAA=

metadata_json:
  {"categories":["automation","social media","integration","content marketing"],"complexity":"medium","use_cases":["Auto-publish new RSS articles to X (Twitter)","Repurpose blog posts into short social updates","Social media growth and audience engagement","Automated content scheduling with images","AI-powered tweet summarization and optimization"],"estimated_setup_minutes":15,"required_services":["n8n instance","RSS feed URL(s)","X (Twitter) developer account / API credentials (free tier supported)","Optional AI provider (OpenAI, Google Gemini, Perplexity, OpenRouter or other LLMs) for text/image generation","Optional hosting or accessible image URLs if images are not embedded in RSS"],"key_features":["Automatically detects new RSS items and posts to X","Generates optimized tweet text (under 280 chars) using AI","Attaches an image to the tweet when available","Supports multiple LLM providers and configurable model choice","Uses free Twitter API workflow (no extra subscription required for automation setup described in template)"],"target_audience":["Content creators","Social media managers and marketers","Bloggers and publishers wanting syndication automation"]}


name: Get notified when Meta Ads balance is low
author_name: Solomon
author_username: solomon
categories: []
created_at: 2025-02-18T12:56:14.123Z
updated_at: 2025-02-18T12:56:14.123Z
url: https://n8n.io/workflows/2936
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Receive a notification when your Facebook Ads balance drops below a set limit.

  How it works

  There are two methods to determine your available balance, depending on your account's billing setup.

  This template gives you both methods, so you can choose the one that best fits your situation.

  You can also replace the Telegram node with another chat app, like WhatsApp, Slack, Discord, Twilio or even Email.

  Who is this template for?

  Marketing professionals who want to automate low balance notifications, so they don’t have to check their balance all the time.

  How to set up

  All information you need to set up this workflow is already inside the template.

  Check out my other templates

  👉 https://n8n.io/creators/solomon/

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.noOp","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.facebookGraphApi","n8n-nodes-base.facebookGraphApi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WW227bRhCGX4XYa46x54NuCjdogqJJDNRuAiTwxezurEREIgWKtmO4eveCcmI5MVUfcivM/vzm15xuWJPZjPXd329P2xY/vMnmL9ciq9mKBmSzG9a0mwHbRH+OcdlGw2UuqHPImTuZcjJJxuisMsZbK7hRxRohfZBBKCPRa80VcRFVFpHVbKDVeokDveopb05puFi/6lbrJQ2U2WzoL2hbsxZXxGbs7Fto9W/1hoaq7YamNJSrqwW11TsasDrOmyricuSrmk217K7GL+B8w2afb25Ts+I4+ON/3r+++vjp43F5xe7kv5OwmqWecKB8PLAZk1xq4A6kPpNyxuVM8iOj1CdWs4t1fjxse16ztst0j4FQ21h8gcy5BR2lAoweITnvo0eVjJR7rj8uqb+uhFyMuVyvx59a38JOEyJu6GiTFpQvlnTWN/M59axm627TDE3XstlnEJzzWvLzmq2xxxUN1G/Y7GZ7q/aB+s0uUBzJbf0N0FmlnScHIZcAWgYNIWkHHn0WsrhghN4Dvu+qkzX1OH6wrnI3/jOLpp0f5G27k/VPkJbX4gmMd4QZS8loIwQrOGiRMwQhE1AuxUnNXUZxz8LcDNXrhpZ5Iw67SMNPUEbzWulHqdSRvuNS1kttXAGehALNkwbUnkMIovjo0HHie67ToUlfrqv33a7qDmDtYr6F/GgZr+VDOpa6dqB2rEl22L8SbcmFIyiRDGjPJSA5C9o6jdHLQl5Ocv6Pf4dAhZ0swKeBepMVuuBAOCdAl2QhWOSAQqVQSnG85ElQ+QJQKV8OKowyGKwEGUsGrZWAkKWBwj1PLkln0U+CqheAcjtZmU+0lBKFaC1YbzhoLSJ4gwWsdUmHJA3m6d55Zus83s/3OydxkyhqCyFSBC2FAC91AZ9ESI4ECmMm/dPP909JXsPEvHmaf0pKI9EZEFwI0CQ8BEQNJXnvdEF0Pu5J33ZX1FfDAttKc179dpC2KROUj3so781tHT3FJDQInhXolAKgdAqKkT4KYQj1vbl9Sm2uVrTZ4Pzw+BloSfMeVw/nNdiR7Yriouu+7M4B0jaInCI4zRE0KQWeTIZA0UWPLnAch9+T15DgyTmpJBBFMbYUArrgwZboNCpptbL7dN7RsOhydbjvCyaKXfflTY/rxfG6Ga8a/HrWN+NuNj/m56YbbFuznob++qR9jc3y9kD5OYGaXWEz/E7DFVH7XZ1zfpdWDFmbPK5/4hp04BqiNQpCiQmDjMYW9SCtw3P3uWlNltSvZyVLDknlADwZBdpqDt57gkwWqSihk1ST/Wuf37/yVwa1L9p5FRAstwW0pgyoXIIYYoiipOAsToK654OOfoPkLySNshTutYZsYwBtrALPlQGrnCeJtpRUJknNS66JF4Ce1wzT0FwSmxVcbqhmGxqGpp3vntJXShej/kmfqWczdilGjcvb97uJEQR32noLPgoCnU0BNEkBL9lmWZREOW731LUtpVFqJ3zXErMbtsJm5P98szuyD+2rXVTNmjbTVzbj2/Pzbb0fGI/IiEd09gf6lNDD/p0WuYc9JXN4jUzKPQif0pxeAA/06v2Lx0/9CZrt9j/0ggUAVw4AAA==

metadata_json:
  {"categories":["automation","monitoring","marketing","integration","notifications"],"complexity":"medium","use_cases":["Notify when Meta/Facebook Ads account balance falls below a threshold","Prevent ad campaigns from pausing due to low balance","Automated billing/finance monitoring for ad spend","Send alerts to team chat or messaging apps about account balance"],"estimated_setup_minutes":15,"required_services":["Meta/Facebook Ads (Facebook Graph API) – access to ad account billing info","Telegram (optional: Slack, WhatsApp, Discord, Twilio or Email can be swapped in for notifications)"],"key_features":["Periodic scheduled checks of ad account balance","Two methods to determine available balance to support different billing setups","Conditional logic to compare balance against a configurable threshold","Push notifications to chat apps (Telegram by default) with the ability to swap channels","Minimal nodes and configuration included in the template for quick setup"],"target_audience":["marketing professionals","ad operations teams","digital advertisers', 'small business owners"]}


name: Chat with your event schedule from Google Sheets in Telegram
author_name: Daniel Nolde
author_username: dnolde
categories: []
created_at: 2025-02-18T14:16:36.763Z
updated_at: 2025-02-18T14:16:36.763Z
url: https://n8n.io/workflows/2937
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  What it is

  Chat with your event schedule from Google Sheets in Telegram:

  "When is the next meetup?"
  "How many events are there next month?"
  "Who presented most often?"
  "Which future meetups have no presenters yet?"

  This workflow lets you chat with a telegram bot about past, present and future events that are scheduled in a Google Spreadsheet.

  (Info: This proof-of-concept was created as a demo for a hackathon of an AI & Developer Meetup in Da Nang (Vietnam) that uses a telegram group to organize)

  Who it is for

  If you want an easy way for your audience to get information about your events, you can us this workflow for the same purpose, or easily adapt it to your needs and different use-cases where you want to query smaller amounts of tabular data in natural language.

  How it works

  Upon getting triggered by a chat message to a telegram bot, the schedule of meetups is retrieved from Google Spreadsheets, converted into a markdown table syntax and fed into the system prompt of an LLM (we're using OpenRouter in this example), whose output is posted back as answer into the same telegram chat.

  Setup steps

  TO REVIEWING IN ACTION

  As the reviewer of this workflow, you can temporarily use it via an existing telegram bot, simply point your telegram client to https://t.me/AiDaNangBot and start to ask questions like:
  "When is the next meetup?"
  "What future meetings do not have presenters?"
  "Who presented on Future of Human Relationships?"

  To build upon this workflow:

  Import the workflow
  Customize the Google Docs credentials for your individual access
  Create a telegram bot and connect it to the workflow by entering its API token into the credentials used in the telegram trigger node
  In the "Settings" node, replace the "scheduleURL" with the URL of your own copy of the Google Spreadsheet or a copy of the Event Schedule Template Sheet to spin off your own – whereby the structure of the spreadsheet doesn't matter, it's just important that you semantically structure your information in dedicated columns clearly labeled in the header row.

nodes_used:
  ["n8n-nodes-base.telegram","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.switch","n8n-nodes-base.telegram","n8n-nodes-base.noOp","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4844 characters]

metadata_json:
  {"categories":["automation","integration","chatbot","data processing","ai/llm"],"complexity":"medium","use_cases":["Chatbot access to event schedules","Natural-language querying of tabular data","Providing event info to attendees in Telegram","Automating event Q&A for community groups","Prototype/demo for LLM-driven data queries"],"estimated_setup_minutes":30,"required_services":["Google Sheets (spreadsheet with event data)","Telegram Bot API (bot token)","LLM service (OpenRouter, OpenAI, or compatible)","n8n instance"],"key_features":["Reads event schedule from Google Sheets and converts to markdown table","Injects table into LLM system prompt to answer natural-language questions","Replies directly into the triggering Telegram chat","Configurable schedule URL and credential nodes","Proof-of-concept workflow with editable nodes for customization"],"target_audience":["Event organizers","Community managers","Developers building chatbots or automations with n8n"]}


name: Googleform submission to create a Github issue bug report
author_name: xerang
author_username: chrisv
categories: []
created_at: 2025-02-18T17:32:20.487Z
updated_at: 2025-02-18T17:32:20.487Z
url: https://n8n.io/workflows/2938
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:33
description:
  Automated Workflow for Google Form Submissions, GitHub Issues, and Discord Notifications

  This workflow streamlines how new Google Form submissions are processed by automatically creating GitHub issues and sending real-time notifications to a Discord channel through a webhook.

  Who Is This Template For?
  Developers** looking to centralize bug reporting and issue tracking.  
  Project Managers** seeking an efficient way to log tasks and updates.  
  QA Teams** that need a fast, automated process for reporting and resolving issues.  

  Workflow Overview

  Google Form Trigger  
     The workflow begins with a Google Sheets Trigger node that checks for new form submissions every minute.

  Add New Form Submissions to Google Sheets  
     Each new submission is recorded in a dedicated Google Sheet for easy reference and archiving.

  Filter Out Already Posted Issues  
     An If node checks if the issue is already posted on GitHub by looking for an existing GitHub link in the sheet.

  Format Message / Output Parsing  
     If the issue is new, an OpenAI Chat Model node generates a structured output, including a title, description, and suggested fix.

  Add Issue to GitHub  
     The structured output is used to create a new issue in the specified GitHub repository.

  Send Notification to Discord  
     A Discord webhook is triggered to send a notification to your chosen channel, including a link to the newly created GitHub issue.

  Add GitHub Link to the Sheet  
     The GitHub issue link is added back to the Google Sheet for easy cross-referencing.

  Setup Steps

  1. Google Sheets Setup
  Create/Designate a Google Sheet:** Ensure it’s set to receive form submissions.  
  Configure the Trigger Node:** Provide the correct document ID and sheet name in the Google Sheets Trigger node.

  2. OpenAI Configuration
  API Credentials:** Set up the OpenAI Chat Model node with valid OpenAI API credentials.  
  Prompt Definition:** Create a prompt that formats the form submission data into a structured output (e.g., title, description, suggested fix).

  3. GitHub Configuration
  OAuth Credentials:** Configure the GitHub node with your GitHub OAuth credentials.  
  Target Repository:** Specify the repository where new issues should be created.

  4. Discord Webhook
  Webhook URL:** Obtain a webhook URL from your Discord server.  
  Notification Setup:** Use the HTTP Request node to send notifications to your chosen Discord channel.

  5. Google Sheets Update
  Document & Sheet Name:** Provide the same Google Sheet details used in the first step.  
  Add GitHub Link:** Update the corresponding row with the newly created GitHub issue link.

  Recommended Google Sheet Columns
  Timestamp**: Automatically recorded when the form is submitted.  
  Issue Title**: Generated by the OpenAI Chat Model.  
  Issue Description**: Detailed breakdown of the issue.  
  GitHub Link**: Automatically populated once the issue is created.  
  Discord Notification Status** (optional): Indicates whether the notification was sent successfully.

  Additional Notes
  Duplicate Prevention**: The conditional logic ensures existing issues aren’t recreated on GitHub.  
  AI-Powered Formatting**: OpenAI helps structure the issue details, providing clarity for developers.  
  Real-Time Alerts**: Discord notifications keep your entire team updated on new issues as they arise.

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.if","n8n-nodes-base.noOp","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.github","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WXWW/bRhCA/wqxz5pk70NPTRMk9UPioinSAoFR7DErE5FIlVzFcQ3/94KUY0kJ1cjqiyBRszMfZ2bnuCN1InPywnx4h/+86l/9mW1ZXHwhM7LC4sn8jtRNX3wT8WKQw+y8FCpFlYPgwgrOjERURlPHFM/IBecarfSUWi6MtdkHL9AnlqRKicxIwdV66Qu+7DD177Fs1i/b1XqJBROZl26D9zPS+BWSOXmT225VlbZa1OV6E4bDftGT+cerGWnahMPXu+0LUCVU9EkA2shBoqAQMjXgdDQxpeiZUORR8eUamxcX1ctrX6q3bcLloPp2Pfz1U2Ob541tYDQAS98s4rWvm2fL1SA+nqzJjKzbvi5125D5R2XpjFN6NSNr3/kVFux6Mr+73+r8gF0/yrFn/H72gJtQORskQtJMgJTUgjXWgUbKuU2ZqeR2uH/UTWpvqp83OWNXvcVV292eQLwaBbentioOuY08kVs8clvtLWU8A2Nh4OYcrIwRoo9GByFi0HbH/b50m1g2HabqclPWm1L96rseuxPY21F+K75Tc8jv6JP9bgKTjDEHIkkEKSUHbxUDKpyk0QfrjNjxX+Qd6Q4y+B6f1fmQhWs6A/tDFr7HorjRMtsEQpkAkmUHnisHOkdqqBOOpbhjeV0vC3ZVuymVX3bo0221bvuCqar7foP9UdKmvVwfsrLBb/LHfnskRc+51jKDTTGC1NlDsCpCdC76RC1DSXekw6X1pVph3/sFVs+3oazWvuvrZnFC7P0Cm3KIrCWdgT4h1GYHzR3zihowKmSQkQrwKXDghkWTspNZsh30i5SqBm+q10PF6TdhVfeDyn6oPm/adrHE6v01Yjnu58Uo9Si0nxsnpYZ8ph7ZveIqaiaBU4YgtQ4QuBVguchaOO2zyDv2B74R/feuXiz2b9h/UO5k92CBn4a7y46kYmaZCgguKpBBI1hBAyRUTAgtWZTq0NFjxo6ercsv27o+Dfu17O8nL7OnpcIjH2NCR6M58JQ8SOoQrLYOrFIChdI2jX3pa83CJlVNW+pcRz/YHDhT3ce2S9VNtaybT0d5r0tZ/4Z/b7D/Jn2ZPA1a7pUHx1hImiWgJiNIyx34HBU4ykVITiVlzKFb34zuGhEH6HKNVT8E+oyUZUafCLxL2kyDcJ4jUBkQZHQWrLUGZAiRW6dFVge9oY6fbqt3bcGjfP0o8yBykKMDHfsej8S2KUPxmBNyPCGktVrYzEGmkEDGkCFwaiEnz7RizjA5DcqeTDpeprNBg84Ks1TAhcsghRXgMHhQgnKeZbBIxSQofzLoMMOcD+pEkF4JD9S4BBJdACe1BxWst1zoHJ2bBBVPBmVD9zqfNLrITTAaVM4JZFYUgsYIzHEnJAapVZoklU8nNf+LFKUTRvMIyXkzXCcJNjgG1iMyp4y1Pk6SqqeTyrPS9GpGfCz1Z9zO7TPSYyl1s9ie9Msldr+2yzrekjm5abtPedne9K+7dvXer/DyphlbD37BuBk4LruEHZmTz2ww9Xlr5mLbYBQy7zPwIClIgxoCZQZ00CEzGr0Xw32NbdNgHFSNABd5+Fz5enjDj3fjwvCE6WQ8OCN1k/ALmdP7q9lOx+mz2Hdaru5nE9vH/I74+q9hAtr4BT48OwP6OyXfmp7qvlNeelIXnHzJqaFkytIZg9ekvckdaevX1cOP8xy6+rpuHdo7uttsbe7vL+daPtAxFcmjDX/P0aPwD4wei8vROW0yAqfkzDFLPx5dJk2enjxThvfXuwn19/f/AoE+YD8dEQAA

metadata_json:
  {"categories":["automation","integration","issue-tracking","notifications"],"complexity":"medium","use_cases":["Centralize bug reports from Google Forms into GitHub Issues","Automated creation of structured issue descriptions using AI","Real-time team alerts via Discord webhook","Prevent duplicate issue creation by checking sheet records","Maintain an audit trail of submissions in Google Sheets"],"estimated_setup_minutes":30,"required_services":["Google Sheets (Google Forms responses)","OpenAI (Chat / output parsing)","GitHub (Issues API / OAuth)","Discord (Webhook)"],"key_features":["Automatically create GitHub issues from new form submissions","OpenAI-powered formatting to generate title, description, and suggested fix","Duplicate detection by checking existing GitHub links in the sheet","Send Discord notifications with links to newly created issues","Write back GitHub issue link to the Google Sheet for cross-reference"],"target_audience":["Developers","Project Managers","QA Teams"]}


name: n8n Subworkflow Dependency Graph & Auto-Tagging
author_name: Ludwig
author_username: ludwig
categories: []
created_at: 2025-02-18T23:34:10.804Z
updated_at: 2025-02-18T23:34:10.804Z
url: https://n8n.io/workflows/2939
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  How it Works
  As n8n instances scale, teams often lose track of sub-workflows—who uses them, where they are referenced, and whether they can be safely updated. This leads to inefficiencies like unnecessary copies of workflows or reluctance to modify existing ones. This workflow solves that problem by:

  Fetching all workflows and identifying which ones execute others.
  Verifying that referenced subworkflows exist.
  Building a caller-subworkflow dependency graph for visibility.
  Automatically tagging sub-workflows based on their parent workflows.
  Providing a chart visualization to highlight the most-used sub-workflows.

  Set Up Steps
  Estimated time: ~10–15 minutes
  Set up n8n API credentials to allow access to workflows and tags.
  Replace instance_url with your n8n instance URL.
  Run the workflow to analyze dependencies and generate the graph.
  Review and validate assigned tags for sub-workflows.
  (Optional) Enable pie chart visualization to see the most-used sub-workflows.

  This workflow is essential for enterprise teams managing large n8n instances, preventing workflow duplication, reducing uncertainty around dependencies, and allowing safe, informed updates to sub-workflows.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.n8n","n8n-nodes-base.code","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.n8nTrigger","n8n-nodes-base.n8n","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.merge","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.aggregate","n8n-nodes-base.quickChart","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.respondToWebhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 9840 characters]

metadata_json:
  {"categories":["workflow management","automation","observability","governance"],"complexity":"medium","use_cases":["Discover caller → sub-workflow dependencies across an n8n instance","Automatically tag sub-workflows based on parent workflows for governance","Verify referenced sub-workflows exist to prevent broken calls","Reduce workflow duplication and enable safe updates to shared sub-workflows","Visualize most-used sub-workflows to prioritize refactoring"],"estimated_setup_minutes":15,"required_services":["n8n instance / API access (instance_url and credentials)","Optional: n8n charting/visualization enabled for pie chart display"],"key_features":["Fetch all workflows and detect which workflows execute others","Verify existence of referenced sub-workflows","Build caller↔sub-workflow dependency graph for visibility","Automatically assign tags to sub-workflows based on parent workflows","Pie chart visualization highlighting most-used sub-workflows for prioritization"],"target_audience":["n8n administrators","Automation engineers","DevOps/SRE teams managing n8n at scale (enterprise)`,`Workflow owners and architects"]}


name: 🔥📈🤖 AI Agent for n8n Creators Leaderboard - Find Popular Workflows
author_name: Joseph LePage
author_username: joe
categories: []
created_at: 2025-02-19T01:38:03.072Z
updated_at: 2025-02-19T01:38:03.072Z
url: https://n8n.io/workflows/2940
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:31
description:
  n8n Creators Leaderboard Workflow

  Why Use This Workflow?

  The n8n Creators Leaderboard Workflow is a powerful tool for analyzing and presenting detailed statistics about workflow creators and their contributions within the n8n community. It provides users with actionable insights into popular workflows, community trends, and top contributors, all while automating the process of data retrieval and report generation.

  Benefits
  Discover Popular Workflows**: Identify workflows with the most unique visitors and inserters (weekly and monthly).  
  Understand Community Trends**: Gain insights into what workflows are resonating with the community.  
  Recognize Top Contributors**: Highlight impactful creators to foster collaboration and inspiration.  
  Save Time with Automation**: Automates data fetching, processing, and reporting for efficiency.

  Use Cases
  For Workflow Creators**: Track performance metrics of your workflows to optimize them for better engagement.  
  For Community Managers**: Identify trends and recognize top contributors to improve community resources.  
  For New Users**: Explore popular workflows as inspiration for building your own automations.

  How It Works

  This workflow aggregates data from GitHub repositories containing statistics about workflow creators and their templates. It processes this data, filters it based on user input, and generates a detailed Markdown report using an AI agent.

  Key Features
  Data Aggregation: Fetches creator and workflow statistics from GitHub JSON files.
  Custom Filtering: Focuses on specific creators based on a username provided via chat.
  AI-Powered Reports: Generates comprehensive Markdown reports with summaries, tables, and insights.
  Output Flexibility: Saves reports locally with timestamps for easy access.

  Data Retrieval & Processing
  Creators Data**: Retrieved via an HTTP Request node from a JSON file containing aggregated statistics about creators.
  Workflows Data**: Pulled from another JSON file with workflow metrics like visitor counts and inserter statistics.
  Data Merging**: Combines creator and workflow data by matching usernames to provide enriched statistics.

  Report Generation
  The AI agent generates a Markdown report that includes:
  A summary of the creator’s contributions.
  A table of workflows with key metrics (e.g., unique visitors, inserters).
  Insights into trends or community feedback.

  The report is saved locally as a file with a timestamp for tracking purposes.

  Quick Start Guide

  Prerequisites
  Ensure your n8n instance is running.
  Verify that the GitHub base URL and file variables are correctly set in the Global Variables node.
  Confirm that your OpenAI credentials are configured for the AI Agent node.

  How to Start
  Activate the Workflow: Make sure the workflow is active in your n8n environment.
  Trigger via Chat: Use the Chat Trigger node to initiate the workflow by sending a message like:  
     show me stats for username [desired_username]  
     Replace [desired_username] with the username you want to analyze.
  Processing & Report Generation: The workflow fetches data, processes it, and generates a Markdown report.
  View Output: The final report is saved locally as a file (with a timestamp), which you can review to explore leaderboard insights.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.limit","n8n-nodes-base.aggregate","n8n-nodes-base.filter","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.executeWorkflowTrigger","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.convertToFile","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.readWriteFile","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOllama","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.splitOut","n8n-nodes-base.splitOut","n8n-nodes-base.sort","n8n-nodes-base.sort","n8n-nodes-base.limit","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 10192 characters]

metadata_json:
  {"categories":["automation","integration","data processing","analytics"],"complexity":"complex","use_cases":["Track workflow performance metrics for creators","Identify popular workflows and community trends","Recognize and highlight top contributors","Generate automated Markdown reports for sharing or archival","Explore popular workflows for inspiration"],"estimated_setup_minutes":30,"required_services":["GitHub (public JSON files or repo raw URLs)","OpenAI (lmChat/OpenAI API)","n8n instance (with Chat Trigger enabled)","Local filesystem access for saving report files"],"key_features":["Aggregates creator and workflow statistics from GitHub JSON files","Custom filtering by username via chat trigger","Merges creator and workflow data to produce enriched metrics","AI-powered Markdown report generation with summaries and tables","Saves timestamped reports locally for easy access and tracking"],"target_audience":["n8n workflow creators","Community managers","Developers/automation engineers analyzing adoption metrics\",\"Data analysts interested in community trends"]}


