# templates

name: Scrape and Analyze Amazon Product Info with Decodo + OpenAI
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-11-22T11:03:41.327Z
updated_at: 2025-11-22T11:03:41.327Z
url: https://n8n.io/workflows/11131
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  The Scrape and Analyze Amazon Product Info with Decodo + OpenAI workflow automates the process of extracting product information from an Amazon product page and transforming it into meaningful insights. 

  The workflow then uses OpenAI to generate descriptive summaries, competitive positioning insights, and structured analytical output based on the extracted information.

  Disclaimer

  Please note - This workflow is only available on n8n self-hosted as it’s making use of the community node for the Decodo Web Scraping

  Who this is for?

  This workflow is ideal for:

  E-commerce product researchers
  Marketplace sellers (Amazon, Flipkart, Shopify, etc.)
  Competitive intelligence teams
  Product comparison bloggers and reviewers
  Pricing and product analytics engineers
  Automation builders needing AI-powered product insights

  What problem is this workflow solving?

  Manually extracting Amazon product details, ads, pricing, reviews, and competitive signals is:

  Time-consuming
  Requires switching across tools
  Difficult to analyze at scale
  Not structured for reporting
  Hard to compare products objectively

  This workflow automates:

  Web scraping of Amazon product pages
  Extraction of product features and ad listings
  AI-generated product summaries
  Competitive positioning analysis
  Generation of structured product insight output
  Export to Google Sheets for tracking and reporting

  What this workflow does

  This workflow performs an end-to-end product intelligence pipeline, including:

  Data Collection

  Scrapes an Amazon product page using Decodo
  Retrieves product details and advertisement placements

  Data Extraction

  Extracts:

    Product specs
    Key feature descriptions
    Ads data
    Supplemental metadata

  AI-Driven Analysis

  Generates:

    Descriptive product summary
    Competitive positioning insights
    Structured product insight schema

  Data Consolidation

  Merges descriptive, analytical, and structured outputs

  Export & Persistence

  Aggregates results
  Writes final dataset to Google Sheets for:

    tracking
    comparison
    reporting
    product research archives

  Setup

  Prerequisites

  If you are new to Decode, please signup on this link visit.decodo.com

  n8n instance**
  Decodo API credentials** 
  OpenAI API credentials**

  Make sure to install the Decodo Community Node.

  Required Credentials

  Decodo API

  Go to Credentials
  Add Decodo API
  Enter API key
  Save as:
     Decodo Credentials account

  OpenAI API

  Go to Credentials
  Select OpenAI
  Enter API key
  Save as:
     OpenAi account

  Google Sheets

  Add Google Sheets OAuth
  Authorize via Google
  Save as desired account

  Inputs to configure

  Modify in Set the Input Fields node:

  product_url = https://www.amazon.in/Sony-DualSense-Controller-Grey-PlayStation/dp/B0BQXZ11B8

  How to customize this workflow to your needs

  You can easily adapt this workflow for various use cases.

  Change the product being analyzed

  Modify:

  product_url

  Change AI model

  In OpenAI nodes:

  Replace gpt-4.1-mini
  Use Gemini, Claude, Mistral, Groq (if supported)

  Customize the insight schema

  Edit Product Insights node to include:

  sustainability markers
  sentiment extraction
  pricing bands
  safety compliance
  brand comparisons

  Expand data extraction

  You may extract:

  product reviews
  FAQs
  Q&A
  seller information
  delivery and logistics signals

  Change output destination

  Replace Google Sheets with:

  PostgreSQL
  MySQL
  Notion
  Slack
  Airtable
  Webhook delivery
  CSV export

  Turn it into a batch processor

  Loop over:

  multiple ASINs
  category listings
  search results pages

  Summary

  This workflow provides a complete automated product intelligence engine, combining Decodo’s scraping capabilities with OpenAI’s analytical reasoning to transform Amazon product pages into structured insights, competitive analysis, and summarized evaluations automatically stored for reporting and comparison.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.set","@decodo/n8n-nodes-decodo.decodo","n8n-nodes-base.code","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.merge","n8n-nodes-base.aggregate","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6724 characters]

metadata_json:
  {"categories":["E-commerce","Data Processing"],"complexity":"medium","use_cases":["Extract product details from Amazon","Generate product insights with AI","Compile competitive positioning data"],"estimated_setup_minutes":45,"required_services":["Amazon","OpenAI"],"key_features":["Web scraping with Decodo","AI-powered product analysis","Structured output generation"],"target_audience":["E-commerce managers","Market researchers","Data analysts"]}


name: Generate AI Photos with Gemini & Auto-Post to FB, Instagram & X with Approval
author_name: Feras Dabour
author_username: ferasdabour
categories: []
created_at: 2025-11-22T15:51:48.706Z
updated_at: 2025-11-22T15:51:48.706Z
url: https://n8n.io/workflows/11138
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  Social Media Foto Creation Bot with Approval Loop
  Create & Share AI Photos with Telegram, Gemini & Post to Facebook, Instagram & X

  Description
  This n8n workflow turns your Telegram messenger into a complete AI Photo Content Pipeline. You send your photo idea as a text or voice message to a Telegram bot, collaborate with an AI to refine the prompt and social media caption, let Gemini generate the image, and then automatically publish it after your approval to Facebook, Instagram, and X (Twitter) – including status tracking and Telegram confirmations.

  What You Need to Get Started
  This workflow connects several external services. You will need the following credentials:

  Telegram Bot API Key**
      Create a bot via BotFather and copy the bot token.
      This is used by the Listen for incoming events and other Telegram nodes.
  OpenAI API Key**
      Required for Speech to Text (OpenAI Whisper) to transcribe voice notes.
      Used by the AI Agent model (OpenAI Chat Model) for prompt creation.
  Google Gemini API Key**
      Used by the Generate an image node (model: models/gemini-2.5-flash-image) to create the AI image.
  Google Drive & Sheets Access**
      The generated image is temporarily stored in a Google Drive folder (Upload image1) and later retrieved by Blotato.
      Prompts and post texts are logged to Google Sheets (Save Prompt & Post-Text) for tracking.
  Blotato API Key**
      The layer for social media publishing.
      Uploads the image as a media asset (Upload media1) and creates posts for Facebook, Instagram, and X.

  How the Workflow Operates – Step by Step

  1. Input & Initial Processing (Telegram + Voice Handling)
  This phase receives your messages and prepares the input for the AI.

  | Node Name | Role in Workflow |
  | :--- | :--- |
  | Listen for incoming events | Telegram Trigger node that starts the workflow on any incoming message. |
  | Voice or Text | Set node that structures the incoming message into a unified text field. |
  | A Voice? | IF node that checks if the message is a voice note. |
  | Get Voice File | If voice is detected, this downloads the audio file from Telegram. |
  | Speech to Text | Uses OpenAI Whisper to convert the voice note into a text transcript. |

  The output of this stage is always a clean text string containing your image idea.

  2. AI Core & Refinement Loop (Prompt + Caption via AI)
  Here, the AI drafts the image prompt (for Gemini) and the social media caption (for all platforms) and enters an approval loop with you.

  | Node Name | Role in Workflow |
  | :--- | :--- |
  | AI Agent | Central logic agent. Creates a videoPrompt (used for image generation) and socialMediaText based on your idea, and asks for feedback. |
  | OpenAI Chat Model | The LLM backing the agent (e.g., GPT-4.1-mini). |
  | Window Buffer Memory | Stores recent turns, allowing the agent to maintain context during revisions. |
  | Send questions or proposal to user | Sends the AI's suggestion for review back to you. |
  | Approved from user? | IF node that checks if the output is the approved JSON (meaning you replied with "ok" or "approved"). |
  | Parse AI Output | Code node that extracts the videoPrompt and socialMediaText fields from the agent’s final JSON output. |

  3. Content Generation & Final Approval
  Once the prompt and caption are set, the image is created and sent to you for final approval before publishing.

  | Node Name | Role in Workflow |
  | :--- | :--- |
  | Inform user about processing | Telegram node to confirm: "Okay. Your image is being prepared now..." |
  | Save Prompt & Post-Text | Google Sheets node that logs the videoPrompt and socialMediaText. |
  | Generate an image | Gemini node that creates the image based on the videoPrompt. |
  | Send a photo message | Sends the generated image to Telegram for review. |
  | Send message and wait for response | Telegram node that waits for your response to the image (e.g., "Good?" / "Approve"). |
  | Upload image1 | Temporarily saves the generated image to Google Drive. |
  | Download image from Drive | Downloads the image back from Drive. |
  | If1 | IF node that checks if the image was approved in the previous step (approved == true). |

  4. Upload & Publishing (Blotato)
  After final approval, the image is uploaded to Blotato, and post submissions for the social media platforms are created.

  | Node Name | Role in Workflow |
  | :--- | :--- |
  | Upload media1 | Blotato Media node. Uploads the approved image as a media asset and returns a public url. |
  | Create instagram Post | Creates an Instagram post using the media URL and socialMediaText. |
  | Create x post | Creates an X (Twitter) post using the media URL and socialMediaText. |
  | Create FB post | Creates a Facebook post using the media URL and socialMediaText. |

  5. Status Monitoring & Retry Loops (X, Facebook, Instagram)
  An independent loop runs for each platform, polling Blotato until the post is either published or failed.

  | Node Name | Role in Workflow |
  | :--- | :--- |
  | Wait, Wait1, Wait2 | Initial pauses after post creation. |
  | Check Post Status, Get post1, Check Post Status1 | Blotato Get operations to fetch the current status of the post. |
  | Published to X?, Published to Facebook?, Published to Instagram? | IF nodes checking for the "published" status. |
  | Confirm publishing to X, Confirm publishing to Facebook, Confirm publishing to Instagram | Telegram nodes that notify you of successful publication (often including the post link). |
  | In Progress?, In Progress?1, In Progress?2 | IF nodes that check for "in-progress" status and loop back to the Wait nodes (Give Blotat other 5s). |
  | Send X Error Message, Send Facebook Error Message, Send Instagram Error Message | Telegram nodes that notify you if a failure occurs. |

  🛠️ Personalizing Your Content Bot

  The workflow is highly adaptable to your personal brand and platform preferences:

  Tweak the AI Prompt & Behavior:
      Where: In the AI Agent node, within the System Message.
      Options: Change the tone (casual, professional, humorous) and the level of detail required for the prompt generation or the social media captions.
  Change Gemini Model or Image Options:
      Where: In the Generate an image node.
      Options: Swap the model or adjust image options like Aspect Ratio or Style based on Gemini's API capabilities.
  Modify Which Platforms You Post To:
      Where: In the Blotato nodes: Create instagram Post, Create x post, Create FB post.
      Options: Disable or delete branches for unused platforms, or add new platforms supported by Blotato.

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.telegram","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.memoryBufferWindow","@blotato/n8n-nodes-blotato.blotato","@blotato/n8n-nodes-blotato.blotato","n8n-nodes-base.wait","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.googleSheets","@blotato/n8n-nodes-blotato.blotato","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.telegram","@blotato/n8n-nodes-blotato.blotato","@n8n/n8n-nodes-langchain.googleGemini","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.wait","@blotato/n8n-nodes-blotato.blotato","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","@blotato/n8n-nodes-blotato.blotato","@blotato/n8n-nodes-blotato.blotato","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 10296 characters]

metadata_json:
  {"categories":["Marketing","Social Media Management"],"complexity":"medium","use_cases":["Generate AI images for social media content","Create social media captions","Collaborate with AI on prompt refinement","Auto-post to Facebook, Instagram, and X after approval","Receive image generation requests via Telegram"],"estimated_setup_minutes":45,"required_services":["Google AI Studio (Gemini)","Facebook Graph API","Instagram Basic Display API","X (Twitter) API","Telegram Bot API","Google Drive"],"key_features":["AI-powered image generation","User approval workflow for publication","Multi-platform social media poster","Collaborative prompt refinement","Telegram integration for content intake"],"target_audience":["Social media managers","Content creators","Marketing teams"]}


name: YouTube to telegram summary bot with Decodo & Gemini AI
author_name: Khairul Muhtadin
author_username: khmuhtadin
categories: []
created_at: 2025-11-23T01:38:29.059Z
updated_at: 2025-11-23T01:38:29.059Z
url: https://n8n.io/workflows/11145
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  Stop wasting hours watching long videos. This n8n workflow acts as your personal "TL;DW" (Too Long; Didn't Watch) assistant. It automatically pulls YouTube transcripts using Decodo, analyzes them with Google Gemini, and sends a detailed summary straight to your Telegram.

  Why You Need This
  Save Time:** Turn a 2-hour video into a 5-minute read (95% faster).
  Don't Miss a Thing:** Captures key points, chapters, tools mentioned, and quotes that you might miss while skimming.
  Instant Results:** Get a structured summary in Telegram within 30-60 seconds.
  Multi-Language:** Works with any video language that has YouTube captions.

  Who Is This For?
  Creators & Marketers:** Spy on competitor strategies and extract tools without watching endless footage.
  Students:** Turn lecture recordings into instant study notes.
  Busy Pros:** Digest conference talks and webinars on the go.

  How It Works
  Send Link: You message a YouTube link to your Telegram bot.
  Scrape: The bot uses the Decodo API to grab the video transcript and metadata (views, chapters, etc.).
  Analyze: Google Gemini reads the text and writes a structured summary (overview, takeaways, tools).
  Deliver: You receive the formatted summary in chat.

  Setup Guide

  What You Need
  n8n instance** (to run the workflow)
  Telegram Bot Token** (free via @BotFather)
  Decodo API** (for YouTube data - Get it here)
  Google Gemini API Key** (for the AI - Get it here)

  Quick Installation
  Import: Load the JSON file into your n8n instance.
  Credentials: Add your API keys for Telegram, Decodo API, and Google Gemini in the n8n credentials section.
  Configure:
      In the "Alert Admin" node, set the chatId to your Telegram User ID (find it via @userinfobot).
      (Optional) Change the languageCode in the Config node if you want non-English transcripts.
  Test: Send a YouTube link to your bot. You should see a "Processing..." message followed by your summary!

  Troubleshooting & Tips
  "Not a YouTube URL":** Make sure you are sending a standard youtube.com or youtu.be link.
  No Transcript:** The video must have captions (auto-generated or manual) for this to work.
  Customization:** You can edit the AI Prompt in the "Generate TLDR" node to change how the summary looks (e.g., "Make it funny" or "Focus on technical details").

  Created by: Khaisa Studio
  Category: AI-Powered Automation
  Tags: YouTube, AI, Telegram, Summarization, Decodo, Gemini
  Need custom workflows? Contact us

  Connect with the creator:
  Portfolio • Workflows • LinkedIn • Medium • Threads

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegramTrigger","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.merge","n8n-nodes-base.telegram","n8n-nodes-base.code","n8n-nodes-base.errorTrigger","n8n-nodes-base.code","n8n-nodes-base.splitInBatches","n8n-nodes-base.telegram","n8n-nodes-base.wait","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatGoogleGemini"]

workflow_json_compressed:
  [encoded data, 11068 characters]

metadata_json:
  {"categories":["Marketing","Communication"],"complexity":"medium","use_cases":["Summarize YouTube content","Automate news digests","Extract video insights","Sync video summaries to messaging","Content repurposing"],"estimated_setup_minutes":60,"required_services":["Telegram","Decodo","Google Gemini"],"key_features":["Automated video transcription retrieval","AI-driven content analysis","Programmatic message delivery","Batch processing support","Error handling workflow"],"target_audience":["Content creators","Knowledge workers","Researchers"]}


name: Extract Amazon Product Data to Sheets with Olostep API
author_name: Yasser Sami
author_username: yassersami
categories: []
created_at: 2025-11-23T13:49:34.116Z
updated_at: 2025-11-23T13:49:34.116Z
url: https://n8n.io/workflows/11158
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  Olostep Amazon Products Scraper  

  This n8n template automates Amazon product scraping using the Olostep API.  
  Simply enter a search query, and the workflow scrapes multiple Amazon search pages to extract product titles and URLs.  
  Results are cleaned, normalized, and saved into a Google Sheet or Data Table.

  Who’s it for  
  E-commerce analysts researching competitors and pricing  
  Product sourcing teams  
  Dropshippers and Amazon sellers  
  Automation builders who want quick product lists without manual scraping  
  Growth hackers collecting product data at scale  

  How it works / What it does  
  Form Trigger  
     User enters a search query (e.g., “wireless bluetooth headphones”).  
     The query is used to build the Amazon search URL.

  Pagination Setup  
     A list of page numbers (1–10) is generated automatically.  
     Each number loads the corresponding Amazon search results page.

  Scrape Amazon with Olostep  
     For each page, Olostep scrapes Amazon search results.  
     Olostep’s LLM extraction returns:  
       title — product title  
       url — product link  

  Parse & Split Results  
     The JSON output is decoded and turned into individual product items.

  URL Normalization  
     If the product URL is relative, it is automatically converted into a full Amazon URL.

  Conditional Check (IF node)  
     Ensures only valid product URLs are stored.  
     Helps avoid scraping Amazon navigation links or invalid items.

  Insert into Sheet / Data Table  
     Each valid product is saved in:  
       title  
       url  

  Automatic Looping & Rate Management  
     A wait step ensures API rate limits are respected while scraping multiple pages.

  This workflow gives you a complete, reliable Amazon scraper with no browser automation and no manual copy/paste — everything runs through the Olostep API and n8n.

  How to set up  
  Import this template into your n8n account.  
  Add your Olostep API key.  
  Connect your Google Sheets or Data Table.  
  Deploy the form and start scraping with any Amazon search phrase.

  Requirements  
  Olostep API key  
  Google Sheets or Data Table  
  n8n cloud or self-hosted instance  

  How to customize the workflow  
  Add more product fields (price, rating, number of reviews, seller name, etc.).  
  Extend pagination range (1–20 or more pages).  
  Add filtering logic (e.g., ignore sponsored results).  
  Send scraped results to Notion, Airtable, or a CRM.  
  Trigger via Telegram bot instead of a form.  

  👉 This workflow is perfect for e-commerce research, competitive analysis, or building Amazon product datasets with minimal effort.  

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.splitInBatches","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.dataTable","n8n-nodes-base.formTrigger","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5004 characters]

metadata_json:
  {"categories":["Data Processing","E-commerce"],"complexity":"medium","use_cases":["extract product titles","scrape product URLs","normalize search results","save to Google Sheets"],"estimated_setup_minutes":15,"required_services":["Olostep","Google Sheets"],"key_features":["automated product listing extraction","multi-page Amazon scraping","result normalization","storage to spreadsheets"],"target_audience":["E-commerce analysts","Product sourcing teams"]}


name: Create an AI-powered Telegram customer support bot with lead management
author_name: osama goda
author_username: osamagoda
categories: []
created_at: 2025-11-23T20:14:00.992Z
updated_at: 2025-11-23T20:14:00.992Z
url: https://n8n.io/workflows/11165
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:20
description:
  🧠 AI Telegram Customer Support Assistant + Lead Manager

  This n8n workflow provides a fully automated AI-driven customer support assistant connected to Telegram, with built-in lead management, knowledge-base querying, and context-aware answers.

  ⭐ What this workflow does

  Receives user messages from Telegram

  Logs all incoming/outgoing messages into a Data Table

  Checks if a lead exists for the user (via chat_id)

  Creates new leads automatically if needed

  Builds an AI-ready context (user info + lead info + latest message)

  Uses the AI Agent to answer questions using:

  FAQ database

  Services table (programs, prices, descriptions)

  Settings table (agency info)

  Lead update tool

  Sends a natural, friendly reply back to Telegram

  Updates leads in real time (name, phone, email, notes…)

  📦 Required Data Tables (to be created by the user)

  leads
  Stores all user information (full_name, phone, email, etc.)

  services
  List of available programs/services with prices, duration, category.

  faq
  Frequently asked questions with answers and optional tags.

  settings
  Company/agency details used by the assistant.

  chat_logs
  Logs all messages exchanged with users (user + bot).

  🔧 Required Credentials

  Telegram Bot API Key

  AI Model Credential (OpenAI, OpenRouter, Groq…)

  No other credentials required.

  🚀 How to use it

  Import the workflow into your n8n instance

  Create the required Data Tables as defined inside the Sticky Notes

  Add your credentials (Telegram + AI Model)

  Customize the prompt to match your business

  Activate the workflow — you're ready to go!

  💡 Suitable for:

  Travel agencies

  Customer support chatbots

  Lead qualification + automation

  AI knowledge-based assistants

  Telegram-first businesses

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.stickyNote","n8n-nodes-base.telegramTrigger","n8n-nodes-base.dataTable","n8n-nodes-base.dataTable","n8n-nodes-base.dataTable","n8n-nodes-base.dataTable","n8n-nodes-base.dataTableTool","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.dataTableTool","n8n-nodes-base.dataTableTool","n8n-nodes-base.dataTableTool","n8n-nodes-base.telegram","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["AI/ML","Communication","Customer Support"],"complexity":"medium","use_cases":["Deploy AI chatbot on Telegram","Automate customer support responses","Manage customer leads in database","Retrieve answers from knowledge base"],"estimated_setup_minutes":15,"required_services":["OpenRouter","Telegram (Bot API)","n8n (Workflow Automation Platform)"],"key_features":["Direct Telegram API Integration","AI Context Building","Lead Management & CRUD Operations","Knowledge Base Querying","Conversation Memory"],"target_audience":["Customer Support Agents","Technical Users","SaaS Administrators"]}


name: Reddit Monitoring with AI Sentiment Analysis and Growth Insights Dashboard
author_name: WeWeb
author_username: weweb
categories: []
created_at: 2025-11-24T11:16:40.061Z
updated_at: 2025-11-24T11:16:40.061Z
url: https://n8n.io/workflows/11182
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  This template gives you a complete, automated system for monitoring Reddit and extracting growth insights.

  It tracks discussions across target subreddits, surfaces what users love, dislike, want changed, and highlights how they compare you to competitors.

  Paired with the free WeWeb UI template, it prioritizes engagement and organizes everything into a clean, easy-to-use dashboard. So every team gets the insights they need:

  Leadership** gains clarity on industry trends and emerging shifts  
  Product** can adjust roadmaps and prioritize features or integrations  
  Marketing** gets content angles, competitive messaging, and SEO topics  
  Sales** receives objection insights straight from real conversations  
  Support** spots early patterns in user challenges  

  🙌 Who this is for

  Perfect for product teams, founders, and growth marketers who want to build and scale Reddit as a channel without spending hours manually scanning threads.

  💫 What Makes This Different

  Eliminates manual scanning:** Automatically pull product and competitor mentions using F5Bot for free, without the high cost of traditional monitoring tools.  
  Captures full conversations:** Track not just posts, but the entire comment chain where real insights, objections, and frustrations actually surface.  
  AI-powered prioritization:** Every mention is classified by sentiment and topic so you know what to prioritize and why.  
  Cross-team intelligence:** Highlights product insights, competitor signals, sales objections, user frustrations, and industry trends, helping product, marketing, sales, support, and leadership make more customer-centric decisions.

  ⚙️ How the Workflow Works

  A cron job runs every hour and scans your Gmail inbox for new F5Bot alert emails.  
  When an alert is found, the workflow extracts all mention data from the email.  
  An AI node processes each mention to:  
    categorize it by topic  
    tag sentiment  
  All data is stored in Supabase.  
  The data is displayed in a WeWeb dashboard where users can browse mentions.  
  If a user wants deeper context, they click “AI Summary.”  
  This triggers a webhook in n8n, which pulls the main Reddit post and its entire comment chain.  
  The AI node summarizes the full thread and highlights:  
    the core discussion  
    competitor comparisons  
    what users like or dislike  
    industry-level signals  
  The workflow returns a clean, actionable summary back to the WeWeb UI.

  🧪 Requirements

  You don’t need any heavy infrastructure. To get started, you’ll need:

  F5Bot account (free)** - to track Reddit mentions by keywords and trigger email alerts  
  Gmail integration** - so the workflow can parse emails from F5Bot  
  OpenAI API key** - for AI-powered categorization and summarization  
  Supabase project (free)** - to store all mention data  
  WeWeb account (free)** - connects your n8n workflow to a clean, user-friendly dashboard for viewing insights 

  Here's a detailed setup guide.
  🔧 Want to Go Further?

  This setup is beginner-friendly, but you can extend it with:

  Blog topic generation  
  Full blog post generation  
  Social media posts  
  Competitor benchmarking reports  
  Weekly or monthly email digests  
  Slack alerts for high-signal mentions  

nodes_used:
  ["n8n-nodes-base.gmail","n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.splitInBatches","n8n-nodes-base.reddit","n8n-nodes-base.reddit","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.respondToWebhook","n8n-nodes-base.stickyNote","n8n-nodes-base.supabase","n8n-nodes-base.supabase","n8n-nodes-base.supabase","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 8592 characters]

metadata_json:
  {"categories":["Communication","Data Processing","Marketing"],"complexity":"simple","use_cases":["monitor discussions","track user sentiment","benchmark against competitors","generate growth insights"],"estimated_setup_minutes":30,"required_services":["Reddit API","Supabase","WeWeb","AI/LLM"],"key_features":["scrub Reddit subreddits","analyze sentiment with AI","compare brand sentiment with others","automated insights dashboard"],"target_audience":["marketers","product managers","customer success teams"]}


name: Create AI Viral Videos using NanoBanana 2 PRO & VEO3.1 and Publish via Blotato
author_name: Dr. Firas
author_username: drfiras
categories: []
created_at: 2025-11-25T00:30:32.066Z
updated_at: 2025-11-25T00:30:32.066Z
url: https://n8n.io/workflows/11204
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  💥 Create AI Viral Videos using NanoBanana 2 PRO & VEO3.1 and Publish via Blotato

  Who is this for?

  This template is for content creators, marketers, agencies, and UGC studios who want to turn a simple Telegram message into AI-generated vertical videos, automatically published across multiple social platforms using Blotato.  

  What problem is this workflow solving? / Use case

  Creating short-form video ads usually requires:
  Designing visuals
  Writing hooks and captions
  Generating or editing video
  Manually uploading to TikTok, Instagram, YouTube, Facebook, LinkedIn, X, etc.

  This workflow solves that by automating the full pipeline from image + idea → edited image → AI video → multi-platform post.

  What this workflow does

  Create Image with NanoBanana 2 PRO  
     User sends a photo + caption idea to a Telegram bot.  
     OpenAI Vision analyzes the reference image.  
     An LLM builds a UGC-style image prompt.  
     NanoBanana 2 PRO generates an enhanced, UGC-friendly image.  

  Generate Video with VEO3.1  
     An AI Agent structures a detailed Veo prompt (scene, camera, lighting, audio).  
     Prompt is optimized and sent to VEO3.1 reference-to-video.  
     The result is a 9:16, ~8s vertical video downloaded back into n8n.

  Publish with Blotato  
     Video is uploaded to Blotato.  
     Posts are created for TikTok, Instagram, YouTube, Facebook, LinkedIn, and X using the AI-generated caption, title, and hashtags.  
     A final “Published” message is sent on Telegram.

  Setup

  Create and configure:
     Telegram bot (token in Set: Bot Token (Placeholder) node).
     OpenAI credentials.
     Fal.ai API key (for NanoBanana 2 PRO + VEO3.1).
     Blotato account + API credentials and connected social accounts.
  Import the template into n8n and update all credential references.
  Test by sending a product image + short idea to your Telegram bot.

  How to customize this workflow to your needs

  Edit the UGC image prompt system message to change visual style (more cinematic, minimal, etc.).
  Adjust the VEO prompt optimizer to tweak duration, mood, or camera movement.
  Enable/disable specific Blotato platforms depending on where you want to publish.
  Modify the caption/hashtag generation logic to match your brand tone, language, or niche.

  👋 Need help or want to customize this?
  📩 Contact: LinkedIn  
  📺 YouTube: @DRFIRASS  
  🚀 Workshops: Mes Ateliers n8n

  📄 Documentation: Notion Guide
  Need help customizing?
  Contact me for consulting and support : Linkedin / Youtube / 🚀 Mes Ateliers n8n  

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.toolThink","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.telegramTrigger","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","@blotato/n8n-nodes-blotato.blotato","@blotato/n8n-nodes-blotato.blotato","@blotato/n8n-nodes-blotato.blotato","@blotato/n8n-nodes-blotato.blotato","@blotato/n8n-nodes-blotato.blotato","@blotato/n8n-nodes-blotato.blotato","@blotato/n8n-nodes-blotato.blotato","n8n-nodes-base.merge","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 13084 characters]

metadata_json:
  {"categories":["Marketing","Content Creation","Communication"],"complexity":"medium","use_cases":["Generate AI vertical videos from prompts","Automatically publish videos to social platforms","Streamline in-house video production","Turn text messages into viral content"],"estimated_setup_minutes":15,"required_services":["Blotato","NanoBanana 2 PRO","Telegram","Google Veo3.1"],"key_features":["AI-powered video generation with NanoBanana 2 PRO","Advanced video editing with Google Veo3.1","Multi-platform distribution via Blotato","Direct triggers from Telegram messages"],"target_audience":["Content creators","Social media marketers","Influencers"]}


name: Generate Marketing Ad Banners with LINE, Gemini, and Nano Banana Pro
author_name: Masaki Go
author_username: pippi
categories: []
created_at: 2025-11-25T03:59:11.780Z
updated_at: 2025-11-25T03:59:11.780Z
url: https://n8n.io/workflows/11205
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:22
description:
  About This Template
  This workflow creates high-quality, text-rich advertising banners from simple LINE messages. 

  It combines Google Gemini (for marketing-focused prompt engineering) and Nano Banana Pro (accessed via Kie.ai API) to generate images with superior text rendering capabilities. It also handles the asynchronous API polling required for high-quality image generation.

  How It Works
  Input: Users send a banner concept via LINE (e.g., "Coffee brand, morning vibe").
  Prompt Engineering: Gemini optimizes the request into a detailed prompt, specifying lighting, composition, and Japanese catch-copy placement.
  Async Generation: The workflow submits a job to Nano Banana Pro (Kie API) and intelligently waits/polls until the image is ready.
  Hosting: The final image is downloaded and uploaded to a public AWS S3 bucket.
  Delivery: The image is pushed back to the user on LINE.

  Who It’s For
  Marketing teams creating A/B test assets.
  Japanese market advertisers needing accurate text rendering.
  Developers looking for an example of Async API Polling patterns in n8n.

  Requirements
  n8n** (Cloud or Self-hosted).
  Kie.ai API Key** (for Nano Banana Pro model).
  Google Gemini API Key**.
  AWS S3 Bucket** (Public access enabled).
  LINE Official Account** (Messaging API).

  Setup Steps
  Credentials: Configure the "Header Auth" credential for the Kie.ai nodes (Header: Authorization, Value: Bearer YOUR_API_KEY).
  AWS: Ensure your S3 bucket allows public read access so LINE can display the image.
  Webhook: Add the production webhook URL to your LINE Developers console.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.googleGemini","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.wait","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.awsS3","n8n-nodes-base.httpRequest","n8n-nodes-base.code"]

workflow_json_compressed:
  [encoded data, 5640 characters]

metadata_json:
  {"categories":["Marketing"],"complexity":"medium","use_cases":["Generate ad banners","Create marketing visuals","Produce image ads"],"estimated_setup_minutes":10,"required_services":["LINE","Google Gemini","Nano Banana Pro","Kie.ai API"],"key_features":["Text-rich image generation","Asynchronous API polling","Prompt engineering","Image hosting via S3"],"target_audience":["marketers"]}


name: Generate Hollywood-Style Video Ads from Images with GPT-5 Mini and Fal.ai Sora-2
author_name: Sandeep Patharkar | www.FastTrackAiMastery.com
author_username: sandy4v
categories: []
created_at: 2025-11-27T00:09:30.986Z
updated_at: 2025-11-27T00:09:30.986Z
url: https://n8n.io/workflows/11268
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  🎬 Hollywood-Style Ads in Seconds (Fal.ai Sora-2 Version)

  Turn a single product image + short text description into a cinematic 8-second ad using Fal.ai’s Sora-2 Image-to-Video model. Perfect for ad agencies, marketing teams, and UGC creators who want to produce high-quality video ads instantly without editors or camera crews.

  🧩 Problem It Solves
  Producing ad videos usually requires writers, editors, equipment, and several review cycles.  
  This workflow replaces that process with a fully automated pipeline that generates studio-quality ads on demand.

  🏢 Real Use Cases
  1. Ad Agencies  
  Deliver Hollywood-style ads to clients instantly from a simple image upload.

  2. UGC Creators  
  Create multiple ad variations in minutes instead of spending hours filming.

  3. SMB Marketing  
  Generate product promo videos for websites, social media, and email campaigns.

  ⚙️ How It Works  
  Your frontend sends image + text to the workflow webhook.  
  Image is resized to 1280×720.  
  GPT-5 Mini writes a cinematic Sora-2 compatible prompt.  
  Fal.ai Sora-2 generates a realistic 8-second lifestyle ad.  
  Workflow polls status and retrieves the final video.  
  Sends the video URL back to your frontend.  
  Optional: Sends a Telegram notification.  

  🧪 Requirements  
  Fal.ai API Key  
  Cloudinary Account (optional, for image storage)  
  n8n (latest recommended version)  
  Frontend (Lovable / AI Studio / Bubble / React)

  🎨 Template Metadata  
  Template Author: Sandeep Patharkar  
  Category: Content Generation / Video Ads  
  Difficulty: Intermediate  
  Setup Time: 10–12 minutes  

  📬 Connect With Me  
  LinkedIn → www.linkedin.com/in/sandeeppatharkar  
  YouTube → https://www.youtube.com/@fasttrackaimastery  
  Website → https://fasttrackaimastery.com  
  Skool Community → https://www.skool.com/aic-plus

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.merge","n8n-nodes-base.editImage","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-cloudinary.cloudinary","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["Marketing","Media Production","Creative Design"],"complexity":"medium","use_cases":["generate video ads","create cinematic clips","convert images to video"],"estimated_setup_minutes":25,"required_services":["Fal.ai","Telegram","Cloudinary"],"key_features":["Sora-2 image-to-video generation","custom video prompts","cloud storage integration","telegram notifications","image editing preprocessing"],"target_audience":["marketers","content creators","ad agencies"]}


name: Build Enterprise RAG System with Google Gemini File Search & Retell AI Voice
author_name: Sandeep Patharkar | www.FastTrackAiMastery.com
author_username: sandy4v
categories: []
created_at: 2025-11-27T01:06:29.689Z
updated_at: 2025-11-27T01:06:29.689Z
url: https://n8n.io/workflows/11269
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  🧠 Enterprise RAG System with Google Gemini File Search + Retell AI Voice Agent

  Build a complete enterprise-grade RAG pipeline using Google Gemini’s brand-new File Search API, combined with a powerful Retell AI voice agent (JARVIS) as the conversational front end.  
  This workflow is designed for AI automation agencies, SMBs, enterprise teams, and internal AI copilots.

  📌 Who Is This For?
  Enterprise teams building internal search copilots  
  AI automation agencies delivering RAG products to clients  
  SMBs wanting automated knowledge lookup  
  Anyone needing a production-ready, zero-Pinecone RAG workflow

  🚧 Problem This Solves
  Traditional RAG requires:
  Vector DB setup  
  Embedding jobs  
  Chunking pipelines  
  Custom search APIs  

  Gemini File Search eliminates all of this — you simply create a store and upload files.  
  Indexing, chunking, embeddings = fully automated.

  This workflow turns that into a plug-and-play enterprise template.

  🧩 What This Workflow Does (High-Level)
  1️⃣ Create a Gemini File Search Store  
  Calls fileSearchStores API  
  Creates a persistent embedding store  
  Automatically saved to Google Sheets for future retrieval

  2️⃣ Auto-Upload Documents from Google Drive  
  When a new file is added:
  Download → Start resumable upload → Upload actual bytes  
  Gemini auto-indexes the document for retrieval

  3️⃣ Chat-Based Retrieval (Chat Trigger)  
  User question → Gemini File Search → Short, precise answer returned.

  4️⃣ Voice Search (Retell AI Agent)  
  Your Gemini RAG can now be searched by voice.

  🎙️ Retell AI (JARVIS) Voice Agent – Integration Steps

  🔧 Step 1 — Paste This Prompt Into Retell AI
  You are JARVIS, an advanced AI assistant designed to help user with their daily tasks.
  Always call the user “Sir”.

  You remember the user's name and important details to improve the experience.

  Whenever the user asks for information that requires external lookup:

  Make a short, witty remark related to their request.

  Immediately call the n8n tool — do NOT repeat the question back.

  Be concise, professional, and efficient.

  n8n tool call:
  Use this tool for all knowledge-based or RAG lookups.
  It sends the user’s query to the n8n workflow.

  JSON Schema:
  {
  "type": "object",
  "properties": {
  "query": {
  "type": "string",
  "description": "The user’s full request for JARVIS to process."
  }
  },
  "required": ["query"]
  }

  🔧 Step 2 — Add This URL to Retell (YOUR WEBHOOK)
  Paste the webhook URL from your Respond to Webhook node:

  https://YOUR-N8N-URL/webhook/Gemini
   ← replace with your actual webhook ID


  This is the endpoint Retell calls every time the user speaks.

  🔧 Step 3 — End-to-End Flow
  User speaks to JARVIS  
  Retell sends query → n8n  
  n8n forwards query to Gemini using File Search  
  Gemini returns answer  
  Retell speaks the response out loud  

  You now have a voice-powered enterprise RAG agent.

  📦 Requirements
  Google Gemini File Search API access  
  Google Drive folder for document uploads  
  Retell AI agent  
  n8n instance  
  (Optional) Google Sheets for storing store IDs  

  📝 Estimated Setup Time
  ⏱️ 25–30 minutes (end-to-end)

  👨‍💻 Template Author
  Sandeep Patharkar  
  Founder – FastTrackAI  
  AI Automation Architect | Enterprise Workflow Designer  

  🔗 Website: https://fasttrackaimastery.com  
  🔗 LinkedIn: https://www.linkedin.com/in/sandeeppatharkar/  
  🔗 Skool Community: https://www.skool.com/aic-plus  
  🔗 YouTube: https://www.youtube.com/@FastTrackAIMastery  

  🏁 Summary
  This template gives you a full enterprise RAG infrastructure:
  Automatic document indexing  
  Gemini File Search retrieval  
  Chat + Voice interfaces  
  Zero-vector-database setup  
  Seamless Retell AI integration  
  Fully production-ready  

  Perfect for creating internal AI copilots, employee knowledge assistants, client-facing search apps, and enterprise RAG systems.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.googleDrive","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.httpRequestTool","n8n-nodes-base.set","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","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","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":["AI/ML","Data Processing","Communication"],"complexity":"complex","use_cases":["deploy enterprise RAG systems","build voice-activated copilots","enable document search interfaces","create AI automation products"],"estimated_setup_minutes":45,"required_services":["Google Gemini","Google Drive","Spreadsheets","Retell AI"],"key_features":["RAG pipeline integration","Gemini File Search API","Voice agent interfaces","Document retrieval automation"],"target_audience":["AI engineers","automation agency staff","enterprise IT teams"]}


name: Financial Document Extraction from Gmail to Google Sheets
author_name: Gtaras
author_username: tarasidis
categories: []
created_at: 2025-11-27T12:41:35.176Z
updated_at: 2025-11-27T12:41:35.176Z
url: https://n8n.io/workflows/11290
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  Overview
  Manual financial reconciliation is tedious and prone to error. This workflow functions as an AI Financial Controller, automatically monitoring your inbox for invoices, receipts, and bills, extracting the data using OCR, and syncing it to Google Sheets for approval.

  Unlike simple scrapers, this workflow uses a "Guardrail" AI agent to filter out non-financial emails (like newsletters) before they are processed, ensuring only actual transactions are recorded.

  Who is it for?
  Finance Teams:** To automate the collection of vendor invoices.
  Freelancers:** To track expenses and receipts for tax season.
  Operations Managers:** To monitor budget spend and categorize costs automatically.

  How it works
  Ingest: The workflow watches a specific Gmail label (e.g., "INBOX") for new emails.
  Guardrail: A Gemini-powered AI agent analyzes the email text to determine if it is a valid financial transaction. If not, the workflow stops.
  Extraction (OCR):
      If an attachment exists: An AI Agent (GPT-4o) extracts data from the PDF.
      If no attachment: An AI Agent extracts data directly from the email body.
  Validation: Code nodes check for missing fields or invalid amounts.
  Business Logic: The system automatically assigns General Ledger (GL) categories (e.g., "Uber" -&gt; "Travel") and sets approval statuses based on amount thresholds.
  Sync: Validated data is logged to Google Sheets, and a confirmation email is sent. Errors are logged to a separate error sheet.

  How to set up
  Google Sheets: Copy this Google Sheet template to your drive. It contains the necessary tabs (Invoices, Error Logs, Success Metrics).
  Configure Workflow:
      Open the node named "Configuration: User Settings".
      Paste your Google Sheet ID (found in the URL of your new sheet).
      Enter the Admin Email address where you want to receive error notifications.
  Credentials:
      Connect your Gmail account.
      Connect your Google Sheets account.
      Connect your OpenAI (for OCR) and Google Gemini/PaLM (for Guardrails) accounts.

  Requirements
  n8n version 1.0 or higher.
  Gmail account.
  OpenAI API Key.
  Google Gemini (PaLM) API Key.

nodes_used:
  ["n8n-nodes-base.gmailTrigger","n8n-nodes-base.gmail","@n8n/n8n-nodes-langchain.guardrails","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.filter","n8n-nodes-base.if","n8n-nodes-base.extractFromFile","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.gmail","n8n-nodes-base.googleSheets","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 8744 characters]

metadata_json:
  {"categories":["Finance","Data Processing"],"complexity":"medium","use_cases":["Invoice extraction","Receipt processing","Financial data synchronization"],"estimated_setup_minutes":30,"required_services":["Gmail","Google Sheets","Google Gemini"],"key_features":["AI-powered OCR","Email content filtering","Automated data entry","Guardrail validation"],"target_audience":["Accountants","Finance managers","Admins"]}


name: Automated lead nurturing with Gemini AI, Telegram, and Gmail reply detection
author_name: Malik Hashir
author_username: malikx
categories: []
created_at: 2025-11-28T17:56:57.466Z
updated_at: 2025-11-28T17:56:57.466Z
url: https://n8n.io/workflows/11337
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Purpose and Audience
  This n8n workflow automates the entire lead nurturing process from initial contact through a 3-email follow-up sequence, with intelligent reply detection and personalized AI-generated content. It's designed to save sales teams countless hours while maintaining a personal touch in every interaction.

  What It Does
  This workflow orchestrates a comprehensive lead management system that:
  Captures leads via Telegram: Sales agents submit lead information (name, company, email, notes) through a Telegram bot after phone calls
  Generates personalized emails: Uses AI (Google Gemini) to create contextually relevant, personalized emails based on conversation notes and sequence position
  Sends automated follow-ups: Delivers a 3-email nurture sequence with strategic timing (initial email, 24-hour follow-up, final follow-up)
  Tracks engagement: Monitors email opens and replies in real-time
  Detects responses: Automatically checks Gmail daily for lead replies and stops the sequence when detected
  Updates lead status: Maintains accurate lead status throughout the journey (active → 2nd follow-up sent → 3rd follow-up sent → replied)
  Provides real-time notifications: Sends Telegram alerts to agents when emails are sent, replies are received, or sequences complete
  Stores all communications: Archives email content and metadata in a structured data table for reference and analysis

  The workflow intelligently adapts email tone and content based on sequence position—warm and conversational for first contact, value-adding for second follow-up, and brief yet respectful for the final touchpoint.

  Who Is It For
  This workflow is perfect for:
  Sales teams managing multiple leads and needing consistent follow-up without manual effort
  Small businesses looking to professionalize their outreach without hiring additional staff
  Account executives who want to focus on conversations rather than email scheduling
  Founders and solopreneurs juggling sales alongside other responsibilities
  Marketing agencies managing client outreach campaigns
  Anyone who has promising leads but struggles with timely, personalized follow-up

  How to Setup
  Prerequisites
  Before implementing this workflow, ensure you have:

  Telegram Bot (for lead submission and notifications)
  SMTP Connection (for sending emails)
  Gmail Node Connection (for reply detection)
  Data Table with the following columns:
  name
  email
  company
  notes
  status
  emailSequenceNumber
  lastSentDate
  first_email_content
  first_email_sbjct
  second_email_content
  second_email_sbjct
  third_email_content
  third_email_sbjct
  (Table name: leads_test)
  Gemini API Key (for AI-powered email generation)

  Setup Instructions
  Once you have all prerequisites ready, follow the provided setup tutorials for complete setup and configuration.

nodes_used:
  ["n8n-nodes-base.telegramTrigger","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.dataTable","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.set","n8n-nodes-base.emailSend","n8n-nodes-base.dataTable","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.set","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.dataTable","n8n-nodes-base.gmail","n8n-nodes-base.dataTable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.dataTable","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.dataTable","n8n-nodes-base.telegram","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.dataTable","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.if","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.set","n8n-nodes-base.emailSend","n8n-nodes-base.emailSend","n8n-nodes-base.dataTable","n8n-nodes-base.telegram","n8n-nodes-base.splitInBatches","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4168 characters]

metadata_json:
  {"categories":["Marketing","Communication","AI/ML"],"complexity":"medium","use_cases":["Automate lead follow-up emails","Personalize AI-generated content","Detect lead replies intelligently","Manage multi-channel lead capture","Schedule automated sequences"],"estimated_setup_minutes":15,"required_services":["Google Gemini","Telegram Bot API","Gmail API","Airtable (implied by context of data tables)","Google Sheets (implied by data table usage)"],"key_features":["Multi-channel lead capture","Conditional lead response handling","AI-powered content personalization","Three-stage email sequence automation","Structured data parsing and manipulation"],"target_audience":["sales team members","marketing managers","customer success teams"]}


name: WordPress blog generation with AI Research, Image Creation & Auto Publishing
author_name: Muhammad Asadullah
author_username: asadtech
categories: []
created_at: 2025-11-29T19:35:10.746Z
updated_at: 2025-11-29T19:35:10.746Z
url: https://n8n.io/workflows/11358
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  How This N8n Workflow Works

  This is an automated blog post generation system that:

  Researches topics using AI agents and web search tools
  Writes complete blog posts with proper SEO structure
  Generates custom images for each post
  Publishes directly to WordPress with images embedded

  Setup Steps

  1. API Keys & Credentials
  Set in "API Keys" node:**
    tavily: Get from tavily.com (free tier available)
    wavespeed: Get from wavespeed.ai for image generation
    wordpress-website-url: Your WordPress site URL

  2. WordPress Authentication
  Create WordPress Application Password:
    Go to Users → Your Profile → Application Passwords
    Create new password and save it
  Set up WordPress API credential in n8n with:
    Username: Your WordPress username
    Password: The application password you created

  3. Data Table Setup
  Create an n8n Data Table with these columns:
    title, topic, content, slug, excerpt, featured_image, audience, category, author, status

  4. AI Model Configuration
  Configure AI models in these nodes:
    Researcher Agent (uses OpenAI or Google Gemini)
    Writer Agent (uses OpenAI or Google Gemini) 
    Image Prompts Writer (uses OpenAI)

  5. Image Generation
  Update image upload URL in "Upload image" node:
    Change to: https://yourdomain.com/wp-json/wp/v2/media
  Configure your preferred image generation service

  How to Trigger

  Fill the form with:
     Topic
     Target audience  
     Industry
  Submit to start the automation

  Workflow Process

  Research Phase: AI researches topic and analyzes existing content
  Writing Phase: AI writes complete blog post with HTML structure
  Image Creation: Generates featured image + content images
  WordPress Integration: 
     Uploads images to media library
     Creates blog post with embedded images
     Sets featured image and metadata

  Key Features

  SEO-optimized** content structure
  Automatic image generation** and embedding
  WordPress native integration**
  Quality checks** and retry logic
  Human-like writing** with anti-AI detection

  The system handles everything from research to published post with images in one automated workflow.

nodes_used:
  ["@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.if","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequestTool","n8n-nodes-base.stickyNote","n8n-nodes-base.perplexityTool","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.editImage","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.formTrigger","n8n-nodes-base.httpRequestTool","n8n-nodes-base.dataTable","n8n-nodes-base.dataTable","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.httpRequest","n8n-nodes-base.wordpress","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.rssFeedRead","n8n-nodes-base.aggregate","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4356 characters]

metadata_json:
  {"categories":["Marketing"],"complexity":"medium","use_cases":["research topics","generate blog posts","create images","publish to WordPress"],"estimated_setup_minutes":30,"required_services":["Tavily","Wavespeed.ai","WordPress"],"key_features":["AI research","SEO structure","custom image generation","auto publishing"],"target_audience":["marketers","content creators","WordPress admins"]}


name: Generate local business leads with Google Places API & website email scraping
author_name: Malik Hashir
author_username: malikx
categories: []
created_at: 2025-11-29T21:03:35.885Z
updated_at: 2025-11-29T21:03:35.885Z
url: https://n8n.io/workflows/11360
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Purpose & Audience
  This workflow automates the process of finding and collecting contact information for local businesses in any city or region. Built entirely with free-tier APIs, it eliminates the need for expensive scraping services while delivering professional-quality lead generation results.
  Perfect for agencies, freelancers, sales teams, and entrepreneurs who need to build targeted prospect lists without breaking the bank or dealing with complex scraping tools.

  What It Does
  This comprehensive automation workflow:
  Searches Google Places for businesses by type and location (restaurants, gyms, salons, etc.)
  Retrieves up to 60 businesses per city using built-in pagination across 3 pages
  Extracts complete business details: name, address, phone, website, rating, and description
  Scrapes business websites to find email addresses automatically
  Handles edge cases gracefully: businesses without websites, failed scrapes, or missing data
  Batches API requests with intelligent rate limiting to respect Google's quotas
  Makes clean CSV files available for download with all collected data ready for outreach
  (Optional) Sends results/csv via email automatically when scraping completes

  Who Is It For?
  Ideal Users:
  Marketing Agencies building prospect lists for local business campaigns
  Sales Teams targeting specific industries in multiple cities
  Freelancers offering services to local businesses (web design, SEO, consulting)
  Entrepreneurs researching competitors or potential partners
  Recruiters finding company contact information
  Event Organizers building vendor or sponsor lists

  Use Cases:
  Build email lists for cold outreach campaigns
  Research local market competitors
  Find potential clients in specific industries
  Gather vendor contact information
  Create business directories
  Market research and analysis

  Expected Results
  Per Search:
  60 businesses maximum (with pagination)
  70-85% will have websites
  40-60% websites will contain email addresses
  Processing time: ~5-10 minutes per city/search

  Monthly Capacity/Quota (Free Tier):
  Places API: 150 requests per day ( = ~5,000 per month) to stay within the free tier
  Places API (New): 300 autocomplete requests per day ( = 10,000 per month), 300 GetPlace requests per day ( = 10,000 per month)

  Key Features:
  ✅ Form-based input for easy use (no coding required)
  ✅ Pagination support for maximum results (60 per search)
  ✅ Smart email extraction with false-positive filtering
  ✅ Fallback handling for businesses without websites
  ✅ Rate limiting to stay within free API tiers (see the Quota for awareness)
  ✅ Batch processing for efficient execution
  ✅ CSV export for immediate use in CRMs

nodes_used:
  ["n8n-nodes-base.formTrigger","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.code","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.convertToFile","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.splitInBatches","n8n-nodes-base.wait","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:
  H4sIAAAAAAAAE6VYy24bxxL9FYKL4F6AbfSj+uXNBeJEuQaSOIiCZBF4Ud1dbROmhgo5SmwY+vfUUHQ4omZIjrKSSLWqT71OnerP8xtqcf7y83zZbFtsMr0u85dz76p1kCmSqhAdocvGGlOVtcVq5dEo9JBUcjoRGpmN96AjeERfyOf5Yt7Sze0KW3q1obK9pvbu9tWav6GW+IJ2c0f3i3mzLrSdv/ydb+9ujWi0VmCErEkJsEWK4HQU2llbjcslWc2WG7whPn213tzMftks372jTXffp9vu2yY0YmdWJNzSi8qHDmdu19tlu1w3fKWwUcIiureL+V+U3q/XH3aOS1CpqmyEyZ4EuFpELIqENsGTSjI6qzpDuGEQLW0Y/ef7h8t/5U872/p+sXeoyqqSRyuUTkUAhSSSsklAyCGSg6ABDg79hJstzXZufYOclDGfttQe++Lc3peTwMwL8w+0kCFatF447aUAGSPHuhjhbdCZpJS++gM0TiKncnZNuMnvZ5zItGywu307BSVYNxGlhIreOyOCLYHDBpKNFxIuWyNlihzHXgCvb1fLdva6add7pHQCXnf2zd0TjMpcglEd4pi88hGKwFC6mqXCWDnF0ZaMxkjjUg/htx/bDeZ29tMKMzHSuh4FmPnXI3BgdVioqAfQ0UfKdy294QZ+6K7RmsSM3qTMXYWmCsi+ikQQBFqrdJDR5qQOgH9Djuh/fu6S//3yZtn+dxTvX3zyGK/y7mmLlWJ9zl3lOb4bNGURKqJQSQUEbSj7cq7F1ItDBnRyZD044YzJHCOIAlEmgan7wiIUKgeHvqN29vXddtnQdjv7hrlvuRovkvdte/sz/XFH22PXTLT6gjqBF4fAJ+cKqgRCGmBqUeRERKsEM2qOTLYpynrA+QNt3tFZgE+bzHiukWlNVlSGLCUJk3zkijBcvbFGYRQTAjpUTIUHYP/H7ew3Snwj/W8U17IewzLxkngdoiVD0dYHK3wHBaiCCCoqpisLPHnQU4pP++rbmy5cs69mr1aEzZTe4hnjFmK4uUYgKuuCjh4FoXYCUuJxpbIS1cesYwq6hl5Cf1x/CdvsClerhPnDhLQyScPCOjklr9V4lwG9KIF7DEAXkaJl8kQIxXNn+OB6FL9u/qRNO2PyfHX964nQ7Y79sr5aro5jqCyTpzoPst+9WUkiFUjIzNAAUXHjBiXIeFnA5oKll+fv1ut3K3qgz+2e5NUz2hcijAzMc0Ta7+hQjIzaG+F2AQ7eC/SdF0pDMoWcU73Guc4bvKUvRfAc1PsaPQu74mrLuDfUbj69aa64JcZcWcw5n+2yuaP+ucOsqDZBVSB8VobVUHI8JlgNSanJG41gajiirFG3bvZ/feRQNyAuKBjTC7pFbZODruEKK6nKXJpq0Nx6RioEij725tcV65TVVDmlOml4Eaxes2HgwdppO1c9k2hkzVJiFSFnBayIrTQ9Mvh+vb6dveFGmr1mnXxGpbxuvsZ2L2YeFbG/SKscMEbJTBBjEmQTp5PnjWAVymxvFGdVV9QFRjGOF+xJkEZq4Jr1U2CayIXHog+lZmlqHVMCWWAR7SOBz2RUeqxQpoiSXRM94OmrkhSrVbyACDSgBZRgRPK5Ch5+NeacmEgnqRIjeaJ3gkQGYic0BsHhR+F4NjAV65yj7HFDu8wfPs1+XLfjDbTdndkfebzJBA4xhOMI73qbmpZNzccFrDQ8BooMQhNLAOBPXLj80RTJUdCF1zs/CPREQYwi1VI+H6lNhXIqWWA1lss3IyN1RWS00XvCSIkGkerpSEGH8HykFXgYyJx5iyReW7iYmaOqFaxvkQLzV/FhEKmZjpTLlbPP5fY8qBEc71CJhTjLciavokX0wKrU5aqp8ADo81YPKkyHqrXXC/NEYV0GNBHvgYgsXzwyyyrWCKxMeXfQTjtImXQcBmqnA1W8mj8bKBrrsWjgIcBbFlheV1PkTYc1PndYCFIaOwjUTwfKXMYNZWFi8t/u5n5D+WGF5+M7FuWfrJ87w79/3r3NnJwCu6OL+bIp9HH+Ut6/fcsXPWiAIUNDk3jQRO/gkJ0xnTpsq/9GNGRt9M1l0Nyj3edfRmtx+K+Tq8F4mP/ZDoeQDK9pg8aOItqztvvzsVYZuu3EM8Epx089hwxCPU7XYIFc8FY1aPxYoI85esbMkxoYsnNuYT0VtdFFYhDO09QM4Tn9LDJoeCB5F7TEGaNDrTBk9WjXeGxL7fM58Bw46PvppXIQ52C8RoFeGNFhIP8+qCPFNjmuX/hivMGGTJ58lR244P7+b0QUpHSVGAAA

metadata_json:
  {"categories":["Data Processing","Marketing","Communication"],"complexity":"medium","use_cases":["Generate local leads","Collect business contacts","Enrich contact data","Build prospect lists","Automate research"],"estimated_setup_minutes":45,"required_services":["Google Places API","website email scraping","Google Sheets","AI/LLM provider","SendGrid","CSV file handler"],"key_features":["Dynamic data scraping","AI-powered data enrichment","Conditional logic routing","Batch processing","CSV export capability"],"target_audience":["Marketing agencies","Sales teams","Freelancers"]}


name: Interactive structured prompt builder with GPT-4.1-mini and guided questions
author_name: SpaGreen Creative
author_username: spagreen
categories: []
created_at: 2025-11-30T04:20:49.709Z
updated_at: 2025-11-30T04:20:49.709Z
url: https://n8n.io/workflows/11361
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Who is this for?
  This workflow is designed for content creators, prompt engineers, AI developers, and anyone who needs to create effective, structured prompts for AI agents. It helps transform vague ideas into detailed, well-formatted prompts by guiding users through a structured question-and-answer process that captures all necessary details.

  What this Workflow Does / Key Features
  Interactive form interface that collects initial project information from users
  AI-powered question generation that identifies information gaps and creates relevant follow-up questions
  Sequential question presentation with a clean, user-friendly interface
  Intelligent merging of all user responses into a comprehensive dataset
  Structured prompt generation with role, inputs, tools, instructions, constraints, and conclusions
  Final prompt display in a clean, ready-to-use format
  Automatic output parsing to ensure consistent formatting

  Requirements
  OpenAI API credentials (GPT-4.1-mini model)
  Basic understanding of prompt engineering concepts

  How to Use — Step-by-Step (Short Version)
  Credentials
     Add your OpenAI API credentials in n8n (e.g., “OpenAI account 2”).
     Make sure webhook endpoints are publicly accessible.
  Initial Form Setup
     The BaseQuestions form collects core project details.
     Adjust fields as needed for your use case.
     It asks about goals, tools, inputs, and desired outputs.
  AI Follow-Up Questions
     RelatedQuestionAI generates 3 follow-up questions via OpenAI.
     Edit the prompt if you want different styles of questions.
     A Structured Output node formats the questions cleanly.
  Final Prompt Creation
     PromptGenerator builds the final structured prompt from all inputs.
     Customize the template to change style or format.
     The Output Parser ensures everything is well-structured.

  Useful Links
  LangChain Integration**: Docs...
  OpenAI API**: Docs...

  Support & Help
  WhatsApp**: Chat on WhatsApp
  Discord**: SpaGreen Community
  Facebook Group**: SpaGreen Support
  Website**: https://spagreen.net
  Developer Portfolio**: Codecanyon SpaGreen

nodes_used:
  ["@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@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","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches","n8n-nodes-base.form","n8n-nodes-base.splitOut","n8n-nodes-base.form","n8n-nodes-base.formTrigger","@n8n/n8n-nodes-langchain.outputParserAutofixing","n8n-nodes-base.form","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.chainLlm"]

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

metadata_json:
  {"categories":["AI/ML"],"complexity":"medium","use_cases":["generate structured prompts","collect user inputs","transform vague ideas","guide prompt engineers"],"estimated_setup_minutes":15,"required_services":["OpenAI"],"key_features":["interactive form interface","AI-powered question generation","output parsing","structured data collection","guided Q&A process"],"target_audience":["content creators","prompt engineers","AI developers"]}


name: KaizenCrypto - smarter crypto decisions with multi-timeframe AI analysis
author_name: Paul Abraham
author_username: hellopaul
categories: []
created_at: 2025-11-30T08:59:24.469Z
updated_at: 2025-11-30T08:59:24.469Z
url: https://n8n.io/workflows/11366
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  This n8n template automates crypto market analysis by combining multi-timeframe candlestick data with real-time news sentiment to generate actionable AI-backed Buy / Sell / Hold signals for any cryptocurrency. Built around the Kaizen principle of continuous improvement, it delivers sharper, more reliable insights with every run.

  Use cases
  Automatically analyze crypto market trends using 15m, 1h, and 1d candlestick data.
  Aggregate global crypto news sentiment to reinforce price-action confidence.
  Generate AI-powered Buy / Sell / Hold recommendations for traders.
  Build your own Telegram-based crypto trading assistant or analytics bot.
  Create backends for crypto dashboards, portfolio advisors, or auto-alert systems.
  Expand trading strategies using AI reasoning instead of manual analysis.

  Good to know
  This workflow merges both technical analysis (candlesticks) and fundamental sentiment (news), then passes them through an AI model (Gemini) to produce clean, easy-to-understand trading signals.
  It works seamlessly on n8n Cloud and self-hosted setups, with configuration taking about 5 minutes.

  Requirements
  n8n Cloud or self-hosted instance
  Crypto price data API key 
  Crypto news API key
  AI model API key (Google Gemini)
  Telegram Bot Token (via @BotFather)

  Customising this workflow
  Replace Telegram with Slack, Discord, WhatsApp Cloud API, or Notion for alerts.
  Switch AI models (Gemini, OpenAI, Claude) to change tone or reasoning style.
  Modify candlestick intervals (15m, 1h, 1d) or add more timeframes.
  Attach TradingView webhooks for live alerts or automated triggers.
  Add portfolio tracking, price-level alerts, or risk scoring for advanced users.
  Expand the template to support forex, stocks, indices, or commodities with minimal edits.

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

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

metadata_json:
  {"categories":["AI/ML","Finance","Cryptocurrency"],"complexity":"medium","use_cases":["Automate multi-timeframe candlestick analysis","Aggregate crypto news sentiment","Generate AI-backed Buy/Sell/Hold signals"],"estimated_setup_minutes":15,"required_services":["Google Gemini","Telegram"],"key_features":["Multi-source data integration","Sentiment analysis","Automated trading signals"],"target_audience":["crypto traders","developers","finance analysts"]}


name: Monitor Google Maps reviews with sentiment analysis & RAG agent using Pinecone
author_name: Gtaras
author_username: tarasidis
categories: []
created_at: 2025-12-01T00:09:04.519Z
updated_at: 2025-12-01T00:09:04.519Z
url: https://n8n.io/workflows/11381
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Analyze and Sync Google Maps Reviews to Pinecone

  &gt; Note: This template requires an Apify account, an OpenAI account, and a Pinecone database.

  Overview
  This workflow automates your reputation management by scraping Google Maps reviews, analyzing their sentiment using AI, and storing them in a Vector Database (Pinecone). It also includes a RAG (Retrieval-Augmented Generation) agent that allows you to chat with your review data via Telegram to ask specific questions about customer feedback.

  How it works
  Scrape:** At a scheduled time (or manually), the workflow triggers an Apify actor to scrape the latest reviews from a specific Google Maps URL.
  Analyze:** It uses GPT-4o to analyze the sentiment of the reviews and generates a summary of complaints and praises.
  Notify:** A Telegram message is sent with the sentiment score and a summary of the latest reviews.
  Store:** The review data is embedded and upserted into a Pinecone Vector Store.
  Chat (RAG):** You can send messages to a Telegram bot to query the database (e.g., "What are people saying about our coffee?"). The AI retrieves relevant reviews from Pinecone to answer your question.
  Cleanup:** A weekly schedule cleans up the namespace to ensure data freshness (optional).

  How to set up
  Apify: Create an account and subscribe to the Google Maps Reviews Scraper actor. Set up your Apify credentials in n8n.
  OpenAI: Set up your OpenAI credentials in n8n.
  Pinecone: Create an Index in Pinecone. Set up your Pinecone credentials in n8n.
  Telegram: Create a new bot via BotFather to get your Token and Chat ID. Set up your Telegram credentials in n8n.

  Configure the Workflow
  Open the ⚠️ CONFIGURATION nodes.
  Paste your telegram_chat_id.
  Paste the Maps_url of the business you want to monitor.
  Define your pinecone_namespace.

  HTTP Node Configuration
  In the "Empty Namespace" node, update the URL to match your Pinecone Index Host and add your Pinecone API Key in the header or use credentials.

  🙋 Support
  If you encounter any issues during setup or have questions about customization, please reach out to our dedicated support email: foivosautomationhelp@gmail.com

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.wait","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.telegram","n8n-nodes-base.telegramTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.aggregate","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.vectorStorePinecone","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.googleSheets"]

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

metadata_json:
  {"categories":["Communication","AI/ML","Data Processing"],"complexity":"medium","use_cases":["Automate customer review monitoring","Analyze sentiment in public feedback","Enable AI-powered Q&A on feedback","Sync scraping data to vector database"],"estimated_setup_minutes":45,"required_services":["Google Maps","Apify","OpenAI","Pinecone","Telegram"],"key_features":["Scraping automation via Apify","Sentiment analysis using OpenAI","Vector database storage","RAG agent chat interface","Telegram bot integration"],"target_audience":["Customer support managers","Marketing analysts","Developers"]}


name: Generate article-based posts for LinkedIn, Twitter (X), and Reddit with OpenAI
author_name: Bhavy Shekhaliya
author_username: bhavyshekhaliya
categories: []
created_at: 2025-12-01T05:50:02.985Z
updated_at: 2025-12-01T05:50:02.985Z
url: https://n8n.io/workflows/11386
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  Overview
  AI-powered workflow that transforms any article URL into platform-optimized social media posts for LinkedIn, Twitter (X), and Reddit. Uses Mozilla Readability for content extraction, multi-agent AI with RAG from viral LinkedIn post database, and interactive review forms for content refinement before auto-publishing.

  Key Capabilities:
  Extracts article content: title, author, text, images, metadata
  Generates LinkedIn posts using 3-agent system with viral pattern matching
  Creates Twitter threads under 280 characters with article links
  Auto-posts to Reddit with AI-selected flairs
  Interactive review/regeneration workflow with feedback loops
  Auto-publishes with images or links to all platforms

  How It Works

  Stage 1: Article Content Extraction
  Form Submission: User enters article URL (with basic auth protection)
  URL Validation: Checks if valid URL format
  Article Scraping: HTTP request fetches HTML content
  Readability Parsing: Mozilla Readability extracts:
     Clean article text (removes ads, navigation, etc.)
     Title, author, excerpt
     Word count, site name
     Featured image (from og:image, twitter:image, or first img tag)
  Error Handling: Returns user-friendly error if scraping fails

  Stage 2: LinkedIn Post Generation (3-Agent System)

  Agent 1: LinkedIn Post Strategist
  Input**: Extracted article content (title, text, author, excerpt)
  RAG Process**: Queries Supabase vector database for similar viral LinkedIn posts
  Analysis**: Identifies patterns, hooks, formatting, engagement triggers
  Output**: Strategic insights and viral content patterns

  Agent 2: LinkedIn Post Generator
  Input**: Article content + strategist insights
  Process**: Creates post using viral patterns from database
  Rule**: Must include article URL in post
  Output**: Draft LinkedIn post

  Agent 3: LinkedIn Post Formatter
  Input**: Generated post
  Process**: 
    Removes extraneous content
    Applies Sans Serif Bold Unicode for emphasis (𝗯𝗼𝗹𝗱 𝘁𝗲𝘅𝘁)
    Removes markdown/em dashes
    Ensures clean formatting
  Output**: Polished, ready-to-post LinkedIn content

  Review Loop:
  User sees formatted post in web form
  Options: "Regenerate" or "Continue"
  If regenerate: Provide feedback → Agent creates new version
  Second review form with same options
  After 2 iterations or approval, proceeds to image selection

  Stage 3: Image Handling for LinkedIn
  Image Preview: Shows extracted article image
  User Choice:
     "Yes" → Downloads image, posts with text + image
     "Continue without Image" → Posts with text + article link preview
  Auto-Publish: Posts to LinkedIn with selected format

  Stage 4: Twitter (X) Post Generation
  Parallel process (runs alongside LinkedIn):
  Twitter Agent: 
     Creates tweet under 280 characters (including spaces)
     Must include article URL
     Uses GPT-4.1 or GPT-5 models
  Tweet Review Form: User reviews generated tweet
  Regeneration Loop (if requested):
     User provides feedback
     Re-generate Tweet Agent creates new version
     Second review form
  Auto-Tweet: Posts with article image attachment

  Stage 5: Reddit Post Automation
  Parallel process (runs alongside LinkedIn/Twitter):
  Subreddit Selection: User picks from dropdown (r/n8n, r/mcp, r/technews)
  Flair Retrieval: Fetches available flairs for selected subreddit via Reddit API
  AI Flair Selection: 
     GPT-4o-mini analyzes article title + available flairs
     Selects most appropriate flair
  Auto-Post: Submits link post to Reddit with title and selected flair

  How To Use

  Prerequisites

  API Credentials Required
  OpenAI API: GPT-4.1, GPT-5, GPT-5-mini, GPT-4o-mini access
  Supabase: Vector database with linkedin_post table (from previous workflow)
  LinkedIn OAuth2: Developer app with posting permissions
  Twitter OAuth2: Developer account with tweet permissions
  Reddit OAuth2: App credentials with submit permissions
  Basic Auth: For form password protection

  Setup Steps

  1. Configure Form Access
  Open "On Article Submission" node
  Set up basic auth credentials for form protection
  Get form URL from webhook settings

  2. Link Vector Database
  Ensure Supabase vector store has viral LinkedIn posts (use previous workflow to populate)
  Verify "LinkedIn Post Vector Store" credentials
  Check "Embedding" node has OpenAI API key

  3. Set Up Social Media APIs

  LinkedIn:
  Configure "Text + Image" and "Text + Link" nodes
  Update person parameter with your LinkedIn profile ID
  Add OAuth2 credentials

  Twitter:
  Configure "Tweet" and "Re-generated Tweet" nodes
  Add Twitter OAuth2 credentials

  Reddit:
  Update subreddit list in "Reddit Form" dropdown (customize to your subreddits)
  Configure "Get Flair", "Reddit Post" nodes with OAuth2
  Update subreddit name in "Reddit Post" query parameters

  4. Configure AI Models
  Verify all OpenAI credentials in language model nodes
  Models used: GPT-4.1, GPT-5, GPT-5-mini (adjust based on your access)

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.if","n8n-nodes-base.code","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreSupabase","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.formTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.form","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.form","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.form","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.form","n8n-nodes-base.httpRequest","n8n-nodes-base.form","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.linkedIn","n8n-nodes-base.linkedIn","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.form","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.form","n8n-nodes-base.if","n8n-nodes-base.twitter","n8n-nodes-base.form","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.twitter","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 13716 characters]

metadata_json:
  {"categories":["AI/ML","Marketing"],"complexity":"complex","use_cases":["cross-platform social content","article promotion","viral content generation","scheduled posting","content optimization"],"estimated_setup_minutes":15,"required_services":["OpenAI","Mozilla Readability","Supabase","LinkedIn","Twitter/X","Reddit"],"key_features":["Multi-agent AI orchestration","RAG-based viral pattern matching","Article content extraction","Platform-specific post formatting","Interactive content review workflow"],"target_audience":["social media managers","content creators","marketing teams"]}


name: Web research summarizer with Decodo Scraper and Google Gemini AI
author_name: Kevin Meneses
author_username: pythonia-kevin
categories: []
created_at: 2025-12-01T09:26:59.644Z
updated_at: 2025-12-01T09:26:59.644Z
url: https://n8n.io/workflows/11389
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:20
description:
  How it works  
  This workflow takes a list of links from Google Sheets, visits each page, extracts the main text using Decodo, and creates a summary with the help of artificial intelligence.  
  It helps you turn research articles or web pages into clear, structured insights you can reuse for your projects, content ideas, or newsletters.

  Input: A Google Sheet named input with one column called url.  
  Output: Another Google Sheet named output, where all the processed data is stored:  
  URL:** original article link  
  Title:** article title  
  Source:** website or domain  
  Published Date:** publication date (if found)  
  Main Topic:** main theme of the article  
  Key Ideas:** three main takeaways or insights  
  Summary:** short text summary  
  Text Type:** type of content (e.g., article, blog, research paper)

  Setup steps  
  Connect your Google Sheets account.  
  Add your links to the input sheet.  
  In the Decodo node, insert your API key.  
  Configure the AI model (for example, Gemini).  
  Run the workflow and check the results in the output sheet.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@decodo/n8n-nodes-preview-decodo.decodo","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.splitInBatches","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, 7884 characters]

metadata_json:
  {"categories":["Data Processing","Research","Content Creation"],"complexity":"medium","use_cases":["summarize web pages","extract insights from articles","bulk research analysis","content idea generation","newsletter preparation"],"estimated_setup_minutes":20,"required_services":["Google Sheets","Decodo","Google Gemini AI (AI/Machine Learning)"],"key_features":["batch processing of links","web scraping","AI-powered text summarization","structured output generation","internal JSON parsing"],"target_audience":["researchers","content creators","analysts"]}


name: Convert Shopify products into Blog content with DeepSeek and Sheets
author_name: Websensepro
author_username: websensepro
categories: []
created_at: 2025-12-01T10:23:18.211Z
updated_at: 2025-12-01T10:23:18.211Z
url: https://n8n.io/workflows/11394
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:20
description:
  Overview

  Stop struggling with content creation for your e-commerce store. This workflow acts as your automated AI Content Marketer, instantly transforming your Shopify product details into high-quality, SEO-optimized blog posts. It handles everything from reading product data to writing the article and uploading it directly to your store as a draft.

  What this workflow does

  Fetches Product Data: Automatically pulls product titles and descriptions directly from your Shopify store (configurable limit).
  Data Logging: Backs up the raw product data into Google Sheets for record-keeping before processing.
  AI SEO Writing: Uses a powerful LLM (via OpenRouter/DeepSeek) to write a complete, engaging blog post based on the product's features. It generates an SEO-friendly title and formats the body content in clean HTML (headings, bullet points, etc.).
  Smart Parsing: A custom Code node ensures the AI's output is strictly formatted as JSON, separating the Blog Title from the Blog Content to prevent errors.
  Auto-Drafting in Shopify: Uploads the generated article directly to your specific Shopify Blog ID as a "Draft" (so you can review it before publishing).
  Email Notification: Sends a confirmation email via Gmail to let you know your new blog posts are ready for review.

  Setup Requirements
  To run this workflow, you will need to set up credentials in n8n for the following services:

  Shopify Admin API: To fetch products and create articles. (You will need your Shop Name and an Access Token).
  OpenRouter (or OpenAI): To power the AI Agent. The template is configured for DeepSeek via OpenRouter, but can be swapped for OpenAI.
  Google Sheets: To log product data and generated blog content.
  Gmail: To send the completion notification.

  How to use
  Configure Variables: Double-click the "Variables" node (Set node) at the start of the workflow. Enter your shop name (e.g., my-store from my-store.myshopify.com) and your blogId (found in the URL when viewing your blog in Shopify Admin).
  Connect Google Sheets: Open the Google Sheets nodes and map them to a sheet in your Drive. Ensure your sheet has columns for ID, Title, and Description.
  Select AI Model: In the Chat Model node, ensure your API key is connected (OpenRouter is used by default for cost-efficiency).
  Run: Execute the workflow. It will process your products and populate your Shopify Blog with new drafts automatically.

  Video Tutorial
  Watch the full setup guide here: Guide

nodes_used:
  ["n8n-nodes-base.shopify","n8n-nodes-base.googleSheets","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.gmail","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 7172 characters]

metadata_json:
  {"categories":["eCommerce","Content Marketing","AI/ML"],"complexity":"medium","use_cases":["automate blog post creation from product data","generate SEO-optimized content from product details","bulk convert Shopify items to blog articles"],"estimated_setup_minutes":20,"required_services":["Shopify API","Google Sheets","DeepSeek API","Write Log"],"key_features":["Real-time product data fetching from Shopify","AI-powered content generation for blog posts","Spreadsheets for content storage and processing"],"target_audience":["eCommerce Store Owners","Content Marketers","Shopify Merchants"]}


name: Audit web pages for SEO issues with Decodo, GPT-4 and Google Sheets
author_name: Kevin Meneses
author_username: pythonia-kevin
categories: []
created_at: 2025-12-01T13:43:53.762Z
updated_at: 2025-12-01T13:43:53.762Z
url: https://n8n.io/workflows/11402
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  What this workflow does

  This workflow automatically audits web pages for SEO issues and generates an executive-friendly SEO report using AI.

  It is designed for marketers, founders, and SEO teams who want fast, actionable insights without manually reviewing HTML, meta tags, or SERP data.

  The workflow:

  Reads URLs from Google Sheets




  Scrapes page content using Decodo (reliable scraping, even on protected sites)

  Extracts key SEO elements (title, meta description, canonical, H1/H2, visible text)

  Uses an AI Agent to analyze the page and generate:

  Overall SEO status

  Top issues

  Quick wins

  Title & meta description recommendations

  Saves results to Google Sheets

  Sends a formatted HTML executive report by email (Gmail)

  Who this workflow is for

  This template is ideal for:

  SEO consultants and agencies

  SaaS marketing teams

  Founders monitoring their landing pages

  Content teams doing SEO quality control

  It focuses on on-page SEO fundamentals, not backlink analysis or technical crawling.

  Setup (step by step)

  1. Google Sheets

  Create an input sheet with one URL per row

  Create an output sheet to store SEO results

  2. Decodo

  Add your Decodo API credentials

  The URL is automatically taken from the input sheet
  👉 Decodo – Web Scraper for n8n

  3. AI Agent

  Connect your LLM credentials (OpenAI, Gemini, etc.)

  The prompt is already optimized for non-technical SEO summaries

  4. Gmail

  Connect your Gmail account

  Set the recipient email address

  Emails are sent in clean HTML format

  Notes & disclaimer

  This is a community template

  Results depend on page accessibility and content structure

  It focuses on on-page SEO, not backlinks or rankings

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","@decodo/n8n-nodes-decodo.decodo","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.splitInBatches","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.gmail","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  [encoded data, 8292 characters]

metadata_json:
  {"categories":["Marketing"],"complexity":"medium","use_cases":["SEO audit automation","content inefficiency check","performance audit","executive reporting","SEO content optimization"],"estimated_setup_minutes":30,"required_services":["Decodo","Google Sheets","OpenAI (GPT-4)"],"key_features":["Automated SEO crawling","AI-powered analysis","Structured reporting","Reliable page extraction"],"target_audience":["marketers","seo specialists","founders"]}


name: Send AI-Personalized LinkedIn Connection Requests from Google Sheets with Gemini
author_name: ConnectSafely
author_username: connectsafely
categories: []
created_at: 2025-12-02T03:31:08.963Z
updated_at: 2025-12-02T03:31:08.963Z
url: https://n8n.io/workflows/11420
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  Send AI-personalized LinkedIn connection requests from Google Sheets using ConnectSafely.AI API

  Who's it for

  This workflow is built for sales professionals, recruiters, founders, and growth marketers who want to scale their LinkedIn outreach without sacrificing personalization. Perfect for anyone tired of sending generic connection requests that get ignored, or manually crafting individual messages for hundreds of prospects.

  If you're running ABM campaigns, building a sales pipeline, recruiting talent, or expanding your professional network, this automation handles the heavy lifting while keeping your outreach authentic and human.

  How it works

  The workflow automates personalized LinkedIn connection requests by combining Google Sheets prospect tracking with AI-powered message generation through ConnectSafely.ai's API.

  The process flow:
  Reads pending prospects from your Google Sheet
  Immediately marks them "IN PROGRESS" to prevent duplicate sends
  Fetches complete LinkedIn profile data via ConnectSafely.ai API
  Generates a personalized, authentic message using Google Gemini AI
  Sends the connection request with your custom message
  Updates your sheet with "DONE" status and stores the message sent

  Random delays between requests mimic human behavior and maintain LinkedIn compliance.

  Watch the complete step-by-step implementation guide:

  Setup steps

  Step 1: Prepare Your Google Sheet

  Structure your Google Sheet with the following columns:

  | Column Name | Description | Required |
  |------------|-------------|----------|
  | First Name | Contact's first name | Optional |
  | LinkedIn Url | LinkedIn profile URL or username | Yes |
  | Tagline | Contact's headline/title | Optional |
  | Status | Processing status (PENDING/IN PROGRESS/DONE) | Yes |
  | Message | Stores the AI-generated message sent | Yes |

  Sample Data Format:
  First Name: John
  LinkedIn Url: https://www.linkedin.com/in/johndoe
  Tagline: VP of Sales at TechCorp
  Status: PENDING
  Message: (left empty - will be filled by workflow)

  Pro Tip: Use LinkedIn Sales Navigator export or a prospecting tool to populate your sheet with qualified leads.

  Step 2: Configure ConnectSafely.ai API Credentials

  Obtain API Key

  Log into ConnectSafely.ai Dashboard
  Navigate to Settings → API Keys
  Generate a new API key

  Add Bearer Auth Credential in n8n

  Go to Credentials in n8n
  Click Add Credential → Header Auth or Bearer Auth
  Paste your ConnectSafely.ai API key
  Save the credential

  This credential is used by both the "Fetch LinkedIn Profile" and "Send Connection Request" HTTP nodes.

  Step 3: Configure Google Sheets Integration

  3.1 Connect Google Sheets Account

  Go to Credentials → Add Credential → Google Sheets OAuth2
  Follow the OAuth flow to connect your Google account
  Grant access to Google Sheets

  3.2 Configure "Get Pending Prospect" Node

  Open the Get Pending Prospect node
  Select your Google Sheets credential
  Enter your Document ID (from the sheet URL)
  Select the Sheet Name
  Add a filter:
     Lookup Column: Status
     Lookup Value: PENDING
  Enable Return First Match Only under Options

  3.3 Configure "Mark as In Progress" Node

  Open the Mark as In Progress node
  Select the same document and sheet
  Configure column mapping:
     Matching Column: row_number
     Status: IN PROGRESS

  3.4 Configure "Mark as Complete" Node

  Open the Mark as Complete node
  Select the same document and sheet
  Configure column mapping:
     Matching Column: row_number
     Status: DONE
     Message: {{ $('Generate Personalized Message').item.json.message }}

  Step 4: Configure Google Gemini AI

  Get Gemini API Key

  Go to Google AI Studio
  Create or select a project
  Generate an API key

  Add Gemini Credential in n8n

  Go to Credentials → Add Credential → Google Gemini (PaLM) API
  Paste your API key
  Save the credential

  Connect to Google Gemini Node

  Open the Google Gemini node
  Select your Gemini credential

  Step 5: Customize the AI Prompt

  The Generate Personalized Message node contains the system prompt that controls how messages are written. Customize it for your personal brand:

  Open the Generate Personalized Message node
  Find the System Message in Options
  Replace the placeholder text:

  MY CONTEXT:
  [CUSTOMIZE THIS: Add your name, role, and what you're looking for in connections]

  With your actual information, for example:

  MY CONTEXT:
  I'm Sarah, founder of a B2B SaaS startup. I'm interested in connecting with other founders, VCs, and sales leaders to exchange ideas and explore potential partnerships.

  Update the sign-off instruction from "- [YOUR NAME]" to your actual name

  Step 6: Test the Workflow

  Add a test prospect to your Google Sheet with Status: PENDING
  Click the Manual Trigger (for testing) node
  Click Test Workflow
  Verify:
     Profile data is fetched correctly
     AI generates an appropriate message
     Connection request is sent
     Sheet updates to DONE with the message stored

  Customization

  Message Personalization

  Edit the system prompt in the Generate Personalized Message node to adjust:

  Tone**: Formal, casual, or industry-specific language
  Length**: Modify character limits (LinkedIn allows up to 300 characters)
  Focus**: Emphasize mutual connections, shared interests, or achievements
  Sign-off**: Change the signature format to match your brand

  Timing Adjustments

  Schedule Trigger: Currently set to run every minute. Adjust the interval in the **Run Every Minute node
  Random Delay: The **Random Delay (1-5 min) node adds 1-5 minutes of random wait time. Modify the formula {{ Math.floor(Math.random() * 4) + 1 }} to change the range

  Rate Limiting Best Practices

  Start with 10-20 connection requests per day
  Gradually increase over 2-3 weeks
  Never exceed 100 requests per day
  Consider pausing on weekends

  Use Cases

  Sales Prospecting**: Connect with decision-makers at target accounts with personalized outreach
  Recruiting**: Reach out to passive candidates with messages that reference their specific experience
  Founder Networking**: Build relationships with fellow entrepreneurs, investors, and advisors
  Event Follow-up**: Send personalized connection requests to conference attendees and speakers
  Partnership Development**: Connect with potential partners by referencing their company achievements

  Troubleshooting

  Common Issues & Solutions

  Issue: AI generating messages over 300 characters
  Solution**: Add explicit character count requirement in the system prompt; the current prompt specifies 200-250 characters

  Issue: "Profile not found" errors from ConnectSafely.ai
  Solution**: Ensure LinkedIn URLs are complete (include https://www.linkedin.com/in/)

  Issue: Generic-sounding AI messages
  Solution**: Enhance the system prompt with more specific context about your background and goals

  Issue: Duplicate connection requests sent
  Solution**: Verify "Mark as In Progress" node runs before "Fetch LinkedIn Profile"; check that row_number column exists in your sheet

  Issue: Google Sheets not updating
  Solution**: Confirm row_number column exists and the matching column is correctly configured

  Issue: Bearer Auth errors
  Solution**: Verify your ConnectSafely.ai API key is valid and has proper permissions

  Documentation & Resources

  Official Documentation
  ConnectSafely.ai Docs**: https://connectsafely.ai/docs
  API Reference**: Available in ConnectSafely.ai dashboard
  Google Gemini API**: https://ai.google.dev/docs

  Support Channels
  Email Support**: support@connectsafely.ai
  Documentation**: https://connectsafely.ai/docs
  Custom Workflows**: Contact us for custom automation

  Connect With Us

  Stay updated with the latest automation tips, LinkedIn strategies, and platform updates:

  LinkedIn**: linkedin.com/company/connectsafelyai
  YouTube**: youtube.com/@ConnectSafelyAI-v2x
  Instagram**: instagram.com/connectsafely.ai
  Facebook**: facebook.com/connectsafelyai
  X (Twitter)**: x.com/AiConnectsafely
  Bluesky**: connectsafelyai.bsky.social
  Mastodon**: mastodon.social/@connectsafely

  Need Custom Workflows?

  Looking to build sophisticated LinkedIn automation workflows tailored to your business needs?

  Contact our team for custom automation development, strategy consulting, and enterprise solutions.

  We specialize in:
  Multi-channel engagement workflows
  AI-powered personalization at scale
  Lead scoring and qualification automation
  CRM integration and data synchronization
  Custom reporting and analytics pipelines

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.wait","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  [encoded data, 4544 characters]

metadata_json:
  {"categories":["Sales","Marketing","Data Processing"],"complexity":"medium","use_cases":["automate LinkedIn outreach","personalize connection requests","scale B2B connections","generate LinkedIn messages"],"estimated_setup_minutes":15,"required_services":["ConnectSafely.AI","Google Sheets","Google API"],"key_features":["AI message generation","personalization from templates","Google Sheets integration","LinkedIn API interactions"],"target_audience":["sales professionals","recruiters","marketing managers"]}


name: Scrape verified Instagram leads with Apify and Airtable
author_name: MSiddhant
author_username: msiddhant
categories: []
created_at: 2025-12-02T11:27:03.046Z
updated_at: 2025-12-02T11:27:03.046Z
url: https://n8n.io/workflows/11428
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:22
description:
  🚀 Instagram Leads Scraper (Perfect for Cold Outreach)

  This workflow automates Instagram lead generation by scraping targeted Instagram profiles based on a niche + location query (example: “dentist in New York”). It uses Apify’s Scraper to find relevant Instagram pages, extracts public emails from the results, validates emails using an Email Verification API, and stores only verified leads into Airtable.

  The final output is a clean lead sheet you can instantly use for cold outreach, CRM imports, or agency prospecting.

  ✅ How it works

  You click Execute Workflow and enter a niche + location query (example: dentist in New York).
  The workflow triggers Apify Google Search Scraper to search for Instagram profiles matching your query.
  Results are processed and split into individual lead items.
  Emails are extracted and filtered (Gmail).
  Each email is checked using an Email Verification API to confirm email is valid or not.
  Only valid emails are saved into Airtable via an upsert, so duplicates are avoided.

  🎯 Use cases

  📣 Agencies targeting local businesses (dentists, gyms, salons, cafes, realtors, etc.)
  🧑‍💻 Freelancers offering web development, SEO, ads, branding
  🏢 B2B service providers building niche prospect lists
  🚀 Startups validating markets quickly
  📩 Anyone doing cold outreach and needing verified emails

  🌟 Why this workflow is valuable

  This workflow replaces hours of manual searching and copy-pasting with a fully automated lead pipeline. Instead of collecting random leads, you can generate highly targeted lists based on niche + city — with email verification included to improve deliverability and response rates.

  🛠 Setup instructions

  Import the workflow JSON into your n8n instance.
  Create an Apify account and open Google Search Scraper actor.
  Copy the API endpoint Run actor synchronously and get dataset items.
  Paste the endpoint into the Scraping Data node and add your Apify token.

  Create an Airtable base/table with these fields:  
  Username, Contact Details, URL, Followers, Email Verifier 
  You can also clone Airtable Sheet here: Sheet Link
  Connect your Airtable credentials in the Airtable DB node.
  Execute the workflow, enter your query, and leads will appear in Airtable ✅

  ⚡ Notes

  This workflow is designed for speed + accuracy (email verification prevents junk leads).
  Airtable storage uses upsert, so running it multiple times won’t spam duplicates.
  You can change the query structure inside the Apify node to target different platforms or keywords.

  Thanks for using this Workflow!
  MSiddhant

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

workflow_json_compressed:
  [encoded data, 4588 characters]

metadata_json:
  {"categories":["Marketing","Data Processing"],"complexity":"medium","use_cases":["Cold outreach lead generation","Verified contact scraping","Automated prospecting for niche locations"],"estimated_setup_minutes":15,"required_services":["Apify","Airtable","Email Verification API"],"key_features":["Niche + location based scraping","Email validation integration","Automated data cleaning and enrichment"],"target_audience":["Sales teams","Marketers","Business owners"]}


name: Forex & Gold Trading Signal Handler for MT5 using Webhooks (telegram/discord)
author_name: Cj Elijah Garay
author_username: elijahbuilds-ai
categories: []
created_at: 2025-12-02T19:35:29.788Z
updated_at: 2025-12-02T19:35:29.788Z
url: https://n8n.io/workflows/11439
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:22
description:
  MT5 Trading Signal Handler
  Metatrader5 and N8N Integration for Forex and Gold Trading via Webhooks for discord and telegram

  This n8n template demonstrates a workflow that bridges AI workflows which can be used to communicate directly to a trading platform/broker like metatrader 5

  Use cases are many:

  Try automating TradingView alerts into live MT5 trades, building a custom trading bot that sends trade execution signals to MT5 via webhooks, or creating a centralized signal management system for multiple trading strategies these features are just the beggining!

  Good to know

  Always test on demo accounts first** - start with 1-2% risk before considering any live deployment
  This workflow uses unauthenticated webhook endpoints by default - you must add authentication (API keys, OAuth) before any production use
  Signals are stored in n8n's in-memory static data - they will be lost if n8n restarts unless you implement persistent storage
  MT5 WebRequest whitelist required** - you must add all webhook URLs to MT5's allowed URLs list (Tools → Options → Expert Advisors)
  The workflow requires a custom MT5 Expert Advisor (EA) that polls the GET endpoint every 5 seconds to fetch pending signals
  This is designed for local machine or private VPS deployment only - not suitable for public cloud without significant security hardening
  No automatic signal expiration** - old signals will accumulate without manual cleanup or additional workflow logic
  Compatible with standard MT5 brokers that support automated trading and WebRequest functionality

  How it works

  Signal Reception**: The "Receive Signal (POST)" webhook accepts trading signals containing asset, entry price, stop loss, take profit, and risk percentage, then passes them to the "Store Signal" Code node
  Signal Storage**: The Code node creates a unique signal ID with timestamp, stores it in n8n's workflow static data with "pending" status, and returns a success response with the signal ID
  Queue Polling**: The "Get Pending Signals (GET)" webhook is polled every 5 seconds by your MT5 Expert Advisor to check for new signals
  Signal Retrieval**: The "Fetch Pending Signals" Code node filters all stored signals to return only those with "pending" status as a JSON array
  Market Orders**: The "Market Order (POST)" webhook accepts instant-execution orders with direction (BUY/SELL), risk percentage, and stop loss in pips, calculating SL/TP prices automatically
  Limit Orders**: The "Limit Order (POST)" webhook handles pending orders with specific entry prices, converting pip-based SL/TP into actual price levels for both standard and JPY pairs
  Trade Confirmation**: After the MT5 EA executes a trade, it sends the signal ID to the "Confirm Signal Processed (POST)" webhook, which marks the signal as "processed" and removes it from the pending queue
  Emergency Cleanup**: The "Clear all signals (POST)" webhook provides a reset function to remove all signals from the queue, useful for testing or when signals get stuck

  How to use

  Import this workflow into your n8n instance and activate it by toggling the switch in the top-right corner
  Copy all webhook URLs from each Webhook node (click the node to view the production URL)
  Configure your MT5 Expert Advisor with the correct webhook URLs (SIGNAL_URL for GET requests, CONFIRM_URL for POST confirmations)
  Add all webhook URLs to MT5's WebRequest whitelist (Tools → Options → Expert Advisors → "Allow WebRequest for listed URL")
  Restart MT5 after adding URLs to the whitelist to ensure they're loaded properly
  Test the workflow by sending a test signal using curl or Postman: curl -X POST http://127.0.0.1:5678/webhook/mt5-signal -H "Content-Type: application/json" -d "{\"asset\": \"EURUSD\", \"risk\": 2, \"entry\": 1.0850, \"sl\": 1.0830, \"tp\": 1.0900}"
  Verify the signal appears when checking the GET endpoint: curl http://127.0.0.1:5678/webhook/mt5-signals
  Attach the MT5 EA to any chart (the symbol doesn't matter - it monitors all symbols) and enable Auto Trading in MT5
  Monitor the MT5 Experts log to confirm the EA is polling every 5 seconds and executing trades correctly

  Requirements

  n8n instance** running locally or on a private VPS (version 1.x recommended)
  MetaTrader 5 terminal** installed with a demo or live account logged in
  Custom MT5 Expert Advisor** compiled and loaded (MQL5 code that polls the webhook and executes trades)
  Auto Trading enabled** in MT5 (Tools → Options → Expert Advisors → "Allow Algorithmic Trading")
  WebRequest permissions** configured in MT5 for all webhook URLs
  Basic understanding of REST APIs, webhooks, and trading concepts (orders, SL/TP, position sizing)

  Customising this workflow

  Add authentication middleware to all webhook endpoints using HTTP Authentication or custom API keys for security
  Implement persistent storage by replacing static data with a database node (PostgreSQL, MySQL) or external storage service
  Create an automatic signal cleanup workflow that runs on a schedule to delete processed signals older than 24 hours
  Add notification nodes (Telegram, Discord, Email) to alert you when trades are executed or errors occur
  Implement position size validation in the Code nodes to cap maximum lot sizes or risk percentages
  Create an asset whitelist by adding validation logic to only accept signals for approved trading instruments
  Add duplicate signal detection to prevent the same signal from being processed multiple times
  Build a signal analytics dashboard by logging all signals to a database and visualizing execution metrics
  Try a popular use-case such as connecting this to a TradingView webhook to automate Pine Script strategy alerts directly into MT5 trades!
  Add tags for certain setups and or magic numbers for easier journaling later on

  Purchasing this N8N workflow comes with the AI trading assistant workflow too so it is sold together and vice versa as well along with the MQL code for the ExpertAdvisor listener all for the price of 120 usd total

  Questions?

  If you have questions or need help with this workflow, feel free to reach out:

  elijahmamuri@gmail.com
  elijahfxtrading@gmail.com

  Important Disclaimer: This workflow is provided for educational purposes and demo account testing only. It demonstrates technical concepts for signal routing and automation architecture. Always test thoroughly on demo accounts, implement proper security measures, and understand that automated trading involves substantial risk. No warranties, financial advice, or guarantees are provided. See the full disclaimer in the workflow sticky notes for complete terms.

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

workflow_json_compressed:
  H4sIAAAAAAAAE7VY224bNxD9FUFPKeAJeL/4tWiDAm0TNEH6EORhSA4TIdYqkLaXwPC/d1ZSIsWirPUafbNM7uGZ4Zkbb+dL6nF+fTtfdJseu0y/lPn1nFIkMipVqjpbGaUyVSSSVqbqMFV0BY01spJCh7lGnZQ0UmPxGp1187urebcqtJlfv2PoAdI56WNUBkrxCoypBFhNhVCFDVEoKZKc81e4JN79B2Va/E2z14sPHd7Mnr16+frND7zcf/k8LHehgy0+JNzQ838ofVytPvH659Vm0S9WHZ8LUoUrrd5fzffLW8uWvYXNFhTWuzOGr3DNx/a0Zr63d7tT3vKvLZC8u9qbkMkkq1UEHZwAI6KDUHyEbGMpMVoRoz+Y8Lpfrb8acJZ55j+/px3djvSDnNQ3Th6lcilZcFYjmOwSRBIJbHY5Km9kzOnYrZvPq67M+tVs8OhZWuvdvjerP1ue1UqM4HjwWypKS4wZtDDM0RkL7EcHJadqQlFJBXfg+IL62SvqyqL7sPfeZvbsxU+Trl/51v1/oH6vgc34yx8UiiUFIIyejciW9WsFKA6FKHWqPoeDET9Tnz/eN+NxKthxHymDzGqk7DSzs4WlKRW7mJWalE2BvHM11WMZ9H+tu4u0LqtgBMeDB4tPhoKV4KIfwkcViNU7iCkaDKIkocSB44+rri7Wy68Z4NV6lWmzoTI9F1gVGmLIu3PGC8HrKi2WCGUIO3a1gegTgq1VRR2FSfrI1b/h+tMMNwf+jxPBjvNIEUg0ypFASA4DS9RWzgWFgy2hU5H/KV04dfAuJ2zoCTIYwfJIBoKisEKzDAQHkpIEqbgKLmCOggTXl3JgmW8I1zO8uZltpgSRVNGNd6DwWqrKmSkHJmSy0oDBaIgy11KSNCHbIwfepzZdmnuax9pMRJ647AJVjGBkUhC8kyCDl1la42PBS6JVzw9uV0Vn1JEBsmLZamMgUC3AFbvmlEUsVXwvW87DL9eF1tPNCkL8z1Y58qXkmtkqTQMeX5bWEkTU2aQsS0Z1sGq5s2q1tWqvl0eIaWfOSC3Visg5zoAly0VP5wLIDRBwQGruIzRX6tgszIcomxqOI3jK5+Yb05iKFfzNkIg5bQy3kyT3aN6z9hOFVLw5MP11sVw8WRhSmPvKGHLxzYAN2+uBo4/HiiEjRR2EA6+IXR5ygGhTgZAC1xnuXq3VB0O2h03Wwt6CkWLgUpxKtix24n7RFGsg5VhB16IKC9hZDE0xHHn7CYIYQ/ZYEV4hSVc1yBQ4RScu18HlDE44K6pLsuJRrthX0G9ZELnt3abtB4rdCM4jMvfh6mMRoeqYwFjuKAyPFMxYFm6CKvHUUSvnvuPWfJE/fZn9vupJnqW42W4a9twTcAjiCpy5T27wQ09dz0jzB7oHES33wgSZW7YhDSM3QczWqkRW8JKi3CT6eJ7KPIGn1FSdlRm8tOxQqyOnL5IQlOLgoohRxCZPNY2oFxOJKhWKxZTAk+a6VioHParAoNJ5k6hoYZtE/TSiMp60vOOI8ojoODFZIDPoNBdOTNxsgNDaqcxl0QrfJBomElXyJIDGMa1YNIXioBbkUR2RIEbOqJaMVMKWKo+z1RHTOI2pMSft4zii2QnueVmVTrM+TeXRh6cgAuFyckHmwk5tR72YxjS6kzw6MpyCSVVy98WOZJUa4m6gKgcKs0Chhin+TH56fIJyT4n7FCSJLHhooMoqJRMAuS0G1N7YJDmeSlulehLPR1897+b1jvIAst3+3TsL/17iYkB/d7t9gXro0WO782q+6Ar9O78Wd+/f83knbcEFyGaFbiKfjoIt6PNjWRP0dD5qgY4q0U3805b5gj9O2tcmbKOLbOGe79HOevj+1NKCfWAOaOK2X3Pajmi/rDRh24+cLdj2W2IT9OxU2tTF+em6CX7+ba6FfuERrE3/wrNP65wH3lgaZ9zd/QcR6fi69RYAAA==

metadata_json:
  {"categories":["Trading","Automation","API Integration"],"complexity":"medium","use_cases":["automate trading alerts","execute MT5 trades","manage trading signals","bridge trading platforms","send signals to chat"],"estimated_setup_minutes":30,"required_services":["MetaTrader 5","Telegram","Discord"],"key_features":["Webhook integration","Signal management","Chat API connection","Trading platform communication","Custom automation logic"],"target_audience":["traders","developers","algotraders"]}


name: Automate 3D Body Model Generation from Images Using SAM-3D & Google Sheets
author_name: Davide Boizza
author_username: n3witalia
categories: []
created_at: 2025-12-03T13:09:08.573Z
updated_at: 2025-12-03T13:09:08.573Z
url: https://n8n.io/workflows/11460
scraped_at: 2026-05-02 08:04:49
metadata_generated_at: 2026-05-02 08:36:21
description:
  This workflow automates the process of generating 3D human body models (in .glb format) from single image using  SAM-3D model. It operates by connecting a Google Sheet as a data source with the external AI processing API. 

  | Start | Result|
  |--------|---------|
  |  |  |

  Use Cases

  1. ✅ Sports Analysis & Motion Optimization

  3D models allow precise analysis of posture, angles, and technique.
  Possible applications:

  Golf swing analysis**
    Identify stance, rotation, shoulder/hip alignment, and follow-through.
  Tennis serve biomechanics**
    Optimize shoulder rotation, racket angle, leg push-off.
  Running gait analysis**
    Evaluate stride symmetry, foot strike, and body tilt.
  Cycling posture optimization**
    Reduce drag by analyzing torso angle and hand position.
  Swimming technique evaluations**
    Compare ideal vs. actual joint angles.

  2. ✅ Fitness, Health & Physiotherapy

  3D models can visually highlight imbalances or incorrect positions.

  Posture correction assessments**
    Identify spinal misalignment or uneven weight distribution.
  Physical therapy progress tracking**
    Compare poses over time to assess recovery.
  Ergonomics and workplace safety**
    Evaluate whether a worker’s posture is safe during lifting or repetitive tasks.
  Home fitness coaching**
    Automated feedback for yoga, pilates, stretching exercises.

  3. ✅ Fashion, Apparel & Virtual Try-On

  Photorealistic body reconstruction helps generate tailored outfits or evaluate fit.

  Virtual try-on for clothing brands**
    Produce accurate 3D avatars to test garments digitally.
  Custom-made fashion**
    Use 3D measurements for bespoke tailoring patterns.
  Model pose simulation**
    Test clothing fit in dynamic or unusual positions (e.g., dance, athletic poses).

  4. ✅ Gaming, Animation & Digital Content Creation

  Quick 3D reconstruction reduces production time for digital humans.

  Character rigging from real people**
    Generate 3D avatars ready for animation.
  Motion capture alternatives**
    Recreate specific poses without expensive mocap systems.
  VR/AR content creation**
    Deploy 3D characters into immersive environments.
  Comics, illustration, and concept art**
    Use 3D poses as reference models to speed up drawing.

  5. ✅ Medical, Research & Educational Applications

  Human-body 3D models provide insights in scientific or practical contexts.

  Anthropometric measurements**
    Estimate height, limb length, body proportions from images.
  Posture and musculoskeletal studies**
    Analyze joint angle distribution in different poses.
  Rehabilitation robotics or exoskeleton design**
    Fit devices to a patient’s real body shape.
  Training materials for anatomy or movement science**
    Generate accurate pose examples for students.

  6.✅  Security, Forensics & Reconstruction

  When allowed ethically and legally, 3D models can support investigations.

  Reconstruction of accident scenes**
    Understand how a person fell, collided, or moved.
  Analysis of body posture in video frames**
    Useful for determining gesture patterns or mobility constraints.

  7. ✅ Art, Photography & Creative Industries

  Artists often need unusual or complex human poses.

  Pose reference creation**
    For painting, 3D sculpting, illustration, or storyboarding.
  Recreating dynamic action scenes**
    Parkour, martial arts, ballet, expressive dance.
  Virtual studio lighting tests**
    Apply simulated lighting to a 3D model before shooting.

  How It Works

  This workflow automates the process of generating 3D human body models (in .glb format) from single images using the FAL.AI SAM-3D service. It operates by connecting a Google Sheet as a data source with the external AI processing API. Here is the operational flow:

  Trigger & Data Fetch: The workflow begins either manually (via "Test workflow") or on a schedule. It queries a designated Google Sheet to find rows where the "3D RESULT" column is empty, indicating a new image needs processing.
  API Request & Queuing: For each new image, it sends the image URL to the FAL.AI SAM-3D API endpoint (/fal-ai/sam-3/3d-body), which queues the job and returns a unique request_id.
  Status Polling & Waiting: The workflow enters a polling loop. It waits 60 seconds, then checks the job's status using the request_id. If the status is not "COMPLETED", it waits another 60 seconds and checks again.
  Result Retrieval & Storage: Once the status is "COMPLETED", the workflow fetches the final result, which contains the URL of the generated 3D model file (.glb). This file is then downloaded via an HTTP request.
  Sheet Update: Finally, the workflow updates the original Google Sheet row. It writes the URL of the generated 3D model into the "IMAGE RESULT" column for the corresponding row_number, thus marking the task as complete.

  Set Up Steps

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

  Prepare the Google Sheet:
      Clone the provided Google Sheet template.
      Insert the URLs of the model images you want to convert into the "IMAGE MODEL" column.
      Leave the "IMAGE RESULT" column empty; it will be populated automatically.
      In n8n, set up a "Google Sheets OAuth2 API" credential and connect it to the Get new image and Update result nodes. Ensure the documentId points to your cloned sheet.

  Configure the FAL.AI API Connection:
      Create an account at fal.ai and obtain your API key.
      In n8n, create an "HTTP Header Auth" credential. Set the Header Name to Authorization and the Header Value to Key YOUR_API_KEY_HERE (replace with your actual key).
      Apply this credential to the following nodes: Create 3D Image, Get status, and Get Url 3D image.

  Verify Workflow Logic (Key Nodes):
      Get new image: Confirm the filtersUI is set to look for empty rows in the correct column (e.g., "3D RESULT" or "IMAGE RESULT").
      Create 3D Image: Verify the JSON body correctly references the image URL from the previous node ({{ $json.image }}).
      Completed? (If node): Ensure the condition checks for the string COMPLETED from {{ $json.status }}.
      Update result: Double-check that the column mapping correctly uses row_number to match the row and updates the "IMAGE RESULT" column with the GLB URL 
  Activate & Test:
      Save the workflow.
      Use the When clicking ‘Test workflow’ node for an initial manual test with one image URL in your sheet.
      Once confirmed working, you can enable the Schedule Trigger node for automatic, periodic execution.

  👉 Subscribe to my new YouTube channel. Here I’ll share videos and Shorts with practical tutorials and FREE templates for n8n.

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

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

workflow_json_compressed:
  [encoded data, 5032 characters]

metadata_json:
  {"categories":["AI/ML","Data Processing"],"complexity":"medium","use_cases":["sports analysis","posture assessment","motion optimization","technique review","3D model generation"],"estimated_setup_minutes":30,"required_services":["Google Sheets","Deepgram"],"key_features":["image to 3D model conversion","humanoid body reconstruction","sports analytics","data persistence","automated model processing"],"target_audience":["sports analysts","athletes","developers"]}


name: Create and Send Tech News Digests with RSS, Gemini AI and Gmail
author_name: Paolo Ronco
author_username: paoloronco
categories: []
created_at: 2025-12-03T14:53:00.431Z
updated_at: 2025-12-03T14:53:00.431Z
url: https://n8n.io/workflows/11466
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  This workflow automates the entire lifecycle of collecting, filtering, summarizing, and delivering the most important daily news in technology, artificial intelligence, cybersecurity, and the digital industry.
  It functions as a fully autonomous editorial engine, combining dozens of RSS feeds, structured data processing, and an LLM (Google Gemini) to transform a large volume of raw articles into a concise, high–value daily briefing delivered straight to your inbox.

  Read: Full setup Guide

  ✅ 1. Scheduled Automation

  The workflow begins with a Schedule Trigger, which runs at predefined intervals.
  Every execution generates a fresh briefing that reflects the most relevant news from the past 24 hours.

  ✅ 2. Massive Multi-Source RSS Collection

  The workflow gathers content from over 25 curated RSS feeds covering:

  🔐 Cybersecurity

  (The Hacker News, Krebs on Security, SANS, CVE feeds, Google Cloud Threat Intelligence, Cisco Talos, etc.)

  🤖 Artificial Intelligence

  (Google Research, MIT News, AI News, OpenAI News)

  💻 Technology & Digital Industry

  (Il Sole 24 Ore, Cybersecurity360, Graham Cluley, and more)

  ⚙️ Nvidia Ecosystem

  (Nvidia Newsroom, Nvidia Developer Blog, Nvidia Blog)

  Each RSS feed is handled by a dedicated node, which ensures:

  source isolation
  easier debugging
  no single point of failure

  The feeds are grouped using category-specific Merge nodes (Cyber1/2/3, AI, Nvidia), enabling modular scalability.

  ✅ 3. Unified Feed Aggregation

  All category merges feed into the Merge_All node, creating a single combined dataset of articles from every source.

  ✅ 4. Intelligent Filtering (last 24 hours only)

  The Filter node removes:

  articles older than 24 hours (based on isoDate)
  invalid items
  duplicated or redundant entries

  This keeps the briefing strictly relevant to the current day.

  ✅ 5. Chronological Sorting

  The Sort – Articles by Date node orders all remaining items in descending date order.
  More recent or time-sensitive news is therefore prioritized.

  ✅ 6. Data Normalization (JavaScript Code)

  A dedicated Code node transforms all incoming items into one clean JSON object:

  {
    "articles": [
      {
        "title": "...",
        "content": "...",
        "link": "...",
        "isoDate": "..."
      }
    ]
  }

  This standardized structure becomes the input for the LLM summarization stage.

  ✅ 7. AI Editorial Processing – Google Gemini

  The node LLM – News Summarizer is the workflow’s editorial brain.

  A complex prompt instructs Gemini to behave like the editor-in-chief of a major tech newspaper, enforcing strict rules:

  Selection rules:

  choose only 8–10 truly important stories
  ignore low-value content (minor product releases, clickbait, rumors…)

  Relevance criteria:

  AI research & foundation models
  Big Tech developments
  cybersecurity incidents
  regulation and digital policy
  semiconductors, cloud, and infrastructure
  digital rights, governance, sovereignty

  Deduplication:

  If multiple feeds report the same story, only one version is kept.

  Output format:

  Gemini must output a valid JSON object containing:

  subject: the email subject line
  html: a fully structured HTML body grouped into categories

  Each news item ends with a clickable HTML source link, NEVER plaintext URLs.

  This step condenses dozens of articles into a polished, editorial-grade briefing.

  ✅ 8. HTML Newsletter Assembly (Code Node)

  The Build Final Newsletter HTML node:

  safely parses the JSON from the LLM
  cleans any validates subject and html fields
  embeds the content into a modern, responsive HTML email template

  The output is a single item containing:

  the final email subject
  the final HTML body
    Ready to be sent.

  ✅ 9. Automatic Email Delivery

  The Send Final Digest Email (Gmail node):

  uses the generated subject
  sends the curated HTML newsletter
  delivers it to the configured recipient(s)
  uses a custom sender name (“n8n News”)

  The result is a fully automated Tech & AI Daily Briefing delivered with zero manual effort.

  In Summary: What This Workflow Achieves

  ✔ Collects news from 25+ high-quality RSS sources
  ✔ Normalizes, filters, and sorts all items automatically
  ✔ Uses Google Gemini to select only the stories that truly matter
  ✔ Generates a coherent, readable, professional-looking HTML newsletter
  ✔ Sends the result via email every day

  Perfect for:

  daily executive briefings
  technology and cybersecurity monitoring
  automated newsletter production
  internal knowledge distribution
  competitive intelligence workflows

nodes_used:
  ["n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.stickyNote","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.stickyNote","n8n-nodes-base.filter","n8n-nodes-base.sort","n8n-nodes-base.code","n8n-nodes-base.gmail","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.googleGemini","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.stickyNote","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 11888 characters]

metadata_json:
  {"categories":["AI/ML","Communication","Data Processing","Marketing"],"complexity":"medium","use_cases":["Aggregate news feeds","Summarize articles","Automate email newsletters","Generate daily digests"],"estimated_setup_minutes":60,"required_services":["RSS feed providers","Google Gemini API","Gmail"],"key_features":["RSS filtering and processing","AI content summarization","Scheduled automated delivery","Multi-source aggregation"],"target_audience":["Developers","Content Leaders","Technical Researchers"]}


name: AI-powered review sentiment analysis to Salesforce & Google Sheets with Decodo
author_name: Kevin Meneses
author_username: pythonia-kevin
categories: []
created_at: 2025-12-04T11:06:12.282Z
updated_at: 2025-12-04T11:06:12.282Z
url: https://n8n.io/workflows/11489
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  What this workflow does

  This workflow scrapes customer reviews from Trustpilot, analyzes them with AI, and keeps both Salesforce and Google Sheets automatically updated with customer sentiment insights.

  It uses Decodo to reliably extract review content from Trustpilot, processes the text with OpenAI, and orchestrates everything using n8n.


  👉 Deocodo

  How it works (high level)

  Reads Trustpilot review URLs and Salesforce Account IDs from Google Sheets  
  Scrapes Trustpilot reviews using Decodo  
  Uses AI to summarize sentiment, trends, and key positives/negatives  
  Generates two outputs in parallel

  Outputs generated

  1. Salesforce Account update
  The workflow updates an existing Salesforce Account by writing the AI-generated sentiment summary into a custom text field (e.g. recent_trend_summary__c).

  This brings external customer feedback directly into Salesforce, allowing teams to work with real market perception inside the CRM.

  2. Google Sheets analytics dataset
  At the same time, structured review metrics are stored in Google Sheets:
  Ratings and sentiment distribution  
  Top positive and negative keywords  
  Trend summaries over time  

  This creates a reusable dataset for dashboards and reporting.

  How to configure it (general)

  Google Sheets**: add review URLs + Salesforce Account IDs  
  Decodo**: add your API key to scrape Trustpilot reliably  
     
  OpenAI**: add your API key for AI analysis  
  Salesforce**:
    Create a custom Text (255) field on Account  
    Connect Salesforce credentials in n8n  
    Only existing Accounts are updated  

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@decodo/n8n-nodes-decodo.decodo","n8n-nodes-base.salesforce","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.splitInBatches","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 10184 characters]

metadata_json:
  {"categories":["AI/ML","Customer Feedback"],"complexity":"medium","use_cases":["sentiment analysis","review scraping","data synchronization","customer insights automation"],"estimated_setup_minutes":30,"required_services":["Trustpilot","Salesforce","Google Sheets","Decodo","OpenAI"],"key_features":["automated sentiment analysis","web scraping with AI extraction","multi-platform data sync","batch processing support"],"target_audience":["customer support managers","marketing analysts","business owners"]}


name: Extract high-intent SEO keywords with Decodo from web pages with AI + SERP data
author_name: Kevin Meneses
author_username: pythonia-kevin
categories: []
created_at: 2025-12-04T11:33:51.593Z
updated_at: 2025-12-04T11:33:51.593Z
url: https://n8n.io/workflows/11491
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  What this workflow does

  This template extracts high-intent SEO keywords from any web page and turns them into a ranked keyword list you can use for content planning, landing pages, and SEO strategy.

  It runs in 3 phases:

  Scrape the target URL* with Decodo Decodo – Web Scraper for n8n

  Use AI to extract seed keywords* and understand the page topic

  Enrich each seed keyword with real Google SERP data via SerpApi* (related searches + questions + competitors), then apply a JavaScript scoring system to rank the best opportunities

  The final output is saved to Google Sheets as a clean table of ranked keywords.

  Who this workflow is for

  SEO consultants and agencies

  SaaS marketers and growth teams

  Founders validating positioning and messaging

  Content teams looking for “what people actually search for”

  This workflow is especially useful when you want keywords with commercial / solution intent, not generic single-word terms.

  Workflow overview

  Phase 1  — Scrape & clean page content

  Reads the URL from Google Sheets

  Scrapes the page via Decodo

  Cleans HTML into plain text (token-friendly)

  Phase 2 — AI keyword extraction

  AI returns a structured JSON with:

  brand / topic

  5–10 mid-tail seed keywords

  intent + audience hints

  Phase 3 — SERP enrichment + scoring

  Uses SerpApi to fetch:

  related searches
  People Also Ask questions
  competitor domains
  Scores and ranks keywords based on:
  -- source type (related searches / PAA / organic)
  -- frequency across seeds
  -- modifiers (pricing, best, free, docs, etc.)
  -- mid-tail length preference

  Setup (step by step)
  1) Google Sheets (input)

  Create a sheet with:

  Column name: urls

  One URL per row



  2) Google Sheets (output)

  Create an output sheet with columns like:

  keyword
  score
  intent_hint

  source_type

  Tip: Clear the output sheet before each run if you want a clean export.

  3) Decodo

  Add your Decodo credentials

  The URL is taken automatically from Google Sheets
  Decodo – Web Scraper for n8n

  4) SerpApi

  Add your SerpApi key in the SerpApi node

  5) AI Model

  Connect your preferred AI model (Gemini / OpenAI)

  The prompt is optimized to output valid JSON only

  Self-hosted disclaimer

  This is a community template. You must configure your own credentials (Google Sheets, Decodo, SerpApi, AI).
  Results depend on page accessibility and page content quality.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.lmChatOpenAi","@decodo/n8n-nodes-decodo.decodo","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleSheets","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 8248 characters]

metadata_json:
  {"categories":["Data Processing","Marketing","AI/ML"],"complexity":"medium","use_cases":["extract high-intent SEO keywords","generate ranked keyword lists","plan content strategy"],"estimated_setup_minutes":15,"required_services":["Decodo","SerpApi"],"key_features":["automatic keyword extraction from web pages","AI-enhanced keyword understanding","SERP data enrichment","JavaScript-based scoring system"],"target_audience":["marketers","SEO specialists","content creators"]}


name: Validate and score email addresses with ZeroBounce AI
author_name: ZeroBounce
author_username: zerobounce
categories: []
created_at: 2025-12-04T16:46:57.651Z
updated_at: 2025-12-04T16:46:57.651Z
url: https://n8n.io/workflows/11498
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  ZeroBounce Email Validation and Scoring

  This template uses the ZeroBounce node to validate and score email addresses. It is designed to first check if an email is deliverable and then uses A.I. Scoring to assess the sender's deliverability confidence.

  This is an example template to demonstrate ways to use the ZeroBounce node and how to manipulate the data with core n8n nodes.

  A ZeroBounce API key is needed to use this template. Generate one here.

  1. Email Validation
  The Validate email node sends the email address to the ZeroBounce API to determine its status (e.g., 'valid', 'invalid', 'spam trap').
  Function:** Checks the email address against ZeroBounce's Email Validation API

  2. A.I. Scoring
  For emails confirmed as valid, the workflow proceeds to the Score email node.
  Function:* Applies ZeroBounce's proprietary A.I. model to assess the quality of the email, returning a numerical score (0 to 10*).

  3. Output
  The workflow concludes with the Filter by score Switch Node, which uses the ZeroBounce score to categorize the email into three confidence tiers:
  High Score:** Indicates high confidence in deliverability and is ready for immediate campaigns.
  Medium Score:** Suggests moderate risk; these might be suitable for re-engagement or specialized campaigns.
  Low Score:** Indicates high risk, even if the status was technically valid. These should be suppressed to protect sender reputation.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","@zerobounce/n8n-nodes-zerobounce.zeroBounce","@zerobounce/n8n-nodes-zerobounce.zeroBounce","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.merge","n8n-nodes-base.merge","n8n-nodes-base.noOp","n8n-nodes-base.merge","n8n-nodes-base.switch","n8n-nodes-base.switch","n8n-nodes-base.splitOut","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.switch","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","@zerobounce/n8n-nodes-zerobounce.zeroBounce","@zerobounce/n8n-nodes-zerobounce.zeroBounce"]

workflow_json_compressed:
  [encoded data, 6096 characters]

metadata_json:
  {"categories":["Marketing","Communication"],"complexity":"medium","use_cases":["validate email addresses","score sender deliverability","filter bounce-prone emails","clean contact lists"],"estimated_setup_minutes":5,"required_services":["ZeroBounce"],"key_features":["email deliverability checking","AI-powered scoring","custom AI model integration","data manipulation workflows"],"target_audience":["marketers","email administrators","CRM users"]}


name: Automate Google My Business responses with Gemini AI and Google Sheets tracking
author_name: Malik Hashir
author_username: malikx
categories: []
created_at: 2025-12-04T19:04:24.495Z
updated_at: 2025-12-04T19:04:24.495Z
url: https://n8n.io/workflows/11503
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Purpose & Audience
  This workflow is designed for digital marketing agencies, local business owners, and reputation management professionals who need to respond to Google My Business reviews promptly and professionally across multiple business locations.

  Perfect for:
  Agencies managing 2-50+ client locations
  Multi-location business owners
  Reputation management teams
  Marketing professionals seeking automation

  Problems it solves:
  Manual review monitoring is time-consuming
  Inconsistent response quality and tone
  Delayed responses hurt local SEO rankings
  Difficult to scale across multiple locations

  What It Does
  This automated system monitors your Google My Business locations every 30 minutes and:
  ✅ Fetches new reviews from multiple GMB locations automatically
  ✅ Generates personalized AI replies using Google Gemini, matching your brand voice and tone
  ✅ Posts responses directly to GMB without manual intervention
  ✅ Logs everything to organized Google Sheets for tracking and reporting
  ✅ Handles multiple businesses with separate processing pipelines
  ✅ Prevents duplicate replies by filtering already-responded reviews

  Key Features:
  Customizable reply tone per business (professional, friendly, casual, etc.)
  Business-specific context for more relevant responses
  Automatic execution tracking and audit logs
  Scalable architecture for unlimited locations
  No duplicate replies - smart filtering system

  How It Works
  High-Level Flow:
  Trigger: Workflow runs automatically every 30 minutes
  Configuration: Reads business settings from a Google Sheet (location IDs, tone, context)
  Route: Directs each business to its dedicated processing branch
  Fetch: Retrieves all reviews from Google My Business
  Filter: Identifies reviews without replies
  Generate: Uses AI to create personalized responses matching your brand tone
  Post: Publishes replies to Google My Business
  Track: Logs all activity to Google Sheets with timestamps

  Smart Features:
  Parallel processing for multiple businesses
  Context-aware AI that understands your business
  Automatic logging for compliance and reporting
  Graceful handling when no new reviews exist

  How to Setup
  Prerequisites
  Before setting up this workflow, you'll need:
  n8n Instance (Cloud or self-hosted)
  Google Gemini API Key (Free tier available at ai.google.dev)
  Google OAuth Credentials for: Google Sheets API, Google Business Profile API

  Setup Instructions
  📘 Complete step-by-step setup tutorial included with the json file. The comprehensive setup guide covers:
  Creating and configuring your Google Sheets
  Connecting Google My Business API
  Setting up Google Gemini integration
  Configuring business-specific settings
  Testing and troubleshooting
  Adding additional business locations
  Customizing AI reply prompts

  Simply follow the included setup tutorial video for easy configuration. Average setup time: 20 minutes.

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleSheets","n8n-nodes-base.googleBusinessProfile","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.googleBusinessProfile","@n8n/n8n-nodes-langchain.googleGemini","n8n-nodes-base.splitOut","n8n-nodes-base.if","n8n-nodes-base.splitInBatches","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.splitOut","n8n-nodes-base.if","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleBusinessProfile","n8n-nodes-base.switch","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.googleGemini","n8n-nodes-base.googleBusinessProfile","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["Marketing"],"complexity":"medium","use_cases":["Auto-respond to GMB reviews","Generate review responses with AI","Track review metrics in Sheets"],"estimated_setup_minutes":60,"required_services":["Google My Business","Google Gemini API","Google Sheets","n8n"],"key_features":["AI-powered response generation","Multi-location review tracking","Scheduled review monitoring","Conditional response validation","Batch processing of reviews"],"target_audience":["Digital marketing agencies","Local business owners","Reputation managers"]}


name: Smart Gmail auto-labeler with Gemini AI & sender history
author_name: Muhammad Anas Farooq
author_username: anasn-farooq
categories: []
created_at: 2025-12-05T06:14:38.421Z
updated_at: 2025-12-05T06:14:38.421Z
url: https://n8n.io/workflows/11518
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  n8n Gmail AI Auto-Labeler

  &gt; An intelligent n8n workflow that automatically classifies and labels Gmail emails using Google Gemini AI, keeping your inbox organized with zero manual effort.

  This workflow uses AI-powered classification to analyze email content, learn from sender patterns, and automatically apply appropriate labels while archiving processed emails.

  How It Works

  Trigger: The workflow runs automatically every minute to check for new unread emails (or manually for bulk processing).
  Check for Existing Labels: Before processing, it verifies if the email already has an AI-assigned label to avoid duplicate processing.
  AI Classification: If unlabeled, the AI agent analyzes the email using:
     Sender History Tool - Fetches up to 10 previous emails from the same sender to identify patterns
     80% Majority Rule - If 80%+ of sender's past emails have the same label, strongly prefers that category
     Label Examples Tool - When uncertain, compares the email with existing examples from suspected categories
  Smart Decision: The AI returns a structured JSON response:
        {
       "label": "Category Name"
     }
        Or "None" if no category fits.
  Apply & Archive:
     Label Applied → The workflow adds the appropriate Gmail label to the thread.
     Auto-Archive → Removes the email from INBOX (archives it) to maintain zero-inbox.
  Loop: Processes the next email in the batch, ensuring all new emails are classified.

  Requirements

  Gmail OAuth2 Credentials** - Connected Gmail account with API access.
  Google Gemini API Key** - Get it here
    Free tier: 15 requests/minute
  Gmail Labels** - Must be created in Gmail exactly as listed:
    Meetings
    Income
    Inquiries
    Notify / Verify
    Expenses
    Orders / Deliveries
    Trash Likely

  How to Use

  Import the Workflow:
     Copy the provided JSON file.
     In your n8n instance → click Import Workflow → select the JSON file.

  Create Gmail Labels:
     Open Gmail → Settings → Labels → Create new labels.
     Use the exact names listed above (case-sensitive).

  Get Your Label IDs:
     In the workflow, click "When clicking 'Execute workflow'" manual trigger.
     Execute the "Get Labels Info" node only.
     Copy each label's ID (format: Label_1234567890123456789).

  Update Code Nodes with Your Label IDs:
     
     Node 1: "Check Label Existence"
        const labelMap = {
       "Label_YOUR_ID_HERE": "Meetings",
       "Label_YOUR_ID_HERE": "Inquiries",
       "Label_YOUR_ID_HERE": "Notify / Verify",
       "Label_YOUR_ID_HERE": "Expenses",
       "Label_YOUR_ID_HERE": "Orders / Deliveries",
       "Label_YOUR_ID_HERE": "Trash Likely"
     };
     
     Node 2: "Convert Label to Label ID"
        const labelToId = {
       "Meetings": "Label_YOUR_ID_HERE",
       "Inquiries": "Label_YOUR_ID_HERE",
       "Notify / Verify": "Label_YOUR_ID_HERE",
       "Expenses": "Label_YOUR_ID_HERE",
       "Orders / Deliveries": "Label_YOUR_ID_HERE",
       "Trash Likely": "Label_YOUR_ID_HERE"
     };
     
  Set Up Credentials:
     Gmail OAuth2 → Authorize your Gmail account in n8n.
     Google Gemini API → Add your API key in n8n credentials.

  Test the Workflow:
     Send yourself test emails with clear content (e.g., invoice, meeting invite).
     Use the manual trigger to process them.
     Verify labels are applied correctly.

  Activate for Auto Mode:
     Toggle the workflow to Active.
     New unread emails will be processed automatically every minute.

  Notes

  Dual Execution Modes**:
    Auto Mode - Gmail Trigger polls inbox every minute for unread emails (real-time processing).
    Manual Mode - Use the manual trigger to bulk process existing emails (adjust limit in "Get many messages" node).

  AI Learning from Patterns**:
    The workflow applies an 80% majority rule - if 80% or more of a sender's historical emails share the same label, the AI strongly prefers that category for new emails from that sender.
    This creates intelligent sender-based routing over time.

  Skip Already Labeled Emails**:
    The "Check Label Existence" node prevents re-processing emails that already have an AI-assigned label.
    Ensures efficient execution and avoids duplicate work.

  Structured AI Output**:
    Uses a Structured Output Parser to ensure the AI always returns valid JSON: { "label": "Category" }.
    If uncertain, returns { "label": "None" } and the email stays in inbox.

  Background Archiving**:
    After labeling, emails are automatically removed from INBOX (archived).
    Maintains a zero-inbox workflow while preserving emails under their labels.

  Rate Limits**:
    Google Gemini free tier: 15 requests/minute.
    Adjust polling frequency if hitting limits.

  Example Behavior

  Minute 1**: New invoice email arrives → AI fetches sender history → 85% were labeled "Expenses" → applies "Expenses" label → archives email.
  Minute 2**: Meeting invite arrives → No sender history → AI analyzes content (Zoom link, time) → applies "Meetings" label → archives email.
  Minute 3**: Promotional email arrives → AI compares with "Trash Likely" examples → applies label → archives email.
  Minute 4**: Already-labeled email detected → skipped silently.

  Label Categories

  | Label | Description |
  |-------|-------------|
  | Meetings | Calendar invites, Zoom/Meet links, appointments, scheduled events |
  | Expenses | Bills, invoices, receipts, payment reminders, subscription renewals |
  | Income | Payments received, payouts, deposits, earnings notifications |
  | Notify / Verify | Verification codes, login alerts, 2FA codes, account notifications |
  | Orders / Deliveries | Order confirmations, shipping updates, tracking numbers, deliveries |
  | Inquiries | Business outreach, sales proposals, partnerships, cold emails |
  | Trash Likely | Spam, newsletters, promotions, marketing blasts, ads |

  &gt; If no category fits clearly, the email returns "None" and remains in the inbox.

  Customization

  Change Polling Frequency**: Edit the "Gmail Trigger" node → pollTimes → mode (e.g., every5Minutes).
  Adjust Email Limit**: Modify limit: 10 in "Get many messages" node for manual bulk processing.
  Add Custom Labels**: Create in Gmail → Get ID → Update both Code nodes + AI system prompt.
  Modify 80% Rule**: Edit the AI agent's system message to adjust the majority threshold.
  Increase Tool Limits**: Change limit: 10 in Gmail tool nodes to fetch more historical data.

  Author: Muhammad Anas Farooq

nodes_used:
  ["n8n-nodes-base.gmailTrigger","n8n-nodes-base.splitInBatches","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.gmailTool","n8n-nodes-base.gmailTool","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.gmail","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.gmail","n8n-nodes-base.manualTrigger","n8n-nodes-base.gmail","n8n-nodes-base.code","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 7992 characters]

metadata_json:
  {"categories":["AI/ML","Communication"],"complexity":"medium","use_cases":["automatically label emails","clean inbox","filter messages by topic","archive processed mail"],"estimated_setup_minutes":5,"required_services":["Gmail","Google Gemini"],"key_features":["AI-powered email classification","sender pattern learning","automatic label application","email archiving"],"target_audience":["email users","admins"]}


name: Automated AI Voice Cloning 🤖🎤 from YouTube videos to ElevenLabs & Google Sheets
author_name: Davide Boizza
author_username: n3witalia
categories: []
created_at: 2025-12-05T13:48:19.398Z
updated_at: 2025-12-05T13:48:19.398Z
url: https://n8n.io/workflows/11532
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:22
description:
  This workflow automates the process of creating cloned voices in ElevenLabs using audio extracted from YouTube videos. It processes a list of video URLs from Google Sheets, converts them to audio, submits them to ElevenLabs for voice cloning*, and records the generated voice IDs back to the spreadsheet.

  *ONLY FOR STARTER, CREATOR, PRO PLAN



  Important Considerations for Best Results:

  For optimal voice cloning quality with ElevenLabs, carefully select your source YouTube videos:
  Duration**: Choose videos that are sufficiently long (preferably 1-5 minutes of clear speech) to provide enough audio data for accurate voice modeling.
  Audio Quality**: Select videos with high-quality audio, minimal background noise, and clear vocal recording.
  Single Speaker: Use videos featuring only **one primary speaker. Multiple voices in the same audio will confuse the cloning algorithm and produce poor results.
  Consistent Voice**: Ensure the speaker maintains a consistent tone and speaking style throughout the clip for the most faithful reproduction.

  Key Features

  1. ✅ Fully Automated Voice Creation Workflow

  No manual downloading, converting, or uploading is required.
  Just paste the YouTube link and voice name into the sheet—everything else happens automatically.

  2. ✅ Seamless Audio Extraction

  Using RapidAPI ensures:

  High success rate in extracting audio
  Support for virtually any YouTube video
  Consistent output format required by ElevenLabs

  3. ✅  Hands-Off ElevenLabs Voice Creation

  The workflow handles all the steps required by the ElevenLabs API, including:

  Uploading binary audio
  Naming voices
  Capturing and storing the resulting voice ID

  This is much faster than the manual method inside the ElevenLabs dashboard.

  4. ✅ Centralized, Reusable Setup

  Once the API keys are added:

  The same workflow can be reused indefinitely
  Users don’t need technical skills
  Updating only requires editing the sheet

  How it works:

  Data Retrieval: The workflow starts by fetching data from a Google Sheets spreadsheet that contains YouTube video URLs in the "YOUTUBE VIDEO" column and desired voice names in the "VOICE NAME" column. It specifically targets rows where the "ELEVENLABS VOICE ID" field is empty, ensuring only unprocessed videos are handled.

  Video Processing Pipeline:
     Video ID Extraction: Each YouTube URL is parsed to extract the unique video identifier using a regular expression.
     Audio Conversion: The video ID is sent to the RapidAPI "YouTube MP3 2025" service, which converts the YouTube video to an audio file (M4A format).
     Audio Download: The resulting audio file is downloaded locally for processing.

  Voice Creation: The downloaded audio file is submitted to ElevenLabs API via a POST request to the /v1/voices/add endpoint. This creates a new voice clone based on the audio sample. The voice name is currently hardcoded as "Teresa Mannino" in the workflow but should be dynamically configured to use the value from the "VOICE NAME" spreadsheet column.

  Data Update: The workflow captures the voice_id returned by ElevenLabs and writes it back to the corresponding row in the Google Sheets spreadsheet in the "ELEVENLABS VOICE ID" column, completing the processing cycle for that video.

  Set up steps:

  Prepare the Data Sheet: Duplicate the provided Google Sheets template. Fill in the "YOUTUBE VIDEO" column with YouTube URLs and the "VOICE NAME" column with your desired names for the cloned voices. Ensure your videos meet the quality criteria mentioned above.

  Configure APIs:
     RapidAPI: Sign up for a free trial API key from the "YouTube MP3 2025" service on RapidAPI. Enter this key into the x-rapidapi-key header field in the "From video to audio" node.
     ElevenLabs: Generate an API key from your ElevenLabs account. Configure the "Create voice" node's HTTP Header Authentication with the name xi-api-key and your ElevenLabs API key as the value.

  Optional Customization: Modify the "Create voice" node to use the dynamic voice name from your spreadsheet instead of the hardcoded "Teresa Mannino" value for more flexible operation.

  Execute: Run the workflow. It will automatically process each qualifying row, create voices in ElevenLabs, and populate the spreadsheet with the new Voice IDs. Monitor the workflow execution to ensure successful processing of each video.

  👉 Subscribe to my new YouTube channel. Here I’ll share videos and Shorts with practical tutorials and FREE templates for n8n.

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

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

workflow_json_compressed:
  [encoded data, 4256 characters]

metadata_json:
  {"categories":["AI/ML","Media Production","Automation"],"complexity":"medium","use_cases":["generate custom voice clones","extract audio from videos","process bulk video links","integrate voice synthesis with spreadsheets"],"estimated_setup_minutes":30,"required_services":["YouTube","ElevenLabs","Google Sheets"],"key_features":["automated voice extraction","batch processing workflows","spreadsheet-driven input","integration with AI voice synthesis APIs"],"target_audience":["content creators","audio engineers","automation enthusiasts"]}


name: Bulk email validation and AI scoring with ZeroBounce
author_name: ZeroBounce
author_username: zerobounce
categories: []
created_at: 2025-12-05T17:40:10.971Z
updated_at: 2025-12-05T17:40:10.971Z
url: https://n8n.io/workflows/11538
scraped_at: 2026-05-02 08:04:50
metadata_generated_at: 2026-05-02 08:36:21
description:
  ZeroBounce Bulk Email Validation and Scoring

  This template uses the ZeroBounce node to validate and score email addresses. It is designed to first check if an email is deliverable and then uses A.I. Scoring to assess the sender's deliverability confidence.

  This is an example template to demonstrate ways to use the ZeroBounce node and how to manipulate the data with core n8n nodes.

  A ZeroBounce API key is needed to use this template. Generate one here.

  1. Email Validation
  The Validate email node sends the email address to the ZeroBounce API to determine its status (e.g., 'valid', 'invalid', 'spam trap').
  Function:** Checks the email address against ZeroBounce's Email Validation API

  2. A.I. Scoring
  For emails confirmed as valid, the workflow proceeds to the Score email node.
  Function:* Applies ZeroBounce's proprietary A.I. model to assess the quality of the email, returning a numerical score (0 to 10*).

  3. Output
  The workflow concludes with the Filter by score Switch Node, which uses the ZeroBounce score to categorize the email into three confidence tiers:
  High Score:** Indicates high confidence in deliverability and is ready for immediate campaigns.
  Medium Score:** Suggests moderate risk; these might be suitable for re-engagement or specialized campaigns.
  Low Score:** Indicates high risk, even if the status was technically valid. These should be suppressed to protect sender reputation.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.switch","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","@zerobounce/n8n-nodes-zerobounce.zeroBounce","n8n-nodes-base.wait","@zerobounce/n8n-nodes-zerobounce.zeroBounce","@zerobounce/n8n-nodes-zerobounce.zeroBounce","@zerobounce/n8n-nodes-zerobounce.zeroBounce","@zerobounce/n8n-nodes-zerobounce.zeroBounce","@zerobounce/n8n-nodes-zerobounce.zeroBounce","n8n-nodes-base.wait","n8n-nodes-base.merge","n8n-nodes-base.switch","n8n-nodes-base.switch","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.stopAndError"]

workflow_json_compressed:
  [encoded data, 6384 characters]

metadata_json:
  {"categories":["Marketing","Data Processing","Communication"],"complexity":"medium","use_cases":["validate email addresses","score sender deliverability","clean email lists","assess bounce risk","filter valid recipients"],"estimated_setup_minutes":15,"required_services":["ZeroBounce"],"key_features":["AI-powered email scoring","deliverability confidence assessment","bulk email validation processing","automated bounce prevention","workflow data manipulation core nodes"],"target_audience":["marketing teams","email managers","compliance officers"]}


name: Curate contributor-friendly issues with AI and send GitHub newsletter via email
author_name: totoma
author_username: totoma
categories: []
created_at: 2025-12-06T09:26:30.173Z
updated_at: 2025-12-06T09:26:30.173Z
url: https://n8n.io/workflows/11549
scraped_at: 2026-05-02 08:04:51
metadata_generated_at: 2026-05-02 08:36:21
description:
  Use Cases
  Receive a newsletter featuring curated, contributor-friendly issues from your favorite repositories.

  By regularly reviewing active issues and new releases, you'll naturally develop stronger habits around open source contribution as your brain starts recognizing these projects as important.

  How It Works
  Collects the latest issues, comments, and recent commits using the GitHub API.  
  Uses an AI model to select up to three beginner-friendly issues worth contributing to.  
  Summarizes each issue—with contribution guidance and relevance insights—using Deepwiki MCP.  
  Converts the summaries into HTML and delivers them as an email newsletter.

  Requirements
  GitHub Personal Access Token  
  OpenRouter API Key  
  Google App Password  
  Make sure your target open-source project is indexed at https://deepwiki.com/{owner}/{repo} (e.g. https://deepwiki.com/vercel/next.js)  

  How to Use
  Update the “Load repo info” node with your target repository’s owner and name (e.g. owner: vercel, repo: next.js).  
  Add your GitHub Personal Access Token to the credentials of the “Get Issues from GitHub” node.  
  Connect your OpenRouter API key to all models linked to the Agent node.  
  Add your Google App Password to the “Send Email” node credentials.  
  Enter the same email address (associated with the Google App Password) in both the “to email” and “from email” fields — the newsletter will be sent to this address.  

  Customization
  Adjust the maximum number of contributor-friendly issues retrieved in the “Get Top Fit Issues” node.  
  Improve results by tuning the models connected to the Agent node.  
  Refine the criteria for “contributor-friendliness” within the “IssueRank Agent” node.  

  Cron Setup
  Replace the manual trigger with a Schedule Trigger node or another scheduling-capable node.  
  If you don't have an n8n Cloud account, use this alternative setup: fork the repository and follow the setup instructions.  

  TroubleShooting
  If there is an issue with the AI model’s response, modify the ai_model setting. (If you want to use a free model, search for models containing “free” and choose one of them.)

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.code","n8n-nodes-base.graphql","n8n-nodes-base.code","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.emailSend","@n8n/n8n-nodes-langchain.code","@n8n/n8n-nodes-langchain.code","@n8n/n8n-nodes-langchain.code","n8n-nodes-base.stickyNote","n8n-nodes-base.splitOut","n8n-nodes-base.code","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","@n8n/n8n-nodes-langchain.lmChatOpenRouter","n8n-nodes-base.code"]

workflow_json_compressed:
  [encoded data, 14908 characters]

metadata_json:
  {"categories":["AI/ML","Productivity","Communication"],"complexity":"medium","use_cases":["curate open source issues","generate contributor suggestions","automated email newsletters"],"estimated_setup_minutes":15,"required_services":["GitHub","OpenRouter","Email Service Provider"],"key_features":["AI-powered issue filtering","open source contribution matching","structured output parsing","email notification automation"],"target_audience":["developers","technical writers","open source maintainers"]}


name: Aggregate News Articles from NewsAPI, Mediastack & CurrentsAPI into Database
author_name: Joel Gamble
author_username: joelgamble
categories: []
created_at: 2025-12-07T00:20:50.319Z
updated_at: 2025-12-07T00:20:50.319Z
url: https://n8n.io/workflows/11572
scraped_at: 2026-05-02 08:04:48
metadata_generated_at: 2026-05-02 08:36:21
description:
  This workflow pulls news articles from NewsAPI, Mediastack, and CurrentsAPI on a scheduled basis.  

  Each provider’s results are normalized into a consistent schema, then written into your database (NocoDB by default).  
  Use case: automated aggregation of categorized news for content pipelines, research agents, or editorial queues.

  What You Must Update Before Running
  1. API Keys
  Replace all placeholder keys:
  call newsapi.org - Top Headlines → update API_KEY in URL  
  call newsapi.org - categories → update API_KEY  
  call mediastack → update "ACCESS_KEY" in JSON  
  call currentsapi → update "API_KEY" param

  2. Database Connection
  Workflow uses NocoDB to store results.

  You must:
  Update the NocoDB API Token credential to your own  
  Ensure your table includes the fields used in the create operations  
    (source_category, title, summary, author, sources, content, images, publisher_date, etc.)

  If you prefer Google Sheets, Airtable, or another DB:
  Replace each NocoDB node with your equivalent “create row” operation  
  The Set nodes already provide all normalized fields you need

  3. Scheduling
  All schedulers are disabled by default.  
  Enable the following so the workflow runs automatically:
  NewsAPI – Top Headlines**
  NewsAPI – Categories**
  Mediastack**
  CurrentsAPI**

  You may change the run times, but all four must be scheduled for the workflow to function as designed.

  What You Can Configure
  1. Categories
  Defined in:
  newsapi.org categories
  mediastack categories

  Edit these arrays to pull only the categories you care about or to match your API plan limits.

  2. Article Limits
  Adjust article_limit in:
  newsapi.org categories
  mediastack categories
  currentsapi config

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

workflow_json_compressed:
  [encoded data, 7268 characters]

metadata_json:
  {"categories":["Data Processing"],"complexity":"medium","use_cases":["automated news aggregation","content pipeline collection","research data gathering"],"estimated_setup_minutes":15,"required_services":["NewsAPI","Mediastack","CurrentsAPI","NocoDB"],"key_features":["multi-source data aggregation","schema normalization","scheduled execution","database storage"],"target_audience":["content creators","data analysts","researchers"]}


