# templates

name: Publish image & video to multiple social media (X, Instagram, Facebook and more)
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-04-23T10:11:00.160Z
updated_at: 2025-04-23T10:11:00.160Z
url: https://n8n.io/workflows/3669
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  This Workflow streamlines the process of publishing posts (image or video) to multiple social media platforms using a unified form and a third-party API service called Upload-Post.

  The automation starts with a form trigger, allowing users to submit content (text and media) through a simple frontend interface. Users select the platform (Instagram, LinkedIn, Facebook, X, TikTok, Threads), choose the profile name, write a caption, and upload a photo or video.

  How It Works  
  Automates cross-platform social media posting via Upload-Post, handling both images (JPEG) and videos (MP4). Here’s the process:  

  Trigger**:  
    A form submission captures user inputs:  
      Platform (Instagram, LinkedIn, Facebook, X, TikTok, Threads).  
      Account (pre-configured profile name).  
      Caption and file (image/video).  
      Optional Facebook Page ID for targeted posting.  

  Routing**:  
    The "Video or Photo?" Switch node checks the file’s MIME type:  
      Image: Routes to the "Post photo" HTTP node (uploads via upload_photos API).  
      Video: Routes to the "Post video" HTTP node (uploads via upload API).  

  API Integration**:  
    Both nodes send data to Upload-Post.com’s API, including:  
      Caption, account name, platform, and file binary.  
      Facebook ID (if provided).  

  Success/Failure Handling**:  
    The "Result Photo/Video" nodes parse the API response.  

  Setup Steps  

  Prerequisites:  
  Upload-Post.com API Key**:  
    Get it from the API Keys dashboard.  
    Free tier allows 10 uploads/month.  

  Configuration:  
  API Authentication:  
     In the HTTP Request nodes (Post photo/Post video), set the Authorization header:  
       Name: Authorization  
       Value: Apikey YOUR_API_KEY_HERE.  

  Form Customization:  
     Adjust the "On form submission" node to:  
       Add/remove platforms (e.g., YouTube when approved).  
       Modify file type restrictions (default: .jpg, .mp4).  

  Account Mapping:  
     Ensure the "Account" field matches profiles configured in Upload-Post.com (e.g., test1, test2).  

  Facebook Page Integration:  
     Optional: Add a Facebook Page ID field for page-specific posts.  

  Testing:  
     Submit test forms with images/videos.  
     Verify API responses and success/failure messages.  

  Optional Enhancements:  
  Add error logging (e.g., save failed attempts to a database).  
  Extend to YouTube once API support is confirmed.  

  Key Features:  
  Multi-Platform**: Post to 6+ social networks simultaneously.  
  User-Friendly**: Simple form interface for non-technical users.  
  Error Handling**: Clear feedback for success/failure cases.  

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

nodes_used:
  ["n8n-nodes-base.formTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.form","n8n-nodes-base.form","n8n-nodes-base.form","n8n-nodes-base.form","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","social media management","content publishing"],"complexity":"medium","use_cases":["Cross-posting image and video content to multiple social platforms","Simplified content publishing for marketing teams or individuals","Front-end form for non-technical users to publish posts","Targeted Facebook Page posting via Page ID"],"estimated_setup_minutes":20,"required_services":["Upload-Post.com API (API key)","Configured social media accounts/profiles on Upload-Post (Instagram, LinkedIn, Facebook, X, TikTok, Threads)","n8n instance (or hosted n8n) to run the workflow","Optional frontend/form hosting if not using n8n's built-in form trigger"],"key_features":["Multi-platform publishing (6+ networks)","Supports image (JPEG) and video (MP4) uploads","Single unified form for caption, account selection and media upload","Automatic routing based on MIME type (photo vs video)","Account/profile mapping to Upload-Post configured names, optional Facebook Page ID support for page posts






























































  "],"target_audience":["Social media managers","Marketing teams and small business owners","Content creators and agencies wanting streamlined cross-posting





  "]}


name: Medical Q&A Chatbot for Urology using RAG with Pinecone and GPT-4o
author_name: HoangSP
author_username: hoangsp
categories: []
created_at: 2025-04-23T10:20:39.925Z
updated_at: 2025-04-23T10:20:39.925Z
url: https://n8n.io/workflows/3670
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-30 08:33:37
description:
  Medical Q&A Chatbot for Urology using RAG with Pinecone and GPT-4o

  This template provides an AI-powered Q&A assistant for the Urology domain using Retrieval-Augmented Generation (RAG). It uses Pinecone for vector search and GPT-4o for conversational responses.

  🧠 Use Case

  This chatbot is designed for clinics or medical pages that want to automate question answering for Urology-related conditions. It uses a vector store of domain knowledge to return verified responses.

  🔧 Requirements

  ✅ OpenAI API key (GPT-4o or GPT-4o-mini)
  ✅ Pinecone account with an active index
  ✅ Verified Urology documents embedded into Pinecone

  ⚙️ Setup Instructions

  Create a Pinecone vector index and connect it using the Pinecone credentials node.
  Upload Urology-related documents to embed using the Create Embeddings for Urology Docs node.
  Customize the chatbot system message to reflect your medical specialty.
  Deploy this chatbot on your website or link it with Telegram via the chat trigger node.

  🛠️ Components

  chatTrigger: Listens for user messages and starts the workflow.
  Medical AI Agent: GPT-based agent guided by domain-specific instructions.
  RAG Tool Vector Store: Fetches relevant documents from Pinecone using vector search.
  Memory Buffer: Maintains conversation context.
  Create Embeddings for Urology Docs: Encodes documents into vector format.

  📝 Customization

  You can replace the knowledge base with any other medical domain by:
  Updating the documents stored in Pinecone.
  Modifying the system prompt in the AI Agent node.

  📣 CTA

  This chatbot is ideal for clinics, medical consultants, or educational websites wanting a reliable AI assistant in Urology.

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.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsOpenAi","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, 4268 characters]

metadata_json:
  {"categories":["healthcare","chatbot","AI/ML","knowledge management","integration"],"complexity":"complex","use_cases":["Automated Urology Q&A on clinic websites","Patient pre-screening and education","Internal knowledge base for clinical staff","Support triage and frequently asked questions","Enhancing telemedicine workflows with domain answers"],"estimated_setup_minutes":60,"required_services":["Pinecone (vector database)","OpenAI (GPT-4o) or equivalent LLM API","Storage for source documents (S3, Google Drive, or HTTP access)","n8n hosting/instance"],"key_features":["Retrieval-Augmented Generation (RAG) workflow","Pinecone vector search for domain knowledge","GPT-4o-powered conversational responses","Memory buffer for conversational context","Domain-specific (Urology) knowledge base ingestion and search"],"target_audience":["Clinics and medical websites","Healthcare administrators and IT teams","Developers building medical chatbots or RAG systems"]}


name: SEO Blog Generator with GPT-4o, Perplexity, and Telegram Integration
author_name: HoangSP
author_username: hoangsp
categories: []
created_at: 2025-04-23T13:11:34.466Z
updated_at: 2025-04-23T13:11:34.466Z
url: https://n8n.io/workflows/3672
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:32
description:
  SEO Blog Generator with GPT-4o, Perplexity, and Telegram Integration

  This workflow helps you automatically generate SEO-optimized blog posts using Perplexity.ai, OpenAI GPT-4o, and optionally Telegram for interaction.

  🚀 Features

  🧠 Topic research via Perplexity sub-workflow
  ✍️ AI-written blog post generated with GPT-4o
  📊 Structured output with metadata: title, slug, meta description
  📩 Integration with Telegram to trigger workflows or receive outputs (optional)

  ⚙️ Requirements

  ✅ OpenAI API Key (GPT-4o or GPT-3.5)
  ✅ Perplexity API Key (with access to /chat/completions)
  ✅ (Optional) Telegram Bot Token and webhook setup

  🛠 Setup Instructions

  Credentials:
     Add your OpenAI credentials (openAiApi)
     Add your Perplexity credentials under httpHeaderAuth
     Optional: Setup Telegram credentials under telegramApi

  Inputs:
     Use the Form Trigger or Telegram input node to send a Research Query

  Subworkflow:
     Make sure to import and activate the subworkflow Perplexity_Searcher to fetch recent search results

  Customization:
     Edit prompt texts inside the Blog Content Generator and Metadata Generator to change writing style or target industry
     Add or remove output nodes like Google Sheets, Notion, etc.

  📦 Output Format

  The final blog post includes:

  ✅ Blog content (1500-2000 words)
  ✅ Metadata: title, slug, and meta description
  ✅ Extracted summary in JSON
  ✅ Delivered to Telegram (if connected)

  Need help? Reach out on the n8n community forum

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

workflow_json_compressed:
  [encoded data, 7300 characters]

metadata_json:
  {"categories":["content_generation","automation","integration","seo"],"complexity":"medium","use_cases":["Automated SEO blog post generation","Topic research and idea discovery","Generating structured metadata (title, slug, meta description)","Delivering posts or notifications via Telegram","Feeding outputs to CMS or spreadsheets (Notion, Google Sheets)"],"estimated_setup_minutes":30,"required_services":["OpenAI (GPT-4o or GPT-3.5)","Perplexity.ai (API access to /chat/completions)","n8n platform"],"key_features":["Perplexity sub-workflow for topic research","GPT-4o-powered blog content generator (1500–2000 words)","Structured output with title, slug, meta description and JSON summary","Optional Telegram trigger and delivery","Customizable prompts and easy integration with other output nodes"],"target_audience":["Content marketers","SEO specialists","Bloggers and writers looking to scale content production`,`Growth marketers and product teams seeking automated content workflows`,`Developers and automation engineers implementing content integrations"]}


name: AI-Powered Research Assistant with Perplexity Sonar API
author_name: HoangSP
author_username: hoangsp
categories: []
created_at: 2025-04-23T13:15:00.750Z
updated_at: 2025-04-23T13:15:00.750Z
url: https://n8n.io/workflows/3673
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  Name:
  AI-Powered Research Agent using Perplexity Sonar

  Description:
  This workflow acts as an AI-powered research assistant using the Perplexity Sonar model. When triggered by another workflow, it sends a user-defined prompt to the Perplexity API to retrieve up-to-date search results. The response is then parsed into a clean format for downstream processing.

  How it Works:
  Trigger: Activated from another workflow via Execute Workflow Trigger.

  Prompt Setup: Sets a system role message and user query dynamically.

  API Call: Sends a POST request to Perplexity's /chat/completions endpoint with your credentials.

  Response Handling: Extracts the message content from the API response.

  Output: Returns the result, ready for display or further processing.

  Requirements:
  A Perplexity AI API Key

  Set up authentication via Header Auth with Bearer token

  Ensure your account allows outbound HTTP requests in n8n

  Customization Tips:
  Modify the system prompt to suit your research domain

  Chain this workflow with other automation like blog creation, summaries, etc.

  Replace the output handling logic to fit into Google Sheets, Notion, or Telegram

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

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

metadata_json:
  {"categories":["automation","AI","research","integration"],"complexity":"medium","use_cases":["On-demand web research and fact-finding","Gathering up-to-date information for content creation","Supplementing summaries or reports with live search results","Automating research steps in larger workflows (e.g., blog generation, brief creation)","Enriching datasets with current answers or citations"],"estimated_setup_minutes":10,"required_services":["Perplexity AI API (Perplexity Sonar)","n8n instance with outbound HTTP requests enabled"],"key_features":["Triggerable Execute Workflow for reuse in other automations","Dynamic system role and user prompt setup","POST request to Perplexity /chat/completions endpoint","Parses and extracts content from API response for downstream use","Supports Header Auth (Bearer token) for Perplexity credentials"],"target_audience":["developers building AI automations","content creators and marketers","researchers and analysts needing quick lookups or summaries"]}


name: MCP Supabase Server for AI Agent with RAG & Multi-Tenant CRUD
author_name: Luciano Gutierrez
author_username: koresoluciones
categories: []
created_at: 2025-04-23T15:41:14.267Z
updated_at: 2025-04-23T15:41:14.267Z
url: https://n8n.io/workflows/3675
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Supabase AI Agent with RAG & Multi-Tenant CRUD  
  Version: 1.0.0  
  n8n Version: 1.88.0+  
  Author: Koresolucoes 
  License: MIT  

  Description  
  A stateful AI agent workflow powered by Supabase and Retrieval-Augmented Generation (RAG). Enables persistent memory, dynamic CRUD operations, and multi-tenant data isolation for AI-driven applications like customer support, task orchestration, and knowledge management.  

  Key Features:  
  🧠 RAG Integration: Leverages OpenAI embeddings and Supabase vector search for context-aware responses.  
  🗃️ Full CRUD: Manage agent_messages, agent_tasks, agent_status, and agent_knowledge in real time.  
  📤 Multi-Tenant Ready: Supports per-user/organization data isolation via dynamic table names and webhooks.  
  🔒 Secure: Role-based access control via Supabase Row Level Security (RLS).  

  Use Cases  
  Customer Support Chatbots: Persist conversation history and resolve queries using institutional knowledge.  
  Automated Task Management: Track and update task statuses dynamically.  
  Knowledge Repositories: Store and retrieve domain-specific information for AI agents.  

  Instructions  
  1. Import Template  
  Go to n8n &gt; Templates &gt; Import from File and upload this workflow.  

  2. Configure Credentials  
  Add your Supabase and OpenAI API keys under Settings &gt; Credentials.  

  3. Set Up Multi-Tenancy (Optional)  
  Dynamic Webhook Path**:  
    Replace the default webhook path with /mcp/tool/supabase/:userId to enable per-user routing.  
  Table Names**:  
    Use a Set Node to dynamically generate table names (e.g., agent_messages_{{userId}}).  

  4. Activate & Test  
  Enable the workflow and send test requests to the webhook URL.  

  Tags  
  AI Agent RAG Supabase CRUD Multi-Tenant OpenAI Automation  

  Screenshots  

  License  
  This template is licensed under the MIT License.  

nodes_used:
  ["@n8n/n8n-nodes-langchain.mcpTrigger","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool"]

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

metadata_json:
  {"categories":["automation","integration","data processing","AI/ML","multi-tenancy"],"complexity":"complex","use_cases":["Customer support chatbots with persistent context","Automated task management and orchestration","Domain-specific knowledge repositories for agents","Stateful AI agents using RAG for context-aware responses","Multi-tenant AI applications with per-tenant data isolation"],"estimated_setup_minutes":45,"required_services":["Supabase (Postgres + vector search)","OpenAI (embeddings and LLM API)","n8n (self-hosted or cloud)","A publicly reachable webhook endpoint / hosting for webhooks"],"key_features":["Retrieval-Augmented Generation (OpenAI embeddings + Supabase vector search)","Persistent agent memory and state (agent_messages, agent_tasks, agent_status, agent_knowledge)","Full CRUD operations against agent tables","Multi-tenant support via dynamic table names and webhook routing","Security via Supabase Row Level Security (RLS) and role-based access controls"],"target_audience":["Developers","AI/ML engineers","Backend/DevOps engineers building integrations and automation workflows (n8n)\",\"Customer support/product teams implementing AI assistants"]}


name: Capture Gumroad sales, add buyer to MailerLite group, log to Google Sheets CRM
author_name: Aitor | 1Node
author_username: aitoralonso
categories: []
created_at: 2025-04-23T18:03:02.278Z
updated_at: 2025-04-23T18:03:02.278Z
url: https://n8n.io/workflows/3676
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:33
description:
  Turn Gumroad buyers into loyal email subscribers and keep your CRM up‑to‑date.

  When someone makes a purchase on your Gumroad store, this n8n workflow instantly adds that customer to the right MailerLite group (so your nurture sequence starts on time) and writes the sale details into your Google Sheets CRM. You’ll never copy‑and‑paste orders again, and every buyer begins receiving your follow‑up emails the moment they purchase.

  Requirements
  A Gumroad account with a product listed
  A MailerLite account. 
  A MailerLite group of subscribers created
  Enabled APIs and credentials for Google Sheets, MailerLite and Gumroad

  How it works
  Listen for a new sale on Gumroad**
  The Gumroad trigger watches your account 24/7 and fires as soon as a sale is completed.

  Create (or update) the subscriber in MailerLite**
  Their name and email are added to MailerLite. If they already exist, the workflow simply updates their profile.

  Assign the subscriber to your Gumroad group**
  Grouping lets your MailerLite automation send the right onboarding or upsell sequence without manual tagging.

  Log the purchase in Google Sheets**
  The buyer’s contact details, product, price, and date are appended as a new row in your CRM sheet.

  Set‑up steps
  Create an application in Gumroad. Copy the access token, you’ll paste it into the Gumroad trigger node.

  Grab your MailerLite API key
  MailerLite dashboard → Integrations → API. Paste it into the two MailerLite nodes.

  Prepare a Google Sheets spreadsheet
  Add column headers like Name, Email, Product, Price, Date.

  Open the template in n8n Cloud or Desktop

  In the Gumroad node, paste your token.

  In the MailerLite nodes, paste your API keys and replace the group id.

  In the Google Sheets node, replace the credentials, pick your spreadsheet and worksheet.

  Get in touch with us
  Feel free to contact us at 1 Node.
  Get instant access to a library of free resources we created.

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

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

metadata_json:
  {"categories":["automation","e-commerce integration","CRM sync","marketing automation"],"complexity":"medium","use_cases":["Automatically add Gumroad buyers to email lists","Trigger onboarding or upsell sequences via MailerLite groups","Log purchases into a Google Sheets CRM for reporting/audit","Eliminate manual order copying and subscriber management"],"estimated_setup_minutes":15,"required_services":["Gumroad (with product and API token)","MailerLite (with API key and group created)","Google Sheets (Google account with Sheets API/credentials)","n8n (Cloud or Desktop instance)"],"key_features":["Real-time Gumroad sale trigger","Create or update subscriber in MailerLite","Assign subscriber to a MailerLite group","Append sale details (Name, Email, Product, Price, Date) to Google Sheets CRM","Single-point setup of API credentials and group ID"],"target_audience":["Digital product creators","E‑commerce store owners using Gumroad","Marketers running email nurture sequences/automations','Small businesses and solopreneurs who maintain a Google Sheets CRM"]}


name: Google Calendar MCP server for AI Agent with Dynamic Scheduling
author_name: Luciano Gutierrez
author_username: koresoluciones
categories: []
created_at: 2025-04-23T18:55:26.347Z
updated_at: 2025-04-23T18:55:26.347Z
url: https://n8n.io/workflows/3677
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  Google Calendar AI Agent with Dynamic Scheduling  
  Version: 1.0.0  
  n8n Version: 1.88.0+  
  Author: Koresolucoes
  License: MIT  

  Description  
  An AI-powered workflow to automate Google Calendar operations using dynamic parameters and MCP (Model Control Plane) integration. Enables event creation, availability checks, updates, and deletions with timezone-aware scheduling [[1]][[2]][[8]].  

  Key Features:  
  📅 Full Calendar CRUD: Create, read, update, and delete events in Google Calendar.  
  ⏰ Availability Checks: Verify time slots using AVALIABILITY_CALENDAR node with timezone support (e.g., America/Sao_Paulo).  
  🤖 AI-Driven Parameters: Use $fromAI() to inject dynamic values like Start_Time, End_Time, and Description [[3]][[4]].  
  🔗 MCP Integration: Connects to an MCP server for centralized AI agent control [[5]][[6]].  

  Use Cases  
  Automated Scheduling: Book appointments based on AI-recommended time slots.  
  Meeting Coordination: Sync calendar events with CRM/task management systems.  
  Resource Management: Check room/equipment availability before event creation.  

  Instructions  
  1. Import Template  
  Go to n8n &gt; Templates &gt; Import from File and upload this workflow.  

  2. Configure Credentials  
  Add Google Calendar OAuth2 credentials under Settings &gt; Credentials.  
  Ensure the calendar ID matches your target (e.g., ODONTOLOGIA group calendar).  

  3. Set Up Dynamic Parameters  
  Use $fromAI('Parameter_Name') in nodes like CREATE_CALENDAR to inject AI-generated values (e.g., event descriptions).  

  4. Activate & Test  
  Enable the workflow and send test requests to the webhook path /mcp/:tool/calendar.  

  Tags  
  Google Calendar Automation MCP AI Agent Scheduling CRUD  

  Screenshots  

  License  
  This template is licensed under the MIT License.  

  Notes:  
  Extend multi-tenancy by adding :userId to the webhook path (e.g., /mcp/:userId/calendar) [[7]].  
  For timezone accuracy, always specify options.timezone in availability checks [[8]].  
  Refer to n8n’s Google Calendar docs for advanced field mappings.  

nodes_used:
  ["@n8n/n8n-nodes-langchain.mcpTrigger","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool"]

workflow_json_compressed:
  H4sIAAAAAAAAE+1Yf2/bNhD9KgYxINsgJpREiZKBAVUdLzPgxkHiZliDwD2RR0eYTAn6kaY1/N0HykncNG63pR6CbvtPosh3d4+PdycuSaZIn8yrm3f5+w9vUv8D/3WcAHHIAhsg/SXJTN2AkTiy80LFQ/QCX8Souc9AsFDEIVcui8M0igIphB+EPOCxx5lMfVBcskjoUOqYp8onDmlwUebQ4KBCVZ9h05aDYlHm2KAi/aZqceUQAwskffJqcDIbJOPh8WFyalfCvCb9i0uHmEKhfVyuvXcZ8lizmAaoI8pjHlBQUlMdpXEciRh8V5LPor4v7egLE5kDExnaYdMczFxeQWb2F7KcVtl8jhVxSFnUWZMVhvQvmMMuHfIO06ui+L0jR2LqCg0BdWNfUM4CTSPGGEXwUxTKS5nvWQyoYIENVrWlt4TmivTJwUKWB/2mKPIDCTkaBRVZrZ07x6ruTLor5zbggGPERexRrjlQHjCXRgBIkTPNQoyDSLqbgI+G0y0Bb2JNocb9eVHMcxzc2p4WRf4w3ChkjsdtyA/9x2s0TRf+T8tl7+BHCwttU9A5GqygQUV1VSySES2usaoyhT8e9L5bD32/N7SrZ6PDPaf39q3T26ubKjPzvR96qxVxSFFa49bMyiH3tPSXZDar8rVYHLIolA0nz+qGOOQa8ta+QiDAF5HLmdDcS11QQqPHJYpQB0GkZCijUCME2udxKrTyY8EFeF7MpRsG/MW8Ktpy/87oLT37slgQ64q8QnWKdZs3x2uOJ4eT4+lkPDkaJXbfitLG3jFH5tjYIVmhQtNkkHe8PeR7krTNlZeUWXfiLJs8xqOr8t21HsvBG3blf7Sd3cre3dIeSFm0piGrR3rZ9+8VI7kXKZG6FFBxysGNaBx6SLXy4jQCD2TAHyomGY+/XjUe366azc6SolJYvXxP+qRuoGqm2QKJQyqUbWW10CnkFzAqz8yc9AnelGBUdzayBb6Cmycq7yXqosLtuuuQM/NE5EQ3WG0H/pY1nOR5ty9NWxn7fJern1fXXqhRR+DTIGI2HfqKAnJB08gFUJHrCy/amDgcjofT4dfLmkf/J8OnCUmhrfTEIQprWWVdTNP1HizAtJA/f6pEHiK4qU+jIBaUhwA09QXQMAwZgPC04Gpj4vXJYbILSYXPIKlvVkVtqaBT0frh5wxzdXsy2hoPUUObN6e4yIzqaHwSd69rnN1Cze6x7ohMiyJHMGsmn12yaSxF6EaKpiIGyj3hUwg4o77yXHAlS3XKNiaS82Q8Sl6OxqPpbztoDP+0wtty+qEw+NdkliywyiQcnEExO4E2L7ar4/G01Vf3BEOjZrb/+Ce6gjPb3HwB/Zs6ixXWRVtJ++Xe7y+kdIfYH5vDzWfSJ9dYZTqT0FNZXRYmS7M8U6Dw+Q8T1wq8kAHliknKU+3TiImUogg8zULmC603Jganw53kf5exzxQA8+Tkb9R2rXWN9tfo+F8g4b8l1sHpKOkNz4fH08lZ73hyPjnrDSavepPe0WRyNB72kpMRcQgo1e0m5PcF6WMzTyT8I0+20f5fK3mXDgHZZNd4p64amyYz8/VZuUHZWqYm9qfSZhnXenq9Bui6KOX6SgoFVAcuo1xwSSORIg0jjRAFMnK1vaSRhTEo70vYgyuU/pJANrMqIf2Li2V3G/XZe6W7mQ6xbN6QPltdXq6cR3ljJ6Cf/t/sBPTTDncnoI9uGHaCur2z2QH0avUHmhle3ykVAAA=

metadata_json:
  {"categories":["automation","integration","scheduling","AI","calendar"],"complexity":"medium","use_cases":["Automated appointment booking using AI-recommended time slots","Meeting coordination and calendar syncing with CRM or task systems","Resource (room/equipment) availability checks before scheduling","Multi-tenant scheduling via webhook path extension (e.g., /mcp/:userId/calendar)","AI-driven event creation and updates with dynamic parameters"],"estimated_setup_minutes":30,"required_services":["Google Calendar API (OAuth2 credentials / Google Workspace account)","MCP (Model Control Plane) server or AI agent endpoint","n8n instance with webhook access","Optional: CRM/task management APIs if syncing with external systems"],"key_features":["Full Google Calendar CRUD (create, read, update, delete) operations","Availability checks with timezone-aware scheduling (options.timezone)","AI-driven dynamic parameters via $fromAI() for Start_Time, End_Time, Description, etc.","MCP integration for centralized AI agent control and orchestration","Webhook endpoint for incoming requests (/mcp/:tool/calendar) with multi-tenancy extension option"],"target_audience":["Developers/engineers building scheduling automations","IT/ops teams integrating calendars across systems","Product managers and admins automating booking workflows"]}


name: Query PostgreSQL Database with Natural Language Using Groq AI Chatbot
author_name: Gegenfeld
author_username: gegenfeld
categories: []
created_at: 2025-04-23T23:07:27.296Z
updated_at: 2025-04-23T23:07:27.296Z
url: https://n8n.io/workflows/3680
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  This guide shows you how to deploy a chatbot that lets you query your PostgreSQL database using natural language. You will build a system that accepts chat messages, retains conversation history, constructs dynamic SQL queries, and returns responses generated by an AI model. By following these instructions, you will have a working solution that integrates n8n’s AI Agent capabilities with PostgreSQL.

  Prerequisites

  Before you begin, ensure that you have the following:

  An active n8n instance (self-hosted or cloud) running version 1.50.0 or later.
  Valid PostgreSQL credentials configured in n8n.
  API credentials for the Groq Chat Model (or your preferred AI language model).
  Basic familiarity with SQL (specifically PostgreSQL syntax) and n8n node concepts such as chat triggers and memory buffers.
  Access to the n8n Docs on AI Agents for further reference.

  Workflow Setup

  Chat Interface & Trigger
      When Chat Message Received: This node listens for incoming chat messages via a webhook. When a message arrives, it triggers the workflow immediately.

  Conversation Memory
      Chat History: This memory buffer node stores the last 10 interactions. It supplies conversation context to the AI Agent, ensuring that responses consider previous messages.

  AI Agent Core
      AI Agent (Tools Agent): The AI Agent node orchestrates the conversation by receiving the chat input and conversation history. It dynamically generates PostgreSQL-compatible SQL queries based on your requests and coordinates calls to external tools (such as PostgreSQL nodes).

  Database Interactions
      PostgreSQL Node (Query Execution): This node executes the SQL query generated by the AI Agent against your PostgreSQL database. You reference the query using an expression (e.g., {{$node["AI Agent"].json.sql_query}}), allowing the agent’s output to control data retrieval.
      PostgreSQL Node (Schema Retrieval): This node (or a dedicated step using the PostgreSQL node) retrieves a list of relevant tables from your PostgreSQL database (e.g., from the public schema, excluding system schemas like pg_catalog or information_schema). The agent uses this information to understand the available tables. This typically involves executing a query like SELECT table_name FROM information_schema.tables WHERE table_schema = 'public';.
      PostgreSQL Node (Table Definition Retrieval): This node (or another dedicated step using the PostgreSQL node) fetches detailed metadata (such as column names, data types, and potentially relationships using foreign keys) for a specific table. The table name (and schema if necessary) is supplied dynamically by the AI Agent. This often involves querying information_schema.columns, e.g., SELECT column_name, data_type FROM information_schema.columns WHERE table_name = '{{dynamic_table_name}}' AND table_schema = 'public';.

  Language Model Processing
      Groq Chat Model: This node connects to the Groq Chat API to generate text completions. It processes the combined input (chat message, context, and data fetched from PostgreSQL) and produces the final response.

  Guidance & Customization
      Sticky Notes: These nodes provide guidance on:
          Switching the chat model if you wish to use another provider (e.g., OpenAI or Anthropic).
          Adjusting the maximum token count per interaction.
          Customizing the SQL queries (ensuring PostgreSQL compatibility) and the context window size.
      They help you modify the workflow to suit your environment and requirements.

  Workflow Connections

  The Chat Trigger passes the incoming message to the AI Agent.
  The Chat History node supplies conversation context to the AI Agent.
  The AI Agent calls the PostgreSQL nodes as external tools, generating and sending dynamic SQL queries.
  The Groq Chat Model processes the consolidated input from the agent and outputs the natural language response delivered to the user.

  Testing the Workflow

  Send a chat message using the chat interface.
  Observe how the AI Agent processes the input and generates a corresponding PostgreSQL SQL query.
  Verify that the PostgreSQL nodes execute the query correctly against your database and return data.
  Confirm that the Groq Chat Model produces a coherent natural language response based on the query results.
  Refer to the sticky notes for guidance if you need to fine-tune any node settings or SQL queries.

  Next Steps and References

  Customize Your AI Model:** Replace the Groq Chat Model with another language model (such as the OpenAI Chat Model) by updating the node credentials and configuration.
  Enhance Memory Settings:** Adjust the Chat History node’s context window to retain more or fewer messages based on your needs.
  Modify SQL Queries:* Update the SQL queries within the *PostgreSQL* nodes or refine the prompts for the AI Agent to ensure they match your specific database schema and desired data, adhering to *PostgreSQL** syntax.
  Further Reading:** Consult the n8n Docs on AI Agents for additional details and examples to expand your workflow’s capabilities.
  Set Up a Website Chatbot:** Copy & Paste and replace the placeholders in the following code to embed the chatbot into your personal or company’s website: View in CodePen 🡥

  By following these steps, you will deploy a robust AI chatbot workflow that integrates with your PostgreSQL database, allowing you to query data using natural language.

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

workflow_json_compressed:
  H4sIAAAAAAAAE6WWW2/bRhCF/4qwzxx37xc+1XGBJkCTNrDRPBhGsZdZmbBIqiRtxxD03wtSjhQ5Si3bbwRx9ux3hrM7XJEqkZK098y/O/3U2MXn9/QinJKC1Dh4Uq5I1fSDbyJ+GHXSJO6UN4K7JJQ0SFEHpRM6lMKlyDz10kWdLDeBC041d1lJQWmUBiUjBRmwXi78gGcdpv4ch9vlWVsvFzhgIuXQ3eK6II2vkZTk48Psvu1u8qK9n8lxqZ/3pLy8KkjTJhwfVxt8EVDwoBTo6DhIhQIsVRlEVJZnHQIXhmxtv1xjM4vXfpjV2Pd+jrMOI1Z3mMY9Hpaj5tfGNr80toFpJ1j4Zh6vfdWcjOsuumo+x44UZNn21VC1DSkvjaaF4PSqIPcYrtv2ZipYzCwhlRkECguS6wjWZQoipMAY9SrFPPr4ztc4YNeTcrXeUPyNXT9ZsxO2Lh6TRqqtit6AYyGBZMaAlTYBepOFl5FpmndJz8aQ76t+aLuHI7LVWLfdw7vbnLH7UjWpvd+PyBilhZoyPgMstsCBo2aMR5CKIUghM4ztAzJK7QxnWWi5Az79MDudYzMcAesfdXt89ts3eIbPbPkU90olJsF4qUGKHMBlG0HllKhzMcpgd3y/d+2/s6mqH9uEiyMwF/UoH9ftszp+XCm3oMnlTLNGQGoTSBcihMQdMK815YEpzXEHej5U8eZh9qkdkO0od4DB93jST6JRs89mLS0M/YGNxLYZxqKXhPycU+nAWeQSnDcSZNYMfKICOOpoHReKJn2Qk7+Yk1H9BlAtPLfeMdAWBUjlFQQuNCjlUlAyWxPMQVDxclAu3wAadPKJaglGOwcyUwPORQUxeuFVFiFYfhD0xZzjHcZeiyl0cCEbBTGwNF7CCSxSNrJyw5Wl2X/XoH+1/TDv8PzzH7PzeI21/ynscqPsL9p28aSs0h51iPiJ2lIalpWhRoC2yoAMJoNDdIAsRRGRKxrVQcrfMFfNZudXkGr9YlKnUEvPFFARFUiZHDgvBMgYknDcB0rtIdLX4PHjC3lVEB+H6g5Jmf2ix4L0OAxVM586Bb9ivB1d/+wSdqQkd2xsmbuNwzQSldNKC2eAJq5AmizAySwgUhowiJBtGnPFtmkwjlaT8Xf5yhXx1T/DmKK8vFxNPwMHZ8c3VUGqJuFXUtL11dW62B+LG7fN6Hve71H31PHpXNiYjlPg1s/x8d1z3vvyp1v8eGDeXIfD3f1m2//5vypXpPZV84zxJNl3Xa//A7IgKiyqCgAA

metadata_json:
  {"categories":["integration","automation","data processing","AI/chatbot"],"complexity":"medium","use_cases":["Natural‑language querying of PostgreSQL databases","Conversational data exploration and ad‑hoc reporting","Embedding a website chatbot that accesses DB data","Prototyping AI agents that generate dynamic SQL"],"estimated_setup_minutes":45,"required_services":["n8n (v1.50.0+)","PostgreSQL instance and credentials","Groq Chat API (or alternative LLM provider such as OpenAI/Anthropic)","Webhook or chat frontend to receive/send messages"],"key_features":["AI Agent that generates PostgreSQL‑compatible SQL dynamically","Conversation memory buffer (last 10 interactions) for context","Schema and table metadata retrieval (information_schema queries)","Executes queries in PostgreSQL nodes and returns results","Uses Groq Chat model to produce final natural‑language responses (swapable)"],"target_audience":["Developers","Data analysts","ML/AI engineers building data‑driven chatbots"]}


name: Extract Amazon Best Seller Electronic Info with Bright Data and Google Gemini
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-23T23:12:11.729Z
updated_at: 2025-04-23T23:12:11.729Z
url: https://n8n.io/workflows/3681
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who this is for?

  Extract Amazon Best Seller Electronic Info is an automated workflow that extracts best seller data from Amazon's Electronics section using Bright Data Web Unlocker, transform it into structured JSON using Google Gemini's LLM, and forwards a fully structured JSON response to a specified webhook for downstream use.

  This workflow is tailored for:

  eCommerce Analysts**
  Who need to monitor Amazon best-seller trends in the Electronics category and track changes in real-time or on a schedule.

  Product Intelligence Teams**
  Who want structured insights on competitor offerings, including rankings, prices, ratings, and promotions.

  AI-powered Chatbot Developers**
  Who are building assistants capable of answering product-related queries with fresh, structured data from Amazon.

  Growth Hackers & Marketers**
  Looking to automate competitive research and surface trending product data to inform pricing strategies.

  Data Aggregators and Price Trackers**
  Who need reliable and smart scraping of Amazon data enriched with AI-driven parsing.

  What problem is this workflow solving?
  Keeping up with Amazon's best sellers in Electronics is a time-consuming, error-prone task when done manually.This workflow automates the process, ensuring:​

  Automating Data Extraction from Amazon Best Sellers using Bright Data, ensuring reliable access to real-time, structured data.

  Enhancing Raw Data with Google Gemini, turning product lists into structured JSON using the Google Gemini LLM.

  Sending Results to a Webhook, enabling seamless integration into dashboards, databases, or chatbots.

  What this workflow does

  The workflow performs the following steps:​

  Extracts Amazon Best Seller Electronics page info using Bright Data's Web Unlocker API.

  Processes the unstructured content using Google Gemini's Flash Exp model to extract structured product data.

  Sends the structured information to a webhook endpoint.

  Setup
  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  In n8n, configure the Google Gemini(PaLM) Api account with the Google Gemini API key (or access through Vertex AI or proxy).
  Update the Amazon URL with the Bright Data zone by navigating to the Amazon URL with the Bright Data Zone node.
  Update the Webhook HTTP Request node with the Webhook endpoint of your choice.

  How to customize this workflow to your needs

  This workflow is built to be flexible - whether you're a market researcher, e-commerce entrepreneur, or data analyst. Here's how you can adapt it to fit your specific use case:

  Change the Amazon Category**
  Update the Amazon URL with the topic of your interest such as Computers & Accessories, Home Audio, etc.

  Customize the Gemini Prompt**
  Update the Gemini prompt to get different styles of output — comparison tables, summaries, feature highlights, etc.

  Send Output to Other Destinations**
  Replace the Webhook URL to forward output to:

  Google Sheets
  Airtable
  Slack or Discord
  Custom API endpoints

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.informationExtractor","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest"]

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

metadata_json:
  {"categories":["automation","integration","data processing","web scraping","AI/NLP"],"complexity":"medium","use_cases":["Monitor Amazon Electronics best-seller trends","Competitor/product intelligence and pricing analysis","Provide fresh structured product data to AI chatbots","Automate competitive research and growth marketing insights","Aggregate and enrich Amazon product data for dashboards or databases"],"estimated_setup_minutes":30,"required_services":["Bright Data (Web Unlocker)","Google Gemini / PaLM (or Vertex AI)","Amazon (target website)","Webhook receiver or downstream endpoint (e.g., Google Sheets, Airtable, Slack, custom API)"],"key_features":["Scrapes Amazon Best Sellers (Electronics) via Bright Data Web Unlocker","Uses Google Gemini (Flash/LLM) to parse unstructured HTML into structured JSON","Forwards fully structured JSON to a configurable webhook","Customizable Gemini prompt and target Amazon category","Designed for scheduled or on-demand extraction and easy downstream integration"],"target_audience":["eCommerce Analysts","Product Intelligence Teams","AI-powered Chatbot Developers」「Growth Hackers & Marketers」「Data Aggregators and Price Trackers"]}


name: Extract & Summarize Yelp Business Review with Bright Data and Google Gemini
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-24T00:20:49.982Z
updated_at: 2025-04-24T00:20:49.982Z
url: https://n8n.io/workflows/3682
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:33
description:
  Who this is for?
  Extract & Summarize Yelp Business Review is an automated workflow that extracts the Yelp business reviews using Bright Data Web Unlocker, process and formats the raw data, summarizes using the Google Gemini's LLM, and forward the concise summary with the review respose to a specified webhook endpoint.

  This workflow is tailored for:

  Local SEO Specialists who need structured insights from Yelp reviews to optimize listings.

  Business Owners wanting quick summaries of what customers love or complain about.

  Reputation Managers who monitor brand sentiment and identify customer pain points.

  Data Analysts & Researchers extracting Yelp review patterns at scale.

  AI Product Builders needing clean Yelp review data as input for their LLMs or recommender systems.

  What problem is this workflow solving?

  Yelp reviews are rich in customer sentiment but messy to work with manually. This workflow solves:

  The pain of scraping Yelp review content manually.

  The challenge of building the structured data with the summary.

  The need for structured outputs suitable for analysis, reports, or AI input.

  What this workflow does
  This automated pipeline does the following:

  Bright Data Integration**: Queries Yelp and scrapes business listing data using Bright Data's Web Unlocker.

  Structured Data Formatting**: Formats the Yelp review data to a structured response in JSON format.

  Google Gemini Summarization**: Sends the cleaned reviews to Google Gemini to:

  Output Delivery**: Returns the structured response with the concise summary over the webhook endpoint.

  Setup
  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  In n8n, configure the Google Gemini(PaLM) Api account with the Google Gemini API key (or access through Vertex AI or proxy).
  Update the Yelp Business Review URL with the Bright Data zone by navigating to the Set Yelp URL with the Bright Data Zone node.
  Update the Webhook Notifier for the merged response node with the Webhook endpoint of your choice.

  How to customize this workflow to your needs

  This workflow is built to be flexible - whether you’re a market researcher, entrepreneur, or data analyst. Here's how you can adapt it to fit your specific use case:

  Target Specific Business Categories**
  Update the Yelp Business Review input to scrape different businesses like gyms, salons etc.

  Limit Reviews**
  Add filters by description, location, page range to get the top reviews.

  Tweak the Data Extraction Node**
  Update the Structured Data Extractor node Output Parser for building the JSON response with the appropriate fields or attributes.

  Tweak the Summarization Prompt**
  Modify the Gemini prompt to generate a comprehensive summary.

  Send Output to Other Destinations**
  Replace the Webhook URL to forward output to:

  Google Sheets
  Airtable
  Slack or Discord
  Custom API endpoints

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.chainSummarization","n8n-nodes-base.merge","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.chainLlm"]

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

metadata_json:
  {"categories":["automation","web scraping","data processing","nlp/summarization","integration"],"complexity":"medium","use_cases":["Extract and summarize Yelp reviews at scale","Local SEO insights and listing optimization","Reputation monitoring and sentiment analysis","Market research and review pattern analysis","Prepare cleaned review data for LLMs or recommender systems"],"estimated_setup_minutes":30,"required_services":["Bright Data (Web Unlocker)","Google Gemini (PaLM) or Vertex AI access / API key","Yelp (target site being scraped)","n8n (automation platform)","Webhook receiver or destination (e.g., custom API, Slack, Google Sheets connector)"],"key_features":["Automated scraping of Yelp business reviews using Bright Data Web Unlocker","Structured JSON formatting of raw review data","LLM-based summarization via Google Gemini","Forwarding summarized + structured output to a webhook endpoint","Configurable filters (business category, location, review range) and prompt customization"],"target_audience":["Local SEO specialists","Business owners","Reputation managers / marketers monitoring sentiment changes and pain points"]}


name: 🐶 AI Petshop Assistant with GPT-4o, Google Calendar & WhatsApp/Instagram/FB
author_name: Amanda Benks
author_username: amanda
categories: []
created_at: 2025-04-24T00:22:01.705Z
updated_at: 2025-04-24T00:22:01.705Z
url: https://n8n.io/workflows/3683
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  Hi! I’m Amanda 🐶💕
  This is honestly one of the cutest, smartest workflows I’ve ever built. It was designed with a lot of love to help petshops give their customers fast, modern, and sweet service — without losing the personal touch.

  Imagine a client sending a message on WhatsApp, Instagram or Messenger, and in seconds, they’re greeted with a kind message, a helpful menu, and everything they need. No delays. No stress. Just smooth, intelligent automation.

  This AI agent chats, books, checks, confirms, charges, and saves — all powered by GPT-4o, LangChain, Google Calendar, Asaas, Supabase, and more. It’s like having a super capable receptionist who works 24/7 and never forgets a detail 🐾

  🌟 What this workflow does (and it does it with love)

  💬 Multichannel AI Support  
  Serve customers across WhatsApp (official or Evolution API), Instagram Direct, Facebook Messenger, and more — all in one single flow.

  🧠 Smart, friendly conversations  
  Powered by OpenAI GPT-4o, this assistant understands natural language, voice messages, even PDFs and images. It keeps context, remembers the client, and replies with clarity and warmth.

  🗓️ Real-time booking with Google Calendar  
  Book baths, check-ups or grooming sessions instantly. It checks availability, suggests times, and even handles rescheduling when needed.

  🧾 Automatic billing with Asaas  
  It can generate payment links or invoices through the Asaas API and send them straight to the customer — no manual work involved.

  📦 Check product availability  
  Clients can ask things like “Do you have Royal Canin puppy food?” and get a real-time answer based on your inventory stored in Supabase.

  📂 Understands voice, images & files  
  Whether it’s a voice note describing symptoms or a picture of a vaccine card, the assistant processes and responds intelligently.

  💌 Fully customizable tone and flow  
  You can adjust the AI’s prompt, tweak the tone of voice, include emojis, and make the whole flow match your brand’s style perfectly.

  💾 Save customer history  
  All conversations, bookings, names, preferences and contact info are stored in Supabase — safe and organized.

  🕒 Handles time rules beautifully  
  The flow respects your opening hours and avoids scheduling on holidays or weekends (unless you say otherwise). It can even respond politely if a message arrives after hours.

  🛠️ How to set it up

  Connect your APIs: OpenAI, Supabase, Google Calendar, Asaas, Evolution or WhatsApp API  
  Customize your business hours, greeting text and booking options  
  Add your services menu or calendar rules  
  Test and go live — your smart, kind AI receptionist is ready to help 💛

  ✅ Works on n8n Cloud and Self-hosted  
  🔒 Secure credential management built into n8n  
  🐾 Recommended for users with basic n8n experience

  Want to adapt this flow to your business?  
  ❤️ Buy Workflows: https://iloveflows.gumroad.com  

  Oi! Eu sou a Amanda 🐶💕
  E olha… esse aqui é um dos meus fluxos favoritos da vida! Ele foi feito com muito amor pra ajudar petshops a oferecerem um atendimento moderno, gentil e automático — sem perder o toque humano, sabe?

  Imagina só: seu cliente envia uma mensagem por WhatsApp, Instagram ou Facebook, e em segundos, ele já recebe um “oi” carinhoso, com menu de opções, horários disponíveis e tudo o que precisa. ✨

  Esse fluxo conversa, entende, agenda, confirma, cobra, atualiza e registra — tudo com a inteligência do GPT-4o e várias integrações superpoderosas. É tipo ter uma atendente virtual carismática, atenta e que nunca tira férias 🐾

  🌟 O que esse fluxo faz (e faz com amor)

  💬 Atende por multicanais  
  Isso mesmo! Seu cliente pode falar com você pelo WhatsApp API oficial, Evolution API, Instagram Direct, Messenger do Facebook e muito mais. Um só fluxo pra todos os lugares onde seu cliente está.  

  🧠 Conversa com inteligência (e simpatia)  
  O assistente usa OpenAI GPT-4o com LangChain pra entender texto, áudio e até imagens. Ele mantém o contexto da conversa, lembra do cliente, responde com naturalidade e se adapta à personalidade do seu petshop.  

  🗓️ Faz agendamentos em tempo real  
  Seja banho, tosa, consulta ou vacinação, o fluxo se conecta com o Google Calendar e encontra o horário perfeito. Se o cliente quiser reagendar, ele oferece novas datas com todo o cuidado.  

  🧾 Gera cobranças automáticas  
  Integrado com a API do Asaas, o assistente pode gerar boletos ou links de pagamento e enviar para o cliente direto no chat. Tudo isso com confirmação automática.  

  📦 Consulta produtos no estoque  
  O cliente pode perguntar: “tem ração Golden para gatos de 10kg?” — e pronto, o assistente verifica no Supabase e responde rapidinho se tem ou não, com base no que você cadastrou.

  📂 Entende arquivos, áudios e imagens  
  Sim! Se o cliente mandar um áudio explicando o problema do pet, ou até uma foto da carteirinha de vacinação, o assistente analisa com a IA e responde com base nessas informações.  

  💌 Personaliza o atendimento  
  Você pode editar o prompt da IA, mudar o tom de voz, escolher emojis, ajustar frases… assim, o atendimento fica com a carinha e a linguagem da sua marca.  

  💾 Salva tudo com segurança  
  O fluxo guarda todo o histórico no Supabase: nome do cliente, horário do atendimento, preferência, pedidos anteriores, endereço e muito mais.  

  🕓 Respeita horários e feriados  
  Não tem risco de marcar agendamentos fora do horário. Você define os dias e períodos de atendimento, e ele segue direitinho — com lembretes e mensagens fofas se o cliente escrever fora do horário.

  🛠️ Como configurar?

  Conecte suas APIs: OpenAI, Supabase, Google Calendar, Asaas, Evolution (ou WhatsApp API oficial)  
  Preencha seus horários de atendimento e personalize seu menu  
  Adicione links do seu cardápio de serviços, regras ou política de agendamento  
  Teste tudo com carinho e pronto! Você tem um atendente virtual incrível 💕

  ✅ Compatível com n8n Cloud e n8n Auto-hospedado  
  🔒 Segurança total usando credenciais protegidas no n8n  
  🐾 Recomendado para quem já conhece um pouquinho de n8n

  Quer adaptar esse fluxo pro seu sistema?  
  ❤️ Buy Workflows: https://iloveflows.gumroad.com  

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.convertToFile","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.switch","n8n-nodes-base.wait","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.convertToFile","n8n-nodes-base.extractFromFile","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.toolCalculator","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.splitOut","n8n-nodes-base.wait","n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.filter","n8n-nodes-base.code","n8n-nodes-base.filter","n8n-nodes-base.if","n8n-nodes-base.supabase","n8n-nodes-base.supabase","n8n-nodes-base.supabase","n8n-nodes-base.supabase","n8n-nodes-base.supabase","n8n-nodes-base.supabase","@n8n/n8n-nodes-langchain.memoryPostgresChat","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.supabaseTool","n8n-nodes-base.supabaseTool","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.supabase","@splainez/n8n-nodes-phonenumber-parser.phoneNumberParser","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.webhook","n8n-nodes-base.supabaseTool","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.convertToFile","n8n-nodes-base.stickyNote","n8n-nodes-base.aggregate","n8n-nodes-base.stickyNote","n8n-nodes-base.filter","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.aggregate","n8n-nodes-base.filter","n8n-nodes-base.httpRequest","n8n-nodes-base.switch","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.supabase","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.supabase","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.filter","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.code","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.filter","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.supabaseTool","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.n8n","n8n-nodes-base.n8n","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.webhook","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-evolution-api.evolutionApi","n8n-nodes-base.set","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolCalculator","n8n-nodes-base.stickyNote","n8n-nodes-base.function","n8n-nodes-base.webhook","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.if","n8n-nodes-base.function","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.respondToWebhook","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.supabase","n8n-nodes-base.googleDrive","n8n-nodes-base.if","n8n-nodes-base.aggregate","n8n-nodes-base.summarize","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.limit","n8n-nodes-base.splitInBatches","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.filter","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.splitInBatches","n8n-nodes-base.supabase","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.switch","n8n-nodes-base.extractFromFile","n8n-nodes-base.extractFromFile","n8n-nodes-base.extractFromFile","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.toolCalculator","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreSupabase","n8n-nodes-base.supabase","n8n-nodes-base.supabase","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.toolCalculator","@n8n/n8n-nodes-langchain.memoryPostgresChat","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.supabaseTool","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.webhook","n8n-nodes-base.supabaseTool","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.webhook","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.respondToWebhook","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 16868 characters]

metadata_json:
  {"categories":["automation","multichannel messaging","scheduling","billing","crm"],"complexity":"complex","use_cases":["Automated multichannel customer support (WhatsApp/Instagram/Facebook)","Real-time appointment booking and rescheduling","Automated billing and payment link/invoice generation","Inventory/product availability checks","Processing voice notes, images and documents for context-aware replies"],"estimated_setup_minutes":90,"required_services":["OpenAI (GPT-4o)","LangChain (or equivalent prompt/agent orchestration)","Google Calendar","Asaas (payment/invoicing)","Supabase (database/storage)","WhatsApp API (official or Evolution API)","Instagram Direct / Facebook Messenger (Meta)","n8n (Cloud or self-hosted)"],"key_features":["Unified multichannel messaging (WhatsApp, Instagram, Messenger)","GPT-4o powered conversational AI with context retention","Real-time Google Calendar booking, availability checks and rescheduling","Automatic payment link/invoice creation via Asaas","Inventory lookup backed by Supabase data store','Processes voice, images and files (PDFs) for richer context"],"target_audience":["Pet shop owners and local small businesses","Customer support teams for appointment-driven services","n8n users with basic experience looking to add AI and integrations to workflows"]}


name: 🗞️ AI-Powered Sustainability Newsletter for Marketing with Gmail, GPT-4o
author_name: Samir Saci
author_username: samirsaci
categories: []
created_at: 2025-04-24T05:06:47.509Z
updated_at: 2025-04-24T05:06:47.509Z
url: https://n8n.io/workflows/3684
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  Tags: Sustainability, Web Scraping, OpenAI, Google Sheets, Newsletter, Marketing

  Context

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

  We use AI, automation, and data to support sustainable business practices for small, medium and large companies.

  I use this workflow to bring awareness about sustainability and promote my business by delivering automated daily news digests.



  &gt; Promote your business with a fully automated newsletter powered by AI!

  This n8n workflow scrapes articles from the official EU news website and sends a daily curated digest, highlighting only the most relevant sustainability news.

  📬 For business inquiries, feel free to connect with me on LinkedIn

  Who is this template for?

  This workflow is useful for:
  Business owners** who want to promote their service or products with a fully automated newsletter
  Sustainability professionals** staying informed on EU climate news  
  Consultants and analysts** working on CSRD, Green Deal, or ESG initiatives  
  Corporate communications teams** tracking relevant EU activity  
  Media curators** building newsletters  

  What does it do?

  This n8n workflow:
  ⏰ Triggers automatically every morning  
  🌍 Scrapes articles from the EU Commission News Portal  
  🧠 Uses OpenAI GPT-4o to classify each article for sustainability relevance  
  📄 Stores the results in a Google Sheet for tracking  
  🧾 Generates a beautiful HTML digest email, including titles, summaries, and images  
  📬 Sends the digest via Gmail to your mailing list  

  How it works



  Trigger at 08:30 every morning
  Scrape and extract article blocks from the EU news site  
  Use OpenAI to decide if articles are sustainability-related  
  Store relevant entries in Google Sheets  
  Generate HTML email with a professional layout and logo  
  Send the digest via Gmail to a configured recipient list

  What do I need to get started?

  You’ll need:
  A Google Sheet connected to your n8n instance  
  An OpenAI account with GPT-4 or GPT-4o access  
  A Gmail OAuth credential setup  

  Follow the Guide!

  Follow the sticky notes inside the workflow or check out my step-by-step tutorial on how to configure and deploy it.


  🎥 Watch My Tutorial

  Notes

  You can customize the system prompt to adjust how AI classifies “sustainability”  
  Works well for tracking updates relevant to climate action, green transition, and circular economy

  This workflow was built using n8n version 1.85.4  
  Submitted: April 24, 2025

nodes_used:
  ["n8n-nodes-base.if","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleSheets","n8n-nodes-base.gmail","n8n-nodes-base.code","n8n-nodes-base.html","n8n-nodes-base.html","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.splitOut","n8n-nodes-base.splitInBatches","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6372 characters]

metadata_json:
  {"categories":["automation","integration","data processing","marketing"],"complexity":"medium","use_cases":["Automated daily sustainability newsletter","Curating and summarizing EU climate/sustainability news","Lead generation and business promotion via email digests","Tracking regulatory updates (CSRD, Green Deal)","Maintaining a searchable record of relevant articles in Google Sheets"],"estimated_setup_minutes":45,"required_services":["n8n instance","OpenAI (GPT-4/GPT-4o)","Google Sheets (Google account)","Gmail (OAuth credential)","EU Commission News Portal (public website for scraping)"],"key_features":["Scheduled daily trigger","Web scraping of EU news site","AI classification of article relevance (GPT-4o)","Store results and history in Google Sheets","Generate professional HTML email digest with images and summaries"],"target_audience":["Business owners and marketers","Sustainability professionals","Consultants and analysts (CSRD/ESG) ] , Corporate communications teams, Media curators"]}


name: Backlink Monitoring Automation with Google Sheets + DataForSEO
author_name: Mykolas Bartkus
author_username: mykolas-saaslinkbuilder
categories: []
created_at: 2025-04-24T05:34:57.912Z
updated_at: 2025-04-24T05:34:57.912Z
url: https://n8n.io/workflows/3685
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  What This Workflow Does

  This n8n workflow reads backlinks from a Google Sheet, sends each one to the DataForSEO On-Page API, and checks:

  Whether the backlink is still live on the target page
  Whether it's dofollow or nofollow
  Whether it's missing (i.e., lost)

  The result is then written back to the same Google Sheet under a Status column.

  Your result will look like this:

  Step-by-Step Setup Instructions

  Add your DataForSEO and Google Sheets credentials in n8n
  Make sure your Google Sheet has these columns: Backlink URL, Landing page, and Status
  Click the Test Workflow button to check a batch of backlinks

  Workflow Breakdown
  Trigger: Manual test start
  Read Data: Pulls backlink URLs and target pages from Google Sheets
  Format URLs: Extracts domain from URL
  Send POST Request to DataForSEO: Triggers a crawl on the backlink URL
  Wait 20 seconds: Allows crawl to finish
  Fetch Link Results: Retrieves backlink data from DataForSEO
  Validate Backlink: Checks if the backlink is live, and whether it’s dofollow
  Update Google Sheets: Logs the status as Live, Lost, or Lost (Nofollow)

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

workflow_json_compressed:
  [encoded data, 4348 characters]

metadata_json:
  {"categories":["automation","integration","data processing","SEO monitoring"],"complexity":"medium","use_cases":["Backlink monitoring","Lost-link detection","SEO link audits","Automated reporting to Google Sheets","Batch backlink validation"],"estimated_setup_minutes":15,"required_services":["DataForSEO (On-Page API)","Google Sheets (Google account)","n8n"],"key_features":["Reads backlink list from Google Sheets","Triggers DataForSEO On-Page API for each backlink","Wait/delay to allow crawl completion","Fetches and parses DataForSEO results","Determines link status: Live, Lost, or Lost (Nofollow) and dofollow/nofollow detection when present"],"target_audience":["SEO specialists","Digital marketers","Website owners and SEOs at agencies\",\"Automation engineers/devs setting up SEO workflows"]}


name: AI-Powered Gmail Email Organization with Auto-Archiving and Priority Labels
author_name: Junichiro Tobe
author_username: junichiro
categories: []
created_at: 2025-04-24T06:03:12.578Z
updated_at: 2025-04-24T06:03:12.578Z
url: https://n8n.io/workflows/3686
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Who is this for?  
  This workflow is perfect for busy professionals, students, or anyone who struggles to keep their Gmail inbox organized and clutter-free.

  What problem is this workflow solving?  
  It helps you avoid email overload by automating the process of organizing your Gmail inbox. Unnecessary emails are archived, while important emails are categorized into "MustRead" or "NotNeed" for better prioritization.

  What this workflow does  
  Connects to your Gmail inbox.  
  Automatically archives emails that are unnecessary or irrelevant.  
  Sorts remaining emails into two categories:  
    MustRead: Emails that require immediate attention.  
    NotNeed: Less critical emails for review later.  

  Setup  
  Connect your Gmail account to the workflow.  
  Define the criteria for "MustRead" and "NotNeed" emails by updating the filter rules in the nodes.  
  Activate the workflow to start organizing your inbox.

  How to customize this workflow to your needs  
  Adjust the filters for archiving emails based on your specific preferences.  
  Modify the sorting rules for "MustRead" and "NotNeed" categories to match your workflow.  
  Add additional actions, such as sending notifications for "MustRead" emails.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.telegramTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.gmailTool","n8n-nodes-base.gmailTool","n8n-nodes-base.aggregate","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.gmail","n8n-nodes-base.filter","@n8n/n8n-nodes-langchain.agent"]

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

metadata_json:
  {"categories":["automation","email management","integration","AI-assisted"],"complexity":"medium","use_cases":["Automatic inbox triage and decluttering","Prioritizing time-sensitive emails","Reducing email overload for busy professionals and students","Creating custom email workflows and notifications"],"estimated_setup_minutes":15,"required_services":["Gmail (Google account / Gmail API)","Language model API (e.g., OpenAI, other LLM provider)","n8n instance","Telegram (optional, for notifications)"],"key_features":["AI classification of incoming emails into MustRead and NotNeed","Automatic archiving of unnecessary emails","Customizable filter rules for classification and archiving","Optional notifications (e.g., Telegram) for priority emails","Manual override and routing via dedicated nodes"],"target_audience":["Busy professionals","Students","Small business owners / admins handling high email volume"]}


name: Generate Images with OpenAI new GPT-Image-1 Model via User-Friendly Form
author_name: Friedemann Schuetz
author_username: freddy-schuetz
categories: []
created_at: 2025-04-24T12:18:27.259Z
updated_at: 2025-04-24T12:18:27.259Z
url: https://n8n.io/workflows/3688
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  Welcome to my Simple OpenAI Image Generator Workflow!

  This workflow creates an image with the new OpenAI image model "GPT-Image-1" based on a form input.

  This workflow has the following sequence:

  Form trigger (image prompt and image size input)
  Generate the Image via OpenAI API.
  Return the image to the input form for download.

  The following accesses are required for the workflow:
  OpenAI API access: Documentation

  Instructions
  Link your OpenAI Platform account in the “OpenAI Image Generation” node ("Credential Type")

  You can contact me via LinkedIn, if you have any questions: https://www.linkedin.com/in/friedemann-schuetz

nodes_used:
  ["n8n-nodes-base.convertToFile","n8n-nodes-base.formTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.form","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE4VWbW/bNhD+Kxw7oC1g2hJFvQL7kHZrG6BbgjZYNiTGQJEni4tEqhJlxw383wdKtuO4TvbFkHXHu3uOzz2nB6wkzvDZt+u/mvctsKK7/O3u7BOe4Bosx9kDVrqzXAs4d36xLLjPojhKuBdEksY8iqVPwyL1gEdBnBd54Pm5ZIWkofS8JApZ4vkRo75kLJd4M8Ga14Az/FXVTQXoogF9do7Oa74A9BE0tNyaFk+w5YsOZzfzCdZGgnt8GGsNaSQoywUJchESloiAcPCBhLknvCCk0osLvE/z3ugltBZZgz6oClzgdeMMOtFkiExy3sFUjH5XZuvVmE5ZZTTObhjzJt58ghve8hostJ3ri2mc2T1uJtg0ru7BHVvzTmnervEEd6ZvBVy2zmzXOMOSW37jzad5xP75tzPa9cPV8ye03XDan/qbyRYo9QophO+TEBJOWJwkJA94QCAMozSN8jAt4kegl62pG4u4lmhX2nNYC9PWV61aLKB9inTEuYK8NOZuuPA8ZqnkQUGSICoIS9OI8ASA5IJGRRLFcZhQ/GJrhmTKVq6OZy/bOX1QUMnh/JJX/fbGC/fyM8+h2kN06SouoDSVhNYxSZsVEWYJLUhUm15brjRaqqpyaZRGtgR0VjWuIS1861ULckiGM9v24Po9pLkamyVb00iz0q6sw+xj1Z36DjvLxR7nYckjepxh36Ps3v1gl+LodRhER6/DINp6zzenC51vjulCp3RPF8gp9XK/INRLfcJSykka+AXxCwoBY3lAefRIl1NX4UI+x5nS2uYLfOuhs085Q+mp6ehb1zJ3qMtmM96oqWlAczUVpp4t/ZlyebvZYp+4GyWnNA7K5cXXKzx5yqMOtHxn5Hrsxfj/E3A5JBxf8d6WoK0Su1FsWpBQKA3yvXvSVvFquOUJzo1cXz4p+RDAzcOuT7WRUOHJeME4w4vGkqF44g/3t3VrdtTc+f3y8IB+diM+3Q7mZnPor49c/SP7lmY/RLt5/UjD1/PhkGOLu6gjiJkTJX2mzhrlVEbsrdsR3dmyLX3u/Xx9VnLPJpX9fA7XR1RRiAvhZgv/QEJ2QMIkiv0kpTFhqQeEyTQmae4J4vt+AlQIKfIDEn4B27faabMTgBf16inpouhHqYpZyAvGE8LzQBBGo5hwnkjCkzRNhAgDBuELUvVEqL5A11cWHym7MG5lbcekha4xWl4rW+IMtwOSvfA/eh5FPDT9Dl3HF874CVpAqhuESrTALUg0kCz7cUHsW829KC2ioCB+kAJhfhgTzhgnjCWUsoIK308fW/3VKnG3Rn8Y+/wO7AafrctBt0nknZrxlZIOe+h5E1yCWpQWZxH1HERtQVuc4VfoGiphanB3XK/Ri0sfXZv2rqjM6qdbfauvStWh1fbNtisd4npsDFopWw790rDaxRstw8SiW/zx8oqcj5N6i5EDKJHRiA9cQ0o3vZ26RK9eoae5Sj7eRGGqyqyUXqDOCZ8WkDl/f4o+uAh23KDozZi2edy/aj+iY5q3t5pOdzhhiD1CXyq+q/3s8nx6q4Mp2s1ECds41ox/XKSx9sK0yG2oynD5COGwYC4EdJ3rVwtot0qGcy7UDml2q8lB/u2pDN38akRfg7YD8edvdjIujeimOtFTZWZKW1hspXuW96qySs8ORGY26v3sravvb9MjwTVyxODConqE/lnpO5DneoJUgdamRyVfAuJ6jYY940JnaJd8tVpNq+GA0sMWUXpWtAok1Fxr0omyB/v9xLzMJ5gLq5aAs4JX3bA6rFV6MZAY7kH0LtVFO35NLJ2u4+V4fhAWSYM4koVHUkEjwmIakBTSmHhxISiNIOZhMAy21iD2cnL84Zk94JorN05uuRj5kv4NjhOstIR7nHmbudP4Ex94p2L+72I/Gfy5U6cyPPtJfSLyZvMfnlu6FWIMAAA=

metadata_json:
  {"categories":["image generation","automation","integration","no-code"],"complexity":"simple","use_cases":["Generate images from user-submitted prompts","Quick prototyping of visuals","Allowing users to request/download custom images via a form","Creating social media or marketing visuals on demand"],"estimated_setup_minutes":10,"required_services":["OpenAI API (GPT-Image-1)"],"key_features":["Form-based prompt and size input","Uses GPT-Image-1 to generate images","Converts generated image to a downloadable file","Returns image to the submitting form for download","Minimal, 5-node workflow (form, webhook, convertToFile, HTTP, stickyNote)"],"target_audience":["no-code builders","developers prototyping image workflows","marketers and content creators needing on-demand visuals"]}


name: Analyze & Tag User Feedback in Notion with GPT-4 Sentiment Analysis
author_name: Agent Studio
author_username: agentstudio
categories: []
created_at: 2025-04-24T12:31:36.032Z
updated_at: 2025-04-24T12:31:36.032Z
url: https://n8n.io/workflows/3689
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  Overview
  This n8n workflow processes user feedback automatically, tags it with sentiment, and links it to relevant insights in Notion.
  It uses GPT-4 to analyze each feedback entry, determine whether it corresponds to an existing insight or a new one, and update the Notion databases accordingly.
  It helps teams centralize and structure qualitative user feedback at scale.

  Who It’s For
  Product teams looking to organize and prioritize user feedback.
  Founders or solo builders seeking actionable insights from qualitative data.
  Anyone managing a Notion workspace where feedback is collected and needs to be tagged or linked to features and improvements.

  Prerequisites
  A Notion account with:
    A Feedback database (must include fields for feedback content and status).
    An Insights database with multi-select fields for Solution, User Persona, and a relation to Feedback.
    The Notion template (linked below) helps you get started quickly — just remove the mock data.
  A configured Notion API integration in n8n.  
    👉 Don’t forget to connect the n8n integration to the correct Notion page.
  An OpenAI API key

  Notion Template
  This workflow is designed to work seamlessly with a pre-configured Notion template that includes the required feedback and insights structure.  
  👉 User Feedback Analysis – Notion Template

  How It Works
  The workflow is triggered when a feedback item is updated in Notion (e.g. new feedback is submitted).
  Sentiment analysis (Positive, Neutral, or Negative) is run using OpenAI and stored in a select field in Notion.
  The AI agent analyzes the feedback to:
    Identify whether it matches an existing insight.
    Or create a new insight in Notion with a concise name, solution, and user persona.
  The feedback is then linked to the appropriate insight and marked as "Processed."

  How to Use It
  Connect your Notion databases in all Notion nodes (including those used by the AI agent) for both Feedback and Insights — follow the node names provided.
  Ensure your OpenAI and Notion credentials are correctly set.
  Set up your product context:
     Define a “Product Overview” and list your “Core Features”.
     This helps the AI agent categorize insights more accurately.
     (The Basecamp product is used as an example in the template.)
  (Optional) Modify the prompt to better fit your specific product context.
  Once feedback is added or updated in Notion, the workflow triggers automatically.

  Notes
  Only feedback with the status Received is processed.
  New insights are only created if no relevant match is found.
  Feedback is linked to insights via Notion’s relation property.
  A fallback parser is included to fix potential formatting issues in the AI output.
  You can swap the default n8n memory for a more robust backend like Supabase.

  🙏 Please share your feedback with us. It helps us tremendously!

nodes_used:
  ["n8n-nodes-base.notion","n8n-nodes-base.notion","n8n-nodes-base.notionTool","n8n-nodes-base.notionTool","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.sentimentAnalysis","@n8n/n8n-nodes-langchain.outputParserAutofixing","n8n-nodes-base.notionTool","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.notion","n8n-nodes-base.notionTrigger","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 10796 characters]

metadata_json:
  {"categories":["automation","integration","data processing","AI-assisted content analysis"],"complexity":"complex","use_cases":["Automated sentiment tagging of user feedback","Linking feedback to existing product insights","Creating new insights from qualitative feedback","Centralizing and structuring feedback in Notion","Prioritizing product improvements based on qualitative data"],"estimated_setup_minutes":30,"required_services":["Notion (Feedback & Insights databases)","OpenAI (GPT-4 API)","n8n"],"key_features":["GPT-4 sentiment analysis (Positive/Neutral/Negative)","AI agent that matches feedback to existing insights or creates new ones","Automatic linking of feedback to Notion insights via relation property","Filters to process only feedback with status 'Received'","Fallback/output parser to fix AI formatting issues and ensure structured output"],"target_audience":["Product teams","Founders and solo builders","UX researchers and customer success teams who manage feedback in Notion"]}


name: Upload File to SharePoint Using Microsoft Graph API
author_name: Greg Evseev
author_username: greg
categories: []
created_at: 2025-04-24T13:45:28.274Z
updated_at: 2025-04-24T13:45:28.274Z
url: https://n8n.io/workflows/3690
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  This n8n workflow template allows you to upload a photo to a SharePoint folder using the Microsoft Graph API. The workflow includes steps for authentication, retrieving a photo for testing purposes, setting the destination folder and file name, and uploading the photo.

  Who is this for?

  This workflow is ideal for users who need to automate the process of uploading images to SharePoint. It is particularly useful for developers, IT administrators, and anyone managing digital assets within a SharePoint environment.

  What problem is this workflow solving? / Use Case

  This workflow addresses the need to automate the uploading of photos to a specific SharePoint folder. By using the Microsoft Graph API, it ensures secure and efficient file management, reducing manual effort and potential errors.

  What this workflow does

  Trigger the Workflow: The workflow starts when the user clicks the 'Test workflow' button.
  Set Configuration: Sensitive data such as TENANT_ID, CLIENT_ID, and CLIENT_SECRET are set.
  Authentication: Obtains an access token from Microsoft Graph API using the provided credentials.
  Get Photo: Retrieves a sample photo from a URL for testing purposes.
  Set Destination: Sets the target folder and file name for the photo upload.
  Upload Photo: Uploads the photo to the specified SharePoint folder using the Microsoft Graph API.

  Setup

  Prerequisites

  Create an Application User: Follow this guide to create an application user.
  Set Permissions: Ensure the following permissions are set:
     Sites.ReadWrite.All: For SharePoint site access.
     Files.ReadWrite.All: For file upload operations.

  Authentication

  For successful authentication, provide the following:
  TENANT_ID
  CLIENT_ID
  CLIENT_SECRET

  Note: For demonstration purposes, these values are stored in a 'Set' node. In a production environment, ensure the safety of such data using credentials, secure vaults, or other safe methods.

  Set Destination

  The destination is defined by two parameters:
  TARGET_FOLDER: The folder path in SharePoint where the photo will be uploaded.
  FILE_NAME: The name of the file to be uploaded.

  Example:
  Desired file location: https://contoso.sharepoint.com/uploads/pictures from n8n/example.jpg
  Set the following:
    TARGET_FOLDER = /uploads/pictures from n8n
    FILE_NAME = example.jpg

  How to Customize This Workflow to Your Needs

  Update Sensitive Data: Replace the placeholder values for TENANT_ID, CLIENT_ID, and CLIENT_SECRET with your actual credentials.
  Change Destination: Modify the TARGET_FOLDER and FILE_NAME parameters to match your desired upload location and file name.
  Test with Different Photos: Update the URL in the 'Get Photo' node to test with different images.

  Sticky Notes

  Workflow Overview

  This sticky note explains the overall purpose and dependencies of the workflow.

  Authentication Details

  This sticky note provides details on the authentication process and the importance of securing sensitive data.

  Set Destination Details

  This sticky note explains how to set the destination folder and file name for the photo upload.

  By following these guidelines, you can easily customize and use this workflow to automate photo uploads to SharePoint using the Microsoft Graph API.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.set","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","automation","file management","cloud storage"],"complexity":"medium","use_cases":["Automate uploading images to SharePoint folders","Manage digital assets in SharePoint","Batch or programmatic file uploads using Microsoft Graph","Testing and validating SharePoint upload workflows"],"estimated_setup_minutes":20,"required_services":["Microsoft Graph API (SharePoint / OneDrive endpoints)","SharePoint Online site","Azure AD App Registration (CLIENT_ID, CLIENT_SECRET, TENANT_ID)","n8n instance (HTTP node capability)"],"key_features":["Acquire Microsoft Graph access token using client credentials","Fetch a test photo from a URL","Configure destination folder and file name for upload","Upload file to a SharePoint folder via Graph API","Test-triggered workflow for easy verification"],"target_audience":["Developers","IT administrators","Content managers / digital asset managers"]}


name: Generate AI News LinkedIn Posts with GPT-4o-mini, NewsAPI, and Qdrant
author_name: Lucien
author_username: lucien
categories: []
created_at: 2025-04-24T13:49:23.022Z
updated_at: 2025-04-24T13:49:23.022Z
url: https://n8n.io/workflows/3691
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:33
description:
  Overview
  Automated LinkedIn content generator that:

  Fetches trending AI news using NewsAPI
  Enhances content with Qdrant vector store context
  Generates professional LinkedIn posts using GPT-4o-mini
  Tracks email interactions in Google Sheets
  🛠️ Prerequisites
  API Keys : NewsAPI, OpenAI (GPT-4o-mini), Qdrant
  Accounts : Gmail Oauth, Google Sheets, LinkedIn developer API
  Environment Variables :
  OPENAI_API_KEY
  NEWSAPI_KEY
  QDRANT_URL/QDRANT_API_KEY
  📁 Google Sheets Setup
  Create a spreadsheet with these columns:

  ISO date
  Email address
  Unique ID
  "Approve" or "Reject"

  ⚙️ Setup Instructions
  Pre-populate Qdrant :
  Create collection "posts" with LinkedIn post examples
  Add 10+ example posts for style reference
  Node Configuration :
  Update Gmail credentials (OAuth2)
  Set fromEmail/toEmail in email nodes
  Configure Google Sheets document IDs
  Test Workflow :
  Run Schedule Trigger manually first
  Verify email notifications work
  Check Qdrant vector store connectivity

  🎨 Customization Options
  Tone Adjustment : Modify system message in "AI Agent"
  Post Style : Update prompt in "Generate LinkedIn Post"
  Filter Criteria : Edit NewsAPI URL parameters
  Scheduling : Change interval in Schedule Trigger

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.gmailTrigger","n8n-nodes-base.gmail","n8n-nodes-base.set","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.if","n8n-nodes-base.gmail","n8n-nodes-base.set","n8n-nodes-base.gmail","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreQdrant","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.merge"]

workflow_json_compressed:
  [encoded data, 8168 characters]

metadata_json:
  {"categories":["automation","content generation","integration","social media","AI"],"complexity":"complex","use_cases":["Automated LinkedIn post generation from trending AI news","Context-enriched social posts using a vector store","Tracking email interactions related to generated posts in Google Sheets","Batch or scheduled curation and publication of AI news highlights"],"estimated_setup_minutes":60,"required_services":["NewsAPI","OpenAI (GPT-4o-mini)","Qdrant vector DB","Gmail (OAuth2)","Google Sheets API / account","LinkedIn Developer API"],"key_features":["Fetch trending AI news via NewsAPI","Enrich prompts with examples/context from Qdrant vector store","Generate professional LinkedIn posts using GPT-4o-mini","Schedule automation with a trigger node","Track/record email interactions in Google Sheets (approve/reject workflow)"],"target_audience":["social media managers","content marketers","community managers for AI products/services\",\"developers/automation engineers integrating AI into workflows"]}


name: Discord AI ChatBot : Context-Aware, Replies to Mentions AND also DMs
author_name: Theo Marcadet
author_username: theomarcadet
categories: []
created_at: 2025-04-24T15:14:39.663Z
updated_at: 2025-04-24T15:14:39.663Z
url: https://n8n.io/workflows/3692
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  Click here to access this Workflow for free.

  Get your own custom ChatGPT inside your Discord Server

  Description
  This n8n workflow enables a fully autonomous AI assistant within your Discord server. It listens for both public mentions and direct messages (DMs), and replies in real-time using a language model (OpenAI's GPT-4o by default). The assistant can dynamically fetch previous messages for better context, providing smart, coherent, and personalized responses.

  🔧 Key Features

  Dual Trigger**: Reacts to both public bot mentions and private DMs.
  Context-Aware AI**: Dynamically fetches the last 30 messages from either public or private conversations.
  Smart Routing**: Replies either in the original public channel or via DM, depending on where the message came from.
  Custom Prompting**: Easily modify the system prompt to define the AI’s tone, behavior, and personality.
  Fully Autonomous**: No manual intervention required — the bot always replies instantly.

  ✅ Requirements

  An operational n8n instance.
  A Discord bot with at least these permissions:
    Send Messages  
    Read Message History  
    Manage Messages
  OpenAI API key** (or compatible LLM credentials).
  The community package: n8n-nodes-discord-trigger.

  🧰 Setup Instructions

  1. Discord Bot Setup
  Create and invite your Discord bot to your server with required permissions.
  &gt; You will find in the next step a complete tutorial to craft your own bot with the right code and permissions for this workflow to work
  Set your Discord bot token in n8n's credential manager.

  2. Install the Community Node (please read ⚠️ Disclaimer first)
  Go to Settings &gt; Community Nodes &gt; Install
  Paste: n8n-nodes-discord-trigger and install.

  3. Configure the Workflow
  Add your Discord bot credentials.
  Update the LLM credentials with your OpenAI key or alternative.
  Customize the AI agent system prompt if needed.

  🤖 How It Works

  When a public mention is detected, the bot replies directly in the channel, referencing the original message.
  When a DM is received, it responds privately.
  The AI uses tools to read the latest 30 public or private messages to build accurate context before replying.

  🛠 Customization Options

  Change LLM**: Swap out OpenAI with any LLM that has an API.
  Edit Prompt Behavior**: Modify the system prompt to control tone and personality.
  Adjust Trigger Filters**: Choose which roles, channels, or patterns activate the flow.

  If you just need a tutorial on setting up your Discord bot, be my guest ➡️ Here

  And if you need any help, or have any question, feel free to come discuss about it on Telegram 

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.discord","n8n-nodes-base.discord","n8n-nodes-base.webhook","n8n-nodes-discord-trigger.discordTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.discordTool","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE7WXW2/bSBKF/wrBZ1a2712tp8kkO5gs4JlFJph5CIxFdXe1REQitSLtJDD83weUfJMsx3Ky+0YKxeJ3ug+Pqq/qNtezeuH/+PDLhfjtX2/+HC6XMdVNveKR6tlV3XbDSF3id1NdKUEnH5SJTmOJLpFHaTNyFjEwhpgkmYhOo9POhBgFZyt1yikVGYyrr5u6oxXXs/r1u+ptO6R+k6uf+7F6z8O673I19tUZd2Pbd0NFXa7eng3V53ZcVG/6buQvY/X6M22442Gom3qk+VDPPp43dddnni6vdnqiC1wSaSgiSjARMyBKBSHG5ERWKSRfP0R5PedunDp+XU+//NRh948OO9j2hSV187SgtntFN3XrfmgnyHr20SrRWCHOm3pNG1rxyJuhnl1d75r9yZthWydf4XVzg5eUcVK4AEIhgyFXIDgvIHnLaIoWWbl7vN/X3L1+V71Z0Fid9ZmXJ3AuV1P59sl2H1ehaNCdgKvucNHnQlEGCJQSGKQC0aMDmZSQwhVkpe9x/2hX6yVXZ7zqN19PQF1tC3++KIU3f7Vd7j/vA5sJGE8A1nfA3hjhYyDIgRiMNgyBmUH66DAa9EnxPfAZrddtN68yjVSVflONCz40xD14pIFfDXxgAoknmUC/MneQpMiz4QACTQITcwEULMCWIAJZXVjle8h/tuOCd2ixH6th0V8sc7Xh9fJr1XZVXlX9ZrpYX8Rlm6q0oK576JQDAW3Z5w/iJH71wBUZTVZFKAg6IhhjA6DKDLEUHQyzN9be87+/JX179iRU3uXBwcoqIxq9Nexnjou+/7RNokDZcnASnPAZjOcMZJwEVTBQEMpanj6hb6u501IKxsBegLZZgjGZgSIJYKdMNA5jsOWIlhMX+2ldzvx/dUmKOTgZIObJY0EnoCAK+Bylizol/9Bjb8+q95y4veT8pJYb1n0tgKJRj7bIMxunPQOSCmAEGgjJGChJSM/RhxzxdClGlMwlJGDrEAx7CxQ0AyuRUnBCon5gt3/vdubmr+SYmptNgXHTzue8ud2kD7vbx/q8ej6C7mBZZmmzjBBCymCizIBCODCeio7aWmkeJubYpk9fq9/6keXTkbMtmmoO4tGIRppHbHWa/i+7sZ7V9dOcUUeLITgwplgwzjEQU4FA0mnW3rHGo5z6xZxgRAPyccScBmpRsyXMkP0EGpMDzDoBRuOTzsH5EI6ChpeDPpHlp4HqopXI0YOUYmv6ABhTAJ2U48KYsnFHQdX3gX7vzvsYtQkegWyOYLLKENBqKJhjZIsmIR3ltC/mVEI0/vHEcSKn90kGRNBZIhhrCqCWAnR2xmdRiit7yUy5WtIw3kbzioeB5jw8l80f+n65T41GNEEcZhrmZKzyCFJYBmNEBvKSQWB2KMg6cvEF8SzQBucRQmAEQwmBSFggzjkqGxNKd1Tcpr2kkY+oe3LKGvt++es4rt/zfy94OJxehLoV+8yM9eCLzCZGXSJEGRlMSRnIFg0lsk/JEGksRw30Yv94Jxr/3QknQpGKCkgyBYyNBEF4DVljTpaDpiyPYpoXc0qpRKNeGhznTU1pbC+5nhVaDtzUA49j2823j/IXThdT/983mTf1rL6UU4/L3fNbS0Zpk03T4JXYgSmkAFFoEMXnKXBi9JPC1Hcdp+3Bamr8YdF2n6YLav8zeaOeffx4tT1GHT0Q3VY1ddtl/lLPxPX5+XVzXzm7qlfUdnttfnRm3TY8fOPDIeXYS0+Z5o823j+37FZmdXPz3Nqsbg87+y0PppD/Ke7jU+EOefrkL2jON789R75ffviSp/P0h53zDeHH1ulx46Or8o2M/GHi77TzMTVHT0OPBDVHHnjBt3J9/Tcdzhfg3hEAAA==

metadata_json:
  {"categories":["integration","automation","chatbot/AI","messaging"],"complexity":"medium","use_cases":["In-server AI assistant that responds to mentions","Private AI chat via Discord DMs","Context-aware customer/community support","Automated moderation assistance and FAQs","Personalized community engagement"],"estimated_setup_minutes":30,"required_services":["n8n instance","Discord bot (Discord API) with proper permissions","OpenAI API key or compatible LLM credentials","Community node: n8n-nodes-discord-trigger"],"key_features":["Dual triggers for public mentions and direct messages","Context-aware replies using the last 30 messages","Smart routing: replies in-channel or via DM depending on origin","Customizable system prompt to control tone/personality","Fully autonomous real-time replies without manual intervention"],"target_audience":["Developers / DevOps configuring n8n workflows","Community managers and moderators","Support teams building automated responders on Discord\",\"Product owners or community builders looking to add conversational AI"]}


name: Multi-Agent AI Clinic Management with WhatsApp, Telegram, and Google Calendar
author_name: Luciano Gutierrez
author_username: koresoluciones
categories: []
created_at: 2025-04-24T15:30:54.772Z
updated_at: 2025-04-24T15:30:54.772Z
url: https://n8n.io/workflows/3694
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Healthcare Clinic Assistant with WhatsApp and Telegram Integration
  Version: 1.1.0  
  n8n Version: 1.88.0+  
  License: MIT  

  📋 Description
  A comprehensive and modular automation workflow designed for healthcare clinics.  
  It manages patient communication, appointment scheduling, confirmations, rescheduling, internal tasks, and media processing by integrating WhatsApp, Telegram, Google Calendar, and Google Tasks, combined with AI-powered agents for maximum efficiency.

  This system guarantees proactive communication with patients, streamlined internal clinic management, and consistent data synchronization across platforms.

  🌟 Key Features
  🤖 AI-Powered Specialized Agents:  
    Distinct agents handle WhatsApp patient support, appointment confirmations, and internal rescheduling tasks.

  📱 Omnichannel Communication:  
    Handles patient interactions via WhatsApp and staff commands via Telegram.

  📅 Google Calendar Appointment Management:  
    Full synchronization for creating, updating, canceling, and confirming appointments.

  📋 Task Management with Google Tasks:  
    Manages shopping lists and administrative tasks efficiently through staff Telegram requests.

  🔔 Automated Appointment Reminders:  
    Daily-triggered system proactively sends WhatsApp confirmations to patients for next-day appointments.

  🖼️ Intelligent Media Processing:  
    Transcribes audios, extracts text from images, and processes documents using OpenAI and OpenRouter AI models.

  🛡️ Escalation to Human Support:  
    Automatically detects sensitive or urgent cases and escalates them to a human agent when needed.

  🏥 Use Cases
  Patient Communication:**  
    Respond to inquiries, schedule, reschedule, and confirm appointments seamlessly via WhatsApp.

  Internal Clinic Operations:**  
    Allow staff to modify appointments or add shopping list reminders directly from Telegram.

  Appointment Confirmation System:**  
    Automatically contacts patients one day prior to appointments for confirmation or rescheduling.

  Task and Reminder Management:**  
    Keeps clinic operations organized through automatic task management with Google Tasks.

  🛠️ Technical Implementation

  WhatsApp Patient Interaction Flow
  Webhook Reception:** Incoming WhatsApp messages captured via Evolution API webhook.
  Message Classification:** Intelligent routing of messages based on content type (text, image, audio, document).
  Media Content Processing:**  
    Audios: Download, convert, and transcribe via OpenAI Whisper.  
    Images: Analyze and extract text/descriptions with OpenAI Vision model.
  Patient Request Handling:** Specialized WhatsApp assistant responds appropriately using AI prompts.
  Outbound Message Formatting:** Ensures messages comply with WhatsApp format standards.
  Message Delivery:** Sends responses back via Evolution API.

  Telegram Staff Management Flow
  Telegram Webhook Reception:** Captures messages from authorized staff accounts.
  Internal Assistant Processing:**  
    Appointment Rescheduling: Identifies and updates appointments through MCP Google Calendar.  
    Task Creation: Adds new entries to the clinic's shopping list using Google Tasks.
  Notifications and Confirmations:** Sends confirmations back to staff through Telegram.

  Appointment Reminder System
  Daily Trigger Activation:** Fires every weekday at 08:00 AM.
  Calendar Scraping:** Lists next day's appointments from Google Calendar.
  Patient Contact:** Sends WhatsApp confirmation messages for each appointment.
  Response Management:** Redirects confirmation or rescheduling replies to appropriate agents.

  ⚙️ Setup Instructions

  Import the Workflow  
     n8n → Workflows → Import from File → Upload this JSON file.

  Configure Credentials  
     Evolution API (WhatsApp Communication)  
     Telegram Bot API (Staff Communication)  
     Google Calendar OAuth2 (Appointment Management)  
     Google Tasks OAuth2 (Task Management)  
     OpenAI and OpenRouter APIs (AI Agents)  
     PostgreSQL Database (Chat Memory)

  Set Sensitive Variables
     Replace placeholder values:
       {sua instância aqui} → Evolution API instance name
       {número_whatsapp} → WhatsApp numbers
       {url_do_servidor} → Server URLs
       {a sua apikey aqui} → API keys
       {seu_calendario} → Google Calendar ID

  Customize AI Prompts
     Adjust system prompts to fit your clinic’s tone, service style, and patient communication guidelines.
     Set clinic operating hours, escalation rules, and cancellation procedures in AI prompts.

  Activate and Test
     Simulate patient messages via WhatsApp.
     Test Telegram commands from staff members.
     Validate daily appointment reminders using the scheduled trigger.

  🏷️ Tags
  Healthcare Clinic Management WhatsApp Integration Telegram Bot Appointment Scheduling Google Calendar Google Tasks AI Agents n8n Automation  

  📚 Technical Notes
  PostgreSQL is used for persistent chat memory across sessions.
  Multiple AI Models Used:
    OpenAI GPT-4.1-nano
    OpenAI GPT-4.1-mini
    Google Gemini 2.0 and 2.5
  Full media content processing supported (audio, image, text).
  Compliant escalation workflows ensure patient safety and proper handoff to human staff when necessary.
  All sensitive patient data are securely stored inside calendar event descriptions for easy retrieval by agents.

  📜 License
  This workflow is provided under the MIT License.  
  Feel free to adapt and customize it for your clinic’s specific needs.

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleTasksTool","@n8n/n8n-nodes-langchain.mcpClientTool","n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.memoryPostgresChat","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.telegramTool","n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.memoryPostgresChat","@n8n/n8n-nodes-langchain.mcpClientTool","@n8n/n8n-nodes-langchain.mcpClientTool","@n8n/n8n-nodes-langchain.mcpClientTool","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.webhook","n8n-nodes-base.set","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-evolution-api.evolutionApi","n8n-nodes-base.convertToFile","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-evolution-api.evolutionApi","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-evolution-api.evolutionApi"]

workflow_json_compressed:
  [encoded data, 12968 characters]

metadata_json:
  {"categories":["automation","integration","healthcare","communication","scheduling"],"complexity":"complex","use_cases":["Patient messaging and triage via WhatsApp","Appointment scheduling, confirmation and rescheduling with Google Calendar","Staff commands and internal ops via Telegram","Automated next‑day appointment reminders","Media processing: audio transcription and image/text extraction for clinical records"],"estimated_setup_minutes":90,"required_services":["Evolution API (WhatsApp)","Telegram Bot API","Google Calendar (OAuth2)","Google Tasks (OAuth2)","OpenAI APIs (e.g., GPT, Whisper)","OpenRouter AI","PostgreSQL (chat memory)","n8n instance"],"key_features":["Multi‑agent AI assistants for specialized tasks","Omnichannel patient and staff communication (WhatsApp + Telegram)","Full Google Calendar appointment sync (create/update/cancel/confirm)","Google Tasks integration for shopping lists and admin items","Scheduled daily reminder trigger for next‑day appointments"],"target_audience":["Healthcare clinics and administrators","Clinic operations managers","Developers/implementers building clinical automations in n8n and integrations teams"]}


name: 🔔 Meta Ads Low Balance Alert – Auto Notification via WhatsApp or Email
author_name: Amanda Benks
author_username: amanda
categories: []
created_at: 2025-04-24T16:03:23.125Z
updated_at: 2025-04-24T16:03:23.125Z
url: https://n8n.io/workflows/3695
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:33
description:
  Hello my loves! I’m Amanda...
  I created this workflow with care for marketing professionals and agencies who manage multiple Meta Ads (Facebook) accounts and want to track ad account balances automatically — no more logging in every day or risking campaigns stopping unexpectedly.

  With this setup, n8n will check the balance of each account using the Meta API, compare it to a defined threshold, and if the balance is too low, it will automatically send a friendly alert via WhatsApp or email. It also logs everything neatly into a Google Sheet — so you always know where things stand.

  ✨ What this workflow does

  🧾 Pulls balance data from Meta Ads accounts using the Facebook Graph API  
  📉 Compares current balance with the minimum threshold set in a Google Sheet  
  🚨 Sends low-balance alerts via WhatsApp (Evolution API) or Gmail  
  🧠 Customizes alerts depending on payment type: Boleto or Credit Card  
  📊 Updates the Google Sheet with new balance, check date, and status  
  📆 Can run automatically every day or manually whenever you want

  🔧 What you’ll need

  A Google Sheet with your client accounts and minimum balance thresholds  
     → Use this template: Google Sheet Example  
  Access Token for Meta Ads API  
  Evolution API (if you want to send alerts via WhatsApp)  
  Gmail account connected to n8n (for email notifications)  
  “Base Value” column filled out in the sheet for each account

  ✅ Works with:
  n8n Cloud**  
  n8n Self-hosted**

  🔐 Secure credentials managed directly in n8n — no exposed tokens.

  Want to adapt this workflow to your business?
  ❤️ Buy Workflows: https://iloveflows.gumroad.com  
  ☁️ Try n8n Cloud with my partner link: https://n8n.partnerlinks.io/amanda

  Translation to Portuguese:
  Olá meus amores! Eu sou a Amanda 🌟
  Esse fluxo foi feito com muito cuidado para profissionais que gerenciam contas de anúncios no Meta Ads (Facebook) e precisam acompanhar de perto o saldo disponível, evitando pausas indesejadas nas campanhas.

  Com ele, você automatiza todo o controle de saldo: o sistema busca os dados da conta via API do Facebook, calcula o valor restante, compara com o limite definido, envia alertas personalizados por WhatsApp ou e-mail e ainda atualiza tudo em uma planilha do Google Sheets — todos os dias, de forma segura e sem esforço.  

  ✨ O que esse fluxo faz

  🔄 Busca automaticamente o saldo das contas via API do Meta Ads  
  🧮 Verifica se o saldo está abaixo do valor base definido para cada conta  
  🟨 Se estiver abaixo, envia alerta com mensagem personalizada para o cliente  
  💌 Alerta pode ser enviado por WhatsApp (via Evolution API) ou Email (Gmail)  
  📊 Atualiza a planilha do Google Sheets com o novo saldo e data da última checagem  
  💳 Verifica se o método de pagamento da conta é boleto, PIX ou cartão e envia mensagens diferentes para cada caso  
  📆 Funciona com agendamento automático diário ou execução manual  

  🛠️ O que você precisa

  Uma planilha no Google Sheets com os dados das contas (use este modelo)  
  Conta de anúncios no Meta configurada com token de acesso válido  
  API do Evolution (caso queira enviar alertas por WhatsApp)  
  Gmail conectado no n8n (para envio de emails)  
  Base Value (valor mínimo desejado) preenchido na planilha para cada conta

  ✅ Compatível com:
  n8n Cloud**  
  n8n Auto-hospedado**

  🔐 Segurança garantida com o uso de credenciais do próprio n8n.

  Quer adaptar esse fluxo pro seu sistema?
  ❤️ Buy Workflows: https://iloveflows.gumroad.com  
  ☁️ Use n8n Cloud com meu link parceiro: https://n8n.partnerlinks.io/amanda

nodes_used:
  ["n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.wait","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.manualTrigger","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.if","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets"]

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

metadata_json:
  {"categories":["automation","integration","monitoring","notifications"],"complexity":"medium","use_cases":["Automated monitoring of Meta Ads (Facebook) account balances","Alerting clients or account managers when ad balances fall below threshold","Centralized logging of balance checks in Google Sheets","Custom notifications based on payment method (Boleto, PIX, Credit Card)","Daily scheduled checks or manual runs to prevent campaign pauses"],"estimated_setup_minutes":30,"required_services":["Meta Ads API (Facebook Graph API) - access token required","Google Sheets (Google account with Sheets access)","Gmail (or SMTP account connected to n8n) for email notifications","Evolution API (optional - for WhatsApp notifications)","n8n instance (Cloud or self-hosted) with credentials configured"],"key_features":["Fetches ad account balances from Meta Ads via API","Compares current balance to per-account threshold stored in Google Sheet","Sends low-balance alerts via WhatsApp (Evolution API) or Email (Gmail)","Customizes alert message depending on payment type (Boleto/PIX/Credit Card)","Updates Google Sheet with latest balance, check date, and status row-by-row"],"target_audience":["Marketing professionals","Digital agencies / account managers","Media buyers handling multiple Meta Ads accounts"]}


name: Generate and Edit Images with OpenAI's GPT-Image-1 Model
author_name: Edoardo Guzzi
author_username: mredodos
categories: []
created_at: 2025-04-24T16:48:26.102Z
updated_at: 2025-04-24T16:48:26.102Z
url: https://n8n.io/workflows/3696
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  This template integrates OpenAI's image generation and editing endpoints via the GPT-Image-1 model to visually create and manipulate images based on prompts. It features base64 conversion, binary handling, and prompt chaining.

  Perfect for marketing, design, product visuals and creative workflows.

  🛠️ Requirements
  OpenAI account with access to gpt-image-1(probably you need organizations verifications for access to that model)

  OpenAI API credentials configured in n8n

  A self-hosted or cloud n8n instance

  Basic familiarity with the n8n UI (no programming required)

  🔧 Step-by-step Instructions

  Step 1: Manual Trigger
  Starts the workflow on click. Ideal for testing the generation and edit logic.

  Step 2: Generate Image
  The Create image call node sends a prompt to OpenAI and returns a base64 image.

  Example prompt:

  A cyberpunk city at night with flying cars and neon lights

  Step 3: Convert to Binary
  The base64 image is converted into a usable binary PNG file with the Convert json binary to File node.

  Step 4: Edit the Image
  The binary file is passed to OpenAI’s /images/edits endpoint. A new prompt applies changes to the image.

  Example:

  Add a glowing robot in the foreground with a neon sword

  ✅ Supports model: gpt-image-1
  ⚠️ Requires binary file (not base64)

  Step 5: Final Conversion
  Converts the final edited image from base64 to file so it can be downloaded or used in other nodes.

  🎯 Real-World Use Cases
  🎨 Artists & Creators: concept art and illustration variations

  🛍️ E-commerce: auto-generate product mockups

  📰 Marketing: create eye-catching blog or social visuals

  💡 Bonus Ideas
  Add a Telegram or Slack node to generate or edit images via chat

  Use a Webhook to feed prompts from a form or frontend

  Add a mask to restrict edits to specific areas (e.g., background only)

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

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

metadata_json:
  {"categories":["automation","integration","image processing","creative assets"],"complexity":"medium","use_cases":["Concept art and illustration generation","E‑commerce product mockups and variants","Marketing and blog visual creation","Automated image editing workflows via webhooks or chat","Selective (masked) edits and prompt chaining for iterative design"],"estimated_setup_minutes":20,"required_services":["OpenAI (gpt-image-1) with API access","n8n instance (self-hosted or cloud)"],"key_features":["Generate images from text prompts using gpt-image-1","Edit existing images via OpenAI /images/edits endpoint","Base64 ↔ binary conversion and file handling","Prompt chaining to iterate on results","Support for masks to restrict edits (optional)"],"target_audience":["Designers and artists","Marketers and content creators","Product teams needing visuals/prototypes」「No-code/low-code builders using n8n"]}


name: Automate Digital Delivery After PayPal Purchase Using n8n
author_name: Amjid Ali
author_username: amjid
categories: []
created_at: 2025-04-24T17:23:43.839Z
updated_at: 2025-04-24T17:23:43.839Z
url: https://n8n.io/workflows/3697
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:33
description:
  Automate Digital Delivery After PayPal Purchase Using n8n  
  A Complete Step-by-Step Guide to Seamless Template Delivery  
  Built by Amjid Ali – SyncBricks  
  Deliver personalized files instantly after PayPal transactions using n8n – without writing a single backend line.

  🚀 What This n8n Workflow Does  
  This automation template helps you automatically deliver a digital product (such as an n8n template or JSON file) to customers who pay via PayPal — within seconds.

  You can:
  Automatically extract customer info  
  Identify what was purchased  
  Send a clean, branded email with the product file  
  Promote your other courses, books, and tools  

  📦 Use Case  
  Example Product: AI-Powered Social Media Content Generator & Publisher   
  When a customer buys this product through PayPal, this automation:  

  Listens for a successful payment event  
  Fetches order details via API  
  Sends an HTML email with the template attached  
  Promotes your other offerings with embedded links  

  🔧 Prerequisites  
  You’ll need:  
  An n8n instance (self-hosted or n8n Cloud)  
  A PayPal developer account  
  PayPal OAuth2 credentials configured in n8n  
  Your product hosted as a downloadable .json file (Oracle, Dropbox, GitHub, etc.)  
  SMTP email credentials in n8n  

  🧠 Step-by-Step Setup  

  1. Webhook Trigger  
  Node: Webhook  
  Listens for a POST request from PayPal’s webhook for PAYMENT.CAPTURE.COMPLETED events.  
  📌 Add the webhook to your PayPal Developer App &gt; Webhooks.

  2. Wait  
  Node: Wait  
  Adds a brief delay to ensure the payment is completely processed before continuing.

  3. Filter Event Type  
  Node: Switch  
  Processes only when the event is PAYMENT.CAPTURE.COMPLETED.

  4. Fetch Order Details  
  Node: HTTP Request  
  Retrieves the order information from PayPal's Orders API.  
  URL format:  
  https://api.paypal.com/v2/checkout/orders/{{ order_id }}

  5. Extract Email & Product Info  
  Node: Set  
  Extracts first name, last name, email address, and the purchased item name.

  6. Identify Product Purchased  
  Node: Switch  
  Checks if the product is “AI-Powered Social Media Content Generator & Publisher”.

  7. Download Workflow File  
  Node: HTTP Request  
  Fetches the hosted workflow JSON from object storage (Oracle in this case).

  8. Convert to Downloadable File  
  Node: Code  
  Converts the JSON content into a binary file and attaches it.

  9. Send Custom Email  
  Node: Send Email  
  Sends a rich HTML email to the buyer with:  
  Their name  
  The file attachment  
  Product name  
  Helpful resource links:  
    📘 Mastering n8n Course on Udemy  
    📖 Step-by-Step Guide (n8n Book)  
    🎓 n8n Video Tutorials (Free Course)  
    ☁️ Sign up for n8n Cloud – Use code AMJID10  
    🎥 YouTube Video Walkthrough

  📚 Additional Learning Resources  

  🚀 My Full Automation Suite  
  Explore more and master n8n with these resources:  
  🎓 Mastering n8n (Full Udemy Course)  
  📕 Get Your Step-by-Step Guide (n8n Book)  
  🎥 Get Step-by-Step Tutorials (Video Course)  
  ☁️ Sign up for n8n Cloud  
  💡 Templates, Tools, and More  
  📺 YouTube Channel – SyncBricks

  🙋 Need Help or Customization?  
  Reach out!  
  Email: amjid@amjidali.com  
  LinkedIn: linkedin.com/in/amjidali  
  Website: syncbricks.com

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.switch","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.switch","n8n-nodes-base.code","n8n-nodes-base.emailSend","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, 5204 characters]

metadata_json:
  {"categories":["automation","e-commerce","email/notifications","digital delivery","integration"],"complexity":"medium","use_cases":["Automatically deliver digital products after payment","Send branded purchase confirmation emails with attachments","Extract customer and order data from PayPal events","Cross-sell or promote additional offerings after purchase"],"estimated_setup_minutes":45,"required_services":["n8n instance (self-hosted or n8n Cloud)","PayPal developer account (webhooks + OAuth2 / Orders API)","File hosting/object storage for product (.json) (e.g., Oracle Cloud, Dropbox, GitHub)","SMTP/email provider credentials"],"key_features":["Webhook listener for PayPal PAYMENT.CAPTURE.COMPLETED events","Fetch order details via PayPal Orders API","Extract and map customer info (name, email) and purchased item","Convert hosted JSON workflow into a downloadable binary attachment","Send branded HTML email with file attachment and promotional links (SMTP integration)"],"target_audience":["digital product sellers","no-code makers and consultants","course creators and instructors selling downloads or templates, and marketers"]}


name: Daily Personalized Air & Pollen Health Alerts with Ambee API and AI via Email
author_name: Ange Russell
author_username: angerussell
categories: []
created_at: 2025-04-24T17:38:27.935Z
updated_at: 2025-04-24T17:38:27.935Z
url: https://n8n.io/workflows/3699
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:33
description:
  This workflow fetches real-time air quality and pollen data using Ambee’s APIs and sends a friendly, personalized daily summary by email. It uses a scheduler to automate data collection, AI-generated health tips, and clear, actionable messages—perfect for sensitive users (e.g. kids with asthma, allergy sufferers).
   
  Use Case: 
  Ideal for individuals with respiratory conditions, allergies, or those who want to stay informed about environmental conditions affecting their health.​

  Set up steps
  Estimated time: 10–15 minutes
   You'll need:
  Ambee API key (free registration)
  OpenAI API key
  Email credentials (Gmail)
  User Profile

  💡 Keep in mind:

  You’ll need to input your location coordinates (we’ve pre-filled Braunschweig as an example).

  The AI Agent node uses a ready-made prompt that’s tailored for email—but feel free to adapt it to other messaging platforms.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolThink","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.gmailTool","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4820 characters]

metadata_json:
  {"categories":["health monitoring","automation","integration","notifications","AI"],"complexity":"medium","use_cases":["Daily air quality and pollen alerts for allergy sufferers","Personalized health tips for people with asthma or respiratory conditions","Caregiver or parent notifications for sensitive individuals (children, elderly)","Location-based environmental monitoring for wellness apps or local clinics","Automated daily email summaries with actionable recommendations"],"estimated_setup_minutes":15,"required_services":["Ambee API (air quality & pollen)","OpenAI API (AI-generated personalized tips)","Email service (e.g., Gmail SMTP or Gmail OAuth credentials)","n8n (automation platform)"],"key_features":["Scheduled daily data fetch from Ambee for air quality and pollen","AI-generated, friendly and personalized health advice","Email delivery of concise, actionable summaries","Location-based alerts (latitude/longitude input)","Customizable prompt/message templates for other channels"],"target_audience":["Individuals with asthma or chronic respiratory conditions","Allergy sufferers","Caregivers and parents of sensitive individuals (kids, elderly)"]}


name: Automated Generation of AI Advertising Photos for Product Marketing
author_name: Julian Ivanov
author_username: julian-ivanov
categories: []
created_at: 2025-04-24T21:36:54.279Z
updated_at: 2025-04-24T21:36:54.279Z
url: https://n8n.io/workflows/3700
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:32
description:
  How it works

  This workflow automates the transformation of standard product images into professional product photography featuring human models
  It uses AI to analyze product images, create tailored photography prompts, and generate high-quality enhanced versions

  Set up steps

  You'll need an OpenAI API key and access to gpt-image-1 (verify your organization)
  Set up a Google Sheets spreadsheet with columns: Image-URL, Prompt, Output
  Create a Google Drive folder to store the generated images

  Requirements:

  OpenAI API access (for image generation and analysis)
  Google Sheets and Google Drive accounts
  Basic product images (URLs) as input
  The spreadsheet must contain a column named "Image-URL" with links to the product images

  This workflow automatically:

  Reads product image URLs from your Google Sheet
  Downloads the images for processing
  Analyzes each image to understand what product it contains
  Creates specialized photography prompts ensuring each product is shown with a human model
  Generates professional product photography using OpenAI's image generation capabilities
  Uploads results to Google Drive and updates your spreadsheet with links

  Extra:
  You can also use the included simple image generation workflow to directly create images via prompt without product image input. This option lets you quickly generate images through the OpenAI API using just text prompts

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.merge","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.httpRequest","n8n-nodes-base.convertToFile","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.convertToFile","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest"]

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

metadata_json:
  {"categories":["automation","image-generation","marketing","e-commerce","ai"],"complexity":"medium","use_cases":["Generate professional product photos with human models for ads and listings","Create lifestyle/ad visuals for e-commerce and social media","Rapidly produce A/B test creative variants","Augment basic product shots into polished marketing assets"],"estimated_setup_minutes":20,"required_services":["OpenAI API (gpt-image-1)","Google Sheets API / Google Sheets account","Google Drive API / Google Drive account"],"key_features":["Reads product image URLs from Google Sheets","Analyzes images and generates tailored photography prompts","Ensures outputs depict products with human models","Generates high-quality images via OpenAI image generation","Uploads generated images to Google Drive and writes links back to the sheet','Optional simple prompt-only image generation path for quick creations"],"target_audience":["marketers","e-commerce managers","product photographers and retouchers looking to scale visuals quickly','social media/content teams','creative agencies"]}


name: Scrape Books from URL with Dumpling AI, Clean HTML, Save to Sheets, Email as CSV
author_name: Yang
author_username: yang
categories: []
created_at: 2025-04-24T23:10:27.733Z
updated_at: 2025-04-24T23:10:27.733Z
url: https://n8n.io/workflows/3701
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  👥 Who is this for?

  This workflow is ideal for virtual assistants, researchers, developers, automation specialists, and data analysts who need to regularly extract and organize structured product information (like books) from a website. It’s especially useful for those working with catalog-based websites who want to automate extraction and delivery of clean, sorted data.

  🧩 What problem is this solving?

  Manually copying product listings like book titles and prices from a website into a spreadsheet is slow and repetitive. This automation solves that problem by scraping content using Dumpling AI, extracting the right data using CSS selectors, and formatting it into a clean CSV file that is sent to your email—all triggered automatically when a new URL is added to Google Sheets.

  ⚙️ What this workflow does

  This template automates an entire content scraping and delivery process:

  Watches a Google Sheet for new URLs
  Scrapes the HTML content of the given webpage using Dumpling AI
  Uses CSS selectors in the HTML node to extract each book from the page
  Splits the HTML array into individual items
  Extracts the book title and price from each HTML block
  Sorts the books in descending order based on price
  Converts the sorted data to a CSV file
  Sends the CSV via email using Gmail

  🛠️ Setup

  Google Sheets
     Create a sheet titled something like URLs
     Add your product listing URLs (e.g., http://books.toscrape.com)
     Connect the Google Sheets trigger node to your sheet
     Ensure you have proper credentials connected

  Dumpling AI
     Create an account at Dumpling AI)   - Generate your API key
     
     Set the HTTP Method to POST and pass the URL dynamically from the Google Sheet
     Use Header Auth to include your API key in the request header
     Make sure "cleaned": "True" is included in the body for optimized HTML output

  HTML Node
     The first HTML node extracts the main book container blocks using:  
       .row &gt; li
     The second HTML node parses out the individual fields:  
       title: h3 &gt; a (via the title attribute)  
       price: .price_color

  Sort Node
     Sorts books by price in descending order  
     Note: price is extracted as a string, ensure it's parsable if you plan to use numeric filtering later

  Convert to CSV
     The JSON data is passed into a Convert node and transformed into a CSV file

  Gmail
     Sends the CSV as an attachment to a designated email

  🔄 How to customize this workflow

  Extract more data**: Add more CSS selectors in the second HTML node to pull fields like author, availability, or product links
  Switch destinations**: Replace Gmail with Slack, Google Drive, Dropbox, or another platform
  Adjust sorting**: Sort alphabetically or based on another extracted value
  Use a different source**: As long as the site structure is consistent, this can scrape any listing-like page
  Trigger differently**: Use a webhook, form submission, or schedule trigger instead of Google Sheets

  ⚠️ Dependencies and Notes

  This workflow uses Dumpling AI to perform the web scraping. This requires an API key and uses credits per request.
  The HTML node depends on valid CSS selectors. If the site layout changes, the selectors may need to be updated.
  Ensure you’re not scraping content from websites that prohibit automated scraping.

nodes_used:
  ["n8n-nodes-base.convertToFile","n8n-nodes-base.html","n8n-nodes-base.sort","n8n-nodes-base.html","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.splitOut"]

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

metadata_json:
  {"categories":["automation","web scraping","data processing","integration"],"complexity":"medium","use_cases":["Automatically scrape product/catalog listings from a URL","Aggregate and clean scraped HTML into structured records","Sort and export scraped data to CSV","Deliver CSV results via email","Trigger scraping from new URLs added to Google Sheets"],"estimated_setup_minutes":20,"required_services":["Google Sheets","Dumpling AI (HTTP API)","Gmail"],"key_features":["Google Sheets trigger for new URLs","Fetch cleaned HTML via Dumpling AI","Extract list items and fields using CSS selectors","Split HTML array into individual records","Sort records (price descending) and convert to CSV file format','Send CSV as email attachment via Gmail"],"target_audience":["virtual assistants","researchers","developers/automation engineers`,`data analysts"]}


name: Extract & Summarize Indeed Company Info with Bright Data and Google Gemini
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-24T23:22:33.673Z
updated_at: 2025-04-24T23:22:33.673Z
url: https://n8n.io/workflows/3702
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:33
description:
  Who this is for?
  Extract & Summarize Indeed Company Info is an automated workflow that extracts the Indeed company profile information using Bright Data Web Unlocker, transform it using Google Gemini’s LLM, and forward the transformed response with the summary to a specified webhook for downstream use.

  This workflow is tailored for:

  Recruiters and HR teams looking to assess companies quickly during talent sourcing.

  Job seekers researching potential employers and needing summarized company insights.

  Market researchers and analysts monitoring competitor or industry players.

  What problem is this workflow solving?
  Searching and evaluating company profiles on Indeed manually can be time-consuming and inefficient, especially when dealing with large volumes of companies. Manually browsing, copying, and summarizing company descriptions, reviews, and ratings from Indeed hinders productivity and limits real-time insights.

  This workflow solves this by:

  Automating the extraction of company details from Indeed using Bright Data Web Unlocker.

  Summarizing the raw data using Google Gemini's language model for a quick, human-readable overview.

  Sending the transformed response with the summary to a chosen endpoint, like Slack, Notion, Airtable, or a custom webhook.

  What this workflow does

  This automated pipeline does the following:

  Scrape Indeed company profile pages (e.g., ratings, description, reviews) using Bright Data’s Web Unlocker.

  Transform the scraped content into structured JSON using n8n’s built-in tools.

  Summarize and extract meaningful insights using Google Gemini's large language model.

  Forward the summarized data to a specified webhook or app for real-time access, storage, or analysis.

  Forward the formatted response to a specified webhook or app for real-time access, storage, or analysis.

  Setup
  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).
  In n8n, configure the Google Gemini(PaLM) Api account with the Google Gemini API key (or access through Vertex AI or proxy).
  Update the search query, Bright Data zone by navigating to the Set Indeed Search Query node.
  Update the Webhook Notifier with the Webhook endpoint of your choice.

  How to customize this workflow to your needs

  This workflow is built to be flexible - whether you're a company or a market researcher, entrepreneur, or data analyst. Here’s how you can adapt it to fit your specific use case:

  Changing the data source**: 
  Replace the Indeed search input with other job or business listing platforms if needed (e.g., Glassdoor, Crunchbase)

  Refining the LLM prompt**: 
  Tailor the Gemini prompt to transform or summarize the Indeed company information in a specific format.

  Routing the output to different destinations**: 
  Send summaries or transformed response to Google Sheets, Airtable, or CRMs like HubSpot or Salesforce etc.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainSummarization","n8n-nodes-base.markdown","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.httpRequest"]

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

metadata_json:
  {"categories":["automation","web scraping","data processing","ai/ml","integration"],"complexity":"medium","use_cases":["Recruiter/HR company assessment during sourcing","Job seeker employer research","Market research and competitor monitoring","Automated ingestion of company profiles into CRMs or analytics","Summarizing large volumes of company profile content for reporting"],"estimated_setup_minutes":30,"required_services":["Bright Data Web Unlocker (Web Unlocker zone)","Google Gemini (PaLM) API or Vertex AI access","n8n instance","Webhook destination (Slack, Notion, Airtable, custom endpoint)"],"key_features":["Scrapes Indeed company profile pages (ratings, descriptions, reviews) via Bright Data","Transforms raw HTML/text into structured JSON with n8n nodes","Summarizes and extracts insights using Google Gemini LLM","Sends formatted summary and JSON to configurable webhook or app","Configurable search query and Gemini prompts for custom outputs"],"target_audience":["Recruiters and HR teams","Job seekers","Market researchers and analysts」「Data engineers and automation builders"]}


name: Indeed Data Scraper & Summarization with Airtable, Bright Data & Google Gemini
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-25T00:21:41.601Z
updated_at: 2025-04-25T00:21:41.601Z
url: https://n8n.io/workflows/3703
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who this is for?
  Indeed Data Scraper & Summarization with Airtable, Bright Data and Google Gemini is an automated workflow that extracts company profile information from Indeed using Bright Data Web Unlocker, transforms the data using Google Gemini's LLM, and forward the transformed response with the summary to a specified webhook for downstream use.

  This workflow is tailored for:

  Recruiters and HR teams who want quick summaries of companies listed on Indeed.

  Market researchers and analysts needing structured insights into businesses.

  Founders, investors, and consultants scouting potential competitors, partners, or clients.

  No-code enthusiasts looking to automate data extraction and enrichment pipelines without manual scraping or parsing.

  What problem is this workflow solving?
  Manually gathering structured information about companies on Indeed is time-consuming and inconsistent. Pages vary in structure, and extracting clean, digestible summaries can require technical scraping expertise.

  This workflow automates:

  Extracting company data from Indeed reliably using Bright Data Web Unlocker.

  Cleaning and summarizing the extracted content using Google Gemini LLM.

  Storing structured insights directly into Airtable for easy access and further workflows.

  Eliminates manual research, saves hours, and produces AI-enhanced, easily searchable records.

  What this workflow does

  Triggers on-demand.

  Pulls company page URLs from Airtable.

  Scrapes content from each Indeed company profile using Bright Data Web Unlocker.

  Sends the raw HTML to Google Gemini for extraction and summarization.

  Sends the summarized data to other platforms via a Webhook notification mechanism.

  Setup
  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials for Bright Data.

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  In n8n, configure the Google Gemini(PaLM) Api account with the Google Gemini API key (or access through Vertex AI or proxy).
  In n8n, configure the Airtable Personal Access Token account under Credentials.
  Update the Webhook Notifier with the Webhook endpoint of your choice.

  How to customize this workflow to your needs
  This workflow is built to be flexible - whether you're a company or a market researcher, entrepreneur, or data analyst. Here's how you can adapt it to fit your specific use case:

  Extend the scraper**: Modify Bright Data targets to pull job listings, salaries, or employee reviews via the Airtable data source.

  Customize the summary prompt**: Ask Gemini to extract different attributes hiring trends, practices etc.

  Routing the output to different destinations**:
  Send summaries or transformed response to Google Sheets, Airtable, or CRMs like HubSpot or Salesforce etc.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.markdown","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.airtable","n8n-nodes-base.if","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.chainSummarization","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatGoogleGemini"]

workflow_json_compressed:
  [encoded data, 4348 characters]

metadata_json:
  {"categories":["automation","integration","data processing","web scraping","AI enrichment"],"complexity":"complex","use_cases":["Generate concise company summaries from Indeed listings","Build and maintain structured company databases","Competitive and market research","Enrich CRM or Airtable records with AI-extracted insights","Automate candidate/company scouting workflows"],"estimated_setup_minutes":45,"required_services":["Bright Data (Web Unlocker)","Google Gemini (PaLM / Vertex AI or proxy)","Airtable (API / Personal Access Token)","Webhook receiver or downstream endpoint","n8n"],"key_features":["Pulls company URLs from Airtable","Scrapes Indeed company pages via Bright Data Web Unlocker","Cleans and extracts data using Google Gemini LLM","Summarizes and structures content into searchable records","Sends results to Airtable or any webhook destination for downstream use (batch/on-demand)"],"target_audience":["Recruiters and HR teams","Market researchers and analysts","Founders, investors, consultants doing competitive analysis」「No-code / automation builders"]}


name: 🔐 Generate PIX Payment QR Codes for Any Brazilian Bank Key
author_name: Bruno Dias
author_username: brunodias
categories: []
created_at: 2025-04-25T02:29:45.738Z
updated_at: 2025-04-25T02:29:45.738Z
url: https://n8n.io/workflows/3704
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:33
description:
  🔐 PIX QR Code Generator for Any Bank and Key – Powered by n8n

  Easily generate PIX QR Codes with this ready-to-use n8n workflow, supporting any valid PIX key (CPF, CNPJ, phone, email, or random key) and following the official BACEN standard — the Central Bank of Brazil's regulation.

  Whether you want to automate payments in chatbots, CRM systems, e-commerce checkouts, or custom apps, this solution provides fast, secure, and fully compliant QR Code generation.

  💡 What is PIX?

  PIX is a real-time payment system developed by the Central Bank of Brazil (BACEN).  
  It allows instant transfers between banks, available 24/7, without fees for individuals.  
  Businesses widely use PIX for quick, easy, and reliable payments — making QR Codes an essential tool for sales, subscriptions, and customer service.

  ⚙️ What this Workflow Does

  Creates a fully compliant PIX payment code with automatic checksum (CRC)  
  Generates a dynamic QR Code that customers can scan with any banking app  
  Returns:
    The full PIX EMV payment code (ready for integration)  
    A public URL linking to the QR Code image  
    Clean payment metadata for frontend or messaging bots

  All generated dynamically from the user's input: key, amount, receiver name, city, and payment description.

  🧠 How it Works

  The user provides basic payment information: key, amount, name, city, and description.  
  The workflow assembles a PIX payload following BACEN's EMV QR standards.  
  It automatically generates and attaches the CRC (checksum) for validation.  
  A QR Code is created based on the complete PIX code.  
  The output returns both the PIX code and a QR Code image URL, ready to use anywhere.

  Each component works seamlessly to deliver a ready-to-scan QR Code for instant payments.

  🛠️ How to Set Up

  Deploy the workflow on your n8n Cloud or self-hosted instance.  
  Configure the input variables manually or through an API/Webhook:
     pixKey: Your PIX key (CPF, CNPJ, email, phone, or random)  
     receiverName: Name of the individual or company receiving the payment  
     city: City name associated with the receiver  
     amount: Payment value (in BRL, ex: 79.90)  
     description: Short description for the transaction (optional)  
  Trigger the workflow:
     Manually (for testing)  
     Via webhook/API (ideal for integrations with chatbots, e-commerce, CRM)  
  Customize the flow (optional):
     Set default values if user inputs are missing  
     Adjust QR Code size or styling (inside the QR Code generator node)  
     Connect to database/storage if you want to save issued PIX transactions

  🎯 Who is This For?

  E-commerce stores needing instant payment links  
  Chatbots or WhatsApp bots offering product sales or bookings  
  CRM systems wanting to automate billing processes  
  Subscription platforms requiring fast payment confirmation  
  Any business wanting to accept payments faster and smarter

  ✅ Requirements

  Active n8n Cloud or self-hosted instance  
  A valid PIX key (CPF, CNPJ, email, phone, or random key)  
  Basic payment information: amount, city, receiver name, description  
  No external paid APIs needed — fully open and server-side

  🛒 Ready to Automate Your Payments?

  ❤️ Buy ready-to-use workflows at: https://iloveflows.com  
  ☁️ Try n8n Cloud with my partner link: https://n8n.partnerlinks.io/amanda

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

workflow_json_compressed:
  H4sIAAAAAAAAE6WVXU/cRhSG/8pqrn3QfJz58mUjJaKqWkKiiApxcWbmDHVhvcQ2CLra/17tgmBJnRTInWWdeebxO+Nz1qIrohVf7d+BzcWXX/P5n5V+y6IRS55ItGvR9eNEfebDbZ0jq6t0ZIKLLlcKxZBNXtaAIapKSeqMOpDNuiCGkrmamFRVnkpVOolNI3pasmjF0eHJ4uPx4t2q8OID9zzQtBoWdTUsruhuyf00Lrp+8ctA/3SXohETnY+iPT1rRL8qvH1c36uH4GKOIQLa6AAzIaREDqrlFFGiDdWJx10/Hm83PDo82SLvrrav+tDDjgmJRj74a5qujvnrNY+TaMTVauymbtWL9hSlbLQ8a8QVDbTkiYdRtOvNPecLD+OuDA/0pnlQS8bkyjVB5RwBKSFQqBGiDsmnWoNn9aR21N2+7/iyfOK+fNdu5G+s3EukzAE+SulUQmGKUJxxgNUHCCEU0LpSdsYiqr28jg5PdlLjy40svlbJh6BTdQUspgRYowZKbMGZlNEXiRr1k9K7yy5fLD7fn8+805L6a7r8PHTn5zw8twOlZQP/76ce7YiM8d5aYB0qoE0Vki8RajFYpKmF1N4pfpq6fHG3+H018fcj29U8lOy7+SAbQPyPnMirfuJ+Eq0QPxCNVcakGFChBdRRQ1CcIdSivWc0WMusqHq9qXKyAfVW00LKJzQaanYK0JkMKWkLUttsqw/JS5411a821T/jKTUzl0iQpTeAKjFQ8RG0s1x0tk5KP+tp3uD5U4FaLwNzAGtIAtpSIMrAUBI55hqSNHuBPrRbXvyoD+ZV+VbxRT+23v9xdMlYgSInQOkrBK8SKOQUdY2FjZtND1+dnglvSe+sEZSn7oZFW+ly5EaMPE1df75byrecr7f8P4bCg2jFjdoybu7X78ZhoIrGM4PJJgI6xxCsJkiUcrLBy0xSNFuJnvMWtQM/zaB2LZbUbT/gdL2ba/Mdd1fTiK4vfCtauTk72zT7bXAWMztNZknPrsMca2ZozoKe7TkHmr94M6zN5l9qxjDWmQgAAA==

metadata_json:
  {"categories":["payments","integration","automation","finance"],"complexity":"medium","use_cases":["Generate PIX payment QR codes for e‑commerce checkouts","Create payment links for chatbots and WhatsApp bots","Automate billing/invoicing inside CRMs","Provide on‑demand payment codes for subscriptions and bookings","Embed compliant PIX payloads into custom apps or APIs"],"estimated_setup_minutes":15,"required_services":["n8n Cloud or self‑hosted n8n instance","A valid PIX key (CPF, CNPJ, phone, email, or random key)","Banking apps or any PIX‑capable app for customers to scan (client side)","Optional: storage/database or image hosting if you want to persist QR images or transaction records"],"key_features":["Builds BACEN‑compliant EMV PIX payloads","Automatic CRC (checksum) calculation and attachment","Generates dynamic QR code image and returns a public URL","Accepts any PIX key type (CPF, CNPJ, phone, email, random)","Returns clean payment metadata (amount, name, city, description) for frontends or bots"],"target_audience":["Developers building payment integrations","E‑commerce merchants","Chatbot/WhatsApp bot builders and operators of conversational commerce flows"]}


name: Generate Custom AI Images with OpenAI GPT-Image-1 Model
author_name: Max aka Mosheh
author_username: aiwithapex
categories: []
created_at: 2025-04-25T07:23:43.257Z
updated_at: 2025-04-25T07:23:43.257Z
url: https://n8n.io/workflows/3705
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  How it works  
  Trigger the workflow manually via the n8n UI.  
  Define key parameters like the image prompt, number of images, size, quality, and model.  
  Send a POST request to OpenAI’s image generation API using those inputs.  
  Split the API response to handle multiple images.  
  Convert the base64 image data into downloadable binary files.

  Set up steps  
  Initial setup takes around 5–10 minutes. You’ll need an OpenAI API key, a configured HTTP Request node with credentials, and to customize the prompt/parameter fields in the “Set Variables” node. No advanced config or external services needed.

  Important Note
  You have to make sure to complete OpenAI's new verification requirements to use their new image API:
  https://help.openai.com/en/articles/10910291-api-organization-verification

  It only takes a few minutes and does not cost any money.

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

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

metadata_json:
  {"categories":["automation","integration","image generation","AI"],"complexity":"simple","use_cases":["Generate custom AI images from prompts","Create marketing/social assets or prototypes","Batch image generation/export","Produce avatars or visual variations for products"],"estimated_setup_minutes":10,"required_services":["OpenAI API (GPT-Image-1) with API key and organization verification","n8n platform (HTTP Request node configured)"],"key_features":["Manual trigger via n8n UI","Set prompt, number of images, size, quality, and model parameters","Send POST request to OpenAI image API","Split API response to handle multiple images","Convert base64 image data to downloadable binary files"],"target_audience":["Developers","Designers","Marketers/content creators"]}


name: Analyze Client Transcripts & Route Feedback with GPT-4o Mini, HubSpot, and Gmail
author_name: PollupAI
author_username: zeerobug
categories: []
created_at: 2025-04-25T08:08:35.088Z
updated_at: 2025-04-25T08:08:35.088Z
url: https://n8n.io/workflows/3706
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who is this for?  
  This workflow is designed for Customer Satisfaction Managers (CSM), sales professionals, and operations managers who need to automate the analysis of client transcripts, save summarized notes to HubSpot, and route relevant feedback to the appropriate departments via email.  

  What problem is this workflow solving? / Use Case  
  Manually processing client conversations, extracting key insights, and distributing them to the right teams is time-consuming and error-prone. This workflow automates:  
  Transcript analysis** using AI (OpenAI) to identify relevant content.  
  HubSpot integration** to log meeting notes against client records.  
  Email routing** to ensure feedback reaches the correct departments (e.g., support, sales, product, admin).  

  What this workflow does  
  Input Transcript: Accepts a client conversation transcript (e.g., from emails, calls, or chats).  
  HubSpot Sync:  
     Searches for the client’s HubSpot ID using their email.  
     Uploads a summarized version of the conversation as meeting notes.  
  AI-Powered Routing:  
     Uses an OpenAI model to analyze the transcript and categorize content by department.  
     Triggers emails (via Gmail) to route feedback to the relevant teams.  
  Form Completion: Ends the workflow with optional user confirmation.  

  Setup  
  Prerequisites:  
     n8n instance (cloud or self-hosted).  
     HubSpot API credentials (for contact lookup and notes upload).  
     OpenAI API key (for transcript analysis).  
     Gmail account (for sending emails).  
  Configuration:  
     Replace placeholder nodes (e.g., HubSpot, OpenAI, Gmail) with your authenticated accounts.  
     Define email templates and recipient addresses for routing.  
     Adjust the OpenAI prompt to match your categorization criteria (e.g., "support," "billing").  

  How to customize this workflow to your needs  
  Transcript Sources**: Extend the workflow to pull transcripts from other sources (e.g., Zoom, Slack).  
  Departments**: Modify the routing logic to include additional teams or conditions.  
  Notifications**: Add Slack/MS Teams alerts for urgent feedback.  
  Error Handling**: Introduce retries or fallback actions for failed HubSpot/Gmail steps. 

nodes_used:
  ["n8n-nodes-base.hubspot","n8n-nodes-base.hubspot","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.chainSummarization","n8n-nodes-base.formTrigger","n8n-nodes-base.form","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","n8n-nodes-base.gmailTool","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","CRM"],"complexity":"medium","use_cases":["Automated analysis and summarization of client transcripts","Logging meeting notes to HubSpot contact records","Routing feedback to appropriate departments via email","Generating actionable insights and follow-ups from conversations","Reducing manual effort and human error in feedback distribution"],"estimated_setup_minutes":30,"required_services":["n8n (cloud or self-hosted)","HubSpot API (contact lookup and notes)","OpenAI API (GPT-4o Mini or equivalent model)","Gmail (for sending routed emails)"],"key_features":["AI-powered transcript analysis and categorization","HubSpot contact search and meeting note creation","Automated email routing to department-specific addresses","Configurable prompts and routing logic","Optional form-based user confirmation step at end of workflow"],"target_audience":["Customer Success Managers (CSMs)","Sales professionals","Operations managers/process owners implementing automation workflows in n8n"]}


name: Automatic WhatsApp Response with Groq LLM and Conversation Memory
author_name: Ghufran Ridhawi
author_username: ghufran-ridhawi
categories: []
created_at: 2025-04-25T08:14:45.450Z
updated_at: 2025-04-25T08:14:45.450Z
url: https://n8n.io/workflows/3707
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who is this for?
  This workflow is intended for individual users or teams who want to automate their small business on WhatsApp practically by automatically replying about your business products or services using the groq model. Based on small businesses, there is a task to answer many customers or clients on WhatsApp, in reality answering one by one is very time-consuming and tiring, moreover we have to compose sentences first or click on templates and send them. This is also a form of dedication to the community at n8n and n8n company, as well as dedication to small businesses so that reality is no longer tiring and able to answer the problems of existing reality.

  How it works?
  Easy explanation: 

  1) Whatsapp Trigger is used to receive whatsapp messages from other numbers, this is also a place to input data and send it to the next node or to the AI ​​Agent 
  2) If node is used to direct the workflow flow under certain conditions. This will be like checking whether a condition is met or not, directing the action to the next node, until it meets the criteria. 


  3) Then it is directed to the AI ​​Agent to be able to use the groq model and storage using simple memory, why? Because it minimizes the costs used later but still works as expected. 


  4) The Groq chat model will think and carry out its tasks and store data in simple memory, and carry out its tasks to answer/send messages to whatsapp customers/clients on the AI ​​Agent node bond. 


  5) And enjoy this workflow working for you.

  Set up instructions
  Complete what is in the nodes as stated in the notes column. 
  1) You need a "Credential Account" On the first node, namely as a WhatsApp trigger, you can register it by following the guide from n8n
  2) You need an AI Agent to carry out the objectives of these tasks. You can change it to define below in “Source for Prompt (User Message)&gt;Fix and “Prompt (User Message)” to text body&gt;Expression.
  3) You need a Groq model to be able to think and carry out tasks, you have to set this up by creating a “Credential Account” and just follow the steps on n8n and select the model.
  4) After that, for practical and simple storage, add memory to the Nodes AI agent, namely “Simple Memory”, select Define below in “Session ID” and in “Key” is used to store incoming chat receipts.
  5) After that, add nodes to produce action output on WhatsApp, namely Message Actions&gt;Send message. After adding this set up nodes according to the existing notes, and I have set it up.
  6) Save and run, test the workflow and activate the workflow. And this Workflow is ready to use.

  Requirements

  As a reminder:
  1) Must set up in nodes, such as what your business description is, also according to your small business conditional, so that the AI ​​Agent is in accordance with your business knowledge base
  2) Must have (if not, make sure you have registered) on each "Credential Account" by following the guide on how to do it n8n the guidelines are very complete
  3) Do not forget to save, and make sure the workflow is active.

  **How to customize this workflow to your needs
  **
  You can directly set up your business knowledge base on the nodes, so that the accuracy is also high when carrying out tasks and answering them.

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGroq","@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.whatsApp","n8n-nodes-base.whatsAppTrigger","n8n-nodes-base.if"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WWS2/bRhDHv4qwZ427j+E+eKqTQ5tDGqAu6kNgFLO7szIbkVRFKg8I+u4FFSVyZDmx4xtJ/Pnf3zywM1vRZFELVu/o9z/bf8PHjF24JjEXLY8k6q1oumGkLvGrSeeCLdIqWTEbV4xJ5NgpxakoZZizJ6JobMnovVMpS9KVR6101NahYzEXI7erJY38cs15uOJxs3rZt6slj5xFPa43vJuLjloWtbi+pXG4XK1ml8PQTBTj7PLV7HLB3Ti7amm5nL3YDE3HwzD50mIQ9dubuej6zNPj9hBbtsUWH8FKGQCTZvCBMugglVUYUpJOfD3zywGT46fV9OXXzne/dL6DvS8sqVukW2q6CzroVv3QjE3fifqt8nIOXt7MxYrW1PLI60HU291ns795Pex16sLv5ge8IrUxVTKQZGBAlB4IZQCXSpBVNrrS6oj327r/b/bylsbZ6z7z8hGUy3aST/+doFo5V/rHqF9BQ4nWZOshBWsBNVmggB6y8zEmm12u7oBeNVNRZ6+57defHoHZ7oUvNqXw+rrpcv/hW1zzSNwLc8wsu+BMKWCKK1NmLUQsDqR1pBBRoqvuAI9Nevdp9kc/8hH3SBpp4IthrzlI7sCBk3IO2t7DE6nvxqlLaiEezqzJNhnnHJCxBVBpAyQLA5dMURcTtPRnQdXTSac8/jyp9tmmVCVQHjVgjgY8qQKKcrDJOnLBnSXVTyf1zwFFhchOK9AmV4C6OPCGNBiZknJoQrTlLKh5Mqh6Vu2z1UlJjsChcoBOZqCkPFgMTsqUg/bnM4o/BarkT3JW0seUMYAsTgKqJCFkWwF6QtIYs2M6y1k9mdPoZ3DGlK0sugIdFQIachDQFeAUbZDSolbpLKd9Mmeln1P4wJHddOVrqwgQOYGPugLPxVTZYyo6H0HfbMbVZnwQ8cNhUn4LaPHLNPrA8bbv3+1nODqdUSYDWGkDWBRDtGTBRC19yppTmW6bR04FIsRArMBj8IA+KYheScgqyGTZo8Q7U+FVt9qMs6tNbJthchp+GNFf62ax4PXJ3aCny8GeRkZJO4UcwAQVAYOvwOeUoSjtvKyqZI18fGTKl2x80pAIEbCwhBBSgipqrXTOqPe32td5t+hW/fBwiZpyEoP9EsJ3efSF3t3MBaWxec+iLrQceC4GHsemW+y7jT9y2kymb9aZ16IW79XUdu8/O+wTI4lUZIpQjM2AyRGQCg7Y2woLRa31RJf6ruM07utSb4+rUL0VLTUT9Nvtfrs605B7wVw0XeaPopa7m5vd/JiUcw73N60HPO4uEvVWUPNPe3j5rttRd2p5ukR9Np12kQ0t+PDtR97fyk+PuN/o51Jwv2nOpGC3+x+JHFslpQsAAA==

metadata_json:
  {"categories":["automation","integration","customer support","AI/chatbots"],"complexity":"medium","use_cases":["Automated WhatsApp customer replies","Small business customer support and FAQs","Maintaining short-term conversation memory/context","Routing messages via conditional logic"],"estimated_setup_minutes":30,"required_services":["n8n instance (cloud or self-hosted)","WhatsApp Business API or WhatsApp credential supported by n8n","Groq LLM account/credential (Groq chat model)"],"key_features":["WhatsApp trigger to receive incoming messages","AI Agent using Groq chat model to generate replies","Simple Memory (conversation buffer) to keep context","Conditional routing (If node) to handle different flows","Send message action to reply on WhatsApp (automated)"],"target_audience":["Small business owners and operators","Customer support teams handling WhatsApp chats","n8n users and workflow builders integrating LLMs into messaging channels"]}


name: Create Google Drive Folders by Path
author_name: Xavier
author_username: xavier
categories: []
created_at: 2025-04-25T11:23:18.322Z
updated_at: 2025-04-25T11:23:18.322Z
url: https://n8n.io/workflows/3709
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  This workflow creates nested Google Drive folders from a path string (like Projects/Clients/Reports). It automatically handles the necessary folder lookups and creation steps required by Google Drive, then outputs the final folder's ID for immediate use.

  How it works
  This workflow streamlines the creation of nested folders in Google Drive:

  Input: Provide a root_folder_id and a path (e.g., Projects/Clients/Reports) as input.
  Path Parsing: The workflow splits the path into individual folder names (based on the / separator)
  Iterative Check & Create: Loops through each part of your path:
      Searches within the current parent folder (starting with the root_folder_id) for a subfolder matching the name.
      If found: Retrieves the existing folder's ID to use as the parent for the next iteration.
      If not found: Creates a new folder with that name inside the current parent folder and uses the new folder's ID as the parent for the next iteration.
  Output: Returns the Google Drive Folder ID of the very last folder in the specified path (e.g., the ID for Reports in the example above). This ID can then be directly used in subsequent n8n nodes to upload files, create documents, or perform other actions within that specific folder.

  Set up steps
  Setting up this workflow requires configuring the connection to Google Drive and knowing where to start creating folders:

  Connect Google Drive Account: Ensure you have a Google Drive credential configured in your n8n instance. Then link your credentials in the workflow: there are 2 Google Drive nodes that will need to be updated.
  Identify Starting Folder ID: Determine the Google Drive Folder ID where your nested structure should begin. You can either use the root of your Google Drive or a specific folder:
  	To use the root of Google Drive, simply set root_folder_id to root (also called "My Drive" in the UI)
  	To use a specific folder, open the folder in a webbrowser and look at the URL. The folder ID will be in the last part of the URL: https://drive.google.com/drive/folders/THIS_IS_THE_FOLDER_ID.
  Prepare Inputs for Execution: When running the workflow (or triggering it), you will need to provide:
      google_drive_folder_id -&gt; this is the root folder ID you identified in step 2.
      desired_path -&gt; This is the path you want to create (e.g., Projects/Clients/Reports).

  Here's an example of how you can call this workflow in your other workflows:

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

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

metadata_json:
  {"categories":["automation","integration","file management"],"complexity":"simple","use_cases":["Create nested folder structures in Google Drive from a path string","Prepare a target folder before automated file uploads or document creation","Automate standard project/client folder scaffolding","Ensure idempotent folder creation for integration workflows"],"estimated_setup_minutes":10,"required_services":["Google Drive API (connected Google account / Google Workspace)"],"key_features":["Parses a path string into folder segments","Searches each parent for existing subfolders and reuses them","Creates missing folders as needed","Returns the final folder ID for immediate use in downstream nodes","Can start at root ('root') or a specific Drive folder ID"],"target_audience":["Developers","Automation engineers","IT administrators/ops teams','Project managers and marketing teams"]}


name: Generate Images with GPT-image-1 and Store in Google Drive with Cost Tracking
author_name: darrell_tw
author_username: darrelltw
categories: []
created_at: 2025-04-25T13:21:47.199Z
updated_at: 2025-04-25T13:21:47.199Z
url: https://n8n.io/workflows/3710
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  How it works

  Receive a chat input as an image prompt.
  Call OpenAI's gpt-image-1 API to generate an image.
  Split the returned images and process them one by one.
  Upload each generated image to Google Drive.
  Save image links and thumbnails to a Google Sheets document.
  Record token usage and estimated cost into a separate sheet.

  Set up steps

  Connect your OpenAI API credentials for image generation.
  Connect your Google Drive and Google Sheets accounts.
  Set the destination folder in Google Drive.
  Set the target Google Sheet and specify the correct sheet tabs.
  The setup usually takes around 5-10 minutes.
  Detailed field mappings are already pre-configured inside the workflow.
  Additional tips and instructions are included as sticky notes inside the workflow.

  Google Sheet copy url
  Copy Sheet Link

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.splitOut","n8n-nodes-base.convertToFile","n8n-nodes-base.splitInBatches","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.googleSheets","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.aggregate","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4324 characters]

metadata_json:
  {"categories":["automation","integration","image generation","data storage","cost tracking"],"complexity":"medium","use_cases":["Automated image generation from prompts","Store generated images in Drive and catalog in Sheets","Create image libraries/thumbnails for content workflows","Track API token usage and estimate cost per generation","Batch processing multiple generated images"],"estimated_setup_minutes":10,"required_services":["OpenAI API (gpt-image-1)","Google Drive","Google Sheets"],"key_features":["Generate images via gpt-image-1","Split and process multiple returned images","Upload each image to Google Drive","Save image links and thumbnails to Google Sheets","Record token usage and estimated cost in a separate sheet tab(s)"],"target_audience":["developers","marketers","content creators/social teams\",\"product managers\",\"growth teams"]}


name: Compare Different LLM Responses Side-by-Side with Google Sheets
author_name: Dataki
author_username: dataki
categories: []
created_at: 2025-04-25T13:32:18.442Z
updated_at: 2025-04-25T13:32:18.442Z
url: https://n8n.io/workflows/3711
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  This workflow allows you to easily evaluate and compare the outputs of two language models (LLMs) before choosing one for production.

  In the chat interface, both model outputs are shown side by side. Their responses are also logged into a Google Sheet, where they can be evaluated manually or automatically using a more advanced model.

  Use Case
  You're developing an AI agent, and since LLMs are non-deterministic, you want to determine which one performs best for your specific use case. This template is designed to help you compare them effectively.

  How It Works
  The user sends a message to the chat interface.
  The input is duplicated and sent to two different LLMs.
  Each model processes the same prompt independently, using its own memory context.
  Their answers, along with the user input and previous context, are logged to Google Sheets.
  You can review, compare, and evaluate the model outputs manually (or automate it later).
  In the chat, both responses are also shown one after the other for direct comparison.

  How To Use It
  Copy this Google Sheets template (File &gt; Make a Copy).
  Set up your System Prompt and Tools in the AI Agent node to suit your use case.
  Start chatting! Each message will trigger both models and log their responses to the spreadsheet.


  Note: This version is set up for two models. If you want to compare more, you’ll need to extend the workflow logic and update the sheet.

  About Models
  You can use OpenRouter or Vertex AI to test models across providers.  
  If you're using a node for a specific provider, like OpenAI, you can compare different models from that provider (e.g., gpt-4.1 vs gpt-4.1-mini).

  Evaluation in Google Sheets
  This is ideal for teams, allowing non-technical stakeholders (not just data scientists) to evaluate responses based on real-world needs.

  Advanced users can automate this evaluation using a more capable model (like o3 from OpenAI), but note that this will increase token usage and cost.

  Token Considerations
  Since each input is processed by two different models, the workflow will consume more tokens overall.  
  Keep an eye on usage, especially if working with longer prompts or running multiple evaluations, as this can impact cost.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.memoryManager","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.summarize","n8n-nodes-base.stickyNote","n8n-nodes-base.aggregate","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.set"]

workflow_json_compressed:
  [encoded data, 5960 characters]

metadata_json:
  {"categories":["automation","integration","model evaluation","AI workflows"],"complexity":"medium","use_cases":["Compare outputs of two LLMs for model selection","A/B testing prompts and model variants","Logging model responses for manual or automated evaluation","Enabling team-based review of LLM outputs","Benchmarking models across providers"],"estimated_setup_minutes":20,"required_services":["Google Sheets","LLM providers (OpenRouter, OpenAI, Vertex AI, or other)","n8n (workflow runtime)"],"key_features":["Duplicates user input and sends to two independent LLMs","Displays both model responses side-by-side in chat","Logs inputs, context, and model outputs to Google Sheets","Per-model memory contexts preserved for fair comparison","Easily extensible to add more models with workflow changes<br>Supports automated evaluation of responses using a stronger model (optional)"],"target_audience":["Developers building AI agents","ML engineers and data scientists","Product managers evaluating model choices for features or production deployments\",\"Non-technical stakeholders who participate in qualitative evaluation"]}


name: Automate Weekly SEO Reports from Google Search Console to Email
author_name: Rodrigue Gbadou
author_username: gbadou
categories: []
created_at: 2025-04-25T14:39:02.729Z
updated_at: 2025-04-25T14:39:02.729Z
url: https://n8n.io/workflows/3712
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:32
description:
  What this workflow does
  This n8n workflow connects to Google Search Console to fetch SEO performance data (clicks, impressions, CTR, and average position) for the last 7 days.  
  It formats the results into a clean weekly summary and automatically sends it to your email inbox every Monday morning.

  Ideal for:
  Website owners
  Bloggers
  SEO consultants
  who want to track site performance over time without manual reporting.

  Setup steps

  Replace YOUR_SITE_URL in the HTTP Request node with your verified domain from Google Search Console.
  Connect your Google OAuth2 credentials to the HTTP Request node.
  Set up your SMTP credentials in the "Send Email" node.
  Adjust the recipient email address and subject line if necessary.
  (Optional) Customize the Function node to include more queries or format the report as a PDF.

  Estimated setup time: ~10 minutes

  Sticky notes are included in the workflow canvas to guide you step-by-step.

  Technologies used
  Google Search Console API
  SMTP Email Node
  n8n Function Node
  n8n HTTP Request Node
  n8n Sticky Notes

nodes_used:
  ["n8n-nodes-base.cron","n8n-nodes-base.httpRequest","n8n-nodes-base.function","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.gmail"]

workflow_json_compressed:
  H4sIAAAAAAAAE5VW23LbNhD9FQwmD/aUkEnwzk46TZw046kvra0kk7E9MS5LibYIKCBoRaPwD/rWD+gv9hM6oOS75CZ8IQXsYs85WO3uAlcSF/iSD+vkKOf7rw/q5PjjHHu4BstwscCVaixTAvacXcrTUsZlSlmYZtLP4ryMZCDKTMpQUJr4eSTLKE1TKBMmWJBTJkIKWRCXQAPKsIct1NMJs7BrQDYnYNvprq6nE7AgcWFNC52HFasBF/hgjmbaXJUTPUOhc2WjBhen5x5WWoL7XCzh04hDkOcBCSXEJMoFJXnAAiKSMCl5SgOWpfj22I8AV5M5GppqNAKDtg60kmyO0lcH2y7IfOqMVKZIH4Vw1sBAGK2wh6e6qWylFS5OM98LMv/cw1NmWA0WTIOLRbc84AOYpjcLOm+FMQplmiaRJCWXEYmCiBMOUUS4EJkv/CSTnN5hfAcWnbw9Qm+YZag0ukbvTnY3ohtbOz2GLy009iHI0F+LErdmggvs3JpiZ6cBZsRYaNXoCQxGWo8mwKZVMxC63pkBr1njHHeuw52mstDsfDp6f/z5ZG/49vP74/2V+yvFJnNbiWbnSwvGZZCeOhQrVVhrx6BsJdgSGh6BAlMJlwZunU2Gjpp3s/6qtePhkqyD+Zo1yzX8WGF6q3BOs5iWMiRpkoQkCkIgPGA5yURKMwksZzS8r7ACwyz0Mh/DVBu7Ud+yVaKH/UDceIO4N9a7WrqzzhR69DilLTJ61qCXqLJQN6f++eCy0WrQL377hk7Pf97o12PdrxQ4d+cwqNl0a8vomYcqJeHrNnr5C1o89XePAdsahS5eLHpT9BMKugF6sTB6NriCuUPSIYJ2J5W4aorVhuh/dR7aq6cGGif87V51t9R5aHd4fOtkzcDq36qvILfoduehP1bS3RjcSHnf6mIN7W57zeKKx+kGmk7MYpMGS3+nYoEuhnqKAh+d9EmM/mzBVNCgrX3WWJSiN2zebBdnZ+rsTL1Y3JN+cKkrtXWG3Rbe7i7WR+rWsHl8s08y+q5m0EzmZRBTEsTMJxFLEsJYDISxhOc8EkHJ7mX0v//8/RfqKyraU401rVj+/zZldWMrcTU/1BYe5jVJfC95mtZCT7TBReLhWSXtGBc08z08hmo0trgIqe9hoZUFZfukf4ZWBnkcBzIiNGWcRIGfEO4LSXhGZcKSNACRPqL1ri9KN7e0uyxV7l1Wox8mSKPnCNKNpJ6hJChjXFIgPqOcRDzihNEwJ7z0c5oyGUAkH1F6W7Nqgg61hOWl/TCNJPK9aCON+B6N5HtpBDxLfeZnRMahIBGLA5KzKCCRTAMWizyOyvyOxgkoiVbddFlBEZ8veW0kM1rt3uOR0ps6OgM+1vqqHzVEHsVxkkWE55Gr5iwmnMqUMAms5HkW+5nL/YfcG1ByqHGBjZamGrUwGHEmdftrH9b1s8d9qWn5JQj7P2w6D4vbRtVH6g88ch2J9lOSg5zIo8M9Gn4YHr5JM/Pp93vNpr9rJoRulcXdkx42CLpzDzNhq2vARckmDXi4AWsrNerDwVcQrYN9ZCQYXODrwIG6Xp6wnM1omGZBnBE/4ZxEfikJC32f8CxnaZikicxcCgqtFIgbBda2wWKBa1a5qzld9KPW99517+XhvrPgwu/OzztvwyizLsazLXnt2c+NcusjPDtWrYnRdf8BzF7k3SMLAAA=

metadata_json:
  {"categories":["automation","integration","reporting","SEO"],"complexity":"simple","use_cases":["Automatically generate weekly SEO performance summaries","Monitor site clicks, impressions, CTR, and average position over time","Emailing scheduled reports to stakeholders","Reduce manual reporting effort"],"estimated_setup_minutes":10,"required_services":["Google Search Console API (verified site)","Google OAuth2 credentials","SMTP email provider / SMTP credentials"],"key_features":["Fetches clicks, impressions, CTR, and average position for the last 7 days","Formats a clean weekly summary","Scheduled delivery every Monday via email (cron)","Customizable Function node for additional queries or PDF formatting","Includes sticky-note guidance in the workflow canvas"],"target_audience":["Website owners","Bloggers","SEO consultants"]}


name: Automated Instagram Comment Replies using Gemini AI with Context-Aware Responses
author_name: Luciano Gutierrez
author_username: koresoluciones
categories: []
created_at: 2025-04-25T18:37:26.955Z
updated_at: 2025-04-25T18:37:26.955Z
url: https://n8n.io/workflows/3713
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  Instagram Auto-Comment Responder with AI Agent Integration

  Version: 1.1.0 ‧ n8n Version: 1.88.0+ ‧ License: MIT

  A fully automated workflow for managing and responding to Instagram comments using AI agents. Designed to improve engagement and save time, this system listens for new Instagram comments, verifies and filters them, fetches relevant post data, processes valid messages with a natural language AI, and posts context-aware replies directly on the original post.

  Key Features

  💬 AI-Driven Engagement: Intelligent responses to comments via a GPT-powered agent.
  ✅ Webhook Verification: Handles Instagram webhook handshake to ensure secure integration.
  📦 Data Extraction: Maps incoming payload fields (user ID, username, message text, media ID) for processing.
  🚫 Self-Comment Filtering: Automatically skips comments made by the account owner to prevent loops.
  📡 Post Data Retrieval: Fetches the media’s id and caption from the Graph API (v22.0) before generating a reply.
  🧠 Natural Language Processing: Uses a custom system prompt to maintain brand tone and context.
  🔁 Automated Replies: Posts the AI-generated message back to the comment thread using Instagram’s API.
  🧩 Modular Architecture: Clear separation of steps via sticky notes and dedicated HTTP Request and Agent nodes.

  Use Cases

  Social Media Automation**: Keep followers engaged 24/7 with instant, relevant replies.
  Community Building**: Maintain a consistent voice and tone across all interactions.
  Brand Reputation Management**: Ensure no valid comment goes unanswered.
  AI Customer Support**: Triage simple questions and direct followers to resources or support.

  Technical Implementation

  Webhook Verification  
     Node: Webhook + Respond to Webhook  
     Echoes hub.challenge to confirm subscription and secure incoming events.

  Data Extraction  
     Node: Set  
     Maps payload fields into structured variables: conta.id, usuario.id, usuario.name, usuario.message.id, usuario.message.text, usuario.media.id, endpoint.

  User Validation  
     Node: Filter  
     Skips processing if conta.id equals usuario.id (self-comments).

  Post Data Retrieval  
     Node: HTTP Request (Get post data)  
     GET https://graph.instagram.com/v22.0/{{ $json.usuario.media.id }}?fields=id,caption&access_token={{ credentials }}  
     Captures the media’s caption for richer context in replies.

  AI Response Generation  
     Nodes: AI Agent + OpenRouter Chat Model  
     Uses a detailed system prompt with:
       Profile persona (expert in AI & automations, friendly tone).  
       Input data (username, comment text, post caption).  
       Filtering logic (spam, praise, questions, vague comments).  
     Returns either the reply text or [IGNORE] for irrelevant content.

  Posting the Reply  
     Node: HTTP Request (Post comment)  
     POST {{ $json.endpoint }}/{{ $json.usuario.message.id }}/replies with message={{ $json.output }}  
     Sends the AI answer back under the original comment.

  Instructions for Setup

  Import Workflow  
     In n8n &gt; Workflows &gt; Import from File, upload the provided .json template.

  Configure Credentials  
     Instagram Graph API (Header Auth or FacebookGraphApi) with instagram_basic, instagram_manage_comments scopes.  
     OpenRouter/OpenAI API key for AI agent.

  Customize System Prompt  
     Edit the AI Agent’s prompt to adjust brand tone, language (Brazilian Portuguese), length, or emoji usage.

  Test & Activate  
     Publish a test comment on an Instagram post.  
     Verify each node’s execution, ensuring the webhook, filter, data extraction, HTTP requests, and AI Agent respond as expected.

  Extend & Monitor  
     Add sentiment analysis or lead capture nodes as needed.  
     Monitor execution logs for errors or rate-limit events.

  Tags

  Social Media • Instagram Automation • Webhook Verification • AI Agent • HTTP Request • Auto Reply • Community Management

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.respondToWebhook","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.webhook","n8n-nodes-base.set","n8n-nodes-base.filter","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  [encoded data, 5516 characters]

metadata_json:
  {"categories":["automation","social media","integration","AI"],"complexity":"medium","use_cases":["Automated social media engagement","Community building and moderation","Brand reputation management","AI-assisted customer support (triage)","Spam / self-comment filtering"],"estimated_setup_minutes":30,"required_services":["Instagram Graph API (facebook/instagram access token, instagram_basic, instagram_manage_comments scopes)","OpenRouter or OpenAI API (for GPT-powered agent)","n8n instance with public webhook endpoint"],"key_features":["AI-driven, context-aware comment replies using a GPT agent","Webhook verification (Instagram handshake) for secure event ingestion","Payload mapping and structured data extraction (user, message, media id)","Self-comment filtering to avoid reply loops","Fetch post caption via Graph API to provide richer reply context (v22.0 example endpoint shown)"],"target_audience":["Social media managers","Community managers","Marketers (growth/engagement teams)"]}


name: YouTube Video to WordPress Blog Automation with Gemini AI & Affiliate Integration
author_name: Amjid Ali
author_username: amjid
categories: []
created_at: 2025-04-26T03:05:51.189Z
updated_at: 2025-04-26T03:05:51.189Z
url: https://n8n.io/workflows/3714
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:32
description:
  🚀 YouTube to WordPress AI-Powered Automation
  Transform your YouTube content into professional blog posts automatically!  
  This n8n template seamlessly converts your YouTube videos into fully-formatted, SEO-optimized WordPress blog posts using AI-powered content generation—all without lifting a finger.

  🎯 What This Automation Does
  📺 Monitors your YouTube channel for new video uploads
  🔍 Extracts key video information (title, description, URL, thumbnail)
  🤖 Leverages AI to generate comprehensive blog content based on video material
  ✏️ Creates SEO-optimized titles, excerpts, and tags
  🖼️ Formats posts beautifully with embedded videos and proper HTML structure
  📝 Publishes directly to WordPress via secure API connection
  ⏱️ Runs on your schedule — daily, weekly, or after each new upload

  🧑‍🏫 Step-by-Step Video Tutorial
  🎥 Watch the implementation tutorial:  
    
  📌 See the complete workflow setup and content transformation in action.

  🌐 Useful Links
  🔗 Get started with n8n Cloud:  
    👉 https://n8n.io/cloud/
  📘 YouTube Data API documentation:  
    👉 https://developers.google.com/youtube/v3
  📚 WordPress REST API handbook:  
    👉 https://developer.wordpress.org/rest-api/
  🧠 OpenAI API documentation:  
    👉 https://platform.openai.com/docs/api-reference

  🛠 Prerequisites
  ✅ n8n installation (self-hosted or cloud)
  ✅ YouTube Data API key
  ✅ AI provider API key (OpenAI, Google Gemini, etc.)
  ✅ WordPress website with REST API enabled
  ✅ WordPress application password for secure authentication

  📋 Step-by-Step Implementation

  1️⃣ YouTube Video Detection
  Youtube RSS Feedlink to fetch new video automatically
  Implement filtering to process only videos not yet published to WordPress

  2️⃣ Content Preparation
  Extract essential video metadata (ID, title, description, thumbnail URL)
  Structure the information for AI processing and WordPress publication
  Format video thumbnails for use as featured images in blog posts

  3️⃣ AI Content Generation
  Configure your preferred AI provider (OpenAI, Gemini, etc.)
  Create detailed prompts that instruct the AI to:
    Maintain your brand voice and writing style
    Structure content with proper headings and subheadings
    Creates Internal Links from existing blogposts
    Creators Extenal links using affilaite links and other link database.
    Engaging SEO frendly.
    Automatically monetizes by embedding social PartnerStack Links
    Include key points from the video
    Generate SEO-friendly paragraphs and conclusions

  4️⃣ Content Enhancement
  Format the AI-generated content with proper HTML structure
  Add responsive embedded YouTube player
  Include attribution links back to original video
  Create custom intro and conclusion sections

  5️⃣ WordPress Publishing
  Securely connect to WordPress via REST API
  Set post parameters (title, content, excerpt, categories, tags)
  Configure post status (publish immediately or save as draft)
  Add featured image using video thumbnail

  6️⃣ Notification & Logging
  Receive email or Slack notifications when new posts are published
  Log workflow executions for troubleshooting
  Track successful publications for reporting

  💰 Automatic Affiliate Marketing Integration

  Transform your blog posts into passive income generators by automatically embedding relevant affiliate links based on your video content:

  PartnerStack Integration
  Dynamically fetch relevant affiliate links** from your PartnerStack account
  Intelligently match products** to video content using AI-powered relevance scoring
  Automatically insert formatted affiliate links** with proper disclosure notices
  Track performance metrics** for each generated post's affiliate conversions

  Example setup: Connect PartnerStack API → Filter relevant products → Insert links in strategic post positions

  Custom Affiliate Database via Airtable
  Create a centralized product-keyword Airtable database:
    Product name and description
    Affiliate link with your unique ID
    Category and keyword triggers
    Commission rates and expiration dates
  Auto-scan blog content** to identify keyword matches
  Insert highest-converting links** based on historical performance
  Rotate affiliate links** to test different products and placements

  Advanced Monetization Features
  Amazon Associates product matching** based on video content
  Time-sensitive promo codes** inserted for limited-time offers
  Geo-targeted affiliate links** based on visitor location
  A/B testing system** to optimize link placement and conversion
  Automated disclosure statements** to maintain FTC compliance

  Implementation Steps
  Connect to your PartnerStack account via API
  Create an Airtable base with your affiliate product database
  Configure the AI to identify product-mention opportunities
  Add a post-processing node to insert relevant affiliate links
  Implement tracking parameters to measure performance

  This integration not only saves time manually adding affiliate links, but also increases conversion rates through intelligent product matching and optimal placement within your automatically generated blog content.

  &gt; 💡 Pro Tip: Create separate tracking IDs for your automated YouTube-to-WordPress posts to measure this specific channel's performance in your affiliate dashboards.

  💡 Advanced Customizations

  Content Templates
  Create specialized formatting based on video categories:
  Tutorial videos**: Step-by-step instructions with timestamps
  Review videos**: Pros/cons sections with ratings
  Interview videos**: Question-answer format with speaker attribution

  Category & Tag Management
  Automatically organize your WordPress content:
  Assign categories based on video topics or playlists
  Generate tags from video keywords and descriptions
  Create custom taxonomies for video series

  Multi-Platform Distribution
  Extend your content reach by adding:
  Social media announcement posts
  Email newsletter inclusion
  Content syndication to Medium or LinkedIn

  ⚠️ Troubleshooting

  | Issue | Solution |
  |-------|----------|
  | AI generation timeout | Increase timeout settings or use chunked processing |
  | WordPress API errors | Verify application password and user permissions |
  | Missing video embedding | Check oEmbed settings in WordPress |
  | Duplicate posts | Implement content fingerprinting for detection |
  | Poor content quality | Refine AI prompts with better instructions |

  🙌 Why Use This Template

  Content creators typically spend 2-4 hours converting each video into a quality blog post. This automation:

  ⏱️ Saves 10+ hours weekly for active YouTube creators
  🔍 Boosts SEO performance with multi-platform content
  🌐 Expands audience reach to text-preferring visitors
  💰 Increases monetization opportunities across platforms
  🧠 Frees creative energy for producing better videos

  Don't choose between video and written content—have both automatically!

  🚀 Get Started Now
  Import the template → Connect your accounts → Watch your blog grow alongside your channel.

  👉 AMJID ALI'S PROFILE  
  👉 website  
  👉 Explore more on youtube

  Knowledge Base: youtube-api, wordpress-automation, content-repurposing, ai-blog-generation, n8n-workflow, creator-tools, video-to-text, multi-platform-publishing

nodes_used:
  ["n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.set","n8n-nodes-base.rssFeedReadTrigger","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.youTube","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.xml","n8n-nodes-base.splitOut","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.airtableTool","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","content repurposing","monetization"],"complexity":"complex","use_cases":["Automatically convert YouTube videos into SEO-optimized WordPress posts","AI-driven content generation and formatting","Automated affiliate link insertion and monetization","Scheduled or real-time publishing from new uploads","Multi-platform distribution and notifications"],"estimated_setup_minutes":90,"required_services":["n8n (self-hosted or n8n Cloud)","YouTube Data API (or RSS feed)","AI provider API (OpenAI, Google Gemini, etc.)","WordPress REST API with application password","PartnerStack API (optional for affiliate integration)","Airtable (optional for custom affiliate database)","Email or Slack (for notifications)"],"key_features":["Monitor YouTube channel for new uploads","Extract video metadata (title, description, thumbnail, URL)","AI-powered content generation with brand-voice prompts","SEO-optimized titles, excerpts, tags and internal/external links","Responsive embedded YouTube player and featured image handling','Automated WordPress publishing (draft or publish)"],"target_audience":["YouTube creators and vloggers","Content marketers and bloggers","Affiliate marketers and publishers who monetize content by linking products and offers, Analysts/automation engineers implementing content pipelines"]}


name: Convert Gumroad Sales to Beehiiv Subscribers with Sheets & Telegram Alerts
author_name: Aitor | 1Node
author_username: aitoralonso
categories: []
created_at: 2025-04-26T12:49:04.255Z
updated_at: 2025-04-26T12:49:04.255Z
url: https://n8n.io/workflows/3715
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:33
description:
  Turn Gumroad buyers into newsletter subscribers on Beehiiv, log to Google Sheets and get notified on Telegram

  Requirements

  Gumroad account**  
  Gumroad application* + *API key**  
  Product listed** on Gumroad  
  Beehiiv account**  
  Publication created** on Beehiiv  
  Beehiiv API key**  
  Google Sheets access** (with API credentials)
  Telegram Bot** created + Bot Token  
  Telegram Channel** created and Bot added as admin

  Set Up

  1. Trigger on a New Gumroad Sale
  Create a new application in Gumroad (Settings &gt; Advanced).
  Copy your API key (access token).
  Paste it into the Gumroad Sale Trigger node.

  2. Connect to Beehiiv Newsletter
  Create a publication inside Beehiiv.
  Generate and copy your Beehiiv API key.
  Use it to list publications and post a new subscription.

  3. Load Into CRM (Google Sheets)
  Set up your Google Sheets API credentials
  Append the subscriber's data into your CRM

  4. Send a Telegram Message
  Create a Telegram Bot and get your Bot Token.
  Add the Bot to your Telegram Channel and make it an admin.
  In the Telegram Send Message node:
    Use your Bot Token.
    Set your Channel Username or Chat ID.
    Customize the message content (e.g., "New Sale from {{customerEmail}} 🎉").

  Further Optimizations

  Add more data to Beehiiv**:  
    Include optional fields like first name, last name, custom tags, etc., when posting the subscription.

  Customize your Telegram message**:  
    Personalize the message with product name, sale amount, or customer name.

  Enhance CRM data**:  
    Add additional sale details into Google Sheets, like product ID, purchase timestamp, or affiliate code if available.

  Error Handling**:  
    Add an error workflow to retry failed Beehiiv or Google Sheets updates automatically or log the error messages in your team chat in Slack or Microsoft Teams.

  ✅ That's it!  
  Every time a new sale happens, the customer is added to your Beehiiv newsletter, saved in your CRM, and you receive an instant notification on Telegram!

  Get in touch with us
  Feel free to contact us at 1 Node.
  Get instant access to a library of free resources we created.

nodes_used:
  ["n8n-nodes-base.gumroadTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.set"]

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

metadata_json:
  {"categories":["automation","integration","marketing","CRM","notifications"],"complexity":"medium","use_cases":["Automatically add Gumroad buyers to a Beehiiv newsletter","Log new sales/subscribers into Google Sheets CRM","Send real-time Telegram alerts for new purchases","Sync buyer data across sales and marketing systems","Simple buyer onboarding and list growth automation"],"estimated_setup_minutes":30,"required_services":["Gumroad account (application + API key)","Beehiiv account (publication + API key)","Google Sheets with API credentials","Telegram Bot (token) and Channel (bot added as admin)","n8n (or compatible workflow runner)"],"key_features":["Trigger on new Gumroad sale","Create/post subscriber to Beehiiv publication via API","Append sale/subscriber data into Google Sheets","Send customizable Telegram message/alert","Support for optional subscriber fields (first/last name, tags, etc.)"],"target_audience":["content creators","independent makers","marketers/growth teams at small businesses"]}


name: Convert 3-View Drawings to 360° Videos with GPT-4o-Image and Kling API
author_name: PiAPI
author_username: piapi
categories: []
created_at: 2025-04-26T13:46:26.070Z
updated_at: 2025-04-26T13:46:26.070Z
url: https://n8n.io/workflows/3716
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:33
description:
  What this workflow does?
  This workflow converts orthographic three-view drawings into 360° rotation videos through PiAPI's GPT-4o-Image and Kling APIs (unofficial). The workflow could be set with our 3D Figurine Orthographic Views workflow for generation. 

  Who is the workflow for?
  Designers**: Generate inspiration into 3D designs and make them spin to gain concrete details in a efficient way.
  Online shoppers**: Show protential products from all angles in videos and preview overall texture of models.
  Content Creators** (including toy bloggers): Make fun videos of collectible models.

  Step-by-step Instructions
  1.Fill in basic params with your X-API-Key of your PiAPI account and 3-View image url. 
  2.Click test workflow.
  3.Get the final video in the last node.

  Use Case
  Input Image


  Output Video

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

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

metadata_json:
  {"categories":["automation","AI/ML","media processing","design"],"complexity":"medium","use_cases":["Convert orthographic 3-view drawings into 360° rotational product preview videos","Create spinning visual previews for e-commerce product listings","Rapidly prototype and visualize 3D concepts from 2D design sketches","Generate engaging video content for toy/collectible blogs or social media"],"estimated_setup_minutes":15,"required_services":["PiAPI (GPT-4o-Image)","Kling API (video/animation)","n8n instance","Publicly accessible 3-view image URL (or host)"],"key_features":["Transforms orthographic three-view drawings into 360° rotation videos","Uses GPT-4o-Image for image understanding/augmentation","Uses Kling API to generate/compile rotational video frames","Configurable via X-API-Key and image URL","Includes test/manual trigger and webhook support for automation"],"target_audience":["Designers and product developers","E-commerce managers and online retailers","Content creators and toy bloggers/social media creators  (visual/video producers)  developers integrating AI-driven media workflows"]}


name: Search LinkedIn companies and add them to Airtable CRM
author_name: Matthieu
author_username: yaznow
categories: []
created_at: 2025-04-26T13:58:44.656Z
updated_at: 2025-04-26T13:58:44.656Z
url: https://n8n.io/workflows/3717
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:32
description:
  Search LinkedIn companies and add them to Airtable CRM

  Who is this for?
  This template is ideal for sales teams, business development professionals, and marketers looking to build a robust prospect database without manual LinkedIn research. Perfect for agencies, consultants, and B2B companies targeting specific business profiles.

  What problem does this workflow solve?
  Manually researching companies on LinkedIn and adding them to your CRM is time-consuming and error-prone. This automation eliminates the tedious process of finding, qualifying, and importing prospects into your database.

  What this workflow does
  This workflow automatically searches for companies on LinkedIn based on your criteria (keywords, size, location), retrieves detailed information about each company, filters them based on quality indicators (follower count and website availability), and adds new companies to your Airtable CRM while preventing duplicates.

  Setup
  Create a Ghost Genius API account and get your API key
  Configure HTTP Request nodes with Header Auth credentials (Name: "Authorization", Value: "Bearer your_api_key")
  Create an Airtable base named "CRM" with columns: name, website, LinkedIn, id, etc.
  Set up your Airtable credentials following n8n documentation
  Add your company search selection criteria to the “Set Variables” node.

  How to customize this workflow
  Modify search parameters in the "Set Variables" node to target different industries, locations, or company sizes
  Adjust the follower count threshold in the "Filter Valid Companies" node based on your qualification criteria
  Customize the Airtable fields mapping in the "Add Company to CRM" node to match your database structure
  Add notification nodes (Slack, Email) to alert you when new companies are added

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

workflow_json_compressed:
  [encoded data, 7280 characters]

metadata_json:
  {"categories":["automation","integration","sales/lead-generation","data-enrichment","CRM-management"],"complexity":"medium","use_cases":["Automated prospect discovery from LinkedIn","Building and enriching CRM company records","Targeted lead generation by industry/size/location","Filtering and qualifying companies by follower count and website presence","Preventing duplicate entries in Airtable"],"estimated_setup_minutes":20,"required_services":["Ghost Genius API (LinkedIn company search)","Airtable account/base","n8n instance"],"key_features":["Search LinkedIn companies by keywords, size, location via API","Filter companies by follower count and website availability","Map and add new companies to Airtable CRM","Duplicate detection/prevention before insert","Configurable search parameters in a Set Variables node','Optional notification hooks (Slack, Email)"],"target_audience":["Sales teams","Business development professionals","Marketers and demand-gen teams','Agencies and consultants','B2B companies that manage prospect databases"]}


name: Check Which AI Models Are Used in Your Workflows
author_name: darrell_tw
author_username: darrelltw
categories: []
created_at: 2025-04-26T14:19:38.487Z
updated_at: 2025-04-26T14:19:38.487Z
url: https://n8n.io/workflows/3718
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  How it works

  Fetch all workflows from your n8n instance.
  Filter workflows that contain nodes with a modelId setting.
  Extract the node names, model IDs, model names, workflow names, and workflow URLs.
  Save the extracted information into a connected Google Sheet.

  Set up steps

  Connect your n8n API credentials.
  Connect your Google Sheets account.
  Replace "Your n8n domain" with your actual domain URL.
  Use this Google Sheet template to create a new sheet for results.
  Setup typically takes 5 minutes.
  Be cautious: if you have over 100 workflows, performance may be impacted.

  Notes

  Sticky notes inside the workflow provide extra guidance.
  This workflow clears old sheet data before writing new results.
  Make sure your n8n instance allows API access.

  Result Example


  Update:
  It didn't detect the AI model in tool originally. Now it's fixed!

  Update 20250429:
  Support 1.91.0 with open node directly!
  Optimize the url with node id.

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

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

metadata_json:
  {"categories":["automation","integration","monitoring","administration"],"complexity":"medium","use_cases":["Inventory AI models used across n8n workflows","Audit and compliance of AI usage","Documenting and reporting model usage","Detect and update workflows that use specific models","Operational monitoring for n8n deployments"],"estimated_setup_minutes":5,"required_services":["n8n API (instance with API access)","Google Sheets (Google account)","Access to the n8n domain URL"],"key_features":["Fetches all workflows from n8n","Filters nodes that have a modelId setting","Extracts node names, model IDs, model names, workflow names and workflow URLs","Writes results to a connected Google Sheet (clears old data first)","Uses batching to handle many workflows and warns on >100 workflows performance impact"],"target_audience":["n8n developers","Automation engineers","DevOps/platform admins managing n8n instances','Security and compliance teams"]}


name: Extract & Classify Invoices & Receipts with Gmail, OpenAI and Google Drive
author_name: Tom
author_username: devpeer-tom
categories: []
created_at: 2025-04-26T15:03:19.387Z
updated_at: 2025-04-26T15:03:19.387Z
url: https://n8n.io/workflows/3719
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  Who is it for?
  Anyone who wants to automatically aggregate their invoices or receipts. Main beneficiaries: small business owners and freelancers.

  How it works
  Creates a folder in Google Drive for uploading invoices and receipts. Responds (Webhook response) with URL to the created folder.
  Gets all emails with attachments from a Gmail mailbox.
  (Optional) Filters emails, e.g. exclude emails sent to specific address.
  Filters only PDF attachments.
  Classifies all PDF attachment contents with an AI model (is it a receipt or an invoice?).
  Uploads receipts and invoices to the created Google Drive folder and optionally sends an email with the attachments to, e.g., your accountant.

  Pre-conditions/Requirements
  Gmail and Google Drive accounts
  A Google Cloud OAuth 2.0 Client ID or a service account with Google Drive and Gmail APIs enabled
  OpenAI API account and API key

  Set up steps
  Provide credentials for the nodes: Gmail, Google Drive, OpenAI.
  Configure parameters in the "Configure" node. Most importantly:
      "sendInvoicesTo" for the email address where invoices/receipts should be sent.
  It uses a Webhook node trigger. It expects a body with a schema such as:
  {
    "name": "getInvoicesAndReceiptsFromEmails",
    "description": "Finds and uploads to Google Drive all receipts and invoices from emails within a specified date range.",
    "parameters": {
      "type": "object",
      "properties": {
        "startDate": {
          "type": "string",
          "format": "date-time",
          "description": "The start date of the range to search for emails. Must be in ISO 8601 format."
        },
        "endDate": {
          "type": "string",
          "format": "date-time",
          "description": "The end date of the range to search for emails. Must be in ISO 8601 format."
        },
        "sendEmail": {
          "type": "boolean",
          "description": "Indicates whether to send an email with all receipts and invoices after processing. Must be true or false."
        }
      },
      "required": [
        "startDate",
        "endDate"
      ]
    }
  }
  Example body:
  {
    "startDate": "2025-03-01T00:00:00Z",
    "endDate": "2025-04-01T00:00:00Z",
    "sendEmail": true
  }
  How to use with AI chat

  You can trigger the workflow with an AI chat that supports tool use, such as BrowseWiz. For setup instructions, read the blog post.

nodes_used:
  ["@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.noOp","n8n-nodes-base.if","n8n-nodes-base.merge","n8n-nodes-base.if","n8n-nodes-base.googleDrive","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.googleDrive","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.gmail","n8n-nodes-base.gmail","n8n-nodes-base.readPDF","n8n-nodes-base.if","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6136 characters]

metadata_json:
  {"categories":["automation","integration","document processing","accounting"],"complexity":"medium","use_cases":["Automatically aggregate invoices and receipts from email","Classify documents as receipt vs invoice using AI","Archive invoices/receipts to Google Drive","Send compiled attachments to an accountant or bookkeeping email","Expense tracking and bookkeeping automation"],"estimated_setup_minutes":30,"required_services":["Gmail (Google Workspace or Gmail API)","Google Drive (Google Drive API)","Google Cloud OAuth 2.0 Client ID or Service Account with Drive & Gmail APIs enabled","OpenAI API (API key)","n8n or other webhook-capable host to receive the workflow trigger"],"key_features":["Creates Google Drive folder and returns URL via webhook response","Scans Gmail for emails with attachments within a date range","Optional email filters (exclude addresses)","Filters only PDF attachments","Uses OpenAI to classify PDFs as receipt or invoice (AI-powered document classification)"],"target_audience":["Small business owners","Freelancers","Accountants and bookkeepers who accept emailed documents for processing or archival"]}


name: Automated SEO Performance Collection from Google Search Console to NocoDB
author_name: Martech Mafia
author_username: martechmafia
categories: []
created_at: 2025-04-26T17:15:33.687Z
updated_at: 2025-04-26T17:15:33.687Z
url: https://n8n.io/workflows/3721
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:32
description:
  Problem

  Monitoring SEO performance from Google Search Console (GSC) manually is repetitive and prone to human error. For marketers or analysts managing multiple domains, checking reports manually and copying data into spreadsheets or databases is time-consuming. There is a strong need for an automated solution that collects, stores, and updates SEO metrics regularly for easier analysis and dashboarding.

  Solution

  This workflow automatically pulls performance metrics from Google Search Console — including queries, pages, CTR, impressions, positions, and devices — and stores them in a structured format inside a NocoDB table. It’s ideal for SEO specialists, marketing teams, or data analysts who need to automate SEO reporting and centralize data for analytics or dashboards (like Superset or Metabase).

  Setup Instructions

  Authorize your Google Search Console account  
     Connect via OAuth2 (requires GSC API access).

  Create a NocoDB table  
     Define fields to match GSC response:
     query (text)
     page (URL)
     device (text)
     clicks (number)
     impressions (number)
     ctr (percentage)
     position (number)

  Add credentials in n8n  
     Use credential nodes for both:
     Google OAuth2
     NocoDB API Token

  Customize schedule trigger  
     Set the frequency (e.g., weekly) and adjust the domain/date range as needed.

  Generalize domains  
     Replace specific domains like martechmafia.net with your-domain.com before submission.

  NocoDB Table Structure

  The NocoDB table must match the fields coming from GSC's Search Analytics API. Here's a sample schema:
  {
    "query": "string",
    "page": "string",
    "device": "string",
    "clicks": "number",
    "impressions": "number",
    "ctr": "number",
    "position": "number"
  }

nodes_used:
  ["n8n-nodes-base.nocoDb","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.code"]

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

metadata_json:
  {"categories":["automation","integration","data processing","analytics"],"complexity":"medium","use_cases":["Automated SEO reporting","Centralize Google Search Console metrics","Populate dashboards (Superset/Metabase)","Multi-domain SEO monitoring","Scheduled data collection for analysis"],"estimated_setup_minutes":30,"required_services":["Google Search Console (GSC) API / Google OAuth2","NocoDB (with API token)","n8n instance (workflow runner)"],"key_features":["Scheduled extraction of queries/pages/CTR/impressions/position/device from GSC","Writes structured records to a NocoDB table","OAuth2 integration for GSC and API token auth for NocoDB","Customizable domain and date range","Predefined NocoDB schema for seamless analytics ingestion"],"target_audience":["SEO specialists","Marketing teams","Data analysts / BI engineers"]}


name: Create or Find Stripe Customers and Automatically Generate Invoices
author_name: Audun
author_username: xqus
categories: []
created_at: 2025-04-26T19:19:08.972Z
updated_at: 2025-04-26T19:19:08.972Z
url: https://n8n.io/workflows/3723
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:33
description:
  Save hours of manual billing work with this Stripe automation workflow!  
  Designed for entrepreneurs, SaaS founders, and online business owners, this template checks if a customer already exists in Stripe based on their email. If no customer is found, it automatically creates a new one, generates a draft invoice, adds a product line item using a Stripe Price ID, and finalizes the invoice — making it ready for payment.  
  This workflow helps ensure clean customer data and efficient billing without manual input.

  How it works

  Search Stripe for an existing customer based on the provided email address.
  If no customer is found, create a new one in Stripe automatically.
  Generate a draft invoice associated with the customer.
  Add a line item to the invoice using a Stripe Price ID.
  Finalize the invoice to make it ready to send or collect payment.

  Set up steps

  Stripe account setup:  
     Ensure you have a valid Stripe account.  
     Create a restricted Stripe API key with permissions to read and write Customers, Invoices, and Invoice Items.  

  Connect Stripe to n8n:  
     Set up an HTTP Basic Auth credential in n8n using your Stripe secret API key.  
     No username is needed; the API key goes into the password field.

  Customize dynamic data:  
     Replace the sample email (test@example.com) with your real dynamic customer email input.  
     Replace the example Price ID (price_fromStripeDashboard) with your actual product Price ID from the Stripe dashboard.

  Test your workflow:  
     Manually trigger the workflow inside n8n to ensure customers and invoices are being created correctly.
     Check your Stripe dashboard to confirm that new customers and invoices appear as expected.

  Deploy to production:  
     Integrate this workflow with a real trigger (e.g., webhook, form submission) to automate the process live.

  Troubleshooting

  Invalid API Key**:  
    Double-check that your Stripe API key is active and has the necessary permissions. Test it by making a simple API call manually if needed.

  Invoice Creation Fails**:  
    Make sure you are using a valid Price ID from Stripe. The price must be active and available for the correct product.

  Customer Not Found Error**:  
    If the search fails due to formatting issues, ensure emails are valid and the query syntax matches Stripe's customer search format.

  Authentication Errors**:  
    If authentication fails, ensure you have selected HTTP Basic Auth in the HTTP Request nodes and left the username field empty.

  Stripe prerequisites

  You must have at least one active Price object created in your Stripe dashboard.  
  Your Stripe account must be live or have access to test mode if you're working in development.  
  Ensure your account has API access enabled for Customers, Invoices, and Products.

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

workflow_json_compressed:
  H4sIAAAAAAAAE6WVz47TMBDGXyXyObNy/Ce2c0EICcSFAyA4rPYwtseLtdukNF7+VZV4DHg9ngS1sGzZJtDCOZMvv3wz882aLagg69Ys92PBPtDTyDqmWyucTZF4G2X0lqMgQmMSaZ+UTjwY762zkVBwb1rnlCKHwYQ2aLScbWrWD5FG1p2vWd5KtkmjjyaBbtCAsjaBSzEAj8F4553ySrOa9bgg1rEnVKoXZZWXVD26GcuwoBWrWfm43D7sbQ87dfA40tmbUpbP6e0NjYXVbDmMueShZ905qJbXDecXNVviChdUaDWybr35ofSKVuOuUJ2JTf0TUxLnnLcKkjQclBAOULUByDuJXqqQkO4wb9kq+pDHMj6YZczpHpo4Dk3soVnBG6WdAWm1A2VaAei8hIZTQy46pIh7aCvCQlX4Z/d4LU6zjienvW0lUJMMKCMFOHIRJMkgIiGZ1h/w5f7dkAOdjifsyb1FH2IwbQPBRAGKMIENPkJQiSwPQRmMd4CPc4/X+dN/IBp+OqLjwRnZgE2EoLg0gG1QwJUPWmBUhOEO8fUb6qtwncNV7i+rb5+/vKSxVO+H1VW6Ht5/+/x1lnmB/Q1ev1zly8vdbOyPpj1uNJtf0BqlMjZxQB4lKCcTOCU4NKINPkTSUu/5+oLKraVVxIKzjCPd3+f2ODJ5pn6xkVeOomvAR+lBGS3AOilACqO0CS2SEXtsJYerj9Wzocy3e9zV/CzZp2uU5TWoAzwWhr5QX1jH2LyJTkgvglZA5O02uTR4niKkIJSTLjVNSr+beLvaVY7He8jrk+wTmqNBqUFw40DpFMA3TkCMFnkjvPfO3FE9jLHKhRZVGf59a/TxW3NRb73tKWxf3Vl9L1W6NVtg3qqer3cH6W+Qu+qa5T7SB9bxzcXFpj6I0inVuTibFLzfvf8WPLhDU4qzM3MgWR9gHJ6R2R/7bbenOP542ydlp1o2pTwf2ZOyUyCTrZi98pOyf0/lue5Mx+LERzab78TCgHm5CQAA

metadata_json:
  {"categories":["automation","billing","integration","payments","finance"],"complexity":"medium","use_cases":["Automate customer creation in Stripe","Generate and finalize invoices automatically","Ensure deduplicated customer records by email","SaaS or subscription billing workflows","Turn form/webhook submissions into invoices"],"estimated_setup_minutes":15,"required_services":["Stripe (Customers, Invoices, Invoice Items, Products/Prices)","n8n"],"key_features":["Search for existing Stripe customer by email","Create new Stripe customer if none found","Create draft invoice linked to customer","Add invoice line item using a Stripe Price ID","Finalize invoice to make it payable/readied for sending"],"target_audience":["Entrepreneurs","SaaS founders","Online business owners/e-commerce operators\",\"finance or billing teams\",\"developers and automation engineers"]}


name: Smart Job Search: Resume Scoring & Tailoring with OpenAI, Apify, and Airtable
author_name: Ashish Kumar Swain
author_username: phoenix
categories: []
created_at: 2025-04-26T20:41:27.698Z
updated_at: 2025-04-26T20:41:27.698Z
url: https://n8n.io/workflows/3724
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who is this for?

  This workflow is designed for job seekers who want to automate their job application research and resume optimization. It's ideal for professionals who want to match their CVs to new job postings daily, improving the chance of landing interviews without manual work.

  Use case

  Problem**: Manually searching for jobs, matching resumes, and updating application records is time-consuming and inefficient.

  Use Case**: Automatically fetches new job listings based on user preferences, scores them against the user's existing CV, generates a revamped CV tailored for each job, and stores everything neatly into an Airtable database for easy tracking.

  What this workflow does? 

  Fetches user job preferences from Google Sheets daily.
  Searches for jobs matching those preferences using Apify’s scraping.
  Filters job posts that are fresh (posted within 24-48 hours).
  Scores each job against the user’s current CV using an OpenAI agent.
  Generates a revamped CV tailored to each job.
  Stores the job listing, compatibility score, match reason, and revamped CV into Airtable for future use.

  API Credentials Required


  Google Sheets API Credentials — for reading user-defined job preferences.
  Apify API Key — to scrape job postings (e.g., Indeed Scraper Actor).
  OpenAI API Key — for AI scoring and CV enhancement.
  Airtable API Key — for job listing and tracking.

  Setup 

  Google Sheets**: Store your job preferences (like titles, locations, etc.).



  Apify API**: Set up a scraper for LinkedIn, Indeed, or other job boards.
  OpenAI API**: Provide access to a GPT model (ideally GPT-4 Turbo) to handle CV scoring and revamping.
  Airtable**: Create two tables:

  	One for archived jobs (old jobs &gt;48 hours).

  	One for current processed jobs with AI scores and revamped CVs.
  		Columns for Airtable: 
  		 job_title,company,location,date_posted,job_type,description,link,compatibilityScore,matcReason,revampedCV,newCompatibilityScore,newMatchReason. 



  n8n**: Deploy the full workflow with nodes for triggers, loops, API calls, parsing, and storage.

  How to customize it for your needs

  Edit Job Preferences**: Add or update the fields in Google Sheets (Columns: job_title, job_location) to search.

  Fine-tune AI Prompts**: Adjust the scoring criteria (e.g., favor remote roles, leadership experience, certifications).

  Customize CV Style**: Configure the AI to generate shorter, more detailed, or industry-specific resumes.


  Change Storage Destination**: Replace Airtable with Notion, Google Sheets, a CRM system, or even send yourself Slack updates.

  Expand Job Sources**: Easily swap the job scraper to pull listings from your favorite niche job boards.

  Why Use This Template?

  Saves 10+ hours/week on manual job search.
  Instantly tailor CVs to each application.
  Centralizes all data across Google Sheets and Airtable.
  Flexible — customize AI prompts, scoring logic, or expand to multiple users!

  Need Assistance?

  For setup guidance, customization, or business inquiries,
  Email: phoenixaiagentsolutions@gmail.com

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.splitInBatches","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.cron","n8n-nodes-base.googleSheets","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.airtable","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE7WYzW4byRHHX2Uwh8UGmHL6+4PIIVptvJGRXS8sw0FgGEF1dzU1CDXDzAxlO4IuwV4XAfJ5CbCXAHmF5HXyAtlHCIa0JVoiRVLeXARC6J76VXXVv6r7sqxTOSmfnDj+HH+e8He/+lL+cpbKqjynAcvJZVk3/YBNpJNxXaQcg3SSa0TDGPrghXfIk/HEZNbZKOEU54GkC+RSdFx6o3MSRuvoVFmVA53PZzjQcUepP6VhMT9uz+czGiiVk6Fb0FVVNnhO5aQ8WgztOQ5UPGlDcUrYxbPidT2cFUcnxTPqF+dUnMa2q5tp8UnxHOvZ6veiH/8+nVNzdFIVR/M6v60KbFJxVHcDhhmNFDjty8nLV1XZtInGn5erSGBwkqPnoLN3oGKW4DF44AFZysJnTrG8Jjwd6vibt8VX7UBi/Orb+fjfxjWw/CwE7OlRv1w0rimrct729VC3TTl5yRVjlRTsVVXOscNzGqjrx5DHthmoGcpJWV6tPvqCun65iV9V70A9S9JYFCC8yKAcRvBZIyhPKTAVeBRpI+jBnCA+ilNHGZwUQMETKMM5eOYk8ORyUoY0c2ucq1Mrjs9wKL5sE81uaH/auObHN8gzbKbxDOvm0ex8XL7cWd+KsFWs0uYO+R3aR+KaNyghhSADXEkPimUEjFaB0zZnwhx8Wk+A+awelvn5dUeZOmoi9dsjPK4+aT7DIZ4tl62xCsMq6XajXoOSiT4zp0DFoEFZo0dGDs7a6GJOmaHamAD64Azw4iMSgFsf0GQOxkoBKjIGyNECMRNNViJzscY5hvJnb4YO47Cq9Y4u8HxOqehXpb4VPrbpFraQjFW7T//m7LNHlXmwQEZlUNo5CJIYSJ6TZMYZNJuLXx5e/JaxCvhduv2CmoXKSUsGkgyCEsaAF5mD9TYpRywbIW9Iv//uL38snnf1dErdpPgc69nbZc4+piGebQ9o1za3lIAfmqTRGuuCD2A1OlDeOPBcCFAuu8A8y269+r//7k/frKBul1Tx6RdtO51RcXpGNPQ/2go9XS5brfoQXu2FfpMMmlnLWAjgtAiguCII3kiwzgmGXJKkD0L852+KX7TtfPK+Uz1pQ1/MqVtz40HCoNk28KYdqD9pHs/a1+Uk46ynW87IqsTZa3zbP10M88XwOY4tfbnw2kuXg5MmjG1EKlCZEgTjLXAVsrWRpBb6Ay+/XXXUSXEaO5wve/N2wTsbhvkz+u2C+uFDp6xglWa7E2m3A96gzCQdcBIJFHMBXJYGRAocZZbRZVx34J//Lo5nhE3xybXOjLm2/PT+0jLyy0OkRUtluMwScvajWjMGDq2DkCJqz7Qx63F+XM+GsVSfUaRmWKXSpz9R7mx74tf5lsAwxiq1O8Rirfdh4Mi0NIAxKFCOK/Aua9BjE9cROYtmPZZ/+/1///WH4qiLZ/UFTYqns/QO9f2ktR0Xb2axdWjuWKXUHtA3EiM4N46YAROsBaWNBrTJgNQBs7OBosqb6zS2HRVf0ev7c/i+2uRqqyD+EMVJ2koZg4BEJEEx7cEZ5oB8DsaIgNF/kNv/+GtxdPLeseMXxUU/urbHCIXTsePcalD7pTh/ZNfExDgWMQFPdqn2FpxnCkj5RMxllz3dUvuvsetpHOhX0KtYHNLjmdpLSW6SXKAxzFIEm8ZK5FqBJ6EgWJZEDjyy7DbmyxfUUDdeR45fFKeL6ZT6keGBiWPdPqOJvKG2XAjjGGgjEyjlPbjIJJhovNPRI8a10eQ/f/92WZkno4SM89PI/Bn2lIq22TMn2k0DtTes2qP/P3LX4EwolGg1eDQRlAgCnNIBjE3oiXLS3t/VlFMcBeVx3eDsWp4fLitinFuA7yOGN7pilOdRo4QkUgSVIgHmmMAh99Hp7DLfPAzyh92w7EMHbMyKLHIGSUgClTIBBofAeHY5RMw52o2g6kEXAXNXnvfjTNwHo7kExjWBYhQhCJfB6pjIueij3nxhsQdzOvUxw7XW1mhOCTB5AUohgeMqghRee6HJWO03grqHvQE8+OQty8oL9KAVEaisDDjSAQILFI3iwUe3EdQ8LEUPD+mrqsQ41Bd03QN7Goa6mS630huKi9HA0y5RV07KCz5+42K1f/XiZCzxwAIETQ5UcAq84gQuKsM1C9lKVlYjRENxpceTyw3PCJPLEutfj+q2wCm9+9/Ll5fL95+9mued7VVZN4nelBN29erVVbXlLWByWZ5j3dwydtBlYbn/trVto/j/z96WAG02uLu1b/Nqy3i2w6+dzfmOueqQw98Ie8+UvusUtoye90MeMm5vie7WY/mhgFdm7ntu2JovB178t5i+7363yfQ+V62Npna/VP3gKTua3T3abTJ7wLParrrchr3Z2wPHufsK4IChdqe2bFfBzW7s9Wpwf/XueDnZXrD71cUm7h2v0xtMXl39D59924ASGgAA

metadata_json:
  {"categories":["automation","integration","AI","data-processing","web-scraping"],"complexity":"complex","use_cases":["Automatic job discovery based on user preferences","Scoring job listings against a resume/CV","Generating tailored/rescored CVs per job posting","Centralized tracking of applications and scores in Airtable","Batch processing and daily job monitoring"],"estimated_setup_minutes":90,"required_services":["Google Sheets API","Apify (job board scrapers)","OpenAI API (GPT model)","Airtable API","n8n (workflow automation)"],"key_features":["Daily trigger to fetch preferences from Google Sheets","Scrapes job boards via Apify and filters recent listings","AI agent scores job/CV compatibility and explains match reasons","Generates a revamped, job-tailored CV per listing","Stores job details, scores, reasons, and revamped CVs in Airtable tables (archived/current)​ for tracking and updates"],"target_audience":["Job seekers wanting automated application workflows","Career coaches and resume writers automating personalization at scale","Small recruiters/HR teams seeking candidate-job matching workflows with AI assistance"]}


