by Jitesh Dugar
Meeting Minutes & Action Item Tracker Fully automated meeting documentation workflow that uses AI to transform raw transcripts into professional PDFs and actionable tasks. Features AI-powered summary generation (GPT-4) Automatic action item extraction with assignees, deadlines, and priorities Professional PDF generation with custom styling Multi-channel distribution (Email, Slack, Google Drive) Task creation in Google Tasks Personalized notifications to each assignee Deadline tracking and urgency detection Setup Instructions REQUIRED CREDENTIALS: OpenAI API - Get from Gmail OAuth2 - Connect your Google account Google Drive OAuth2 - Same Google account Google Tasks OAuth2 - Same Google account Slack OAuth2 - Connect your workspace htmlcsstopdf API - Get from CONFIGURATION STEPS: WEBHOOK: Note your webhook URL after activation EMAIL NODES: "Email All Participants": Uses participants array from input "Send Individual Task Emails": Change @yourcompany.com to your domain GOOGLE DRIVE: Select folder where PDFs should be stored Recommended: Create "Meeting Minutes" folder SLACK: Select channel for team notifications Recommended: Create #meeting-notes channel GOOGLE TASKS: Select task list where tasks should be created Default list works fine TESTING: Use the webhook URL with sample meeting data Check execution log for any errors Verify PDF in Google Drive Check emails were sent Confirm tasks created in Google Tasks Example Input Format POST : Headers: Content-Type: application/json Body: { "title": "Weekly Team Standup", "date": "2025-09-29", "participants": [ "john@company.com", "sarah@company.com", "joe@company.com" ], "duration": "30 minutes", "transcript": "John started the meeting by discussing the progress on the API development. Sarah mentioned that she's working on the dashboard and needs to prepare mockups by Thursday. The team agreed that Sarah will review the API documentation before the client demo on Friday. Akshita confirmed she finished the database schema redesign and needs to schedule a meeting with DevOps team by next Monday to discuss production deployment." } This will generate: Professional PDF with summary and action items Emails to all participants Individual task emails to John, Sarah, and Joe Tasks in Google Tasks Slack notification Output After execution, you'll get: Professional PDF stored in Google Drive Email sent to all participants with meeting overview Individual emails to each assignee with their tasks Slack notification with summary and download link Tasks created in Google Tasks with deadlines CUSTOMIZATION: Modify PDF styling in "Generate PDF Document" node Adjust email templates in Gmail nodes Change AI prompts in OpenAI nodes for different output Modify priority/deadline logic in "Parse and Enrich Data" Troubleshooting Workflow stops at validation: Ensure transcript has >50 words Check that webhook payload is correctly formatted No PDF generated: Verify htmlcsstopdf API credentials Check API usage limits Tasks not created: Verify deadline format is YYYY-MM-DD Check Google Tasks API connection Emails not sending: Confirm Gmail OAuth2 is connected Check that email addresses are valid Support For issues or questions, visit the n8n community forum. License MIT License - Feel free to modify and share!
by Jitesh Dugar
Automated Pre-Issued Workshop Certificate Generator Description: This workflow automates the entire pre-issuance process of workshop participation certificates. When an attendee submits a registration form via a webhook, the workflow validates the data, verifies the attendee’s email, generates a unique Certificate ID and QR code, creates a styled certificate image, stores it on Google Drive, emails the certificate to the attendee, logs all details in Google Sheets, and notifies organizers via Slack — all fully automated. This template is ideal for institutions, event teams, training organizations, hackathons, and workshops that want to automate certificate issuing and remove manual processing. Key Features: Webhook-based registration intake** Required field + email validation using VerifiEmail API** Auto-generated Certificate ID, QR code, and verification URL** Dynamic HTML-to-Image certificate generation** Automatic email delivery with certificate attachment (Gmail)** Auto-upload certificate to Google Drive** Real-time Slack notification for organizers** Registration + certificate logging in Google Sheets** Instant webhook response with certificate metadata** How It Works (Short Summary): Webhook Trigger receives registration details. Validator checks for mandatory fields (name, email, event). Email verification ensures the email is deliverable. Certificate generation creates unique ID + QR + HTML. HTML-to-Image converts the certificate to PNG. Upload to Google Drive stores the certificate file. Email node sends the certificate to the attendee. Google Sheets logs the registration + certificate details. Slack message notifies organizers instantly. Webhook response returns success JSON. Use Cases: Workshops Webinars Training sessions Bootcamps Corporate events Hackathons Student registrations Event ticketing / entry pass systems Required Credentials: VerifiEmail API** – email validation at verifi.email HTMLCSStoImage API** – convert certificate HTML to PNG at htmlcsstoimg.com Gmail OAuth2** – send certificate emails Google Drive OAuth2** – store certificate files Google Sheets OAuth2** – logging Slack API** – organizer notifications Setup Instructions: Import this template into your n8n instance. Open the Webhook node and copy the generated webhook URL. Use this URL in your registration form / frontend / Postman. Add all required credentials in the Credentials Manager. Customize certificate HTML (colors, branding, logos) if needed. Test with a sample POST request containing all required fields: name email event date time venue organization designation Enable the workflow. Input Format (POST Body Required): { "name": "John Doe", "email": "john@example.com", "event": "AI Workshop 2025", "date": "25 Nov 2025", "time": "10:00 AM", "venue": "Auditorium Hall", "organization": "Tech University", "designation": "Student" } Output (Webhook Response): { "success": true, "message": "Registration successful! Certificate sent to your email.", "certificateId": "CERT-12345-ABCD", "verifyUrl": "https://workshopverify.com/cert?id=CERT-12345-ABCD" } Why This Workflow is Useful: Eliminates manual certificate design & sending Ensures professional, consistent certificates Reduces event staff workload Guarantees accurate data logging Provides instant attendee confirmation Enhances event experience with automation
by Md Sabirul Islam
🦷 Dental Clinic Appointment Booking System (n8n) This project is an automated appointment booking system for a dental clinic, built using #n8n. It helps streamline clinic operations by checking availability, creating events in Google Calendar, and sending email notifications to both the doctor and the patient. ✨ Features ✅ Check available slots before booking ✅ Create event in Google Calendar after patient confirmation ✅ Send email notification to the Doctor with appointment details ✅ Send email confirmation to the Patient with their booking details ✅ Unique Appointment ID generation for every booking 🚀 Live Demo https://devsabirul.github.io/Dental-Clinic-Receptionist-N8n/ 🛠 Tech Used n8n.io (Automation Platform) Google Calendar API (Manage bookings) SMTP / Gmail (Send email notifications) 📂 Workflow Setup Import Workflow JSON In n8n, go to Workflows → Import from File. Set Credentials Configure Google Calendar API Credentials in n8n. Configure Email SMTP / Gmail Credentials for sending emails. Update Clinic Info Replace placeholder Doctor’s email with the real email. Customize messages (email subject, body). 📧 Example Email Sent To Doctor: New Appointment Booked Patient: John Doe Phone: +123456789 Email: john@example.com Date: 31st August 2025 Time: 2:15 PM Appointment ID: APT-20250831-ABCD12 To Patient: Hello John Doe, Your appointment has been successfully booked. 📅 Date: 31st August 2025 🕒 Time: 2:15 PM 📍 Appointment ID: APT-20250831-ABCD12 Thank you, Dental Clinic 📌 Tags #n8n #automation #dentalclinic #calendar #appointment 🙌 Author 👨💻 Developed by MD Sabirul Islam
by Connor Provines
One-Line Description Automatically detects missed Zoom demos booked via Calendly and triggers AI-powered follow-up sequences. Detailed Description What it does: When a prospect books a demo through Calendly but fails to join the Zoom meeting, this workflow automatically detects the no-show, generates personalized recovery messages using AI, updates your database, and notifies your sales team—all within minutes of the meeting ending. It bridges Calendly, Zoom, and your follow-up channels to ensure no lead falls through the cracks. Who it's for: Sales teams** running high-volume demo calendars who lose 20-40% of booked meetings to no-shows Customer success managers** conducting onboarding calls where attendance tracking matters SDRs and BDRs** who need immediate alerts when prospects miss scheduled meetings Revenue operations teams** seeking to improve demo-to-opportunity conversion rates through faster follow-up Key Features: Real-time no-show detection** - Automatically checks Zoom participant lists against expected attendees within seconds of meeting end AI-generated recovery messaging** - Creates contextual, empathetic follow-up emails and LinkedIn messages tailored to each no-show scenario Instant team notifications** - Sends formatted Slack alerts with attendee details and suggested next actions so reps can manually follow up if needed Attendance tracking database** - Maintains a searchable record of all bookings and attendance status for reporting and analysis Multi-channel follow-up orchestration** - Coordinates email, Slack notifications, and optional CRM updates from a single automation Selective event filtering** - Processes only specific Calendly event types so you control which meetings trigger the workflow How it works: Booking capture: Calendly webhook fires when a demo is scheduled, extracting Zoom meeting details and attendee information Meeting monitoring: When the Zoom meeting ends, a second webhook triggers attendance verification by pulling the participant list from Zoom's API No-show identification: Workflow cross-references the expected attendee email with actual Zoom participants to confirm whether they attended Automated response: For confirmed no-shows, AI generates personalized recovery messages while the system updates your database and notifies your team via Slack Optional integrations: Simultaneously updates CRM deal stages or triggers additional follow-up sequences based on your configuration Setup Requirements Prerequisites: Calendly account** (any paid plan) with webhook access and Personal Access Token Zoom account** (Pro or higher) with Server-to-Server OAuth app credentials for API access OpenAI API key** for AI-generated follow-up message creation Slack workspace** with OAuth permissions to post messages (optional but recommended) n8n Data Table** created with columns: meeting_id, email, status (built-in n8n feature, no external database needed) Email sending service** configured in n8n (SMTP, Gmail, SendGrid, etc.) if enabling automated email sending CRM API access** (HubSpot, Salesforce, Pipedrive, etc.) if enabling deal updates (optional) Note: Zoom API has rate limits (varies by plan); this workflow makes 1-2 API calls per meeting end event. Estimated Setup Time: 45-60 minutes including Zoom app creation, Calendly webhook configuration, and Data Table setup Installation Notes Critical setup steps: Zoom webhook validation**: You must complete Zoom's webhook endpoint validation process before receiving real events. The workflow includes a dedicated validation path—run it once after creating your Zoom app. Calendly webhook creation**: Use the "Manual Setup Trigger" path in the workflow to programmatically create your Calendly webhook subscription. This only needs to run once. Event type filtering**: Replace the placeholder YOUR_CALENDLY_EVENT_TYPE_URI with your specific demo event type URI from Calendly to avoid processing all meeting types. Test with a real meeting**: Book a test demo, join briefly with a different email than the booking email, then leave. The workflow should detect the "no-show" for the booking email. Common pitfalls to avoid: Forgetting to enable the disabled "Send Recovery Email" node after testing (it's disabled by default to prevent accidental sends during setup) Not configuring Zoom Server-to-Server OAuth correctly (requires Account ID, Client ID, and Client Secret—not JWT credentials) Using a personal Calendly account instead of an organization account (webhooks require organization-level access) Overlooking the Data Table creation step—the workflow will fail without this internal database Testing recommendations: Start with Slack notifications only (leave email sending disabled) to verify the workflow logic Use your own email as a test booking to safely generate AI messages without sending to real prospects Check the Data Table after each test to confirm booking records are being created and updated correctly Customization Options Easy modifications: Swap email for SMS**: Replace the email node with Twilio SMS to send text message follow-ups instead Add delays**: Insert "Wait" nodes to schedule follow-ups hours or days later rather than immediately Change AI tone**: Modify the OpenAI prompt to match your brand voice (casual, formal, humorous, etc.) Multi-step sequences**: Duplicate the AI and email nodes to create a 3-touch follow-up cadence over several days Different CRM platforms**: The HubSpot node can be swapped for Salesforce, Pipedrive, or any CRM n8n supports Extension possibilities: Add Google Sheets logging for executive dashboard reporting on no-show rates Integrate with Calendly's rescheduling API to automatically send rebooking links Connect to Loom or Vidyard APIs to attach pre-recorded demo videos in follow-up emails Create a "second chance" discount workflow that offers incentives for rescheduling Build a predictive model by exporting no-show data to analyze patterns (time of day, lead source, etc.) Category Sales Tags calendly zoom no-show-recovery demo-automation lead-follow-up sales-automation meeting-tracking ai-messaging slack-notification openai Use Case Examples SaaS sales team**: A B2B software company runs 40+ demos per week. When prospects no-show, this workflow immediately notifies the assigned rep in Slack with a pre-written LinkedIn message, sends an empathetic recovery email offering a Loom recording alternative, and flags the deal in HubSpot for manual outreach within 2 hours. Agency onboarding**: A marketing agency conducts discovery calls with new clients. If a client misses their scheduled kickoff meeting, the workflow logs the no-show, updates the client status in their CRM, and sends a friendly rescheduling email with three alternative time slots—all before the account manager even notices. Customer success**: A customer onboarding team tracks training session attendance. When users don't join their scheduled implementation calls, the workflow automatically sends a resource-rich email with documentation links, notifies the CSM team channel, and schedules a follow-up task in their project management tool.
by Daniel Rosehill
Who's it for This workflow is perfect for individuals, small businesses, or households who need to: Automatically process and categorize expense receipts Extract structured data from invoices and receipts using AI Store receipts in multiple locations (Google Drive and S3) Send automated email notifications with expense details Send documents to accounting systems via email hooks How it works This comprehensive expense processing workflow combines AI-powered document analysis with automated file management and notifications. Here's the complete flow: Form Submission: Users submit expenses through a web form with receipt upload and category selection (Personal, Business, or Shared/Home) AI Document Processing: The workflow extracts text from PDF receipts using OCR, then uses Google Gemini AI to parse and structure the data into a standardized JSON format including vendor details, amounts, dates, and categorization Smart Routing: Based on the expense category, receipts are automatically routed to different processing paths with category-specific folder organization Multi-Destination Storage: Receipts are uploaded to: Google Drive (organized by year/month folders) S3 cloud storage buckets Different destinations based on expense type Email Notifications: Sends formatted HTML email notifications with complete expense details and links to stored receipts Accounting System Integration: Automatically forwards business expenses to accounting systems via email hooks (customizable per user requirements) Requirements Credentials needed: Google Gemini API**: For AI-powered document analysis Google Drive OAuth2**: For personal and business drive access Gmail OAuth2**: For sending email notifications S3 Storage**: For cloud backup (AWS S3, Wasabi, etc.) Services used: Google Drive (multiple accounts supported) Google Gemini AI Gmail S3-compatible storage Form trigger webhook How to set up Step 1: Configure Credentials Set up Google Gemini API credentials in n8n Configure Google Drive OAuth2 for both personal and business accounts Add Gmail OAuth2 credentials Set up S3 storage credentials Step 2: Update Configuration Replace all placeholder values: YOUR_GEMINI_CREDENTIAL_ID with your Gemini credential ID YOUR_PERSONAL_GDRIVE_CREDENTIAL_ID with personal Drive credential YOUR_BUSINESS_GDRIVE_CREDENTIAL_ID with business Drive credential YOUR_GMAIL_CREDENTIAL_ID with Gmail credential YOUR_S3_CREDENTIAL_ID with S3 credential Update Google Drive folder structure: Replace YOUR_BUSINESS_DRIVE_ID and YOUR_SHARED_DRIVE_ID with actual drive IDs Update the JavaScript code in the three Code nodes with your actual folder mapping Configure email addresses: Replace user@example.com with your notification email Replace receipts@paperless-service.com with your accounting system's email hook (this is a mail hook for uploading documents to small business accounting systems - can be modified per user requirements) Update S3 bucket names: Replace business-expenses, personal-expenses, and shared-expenses with your bucket names Step 3: Set Up Folder Structure Create organized folder structures in your Google Drives: Drive Root/ ├── 2024/ │ ├── January/ │ ├── February/ │ └── ... (all months) ├── 2025/ │ ├── January/ │ └── ... (all months) └── 2026/ └── ... (all months) Step 4: Test the Workflow Activate the workflow Submit a test expense through the form Verify files are uploaded to correct locations Check email notifications are received How to customize the workflow Expense Categories Modify the form dropdown options and conditional logic to add/remove expense categories: Edit the "On form submission" node form fields Update the IF condition nodes for routing Add new processing paths as needed AI Processing Schema Customize the structured output parser schema to extract different fields: Modify the JSON schema in the "Structured Output Parser" node Update the AI system prompt for different extraction requirements Add new fields for specific business needs Storage Destinations Add or modify storage locations: Duplicate upload nodes for additional cloud services Modify folder organization logic in Code nodes Add new conditional routing for different storage rules Email Templates Customize the HTML email template: Edit the email message content in the Gmail node Add/remove expense fields in the table Modify styling and branding Folder Organization Update the JavaScript code in Code nodes to match your folder structure: Modify the CSV data with your actual folder IDs Change the date-based organization logic Add custom folder naming conventions Integration Extensions Extend the workflow with additional integrations: Add Slack notifications Connect to accounting software (QuickBooks, Xero) Integrate with expense management platforms Add approval workflows for business expenses
by ueharayuuki
This workflow provides a comprehensive weather reporting system with two main functionalities: a scheduled daily summary and an interactive AI agent for dynamic queries. Who's it for? This template is ideal for anyone who wants to stay updated on the weather, from individuals planning their day to teams needing automated daily briefings. It's also a great example for developers and n8n users who want to explore the capabilities of AI Agents and integrating external APIs in their workflows. What it does / How it works This workflow operates in two distinct modes: Scheduled Daily Summary: The workflow triggers automatically every day at 9:00 AM (customizable) or can be run manually. It fetches the latest weather data for a specified location (default is near Chiba, Japan) from the Open-Meteo API. It then formats a message with the day's maximum and minimum temperatures. Finally, it sends this summary to a designated Gmail address and a Slack channel. AI-Powered Forecasts via Chat: When you send a message to the Chat Trigger webhook, it activates the AI Agent. The AI Agent, powered by an OpenAI model, understands natural language questions like "What's the humidity right now?" or "Will it be warmer tomorrow?". The agent uses an HTTP Request tool to fetch real-time, specific data from the weather API to answer your question. The generated answer is then sent back to you via both Gmail and Slack. How to set up Configure Credentials: Add your credentials for OpenAI, Gmail, and Slack in the credentials menu. Set Your Location: In the Fetch Weather Data and HTTP Request Tool for AI nodes, update the latitude and longitude in the URL to your desired location. Update Email and Slack: In the Send Email Summary and Send AI Response via Email nodes, change the recipient email address to your own. In the Send Slack Summary and Send AI Response via Slack nodes, select your desired Slack channel. Adjust the Schedule: Modify the Schedule Trigger node to change the time or frequency of the daily summary. Activate the Workflow: Click the "Active" toggle in the top-right corner to enable the workflow. How to customize the workflow Change the Message:** You can easily customize the notification message in the Format Daily Summary node (for the summary) and in the Send... nodes for both flows. Add More Data:** The Open-Meteo API provides a wealth of data. You can fetch additional information like precipitation, wind speed, or UV index by modifying the URL in the HTTP Request nodes. Integrate Other Services:** Add other notification nodes like Discord, Telegram, or Microsoft Teams to send the weather reports to more platforms.
by Abdul Mir
Overview This workflow auto-generates a personalized research report on any prospect who books a call with you—using their LinkedIn profile and advanced web research. When a call is booked in your calendar, the system looks up the lead’s LinkedIn URL from a Google Sheets database. That profile is then scraped using Relevance AI to extract posts, experiences, and education. It also runs a deep-dive query on the person using Perplexity to uncover relevant news, insights, and context. This structured data is passed to an AI model that produces a clean profile summary, suggested pain points, and solution ideas. Finally, the system builds and sends you a fully formatted HTML report via email—ready to review before your meeting. Who’s it for Founders taking high-stakes sales calls SDRs/BDRs booking back-to-back meetings Agencies and consultants who want to personalize discovery calls Teams doing high-touch enterprise sales or B2B outreach How it works Triggered when a new call is booked via Cal.com Finds matching LinkedIn URL from a local database (Google Sheets) Scrapes public LinkedIn data via Relevance AI Runs a Perplexity query on the prospect for deeper context Formats the scraped data using Code nodes Sends structured info to AI to generate: A company + person profile Suggested pain points and solutions Formats everything into a clean HTML report Emails you the final summary to prep for the call Example use case > Someone books a call. You receive a report 2 minutes later in your inbox with: > - Their role, company, and latest posts > - What their business does > - Recent news and context from Perplexity > - Predicted pain points and how you might help > > You show up to the call prepped and ready How to set up Connect your Cal.com trigger (or replace with any booking tool) Set up your Google Sheet(s) with contact info + LinkedIn profiles Add Relevance AI API key and configure LinkedIn scraping (they have free credits) Link Perplexity API for web research Customize the AI prompts and report formatting Connect Gmail or preferred email provider to send reports Requirements Cal.com or other booking platform Google Sheets for lead storage Relevance AI account and API access Perplexity API key OpenAI or similar LLM for summarization Email integration (e.g. Gmail) How to customize Replace Cal.com with Calendly, SavvyCal, etc. Change AI prompt tone and structure of the report Add CRM push (e.g. log into HubSpot, Notion, or Airtable) Add Slack or Telegram notifications for call alerts Format reports as PDF instead of HTML for download
by Kumar SmartFlow Craft
🚀 How it works Runs daily at 06:00 UTC, pulls every Shopify product variant's stock level, calculates real sales velocity from the last 7 days of orders, then uses GPT-4o to predict stockout dates and decide whether to reorder — automatically. 🛍️ Fetches all Shopify product variants and current inventory quantities 📦 Pulls the last 7 days of orders and computes units sold per variant ⚡ Calculates sales velocity (units/day) and estimated days until stockout 🤖 AI Agent classifies risk: critical / high / medium / low and recommends reorder quantity (30-day demand + 20% safety buffer) 📧 Sends a formatted reorder request email to your supplier for high-risk variants 📊 Logs every decision (reordered or skipped) to Google Sheets for inventory tracking 🛠️ Set up steps Estimated setup time: ~15 minutes Shopify — create a Custom App in your Shopify Admin → Apps → Develop Apps; enable read_products and read_orders scopes; copy the Admin API Access Token OpenAI — connect your OpenAI API credential (GPT-4o) Gmail — connect Gmail OAuth2; replace supplier@example.com with your real supplier address Google Sheets — connect Google Sheets OAuth2; replace YOUR_REORDER_LOG_SHEET_ID with your sheet ID; create a sheet tab named Reorder Log Follow the sticky notes inside the workflow for per-node guidance 📋 Prerequisites Shopify store (any plan with Admin API access) OpenAI API key Gmail account for supplier notifications Google Sheets for reorder log Custom Workflow Request with Personal Dashboard kumar@smartflowcraft.com https://www.smartflowcraft.com/contact More free templates https://www.smartflowcraft.com/n8n-templates
by Deniz
Good to know: The workflow runs every hour with a randomized delay of 5–20 minutes to help distribute load. It records the exact date and time a lead is emailed so you can track outreach. Follow-ups are automatically scheduled two days after the initial email. How it works: After apify completes, the JSON data is retrieved and inserted into the proper JSON node (only the JSON is removed — nothing else). The agent then runs on its own, parsing the data and pushing it to Google Sheets. When a lead is emailed, the system tags it with the date and time for tracking. Two days later the workflow automatically triggers a follow-up, again on an hourly schedule with the same time delay. How to use: Start by connecting your apify account to retrieve data. Place the returned JSON into the designated JSON node. Configure your Google Sheet where the data will be stored. Adjust the time delay window or follow-up period if needed. Insert your email credentials and the message. Requirements: Apify account with active leads/data. Google Sheet for storing and managing parsed lead information. n8n credentials configured for your accounts. email credentials Customising this workflow: You can easily extend this template to include other CRMs, different time delays, or additional notification steps. For example, push new leads to Slack, send SMS notifications, or trigger downstream analytics dashboards automatically.
by Yusuke Yamamoto
This n8n template demonstrates how to use AI to fully automate the generation and scheduling of X (formerly Twitter) content based on a specific, predefined persona. Use cases are many: It's perfect for social media marketers looking to streamline content creation, individual experts building a consistent brand voice, or businesses aiming to drive traffic to specific services with a steady stream of relevant content. Good to know The AI model used in this workflow (via OpenRouter) requires an API key and will incur costs based on usage (typically a few cents per generation). The Blotato node used for posting is a third-party community node and requires a separate Blotato account. How it works This workflow is divided into two main processes: Content Generation and Content Posting. Content Generation Process: A Schedule Trigger kicks off the workflow every 4 hours. An AI Agent (LangChain) generates a post based on a detailed prompt defining a persona, purpose, and rules. A Code node refines the AI's output, ensuring the text ends naturally. The generated post is then saved to a Google Sheet with a "Not Posted" status, creating a content queue. Content Posting Process: The workflow retrieves one "Not Posted" item from the Google Sheet. An IF node checks the post's category to determine if an image is required. If an image is needed, it searches for and retrieves a matching image file from a specified Google Drive folder. The Blotato node posts the text (and image, if applicable) to the designated X (Twitter) account. A confirmation email is sent via Gmail to notify stakeholders of the successful post. Finally, the Google Sheet status is updated to "Completed" to prevent duplicate posts. How to use You can test the workflow anytime using the manual trigger. For production, adjust the posting frequency in the "Trigger: Every 4 Hours" node. The quality of the generated content is determined by the prompt. Edit the system message within the "AI: Generate X Post Content" node to customize the persona, purpose, tone of voice, etc. To generate posts with images, you must upload image files to the specified Google Drive folder. The filename must exactly match the post's category name (e.g., Evidence-based_Graph.png). Requirements An OpenRouter account (or another AI service account) for the LLM. A Blotato account for social media posting. A Google account for content management, image storage, and notifications (Sheets, Drive, Gmail). Customising this workflow Expand the workflow to post to other social media platforms supported by Blotato, such as Facebook or LinkedIn. Instead of posting immediately, add a human-in-the-loop approval step by sending the AI-generated draft to Slack or email for review before publishing. Replace the Schedule Trigger with a Webhook Trigger to generate and post relevant content based on external events, such as "when a new blog post is published."
by Trung Tran
SmartSupport Flow: Auto-Handle IT Requests from Email to JIRA with Slack notification Watch the demo video below: Who’s it for > This workflow is built for lean IT teams, office managers, and business operators who receive support requests via email and want to automate ticket creation, smart AI resolution advice, and seamless communication with both users and internal teams, all without lifting a finger. If your team is tired of manually triaging inbox requests, this AI-powered flow will transform your support handling process. How it works / What it does Trigger on New Email: Uses Gmail Trigger to detect new support request emails. Fetch Email Content: Retrieves the full message body and metadata. Check for Duplication: Skips processing if the email has already been handled (based on READ/UNREAD label). Mark as Read: Updates Gmail to mark the email as processed. Extract Structured Request: Uses the Support Request Reader Agent powered by OpenAI to extract: Request title Request description Requested by Department Category and priority Create Jira Ticket: A main issue is created in Jira using the structured request. Generate AI-Based Solution: Invokes the IT Support Advisor Agent to propose resolution(s). Post Comment to Jira: Adds the suggested solution(s) to the issue as a comment. Notify IT Team: Sends the ticket and context to a Slack channel for visibility and action. (Optional) Send Email to Requester: Currently deactivated. Can be enabled to acknowledge receipt. How to set up Gmail Integration Connect Gmail in the “Gmail Trigger” and “Get Email Content” nodes. OpenAI Configuration Use OpenAI API credentials in both the Reader and Advisor agent models. Jira Integration Authenticate your Jira account. Set project key and issue fields in the “Create Main Issue” node. Slack Notification Configure Slack connection and select a target channel. Set up Jira, Slack, Email Set your company Jira based URL, IT Support slack channel and IT Support email in the Edit Fields (Set) node (Optional) Email Acknowledgment Provide SendGrid credentials and email template in the “Send email to requester” node if re-enabled. Requirements Gmail API access with appropriate permissions OpenAI account with API access (for GPT-4 or GPT-3.5) Jira instance with project and permission to create/comment on issues Slack workspace and Webhook or OAuth setup n8n instance running with all above integrations configured How to customize the workflow Enhance Email Deduplication**: Adjust the deduplication logic to use message-id, threadId, or custom headers. Expand Reader Agent**: Configure the LLM to extract more details such as asset tags, urgency levels, or locations. Tailor Advisor Agent**: Adjust prompt to generate multiple solutions, troubleshooting guides, or internal references. Routing by Department**: Add logic to forward requests to different teams based on the request category or department. Enable Email Acknowledgment**: Activate and customize the email notification step to inform requesters that their issue is being handled.
by WeblineIndia
Automated SEO Health Monitoring & Reporting This workflow automatically monitors the SEO health of websites stored in a Google Sheet. It fetches each website’s HTML, analyzes key SEO metrics (title, meta description, H1 count, canonical, robots, performance score, etc.) and updates results back into Google Sheets. If performance is poor (<50), it sends an alert email. For healthy sites, it generates a detailed PDF report and stores it in Google Drive. Who’s it for Digital marketing teams SEO agencies Website administrators who want automated SEO health checks Businesses with multiple websites or landing pages to monitor How it works Daily Trigger – Runs every day at 9 AM. Fetch Website List – Reads website URLs from Google Sheets. Crawl Websites – Uses HTTP requests to fetch each website’s HTML. SEO Analysis – Extracts SEO-related metadata (title, meta description, H1, etc.). Health Check – Scores SEO performance based on predefined rules. Decision Node – If score < 50 → Send alert email; else → Generate full SEO report. Update Logs – Logs results back into Google Sheets. Generate PDF Reports – Converts HTML reports into PDFs via PDF.co API. Save to Drive – Stores the PDF reports in Google Drive for long-term access. How to set up Open n8n and import the workflow. Configure your Google Sheets credentials and specify the sheet containing your website URLs. Add your Gmail account to allow automated alert emails. Set up your Google Drive credentials for storing PDF reports. Obtain an API key from PDF.co and configure the HTTP Request node. Adjust the Schedule Trigger to the time that works best (default: 9 AM daily). Test the workflow with a sample domain list. Requirements n8n instance (self-hosted or cloud) Google Sheets account (to store website URLs and logs) Gmail account (for sending alerts) Google Drive account (to save SEO reports) PDF.co API Key (for HTML → PDF conversion) How to customize Change performance threshold**: Modify the IF node condition (default <50). Custom SEO rules**: Edit the “SEO Health Check” Function node to add/remove checks (e.g., missing schema tags, page load times). Different output storage**: Replace Google Drive with Dropbox, S3 or OneDrive. Alternate notification channels**: Swap Gmail with Slack, Microsoft Teams or Telegram. Add-ons Send Slack/Teams notifications for low scores. Add PageSpeed Insights API for performance scoring. Generate weekly summary reports per domain. Integrate with Notion/Confluence to log SEO health history. Use Case Examples An SEO agency monitors 100+ client websites daily and sends alerts when a site has poor SEO signals. A company’s marketing manager gets a daily SEO health PDF report stored in Drive. A SaaS product team automatically logs performance changes for each release. Common Troubleshooting | Issue | Possible Cause | Solution | | ------------------------------------ | ------------------------------------------------ | --------------------------------------------------------------------------- | | Workflow fails at HTTP Crawl | Website blocks requests / timeout | Increase timeout in Set Config node or add retry logic. | | Always returns https://example.com | Missing canonical / OG tags in HTML | Enhanced code now infers from JSON-LD or domain detection. Update analyzer. | | PDF not generated | Invalid API key or wrong endpoint in PDF.co node | Verify PDF.co API key and endpoint URL. | | Email not sending | Gmail credentials not set or blocked | Reconnect Gmail in n8n credentials manager. | | Google Sheet not updating | Wrong column mapping in Update Sheet node | Check node mapping: domain column vs performance/date columns. | | Google Drive upload fails | Missing folder permissions | Ensure correct Drive folder ID and credentials. | Need Help? If you’d like assistance setting up, customizing or scaling this workflow for your use case, our n8n automation team at WeblineIndia can help you: Tailor SEO rules for your industry. Connect to additional APIs (Ahrefs, Semrush, PageSpeed). Automate weekly/monthly reporting with summary dashboards.