by KlickTipp
Community Node Disclaimer: This workflow uses KlickTipp community nodes. How It Works Automate transactional emails from KlickTipp to Gmail This workflow receives contact data from a KlickTipp Outbound rule, generates a personalized HTML email, and sends it via Gmail. Key fields (e.g., first name, company, website, phone, or other custom fields) are dynamically mapped into the body. After sending, the workflow saves the email’s HTML content and writes back an Email delivery status (“Sent” or “Failed”) to the contact in KlickTipp for clear visibility. Key Features KlickTipp Outbound Trigger Starts when a KlickTipp Outbound rule calls the webhook (e.g., after a tag is applied). Accepts payload with recipient email and optional custom fields (first name, company, website, phone, etc.). Easy to adapt for confirmations, updates, welcomes, and announcements. HTML Email Composer Builds a clean, brandable HTML template with safe fallbacks. Supports per-contact personalization via mapped fields. Gmail Delivery Sends via Gmail (OAuth) with From/Reply-To, Subject, and HTML body. Supports CC/BCC and attachments if needed. Delivery Status Write-Back On success: updates a KlickTipp custom field (e.g., Email delivery status = Sent). On error: updates the same field to Failed (error details available in execution logs). Setup Instructions Install and Configure Nodes Add/enable KlickTipp community nodes and authenticate with valid API credentials. Create/authorize a Gmail credential (OAuth) and select it in the Send an email node. Paste/import your HTML into the Generate HTML template node. Activate the workflow. Workflow Logic Trigger from KlickTipp: Outbound sends contact data to the workflow. Generate HTML: Build personalized HTML (and optional plain-text). Send via Gmail: Deliver the message with the Gmail node. On Success: Update KlickTipp contact → Email delivery status: Sent. On Error: Update KlickTipp contact → Email delivery status: Failed (see logs for details). Benefits Immediate, personalized communication** without manual steps. Consistent branding** with reusable HTML templates. Clear observability** by writing back delivery status to KlickTipp. Flexible & extensible** for many message types beyond payments. Testing and Deployment Tag a test contact in KlickTipp to trigger the Outbound rule. Verify the Gmail email arrives with correct personalization. Confirm the Email delivery status field updates to Sent (or Failed for negative tests). Review execution logs and adjust field mappings if necessary. Notes Customization:** Swap templates, add CC/BCC, attachments, or a plain-text part for deliverability.
by Biznova
Transform Product Photos into Marketing Images with AI Made by Biznova | TikTok 🎯 Who's it for E-commerce sellers, social media marketers, small business owners, and content creators who need professional product advertising images without expensive photoshoots or graphic designers. ✨ What it does This workflow automatically transforms simple product photos into polished, professional marketing images featuring: Professional models showcasing your product Aesthetically pleasing, contextual backgrounds Professional lighting and composition Lifestyle scenes that help customers envision using the product Commercial-ready quality suitable for ads and e-commerce 🚀 How it works Upload your basic product photo via the web form AI analyzes your product and generates a complete marketing scene Download your professional marketing image automatically Use it immediately in ads, social media, or product listings ⚙️ Setup Requirements OpenRouter Account: Create a free account at openrouter.ai API Key: Generate your API key from the OpenRouter dashboard Add Credentials: Configure the OpenRouter API credentials in the "AI Marketing Image Generator" node Test: Upload a sample product image to test the workflow 🎨 How to customize Edit the prompt** in the "AI Marketing Image Generator" node to match your brand style Adjust file formats** in the upload form (currently accepts JPG/PNG) Modify the response message** in the final form node Add your branding** by including brand colors or style preferences in the prompt 💡 Pro Tips Use high-resolution product images for best results Test different prompt variations to find your ideal style Save successful prompts for consistent brand imagery Batch process multiple products by running the workflow multiple times 🔧 Quick Setup Guide Prerequisites OpenRouter account (Sign up here) API key from OpenRouter dashboard Configuration Steps Click on "AI Marketing Image Generator" node Add your OpenRouter API credentials Save and activate the workflow Test with a product image Customization To change the image style: Edit the prompt in the "AI Marketing Image Generator" node Add specific instructions about colors, mood, or setting Include brand-specific requirements Example custom prompt additions: "Use a minimalist white background" "Feature a modern, urban setting" "Include warm, natural lighting" "Show the product in a luxury lifestyle context"
by Nabin Bhandari
WhatsApp Voice Agent with Twilio, VAPI, Google Calendar, Gmail & Supabase This workflow turns WhatsApp voice messages into an AI assistant using Twilio, VAPI, and modular MCP servers. It handles scheduling, email, and knowledge queries all by voice. 🔎 How it works WhatsApp → Twilio → VAPI A WhatsApp Business number (via TwiML app) receives a voice message. Twilio streams the audio into VAPI for processing. VAPI → n8n Webhook VAPI interprets the intent and routes the request to the correct MCP server. MCP Servers in n8n 📅 Calendar MCP → create, fetch, update, delete Google Calendar events 📧 Gmail MCP → send confirmation or reminder emails 📚 Knowledge Base MCP → query Supabase Vector Store with OpenAI embeddings n8n → VAPI → WhatsApp n8n executes the task and returns the result via VAPI back to the user. 🛠️ How to use Import this workflow into your n8n instance. Configure a Twilio WhatsApp-enabled number and connect it to a TwiML app. Point the TwiML app to your VAPI project. Add credentials for Google Calendar, Gmail, Supabase, and OpenAI in n8n. Test by sending a WhatsApp voice command like: “Book a meeting tomorrow at 3pm” “Send a confirmation email to the client” “What’s included in the AI receptionist package?” 🎨 Customisation ideas Add more MCP servers (e.g. CRM, Notion, Slack). Swap Supabase for another vector database. Extend Gmail flows with templates or multiple senders. Adjust the VAPI assistant’s tone and role to fit your brand. 📌 Requirements Twilio WhatsApp-enabled number + TwiML app (verified in WhatsApp Manager) VAPI project (assistant configured) n8n instance (Cloud or self-hosted) Google Calendar & Gmail credentials Supabase project OpenAI API key 💡 Good to know Twilio must have a verified WhatsApp Business number. VAPI handles voice infra + intent routing; n8n only executes actions. The design is modular—easy to expand with new MCP servers. Works best when tested with short, clear commands. 🚀 Use cases Hands-free scheduling with Google Calendar. Voice-triggered email confirmations & reminders. Conversational knowledge base access. Extendable to CRMs, team chat, or business workflows. 👉 With this setup, you get a scalable voice-first AI agent on WhatsApp that connects seamlessly to your business systems.
by Pake.AI
Overview This workflow extracts text from Instagram images by combining HikerAPI and OCR.Space. You can use it to collect text data from single posts or carousels, analyze visual content, or repurpose insights without manual copying. The process is fully automated inside N8N and helps marketers, researchers, and teams gather Instagram text quickly. How it works Takes an Instagram post URL, either a single post or a carousel Retrieves media data using the HikerAPI Get Media endpoint Detects the post type, whether single feed, carousel, or reel For single posts, sends the image to OCR.Space for text extraction For carousels, loops through each slide and extracts text from every image Merges all parsed results into one raw text output Use cases Collecting text data from Instagram images for research Extracting visual insights for marketing analysis Repurposing creator content without manual transcription Helping marketers, agencies, and researchers identify message patterns in visual posts Prerequisites HikerAPI account with access to the Instagram media endpoint OCR.Space API key for image text extraction A valid Instagram post URL N8N instance capable of running HTTP requests and looping through items Set up steps Prepare your API keys for HikerAPI and OCR.Space Insert both API keys into their respective HTTP Request nodes Paste the Instagram post URL into the IGPost URL node Run the workflow to generate raw text extracted from Instagram images Check the sticky notes inside the workflow for additional guidance Made by @fataelislami https://pake.ai
by Razvan Bara
How it works This workflow automates the process of fetching weather forecasts for your home location, including severe weather alerts, and sends timely notifications. It uses the Visual Crossing API for detailed weather data and integrates with Telegram (or other messaging services) for messaging and alerts. Step-by-step In summary, the workflow runs every hour, grabs the current day's weather conditions for [your city/location of interest], and returns only those items that truly contain one or more weather alerts. 📅 Step 1: Hourly Trigger The workflow begins with the Hourly Trigger node, which is a scheduleTrigger. This node acts as the clock that initiates the entire process at regular hourly intervals. 🌤️ Step 2: Fetch Weather Data Immediately after the trigger, the workflow moves to the Meteo node, an httpRequest. This node makes an external API call to fetch weather data for your specified location. API Used: Visual Crossing Web Services Authentication: Uses your API key (key=[API KEY]) Response format: JSON 🌪🌀 Step 3: Check for Severe Weather The JSON weather data output is analyzed, and if severe weather conditions or alerts are detected, the workflow sends the alert via your preferred communication channel(s). Optional You can replace the Telegram node with email, WhatsApp, SMS notifications, or add multiple notification nodes to receive severe weather alerts across all desired channels.
by Konrad Roziewski
This workflow fetches the complete content of a specific Notion page and converts all its blocks into a single HTML string compatible with the WordPress Gutenberg block editor. It's designed to be used as a sub-workflow. You can call it from a parent workflow (e.g., "when a Notion page is updated") by passing it a notion_url. It returns a single item containing the complete, ready-to-use HTML for a WordPress post body. Key Features Full Page Conversion: Fetches all blocks from a page, including nested blocks (like content inside columns or toggles). Rich Text Support: Correctly parses and converts rich text annotations, including bold, italic, \<u\>underline\</u\>, \<s\>strikethrough\</s\>, and links. Gutenberg-Compatible: Wraps content in the appropriate Gutenberg HTML comments (e.g., , , \\) so WordPress recognizes them as blocks. Handles Complex Layouts: Includes specific logic to correctly rebuild Notion's column and column\_list blocks into a responsive Gutenberg-friendly format. Supports Various Blocks: Converts paragraphs, all heading types (H1, H2, H3), bulleted and numbered lists, images, videos (YouTube/Vimeo), embeds, code blocks, and dividers. How It Works Input: The workflow is triggered by an Execute Workflow node, which expects a notion_url in the input data. (A manual trigger with a sample URL is included for testing). Fetch Data: It first gets the Notion page specified by the URL and then uses a second Notion node to fetch all child blocks recursively (fetchNestedBlocks: true). Process Rich Text: A Code node (decode paragraphs) iterates over text-based blocks (paragraphs, lists) and uses a helper function to convert the Notion annotations array into standard HTML tags (e.g., `, , `). Convert Blocks: A second Code node (decode blocks) uses a large switch statement to map each Notion block type to its corresponding Gutenberg HTML structure. Rebuild Columns: A crucial Code node (column&column_list) runs once on all blocks. It finds all column blocks, then finds their children, and finally wraps them inside their parent column_list block. This is essential for correctly handling nested layouts. Filter & Aggregate: The workflow filters out all nested blocks, keeping only the top-level ones (since the nested content is now inside its parent, like the column block). It then aggregates all the generated HTML snippets into a single array. Final Output: A final Set node joins the array of HTML blocks with newline characters, producing a single text string in a field named wp. This string can be directly used in the "Content" field of a WordPress node in your parent workflow. Setup Notion Credentials: You must configure your Notion credentials in the two Notion nodes: Get a database page Get many child blocks Trigger: To use this, call it from another workflow using an Execute Workflow node. Pass the URL of the Notion page you want to convert in the notion_url field.
by PrideVel
🧠 Overview This workflow automatically fetches user data from an API, formats it, and stores it in Google Sheets and CSV files. 💡 Use Cases Collect user records for analytics or reporting Maintain centralized spreadsheets for marketing or CRM Export CSV backups for offline analysis or integrations 📘 Good to Know Uses the BASE_URL environment variable for the API endpoint Google Sheets integration requires OAuth2 credentials CSV export saves a local copy for backup or external use Optional error handler ensures the workflow stops safely if any step fails ⚙️ How It Works Manual Trigger – Start the workflow manually or via schedule HTTP Request – Fetch data from the API endpoint Set Node – Extract and format fields like name (first + last) and country Google Sheets – Append processed data to a Google Sheet Sheet ID: qwertz Range: A:C Spreadsheet File – Export data to CSV (users_spreadsheet.csv) Error Handler – Stops workflow if any step fails 🚀 How to Use Trigger the workflow manually or schedule it Ensure environment variables and credentials are configured Check the Google Sheet for appended user data Access the CSV file for backups or external use 🧩 Requirements API endpoint (BASE_URL) Google Sheets OAuth2 credentials Permission to write files for CSV export ⚙️ Setup Instructions Set Environment Variables: Add BASE_URL in workflow environment variables. Configure Google Sheets Node: Authenticate with your Google account using OAuth2. Specify the target Sheet ID and range. Check File Permissions: Ensure the workflow has write access to store users_spreadsheet.csv. Test the API Response Format: Expected JSON fields: first_name, last_name, country, etc. Adjust the Set Node to map any additional fields as required. 🛠️ Customizing the Workflow Change API Source:** Update the HTTP Request node to any user data API. Add More Fields:** Modify the Set node to map additional fields from the API response. Multi-Sheet Distribution:** Append data to multiple Google Sheets if needed. Automated Scheduling:** Trigger workflow automatically at intervals. Add Notifications:** Send email or Slack notifications after data collection.
by Xavier Tai
🔄 Daily Follow-Up System with Multi-Stage Sequences What It Does Automatically sends timed follow-up emails to leads based on a 4-stage sequence (Day 1, 3, 7, 14), updates tracking automatically, and calculates next follow-up dates. Set it once, add leads, and never manually track follow-ups again. Converts cold leads into warm opportunities through consistent, professional touchpoints. How It Works Schedule Trigger → Runs daily at 9 AM Read Tracker Sheet → Gets all leads from Follow-Up Tracker Filter Today's Follow-Ups → Only processes leads where "Next Follow-Up Date" = Today Process Individually → Handles each lead one at a time (prevents rate limits) Route by Stage → Sends appropriate email based on Day 1/3/7/14 stage Send Stage Email → 4 different templates for each follow-up milestone Update Last Sent → Records when email was sent Calculate Next Date → Automatically schedules next follow-up (or marks complete) 🚀 SETUP INSTRUCTIONS Step 1: Create Follow-Up Tracker Sheet Create Google Sheet with tab "Follow-Up Tracker" Add columns: Name | Email | Project/Interest | Timeline | Next Step | Stage | Next Follow-Up Date | Last Sent Date | Status Populate with leads: Set Stage = "Day 1", Status = "Active", Next Follow-Up Date = desired start date Update YOUR_GOOGLE_SHEET_ID in nodes 2, 7, and 8 Step 2: Configure Email Templates Edit nodes 6-9 with your email templates Replace YOUR_CALENDAR_LINK with your actual booking link (Calendly, etc.) Replace YOUR_RESOURCE_LINK in Day 3 email with relevant content Customize sender name/signature in all templates Step 3: Setup Gmail Connection Add Gmail OAuth2 credentials to all email nodes Test workflow with one test lead first Monitor Gmail sending limits (500/day for free accounts) Step 4: Test the Sequence Add one test lead with Next Follow-Up Date = today Manually execute workflow to verify email sends Check that Google Sheet updates correctly Verify next stage is calculated properly
by Marth
⚙ How It Works & Setup Steps: Automated Birthday Discount How It Works This workflow is a powerful yet simple automation to delight your customers on their birthdays. It runs every day on a schedule you define and automatically pulls data from your customer list on Google Sheets. The workflow then checks to see if any customer has a birthday on the current day. If a match is found, it generates a unique discount code and sends a personalized, celebratory email with the code directly to the customer. This ensures no birthday is ever missed, fostering customer loyalty and driving sales with zero manual effort. Setup Steps Follow these steps to get the workflow running in your n8n instance and start sending automated birthday discounts. 1. Prerequisites You will need a working n8n instance and a few key accounts: Google Sheets:* To store your customer data, including their email address and birthday. The birthday column should be formatted as *MM-dd** (e.g., 08-27). Gmail:** To send the personalized birthday emails to your customers. 2. Workflow Import Import the provided workflow JSON into your n8n canvas. All the necessary nodes will appear on your canvas, ready for configuration. 3. Configure Credentials Connect the following credentials to their respective nodes: Google Sheets:* Connect your Google account to the *Get Customer Data** node. Gmail:* Connect your Gmail account to the *Send Birthday Email** node. 4. Customize the Workflow Get Customer Data: Enter the Spreadsheet ID and Sheet Name of your Google Sheet containing the customer data. Is It Their Birthday?: This node compares the customer's birthday column with the current date. Ensure {{ $json.birthday }} matches the exact name of your birthday column in Google Sheets. Generate Discount Code: This node is pre-configured to create a simple unique code. For an e-commerce platform (like Shopify or WooCommerce), you will need to replace this node with the specific API call to generate a valid coupon code in your system. Send Birthday Email: Enter your sender email in the From Email field. Customize the Subject and Message with your own text and branding to make it personal. The {{ $json.name }} and {{ $json.discountCode }} expressions will automatically pull the correct customer name and generated code. 5. Activate the Workflow Once all configurations are complete, click "Save" and then "Active". The workflow is now live and will automatically run every morning to send out birthday wishes!
by Harsh Maniya
✅💬Build Your Own WhatsApp Fact-Checking Bot with AI Tired of misinformation spreading on WhatsApp? 🤨 This workflow transforms your n8n instance into a powerful, automated fact-checking bot\! Send any news, claim, or question to a designated WhatsApp number, and this bot will use AI to research it, provide a verdict, and send back a summary with direct source links. Fight fake news with the power of automation and AI\! 🚀 How it works ⚙️ This workflow uses a simple but powerful three-step process: 📬 WhatsApp Gateway (Webhook node): This is the front door. The workflow starts when the Webhook node receives an incoming message from a user via a Twilio WhatsApp number. 🕵️ The Digital Detective (Perplexity node): The user's message is sent to the Perplexity node. Here, a powerful AI model, instructed by a custom system prompt, analyzes the claim, scours the web for reliable information, and generates a verdict (e.g., ✅ Likely True, ❌ Likely False). 📲 WhatsApp Reply (Twilio node): The final, formatted response, complete with the verdict, a simple summary, and source citations, is sent back to the original user via the Twilio node. Setup Guide 🛠️ Follow these steps carefully to get your fact-checking bot up and running. Prerequisites A Twilio Account with an active phone number or access to the WhatsApp Sandbox. A Perplexity AI Account to get an API key. 1\. Configure Credentials You'll need to add API keys for both Perplexity and Twilio to your n8n instance. Perplexity AI: Go to your Perplexity AI API Settings. Generate and copy your API Key. In n8n, go to Credentials \& New, search for "Perplexity," and add your key. Twilio: Go to your Twilio Console Dashboard. Find and copy your Account SID and Auth Token. In n8n, go to Credentials \& New, search for "Twilio," and add your credentials. 2\. Set Up the Webhook and Tunnel To allow Twilio's cloud service to communicate with your n8n instance, you need a public URL. The n8n tunnel is perfect for this. Start the n8n Tunnel: If you are running n8n locally, you'll need to expose it to the web. Open your terminal and run: n8n start --tunnel Copy Your Webhook URL: Once the tunnel is active, open your n8n workflow. In the Receive Whatsapp Messages (Webhook) node, you will see two URLs: Test and Production. Copy the Test/Production URL. This is the public URL that Twilio will use. 3\. Configure Your Twilio WhatsApp Sandbox Go to the Twilio Console and navigate to Messaging \& Try it out \& Send a WhatsApp message. Select the Sandbox Settings tab. In the section "WHEN A MESSAGE COMES IN," paste your n8n Production Webhook URL. Make sure the method is set to HTTP POST. Click Save. How to Use Your Bot 🚀 Activate the Sandbox: To start, you (and any other users) must send a WhatsApp message with the join code (e.g., join given-word) to your Twilio Sandbox number. Twilio provides this phrase on the same Sandbox page. Fact-Check Away\! Once joined, simply send any claim or question to the Twilio number. For example: Did Elon Musk discover a new planet? Within moments, the workflow will trigger, and you'll receive a formatted reply with the verdict and sources right in your chat\! Further Reading & Resources 🔗 n8n Tunnel Documentation Twilio for WhatsApp Quickstart Perplexity AI API Documentation
by RJ Nelson
Who's it for This workflow is ideal for content creators, marketers, and business professionals who want to automatically repurpose their LinkedIn content into email newsletters. If you're actively posting on LinkedIn and want to maximize your content's reach by delivering it directly to your email subscribers, this automation saves you hours of manual work each week. What it does This workflow automatically transforms your latest LinkedIn posts into professionally formatted email newsletters. It monitors your LinkedIn profile, extracts your most recent post, and intelligently converts it into engaging newsletter content with proper HTML formatting. The final newsletter is then delivered directly to your target email inbox, ready to be reviewed and sent to your subscribers. How it works The workflow operates through four key stages: Content Extraction: Uses an Apify actor node to scrape all posts from your specified LinkedIn account Latest Post Filter: Automatically identifies and isolates your most recent LinkedIn post from the scraped data AI Transformation: Leverages OpenAI to convert the LinkedIn post into newsletter-style content with improved formatting and structure Email Delivery: Applies email-friendly HTML formatting and sends the polished newsletter to your designated email inbox Requirements To use this workflow, you'll need: Apify account - For LinkedIn data scraping (free tier available) OpenAI API key - For content transformation and formatting Gmail API credentials - For email delivery Setup instructions Configure Apify: Add your Apify API credentials and specify the LinkedIn profile URL you want to monitor Connect OpenAI: Insert your OpenAI API key in the AI transformation node Set up Gmail: Authenticate your Gmail account and specify the recipient email address Customize prompts: Adjust the OpenAI prompts to match your newsletter's tone and style Test the workflow: Run manually first to ensure all connections work properly How to customize Modify the OpenAI prompts to adjust newsletter tone, length, and formatting style Change the filtering logic to select posts based on engagement metrics instead of recency Add additional nodes to schedule automatic runs or post to multiple platforms Integrate with email marketing platforms like Mailchimp or SendGrid for direct subscriber delivery
by Samir Saci
Tags*: Supply Chain, Inventory Management, ABC Analysis, Pareto Principle, Demand Variability, Automation, Google Sheets Context Hi! I’m Samir — a Supply Chain Engineer and Data Scientist based in Paris, and founder of LogiGreen Consulting. I help companies optimise inventory and logistics operations by combining data analytics and workflow automation. This workflow is part of our inventory optimisation toolkit, allowing businesses to perform ABC classification and Pareto analysis directly from their transactional sales data. > Automate inventory segmentation with n8n! 📬 For business inquiries, feel free to connect with me on LinkedIn Who is this template for? This workflow is designed for supply chain analysts, demand planners, or inventory managers who want to: Identify their top-performing items (Pareto 80/20 principle) Classify products into ABC categories based on sales contribution Evaluate demand variability (XYZ classification support) Imagine you have a Google Sheet where daily sales transactions are stored: The workflow aggregates sales by item, calculates cumulative contribution, and assigns A, B, or C classes. It also computes mean, standard deviation, and coefficient of variation (CV) to highlight demand volatility. How does it work? This workflow automates the process of ABC & Pareto analysis from raw sales data: 📊 Google Sheets input provides daily transactional sales 🧮 Aggregation & code nodes compute sales, turnover, and cumulative shares 🧠 ABC class mapping assigns items into A/B/C buckets 📈 Demand variability metrics (XYZ) are calculated 📑 Results are appended into dedicated Google Sheets tabs for reporting 🎥 Watch My Tutorial Steps: 📝 Load daily sales records from Google Sheets 🔎 Filter out items with zero sales 📊 Aggregate sales by store, item, and day 📈 Perform Pareto analysis to calculate cumulative turnover share 🧮 Compute demand variability (mean, stdev, CV) 🧠 Assign ABC classes based on cumulative share thresholds 📥 Append results into ABC XYZ and Pareto output sheets What do I need to get started? You’ll need: A Google Sheet with sales transactions (date, item, quantity, turnover) that is available here: Test Sheet A Google Sheets account connected in n8n Basic knowledge of inventory analysis (ABC/XYZ) Next Steps 🗒️ Use the sticky notes in the n8n canvas to: Add your Google Sheets credentials Replace the Sheet ID with your own sales dataset Run the workflow and check the output tabs: ABC XYZ, Pareto, and Store Sales This template was built using n8n v1.107.3 Submitted: September 15, 2025