by WeblineIndia
iOS App Store Review Monitor & Notifier – Automated User Feedback Tracking This workflow runs on a scheduled basis (default: every 6 hours, customizable) and monitors new App Store reviews for your iOS apps. It fetches reviews via Apple’s iTunes RSS API, filters only new reviews since the last run and sends real-time notifications to your team via email, Slack, Telegram or other channels. Never miss important user feedback again. Who’s it for iOS developers** tracking user sentiment and bug reports. Product managers monitoring customer satisfaction and feature requests. Customer support teams responding quickly to complaints and issues. Marketing teams collecting testimonials and case studies from positive reviews. DevOps teams automating review monitoring as part of release processes. How it works Schedule Trigger** runs every 6 hours (cron configurable). App Configuration:** Define monitored apps with {appId, country, lang}. Fetch Reviews:** Call Apple’s iTunes RSS API for latest customer reviews. Extract & Parse:** Convert JSON into structured review data (rating, content, author, date, version). Filter New Reviews:** Compare with last run using timestamps → only new reviews pass. Format Notifications:** Build rich messages with review details. Send Alerts:** Deliver via Email, Slack, Telegram, Teams, etc. Track State:** Last check time to prevent duplicates. How to set up Find your App Store ID Go to your app’s App Store page. Example URL: https://apps.apple.com/us/app/app-name/id123456789 The number after id is the App Store ID (123456789). Configure App Settings In the App Config node set: appId = App Store ID country = Country code (us, gb, de, etc.) lang = Language code (en, es, fr, etc.) Set Up Notifications Choose your notification method: Email: configure Gmail/SMTP credentials Slack: add Slack webhook URL Telegram: set up bot token + chat ID Teams: configure Teams webhook Customize Schedule In the Schedule Trigger node: Every 6 hours → 0 */6 * * * Daily at 9 AM → 0 9 * * * Every 2 hours → 0 */2 * * * Test the Workflow Use a known App ID (e.g., WhatsApp: 310633997) for testing. Run manually to verify notifications are formatted correctly. Requirements n8n (cloud or self-hosted) with HTTP Request + notification nodes. App Store ID** for each monitored app. Notification credentials (Email, Slack, Telegram, etc.). Internet access to query Apple’s iTunes API. How to customize the workflow Multiple Apps** Monitor multiple apps by extending config:** [ {appId: "310633997", country: "us", lang: "en"}, {appId: "389801252", country: "gb", lang: "en"}, {appId: "544007664", country: "de", lang: "de"} ] Notification Templates** Add-ons to level up Sentiment Analysis:** AI-based scoring per review. Auto-Reply Integration:** Respond via App Store Connect API. Analytics Dashboard:** Store in Sheets/Airtable for trends. Competitor Monitoring:** Track rival app reviews. Translation:** Auto-translate to English. Escalation Rules:** Different alerts by rating severity. Common Troubleshooting No reviews returned** → app may not have recent reviews, try other country codes. JSON parsing errors** → check App Store ID validity. Duplicate notifications** → confirm time filtering works correctly. API rate limits** → Apple may throttle, add delays. Missing metadata** → some apps don’t return all fields. Need Help? If you’d like to customize this automation flow to suit your needs, write to our n8n automation team at WeblineIndia and we’ll adapt the template to your exact use case.
by Yusuke Yamamoto
This n8n template automates responses to customer inquiries about DHL shipment status, handling requests from both web forms and emails. Use cases Automate Customer Support**: Provide 24/7 instant answers to the common "Where is my order?" question without human intervention. Reduce Support Tickets**: Decrease the volume of repetitive tracking inquiries by providing customers with immediate, self-service information. Enhance Customer Experience**: Offer a consistent and rapid response across multiple channels (your website and email), allowing customers to use their preferred method of contact. Good to know DHL API Key is required**: You'll need to register on the DHL Developer Portal to get your API key. This workflow requires Gmail credentials (OAuth2) to monitor incoming emails and send replies. The webhook URL must be configured in your website's contact or tracking form to receive submissions. How it works The workflow is initiated by one of two triggers: a Webhook (from a website form) or a Gmail Trigger (when a new email arrives). A Merge node combines the data from both triggers into a single, unified flow. The "Extract Tracking Number" Code node intelligently parses the tracking number from either the form data or the email body. It also extracts the customer's name and email address. The HTTP Request node sends the extracted tracking number to the DHL API to fetch the latest shipment status. The "Format Response Message" Code node takes the API response and composes a user-friendly message for the customer. It also handles cases where tracking information is not found. An If node checks the original source of the inquiry to determine whether it came from the webhook or email. If the request came from the webhook, a Respond to Webhook node sends the tracking data back as a JSON response. If the request came from an email, the Gmail node sends the formatted message as an email reply to the customer. How to use Configure the Triggers: Webhook Trigger: Copy the Test URL and set it as the action endpoint for your web form. Once you activate the workflow, use the Production URL. Webhook URL: https://your-n8n-instance.com/webhook/dhl-tracking-inquiry Gmail Trigger: Connect your Gmail account using OAuth2 credentials and set the desired filter conditions (e.g., unread emails with a specific subject). Set up the DHL API: Open the "Get DHL Tracking Status" (HTTP Request) node and navigate to the "Headers" tab. Replace YOUR_DHL_API_KEY with your actual DHL API key. { "DHL-API-Key": "YOUR_DHL_API_KEY" } Configure the Gmail Send Node: Connect the same Gmail credentials to the "Send Gmail Response" node. Customize options like the replyTo address as needed. Activate the workflow. Requirements A DHL Developer Portal account to obtain an API key. A Gmail account configured with OAuth2 in n8n. Customising this workflow Add More Carriers**: Duplicate the HTTP Request node and response formatting logic to support other shipping carriers like FedEx or UPS. Log Inquiries**: Add a node to save inquiry details (tracking number, customer email, status) to a Google Sheet or database for analytics. Advanced Error Handling**: Implement more robust error handling, such as sending a Slack notification to your support team if the DHL API is down or returns an unexpected error.
by Calistus Christian
How it works Checks if a website is up, sends the HTTP result to an AI model (ChatGPT) for analysis, and emails a clear success or failure message. Great for a quick “is this site up?” check you can trigger from any system via HTTP. Webhook — Receives a POST with the target URL. HTTP Request — Attempts to fetch the URL. Message a model — Uses ChatGPT to explain the status and cause of any error. IF — Checks if the HTTP status code equals 200. Gmail Success — Sends a success email with AI explanation. Gmail Error — Sends an error email with AI explanation and next steps. Set up steps Estimated setup: 5–10 minutes. Beginner friendly — no advanced config required. Add your Webhook URL where needed and connect your Gmail account. Keep detailed instructions and configuration notes inside Sticky Notes in your workflow. Inputs Send a POST request to your Webhook with: { "url": "https://example.com" }
by Jitesh Dugar
Startup Pitch Deck Submission Validator & Auto-Processor Overview A comprehensive n8n workflow template that completely automates the startup pitch deck submission process for accelerators, incubators, VC firms, and startup competitions. This workflow validates founder emails, stores pitch decks securely, generates professional PDF summaries, and sends notifications to both your team and the founders—all in under 30 seconds per submission. Key Features Email Verification & Spam Protection Real-time email validation** using VerifiEmail API Checks for RFC compliance, MX records, disposable emails, and spoofed addresses Automatically rejects invalid submissions before file storage Prevents spam, fake entries, and temporary email addresses Automated File Management Downloads pitch deck PDFs from provided URLs Uploads to organized Google Drive folders with automatic naming Creates two permanent archives: Original pitch decks in /PitchDecks/ Generated summaries in /Submission Summaries/ Maintains clean folder structure with timestamp-based filenames Professional PDF Reports Generates beautiful, branded PDF summary reports Includes company info, founder details, email verification status Professional gradient design with interactive elements Links to Google Drive documents for easy access Smart Email Notifications Admin Team Notification**: Comprehensive email with all details and clickable document links Founder Confirmation**: Professional thank-you email with next steps and timeline Invalid Submission Alerts**: Immediate notification for failed verifications with detailed reasons Intelligent Routing Conditional logic based on email validation results Valid submissions proceed through full workflow Invalid submissions trigger admin alerts and stop processing No wasted resources on fake submissions Error Handling Comprehensive error detection at every step Admin alerts for failed email verifications Graceful handling of file download failures Detailed logging for troubleshooting Perfect For Startup Accelerators** (Y Combinator, Techstars, 500 Startups style programs) Incubators & Innovation Hubs** Venture Capital Firms** (deal flow management) Pitch Competitions** (local, national, international events) Investment Rounds** (seed, Series A applications) Government Innovation Programs** Corporate Accelerators** University Entrepreneurship Programs** Workflow Statistics Total Nodes**: 11 Complexity**: ⭐⭐⭐ Medium Processing Time**: 15-30 seconds per submission Setup Time**: 15-20 minutes Code Required**: None (no-code solution) Maintenance**: Minimal (set and forget) Requirements Required Services & APIs VerifiEmail API Purpose: Email verification Sign up: https://verifi.email Google Drive Purpose: File storage Setup: Enable Drive API in Google Cloud Console Gmail Purpose: Email notifications Setup: Enable Gmail API in Google Cloud Console HTML to PDF API (pdfmunk.com) Purpose: PDF generation Sign up: https://pdfmunk.com Optional Integrations Typeform** - For frontend submission forms Google Forms** - Alternative form solution Webflow** - For custom landing pages Airtable** - For additional database logging Slack** - For team notifications What Gets Created Folder Structure in Google Drive My Drive/ ├── PitchDecks/ │ ├── TechVenture_JohnDoe_PitchDeck.pdf │ ├── AIStartup_JaneSmith_PitchDeck.pdf │ └── GreenTech_MikeJones_PitchDeck.pdf │ └── Submission Summaries/ ├── TechVenture_Summary_20251012_143025.pdf ├── AIStartup_Summary_20251012_145532.pdf └── GreenTech_Summary_20251012_151147.pdf Email Notifications Admin Team Email (to: accelerator@yourdomain.com) All startup details Founder information with verified email badge Clickable buttons to view pitch deck and summary Email verification breakdown (RFC, MX, disposable check) Google Drive folder structure overview Document IDs for reference Founder Confirmation (to: founder's email) Personalized thank you message Submission confirmation checklist Detailed submission summary table Clear next steps with timeline (5-7 day review) PDF summary attached for records Contact information for questions Invalid Email Alert (to: admin@yourdomain.com) Failed submission details Email verification failure reasons Timestamp for tracking Option for manual review Quick Start Guide 1. Import Template Download the JSON file In n8n: Workflows → Import from File Select: startup-pitch-deck-validator-template.json 2. Configure Credentials (15 minutes) A. VerifiEmail API Sign up at https://verifi.email Get API key from dashboard In n8n: Credentials → VerifiEmail API → Paste key B. Google Drive OAuth2 Go to https://console.cloud.google.com Create project → Enable Drive API Create OAuth 2.0 credentials In n8n: Credentials → Google Drive OAuth2 → Follow flow C. Gmail OAuth2 Same Google Cloud project Enable Gmail API In n8n: Credentials → Gmail OAuth2 → Authorize D. HTML to PDF API Sign up at https://pdfmunk.com Get API key In n8n: Credentials → HTML to PDF API → Paste key 3. Create Google Drive Folders Create these folders in your Google Drive: /PitchDecks/ (for original pitch decks) /Submission Summaries/ (for generated reports) Then select them in the workflow nodes. 4. Update Email Addresses Replace placeholder emails in these nodes: Notify Accelerator Team**: Change accelerator@yourdomain.com Alert Admin - Invalid Email**: Change admin@yourdomain.com Founder confirmation template**: Update support@youraccelerator.com 5. Test the Workflow Send a test webhook: curl -X POST https://your-n8n.com/webhook/startup-submission -H "Content-Type: application/json" -d '{ "name": "Jane Smith", "email": "jane@example.com", "startup_name": "TechVenture AI", "website": "https://techventure.io", "industry": "Artificial Intelligence", "pitch_deck_file_url": "https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf" }' 6. Activate Workflow Click the toggle in top-right corner to activate! Detailed Setup Instructions Step 1: VerifiEmail Configuration Visit https://verifi.email and create account Navigate to API section in dashboard Copy your API key In n8n workflow, click "Verifi Email" node Create new credential → Paste API key Test credential to ensure it works Step 2: Google Cloud Project Setup Create Google Cloud Project Go to https://console.cloud.google.com Click "New Project" Name it: "n8n Startup Workflow" Click "Create" Enable Required APIs Go to "APIs & Services" → "Library" Search and enable: "Google Drive API" Search and enable: "Gmail API" Create OAuth Credentials Go to "APIs & Services" → "Credentials" Click "Create Credentials" → "OAuth 2.0 Client ID" Application type: "Web application" Add authorized redirect URI from n8n Download credentials JSON Configure in n8n In workflow, click any Google Drive node Create new credential → Google Drive OAuth2 Upload credentials JSON or paste values Complete OAuth flow and authorize Repeat for Gmail nodes using same project Step 3: Folder Setup Open Google Drive in browser Create folder: "PitchDecks" (note the folder ID from URL) Create folder: "Submission Summaries" In workflow, select these folders in the respective nodes: "Upload Pitch Deck to Drive" → PitchDecks folder "Save Summary PDF to Drive" → Submission Summaries folder Step 4: PDF API Setup Sign up at https://pdfmunk.com Get API key from account dashboard In "HTML to PDF" node, create new credential Paste API key Test with sample execution Step 5: Email Customization In "Notify Accelerator Team" node: Line 7: Change recipient email Update company name in footer (optional) In "Send Founder Confirmation" node: Line 69-70: Update support email Line 72: Update company name and year In "Alert Admin - Invalid Email" node: Line 3: Change recipient email Step 6: Test & Validate Test with Valid Email: Use your own email address Valid pitch deck URL Verify you receive confirmation email Check Google Drive for files Test with Invalid Email: Use temporary email service Verify admin receives alert Confirm no files are stored Test Error Handling: Use invalid file URL Check error messages Verify graceful failure Workflow DiagramStart → Webhook Trigger ↓ Email Verification (VerifiEmail API) ↓ Conditional Check (Valid?) ↙️ ↘️ TRUE FALSE ↓ ↓ Download PDF Alert Admin ↓ (end) Upload to Drive ↓ Generate Summary PDF ↓ Download Summary ↓ Save to Drive ↓ Notify Admin Team ↓ Confirm to Founder ↓ Done! ✅ Processing Flow Details For Valid Submissions (TRUE Branch): Webhook receives data → ~0s Email verification → ~2-3s Download pitch deck → ~3-5s Upload to Google Drive → ~2-3s Generate PDF summary → ~5-8s Download PDF → ~1-2s Save PDF to Drive → ~2-3s Send admin notification → ~2-3s Send founder confirmation → ~2-3s Total: 15-30 seconds For Invalid Submissions (FALSE Branch): Webhook receives data → ~0s Email verification → ~2-3s Send admin alert → ~2-3s Total: 4-6 seconds (saves resources!) Customization Options Easy Customizations Email Templates Modify HTML in Gmail nodes Add your logo Change colors and branding Adjust text and messaging PDF Template Edit HTML in "HTML to PDF" node Add custom styling Include additional fields Add company logo/branding Folder Structure Create subfolders by industry Add year-based organization Implement custom naming conventions Notification Preferences Add Slack notifications Set up SMS alerts Create calendar events Log to Airtable/database Advanced Customizations Add Duplicate Detection Check if email already submitted Prevent multiple submissions Create whitelist/blacklist Implement Scoring System Add rating fields to PDF Create evaluation criteria Automate preliminary screening Multi-Stage Workflow Add approval process Create interview scheduling Implement status updates Analytics & Reporting Track submission metrics Generate monthly reports Monitor email verification rates Analyze industry trends Troubleshooting Common Issues & Solutions 1. Email Verification Fails Problem**: All emails marked as invalid Solution**: Check VerifiEmail API key and quota 2. Google Drive Upload Error Problem**: "Insufficient permissions" error Solution**: Re-authorize OAuth, ensure Drive API enabled Check**: Folder exists and is accessible 3. PDF Generation Fails Problem**: PDF not generated or broken Solution**: Check HTML to PDF API key and quota Verify**: HTML template syntax is valid 4. Emails Not Sending Problem**: Gmail node fails Solution**: Re-authorize Gmail OAuth, check API quota Check**: Email addresses are valid format 5. File Download Fails Problem**: "Cannot fetch file from URL" Solution**: Verify URL is publicly accessible Check**: File exists and is not behind authentication 6. Webhook Not Triggering Problem**: No workflow execution Solution**: Check webhook URL is correct Verify**: Workflow is activated (toggle ON) Performance & Scalability Current Capacity Concurrent Submissions**: Up to 10-20 simultaneously Daily Volume**: ~500-1000 submissions (depends on API quotas) File Size Limit**: Up to 100MB per pitch deck Storage**: Unlimited (within Google Drive quota) Scaling Considerations For High Volume (1000+ submissions/day): Upgrade to paid API tiers Use queue system for processing Add database for tracking Implement rate limiting For Large Files (>100MB): Use direct file upload to Drive Skip PDF generation for large files Add file size validation Security & Privacy Data Protection Email verification via secure API Encrypted file transfer (HTTPS) OAuth2 authentication for Google services No data stored in n8n beyond execution logs Compliance GDPR compliant (data minimization) No sensitive data retention Secure credential storage Audit trail via execution logs Community Support n8n Forum: https://community.n8n.io Discord: https://discord.gg/n8n GitHub Issues: https://github.com/n8n-io/n8n 📄 License This template is provided as-is for commercial and personal use.
by Ziad Adel
Google Sheets CRM Automations: Lead Stages → Emails, Client Tracking & Delivery Duration Turn a simple Google Sheet into a lightweight CRM powered by n8n. Overview This template monitors edits in your Leads and Clients tabs and reacts automatically: Qualified?** → sends a Cal.com booking email Stage → Awaiting Proposal** → sends a “proposal coming soon” email Stage → Won* → appends the client to *Clients* with a *Start Date & Time** Clients: Project Status → Delivered* → stamps *End Date & Time* and computes *Time to Deliver** (e.g., 2d 5h 30m) What This Template Does Lead Qualification → Email: When you mark **Qualified? in Leads, a booking email is sent automatically. Awaiting Proposal → Email**: Sends a heads-up email that a proposal is coming soon. Won → Client Append: Adds the client to **Clients and records the start timestamp. Delivered → Completion Metrics**: Looks up the client, stamps the end timestamp, and calculates the delivery duration. How It Works Google Apps Script → Webhooks (onEdit) A small Apps Script (provided in the workflow’s Sticky Note) watches the sheet and posts JSON to these n8n webhooks: /webhook/lead-stage-changed /webhook/lead-qualified /webhook/client-status-changed n8n Flow & Branching lead-stage-changed If Awaiting Proposal → send proposal heads-up email If Won → format timestamp → append to Clients lead-qualified If qualified = true → send Cal.com booking email client-status-changed If Delivered → lookup client row → stamp End Date & Time → compute Time to Deliver → update row Prerequisites Google Sheet with two tabs: Leads and Clients Gmail account (or use your preferred email/notification node) n8n instance with: Google Sheets OAuth2 credentials Gmail OAuth2 credentials (if using the Gmail node) Suggested columns Leads**: Name (A), Client Email (C), Lead Source (D), Stage (E), Qualified? (H) Clients**: Name (A), Client Email (C), Project Status (D), Start Date & Time (F), End Date & Time (G), Time to Deliver (H) Setup Steps Copy/prepare the Google Sheet Ensure both Leads and Clients tabs exist with the columns above. Install the Apps Script In Google Sheets: Extensions → Apps Script → paste the script from the workflow’s Sticky Note. Replace webhook URLs with your n8n endpoints: https://{{YOUR_N8N_DOMAIN}}/webhook/lead-stage-changed https://{{YOUR_N8N_DOMAIN}}/webhook/lead-qualified https://{{YOUR_N8N_DOMAIN}}/webhook/client-status-changed Run createInstallableTrigger() once to enable onEdit. Open the workflow in n8n & replace placeholders {{GOOGLE_SHEETS_DOC_ID}} {{LEADS_GID}} {{CLIENTS_GID}} {{CAL_COM_BOOKING_URL}} {{SENDER_NAME}} {{GMAIL_CREDENTIAL_ID}}, {{GMAIL_CREDENTIAL_NAME}} {{GSHEETS_CREDENTIAL_ID}}, {{GSHEETS_CREDENTIAL_NAME}} Connect credentials Authorize Google Sheets OAuth2 and Gmail OAuth2 (or switch to SMTP/another email node). Activate & test Toggle Qualified? on a test row or change Stage to Awaiting Proposal/Won. Verify the email, client append, and duration updates flow end-to-end. Customization Ideas Swap Gmail with SMTP, Outlook, or Slack messages. Add a Stage = Lost branch to trigger a re-engagement sequence. Add guards to prevent duplicate appends to Clients. Localize email copy and date formats. Troubleshooting Nothing triggers**: Confirm Apps Script URLs and that createInstallableTrigger() was run. Wrong tab/GID**: Open each tab and copy its gid from the URL; update placeholders. Credential errors**: Re-authorize Google Sheets/Gmail OAuth2 in n8n. Wrong first name: Ensure Name in **Leads follows First Last; the workflow splits the first token. Video Walkthrough Demo Screen Studio Template Demo Video
by Dev Dutta
Convert PDF Articles to Podcast Workflow Name: Convert PDF Articles to Podcast Author: Devjothi Dutta Category: Productivity, Content Creation, Automation Complexity: Medium Setup Time: 45-60 minutes 📖 Description Transform any PDF article, research paper, or document into a high-quality audio podcast automatically. This workflow extracts text from PDFs, converts it to natural-sounding speech using Google Cloud Text-to-Speech, stores the audio files in cloud storage, and generates an RSS feed compatible with all major podcast apps (Apple Podcasts, Spotify, Pocket Casts, etc.). Perfect for consuming long-form content while commuting, exercising, or multitasking. Turn your reading list into a personal podcast feed. 👥 Who's it for For Professionals: Convert industry reports and whitepapers to audio Listen to research papers during commutes Stay updated with long-form articles hands-free For Students: Turn textbooks and study materials into audio Create audio versions of lecture notes Study while exercising or commuting For Content Creators: Repurpose written content into audio format Create podcast episodes from blog posts Reach audio-focused audiences For Busy Readers: Convert saved articles to a personal podcast Listen to newsletters and essays on the go Build a private audio library ✨ Key Features 📄 PDF Text Extraction** - Automatically extracts text from any PDF file 🎙️ Natural Voice Synthesis** - High-quality WaveNet voices from Google Cloud TTS ☁️ Cloud Storage** - Files hosted on Cloudflare R2 (S3-compatible) with public URLs 📻 RSS Feed Generation** - Full iTunes-compatible podcast feed with metadata 📧 Email Notifications** - Instant alerts when new episodes are ready 🎨 Custom Branding** - Configurable podcast name, artwork, and descriptions ⚙️ Modular Configuration** - Easy-to-update centralized config node 🔄 Automated Workflow** - Set it and forget it - fully automated pipeline 🛠️ Requirements Required Services: n8n (self-hosted or cloud) - Workflow automation platform Google Cloud Platform - Text-to-Speech API access Free tier: 1 million characters/month (WaveNet voices) Paid: $16 per 1 million characters Cloudflare R2 - Object storage for audio files and RSS feed Free tier: 10GB storage, unlimited egress Email Service - SMTP or email service for notifications Required Community Nodes: Cloudflare R2 Storage** (n8n-nodes-cloudflare-r2-storage) Install via: Settings → Community Nodes → Install Search for: n8n-nodes-cloudflare-r2-storage Important: Install this BEFORE importing the workflow Optional: Custom domain for podcast feed URLs Podcast artwork (3000x3000px recommended) 📦 What's Included This workflow package includes: Complete n8n workflow JSON (ready to import) Comprehensive setup guide Architecture documentation Configuration templates Credentials setup instructions Testing and validation checklist RSS feed customization guide Troubleshooting documentation 🚀 Quick Start Install community node (required): Go to Settings → Community Nodes → Install Search for: n8n-nodes-cloudflare-r2-storage Click Install and wait for completion Import workflow into your n8n instance Configure credentials: Google Cloud TTS API key Cloudflare R2 credentials (Access Key ID + Secret) SMTP email credentials Update Workflow Config node with your settings: R2 bucket name and public URL Podcast name and description Artwork URL Email recipient Test with a sample PDF to verify setup Add RSS feed URL to your podcast app 📊 Workflow Stats Nodes:** 10 Complexity:** Medium Execution Time:** ~2-5 minutes per PDF (depends on length) Monthly Cost:** $0-20 (depending on usage and free tiers) Maintenance:** Minimal (set and forget) 🎨 Customization Options Change TTS voice (20+ English voices available) Adjust speech speed and pitch Customize RSS feed metadata Add custom intro/outro audio Configure file retention policies Set up webhook triggers for remote submission 🔧 How it Works User uploads PDF to n8n Text is extracted from PDF Text is sent to Google TTS API Audio file (.mp3) is generated Files uploaded to R2 storage: Original PDF Generated MP3 audio RSS feed is generated/updated with: Episode title (from PDF filename) Audio URL Duration and file size Publication date Rich HTML description RSS feed uploaded to R2 Email notification sent with episode details 💡 Pro Tips Voice Selection:** Test different WaveNet voices to find your preferred style Batch Processing:** Process multiple PDFs by running workflow multiple times Quality vs Cost:** WaveNet voices sound better but cost more than Standard voices Storage Management:** Set up R2 lifecycle rules to auto-delete old episodes Custom Domains:** Use Cloudflare for custom podcast feed URLs 🔗 Related Workflows PDF to Email Summary Document Translation to Audio Blog RSS to Podcast Multi-language Audio Generation 📧 Support & Feedback For questions, issues, or feature requests: GitHub: PDF-to-Podcast---N8N Repository n8n Community Forum: Tag @devdutta Email: devjothi@gmail.com 📄 License MIT License - Free to use, modify, and distribute ⭐ If you find this workflow useful, please share your feedback and star the workflow!
by Basil Irfan
Transform YouTube Videos to Social Media Content with Vizard AI and GPT‑4.1 Overview This n8n template fetches new YouTube videos, enriches them with Vizard AI metadata, generates social‑media captions using GPT‑4.1, logs everything to Google Sheets, and notifies you by email. It’s a turnkey solution for content creators and marketers who need an end‑to‑end automated pipeline from video publishing to post scheduling. Setup Instructions Import the Template In n8n, click Import from JSON, paste this workflow, and save. Configure Credentials Vizard AI: Create an HTTP Request credential named Vizard API and set your VIZARDAI_API_KEY. OpenAI: Add a new OpenAI credential for GPT‑4.1. Google Sheets: Create a Google Sheets OAuth2 credential with read/write access or just sign in if your on cloud hosting Gmail: Add a Gmail OAuth2 credential for email notifications or just sign in if you are on cloud hosting Adjust Limits In the Limit Videos node, set maxItems to control batch size. Google Sheets Column Structure | Column | Description | | ------------------ | ---------------------------------------------------- | | videoId | Unique YouTube video identifier | | projectId | Vizard AI project ID returned | | videoUrl | Original YouTube video URL | | title | Video title | | transcript | Transcribed text from Vizard AI | | viralScore | Vizard AI’s viral‑score metric | | viralReason | Explanation for viral score | | generatedCaption | GPT‑4.1–generated caption in JSON { "caption": ""} | | clipEditorUrl | URL to Vizard’s clip editor | Workflow Steps Read YouTube RSS Feed (Read YouTube RSS Feed) Limit Videos (Limit Videos to N) Send to Vizard (Create Vizard Project & Retrieve Vizard Metadata) Split Items for Processing (Iterate Each Video) Generate Captions (Generate Social Media Captions) Append Row in Sheet (Log to Google Sheets) Send Notification (Email Summary) Customization Tips Alternate Caption Styles**: Modify the AI prompt for tone, length, or brand voice. Localization**: Extend prompts for other languages. Notification Channels**: Swap Gmail for Slack, Teams, or SMS via webhook nodes.
by Alok Kumar
Multi-Level Document Approval & Audit Workflow This workflow automates a document approval process using Supabase and Gmail. Who it’s for Teams that need structured multi-level document approvals. Companies managing policies, contracts, or proposals. Medical document need multiple lavel of review and approval. How it works Form Trigger – A user submits a document via the form. Supabase Integration – The document is saved in the documents table. Supabase Storage – The document is saved in the bucket. Workflow Levels – Fetches the correct approval level from workflow_levels. Assign Approvers – Matches approvers by role from the users table. Approval Record – Creates an approvals record with a unique token and expiry. Email Notification – Sends an email with Approve / Reject links. Audit Logs – Records every approval request in audit_logs. Repeat - repeat the flow till all the aproval level is comepted How to set up Configure your Supabase credentials. Create tables as per data model given. Create a storage bucket in Supabase Storage. Connect your Gmail account. Adjust approval expiry time (48h default). Deploy and test via the Form Trigger. Customization Add multiple approval levels by chaining workflow_levels. Replace Gmail with Slack, Teams, or another notification channel. Adjust audit logging for compliance needs. Update the endpoint http://localhost:5678/webhook-test/ based on instance and env (remove test if you run in prod) Update the bucket name. Important steps 1. Form Submit Triggered when by submiting form Captures form parameters: Title (Document Title) Description (Document Description) file (Document need for approval) 2. Webhook Entry Point Triggered when an approver clicks the Approve or Reject link in email. Captures query parameters: token (approval token) decision (approved/rejected) 3. Approval Data Retrieval & Update Fetch approval record from Supabase (approvals) using token. Update approval status: Approved → moves to next workflow level or final approval. Rejected → document marked as rejected immediately. Records acted_at timestamp. 4. Decision Check IF Node* checks whether the decision is *approved* or *rejected**. Reject Path* → Update document status to *Rejected** in documents. Approve Path** → Continue workflow level progression. 5. Workflow Level Progression Fetch details of the current workflow level. Identify the next level (workflow_levels) based on level_number. ✅ If Next Level Exists: Retrieve approvers by role_id. Generate unique approval tokens. Create new approval records in approvals. Send email notifications with approval/reject links. ❌ If No Next Level (Last Level): Update document status to Approved in documents. 6. Audit Logging Every approval action is logged into audit_logs table: document_id action (e.g., approval_sent, approved, rejected) actor_email (system/approver) details (workflow level, role info, etc.) 📨 Email Template Approval request email includes decision links: Please review the document: ✅ Approve | ❌ Reject Happy Automating! 🚀
by AFK Crypto
Try It Out! The AI Investment Research Assistant (Discord Summary Bot) transforms your Discord server into a professional-grade AI-driven crypto intelligence center. Running automatically every morning, it gathers real-time news, sentiment, and market data from multiple trusted sources — including NewsAPI, Crypto Compare, and CoinGecko — covering the most influential digital assets like BTC, ETH, SOL, BNB, and ADA. An AI Research Analyst Agent then processes this data using advanced reasoning and summarization to deliver a structured Market Intelligence Briefing. Each report distills key market events, sentiment shifts, price movements, and analyst-grade insights, all formatted into a visually clean and actionable message that posts directly to your Discord channel. Whether you’re a fund manager, community owner, or analyst, this workflow helps you stay informed about market drivers — without manually browsing dozens of news sites or data dashboards. Detailed Use Cases Crypto Research Teams:** Automate daily market briefings across key assets. Investment Communities:** Provide daily insights and sentiment overviews directly on Discord. Trading Desks:** Quickly review summarized market shifts and performance leaders. DAOs or Fund Analysts:** Centralize institutional-style crypto intelligence into your server. How It Works Daily Trigger (Schedule Node) – Activates each morning to begin data collection. News Aggregation Layer – Uses NewsAPI (and optionally CryptoPanic or GDELT) to fetch the latest crypto headlines and event coverage. Market & Sentiment Fetch – Collects market metrics via CoinGecko or Crypto Compare, including: 24-hour price change Market cap trend Social sentiment or Fear & Greed index AI Research Analyst (LLM Agent) – Processes and synthesizes all data into a cohesive insight report containing: 🧠 Executive Summary 📊 Top Gainers & Losers 💬 Sentiment Overview 🔍 Analyst Take / Actionable Insight Formatting Layer (Code Node) – Converts the analysis into a Discord-ready structure. Discord Posting Node – Publishes the final Market Intelligence Briefing to a specified Discord channel. Setup and Customization Import this workflow into your n8n workspace. Configure credentials: NewsAPI Key – For crypto and blockchain news. CoinGecko / Crypto Compare API Key – For real-time asset data. LLM Credential – OpenAI, Gemini, or Anthropic. Discord Webhook URL or Bot Token – To post updates. Customize the tracked assets in the News and Market nodes (BTC, ETH, SOL, BNB, ADA, etc.). Set local timezone for report delivery. Deploy and activate — your server will receive automated morning briefings. Output Format Each daily report includes: 📰 AI Market Intelligence Briefing 📅 Date: October 16, 2025 💰 Top Movers: BTC +2.3%, SOL +1.9%, ETH -0.8% 💬 Sentiment: Moderately Bullish 🔍 Analyst Take: Accumulation signals forming in mid-cap layer-1s. 📈 Outlook: Positive bias, with ETH showing strong support near $2,400. Compact yet rich in insight, this format ensures quick readability and fast decision-making for traders and investors. (Optional) Extend This Workflow Portfolio-Specific Insights:** Fetch your wallet holdings from AFK Crypto or Zapper APIs for personalized reports. Interactive Commands:** Add /compare or /analyze commands for Discord users. Multi-Language Summaries:** Auto-translate for international communities. Historical Data Logging:** Store briefings in Notion or Google Sheets. Weekly Recaps:** Summarize all daily reports into a long-form analysis. Requirements n8n Instance** (with HTTP Request, AI Agent, and Discord nodes enabled) NewsAPI Key** CoinGecko / Crypto Compare API Key** LLM Credential** (OpenAI / Gemini / Anthropic) Discord Bot Token or Webhook URL** APIs Used GET https://newsapi.org/v2/everything?q=crypto OR bitcoin OR ethereum OR defi OR nft&language=en&sortBy=publishedAt&pageSize=10 GET https://api.coingecko.com/api/v3/simple/price?ids=bitcoin,ethereum,solana&vs_currencies=usd&include_market_cap=true&include_24hr_change=true (Optional) GET https://cryptopanic.com/api/v1/posts/?auth_token=YOUR_TOKEN&kind=news (Optional) GET https://api.gdeltproject.org/api/v2/doc/doc?query=crypto&format=json Summary The AI Investment Research Assistant (Discord Summary Bot) is your personal AI research analyst — delivering concise, data-backed crypto briefings directly to Discord. It intelligently combines news aggregation, sentiment analysis, and AI reasoning to create actionable market intelligence each morning. Ideal for crypto traders, funds, or educational communities seeking a reliable daily edge — this workflow replaces hours of manual research with one automated, professional-grade summary. Our Website: https://afkcrypto.com/ Check our blogs: https://www.afkcrypto.com/blog
by Hugo
🤖 n8n AI Workflow Dashboard Template Overview This template is designed to collect execution data from your AI workflows and generate an interactive dashboard for easy monitoring. It's compatible with any AI Agent or RAG workflow in n8n. Main Objectives 💾 Collect Execution Data Track messages, tokens used (prompt/completion), session IDs, model names, and compute costs Designed to plug into any AI agent or RAG workflow in n8n 📊 Generate an Interactive Dashboard Visualize KPIs like total messages, unique sessions, tokens used, and costs Display daily charts, including stacked bars for prompt vs completion tokens Monitor AI activity, analyze usage, and track costs at a glance ✨ Key Features 💬 Conversation Data Collection Messages sent to the AI agent are recorded with: sessionId chatInput output promptTokens, completionTokens, totalTokens globalCost and modelName This allows detailed tracking of AI interactions across sessions. 💰 Model Pricing Management A sub-workflow with a Set node provides token prices for LLMs Data is stored in the Model price table for cost calculations 🗄️ Data Storage via n8n Data Tables Two tables need to be created: Model price { "id": 20, "createdAt": "2025-10-11T12:16:47.338Z", "updatedAt": "2025-10-11T12:16:47.338Z", "name": "claude-4.5-sonnet", "promptTokensPrice": 0.000003, "completionTokensPrice": 0.000015 } Messages [ { "id": 20, "createdAt": "2025-10-11T15:28:00.358Z", "updatedAt": "2025-10-11T15:31:28.112Z", "sessionId": "c297cdd4-7026-43f8-b409-11eb943a2518", "action": "sendMessage", "output": "Hey! \nHow's it going?", "chatInput": "yo", "completionTokens": 6, "promptTokens": 139, "totalTokens": 139, "globalCost": null, "modelName": "gpt-4.1-mini", "executionId": 245 } ] These tables store conversation data and pricing info to feed the dashboard and calculations. 📈 Interactive Dashboard KPIs Generated**: total messages, unique sessions, total/average tokens, total/average cost 💸 Charts Included**: daily messages, tokens used per day (prompt vs completion, stacked bar) Provides a visual summary of AI workflow performance ⚙️ Installation & Setup Follow these steps to set up and run the workflow in n8n: 1. Import the Workflow Download or copy the JSON workflow and import it into n8n. 2. Create the Data Tables Model price table**: stores token prices per model Messages table**: stores messages generated by the AI agent 3. Configure the Webhook The workflow is triggered via a webhook Use the webhook URL to send conversation data 4. Set Up the Pricing Sub-workflow Automatically generates price data for the models used Connect it to your main workflow to enrich cost calculations 5. Dashboard Visualization The workflow returns HTML code rendering the dashboard View it in a browser or embed it in your interface 🌐 Once configured, your workflow tracks AI usage and costs in real-time, providing a live dashboard for quick insights. 🔧 Adaptability The template is modular and can be adapted to any AI agent or RAG workflow KPIs, charts, colors, and metrics can be customized in the HTML rendering Ideal for monitoring, cost tracking, and reporting AI workflow performance
by Paul Roussel
Automated workflow that generates custom AI image backgrounds from text prompts using Gemini's Nano Banana (native image generation), removes video backgrounds, and composites videos on AI-generated scenes. Create any background you can imagine without needing stock images. How it works • Describe background: Provide video URL and text prompt describing desired background scene (e.g., "modern office with city skyline at golden hour") • AI generates image: Gemini creates a background image from your prompt in ~10-20 seconds • Upload to Drive: Generated background is saved to Google Drive and made publicly accessible • Remove & composite: Video background is removed and composited on AI-generated scene with centered template • Save final video: Completed video is uploaded to Google Drive with shareable link Set up steps ⏱️ Total setup time: ~5 minutes • Get Gemini API Key (~1 min): Visit https://aistudio.google.com/apikey, create new API key, add to n8n Settings → Variables as GEMINI_KEY • Get VideoBGRemover API Key (~2 min): Visit https://videobgremover.com/n8n, sign up, add to n8n as VIDEOBGREMOVER_KEY • Connect Google Drive (~2 min): Click "Save Background Image to Drive" node, click "Connect", authorize n8n Use cases: Marketing videos with custom branded environments tailored to your message Product demos with unique AI-generated backgrounds that match your product aesthetic Social media content with creative scenes you can't find in stock libraries AI avatars placed in AI-generated worlds Presentations with custom backgrounds generated for specific topics A/B testing different background variations for the same video Pricing: Gemini: ~$0.03 per generated image VideoBGRemover: $0.50-$2.00 per minute of video Total: ~$0.53-$2.03 per video Triggers: Webhook (for automation) or Manual (for testing) Processing time: Typically 5-7 minutes total Prompt tips: Be descriptive and specific. Instead of "office," try: "A modern minimalist office with floor-to-ceiling windows overlooking a city skyline at golden hour. Warm sunlight, polished concrete floors, sleek wooden desks, green plants."
by Nikan Noorafkan
🧠 Google Ads Monthly Performance Optimization (Channable + Google Ads + Relevance AI) 🚀 Overview This workflow automatically analyzes your Google Ads performance every month, identifies top-performing themes and categories, and regenerates optimized ad copy using Relevance AI — powered by insights from your Channable product feed. It then saves the improved ads to Google Sheets for review and sends a detailed performance report to your Slack workspace. Ideal for marketing teams who want to automate ad optimization at scale with zero manual intervention. 🔗 Integrations Used Google Ads** → Fetch campaign and ad performance metrics using GAQL. Relevance AI** → Analyze performance data and regenerate ad copy using AI agents and tools. Channable** → Pull updated product feeds for ad refresh cycles. Google Sheets** → Save optimized ad copy for review and documentation. Slack** → Send a 30-day performance report to your marketing team. 🧩 Workflow Summary | Step | Node | Description | | ---- | --------------------------------------------------- | --------------------------------------------------------------------------- | | 1 | Monthly Schedule Trigger | Runs automatically on the 1st of each month to review last 30 days of data. | | 2 | Get Google Ads Performance Data | Fetches ad metrics via GAQL query (impressions, clicks, CTR, etc.). | | 3 | Calculate Performance Metrics | Groups results by ad group and theme to find top/bottom performers. | | 4 | AI Performance Analysis (Relevance AI) | Generates human-readable insights and improvement suggestions. | | 5 | Update Knowledge Base (Relevance AI) | Saves new insights for future ad copy training. | | 6 | Get Updated Product Feed (Channable) | Retrieves the latest catalog items for ad regeneration. | | 7 | Split Into Batches | Splits the feed into groups of 50 to avoid API rate limits. | | 8 | Regenerate Ad Copy with Insights (Relevance AI) | Rewrites ad copy with the latest product and performance data. | | 9 | Save Optimized Ads to Sheets | Writes output to your “Optimized Ads” Google Sheet. | | 10 | Generate Performance Report | Summarizes the AI analysis, CTR trends, and key insights. | | 11 | Email Performance Report (Slack) | Sends report directly to your Slack channel/team. | 🧰 Requirements Before running the workflow, make sure you have: A Google Ads account with API access and OAuth2 credentials. A Relevance AI project (with one Agent and one Tool setup). A Channable account with API key and project feed. A Google Sheets document for saving results. A Slack webhook URL for sending performance summaries. ⚙️ Environment Variables Add these environment variables to your n8n instance (via .env or UI): | Variable | Description | | -------------------------------- | ------------------------------------------------------------------- | | GOOGLE_ADS_API_VERSION | API version (e.g., v17). | | GOOGLE_ADS_CUSTOMER_ID | Your Google Ads customer ID. | | RELEVANCE_AI_API_URL | Base Relevance AI API URL (e.g., https://api.relevanceai.com/v1). | | RELEVANCE_AGENT_PERFORMANCE_ID | ID of your Relevance AI Agent for performance analysis. | | RELEVANCE_KNOWLEDGE_SOURCE_ID | Knowledge base or dataset ID used to store insights. | | RELEVANCE_TOOL_AD_COPY_ID | Relevance AI tool ID for generating ad copy. | | CHANNABLE_API_URL | Channable API endpoint (e.g., https://api.channable.com/v1). | | CHANNABLE_COMPANY_ID | Your Channable company ID. | | CHANNABLE_PROJECT_ID | Your Channable project ID. | | FEED_ID | The feed ID for product data. | | GOOGLE_SHEET_ID | ID of your Google Sheet to store optimized ads. | | SLACK_WEBHOOK_URL | Slack Incoming Webhook URL for sending reports. | 🔐 Credentials Setup in n8n | Credential | Type | Usage | | ----------------------------------------------- | ------- | --------------------------------------------------- | | Google Ads OAuth2 API | OAuth2 | Authenticates your Ads API queries. | | HTTP Header Auth (Relevance AI & Channable) | Header | Uses your API key as Authorization: Bearer <key>. | | Google Sheets OAuth2 API | OAuth2 | Writes optimized ads to Sheets. | | Slack Webhook | Webhook | Sends monthly reports to your team channel. | 🧠 Example AI Insight Output { "insights": [ "Ad groups using 'vegan' and 'organic' messaging achieved +23% CTR.", "'Budget' keyword ads underperformed (-15% CTR).", "Campaigns featuring 'new' or 'bestseller' tags showed higher conversion rates." ], "recommendations": [ "Increase ad spend for top-performing 'vegan' and 'premium' categories.", "Revise copy for 'budget' and 'sale' ads with low CTR." ] } 📊 Output Example (Google Sheet) | Product | Category | Old Headline | New Headline | CTR Change | Theme | | ------------------- | -------- | ------------------------ | -------------------------------------------- | ---------- | ------- | | Organic Protein Bar | Snacks | “Healthy Energy Anytime” | “Organic Protein Bar — 100% Natural Fuel” | +12% | Organic | | Eco Face Cream | Skincare | “Gentle Hydration” | “Vegan Face Cream — Clean, Natural Moisture” | +17% | Vegan | 📤 Automation Flow Run Automatically on the first of every month (cron: 0 0 1 * *). Fetch Ads Data → Analyze & Learn → Generate New Ads → Save & Notify. Every iteration updates the AI’s knowledge base — improving your campaigns progressively. ⚡ Scalability The flow is batch-optimized (50 items per request). Works for large ad accounts with up to 10,000 ad records. AI analysis & regeneration steps are asynchronous-safe (timeouts extended). Perfect for agencies managing multiple ad accounts — simply duplicate and update the environment variables per client. 🧩 Best Use Cases Monthly ad creative optimization for eCommerce stores. Marketing automation for Google Ads campaign scaling. Continuous learning ad systems powered by Relevance AI insights. Agencies automating ad copy refresh cycles across clients. 💬 Slack Report Example 30-Day Performance Optimization Report Date: 2025-10-01 Analysis Period: Last 30 days Ads Analyzed: 842 Top Performing Themes Vegan: 5.2% CTR (34 ads) Premium: 4.9% CTR (28 ads) Underperforming Themes Budget: 1.8% CTR (12 ads) AI Insights “Vegan” and “Premium” themes outperform baseline by +22% CTR. “Budget” ads underperform due to lack of value framing. Next Optimization Cycle: 2025-11-01 🛠️ Maintenance Tips Update your GAQL query occasionally to include new metrics or segments. Refresh Relevance AI tokens every 90 days (if required). Review generated ads in Google Sheets before pushing them live. Test webhook and OAuth connections after major n8n updates. 🧩 Import Instructions Open n8n → Workflows → Import from File / JSON. Paste this workflow JSON or upload it. Add all required environment variables and credentials. Execute the first run manually to validate connections. Once verified, enable scheduling for automatic monthly runs. 🧾 Credits Developed for AI-driven marketing teams leveraging Google Ads, Channable, and Relevance AI to achieve continuous ad improvement — fully automated via n8n.