by Jack Mason
Generate and send personalized lead emails from Google Sheets via OpenAI to Gmail with Slack alerts Description This template triggers when a new row appears in Google Sheets (from any intake form that writes to the sheet). It validates key fields, performs light deduplication by email or phone, and sends the data to OpenAI to generate a concise, brand-safe first-touch email. At the same time, the model classifies each lead as High, Medium, or Low based on your criteria for budget, services, and timeline. The email is sent immediately from your connected Gmail (or SMTP) account. The sales team is notified in Slack with the lead’s name, contact details, services of interest, budget, and a deep link to the exact Google Sheets row. The Google Sheet is then updated with send status, lead type, and a timestamp for easy tracking. Setup: Connect Google Sheets (read/write), Gmail/SMTP, Slack (webhook or app), and an OpenAI API key. Provide brief classifier rules and a short tone guide with one clear CTA (reply or booking link). Include a one-line opt-out in the email body to stay compliant. Expected headers are: Timestamp, Name, Email Address, Phone Number, Services Interested In, Budget Range, Preferred Contact Time, Project Timeline, and Additional Comments. The trigger checks the sheet every minute and processes after-hours submissions right away. You can extend the flow with calendar booking links, territory routing, or rate limits as needed.
by Gracewell
Title: Gracewell Automated Registration Tracker Suite version: 1.0 tags: [education, automation, google-sheets, gmail, dashboard, form-tracking, workflow-suite] category: Academic Automation Description: Automate the real-time tracking of Google Form submissions using Google Sheets and n8n. This 3-workflow suite includes a live dashboard with submission statistics and two companion workflows To send acknowledgement and reminder emails to students — all seamlessly connected through n8n webhooks. 🚀 Gracewell Automated Registration Tracker Suite A fully automated, real-time monitoring system for student form submissions — built with Google Sheets, Gmail, and n8n. The suite provides a live dashboard, auto-generated summary analytics, and instant messaging (email or WhatsApp) capabilities. 🧩 Workflow Suite Overview | Workflow | Purpose | Webhook | Output | |-----------|----------|----------|----------| | 1️⃣ Live Dashboard | Displays summary of submissions and includes trigger buttons | /live-tracking | HTML Dashboard | | 2️⃣ Send Acknowledgements | Sends thank-you emails to completed respondents | /send-acknowledgements | HTML Confirmation Page | | 3️⃣ Send Reminders | Sends personalized reminders to pending students | /send-reminders | HTML Confirmation Page | 🧠 Who Is This For Educators managing student registration or feedback Department coordinators tracking submission completion EdTech and training institutions handling digital enrolments Universities automating exam registration or attendance forms ⚙️ Problem It Solves Manual form tracking is slow, repetitive, and prone to error. This workflow suite provides: ✅ Automated reconciliation of student vs. response data ✅ Instant calculation of pending and completed submissions ✅ One-click acknowledgement and reminder dispatch ✅ Web-based dashboard with summary visualization 📊 Workflow 1: Live Tracking Dashboard Steps Google Sheets – Student List → Reads master student sheet Google Sheets – Form Responses → Reads live form entries Code Node → Compares Register Nos. and generates HTML dashboard Respond to Webhook → Displays HTML with summary and control buttons Output A clean web dashboard showing: Total, Submitted, Pending, Completion % ✅ Completed list and ⚠️ Pending list Two buttons: Send Acknowledgements Send Reminders 💌 Workflow 2: Send Acknowledgements Steps Webhook Trigger → /send-acknowledgements Google Sheets – Student List & Form Responses Merge Node → Combines matching rows Code Node → Generates personalized thank-you emails Gmail Node → Sends messages Respond Node → Displays confirmation message Email Template > Subject: ✅ Thank You for Your Submission > Body: > Dear {{name}}, > Thank you for completing your form (Reg No: {{reg}}). > We appreciate your prompt response. > – Gracewell ⚠️ Workflow 3: Send Reminders Steps Webhook Trigger → /send-reminders Google Sheets – Student List & Form Responses Merge Node → Aligns both data sets Code Node → Identifies pending students Gmail Node → Sends customized reminder Respond Node → Confirms completion Email Template > Subject: ⚠️ Reminder: Please Complete Your Form > Body: > Dear {{name}}, > You haven’t yet completed your form (Reg No: {{reg}}). > Please complete it at the earliest. > – Gracewell 🛠️ Setup Instructions Step 1 – Connect Accounts Connect Google Sheets (OAuth2) Connect Gmail for sending messages Step 2 – Prepare Sheets Student List Sheet:** Columns → Register No., Student Name, Contact, Email Form Response Sheet:** Columns → Timestamp, Reg No, Email Address Step 3 – Deploy URLs | Workflow | Webhook Endpoint | |-----------|------------------| | Dashboard | /live-tracking | | Acknowledgements | /send-acknowledgements | | Reminders | /send-reminders | 🎨 Optional Customizations Add institution name/logo to dashboard HTML Include charts (Chart.js) for submission visualization Auto-refresh every 60 seconds Integrate WhatsApp messaging via Twilio or Gupshup Log emails into a “Mail Logs” sheet 🧩 Version Summary | Workflow | Version | Description | |-----------|----------|-------------| | Live Dashboard | v3 | Interactive HTML dashboard with controls | | Send Acknowledgements | v1 | Personalized thank-you email sender | | Send Reminders | v1 | Automated reminder email sender | Need help customizing? ✉️ Contact Me 💼 LinkedIn ✨ Credits Developed by Dr. J. Jeffin Gracewell Empowering education through intelligent automation 💡 We are open for and Customizing development
by Davide
This workflow automates the entire Calendly onboarding and offboarding process for company users. It relies on form submissions, Google Sheets as a source of truth, AI-generated HR emails, man-in-the-loop approval steps, and direct API interactions with Calendly. Key Advantages ✅ Full Automation of Routine HR Processes The workflow removes the need for HR to manually add or remove Calendly users. It handles data collection, checks eligibility, interacts with Calendly’s API, and updates records automatically. ✅ Centralized Data Management All onboarding/offboarding data is stored and maintained in a Google Sheet, ensuring a single source of truth for user status and activity tracking. ✅ Built-in Human Validation (Man-in-the-Loop) HR receives automated approval emails and must validate each action before a Calendly account is created or removed. This ensures: security accuracy compliance with internal policies ✅ AI-Generated Professional Communication OpenAI generates polished, consistent HTML emails for HR, improving communication quality and reducing manual writing time. ✅ Clean Separation of Onboarding and Offboarding Paths Both processes are independent but structured similarly, making maintenance easier and ensuring consistent logic. ✅ Direct Integration with Calendly’s API The workflow automatically: creates invitations retrieves organization membership deletes users This eliminates manual operations inside Calendly, greatly reducing administrative workload. ✅ Error Reduction & Traceability Since every action is logged in the Google Sheet, HR can easily track: when onboarding/offboarding occurred whether approval was given if Calendly access is active ✅ Improved User Experience The final screens (“Onboarding complete”, “Offboarding complete”, “Not approved”) provide immediate feedback to the requester. The workflow contains two parallel automation paths: 1. Onboarding Workflow How it works User submits the Onboarding Form The form collects first name, last name, and email. User is appended to the Google Sheet A new record is added with date, name, email, and a placeholder for the Calendly status. AI-generated email is prepared OpenAI generates a full HTML email notifying HR about the onboarding request. HR receives an approval request via email Using Gmail’s “send and wait” feature, HR must approve or reject onboarding. If approved: The system calls Calendly’s API to invite the user to the organization. The Google Sheet record is updated (CALENDLY = on). The process ends with a confirmation page. If rejected: The workflow ends with a “Not approved” page. 2. Offboarding Workflow How it works User submits the Offboarding Form Only the email is required. The system checks the Google Sheet It verifies if the email exists and if the user currently has Calendly access. If the user exists, the workflow: Uses AI to generate a professional offboarding request email. Sends an approval prompt to HR. If HR approves: The workflow retrieves the user’s Calendly membership via API. Deletes the user from the Calendly organization. Updates Google Sheets (CALENDLY = off). Ends with a confirmation page. If approval is denied: The workflow ends with a “Not approved” screen. Here's a description of the Calendly Onboarding and Offboarding workflow for n8n: How It Works This workflow automates user onboarding and offboarding processes for Calendly with human approval steps. The system operates through two parallel streams: Onboarding Process: Users submit their information (first name, last name, email) through an onboarding form Data is automatically recorded in a Google Sheets spreadsheet An AI agent generates a professional HTML email notification for HR The email is sent to HR with a double-approval mechanism requiring manual confirmation If approved, the system automatically adds the user to Calendly organization via API The spreadsheet is updated to mark the user as "on" for Calendly access User receives a completion confirmation Offboarding Process: Users submit their email through an offboarding form The system checks Google Sheets to verify the user exists and has Calendly access An AI agent generates an offboarding notification email for HR approval After HR double-approval, the system retrieves the user's Calendly membership via API The user is automatically removed from Calendly organization The spreadsheet is updated to mark Calendly access as "off" User receives offboarding completion confirmation Set Up Steps Prerequisites: Google Sheets spreadsheet with columns: DATE, FIRST NAME, LAST NAME, EMAIL, CALENDLY Calendly organization ID and API access Gmail account for sending approval emails OpenAI API access for email generation Configuration Steps: Google Sheets Setup: Create a spreadsheet with the required column structure Configure Google Sheets OAuth credentials in n8n Update the document ID in all Google Sheets nodes Calendly API Configuration: Replace "XXX" placeholders in HTTP Request nodes with actual Calendly API bearer tokens Set the correct Calendly organization ID in the Set nodes Verify API endpoints match your Calendly organization structure Email System Setup: Configure Gmail OAuth credentials for sending approval emails Update recipient email address from "info@n3w.it" to your HR department's email Adjust approval timeout settings as needed (currently 45 minutes) Form Configuration: Deploy both onboarding and offboarding forms Test form submissions to ensure data flows correctly Customize completion messages for both success and rejection scenarios AI Email Generation: Verify OpenAI API credentials are properly configured Test email template generation for both onboarding and offboarding scenarios Adjust system prompts if different email formatting is required Workflow Activation: Test both onboarding and offboarding flows end-to-end Verify approval emails are received and functional Confirm Google Sheets updates correctly Activate the workflow once testing is complete Need help customizing? Contact me for consulting and support or add me on Linkedin.
by Anir Agram
📊 Google Sheets Leads → 🎲 Random Templates → ✉️ Personalized Emails → 📝 Status Tracking What this workflow does 📊 Reads leads list from Google Sheets (Name, Email, Send Status) 🔍 Filters out already-contacted leads (skips "SENT" status) 🎲 Randomly selects email template from template library ✏️ Personalizes subject and body with lead's name 📧 Sends emails one-by-one with delays between sends ✅ Updates Google Sheet with send status and timestamp 🔁 Loops through all unsent leads automatically Why it's useful ⚡ Automate cold outreach without manual copy-paste 🎯 Avoid duplicate sends—tracks who's been contacted 📝 Rotate email templates for A/B testing and variety 👤 Personalization makes emails feel human, not spammy ⏱️ Built-in delays prevent spam flags and rate limits 📊 Full audit trail of who received what and when How it works 📊 Google Sheets (Leads) → reads Name, Email, Send Status 🚦 IF Node → filters leads where Send Status ≠ "SENT" 🔄 Loop Over Items → processes leads one-by-one 📧 Google Sheets (Templates) → fetches Subject + Body templates 🎲 Code Node → picks random template 🔀 Merge → combines lead data with template ✏️ Edit Fields → replaces [Name] with actual lead name 📨 Send Email → delivers personalized message ⏳ Wait → adds delay between sends (avoids spam flags) ✅ Google Sheets (Update) → marks as "SENT" with timestamp What you'll need 📊 Google Sheet #1: Leads (columns: Name, Email, Send Status, Time) 📧 Google Sheet #2: Templates (columns: Subject, Body) 📬 SMTP credentials (SendGrid, Mailgun, etc.) 🔐 Google Sheets OAuth Setup steps 📊 Create "Leads" sheet with columns: Name | Email | Send Status | Time 📧 Create "Templates" sheet with columns: Subject | Body (use [Name] placeholder) 🔗 Connect Google Sheets OAuth credentials 📬 Add SMTP email credentials 🧭 Update both Google Sheets node IDs to point to your sheets ⚙️ Set "From Email" in Send Email node 🧪 Test with 2-3 test leads first Customization ideas ⏱️ Adjust Wait time (30s-5min) to control send rate 📊 Add click tracking with UTM parameters 🔔 Send Slack/Telegram notification when campaign completes 🎯 Add lead scoring—prioritize high-value leads first 📈 Log opens/replies to separate tracking sheet Who it's for 🧑💻 Freelancers doing cold outreach to agencies 📈 Sales teams running lead generation campaigns 🚀 Startups reaching out to potential customers 🎯 Marketers testing email copy variations 💼 Business developers nurturing prospect lists Quick Setup Guide Before You Start - What You Need: 📊 Google account for Sheets access 📧 SMTP email account (Gmail, custom domain, or email service) 📝 List of leads (names + emails) ✉️ Email templates ready (with [Name] placeholders) Want help customizing? 📧 anirpoke@gmail.com 🔗 LinkedIn
by Yusuke Yamamoto
This n8n template automates responses to customer inquiries about DHL shipment status, handling requests from both web forms and emails. Use cases Automate Customer Support**: Provide 24/7 instant answers to the common "Where is my order?" question without human intervention. Reduce Support Tickets**: Decrease the volume of repetitive tracking inquiries by providing customers with immediate, self-service information. Enhance Customer Experience**: Offer a consistent and rapid response across multiple channels (your website and email), allowing customers to use their preferred method of contact. Good to know DHL API Key is required**: You'll need to register on the DHL Developer Portal to get your API key. This workflow requires Gmail credentials (OAuth2) to monitor incoming emails and send replies. The webhook URL must be configured in your website's contact or tracking form to receive submissions. How it works The workflow is initiated by one of two triggers: a Webhook (from a website form) or a Gmail Trigger (when a new email arrives). A Merge node combines the data from both triggers into a single, unified flow. The "Extract Tracking Number" Code node intelligently parses the tracking number from either the form data or the email body. It also extracts the customer's name and email address. The HTTP Request node sends the extracted tracking number to the DHL API to fetch the latest shipment status. The "Format Response Message" Code node takes the API response and composes a user-friendly message for the customer. It also handles cases where tracking information is not found. An If node checks the original source of the inquiry to determine whether it came from the webhook or email. If the request came from the webhook, a Respond to Webhook node sends the tracking data back as a JSON response. If the request came from an email, the Gmail node sends the formatted message as an email reply to the customer. How to use Configure the Triggers: Webhook Trigger: Copy the Test URL and set it as the action endpoint for your web form. Once you activate the workflow, use the Production URL. Webhook URL: https://your-n8n-instance.com/webhook/dhl-tracking-inquiry Gmail Trigger: Connect your Gmail account using OAuth2 credentials and set the desired filter conditions (e.g., unread emails with a specific subject). Set up the DHL API: Open the "Get DHL Tracking Status" (HTTP Request) node and navigate to the "Headers" tab. Replace YOUR_DHL_API_KEY with your actual DHL API key. { "DHL-API-Key": "YOUR_DHL_API_KEY" } Configure the Gmail Send Node: Connect the same Gmail credentials to the "Send Gmail Response" node. Customize options like the replyTo address as needed. Activate the workflow. Requirements A DHL Developer Portal account to obtain an API key. A Gmail account configured with OAuth2 in n8n. Customising this workflow Add More Carriers**: Duplicate the HTTP Request node and response formatting logic to support other shipping carriers like FedEx or UPS. Log Inquiries**: Add a node to save inquiry details (tracking number, customer email, status) to a Google Sheet or database for analytics. Advanced Error Handling**: Implement more robust error handling, such as sending a Slack notification to your support team if the DHL API is down or returns an unexpected error.
by Oneclick AI Squad
This n8n template demonstrates how to create an automated construction progress notification system for real estate companies. The workflow triggers daily at 8:00 AM IST to check a Google Sheet for contractor construction reports, automatically processes the data, and sends comprehensive project updates to buyers via email and WhatsApp. Perfect for real estate developers wanting to maintain transparent communication with buyers and ensure timely project status updates. Good to know Daily automated monitoring ensures no construction updates are missed Multi-channel communication (Email + WhatsApp) reaches buyers through their preferred method Smart filtering system only processes today's reports for relevant updates Comprehensive logging tracks all notification activities for audit purposes Built-in alert system notifies administrators when contractors fail to submit reports Handles multiple projects and contractors simultaneously without data conflicts How it works Daily Monitoring Workflow System triggers automatically every day at 8:00 AM IST to check for new construction reports Google Sheet configuration is set with Sheet ID, sheet name, and today's date for filtering All construction data is read from the designated Google Sheet containing contractor submissions Advanced filtering isolates only today's reports based on the Date column for processing Report Processing Workflow System checks if any construction reports were submitted for the current date If reports are found: Detailed notifications are prepared and sent to all registered buyers If no reports are found: Alert notifications are sent to administrators about missing submissions All project data is compiled into comprehensive summaries with progress percentages and status updates Notification Distribution Workflow Email notifications contain detailed construction summaries with all project information WhatsApp messages provide concise updates with key progress indicators and status Messages are personalized with project names, completion percentages, and contractor details Multiple recipients receive notifications simultaneously through both communication channels Activity Logging Workflow All notification activities are logged with precise timestamps and recipient information Success logs record project count, recipient numbers, and delivery confirmation Warning logs capture instances when no reports are found for administrative follow-up Complete audit trail maintains compliance and tracking for project management Google Sheet Structure Construction Reports Sheet Date - Report submission date (DD/MM/YYYY format) Project_Name - Name of the construction project Contractor_Name - Name of the responsible contractor Location - Project location or site address Progress_Percentage - Current completion percentage (0-100%) Status - Current project status (On Track, Delayed, Completed, etc.) Work_Description - Detailed description of today's construction activities Issues - Any problems or challenges encountered (optional) Budget_Status - Financial status update (On Budget, Over Budget, Under Budget) Next_Milestone - Upcoming project milestone or target date How to use Import the workflow into your n8n instance and configure Google Sheets integration Set up your Google Sheet with the required column structure for construction reports Configure email SMTP settings for professional construction update delivery Set up WhatsApp Business API for instant mobile notifications to buyers Add buyer email addresses and WhatsApp numbers to the notification recipient lists Contractors submit daily reports to the Google Sheet before 8:00 AM for same-day processing System automatically processes and distributes updates to all registered buyers Monitor logs for delivery confirmation and missing report alerts Requirements Google Sheets account for construction report data storage and management Email service integration (Gmail, SMTP, or corporate email system) WhatsApp Business API account for mobile messaging capabilities n8n instance with Google Sheets, Email, and WhatsApp connectors properly configured Valid credentials for all integrated services (Google OAuth, SMTP, WhatsApp API) Customising this workflow Construction update automation can be adapted for different project types and development scales Try popular use-cases such as weekly progress summaries, milestone notifications, or emergency construction alerts The workflow can be extended to include photo attachments from construction sites, weather impact assessments, and safety compliance reporting Integration possibilities include CRM systems for buyer management, project management tools for contractor coordination, and financial systems for budget tracking Notification scheduling can be adjusted for different time zones, multiple daily updates, or project-specific timing requirements Advanced features can include buyer feedback collection, contractor performance ratings, and automated delay notifications with mitigation plans
by Calistus Christian
How it works Checks if a website is up, sends the HTTP result to an AI model (ChatGPT) for analysis, and emails a clear success or failure message. Great for a quick “is this site up?” check you can trigger from any system via HTTP. Webhook — Receives a POST with the target URL. HTTP Request — Attempts to fetch the URL. Message a model — Uses ChatGPT to explain the status and cause of any error. IF — Checks if the HTTP status code equals 200. Gmail Success — Sends a success email with AI explanation. Gmail Error — Sends an error email with AI explanation and next steps. Set up steps Estimated setup: 5–10 minutes. Beginner friendly — no advanced config required. Add your Webhook URL where needed and connect your Gmail account. Keep detailed instructions and configuration notes inside Sticky Notes in your workflow. Inputs Send a POST request to your Webhook with: { "url": "https://example.com" }
by Cheng Siong Chin
Extract PDF Itineraries to Google Sheets with GPT-4.1-Mini & Gmail Notifications Overview Automates PDF data extraction using OpenAI GPT, saves to Google Sheets, sends email confirmations. Reduces manual entry by 90%. How It Works Receives PDF uploads via form Splits & loops through files AI extracts structured data Appends to Sheets with timestamps Sends confirmation email Prerequisites OpenAI API key (platform.openai.com) Google Workspace (Sheets & Gmail) n8n v1.0.0+ Setup Add OpenAI API key to n8n credentials Create Google Sheet with extraction columns, authorize OAuth2 Configure Gmail OAuth2 Import workflow JSON Edit AI prompt for your fields Activate & share form URL Customization Modify extraction prompts Adjust Sheets mapping Customize email templates Add error handling/validation Extend to Word/Excel files Use Cases Invoices, expense reports, resumes, contracts, forms, legal docs
by Marth
Automated Support Ticket & Customer Notification System Let's build this workflow to streamline your customer support. Here is a detailed, node-by-node explanation of how it works and how to set it up in n8n. How It Works This workflow transforms your support inbox into a structured ticket system. When a new email arrives at your support address, the system automatically creates a new ticket (e.g., a Trello card), sends an instant confirmation email to the customer, and notifies your support team. This ensures every customer inquiry is captured, organized, and confirmed, guaranteeing no request gets missed. Setup Steps 1. Gmail Trigger: Watch Support Inbox Node Type:** Gmail Trigger Credentials:** YOUR_GMAIL_CREDENTIAL Parameters:** Operation: Watch for New Mails Folder: Inbox (or a specific folder for support emails, like Support) To: your-support-email@example.com Explanation:** This node is the starting point. It connects to your support email address and listens for new messages. As soon as a new email arrives, it triggers the rest of the workflow. 2. Trello: Create New Support Ticket Node Type:** Trello Credentials:** YOUR_TRELLO_CREDENTIAL Parameters:** Operation: Create Card Board ID: YOUR_SUPPORT_BOARD_ID List ID: YOUR_INCOMING_LIST_ID (e.g., "New Tickets") Name: New Support Request from {{ $json.from }} Description: Subject: {{ $json.subject }} Body: {{ $json.body }} Explanation:** This node takes the details from the incoming email and creates a new card on your Trello board. This turns every email into an actionable, trackable ticket for your support team. 3. Gmail: Send Automatic Confirmation Node Type:** Gmail Credentials:** YOUR_GMAIL_CREDENTIAL Parameters:** Operation: Send To: ={{ $json.from }} Subject: Re: {{ $json.subject }} Body: Hi there, thanks for reaching out. We've received your request and have created a new ticket. Our team will get back to you shortly. Explanation:** This node sends a quick, professional, and automated email back to the customer. This provides immediate peace of mind for the customer and confirms that their inquiry was successfully received. 4. Slack: Notify Support Team (Optional) Node Type:** Slack Credentials:** YOUR_SLACK_CREDENTIAL Parameters:** Operation: Post Message Channel: YOUR_SUPPORT_CHANNEL_ID (e.g., #support-channel) Text: New Support Ticket! A new ticket from {{ $json.from }} has been created in Trello. Explanation:** This optional but recommended node sends a real-time notification to your support team on Slack, letting them know that a new ticket is waiting for their attention. Final Step: Activation After configuring the nodes and connecting all credentials, click "Save" at the top of the canvas. Click the "Active" toggle in the top-right corner. The workflow is now live! Note: You can easily swap out the Trello node with a Zendesk or Jira node, and the Slack node with a Telegram or Microsoft Teams node, depending on your team's tools.
by Muhammad Bello
Description This n8n template automates prospect research and personalized follow-up writing right after a sales call is booked. It gathers company background, tech stack, and updates; suggests relevant solutions; and then drafts a handcrafted email, subject line, and SMS, all saved back into Google Sheets. Benefits Always show up to calls with prepared context. Ensure no follow-up slips through the cracks. Keep all notes, research, and outreach in a single system of record. Scale personalized outreach without losing the human touch. Use cases Prep for sales calls with richer prospect context. Save hours writing personal follow-ups. Keep sales records neatly in one shared sheet. Requirements Google Sheets with: Meeting Data → prospect info + enrichment fields Success Stories → testimonials (company, industry, results, solution used) Tavily API key OpenAI API key (GPT-4.1 or later recommended) n8n account with Google Sheets + LangChain enabled Google Sheets Template You’ll need two sheets inside one Google Spreadsheet: 1. Meeting Data (input + output) Columns: Name Email Company Website Job Title Meeting Date Company Overview (AI-filled) Tech Stack (AI-filled) Company Updates (AI-filled) Primary Solution (AI-filled) Solution 2 (AI-filled) Solution 3 (AI-filled) Email Subject (AI-filled) Follow-up Email (AI-filled) Follow-up SMS (AI-filled) 2. Success Stories (for testimonials) Columns: Company Industry Results Solution Used You can copy this structure into a fresh Google Spreadsheet before starting. How it works Trigger → Pulls new rows from Google Sheets (or connects to your booking system). Research Agent → Uses Tavily for company overview, tech stack, and updates. Product Suggestions → Pulls from Product List sheet to propose 3 tailored solutions. Save Research → Updates the row with the six research fields. Sales Writing Assistant → Drafts subject, email, and SMS using context + testimonials. Update Sheet → Writes final outputs (subject, email, SMS) into Google Sheets. Setup Steps Prepare Google Sheets Create a new spreadsheet with the Meeting Data and Success Stories tabs. Add the required columns (see template above). Fill in at least one success story for the workflow to use. Connect Google Sheets in n8n Add Google Sheets credentials under Settings → Credentials. Make sure n8n has access to your spreadsheet. Add API Keys In n8n, create credentials for OpenAI (GPT-4.1 or later). Create credentials for Tavily. Import the workflow Load the JSON file (this template) into n8n. Replace any placeholder spreadsheet IDs with your own. Map the correct sheet/tab names. Test the Research Agent Run the workflow manually. Check that Company Overview, Tech Stack, and Company Updates populate. Test the Writing Assistant Ensure the workflow uses at least one testimonial from Success Stories. Run it again and confirm Email Subject, Follow-up Email, and SMS are written. Automate Replace the Manual Trigger with your preferred trigger: Google Calendar / Calendly → Google Sheets CRM → Google Sheets Directly from n8n integrations Customization This workflow is designed as a flexible foundation. Here are ways to adapt it: Change AI prompts** Update the Research Agent prompt to focus on specific industries or data points. Edit the Sales Writing Assistant to match your tone of voice. Swap success stories** Add more detailed case studies to the Success Stories sheet for stronger personalization. Add integrations** Send follow-up emails automatically with Gmail or Outlook nodes. Push SMS directly via Twilio. Sync enriched data into HubSpot, Salesforce, or Notion. Error handling** Add retry logic for API calls. Include a notification node (Slack/Email) if the workflow fails. Tips & Troubleshooting If research doesn’t update → confirm Email is the matching column in your Update Sheet nodes. If follow-up copy is blank → ensure at least one testimonial exists in Success Stories. Use Debug Mode to inspect AI Agent or Sales Writing Assistant outputs.
by Alok Kumar
Multi-Level Document Approval & Audit Workflow This workflow automates a document approval process using Supabase and Gmail. Who it’s for Teams that need structured multi-level document approvals. Companies managing policies, contracts, or proposals. Medical document need multiple lavel of review and approval. How it works Form Trigger – A user submits a document via the form. Supabase Integration – The document is saved in the documents table. Supabase Storage – The document is saved in the bucket. Workflow Levels – Fetches the correct approval level from workflow_levels. Assign Approvers – Matches approvers by role from the users table. Approval Record – Creates an approvals record with a unique token and expiry. Email Notification – Sends an email with Approve / Reject links. Audit Logs – Records every approval request in audit_logs. Repeat - repeat the flow till all the aproval level is comepted How to set up Configure your Supabase credentials. Create tables as per data model given. Create a storage bucket in Supabase Storage. Connect your Gmail account. Adjust approval expiry time (48h default). Deploy and test via the Form Trigger. Customization Add multiple approval levels by chaining workflow_levels. Replace Gmail with Slack, Teams, or another notification channel. Adjust audit logging for compliance needs. Update the endpoint http://localhost:5678/webhook-test/ based on instance and env (remove test if you run in prod) Update the bucket name. Important steps 1. Form Submit Triggered when by submiting form Captures form parameters: Title (Document Title) Description (Document Description) file (Document need for approval) 2. Webhook Entry Point Triggered when an approver clicks the Approve or Reject link in email. Captures query parameters: token (approval token) decision (approved/rejected) 3. Approval Data Retrieval & Update Fetch approval record from Supabase (approvals) using token. Update approval status: Approved → moves to next workflow level or final approval. Rejected → document marked as rejected immediately. Records acted_at timestamp. 4. Decision Check IF Node* checks whether the decision is *approved* or *rejected**. Reject Path* → Update document status to *Rejected** in documents. Approve Path** → Continue workflow level progression. 5. Workflow Level Progression Fetch details of the current workflow level. Identify the next level (workflow_levels) based on level_number. ✅ If Next Level Exists: Retrieve approvers by role_id. Generate unique approval tokens. Create new approval records in approvals. Send email notifications with approval/reject links. ❌ If No Next Level (Last Level): Update document status to Approved in documents. 6. Audit Logging Every approval action is logged into audit_logs table: document_id action (e.g., approval_sent, approved, rejected) actor_email (system/approver) details (workflow level, role info, etc.) 📨 Email Template Approval request email includes decision links: Please review the document: ✅ Approve | ❌ Reject Happy Automating! 🚀
by WeblineIndia
iOS App Store Review Monitor & Notifier – Automated User Feedback Tracking This workflow runs on a scheduled basis (default: every 6 hours, customizable) and monitors new App Store reviews for your iOS apps. It fetches reviews via Apple’s iTunes RSS API, filters only new reviews since the last run and sends real-time notifications to your team via email, Slack, Telegram or other channels. Never miss important user feedback again. Who’s it for iOS developers** tracking user sentiment and bug reports. Product managers monitoring customer satisfaction and feature requests. Customer support teams responding quickly to complaints and issues. Marketing teams collecting testimonials and case studies from positive reviews. DevOps teams automating review monitoring as part of release processes. How it works Schedule Trigger** runs every 6 hours (cron configurable). App Configuration:** Define monitored apps with {appId, country, lang}. Fetch Reviews:** Call Apple’s iTunes RSS API for latest customer reviews. Extract & Parse:** Convert JSON into structured review data (rating, content, author, date, version). Filter New Reviews:** Compare with last run using timestamps → only new reviews pass. Format Notifications:** Build rich messages with review details. Send Alerts:** Deliver via Email, Slack, Telegram, Teams, etc. Track State:** Last check time to prevent duplicates. How to set up Find your App Store ID Go to your app’s App Store page. Example URL: https://apps.apple.com/us/app/app-name/id123456789 The number after id is the App Store ID (123456789). Configure App Settings In the App Config node set: appId = App Store ID country = Country code (us, gb, de, etc.) lang = Language code (en, es, fr, etc.) Set Up Notifications Choose your notification method: Email: configure Gmail/SMTP credentials Slack: add Slack webhook URL Telegram: set up bot token + chat ID Teams: configure Teams webhook Customize Schedule In the Schedule Trigger node: Every 6 hours → 0 */6 * * * Daily at 9 AM → 0 9 * * * Every 2 hours → 0 */2 * * * Test the Workflow Use a known App ID (e.g., WhatsApp: 310633997) for testing. Run manually to verify notifications are formatted correctly. Requirements n8n (cloud or self-hosted) with HTTP Request + notification nodes. App Store ID** for each monitored app. Notification credentials (Email, Slack, Telegram, etc.). Internet access to query Apple’s iTunes API. How to customize the workflow Multiple Apps** Monitor multiple apps by extending config:** [ {appId: "310633997", country: "us", lang: "en"}, {appId: "389801252", country: "gb", lang: "en"}, {appId: "544007664", country: "de", lang: "de"} ] Notification Templates** Add-ons to level up Sentiment Analysis:** AI-based scoring per review. Auto-Reply Integration:** Respond via App Store Connect API. Analytics Dashboard:** Store in Sheets/Airtable for trends. Competitor Monitoring:** Track rival app reviews. Translation:** Auto-translate to English. Escalation Rules:** Different alerts by rating severity. Common Troubleshooting No reviews returned** → app may not have recent reviews, try other country codes. JSON parsing errors** → check App Store ID validity. Duplicate notifications** → confirm time filtering works correctly. API rate limits** → Apple may throttle, add delays. Missing metadata** → some apps don’t return all fields. Need Help? If you’d like to customize this automation flow to suit your needs, write to our n8n automation team at WeblineIndia and we’ll adapt the template to your exact use case.