by Jitesh Dugar
Personalized Promo Code Cards for Verified Users Overview This workflow automatically generates beautiful, personalized promotional cards with QR codes and sends them via email to verified users. Perfect for e-commerce stores, marketing campaigns, and customer engagement initiatives. Key Features Email Verification**: Validates email addresses using Verifi Email API to prevent fraud and ensure deliverability Dynamic Promo Cards**: Generates stunning, personalized promotional cards with custom discount codes and QR codes Automated Email Delivery**: Sends professionally designed HTML emails with embedded promo card images Real-time Logging**: Tracks all promo distributions in Google Sheets for monitoring and analytics Error Handling**: Includes error path for invalid emails with admin notifications Fully Customizable**: Easy to customize card design, email template, and discount values Workflow Process Webhook Trigger: Receives user data (name, email, promo_code, discount_value, discount_type) Data Processing: Formats and validates incoming data with default values Email Verification: Checks email validity using Verifi Email API Validation Gateway: Routes valid emails to generation or invalid to error path Card Generation: Creates personalized promo card image using HTML/CSS to Image API Email Delivery: Sends beautifully designed email with promo card via Gmail Logging: Records successful distributions in Google Sheets Error Notification: Sends admin alerts for failed attempts What's Included Beautiful Promo Card Design Gradient purple background (#667eea to #764ba2) Personalized greeting with customer name Prominent discount display in circular badge QR code for easy checkout redemption Validity date clearly shown Professional, mobile-responsive design Professional Email Template Engaging gradient header matching promo card Highlighted promo code section with dashed border Three feature icons (Easy to Use, Exclusive Deal, Limited Time) Call-to-action button Embedded promo card image Clean footer with expiry and contact info Required Integrations & APIs 1. Verifi Email API Purpose**: Email verification and validation Get API Key**: https://verifi.email Setup**: Sign up → Generate API key → Add to workflow credentials 2. HTML/CSS to Image API Purpose**: Convert HTML promo card to PNG image Get API Key**: https://htmlcsstoimg.com Setup**: Create account → Copy API key → Configure in workflow 3. Gmail API (OAuth2) Purpose**: Send personalized promo emails Get Credentials**: https://console.cloud.google.com/ Setup Steps**: Create new project Enable Gmail API Create OAuth 2.0 Client ID Add credentials to n8n 4. Google Sheets API Purpose**: Log promo distributions for tracking Get Credentials**: https://console.cloud.google.com/ Setup Steps**: Enable Google Sheets API Create Service Account (or use OAuth2) Share your Google Sheet with the service account email Add credentials to n8n Quick Start Guide Step 1: Import the Workflow Copy the workflow JSON Go to n8n dashboard Click "Import from File" or "Import from URL" Paste the workflow Step 2: Configure Credentials Set up the following credentials in n8n: Verifi Email API credentials HTML/CSS to Image API credentials Gmail OAuth2 credentials Google Sheets credentials Step 3: Create Google Sheet Create a new Google Sheet Add headers: Timestamp, Name, Email, Promo Code, Discount Value, Status Share with your service account (if using service account auth) Copy the Sheet ID and update in the workflow Step 4: Customize Settings QR Code URL**: Update the checkout URL in the promo card HTML (line with YOURSTORE.com) Admin Email**: Change admin notification email in the "Error Path" node Validity Date**: Update expiry date in both promo card and email template Colors/Design**: Customize gradient colors and styling as needed Step 5: Test the Workflow Activate the workflow Copy the webhook URL Send a POST request with test data: { "name": "John Doe", "email": "john@example.com", "promo_code": "SAVE20", "discount_value": "20%", "discount_type": "percentage" } Input Parameters Send a POST request to the webhook with the following JSON body: { "name": "Customer Name", // Optional: defaults to "Valued Customer" "email": "customer@example.com", // Required: customer email address "promo_code": "SUMMER25", // Optional: defaults to "WELCOME10" "discount_value": "25%", // Optional: defaults to "10%" "discount_type": "percentage" // Optional: defaults to "percentage" } Use Cases E-commerce Welcome offers for new customers Abandoned cart recovery with discount codes Birthday/anniversary promotions Loyalty rewards for repeat customers Marketing Campaigns Seasonal sale promotions Referral program rewards Social media contest prizes Email list incentives Customer Engagement Re-engagement campaigns VIP member benefits Event registration perks Survey completion rewards Customization Options Promo Card Design Modify colors and gradients in the HTML/CSS Change logo/emoji in the header Adjust card dimensions and layout Customize QR code size and styling Update validity date format Email Template Change email subject line Modify header text and styling Add company branding/logo Customize CTA button text and link Update footer information Business Logic Add conditional discounts based on user tier Implement time-based validity Add product-specific promo codes Include multiple discount tiers Add custom validation rules Monitoring & Analytics The workflow automatically logs: Timestamp of each promo distribution Customer name and email Promo code assigned Discount value Distribution status (Success/Failed) Use this data to: Track campaign performance Monitor redemption rates Identify popular discount amounts Analyze email delivery success Debug failed attempts Troubleshooting Common Issues Email not sending: Verify Gmail API credentials are correct Check OAuth2 token hasn't expired Ensure Gmail account has proper permissions Image not generating: Confirm HTML/CSS to Image API key is valid Check API usage limits haven't been exceeded Verify HTML syntax is correct Email validation failing: Ensure Verifi Email API credentials are active Check API rate limits Verify email format in incoming data Google Sheets not updating: Confirm Sheet ID is correct Check service account has edit permissions Verify sheet name matches configuration Pro Tips Test with Invalid Emails: Try sending to invalid emails to verify error handling works Monitor API Limits: Keep track of API usage to avoid hitting rate limits A/B Test Designs: Create multiple card variations to see which performs better Personalize Further: Add more custom fields like user tier, purchase history, etc. Schedule Reports: Create a companion workflow to send daily/weekly promo distribution reports Performance Metrics Processing Time**: 30-60 seconds per request Success Rate**: 95%+ for valid email addresses Scalability**: Handles hundreds of requests per hour Error Recovery**: Automatic admin notifications for failures Security & Privacy Email validation prevents spam and fraud No sensitive data stored in workflow All API credentials encrypted in n8n Google Sheets logging can be disabled if needed Compliant with email marketing best practices Best Practices Email Deliverability: Always validate emails before sending Rate Limiting: Implement delays for bulk sends to avoid spam filters Personalization: Use customer names and relevant discount amounts Clear CTAs: Make it easy for customers to redeem their codes Tracking: Monitor distribution and redemption metrics Testing: Always test with real emails before launching campaigns 📄 License This workflow template is provided as-is for use in your n8n instance. Feel free to customize and adapt to your specific needs. Why Use This Workflow? ✅ Saves Time: Automates entire promo distribution process ✅ Reduces Errors: Email validation prevents bounce rates ✅ Professional Output: Beautiful, branded promo cards ✅ Easy Tracking: Real-time logging in Google Sheets ✅ Scalable: Handles high volume campaigns ✅ Customizable: Easy to adapt to your brand ✅ Cost-Effective: Uses affordable or free tier APIs Perfect for marketers, e-commerce managers, and anyone looking to automate personalized promotional campaigns!
by Jitesh Dugar
🎁 Verified Referral Reward Notification Workflow Overview Transform your referral program into a fully automated, fraud-resistant system that delivers professional rewards to verified referrers. This workflow combines email validation, dynamic coupon generation with visual design, automated email delivery, and comprehensive tracking—all without manual intervention. What This Workflow Does 1. Receives Referral Submissions Accepts form submissions via webhook (compatible with Jotform, Typeform, Google Forms, or any webhook-enabled form) Captures referrer details, email, referred friend, and campaign information 2. Validates Email Addresses Prevents fraud and abuse by verifying email authenticity using VerifiEmail API Checks for disposable emails, invalid formats, and non-existent addresses Ensures high deliverability rates for reward emails 3. Generates Personalized Coupon Cards Creates unique coupon codes with smart formatting (e.g., REF-JOHN1234) Designs beautiful HTML/CSS coupon cards with gradient backgrounds and professional styling Converts HTML to high-quality PNG images using HTMLCSStoImage API 4. Sends Professional Reward Emails Delivers branded thank-you emails with embedded coupon images Includes both visual coupon card and text-based coupon code Personalized with referrer's name and campaign details 5. Tracks Everything in Google Sheets Logs successful rewards with timestamps, coupon codes, and image URLs Records failed verifications for analysis and optimization Provides audit trail and performance metrics 6. Handles Invalid Submissions Gracefully Sends polite notification emails for failed verifications Explains possible reasons (typos, disposable emails, invalid formats) Encourages users to correct and resubmit Perfect For E-commerce stores running referral programs SaaS companies with customer referral incentives Marketing agencies managing client referral campaigns Any business wanting to automate reward distribution Companies needing fraud prevention in their referral systems Key Benefits ✅ Fraud Prevention - Email verification stops fake submissions ✅ Professional Branding - Beautiful, customizable coupon designs ✅ Full Automation - Zero manual work after setup ✅ Complete Tracking - Every submission logged with full details ✅ High Deliverability - Only sends to verified, valid emails ✅ Scalable - Handles unlimited submissions automatically ✅ Analytics Ready - Google Sheets data ready for reporting and dashboards Technical Highlights Conditional logic for valid/invalid email paths Dynamic HTML generation with inline CSS Image rendering for visual coupons Error handling and graceful degradation Comprehensive logging for both success and failure paths Use Cases Referral Marketing Programs - Reward customers for bringing friends Ambassador Programs - Incentivize brand advocates Holiday Campaigns - Run seasonal referral promotions Growth Marketing - Scale word-of-mouth acquisition Partner Programs - Automate partner referral rewards Required Services & APIs Free Tier Available: VerifiEmail** - Email verification (https://verifi.email) HTMLCSStoImage** - HTML to image conversion (https://htmlcsstoimg.com) Google Services (Free): Gmail** - Email sending via OAuth Google Sheets** - Data tracking and logging Form Options (Any webhook-enabled service): Jotform Typeform Google Forms (via extensions) Tally Any custom form with webhook support Setup Time ⏱️ 15-20 minutes (including credential setup and testing) Skill Level 🎯 Beginner-Friendly - Detailed documentation and sticky notes guide you through every step What You'll Need Before Starting Gmail account with 2FA enabled Google Sheet for tracking (template provided in documentation) VerifiEmail API key (free signup) HTMLCSStoImage API key (free signup) Form platform with webhook capability Customization Options Modify coupon discount percentage Change HTML/CSS design and branding Customize email templates Adjust coupon code format Add additional data fields Integrate with CRM or marketing tools A/B test different coupon designs Set validity periods dynamically Featured Community Workflows Submission Notes Why This Workflow Deserves to be Featured: Solves Real Business Problem - Referral fraud is a genuine issue costing businesses money. This workflow provides an elegant solution. Production Ready - Not a demo or proof-of-concept. This is battle-tested code ready for real-world use. Comprehensive Documentation - Every node has detailed sticky notes explaining purpose, configuration, and data flow. Beginner Accessible - Despite sophistication, clear documentation makes it approachable for n8n newcomers. Scalable Architecture - Handles both success and failure paths gracefully with proper error handling. Multi-Service Integration - Demonstrates best practices for connecting multiple APIs and Google services. Visual Excellence - Generates beautiful, professional coupon cards that enhance brand perception. Analytics Built-In - Google Sheets integration enables immediate tracking and reporting. Customizable Template - Easy to adapt for different industries, brands, and use cases. Community Value - Provides a foundation others can build upon and learn from. Business Impact: Reduces manual work by 100% Cuts fraudulent referrals by ~70-80% Improves customer experience with instant rewards Provides actionable data for marketing optimization Scales to handle thousands of referrals automatically Version History v1.0 - Initial release with full automation and dual-path logic Tested and validated in production environment Includes comprehensive documentation and setup guides Support & Documentation Full implementation guide included with: Step-by-step setup instructions Credential configuration details Testing procedures Troubleshooting tips Customization examples Google Sheets template structure License MIT License - Free to use, modify, and distribute Perfect for businesses looking to automate their referral programs without sacrificing quality or control.
by ConnectSafely
Auto-Send DMs to LinkedIn Commenters Who Type a Specific Keyword using ConnectSafely.AI API Who's it for This workflow is built for content creators, coaches, course sellers, and marketers who use the "comment X to get the link" engagement strategy on LinkedIn. Perfect for anyone who wants to deliver lead magnets, code samples, templates, or resources automatically without spending hours manually DMing every commenter. If you're tired of the manual grind—reading comments, checking connections, copy-pasting messages—this automation handles the entire fulfillment process while you focus on creating more content. Works especially well for viral posts where comment volume makes manual responses impossible. How it works The workflow monitors your LinkedIn post for specific keyword triggers and automatically sends personalized DMs to commenters who request your content. The process flow: You submit your post URL, trigger keyword, and resource link via a simple form Fetches all comments from the specified LinkedIn post via ConnectSafely.ai API Loops through each comment individually for processing Detects if the comment contains your trigger keyword (case-insensitive) Checks if the commenter is a 1st-degree connection (required for DMs) Sends a personalized direct message with their name and your resource link Applies random rate limiting (15-30 minutes) between messages for account safety Continues until all matching comments are processed The rate limiting and connection checks are built-in to protect your LinkedIn account from automation detection. Setup steps Step 1: Get Your ConnectSafely.ai API Key Obtain API Key Sign up at ConnectSafely.ai Log into your dashboard Navigate to Settings → API Keys Generate a new API key and copy it Add Credential in n8n Go to Credentials in n8n Click Add Credential → Search for ConnectSafely API Paste your API key Save the credential This credential is used by all ConnectSafely nodes in the workflow. Step 2: Connect Your LinkedIn Account In your ConnectSafely.ai dashboard, click Connect LinkedIn Follow the authorization flow Ensure your account shows as "Connected" with a green status Your LinkedIn is now accessible via the API Step 3: Import and Configure the Workflow Download the workflow JSON file In n8n, go to Workflows → Import from File Select the downloaded JSON Open each ConnectSafely node and select your credential from the dropdown Step 4: Test the Workflow Click the Test Workflow button in n8n Copy the form URL that appears in the Form Trigger node Open the URL in a new browser tab Fill in the form: LinkedIn Post URL: Full URL of your post with comments Trigger Keyword: The word commenters type (e.g., "code", "link", "example") Content Link: The URL you want to send them Your Name: For the message signature Submit and watch the execution Pro Tip: Test with your own post first where you've left a test comment containing the keyword. Step 5: Activate for Production Review the test execution to ensure messages sent correctly Toggle the workflow to Active Use the form URL whenever you post new "comment for link" content The workflow processes comments and sends DMs automatically Customization Message Template Edit the Send DM with Link node to customize your message: Hey {{name}}! 👋 Thanks for your comment on my post! As promised, here's the link you requested: 👉 {{link}} If you have any questions or want more resources like this, just let me know! Best, {{your_name}} Variables available: {{ $('Loop: Process Each Comment').item.json.authorName }} - Commenter's name {{ $('Form: Enter Post Details').item.json['Content Link to Send'] }} - Your resource link {{ $('Form: Enter Post Details').item.json['Your Name (for signature)'] }} - Your name Multiple Keywords Edit the Detect Keyword Match code node to check for multiple trigger words: // Multiple keyword detection const keywords = ['code', 'example', 'template', 'link', 'send']; const commentLower = commentText.toLowerCase(); const isMatch = keywords.some(keyword => commentLower.includes(keyword.toLowerCase()) ); return [{ json: { isKeywordMatch: isMatch, commentText } }]; Rate Limiting Adjustment Edit the Wait: Rate Limiting node to change delays: | Risk Level | Wait Time | Formula | |------------|-----------|---------| | 🟢 Safest | 30-60 min | Math.floor(Math.random() * (3600 - 1800 + 1)) + 1800 | | 🟡 Moderate (Default) | 15-30 min | Math.floor(Math.random() * (1800 - 900 + 1)) + 900 | | 🔴 Faster (Risky) | 5-15 min | Math.floor(Math.random() * (900 - 300 + 1)) + 300 | Warning: Shorter delays increase the risk of LinkedIn flagging your account. Add Connection Requests (Optional) To also send connection requests to non-connected commenters: Add a ConnectSafely LinkedIn node after the "If: Connected?" FALSE path Set operation to sendConnectionRequest Map the publicIdentifier from the loop Add a personalized connection message Use Cases Lead Magnet Distribution**: Automatically deliver PDFs, guides, or checklists to everyone who comments Code Sample Sharing**: Share GitHub repos, code snippets, or template files to developers who request them Course Previews**: Send free lesson links or course previews to interested commenters Template Giveaways**: Distribute Notion templates, spreadsheets, or design files Webinar Registrations**: Send signup links to commenters interested in your events Community Building**: Deliver exclusive Discord/Slack invite links to engaged followers Podcast Promotion**: Share episode links or show notes with interested listeners Newsletter Growth**: Send subscription links with a teaser of your best content Troubleshooting Common Issues & Solutions Issue: No comments returned from post Solution**: Verify the post URL is correct and complete (should include the full linkedin.com/posts/... URL) Solution**: Ensure the post is public or you're the post author Solution**: Check that the post actually has comments Issue: "Cannot send message" errors Solution**: You can only DM 1st-degree connections on LinkedIn; non-connections are automatically skipped Solution**: The commenter may have messaging disabled in their settings Issue: Messages not being sent Solution**: Verify your ConnectSafely.ai credentials are valid and connected Solution**: Check that your LinkedIn account is properly connected in ConnectSafely dashboard Solution**: Review the execution log for specific error messages Issue: Keyword not matching comments Solution**: Keywords are case-insensitive, but check spelling Solution**: Ensure the keyword appears exactly in the comment (partial matches work) Solution**: Test with a simple, unique keyword first Issue: Workflow seems slow Solution**: This is intentional! The 15-30 minute delays between messages protect your account Solution**: Large batches (50+ comments) will take several hours to complete safely Issue: LinkedIn account warnings Solution**: Stop the workflow immediately Solution**: Wait 24-48 hours before resuming Solution**: Increase rate limiting delays when you restart Solution**: Reduce daily volume Issue: Duplicate messages sent Solution**: Don't run the workflow multiple times on the same post Solution**: Consider adding a Google Sheets node to track processed commenters Safety Best Practices LinkedIn Account Protection | Do ✅ | Don't ❌ | |-------|---------| | Use random delays (built-in) | Send messages without delays | | Process 20-30 comments per batch | Process 100+ comments at once | | Run during business hours | Run 24/7 continuously | | Stop if you see warnings | Ignore LinkedIn restrictions | | Keep messages helpful | Send salesy/spammy content | | Respond to genuine requests | Use for cold outreach | Daily Limits (Approximate) | Account Type | Recommended Max DMs/Day | |--------------|------------------------| | Free Account | 30-50 | | Premium | 50-80 | | Sales Navigator | 80-100 | These are conservative estimates. LinkedIn doesn't publish exact limits. Documentation & Resources Official Documentation ConnectSafely.ai Docs**: https://connectsafely.ai/docs API Reference**: Available in ConnectSafely.ai dashboard n8n Form Trigger**: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.formtrigger/ n8n Code Node**: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/ 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
by Abdul Matheen
AI Doctor’s Appointment Scheduler – Process Flow User Interaction via Telegram: The user sends a text or voice message through Telegram requesting a doctor’s appointment. Input Processing: The AI agent receives and interprets the user’s message to identify the doctor’s name, preferred date, and time. Doctor Information Retrieval: The agent accesses the doctor’s details stored in Google Sheets (or an Excel file). Schedule Verification: It checks the doctor’s availability for the requested date and time using the doctor’s schedule ledger or database. Availability Response: If the doctor is already booked, the agent informs the user and suggests alternative available slots. If the doctor is available, the agent proceeds to confirm the appointment details with the user. Appointment Confirmation & Booking: Once the user confirms, the agent records the appointment details in the Excel sheet (or Google Sheet). Confirmation Notification: The agent sends a confirmation message to the user through Telegram, summarizing the appointment details (doctor name, date, and time).
by Mezie
What it does Receives contact details via form, routes to appropriate Wiza API endpoints (email, phone, LinkedIn, or all), enriches data with verification, calculates quality scores (0-100), and stores results in both Airtable and HubSpot. Who's it for Sales teams, recruiters, and marketing ops professionals who need to transform minimal contact info into complete, verified profiles at scale. Requirements n8n (self-hosted or cloud) Wiza API Key (with Email/Phone/LinkedIn Finder access) Airtable API Key (optional) HubSpot API Key (optional) How to set up Import workflow JSON into n8n Configure Wiza, Airtable, and HubSpot credentials Set up Airtable base with required columns (Full Name, Email, Phone, LinkedIn, Data Quality Score) Activate workflow and share the form URL How to customize Adjust quality scoring weights in the Code node Add custom fields to the form trigger Modify Airtable/HubSpot field mappings Change deduplication logic for emails
by Ruthwik
n8n Google Sheets Monthly Order Logger This n8n template records incoming e-commerce orders into Google Sheets, auto-creates a monthly sub-sheet, and adds a “Status” dropdown so your team can track fulfillment at a glance. Use cases Centralize order logs, coordinate shipping across months, trigger customer updates (e.g., WhatsApp/Email) from status changes, and build lightweight ops dashboards. Good to know The Google Sheet ID is the part in the URL between /d/ and the next slash: https://docs.google.com/spreadsheets/d/<sheetId>/. A new sub-sheet is created every month (sheet name = current month, e.g., “September 2025”). If it already exists, the workflow appends to it. The Status column uses data validation with these options: Not Shipped, Pickup Scheduled, Shipped, InTransit, Delivered, Cancelled. Make sure the Google credential in n8n has edit access to the spreadsheet. The Webhook URL must be updated in your Shopify Settings → Notifications → Webhooks page with the required Order events (e.g., Order creation, Order update, Order fulfillment). Reference: Shopify Webhooks Guide How it works Order created (Webhook/Trigger): Receives a new order payload from your store/stack. Config (set spreadsheetId): Stores the target Google Sheets spreadsheetId (copied from the URL). Get Order Sheets metadata: Lists existing tabs to see if the tab for the current month already exists. Generate Sheet Name: Computes the sheet name like {{ $now.format('MMMM YYYY') }}. If (sheet exists?): True → Google Sheets Row values (existing): Prepares the row for append using the month tab. Append to Existing Orders Sheet: Appends the order as a new row. False → Set Sheet Starting row/col: Sets starting cell (e.g., A1) for a brand-new month tab. Create Month Sheet: Creates a new tab named for the current month. Write Headers (A1:…): Writes the column headers. Google Sheets Row values: Maps payload fields into the header order and applies validation to Status. Append to Orders Sheet: Appends the first row into the newly created month tab. How to use In Config, paste your spreadsheetId from the sheet URL and confirm your Google credential has edit access. (Optional) Adjust the month-tab naming format to match your preference. In Shopify → Settings → Notifications → Webhooks, add your n8n webhook URL and select the Order events (Order creation, Order update, Order fulfillment, etc.) you want to capture. Deploy the workflow and send a sample order to the trigger; a new month tab will be created automatically on the first order of each month. Requirements n8n instance with the Google Sheets node credential configured. A Google Spreadsheet you own or can edit. A Shopify store with webhook events enabled (see Shopify Webhooks Guide). Customising this workflow Add/remove columns (e.g., taxes, discounts, warehouse notes). Change the Status list or add conditional formatting (e.g., green = Delivered). Chain automations: on Status update → send tracking links, COD confirmation, or delivery feedback forms.
by Adrian
📘 Overview This workflow automates end-to-end social media publishing powered by Late API. It generates text content with Google Gemini, creates branded visuals with Kie.ai, uploads media to Late, and publishes across multiple platforms (Facebook, Instagram, LinkedIn, TikTok). It’s a production-ready automation for marketing teams who want to save hours of work by letting AI handle both copywriting and design — all inside n8n. ⚙️ How it works Generate text content → Google Gemini produces platform-optimized copy (tone & length adapted to each network). Generate visuals → Kie.ai Seedream v4 creates branded 1080x1080 images. Upload to Late → media is stored using Late’s upload API (small & large file handling). Publish → posts are created via Late API on enabled platforms with correct { platform, accountId } mapping. Notify → success logs are sent via Slack, Discord, Email, and Webhook. 🛠 Setup Steps Time to setup:** ~10–15 minutes Steps:** Add your API keys in n8n Credentials: Google Gemini API (PaLM) Kie.ai (Seedream) Late API Insert your Account IDs (Facebook, Instagram, LinkedIn, TikTok) into the Default Settings node. Choose which platforms to enable (ENABLE_FACEBOOK, ENABLE_INSTAGRAM, etc.). Set your Business Type and Content Topic (e.g., “a tech company” / “new product launch”). Execute the workflow. 📝 Notes Sticky Notes** are included in the workflow to guide each section: Overview, Prerequisites, Default Settings, Content Generation, Image Generation, Media Upload, Publishing Logic, Notifications, Error Handling. All API keys are handled via Credentials (no hardcoding). Fallback content is included in case Gemini fails to parse. Large image files (>4MB) are handled with Late’s multipart upload flow. 💸 Cost per Flow (Estimated) Late API**: $0.00 within Free/Unlimited plans, or ≈ $0.11/post on Build plan ($13/120 posts). Google Gemini**: ~$0.0001–$0.0004 per post (≈200 tokens in/out). Kie.ai (Seedream)**: ≈ $0.01–$0.02 per generated image. ➡️ Total: ~$0.01 – $0.12 per post, depending mainly on your Late plan & Kie.ai credits. 🎯 Use cases Marketing teams automating cross-platform campaigns. Solo founders posting content daily without design/copy effort. Agencies scaling social media management with AI + automation. 📢 Credits Built by Adrian (RoboMarketing) for the n8n Arena Challenge – September 2025. Powered by: Gemini API Kie.ai Seedream Late API
by CompanyEnrich
This workflow automates enriching company profiles by taking a domain name from a Google Sheet, fetching firmographic data via the CompanyEnrich API, and updating the sheet with the results. Who is this for? Sales Teams:** To enrich lead lists with better data Marketing Professionals:** To segment potential accounts based on industry or location Recruiters:** To gather background information on target companies Data Analysts:** To rapidly clean and populate missing firmographic datasets What it does The workflow pulls rows from a specified Google Sheet It checks a "Status" column to ensure it only processes rows that haven't been completed yet (skips rows marked "Done"). Using the company Domain column, it queries the CompanyEnrich API A custom code node flattens the JSON response and automatically matches the API data to the columns currently existing in your Google Sheet It writes the enriched data back to the row and marks the status as "Done" Requirements A Google account with access to Sheets. You will need an API key from CompanyEnrich. How to set up Prepare your Google Sheet: Create a sheet with the following mandatory headers: Domain, Status, and Last Updated. Add Data Columns: Add headers for the data you want to fetch (e.g., revenue, employees, location_city_name, socials_linkedin_url). Configure Credentials: Connect your Google Sheets account in the "Get row(s)" and "Update row" nodes. Select the Sheet: Update the Document and Sheet Name in both Google Sheets nodes to point to your specific file. Add API Key: Open the "Fetch Company Data" node and replace the placeholder in the Authorization header with your actual API Key (format: Bearer YOUR_API_KEY). How to customize Fetch Specific Data:** Because of the dynamic Javascript logic, you do not need to edit the workflow to get different data. Simply add a new column header to your Google Sheet that matches the API field name (e.g., adding a column named industries will automatically fetch and fill that data). Adjust Throttling:** If you have a large dataset, you may need to adjust the "SplitInBatches" node to process fewer items at once to avoid API rate limits.
by 1Shot API
Launch ERC-20 Tokens with Telegram Bot and 1Shot API Custodial Wallets Find the full walk-through tutorial video for this workflow on YouTube. This Telegram bot template demonstrates some useful patterns for creating crypto-powered multi-user bot applications like: How to create custodial wallets tied to specific telegram users. How submit onchain transactions from a specific user's wallet when they interact with your bot. Storing transaction logs in n8n data tables Settings up inline keyboards for use triggering specific onchain actions. Starting with this workflow, you can extend it for many different crypto/onchain applications as well as introduce fees to generate revenue in return for performing onchain actions for your users. NOTE: This is somewhat advanced setup as it requires the use of datatables, you will need to self-host this workflow. Setup You'll need to perform the following steps to get this Telegram bot workflow up and running: Create a free 1Shot API account & generate an API Key & Secret. Use the API credentials to authenticate the 1Shot API nodes. Create a new Telegram bot using the @BotFather bot to get an api key. Use the bot API key to authenticate the Telegram nodes. Create a two Data Tables in your n8n account: User Table & Token Table. The User Table should have chatid, wallet and walletid as columns. The Token Table should have wallet, token, name and chatid as columns. These tables are used to the mappings between your bot users and their wallets and tokens. Import the 1Shot API Token Factory contract into your 1Shot API account. This smart contract is needed to deploy ERC-20 tokens on behalf of your bot users. You can also watch the associated YouTube tutorial for a step-by-step walkthrough of these points.
by DuyTran
Overview This n8n workflow automatically fetches the latest news articles from multiple RSS sources, filters for the last 24 hours, summarizes them into a concise ~400-word digest in Vietnamese, and then delivers the result directly to Zalo and Telegram. It’s designed for professionals who need a quick, AI-curated overview of daily news without manually browsing multiple websites. 🧩 Key Features ⏰ Triggers Schedule Trigger: Run at specific times (e.g., morning briefing). Zalo & Telegram Triggers: Start workflow when requested via chat. 🌐 News Collection Fetches news from 4 RSS sources (RSS.app, Google News, etc.). Extracts standardized fields (title, pubDate, content). 🔍 Filtering & Processing Keeps only news published in the last 24h. Limits to 20 most recent items. Aggregates multiple feeds into one dataset. 🧠 AI Summarization Uses OpenAI Assistant to generate 15–19 highlights (~400 words). Translates into Vietnamese, removes special symbols. Optionally calls Perplexity AI to refine content into a financial–economic–political style summary. Maintains short-term context with Memory Buffer for improved output. 📲 Delivery Channels Sends digest directly to Zalo (personal & group chat). Sends digest to Telegram bot. ⚙️ Workflow Steps Trigger – schedule or chat command (Zalo/Telegram). RSS Fetchers (4 feeds) – collect news. Edit Fields – normalize title, date, and content. Merge & Filter – unify feeds, keep only last 24h. Limit & Aggregate – select top 20 articles. AI Summarization – generate digest via OpenAI + Perplexity. Delivery – send results to Zalo & Telegram. 🔐 Requirements ✅ RSS source URLs (already set in workflow). 🔑 OpenAI API key. 🔑 Perplexity API key. 📲 Zalo User API + Telegram Bot API credentials. 📥 Example Use Case A financial analyst or business leader wants a daily briefing in Vietnamese. At 7 AM, they automatically receive a curated 400-word digest via Telegram and Zalo. Can also trigger the report on-demand from chat. 🛠 Customization Options Add/remove RSS sources. Adjust summary length (short/medium/long). Output to other channels (Email, Slack, Notion). Change language from Vietnamese → English. ⚠️ Limitations RSS feeds must be valid & accessible. Summaries depend on AI quality and may vary slightly. Perplexity API requires active subscription. 📌 SEO Tags n8n workflow, rss news summarizer, daily news digest, telegram news bot, zalo ai assistant, openai news summary, perplexity ai, financial political economic news
by Anton Bezman
Telegram RSS Autoposter This workflow monitors multiple RSS feeds, detects new posts, rewrites them using AI, and sends the formatted output to your Telegram account. It helps you keep your Telegram feed active with clear, polished, and ready-to-publish content — all fully automated. How It Works A scheduled trigger runs every 30 minutes and loads all RSS feed URLs from an n8n Data Table. Each feed is fetched, and only the most recent item is selected. The workflow checks whether this post has already been processed. If it’s new, the link is stored in a second Data Table used for deduplication. A Groq LLM rewrites the article text so it stays within Telegram’s limits and has clean, readable formatting. The final message is sent to your Telegram account. Requirements Groq API key Telegram bot token and your Telegram user ID Two n8n Data Tables: One for RSS feed URLs One for processed post links How to Set Up Add your RSS URLs to the Data Table. Insert your Groq API key into the Groq node. Add your Telegram bot token and user ID to the Telegram node. Adjust the schedule trigger interval if needed. Customization Ideas Replace the schedule trigger with a webhook for manual on-demand checks. Change the AI prompt for a different tone or formatting style. Send messages to a Telegram channel instead of a private chat. Add keyword filters to send only specific articles.
by Harshil Agrawal
This workflow allows you to send a message on Mattermost when a lead replies to your email. Emelia Trigger node: The Emelia Trigger node will trigger the workflow when a lead sends a reply to a campaign Mattermost node: This node will send a message to the Leads channel in Mattermost with the information about the reply. Based on your use case, you may want to send the message to a different channel. You may even want to use a different service. Replace the node with the service where you want to send a message.