by Daniel Shashko
How it Works This workflow automatically monitors your Gmail support inbox every minute for new unread messages, instantly sending each email to OpenAI for intelligent analysis. The AI engine evaluates sentiment (Positive/Neutral/Negative/Critical), urgency level (Low/Medium/High/Critical), and categorizes requests into Technical, Billing, Feature Request, Bug Report, or General Inquiry, while extracting key issues and generating professional response templates. The system calculates a priority score (0-110 points) by combining urgency weight (25 points per level) with sentiment impact (10 points per level), automatically flagging any Critical urgency or Critical sentiment tickets for immediate attention. Critical issues trigger instant Slack alerts with full context, suggested responses, and 30-minute SLA reminders, while routine tickets route to monitoring channels for standard processing. Every ticket is logged to Airtable with complete analysis data and thread tracking, then simultaneously posted to a Google Sheets analytics dashboard for real-time metrics. A secondary AI pass generates strategic insights including trend identification, risk assessment, and actionable recommendations for the support team, storing these insights back in Airtable linked to the original ticket. The entire process takes seconds from email arrival to team notification, eliminating manual triage and ensuring critical customer issues receive immediate attention while building a searchable knowledge base of support patterns. Who is this for? Customer support teams drowning in high email volumes needing automated prioritization SaaS companies tracking support metrics and response times for customer satisfaction Startups with lean support teams requiring intelligent ticket routing and escalation E-commerce businesses managing technical support, returns, and billing inquiries simultaneously Support managers needing data-driven insights into customer pain points and support trends Setup Steps Setup time: Approx. 20-30 minutes (OpenAI API, Gmail connection, database setup) Requirements: Gmail account with support email access OpenAI API account with API key Airtable account with workspace access Google Sheets for analytics dashboard Slack workspace with incoming webhooks Sign up for OpenAI and obtain your API key for the AI analysis nodes. Create an Airtable base with two tables: "tblSupportTickets" (main records) and "tblInsights" (AI insights) with matching column names. Create a Google Sheet with columns for Date, Time, Customer, Email, Subject, Sentiment, Urgency, Category, Priority, Critical, Status. Set up these nodes: Monitor Support Emails: Connect Gmail account, configure to check INBOX label for unread messages. AI Analysis Engine: Add OpenAI credentials and API key, system prompt pre-configured. Parse & Enrich Data: JavaScript code automatically extracts and scores data (no changes needed). Route by Urgency: Configure routing rules to split critical vs. routine tickets. Slack Alert Nodes: Set up webhook URLs for critical alerts channel and routine monitoring channel. Log to Airtable Database: Connect Airtable, select base and table, map all data fields. Update Analytics Dashboard: Connect Google Sheets and select target sheet/range. Generate Insights & Store AI Insights: OpenAI credentials already set, Airtable connection for storage. Replace placeholder IDs: Airtable base ID (appXXXXXXXXXXXXXX), table names, Google Sheet document ID (1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX). Credentials must be entered into their respective nodes for successful execution. Customization Guidance Priority Scoring Formula:** Adjust urgency multiplier (currently 25) and sentiment weight (currently 10) in the Code node to match your SLA requirements. Urgency Thresholds:** Modify critical routing logic—currently any "Critical" urgency or sentiment triggers immediate alerts. AI Analysis Temperature:** Lower OpenAI temperature (0.1-0.2) for more consistent categorization, or raise (0.4-0.5) for nuanced sentiment detection. Polling Frequency:** Change Gmail trigger from every minute to every 5/15/30 minutes based on support volume and urgency needs. Email Filters:** Add sender whitelist/blacklist, specific label filters, or date ranges to focus on particular customer segments. Category Customization:** Modify AI system prompt to add industry-specific categories like "Compliance," "Integration," "Onboarding," etc. Multi-Language Support:** Add language detection and translation steps before AI analysis for international support teams. Auto-Response:** Insert Gmail send node after AI analysis to automatically send suggested responses for low-priority inquiries. Escalation Rules:** Add additional routing for VIP customers, enterprise accounts, or tickets mentioning "cancel/refund." Dashboard Enhancements:** Connect to Data Studio, Tableau, or Power BI for advanced support analytics and team performance tracking. Once configured, this workflow transforms your support inbox into an intelligent triage system that never misses critical issues, provides instant team visibility, and builds actionable customer insights—all while your team focuses on solving problems instead of sorting emails. Built by Daniel Shashko Connect on LinkedIn
by Jitesh Dugar
🎫 Verified Press Pass Generator for Media Events Automate press credential verification and badge generation for journalists covering your events 📝 Description Streamline your event media management with this comprehensive press pass automation. When journalists apply for credentials, this workflow instantly validates their identity, verifies their media affiliation, generates professional digital badges with QR codes, and delivers everything via email—all within seconds. Perfect for conferences, product launches, trade shows, corporate events, and any occasion requiring verified media access. ✨ Key Features 🔐 Advanced Email Verification Real-time email validation using VerifiEmail API Checks RFC compliance, MX records, and domain reputation Detects disposable email addresses and spoofed domains Confirms journalist works for legitimate media organization 🎨 Professional Badge Design Auto-generates branded digital press passes Includes journalist photo, name, media outlet, and credentials Embedded QR code for contactless event entry Customizable colors, fonts, and event branding 400×600px portrait format optimized for mobile display 📧 Automated Communication Beautiful HTML email with embedded badge preview Download links for PNG and PDF versions Clear instructions for event check-in Professional event branding throughout 📊 Multi-Platform Logging Google Sheets backup with timestamp logs Slack notifications for organizer oversight Complete audit trail for compliance ⚡ Lightning Fast Processing Average execution time: 5-10 seconds Real-time webhook response with confirmation Scalable to hundreds of applications per hour Error handling with graceful fallbacks 🎯 Use Cases Event Types: Tech conferences and summits Product launch events Trade shows and exhibitions Political rallies and press conferences Sports events and tournaments Film festivals and premieres Corporate announcements Award ceremonies 🔧 What You Need Required Services: n8n (Cloud or Self-hosted) VerifiEmail API (Get API Key) - Email verification HTMLCSSToImage API (Get API Key) - Badge generation Gmail Account (OAuth) - Email delivery Slack Workspace - Team notifications Google Sheets - Backup logging 📋 How It Works Step-by-Step Process: 1. Application Submission Journalist fills out form on your event website (name, email, media outlet, photo, phone) 2. Data Validation Webhook receives application and checks for required fields (name, email, photo) 3. Email Verification VerifiEmail API validates email domain, checks MX records, and confirms media affiliation 4. Credential Generation Generates unique press ID (PRESS-XXX-timestamp) Creates QR code linking to verification portal Sets 30-day validity period 5. Badge Creation HTMLCSSToImage API renders professional badge with: Circular profile photo Name and media outlet Press ID in styled container Scannable QR code Event name and validity dates "VERIFIED" indicator 6. Distribution Sends HTML email with badge preview and download link Posts notification to Slack channel Backs up to Google Sheets Returns success response to webhook 7. Event Check-In Security scans QR code at event entrance, verifies credentials instantly 🚀 Setup Instructions Quick Start (15 minutes): 1. Import Workflow Download the JSON file In n8n: Click Workflows → Import from File Upload the JSON and open the workflow 2. Configure Webhook Activate the workflow Copy the webhook URL from the Webhook Trigger node Add this URL to your website form's action attribute 3. Add API Credentials VerifiEmail:** Create credential with API key from verifi.email dashboard HTMLCSSToImage:** Add User ID and API Key from htmlcsstoimg.com Gmail:** Connect via OAuth (click "Sign in with Google") Slack:** Connect via OAuth and select notification channel Google Sheets:** Connect via OAuth 4. Setup Google Sheets Create a new sheet named "Press Pass Logs" with these column headers: Timestamp | Press ID | Name | Email | Phone | Media Outlet | Email Domain | Verification Status | Event Name | Issued Date | Valid Until | Badge Image URL | QR Code URL | Verification URL | Photo URL | Execution Mode 5. Customize Badge Design Open the "HTML/CSS to Image" node Edit the HTML in html_content field Change gradient colors: Replace #667eea and #764ba2 with your brand colors Update event name default value Modify font sizes, spacing, or layout as needed 6. Update Email Content Open "Send Press Pass Email" node Customize email text, support contact info Update company/event branding Modify footer with your details 7. Configure Slack Channel Open "Notify Organizers (Slack)" node Select your preferred notification channel Customize notification message format 8. Test the Workflow Send a test POST request using Postman or cURL: curl -X POST https://your-n8n-url/webhook/press-application \ -H "Content-Type: application/json" \ -d '{ "name": "Jane Smith", "email": "jane@bbc.com", "media_outlet": "BBC News", "photo_url": "https://randomuser.me/api/portraits/women/50.jpg", "phone": "+44-1234567890", "event_name": "Tech Summit 2025" }' 9. Go Live Verify test execution completed successfully Check email received with badge Activate workflow for production use 🎨 Customization Options Badge Design: Colors:** Change gradient from purple (#667eea, #764ba2) to your brand colors Fonts:** Swap Google Font from Poppins to any available font Logo:** Add event logo in header section Size:** Adjust viewport_width and viewport_height for different dimensions Layout:** Modify HTML structure for custom badge designs Email Templates: Branding:** Update colors, fonts, and styling in HTML email Content:** Customize greeting, instructions, and footer Attachments:** Add PDF version or additional documents Language:** Translate all text to your language 🔒 Security & Privacy Data Protection: ✅ Email verification prevents fake submissions ✅ QR codes use unique, non-guessable IDs ✅ HTTPS webhook for encrypted transmission ✅ No sensitive data stored in workflow variables ✅ Audit trail for compliance requirements Best Practices: Use environment variables for API keys Enable webhook authentication (Basic Auth or API key) Implement rate limiting on webhook endpoint Regularly rotate API credentials Set up backup systems for critical data 🛠️ Troubleshooting Common Issues: Issue: "Webhook not receiving data" Solution: Ensure workflow is activated and webhook URL is correct in form action Issue: "Email verification fails for valid domains" Solution: Check VerifiEmail API credit balance and credential configuration Issue: "Badge image not generating" Solution: Verify HTMLCSSToImage API key is correct and has sufficient credits Issue: "Gmail not sending" Solution: Reconnect Gmail OAuth credential and check sending limits Issue: "QR code not loading in badge" Solution: Ensure QR code URL is properly encoded and publicly accessible 📈 Performance Metrics Average execution time:** 5-10 seconds Success rate:** 98%+ (with valid inputs) Concurrent capacity:** 50+ requests/minute API reliability:** 99.9% uptime (dependent on services) Badge generation:** <2 seconds Email delivery:** <3 seconds 🏷️ Tags event-management press-pass credential-verification badge-generation email-automation qr-code media-relations event-technology htmlcsstoimage verifi-email gmail slack google-sheets webhook automation workflow conference journalism press-credentials 📄 License This workflow template is provided as-is for use with n8n. Customize freely for your organization's needs.
by Oneclick AI Squad
Streamline invoice management with this automated n8n workflow. Triggered daily at 9 AM, it fetches pending invoices, filters overdue ones, uses AI to generate personalized reminders, and sends them to clients. It also tracks payments via webhooks, updates statuses, and provides daily summaries to the finance team, ensuring efficient cash flow oversight. Key Features Daily checks at 9 AM ensure timely invoice tracking. AI generates personalized reminders and payment confirmations. Real-time webhook integration for payment updates. Daily summaries and activity logs enhance financial visibility. Workflow Process Schedule Daily Check** runs every day at 9 AM to initiate the workflow. Fetch Pending Invoices** queries the database for unpaid invoices. Filter Overdue Invoices** separates overdue invoices based on due dates. Calculate Reminder Logic** applies smart logic for reminder timing and urgency. Prepare AI Prompt** formats data into a tailored prompt for AI. AI Agent for Generate Email** uses AI to create personalized reminder emails. Format Email** styles the email with HTML for a professional look. Send Email Reminder** delivers the reminder to clients. Update Reminder Status** logs the sent reminder in the database. Create Activity Log** generates a manual log for auditing. Save Input Log** archives raw input data for analysis. Generate Daily Summary** creates a report of daily metrics. Send Summary to Finance Team** emails the summary to the team. Webhook Payment Received** captures payment confirmations via POST. Update Payment Status** updates the invoice status to "paid" in the database. Webhook Response** sends an acknowledgment to the payment gateway. Webhook Logic Filtering** validates webhook data. Prepare AI Prompt (in payment branch)** formats payment data for AI. Chat Memory Tool (in payment branch)** maintains context for AI. Generate Email (in payment branch)** creates a payment confirmation email. Send Payment Confirmation** emails the confirmation to the client. Setup Instructions Import the workflow into n8n and configure database credentials (e.g., Google Sheets or SQL) for "Fetch Pending Invoices." Set up the AI service (e.g., OpenAI GPT) with an API key for email generation. Configure Gmail API Key for sending emails and Slack (if integrated) for team alerts. Test the workflow by adding overdue invoices and simulating a payment webhook. Adjust reminder logic and thresholds (e.g., 7 days overdue) as needed. Prerequisites Database access (e.g., Google Sheets OAuth2 or SQL credentials) OpenAI API key for AI email generation Gmail API Key for email notifications Payment gateway webhook integration (e.g., Stripe) Structured invoice data format Database Structure: Create a table/sheet with columns: Invoice ID Client Name Amount Due Date Status Reminder Sent Payment Date Modification Options Adjust the "Schedule Daily Check" to a different time (e.g., 8 AM IST). Customize "Calculate Reminder Logic" for escalation (e.g., multiple reminders). Modify AI prompts for branded or localized email content. Integrate with accounting software (e.g., QuickBooks) for real-time data. Enhance "Generate Daily Summary" with custom financial metrics. Discover more workflows – Get in touch with us
by Ajay Yadav
Lead Qualification & Follow‑up (Gemini) Automate lead intake, AI qualification, and next‑step outreach. Qualified leads get a scheduled meeting, Zoom details, an email confirmation, CRM update, and Mailchimp enrollment. Not‑qualified leads receive a follow‑up sequence, CRM update, and a 30‑day reminder. What this workflow does AI qualifies leads as QUALIFIED or NOT QUALIFIED using Google Gemini. Supports two triggers: Webhook (wordpress-form) or n8n Form Trigger. QUALIFIED branch: AI phone call via VAPI Schedules Google Calendar event Creates Zoom meeting Sends confirmation email via Gmail Adds to Mailchimp audience Updates contact in HubSpot NOT QUALIFIED branch: AI phone call via VAPI Adds to Mailchimp audience Sends follow‑up email via Gmail Updates contact in HubSpot Creates 30‑day follow‑up calendar event Apps and credentials required Google Gemini (PaLM/Gemini API) Gmail HubSpot Zoom Google Calendar VAPI (for AI phone calls) Mailchimp Environment variables MAILCHIMP_LIST_ID_QUALIFIED=your_mailchimp_list_id_for_qualified MAILCHIMP_LIST_ID_FOLLOWUP=your_mailchimp_list_id_for_followup Triggers supported Webhook: path wordpress-form (POST) Form Trigger: built‑in n8n form Use only one in production. Keep the other disabled. Expected input (fields) name: string email: string message: string If using Webhook, send a JSON body with the fields above. Setup Connect credentials: Google Gemini (model: models/gemini-2.5-flash) Gmail HubSpot (OAuth) Zoom Google Calendar (select the target calendar) VAPI (HTTP header auth: Bearer token) Set env vars: MAILCHIMP_LIST_ID_QUALIFIED MAILCHIMP_LIST_ID_FOLLOWUP Choose your trigger: Webhook: enable and use the provided URL for wordpress-form Form Trigger: enable and publish the form Review timing: adjust Wait nodes for your timezone and SLA. Personalize messaging: edit Gmail subjects/bodies and Zoom topic. CRM and lists: confirm HubSpot properties and Mailchimp list IDs. How it works (at a glance) Intake → AI classifies (QUALIFIED / NOT QUALIFIED) QUALIFIED: VAPI call → Schedule Calendar → Create Zoom → Add to Mailchimp (qualified) → Gmail confirmation → HubSpot update NOT QUALIFIED: VAPI call → Add to Mailchimp (follow‑up) → Gmail follow‑up → HubSpot update → 30‑day calendar event Test the workflow (before going live) Submit a test via your chosen trigger with name, email, message. Confirm AI decision at the “Lead Decision” node. If QUALIFIED: VAPI call executed Calendar event created Zoom meeting created (join URL available) Mailchimp enrollment (qualified list) Gmail confirmation sent HubSpot contact created/updated If NOT QUALIFIED: VAPI call executed Mailchimp enrollment (follow‑up list) Gmail follow‑up sent HubSpot updated 30‑day calendar reminder created Open any failing HTTP nodes and review response codes/messages. Go‑live checklist All credentials connected (no warnings) MAILCHIMP_LIST_ID_QUALIFIED and MAILCHIMP_LIST_ID_FOLLOWUP set Timezone and delays validated Email copy approved Only one trigger enabled Final end‑to‑end test passed Toggle workflow Active Customization ideas Add a Slack or Microsoft Teams notification on QUALIFIED Enrich leads (Clearbit, ZoomInfo, etc.) before AI decision Swap Mailchimp for your ESP (Klaviyo, SendGrid Marketing) Add a second‑chance branch for ambiguous AI classifications Localize email copy by country or language Troubleshooting Webhook receives no data: ensure external form POSTs JSON to the n8n URL and network rules allow it. AI decision empty/garbled: verify Gemini credentials/model ID and input fields. Mailchimp errors: verify List IDs and that email is valid. Gmail send fails: check OAuth scopes and daily limits. Zoom/Calendar issues: re‑connect OAuth; verify calendar access. HubSpot errors: confirm OAuth scopes and property mappings. Security and scopes Gmail: send email Google Calendar: create events Zoom: create meetings HubSpot: read/write contacts Mailchimp: list membership VAPI: authenticated HTTP requests Gemini: model inference Use least‑privilege for each integration. Limits and notes Gmail and Mailchimp rate limits may apply during spikes. Zoom and Google Calendar API quotas apply for frequent scheduling. VAPI call timeouts are 30s by default; adjust as needed. Changelog 2025‑09‑15: Initial public template with dual triggers, Gemini qualification, VAPI calls, scheduling, Mailchimp, Gmail, and HubSpot updates.
by Swot.AI
Description This workflow lets you upload a PDF document and automatically analyze it with AI. It extracts the text, summarizes the content, flags key clauses or risks, and then delivers the results via Gmail while also storing them in Google Sheets for tracking. It’s designed for legal, compliance, or contract review use cases, but can be adapted for any document analysis scenario. Test it here: PDF Document Assistant 🔹 Instructions / Setup Webhook Input Upload a PDF document by sending it to the webhook URL. Extract from File The workflow extracts text from the uploaded PDF. Pre-processing (Code Node) Cleans and formats extracted text to remove unwanted line breaks or artifacts. Basic LLM Chain (OpenAI) Summarizes or restructures document content using OpenAI. Adjust the prompt inside to fit your analysis needs (summary, risk flags, clause extraction). Post-processing (Code Node) Further structures the AI output into a clean format (JSON, HTML, or plain text). AI Agent (OpenAI) Runs deeper analysis, answers questions, and extracts insights. Gmail Sends the results to a recipient. Configure Gmail credentials and set your recipient address. Google Sheets Appends results to a Google Sheet for record-keeping or audits. Respond to Webhook Sends a quick acknowledgment back to confirm the document was received. 🔹 Credentials Needed OpenAI API key (for Chat Model + Agent) Gmail account (OAuth2) Google Sheets account (OAuth2) 🔹 Example Use Case Upload a contract PDF → workflow extracts clauses → AI flags risky terms → Gmail sends formatted summary → results stored in Google Sheets.
by Muhammad Asadullah
Daily Blog Automation Workflow Fully automated blog creation system using n8n + AI Agents + Image Generation Overview This workflow automates the entire blog creation pipeline—from topic research to final publication. Three specialized AI agents collaborate to produce publication-ready blog posts with custom images, all saved directly to your Supabase database. How It Works 1. Research Agent (Topic Discovery) Triggers**: Runs on schedule (default: daily at 4 AM) Process**: Fetches existing blog titles from Supabase to avoid duplicates Uses Google Search + RSS feeds to identify trending topics in your niche Scrapes competitor content to find content gaps Generates detailed topic briefs with SEO keywords, search intent, and differentiation angles Output**: Comprehensive research document with SERP analysis and content strategy 2. Writer Agent (Content Creation) Triggers**: Receives research from Agent 1 Process**: Writes full blog article based on research brief Follows strict SEO and readability guidelines (no AI fluff, natural tone, actionable content) Structures content with proper HTML markup Includes key sections: hook, takeaways, frameworks, FAQs, CTAs Places image placeholders with mock URLs (https://db.com/image_1, etc.) Output**: Complete JSON object with title, slug, excerpt, tags, category, and full HTML content 3. Image Prompt Writer (Visual Generation) Triggers**: Receives blog content from Agent 2 Process**: Analyzes blog content to determine number and type of images needed Generates detailed 150-word prompts for each image (feature image + content images) Creates prompts optimized for Nano-Banana image model Names each image descriptively for SEO Output**: Structured prompts for 3-6 images per blog post 4. Image Generation Pipeline Process**: Loops through each image prompt Generates images via Nano-Banana API (Wavespeed.ai) Downloads and converts images to PNG Uploads to Supabase storage bucket Generates permanent signed URLs Replaces mock URLs in HTML with real image URLs Output**: Blog HTML with all images embedded 5. Publication Final blog post saved to Supabase blogs table as draft Ready for immediate publishing or review Key Features ✅ Duplicate Prevention: Checks existing blogs before researching new topics ✅ SEO Optimized: Natural language, proper heading structure, keyword integration ✅ Human-Like Writing: No robotic phrases, varied sentence structure, actionable advice ✅ Custom Images: Generated specifically for each blog's content ✅ Fully Structured: JSON output with all metadata (tags, category, excerpt, etc.) ✅ Error Handling: Automatic retries with wait periods between agent calls ✅ Tool Integration: Google Search, URL scraping, RSS feeds for research Setup Requirements 1. API Keys Needed Google Gemini API**: For Gemini 2.5 Pro/Flash models (content generation/writing) Groq API (optional)**: For Kimi-K2-Instruct model (research/writing) Serper.dev API**: For Google Search (2,500 free searches/month) Wavespeed.ai API**: For Nano-Banana image generation Supabase Account**: For database and image storage 2. Supabase Setup Create blogs table with fields: title, slug, excerpt, category, tags, featured_image, status, featured, content Create storage bucket for blog images Configure bucket as public or use signed URLs 3. Workflow Configuration Update these placeholders: RSS Feed URLs**: Replace [your website's rss.xml] with your site's RSS feed Storage URLs**: Update Supabase storage paths in "Upload object" and "Generate presigned URL" nodes API Keys**: Add your credentials to all HTTP Request nodes Niche/Brand**: Customize Research Agent system prompt with your industry keywords Writing Style**: Adjust Writer Agent prompt for your brand voice Customization Options Change Image Provider Replace the "nano banana" node with: Gemini Imagen 3/4 DALL-E 3 Midjourney API Any Wavespeed.ai model Adjust Schedule Modify "Schedule Trigger" to run: Multiple times daily Specific days of week On-demand via webhook Alternative Research Tools Replace Serper.dev with: Perplexity API (included as alternative node) Custom web scraping Different search providers Output Format { "title": "Your SEO-Optimized Title", "slug": "your-seo-optimized-title", "excerpt": "Compelling 2-3 sentence summary with key benefits.", "category": "Your Category", "tags": ["tag1", "tag2", "tag3", "tag4"], "author_name": "Your Team Name", "featured": false, "status": "draft", "content": "...complete HTML with embedded images..." } Performance Notes Average runtime**: 15-25 minutes per blog post Cost per post**: ~$0.10-0.30 (depending on API usage) Image generation**: 10-15 seconds per image with Nano-Banana Retry logic**: Automatically handles API timeouts with 5-15 minute wait periods Best Practices Review Before Publishing: Workflow saves as "draft" status for human review Monitor API Limits: Track Serper.dev searches and image generation quotas Test Custom Prompts: Adjust Research/Writer prompts to match your brand Image Quality: Review generated images; regenerate if needed SEO Validation: Check slugs and meta descriptions before going live Workflow Architecture 3 Main Phases: Research → Writer → Image Prompts (Sequential AI Agent chain) Image Generation → Upload → URL Replacement (Loop-based processing) Final Assembly → Database Insert (Single save operation) Error Handling: Wait nodes between agents prevent rate limiting Retry logic on agent failures (max 2 retries) Conditional checks ensure content quality before proceeding Result: Hands-free blog publishing that maintains quality while saving 3-5 hours per post.
by Dzaky Jaya
This n8n workflow demonstrate how to configure AI Agent for financial research purposes especially for IDX data through Sectors App API. use cases: research stock market in Indonesia. analyze the performance of companies belonging to certain subsectors or company comparing financial metrics between BBCA and BBRI providing technical analysis for certain ticker stock movement and many more all from conversational agent UI chat. Main components Input-n8nChatNative**: handling and process input from native n8n chat ui Input-TelegramBot**: handling and process input from Telegram Bot Input-WebUI(Webhook)**: handling and process input from hosted Web UI through webhook Main Agent**: processing raw user queries and delegate task to specialized agent if needed. Spec Agent - Sectors App**: make request to Sectors App API to get real time financial data listed in IDX from available endpoint Spec Agent - Web Search**: make web search from Google Grounding (Gemini API) and Tavily Search. Vector Document Processing**: process document upload from user into embedding and vector store. How it works user queries may received from multiple platform (we use three here: Telegram, hosted Web UI, and native n8n chat UI) if user also uploading document, it will process the document and store it in vector store the request send to the Main Agent to process the queries the Main Agent decide the task to delegate to Specialized Agent if nedded. the result then sent back to user based on the platform How to use You need this API: Gemini API: get it free from https://aistudio.google.com/ Tavily API: get it free from https://www.tavily.com/ Sectors App API: get it from https://sectors.app/api/ you can optionally change the model or adding fallback model to handle token request, cause it may use quite many tokens.
by Rahul Joshi
📊 Description Ensure your GitHub repositories stay configuration-accurate and documentation-compliant with this intelligent AI-powered validation workflow. 🤖 This automation monitors repository updates, compares configuration files against documentation references, detects inconsistencies, and alerts your team instantly—streamlining DevOps and compliance reviews. ⚡ What This Template Does Step 1: Triggers automatically on GitHub push or pull_request events. 🔄 Step 2: Fetches both configuration files (config/app-config.json and faq-config.json) from the repository. 📂 Step 3: Uses GPT-4o-mini to compare configurations and detect mismatches, missing keys, or deprecated fields. 🧠 Step 4: Categorizes issues by severity—critical, high, medium, or low—and generates actionable recommendations. 🚨 Step 5: Logs all discrepancies to Google Sheets for tracking and audit purposes. 📑 Step 6: Sends Slack alerts summarizing key issues and linking to the full report. 💬 Key Benefits ✅ Prevents production incidents due to config drift ✅ Ensures documentation stays in sync with code changes ✅ Reduces manual review effort with AI-driven validation ✅ Improves team response with Slack-based alerts ✅ Maintains audit logs for compliance and traceability Features Real-time GitHub webhook integration AI-powered config comparison using GPT-4o-mini Severity-based issue classification Automated Google Sheets logging Slack alerts with detailed issue context Error handling for malformed JSON or parsing issues Requirements GitHub OAuth2 credentials with repo and webhook permissions OpenAI API key (GPT-4o-mini or compatible model) Google Sheets OAuth2 credentials Slack API token with chat:write permissions Target Audience DevOps teams ensuring consistent configuration across environments Engineering leads maintaining documentation accuracy QA and Compliance teams tracking configuration changes and risks Setup Instructions Create GitHub OAuth2 credentials and enable webhook access. Connect your OpenAI API key under credentials. Add your Google Sheets and Slack integrations. Update file paths (config/app-config.json and faq-config.json) if your repo uses different names. Activate the workflow — it will start validating on every push or PR. 🚀
by Growth AI
N8N UGC Video Generator - Setup Instructions Transform Product Images into Professional UGC Videos with AI This powerful n8n workflow automatically converts product images into professional User-Generated Content (UGC) videos using cutting-edge AI technologies including Gemini 2.5 Flash, Claude 4 Sonnet, and VEO3 Fast. Who's it for Content creators** looking to scale video production E-commerce businesses** needing authentic product videos Marketing agencies** creating UGC campaigns for clients Social media managers** requiring quick video content How it works The workflow operates in 4 distinct phases: Phase 0: Setup - Configure all required API credentials and services Phase 1: Image Enhancement - AI analyzes and optimizes your product image Phase 2: Script Generation - Creates authentic dialogue scripts based on your input Phase 3: Video Production - Generates and merges professional video segments Requirements Essential Services & APIs Telegram Bot Token** (create via @BotFather) OpenRouter API** with Gemini 2.5 Flash access Anthropic API** for Claude 4 Sonnet KIE.AI Account** with VEO3 Fast access N8N Instance** (cloud or self-hosted) Technical Prerequisites Basic understanding of n8n workflows API key management experience Telegram bot creation knowledge How to set up Step 1: Service Configuration Create Telegram Bot Message @BotFather on Telegram Use /newbot command and follow instructions Save the bot token for later use OpenRouter Setup Sign up at openrouter.ai Purchase credits for Gemini 2.5 Flash access Generate and save API key Anthropic Configuration Create account at console.anthropic.com Add credits to your account Generate Claude API key KIE.AI Access Register at kie.ai Subscribe to VEO3 Fast plan Obtain bearer token Step 2: N8N Credential Setup Configure these credentials in your n8n instance: Telegram API Credential Name: telegramApi Bot Token: Your Telegram bot token OpenRouter API Credential Name: openRouterApi API Key: Your OpenRouter key Anthropic API Credential Name: anthropicApi API Key: Your Anthropic key HTTP Bearer Auth Credential Name: httpBearerAuth Token: Your KIE.AI bearer token Step 3: Workflow Configuration Import the Workflow Copy the provided JSON workflow Import into your n8n instance Update Telegram Token Locate the "Edit Fields" node Replace "Your Telegram Token" with your actual bot token Configure Webhook URLs Ensure all Telegram nodes have proper webhook configurations Test webhook connectivity Step 4: Testing & Validation Test Individual Nodes Verify each API connection Check credential configurations Confirm node responses End-to-End Testing Send a test image to your Telegram bot Follow the complete workflow process Verify final video output How to customize the workflow Modify Image Enhancement Prompts Edit the HTTP Request node for Gemini Adjust the prompt text to match your style preferences Test different aspect ratios (current: 1:1 square format) Customize Script Generation Modify the Basic LLM Chain node prompt Adjust video segment duration (current: 7-8 seconds each) Change dialogue style and tone requirements Video Generation Settings Update VEO3 API parameters in HTTP Request1 node Modify aspect ratio (current: 16:9) Adjust model settings and seeds for consistency Output Customization Change final video format in MediaFX node Modify Telegram message templates Add additional processing steps before delivery Workflow Operation Phase 1: Image Reception and Enhancement User sends product image via Telegram System prompts for enhancement instructions Gemini AI analyzes and optimizes image Enhanced square-format image returned Phase 2: Analysis and Script Creation System requests dialogue concept from user AI analyzes image details and environment Claude generates realistic 2-segment script Scripts respect physical constraints of original image Phase 3: Video Generation Two separate videos generated using VEO3 System monitors generation status Videos merged into single flowing sequence Final video delivered via Telegram Troubleshooting Common Issues API Rate Limits**: Implement delays between requests Webhook Failures**: Verify URL configurations and SSL certificates Video Generation Timeouts**: Increase wait node duration Credential Errors**: Double-check all API keys and permissions Error Handling The workflow includes automatic error detection: Failed video generation triggers error message Status checking prevents infinite loops Alternative outputs for different scenarios Advanced Features Batch Processing Modify trigger to handle multiple images Add queue management for high-volume usage Implement user session tracking Custom Branding Add watermarks or logos to generated videos Customize color schemes and styling Include brand-specific dialogue templates Analytics Integration Track usage metrics and success rates Monitor API costs and optimization opportunities Implement user behavior analytics Cost Optimization API Usage Management Monitor token consumption across services Implement caching for repeated requests Use lower-cost models for testing phases Efficiency Improvements Optimize image sizes before processing Implement smart retry mechanisms Use batch processing where possible This workflow transforms static product images into engaging, professional UGC videos automatically, saving hours of manual video creation while maintaining high quality output perfect for social media platforms.
by explorium
Explorium Agent for Slack AI-powered Slack bot for business intelligence queries using Explorium API through MCP. Prerequisites Slack workspace with admin access Anthropic API key (You can replace with other LLM Chat) Explorium API Key 1. Create Slack App Create App Go to api.slack.com/apps Click Create New App → From scratch Give it name (e.g., "Explorium Agent") and select workspace Bot Permissions (OAuth & Permissions) Add these Bot Token Scopes: app_mentions:read channels:history channels:read chat:write emoji:read groups:history groups:read im:history im:read mpim:history mpim:read reactions:read users:read Enable Events Event Subscriptions → Enable Add Request URL (from n8n Slack Trigger node) Subscribe to bot events: app_mention message.channels message.groups message.im message.mpim reaction_added Install App Install App → Install to Workspace Copy Bot User OAuth Token (xoxb-...) 2. Configure n8n Import & Setup Import this JSON template Slack Trigger node: Add Slack credential with Bot Token Copy webhook URL Paste in Slack Event Subscriptions Request URL Anthropic Chat Model node: Add Anthropic API credential Model: claude-haiku-4-5-20251001 (You can replace it with other chat models) MCP Client node: Endpoint: https://mcp.explorium.ai/mcp Header Auth: Add Explorium API key Usage Examples @ExploriumAgent find tech companies in SF with 50-200 employees @ExploriumAgent show Microsoft's technology stack @ExploriumAgent get CMO contacts at healthcare companies `
by Trung Tran
Create AI-Powered Chatbot for Candidate Evaluation on Slack > This workflow connects a Slack chatbot with AI agents and Google Sheets to automate candidate resume evaluation. It extracts resume details, identifies the applied job from the message, fetches the correct job description, and provides a summarized evaluation via Slack and tracking sheet. Perfect for HR teams using Slack. Who’s it for This workflow is designed for: HR Teams, **Recruiters, and Hiring Managers Working in software or tech companies using Slack, Google Sheets, and n8n Who want to automate candidate evaluation based on uploaded profiles and applied job positions How it works / What it does This workflow is triggered when a Slack user mentions the HR bot and attaches a candidate profile PDF. The workflow performs the following steps: Trigger from Slack Mention A user mentions the bot in Slack with a message like: @HRBot Please evaluate this candidate for the AI Engineer role. (with PDF attached) Input Validation If no file is attached, the bot replies: "Please upload the candidate profile file before sending the message." Extract Candidate Profile Downloads the attached PDF from Slack Uses Extract from File to parse the resume into text Profile Analysis (AI Agent) Sends the resume text and message to the Profile Analyzer Agent Identifies: Candidate name, email, and summary Applied position (from message) Looks up the Job Description PDF URL using Google Sheets Job Description Retrieval Downloads and parses the matching JD PDF HR Evaluation (AI Agent) Sends both the candidate profile and job description to HR Expert Agent Receives a summarized fit evaluation and insights Output and Logging Sends evaluation result back to Slack in the original thread Updates a Google Sheet with evaluation data for tracking How to set up Slack Setup Create a Slack bot and install it into your workspace Enable the app_mention event and generate a bot token Connect Slack to n8n using Slack Bot credentials Google Sheets Setup Create a sheet mapping Position Title → Job Description URL Create another sheet for logging evaluation results n8n Setup Add a Webhook Trigger for Slack mentions Connect Slack, Google Sheets, and GPT-4 credentials Set up agents (Profile Analyzer Agent, HR Expert Agent) with appropriate prompts Deploy & Test Mention your bot in Slack with a message and file Confirm the reply and entry in the evaluation tracking sheet Requirements n8n (self-hosted or cloud) Slack App with Bot Token OpenAI or Azure OpenAI account (for GPT-4) Google Sheets (2 sheets: job mapping + evaluation log) Candidate profiles in PDF format Defined job titles and descriptions How to customize the workflow You can easily adapt this workflow to your team’s needs: | Customization Area | How to Customize | |--------------------------|----------------------------------------------------------------------------------| | Job Mapping Source | Replace Google Sheet with Airtable or Notion DB | | JD Format | Use Markdown or inline descriptions instead of PDF | | Evaluation Output Format | Change from Slack message to Email or Notion update | | HR Agent Prompt | Customize to match your company tone or include scoring rubrics | | Language Support | Add support for bilingual input/output (e.g., Vietnamese & English) | | Workflow Trigger | Trigger from slash command or form instead of @mention |
by Nikan Noorafkan
📊 Google Ads + OpenAI + Sheets — Monthly AI Performance Analysis Automate monthly ad performance insights with AI-powered recommendations 🧩 Overview This workflow automatically analyzes Google Ads performance every month, using the Google Ads API and OpenAI (GPT-4o) to uncover which ad themes, categories, and messages perform best. It then generates a structured AI report, saves it to Google Sheets, and sends a Slack summary to your marketing team. 💡 Perfect for digital marketers, agencies, and growth analysts who want automated campaign insights without manually crunching numbers. ⚙️ Features ✅ Automatically runs on the 1st of each month ✅ Fetches last 30 days of ad performance via Google Ads API (GAQL) ✅ Uses GPT-4o for natural-language insights & improvement ideas ✅ Groups ads by category and theme (e.g., “Free Shipping,” “Premium”) ✅ Generates a clean, formatted markdown report ✅ Archives reports in Google Sheets for trend tracking ✅ Notifies your Slack channel with AI-driven recommendations 🧠 Architecture | Component | Purpose | | ------------------- | ------------------------------------------------ | | n8n | Workflow engine | | Google Ads API | Source of ad performance data | | OpenAI (GPT-4o) | Analyzes CTR patterns and writes recommendations | | Google Sheets | Report archiving and history tracking | | Slack | Team notifications | 🧭 Workflow Logic (Summary) Monthly Trigger (1st of Month) ⬇️ 1️⃣ Get Performance Data (Google Ads API) Fetches 30-day CTR, clicks, impressions for all responsive search ads. ⬇️ 2️⃣ Prepare Performance Data Groups data by ad group and theme keywords, builds an AI prompt. ⬇️ 3️⃣ AI Agent (LangChain) + GPT-4o Analyzes patterns and generates actionable insights. ⬇️ 4️⃣ Generate Report (Code) Formats a Markdown report with AI recommendations and KPIs. ⬇️ 5️⃣ Save to Google Sheets Archives results for long-term analytics. ⬇️ 6️⃣ Send Report to Slack Delivers the summary directly to your marketing channel. 🔑 Environment Variables | Variable | Example | Description | | ------------------------ | ----------------------------- | ------------------------------ | | GOOGLE_ADS_CUSTOMER_ID | 123-456-7890 | Google Ads customer account ID | | GOOGLE_ADS_API_VERSION | v17 | Current Ads API version | | GOOGLE_SHEET_ID | 1xA1B2c3D4EFgH... | Target spreadsheet ID | | OPENAI_API_KEY | sk-xxxxx | OpenAI API key for GPT-4o | | SLACK_WEBHOOK_URL | https://hooks.slack.com/... | Slack incoming webhook | 🔐 Credential Setup | Service | Type | Required Scopes | | ----------------- | ----------------------------- | ---------------------------------------------- | | Google Ads | OAuth2 (googleAdsOAuth2Api) | https://www.googleapis.com/auth/adwords | | OpenAI | API key (openAiApi) | Full access | | Google Sheets | OAuth2 | https://www.googleapis.com/auth/spreadsheets | | Slack | Webhook | chat:write | 🧱 Node-by-Node Breakdown | Node | Purpose | Key Configuration | | ---------------------------------- | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | | Monthly Trigger | Starts workflow on 1st of every month | Cron: 0 0 1 * * | | Get Performance Data | Queries Ads data | Endpoint: https://googleads.googleapis.com/v17/customers/{id}/googleAds:searchQuery: GAQL (CTR, clicks, impressions, last 30 days) | | Prepare Performance Data | Aggregates and builds AI prompt | Groups by ad group and theme, computes CTRs | | AI Agent – Analyze Performance | Passes formatted data to GPT-4o | System message: “You are a Google Ads performance analyst…” | | OpenAI Chat Model (GPT-4o) | Analytical reasoning engine | Model: gpt-4o, Temperature 0.2 | | Generate Report | Parses AI output, formats Markdown report | Adds recommendations + next steps | | Save Report to Sheets | Archives report | Sheet name: Performance Reports | | Send Report (Slack) | Sends summary | Uses report_markdown variable | 🧠 AI Report Example 30-Day Performance Analysis Report Executive Summary Analyzed: 940 ads Period: Last 30 days Top Performing Categories Running Shoes: 9.4% CTR (120 ads) Fitness Apparel: 8.2% CTR (90 ads) Top Performing Themes "Free Shipping" messaging: 9.8% CTR (58 ads) "Premium" messaging: 8.5% CTR (44 ads) AI-Powered Recommendations [HIGH] Emphasize “Free Shipping” across more ad groups. Expected Impact: +5 % CTR [MEDIUM] Test “Premium Quality” vs. “New Arrivals.” Expected Impact: +3 % CTR Next Steps Implement new ad variations A/B test messaging Re-analyze next month 🧩 Testing Procedure 1️⃣ Temporarily disable the cron trigger. 2️⃣ Run the workflow manually. 3️⃣ Confirm: Google Ads node returns JSON with results. AI Agent output is valid JSON. Report is written to Sheets. Slack message received. 4️⃣ Re-enable the monthly trigger once verified. 🧾 Output in Google Sheets | Date | Ads Analyzed | Top Category | Top Theme | Key Recommendations | Generated At | | ---------- | ------------ | ------------- | ------------- | ---------------------------------- | ----------------- | | 2025-10-01 | 940 | Running Shoes | Free Shipping | “Add Free Shipping copy to 10 ads” | 2025-10-01T00:05Z | 🪜 Maintenance | Frequency | Task | | --------- | ----------------------------------------- | | Monthly | Review AI accuracy and update themes list | | Quarterly | Refresh Google Ads API credentials | | As needed | Update GAQL fields for new metrics | ⚙️ API Verification Endpoint: POST https://googleads.googleapis.com/v17/customers/{customer_id}/googleAds:search Scopes: https://www.googleapis.com/auth/adwords GAQL Query: SELECT ad_group_ad.ad.id, ad_group_ad.ad.responsive_search_ad.headlines, ad_group.name, metrics.impressions, metrics.clicks, metrics.ctr FROM ad_group_ad WHERE segments.date DURING LAST_30_DAYS AND metrics.impressions > 100 ORDER BY metrics.clicks DESC LIMIT 1000 ✅ Fully valid query — verified for GAQL syntax, fields, and resource joins. ✅ OAuth2 flow handled by n8n’s googleAdsOAuth2Api. ✅ Optional: add "timeout": 60000 for large accounts. 📈 Metrics of Success | KPI | Target | | -------------------------- | ---------------- | | Report accuracy | ≥ 95 % | | Monthly automation success | ≥ 99 % | | CTR improvement tracking | +3–5 % over time | 🔗 References Google Ads API Docs LangChain in n8n OpenAI API Reference Google Sheets API Slack Incoming Webhooks 🎯 Conclusion You now have a fully automated Google Ads performance analysis workflow powered by: Google Ads API** for granular metrics OpenAI GPT-4o** for intelligent recommendations Google Sheets** for archiving Slack** for team-wide updates 💡 Result: A recurring, data-driven optimization loop that improves ad performance every month — with zero manual effort.