by Meak
Google Sheets → Personalized Email Reply Automation with OpenAI + Gmail Most teams reply to inbound leads manually — copying info from a CRM, drafting a response, and hitting send. This workflow automates lead intake, draft generation, and sending — directly from a Google Sheet trigger. Benefits Pull new leads and context automatically from Google Sheets Generate professional HTML replies with OpenAI Personalize each response using lead name, intent, and message Send replies via Gmail with your real display name + signature Save hours per week on repetitive inbox work How It Works Manual trigger starts the workflow Reads rows from Google Sheets (Email, First Name, Intent, Message) Fetches Gmail sendAs to capture display name for signature Calls OpenAI model (via n8n LangChain node) to generate HTML reply Sends email via Gmail node with subject = "Re:" + Intent and HTML body Continues for each row, even if one fails (alwaysOutputData enabled) Who Is This For Founders handling inbound leads manually SDRs and sales teams replying to prospects Agencies wanting consistent, on-brand email responses Setup Connect Google Sheets (replace with your Document ID + Sheet Name) Connect Gmail (OAuth2) and enable sendAs retrieval Add OpenAI API credentials (choose GPT-4/5 or Claude model) Set Gmail node emailType = html for proper formatting Test with a few leads before running in bulk ROI & Monetization Save 3–5 hours per week on manual email drafting Use as a client-facing “Inbox Automation” service Bundle with CRM sync or Zapier handoff for $500–$2k/month retainers Strategy Insights In the full walkthrough, I show how to: Build this system step by step in n8n Craft prompts that output clean HTML with signature Handle edge cases (missing fields, null intents) gracefully Turn this into a recurring email automation offer Check Out My Channel For more advanced AI automation systems that generate real business results, check out my YouTube channel where I share the exact strategies I use to build automation agencies, sell high-value services, and scale to $20k+ monthly revenue.
by Kaden Reese
Sync Open House Leads to HubSpot CRM Automatically capture and sync every open house visitor from SignSnapHome.com directly into HubSpot with intelligent lead scoring, automated follow-up emails, and comprehensive contact enrichment. Full Blog Writeup and Setup Video Overview This n8n workflow connects SignSnapHome (open house sign-in app) directly to HubSpot CRM. Every visitor who signs in at your open house is automatically created or updated as a contact in HubSpot, scored as HOT/WARM/COLD lead, and sent a personalized thank you email. Full Setup Tutorial: https://youtu.be/5GrrojIXr40 Perfect for: Real estate agents, brokerages, property managers, and home builders using SignSnap Home for open house sign-ins. Key Features Intelligent Lead Scoring (0-100 points) Base score: 50 points No real estate agent: +30 points High rating (4-5): +20 points Low rating (1-2): -20 points No buyer agreement: +10 points Final status: HOT (70+), WARM (50-69), COLD (0-39), OPEN (40-49) Automated Email Follow-Up Immediate personalized thank you email Conditional messaging based on agent status Different content for leads without agents (offers home buying assistance) Always includes invitation to ask questions Smart Contact Management UPSERT functionality (updates existing or creates new - no duplicates) Sets lifecycle stage to "Lead" Tags source as "Open House" with SignSnap attribution Comprehensive notes with visit details and scoring Flexible Custom Field Support Automatically detects ANY custom fields from your form No workflow modification needed for new fields Formats field names nicely (snake_case → Title Case) Workflow Structure Nodes: Webhook: SignSnap Home - Receives POST data Parse SignSnap Data - Processes and scores leads Has Email? - Validates required field Create/Update HubSpot Contact - Upserts contact Send Thank You Email - Automated follow-up Log Missing Email - Error handling Flow: SignSnap → Parse & Score → Email Check → HubSpot + Email └→ Log Error Setup Instructions Prerequisites SignSnap Home account HubSpot account (free or paid) SMTP email service (Gmail, SendGrid, etc.) n8n instance (self-hosted or cloud) Configuration Steps Configure HubSpot Credentials Add HubSpot OAuth2 credential in n8n Follow OAuth flow to connect Configure Email Credentials Add SMTP credential in n8n Test connection Update Email Settings Open "Send Thank You Email" node Change fromEmail to your address Customize footer if desired Activate & Connect Activate workflow in n8n Copy webhook URL Go to SignSnapHome.com → Settings → Automations Paste webhook URL Enable "Send on each submission" Optional: Custom HubSpot Properties Create these properties in HubSpot (Settings → Properties) for enhanced tracking: last_open_house_property (Text) - Property address visited last_open_house_date (Date) - Visit timestamp has_real_estate_agent (Dropdown) - Yes/No/Not specified property_interest_rating (Number) - 1-5 scale lead_score (Number) - Calculated score lead_status (Dropdown) - HOT/WARM/COLD/OPEN Note: Workflow functions without these - they enhance reporting only. What Gets Synced To HubSpot: Email, first name, last name, phone Lifecycle stage: "Lead" Lead source: "Open House" Visit details in notes (property, date, agent status, rating) Lead score and status All custom form fields Email Sent: Personalized greeting with first name Thank you for visiting [property] Conditional offer to help (if no agent) Invitation to ask questions Professional signature Lead Scoring Logic | Factor | Points | Reasoning | |--------|--------|-----------| | Base | 50 | Starting point | | No Agent | +30 | Available, not represented | | Rating 4-5 | +20 | High interest | | Rating 1-2 | -20 | Low interest | | No Buyer Agreement | +10 | Not contractually bound | Email Personalization Without Agent: > Hi [Name]! Thank you for visiting [Property] today. Our team would love to help you on your home buying journey! We specialize in this area and can provide exclusive listings and personalized service. If you have any questions... With Agent: > Hi [Name]! Thank you for visiting [Property] today. If you have any questions about this property or would like to schedule another viewing, please don't hesitate to reply... Error Handling No Email Provided: Cannot create HubSpot contact (email required) Lead logged to error output Can connect to Google Sheets or alert system Recommendation: Make email required in SignSnap Customization Ideas Auto-assign to agent - Match property to territory Create deals - Automatic deal creation for HOT leads Add to lists - Property-specific list segmentation Trigger workflows - HubSpot nurture sequences SMS follow-up - Add Twilio for text messages Photo upload - Attach guest photos to contacts Troubleshooting "Invalid email" - Check SignSnap email validation "Property doesn't exist" - Create custom property or remove from config "Authentication failed" - Reconnect HubSpot OAuth2 "No contacts appearing" - Check execution history, verify email provided "Email not sending" - Verify SMTP credentials and FROM address Analytics & Reporting Create these HubSpot reports: Open house conversion funnel Property performance by address Lead quality distribution (HOT/WARM/COLD) Agent performance metrics Source ROI analysis Use Cases Solo agents: Instant lead capture and follow-up Real estate teams: Centralized lead database Brokerages: Multi-agent, multi-property tracking Property managers: Attendance monitoring Home builders: Model home visitor capture Technical Details Endpoint: /signsnap-hubspot Method: POST Content-Type: application/json Processing Time: <2 seconds Error Rate: <1% (typically missing email only) Why Use This Workflow Zero manual data entry Instant lead scoring and prioritization Automated multi-channel follow-up No transcription errors Scales to unlimited open houses Works for solo agents or large teams Tags real-estate crm hubspot lead-management open-house signsnap automation contact-sync email-automation lead-scoring Difficulty: Intermediate Nodes: 6 Services: SignSnap Home, HubSpot, SMTP Setup Time: ~15 minutes
by Hunyao
Upload a PDF and instantly get a neatly formatted Google Doc with all the readable text—no manual copy-paste, no messy line breaks. What this workflow does Accepts PDF uploads via a public form Sends the file to Mistral Cloud for high-accuracy OCR Detects and merges page images with their extracted text Cleans headers, footers, broken lines, and noise Creates a new Google Doc in your chosen Drive folder Writes the polished markdown text into the document What you need Mistral Cloud API key with OCR access Google Docs & Drive credentials connected in n8n Drive folder ID for new documents A PDF file to process (up to 100 MB) Setup Import the workflow into n8n and activate credentials. In Trigger • Form Submission, copy the webhook URL and share it or embed it. In Create • Google Doc, replace the default folder ID with yours. Fill out Mistral API key under Mistral Cloud API credentials. Save and activate the workflow. Visit the form, upload a PDF, name your future doc, and submit. Open Drive to view your newly generated, clean Google Doc. Example use cases Convert annual reports into editable text for analysis. Extract readable content from scan-only invoices for bookkeeping. Turn magazine PDFs into draft blog posts. Digitize lecture handouts for quick search and annotation. Convert image-heavy landing pages / advertorials into editable text for AI to analyze structure and content.
by Robert Breen
🧑💻 Description This workflow automatically fetches new Gmail messages since the last run and appends them into a Google Sheet with their ID, snippet, and timestamp. It’s designed for professionals, small business owners, and operations teams who need a simple way to keep an ongoing log of emails, build lightweight CRMs, or power downstream automations like email tracking, reporting, or follow-up reminders. ⚙️ Setup Instructions for Gmail → Google Sheets Email Log 1️⃣ Connect Gmail In n8n → Credentials → New → Gmail OAuth2 Log in with your Gmail account & approve access Attach this credential to the Get new messages node in the workflow 2️⃣ Connect Google Sheets Copy this Google Sheet template into your own Drive In n8n → Credentials → New → Google Sheets (OAuth2) → log in with your Google account & save In the workflow, select your Spreadsheet ID and Worksheet (Sheet1 by default) in the Google Sheets nodes 🧠 How Email Logging Automation Works Get Current Emails** → Reads the last logged messages from Google Sheets Get Max Date** → Finds the most recent email timestamp Combine** → Passes the last timestamp and today’s date together Get New Messages** → Fetches all new Gmail messages after the last logged date Add Emails to Sheets** → Appends message ID, snippet, and date to the sheet 🎛️ Customization Guidance Filter by Sender or Subject** → Modify the Gmail query to only log messages from specific addresses or with certain keywords. Track Labels** → Add Gmail labels to your sheet to separate categories (e.g., “Leads,” “Support,” “Invoices”). Auto-Reply** → Extend with an additional Gmail node to send automated responses to new messages. Send Alerts** → Add a Slack or Email node to ping your team whenever a new email is logged. Analytics** → Use Google Sheets formulas or connect to BI tools to analyze trends like response times or sender frequency. 📬 Contact Need advanced customization (e.g., multi-inbox tracking, CRM integration, or automated follow-ups)? 📧 robert@ynteractive.com 🔗 Robert Breen 🌐 ynteractive.com
by Wessel Bulte
Description This workflow is a practical, “dirty” solution for real-world scenarios where frontline workers keep using Excel in their daily processes. Instead of forcing change, we take their spreadsheets as-is, clean and normalize the data, generate embeddings, and store everything in Supabase. The benefit: frontline staff continue with their familiar tools, while data analysts gain clean, structured, and vectorized data ready for analysis or RAG-style AI applications. How it works Frontline workers continue with Excel** – no disruption to their daily routines. Upload & trigger** – The workflow runs when a new Excel sheet is ready. Read Excel rows** – Data is pulled from the specified workbook and worksheet. Clean & normalize** – HTML is stripped, Excel dates are fixed, and text fields are standardized. Batch & switch** – Rows are split and routed into Question/Answer processing paths. Generate embeddings** – Cleaned Questions and Answers are converted into vectors via OpenAI. Merge enriched records** – Original business data is combined with embeddings. Write into Supabase** – Data lands in a structured table (excel_records) with vector and FTS indexes. Why it’s “dirty but useful” No disruption** – frontline workers don’t need to change how they work. Analyst-ready data** – Supabase holds clean, queryable data for dashboards, reporting, or AI pipelines. Bridge between old and new** – Excel remains the input, but the backend becomes modern and scalable. Incremental modernization** – paves the way for future workflow upgrades without blocking current work. Outcome Frontline workers keep their Excel-based workflows, while data can immediately be structured, searchable, and vectorized in Supabase — enabling AI-powered search, reporting, and retrieval-augmented generation. Required setup Supabase account Create a project and enable the pgvector extension. OpenAI API Key Required for generating embeddings (text-embedding-3-small). Microsoft Excel credentials Needed to connect to your workbook and worksheet. Need Help 🔗 LinkedIn – Wessel Bulte
by Elegant Biztech
Automated QuickBooks Payment Reminders with Dynamic Invoice Tables This workflow provides a powerful solution for businesses using QuickBooks Online to automate their payment reminder process. It solves the time-consuming and manual task of chasing late payments by creating a fully automated system that ensures every customer with an outstanding balance receives a timely, professional, and consolidated reminder email. The workflow periodically fetches all unpaid invoices from your QuickBooks account. Its core strength lies in its ability to group multiple outstanding invoices for a single customer into one email, presenting them in a clean, easy-to-read table. This improves clarity for your customers, reduces email clutter, and significantly increases the likelihood of prompt payment. This template was crafted with care by the team at Prompt-Wizards to help you streamline your finances and build stronger customer relationships through smart automation. How the Workflow Operates Scheduler: The workflow initiates on a customizable schedule (e.g., every day at 9 AM). Get Unpaid Invoices: It fetches all invoices from your QuickBooks account that have an outstanding balance greater than zero and were created within a specified date range. Get Customer Wise Invoice list: This Code node intelligently processes the list of invoices and groups them by customer name, preparing the data for email generation. Invoice Template: This Code node dynamically generates a beautiful, responsive HTML email for each customer, complete with a personalized greeting, an invoice table, and the total amount due. Send Reminder Email: The final node sends the uniquely crafted email to the customer's billing address on file. Prerequisites Before you begin, please ensure you have the following: An active n8n instance. A QuickBooks Online account with API access. An email service (e.g., SMTP, Gmail, Outlook) connected to n8n as credentials. Step-by-Step Setup Guide Follow these instructions carefully to configure the workflow for your business in under 5 minutes. 1. Connect Your QuickBooks Account You must authenticate your QuickBooks account to allow n8n to fetch invoice data. Select the Get Unpaid Invoices node. In the Credentials section on the right, either select your existing QuickBooks account from the dropdown or click Create New to connect your account. (Optional): In the Options section of this node, you can adjust the TxnDate filter. It is pre-set to look at invoices from the last 90 days. You can change this date range to suit your needs. 2. Personalize the Email Template Personalize the email to match your brand and include your payment information. Open the Invoice Template node. Inside the code editor, find and replace these two placeholder values: Your Payment Link: On line 115, find href="https://your-payment-portal-link.com" and replace the placeholder URL with a link to your actual payment portal or website. Your Company Details: On line 120, find Your Company Name | ... and replace the placeholder text with your real company name and address in the email footer. 3. Configure Your Email Account You must connect the email account you want to send reminders from. Select the Send Reminder Email node. In the Credentials section, select your email account (e.g., Gmail, Outlook) or create a new connection. The To Address, Subject, and HTML fields are already configured with expressions to work automatically. No changes are needed here! 4. Activate the Workflow Open the Scheduler node to set the schedule for how often you want the workflow to run. Save the workflow using the button at the top. Click the Active toggle at the top right of the screen. Your automated payment reminder system is now live!!! For questions or to explore more custom solutions, visit us at Elegant Biztech or contact us at sales@elegantbiztech.com.
by WeblineIndia
Daily Weather Reports with OpenWeather API, Google Sheets, and Gmail This workflow fetches real-time weather data from the OpenWeather API, stores it in a Google Sheet, formats it into a beautifully styled HTML report and emails it to recipients automatically every day at 10:00 AM. It helps teams track and monitor daily weather trends and optionally correlate them with energy production or field operations. Who’s it for? Renewable energy teams monitoring solar/wind energy output vs weather Facility or operations managers requiring daily climate updates Researchers or analysts logging environmental metrics Any team needing automated, daily weather reports by email How it works? The workflow begins with a Schedule Trigger set to run at 10:00 AM IST daily. It calls the OpenWeather API to fetch weather metrics for a predefined location. The data is then passed to a Google Sheets node named "Append Weather to Sheet", which stores all the key values into a structured spreadsheet. A Set or Function node generates a clean, styled HTML email using inline CSS and the weather values. Finally, a Gmail node sends this report to one or more recipients with a clear subject line and formatted body. How to set up? Create/Open your n8n instance (Cloud or Self-hosted). Connect the following credentials: Google Sheets (OAuth2) Gmail (OAuth2) Set your OpenWeather API key in the HTTP Request node (api.openweathermap.org). Replace latitude/longitude in the request URL as per your location. Link a Google Sheet and define the correct tab name and headers. Configure recipient email(s) in the Gmail node. Deploy the workflow and test. Requirements n8n account (self-hosted or cloud) OpenWeather API key (free or paid) Google account with access to: Google Sheets Gmail A valid Google Sheet created with the following headers (columns): Country Location Latitude Location Longitude Temperature (°C) Feels Like (°C) Min Temp (°C) Max Temp (°C) Humidity (%) Pressure (hPa) Sea Level (hPa) Ground Level (hPa) Visibility (m) Wind Speed (m/s) Wind Direction (°) Wind Gust (m/s) Cloudiness (%) Sunrise (UTC) Sunset (UTC) Date Time (UTC) How to customize? Change the scheduled time in the Schedule Trigger node. Modify the location coordinates in the OpenWeather API URL. Update the HTML template with different formatting or styling. Add a second email or sheet for energy output to correlate with weather. Extend the workflow with Slack, Notion, or Telegram alerts. Add‑ons Integrate with a solar energy API to track power production with weather. Post weather summaries to Notion, Slack or internal dashboards. Generate a visual chart in Google Sheets over time using the collected data. Trigger alerts when specific thresholds are exceeded (e.g., wind gust > 10 m/s). Use Case Examples Solar farm reporting**: Monitor daily weather impact on solar panel output. Logistics planning**: Notify teams of visibility or wind risks before dispatch. Site operations**: Send forecasts to maintenance or ground staff. Academic/weather logging**: Track atmospheric data over time. Common Troubleshooting | Issue | Possible Cause | Solution | | ------------------------------ | ---------------------------------------- | --------------------------------------------------------- | | Email not sent | Gmail credentials not connected properly | Reconnect Gmail account via n8n credential manager | | Weather data is missing fields | API response changed or API key invalid | Verify OpenWeather API key and URL format | | Google Sheet not updating | Incorrect spreadsheet ID or tab name | Double-check spreadsheet ID and sheet name in node | | HTML email renders incorrectly | Broken or missing tags in HTML | Test output HTML separately in browser/email preview tool | Need Help? If you need assistance setting up or customizing this workflow, feel free reach out. We’re here to help!
by David Olusola
Inventory Low Stock Alerts E-commerce Automation This n8n template automatically monitors your Shopify inventory levels and sends alerts when products fall below your defined threshold. Prevent stockouts and maintain sales revenue with proactive inventory management. Good to know Default threshold is 10 units but easily customizable in the Code node Monitors all product variants individually Runs daily at 9 AM but schedule is fully adjustable Only sends alerts when action is needed (no empty notifications) How it works The schedule runs daily at 9 AM and connects to Shopify to download all products and variants. The workflow loops through every product and variant, checking inventory quantity for each item. It compares current stock against your threshold (default: 10 units) and identifies items below threshold. If any low stock items are found, it creates a comprehensive list and formats an alert message. The formatted report is sent to your Slack team so they can take immediate restocking action. Set up instructions Set up Shopify credentials in n8n: API Key, Password, Shop Subdomain, and Shared Secret The schedule trigger runs daily at 9 AM but feel free to adjust timing based on your business needs Modify "lowStockThreshold" variable in the Code node (default is set to 10 units) Set up Slack credentials and create a dedicated #inventory channel for alerts Ensure your Shopify products have inventory tracking enabled in product settings Test the workflow manually to verify it correctly identifies low-stock items What team sees: "🚨 Low Stock Alert! T-Shirt Blue (Medium): 3 left Coffee Mug (White): 7 left Phone Case (Black): 2 left" Business logic: Stock above threshold equals no alert. Stock at or below threshold equals alert sent. Stock at zero equals out of stock which is critical. Customising this workflow Add email alerts for critical out-of-stock items Set different thresholds for different product categories Include supplier contact information in alerts
by Rahul Joshi
Description Automatically convert structured Slack messages into Jira issues with parsed titles, descriptions, and priorities. This workflow also downloads file attachments from Slack (e.g., screenshots, logs, or documents) and uploads them directly into the created Jira issue. It then confirms success back to the Slack channel, ensuring transparency and seamless collaboration. 📋💬📎 What This Template Does Monitors a designated Slack channel for new issue reports. 🔔 Parses Slack message text with regex to extract title, description, priority, and type. 🧠 Creates a new Jira issue with the structured data. 🎫 Detects and processes attachments, splitting multiple files into batches. 📂 Downloads files from Slack using secure URLs and Slack bot authentication. 🔑 Uploads attachments directly into the created Jira issue. 📎 Sends a Slack confirmation with Jira issue key, link, and summary details. ✅ Key Benefits Eliminates manual Jira ticket creation from Slack messages. ⏱️ Preserves critical context by attaching screenshots, logs, and documentation. 📎 Ensures structured, standardized issue reporting across teams. 🔄 Provides instant Slack confirmation with direct Jira links. 📲 Handles multiple attachments gracefully with batch processing. ⚡ Features Slack Trigger – Monitors specific channels for new issue messages. 💬 Message Parsing Engine – Extracts title, description, priority, and type using regex + fallback logic. 📝 Jira Integration – Creates structured Jira issues with proper fields (summary, description, priority, type). 🎫 Attachment Handling – Splits, downloads, and uploads Slack files into Jira automatically. 📂 Slack Confirmation – Sends formatted success messages with clickable Jira links. 🔗 Robust Data Handling – Supports rich text, multiple files, and smart mappings of Slack priorities to Jira. 🧠 Requirements n8n instance (cloud or self-hosted). Slack Bot API credentials with channels:history, files:read, and chat:write permissions. Jira Software Cloud API credentials with project and issue creation permissions. Pre-configured Slack channel for reporting issues. Jira project set up with supported issue types (bug, task, feature, etc.). Target Audience Software development teams managing issue intake from Slack. 👩💻 QA and testing teams reporting bugs directly from Slack. 🧪 IT support teams needing structured Jira issues with attachments. 🛠️ Agile teams looking for seamless Slack → Jira integration. 🚀 Remote teams requiring real-time visibility into Jira issue creation. 🌐 Step-by-Step Setup Instructions Connect Slack and Jira credentials in n8n. 🔑 Configure the Slack channel ID to listen for issue reports. 💬 Map Jira project and issue type IDs in the “Create Jira Issue” node. 🎫 Customize parsing logic for message formats (default: Title: X, Description: Y, Priority: Z). 📝 Ensure Slack files can be downloaded with your bot token (files:read scope). 📂 Test with a sample message containing a title, description, and attachment. ✅ Deploy and monitor Slack → Jira issue creation in real-time. ⚡
by Rahul Joshi
📘 Description: This workflow automates the incident response lifecycle — from creation to communication and archival. It instantly creates Jira tickets for new incidents, alerts the on-call Slack team, generates timeline reports, logs the status in Google Sheets, and archives documentation to Google Drive — all automatically. It helps engineering and DevOps teams respond faster, maintain audit trails, and ensure no incident details are lost, even after Slack or Jira history expires. ⚙️ What This Workflow Does (Step-by-Step) 🟢 Manual Trigger – Start the incident creation and alerting process manually on demand. 🏷️ Define Incident Metadata – Sets up standardized incident data (Service, Severity, Description) used across Jira, Slack, and Sheets for consistent processing. 🎫 Create Jira Incident Ticket – Automatically creates a Jira task with service, severity, and description fields. Returns a unique Jira key and link for tracking. ✅ Validate Jira Ticket Creation Success – Confirms the Jira ticket was successfully created before continuing. True Path: Proceeds to Slack alerts and documentation flow. False Path: Logs the failure details to Google Sheets for debugging. 🚨 Log Jira Creation Failures to Error Sheet – Records any Jira API errors, permission issues, or timeouts to an error log sheet for reliability monitoring. 🔗 Combine Incident & Jira Data – Merges incident context with Jira ticket data to ensure all details are unified for downstream notifications. 💬 Format Incident Alert for Slack – Generates a rich Slack message containing Jira key, service, severity, and description with clickable Jira links. 📢 Alert On-Call Team in Slack – Posts the formatted message directly to the #oncall Slack channel to instantly notify engineers. 📋 Generate Incident Timeline Report – Parses Slack message content to create a detailed incident timeline including timestamps, service, severity, and placeholders for postmortem tracking. 📄 Convert Timeline to Text File – Converts the generated timeline into a structured .txt file for archival and compliance. ☁️ Archive Incident Timeline to Drive – Uploads the finalized incident report to Google Drive (“Incident Reports” folder) with timestamped filenames for traceability. 📊 Log Incident to Status Tracking Sheet – Appends Jira key, service, severity, and timestamp to the “status update” Google Sheet to build a live incident dashboard and enable SLA tracking. 🧩 Prerequisites Jira account with API access Google Sheets for “status update” and “error log” tracking Slack workspace connected via API credentials Google Drive access for archival 💡 Key Benefits ✅ Instant Slack alerts for new incidents ✅ Centralized Jira ticketing and tracking ✅ Automated timeline documentation for audits ✅ Seamless Google Drive archival and status logging ✅ Reduced MTTR through faster communication 👥 Perfect For DevOps and SRE teams managing production incidents Engineering managers overseeing uptime and reliability Organizations needing automated post-incident documentation Teams focused on SLA adherence and compliance reporting
by WeblineIndia
Background Verification Executive Digest Automation: Track Completed & Pending Verifications via Email (from Google Sheets) This automation sends a daily late-night email summary to each Background Verification (BGV) executive — straight out of your “BGV Tracker” Google Sheet. Each executive gets their own digest listing candidates whose background checks were completed today and which ones are still pending, complete with clear “stale” alerts for overdue follow-ups. The workflow runs reliably via n8n, auto-grouping entries and packaging the results in a user-friendly tabular email, every day at 23:00 IST. Who’s it for BGV team leads & vendors** who want automatic updates on their queue. HR managers** looking to automate candidate tracking without manual report compilation. Ops teams** with Google Sheets-based BGV tracking wanting digest emails for each owner. Any organization managing candidate checks across multiple owners/executives. How it works Schedule Trigger: Runs every night at 23:00 IST (Asia/Kolkata), weekends OFF by default. Google Sheets: Reads all rows from your “BGV Tracker” (tab), using columns: candidate_name, previous_company, prevco_hr_name, prevco_hr_email bgv_status, last_follow_up, bgv_completion_date, bgv_executive, bgv_exe_email Code Node #1 (“Normalize & Parse”): Cleans and lower-cases all column names for consistency. Parses last_follow_up & bgv_completion_date from multiple local date formats. Adds helper flags: isCompletedToday, isStale (pending and last-follow-up ≥ 3 days). Code Node #2 (“Group & Filter”): Groups rows by bgv_exe_email (executive). Within each group: Segregates “Completed Today” and “Pending” items. Code Node #3 (“Format Digest”): Generates a personalized HTML email per executive, with two tables: Completed Today (with candidate/prevco info) Pending (with “stale” ⚠️ flags) Builds the subject line showing per-executive summary counts. Gmail Node: Sends the formatted email to each executive automatically. Can be customized for preview/test mode, CC or CSV attachments. How to set up Prepare Google Sheet: Create “BGV Tracker” tab (case-insensitive column names). Fill columns: candidate_name, previous_company, prevco_hr_name, prevco_hr_email, bgv_status, last_follow_up, bgv_completion_date, bgv_executive, bgv_exe_email n8n Configuration: Authenticate Google Sheets node (OAuth). Authenticate Gmail node (App Password recommended). Import workflow JSON and adjust credentials and sheet IDs. Test run (optional): Fill sample data in the sheet. Start workflow and review “dry run” outputs (optional). Activate workflow for daily auto-emails. Requirements A Google Sheet tab called “BGV Tracker” with supported columns. Gmail (SMTP or OAuth) credentials with permissions to send. n8n cloud or self-hosted, with Google and Gmail creds configured. How to customize Change run time:** Modify the Schedule Trigger for different hours/days. Weekend handling:** Add condition to skip Sat/Sun. Stale threshold:** Adjust the “>= 3 days” flag logic in code node. Email template:** Edit HTML layout, subject, header/footer as needed. Digest content:** Add/remove columns in the email tables within the code node. Preview/test mode:** Add a DRY_RUN variable and IF node for safe previewing before going live. Attachment/CC:** Add extra nodes to attach CSV, send summary to managers or post to Slack. Add‑ons Manager summary:** Aggregate all digests and send to HR head or ops manager. CSV exports:** Automatically attach filtered candidate lists per executive. Slack reminders:** DM executives with only their stale pending items. Auto-writeback:** Update next follow-up date in Sheet for stale cases. Use Case Examples BGV vendor:** Nightly queue email lets each checker focus on fresh items to close first. Recruiter audit:** HRBP gets an easy, nightly record of outstanding verifications, with overdue flags for fast escalation. Multi-client projects:** Divide the worksheet, send only relevant candidates to each exec, boosting clarity and compliance. Common Troubleshooting | Issue | Possible Cause | Solution | |-------------------------------|-------------------------------------------------|----------------------------------------------| | No emails sent | SMTP/Gmail credentials missing or expired | Re-authenticate Gmail node; check permissions| | Some candidates missing | Sheet has missing/invalid bgv_exe_email | Ensure every row has valid executive email | | Completed items not listed | Wrong/combo date formats in completion column | Use supported date format; ensure status="Completed" | | Pending doesn’t show stale | Last follow-up date out of expected format | Use supported date format & review data | | Workflow runs on weekends | Schedule misconfigured (or missed weekend filter)| Add/exclude Sat/Sun via config/node logic | | Pending pool includes “To be Sent” | Status filter in code not precise | Adjust code node filter to exclude explicitly| | Emails not delivered | Gmail sending limit exceeded | Add rate limit (wait node), check quota | Need Help? If you need a hand setting up, customizing or want to add more integrations (Slack, CSVs, approvals, etc.) reach out to us at WeblineIndia anytime. We can setup error handling, advanced templates and even help connect your flows to external systems!
by Praneel S
⚠️ Disclaimer: This workflow uses Google Calendar and Gmail nodes which you will have to configure yourself Who’s it for Anyone who wants an AI-powered personal assistant that can handle Gmail and Google Calendar tasks through a simple webhook. This is useful for developers, small teams, and productivity enthusiasts who want to connect a chatbot (Discord, Telegram, WhatsApp, or custom frontends) to their email and calendar. How it works / What it does This workflow acts as a chat-based AI assistant. You send text requests through a webhook (e.g., from a chatbot), and the AI agent interprets them to take actions like: 📧 Sending emails in Gmail 📥 Reading and summarizing your emails 📅 Checking your Google Calendar events ✅ Checking your availability before booking 📝 Creating new calendar events with Google Meet links ✏️ Updating existing events ⏰ Converting natural time expressions like “tomorrow at 3 PM” into exact timestamps The AI agent is powered by the Google Gemini Chat Model (or any LLM you choose) and follows strict guardrails: Confirms actions before executing Asks for clarification if details are missing Prevents double-booking by checking availability How to set up Import this workflow into n8n. Set up credentials for: Gmail (OAuth2) Google Calendar (OAuth2) AI provider (Gemini, OpenAI, Claude, etc.) Configure the webhook node (/chat) as your chatbot endpoint. You can connect it to Discord, WhatsApp, Telegram, or a frontend app. Customize the AI Agent’s system prompt if you want to tweak tone or rules. Deploy and start sending messages like: “Check my emails from today” “Schedule a meeting with John tomorrow at 3 PM” “Email my team about the deadline extension” Requirements n8n installed and running (cloud or self-hosted) Gmail and Google Calendar accounts with API access API key for your chosen AI provider Webhook Chatbot interface How to customize Swap Google Gemini with another LLM node (e.g., OpenAI GPT or Anthropic Claude). Add more tools (e.g., Slack, Notion, Trello) to extend capabilities. Adjust memory length in the Simple Memory node. Modify sticky notes with instructions tailored to your use case. Disclaimer This workflow uses the community webhook entry point, so it is best suited for self-hosted n8n instances. Do not hardcode API keys or sensitive credentials. Always use n8n’s Credentials system. Other Details Thanks for viewing this automation! Feel Free to contact me at praneel.tech Also Use my Webhook chatbot interface Which is configured perfectly for n8n Automations!