by Roshan Ramani
Duplicate Submission Detection & Auto Response for Jotform Who's it for Form managers, SaaS platforms, event organizers, recruitment teams, and any organization using Jotform who need automatic duplicate prevention with intelligent, personalized email responses without manual intervention. What it does This workflow automatically detects duplicate form submissions by email address, prevents duplicate entries in your database, and triggers intelligent email responses. When a new submission arrives, the system checks against all previous submissions. If a match is found, it deletes the duplicate and sends a friendly notification. If it's a new submission, it sends a professional welcome confirmation. The entire process happens in seconds with no manual work required. AI-generated emails adapt to your form type and industry, making responses feel personalized and relevant. 👉 Get the JotForm from here How it works Step-by-step: Form submission triggers the workflow System extracts email and contact information Fetches all previous submissions from Jotform Filters for active submissions matching the email Counts matching submissions to determine if duplicate If duplicate: Deletes the submission, generates rejection email, sends to submitter If new: Generates welcome confirmation email, sends to submitter Requirements Jotform form and account Jotform API Key n8n instance (self-hosted or cloud) Google Gemini API (for email generation) Gmail account with OAuth2 setup Basic form field mapping knowledge How to set up Complete setup instructions are included in the workflow sticky notes: Get your Jotform API Key from Account Settings Enable Google Gemini API in Google Cloud Console Configure Gmail OAuth2 authentication Add all credentials to n8n Import workflow and map your form fields Test with a sample submission Activate and deploy Detailed step-by-step guide is in the workflow documentation. How to customize the workflow Personalize emails for your industry: Edit the AI prompts in both "Generate Welcome Email" and "Compose Rejection Email" nodes to match your business type, tone, and specific requirements. The AI will adapt responses based on your instructions. Map your form fields: Update field IDs in filtering nodes to match your actual Jotform structure. Different forms may have email in different field positions. Add admin notifications: Duplicate the email nodes to send alerts to your team whenever duplicates are detected. Modify approval workflow: Change next steps timeline, add additional verification requirements, or customize follow-up sequences based on your business process. Template features Instant duplicate detection by email Automatic duplicate removal AI-powered, personalized email responses Token-efficient prompts for cost savings Professional HTML email formatting Mobile-responsive designs Works with any form type or industry Fully customizable for your use case Complete setup documentation included
by AureusR
Synchronize Excel or Google Sheets with Postgres (bi-directional) Who’s it for This workflow is perfect for companies that have always managed their operations in Excel or Google Sheets and want to gradually transition to using a database or custom software. It ensures business continuity while modernizing data management. How it works / What it does Trigger options → Run the sync manually, on schedule, or as part of another workflow. Get data from Excel → Reads rows from an Excel or Google Sheet table. Sanitize data → Cleans up formats (e.g., converting Excel serial dates into proper date strings). Upsert into Postgres → Inserts or updates rows in the database, ensuring no duplicates. For auto-mapping to work, the column names in Excel/Sheets and the DB must match exactly. If you want different names, you can manually map columns in the Postgres node. (Optional) → Can be extended to push DB updates back to Excel, creating a true two-way sync. This way, your team can continue working in Excel/Sheets while data is safely persisted in a database—ideal for scaling into dashboards, SaaS, or ERP systems later. How to set up Import the workflow JSON into your n8n instance. Connect your credentials: Microsoft Excel / Google Sheets OAuth2 Postgres database Point the Excel node to the right workbook, worksheet, and table. Make sure column names match between the Excel sheet and DB table (or map manually if they differ). Run manually or configure the schedule trigger for automated syncs. Requirements n8n self-hosted or cloud account. Either Microsoft Excel Online or Google Sheets access. Postgres database (or replace with MySQL, MariaDB, or any supported DB). How to customize the workflow Replace Excel with Google Sheets by swapping the node. Replace Postgres with any preferred database node. Add validation steps (e.g., check for missing emails, duplicate IDs). Extend with reporting workflows (e.g., sync DB data to BI dashboards). Use this as a stepping stone to migrate from spreadsheets into software-driven processes.
by yuta tokumitsu
Provision new employee accounts to Google Workspace, Slack, Jira, and Salesforce This workflow streamlines the employee onboarding process by automatically provisioning user accounts across your organization's tech stack. By connecting HR input to IT operations, it eliminates manual data entry, reduces errors, and ensures new hires have access to the right tools from day one. Depending on the employee's department, the workflow intelligently routes the provisioning process to create specific accounts (e.g., Jira for Engineering, Salesforce for Sales) alongside standard company-wide access. Who is it for IT Administrators** looking to automate identity management and access provisioning. HR Operations Managers** who want to speed up the onboarding handover process. Startup Founders** needing a scalable way to manage new hire accounts without expensive SaaS management tools. How it works Data Intake: The workflow is triggered by a Webhook (connected to a form like Typeform, Google Forms, or BambooHR) containing the new hire's details. Configuration: A central "Set" node establishes global variables, such as the default temporary password, welcome email subject, and the main Slack channel ID. Core Provisioning: It simultaneously creates a Google Workspace account and invites the user to a general Slack channel. Department Routing: A generic logic switch checks the department field: If Engineering: It creates a Jira user. If Sales: It creates a Salesforce user. Notification: Once all accounts are successfully provisioned, the workflow uses a generic email service (Gmail node) to send a welcome email to the new employee with their login details. How to set up Credentials: You will need to configure credentials for the following nodes: Google Workspace Admin, Slack API, Jira Software, Salesforce, and Gmail (or your preferred email provider). Configuration: Open the node named ⚙️ CONFIGURATION. Update the Slack_Channel_ID (where new users are invited) and the Default_Password to match your company's security policy. Webhook: Copy the Webhook URL from the start node and add it to your HR form or applicant tracking system. Requirements n8n:** Version 1.0 or later recommended. Access:** Admin privileges for Google Workspace, Slack, Jira, and Salesforce to generate the necessary API keys/tokens. How to customize the workflow Add Departments:** Edit the "Check Department" Switch node to add routes for Marketing, Finance, etc., and connect them to relevant apps (e.g., HubSpot, Xero). Change Notification:** Swap the Gmail node for Microsoft Outlook or Slack DM depending on how you notify managers. Enhance Security:** Add a step to force a password reset on the first login if the identity provider supports it.
by Rahul Joshi
📊 Description Streamline IT and operations change management by automating approval routing, Jira issue creation, audit logging, and real-time Slack alerts. This workflow ensures faster reviews, traceable approvals, and transparent communication across systems. 🚀💼 What This Template Does Step 1: Triggers automatically every weekday at 3:00 AM to fetch new or updated change requests from Monday.com. ⏰ Step 2: Extracts key fields (request name, component, risk level, approvers, and description) for structured processing. 🧩 Step 3: Routes each request based on its current status — Pending, Approved, or Rejected. 🔀 Step 4: Sends Slack alerts for pending approvals with detailed context for quick action. 💬 Step 5: Creates Jira tickets for approved requests, ensuring smooth implementation tracking. 🎫 Step 6: Logs all approved requests to Google Sheets for compliance and audit purposes. 📊 Step 7: Sends confirmation emails to requesters with Jira ticket details via Gmail. 📧 Step 8: Automatically creates resubmission items in Monday.com for rejected requests. 🔁 Key Benefits ✅ Eliminates manual approval routing between tools ✅ Centralizes audit trails and implementation data ✅ Accelerates change management turnaround ✅ Provides real-time alerts to approvers and teams ✅ Ensures compliance with automated record-keeping Features Automated daily trigger (Mon–Fri, 3 AM) Monday.com integration for request intake Conditional branching by status (Pending, Approved, Rejected) Jira issue creation for approved requests Slack notifications for pending and approved updates Google Sheets logging for audit tracking Gmail email confirmations for requesters Automatic resubmission handling for rejected requests Requirements Monday.com API credentials with board access Jira API credentials with project permissions Google Sheets OAuth2 credentials Slack Bot token with chat:write permissions Gmail OAuth2 credentials for email automation Target Audience IT & DevOps teams managing structured change approvals Project management teams tracking implementation requests Organizations seeking automated risk-based change routing Managers needing centralized logs and instant Slack alerts Step-by-Step Setup Instructions Connect your Monday.com account and replace YOUR_BOARD_ID and groupId. Configure Jira credentials and set the target project for new tickets. Link your Google Sheets document and replace YOUR_SHEET_ID and YOUR_SHEET_GID. Add Slack credentials and update YOUR_CHANNEL_ID for notifications. Set up Gmail OAuth2 for sending confirmation emails. Adjust the cron expression (0 3 * * 1-5) if needed to match your timezone. Run the workflow manually once to test end-to-end connectivity. Enable for scheduled automation and enjoy a fully managed approval process. ✅
by Basil Irfan
Transform YouTube Videos to Social Media Content with Vizard AI and GPT‑4.1 Overview This n8n template fetches new YouTube videos, enriches them with Vizard AI metadata, generates social‑media captions using GPT‑4.1, logs everything to Google Sheets, and notifies you by email. It’s a turnkey solution for content creators and marketers who need an end‑to‑end automated pipeline from video publishing to post scheduling. Setup Instructions Import the Template In n8n, click Import from JSON, paste this workflow, and save. Configure Credentials Vizard AI: Create an HTTP Request credential named Vizard API and set your VIZARDAI_API_KEY. OpenAI: Add a new OpenAI credential for GPT‑4.1. Google Sheets: Create a Google Sheets OAuth2 credential with read/write access or just sign in if your on cloud hosting Gmail: Add a Gmail OAuth2 credential for email notifications or just sign in if you are on cloud hosting Adjust Limits In the Limit Videos node, set maxItems to control batch size. Google Sheets Column Structure | Column | Description | | ------------------ | ---------------------------------------------------- | | videoId | Unique YouTube video identifier | | projectId | Vizard AI project ID returned | | videoUrl | Original YouTube video URL | | title | Video title | | transcript | Transcribed text from Vizard AI | | viralScore | Vizard AI’s viral‑score metric | | viralReason | Explanation for viral score | | generatedCaption | GPT‑4.1–generated caption in JSON { "caption": ""} | | clipEditorUrl | URL to Vizard’s clip editor | Workflow Steps Read YouTube RSS Feed (Read YouTube RSS Feed) Limit Videos (Limit Videos to N) Send to Vizard (Create Vizard Project & Retrieve Vizard Metadata) Split Items for Processing (Iterate Each Video) Generate Captions (Generate Social Media Captions) Append Row in Sheet (Log to Google Sheets) Send Notification (Email Summary) Customization Tips Alternate Caption Styles**: Modify the AI prompt for tone, length, or brand voice. Localization**: Extend prompts for other languages. Notification Channels**: Swap Gmail for Slack, Teams, or SMS via webhook nodes.
by Matt Chong
Who is this for? This workflow is ideal for freelancers, accountants, and finance teams who receive invoices in Gmail and want to automate their tracking process with AI. If your inbox fills up with invoice-related messages and you want to automate how they’re handled, this AI-powered solution is for you. What does it solve? Automatically detects and processes invoices from your Gmail inbox. Uses OpenAI GPT-4o to extract payment amount, due date, subject line, and sender details. Sends real-time Slack notifications so you never miss a payment. Eliminates manual sorting of invoice-related emails. Great for improving productivity and ensuring timely payment tracking. How it works Every hour, the workflow checks for unread emails in your Gmail inbox. It sends the email content to OpenAI to determine if it's invoice-related email. If it is: It extracts key fields like due date, amount due, subject, and sender. Then sends a Slack message with these details. If it's not invoice-related, it simply ignores the email. How to setup? Connect these accounts: Gmail using OAuth2 Slack using OAuth2 OpenAI (API Key under credentials) Customize the Slack message (optional): In the Slack node, you can modify the text to show more fields or personalize the formatting. Adjust the schedule: By default, the workflow runs hourly. You can change the frequency in the Schedule Trigger node. Modify the AI logic (optional): Update the AI Agent prompt to detect additional types like receipts or payment confirmations. How to customize this workflow to your needs Notify a Slack channel instead of a user:** Just switch the recipient in the Slack node. Add labels in Gmail:** Add nodes to label or archive invoice emails once detected. Expand detection:** Modify the AI prompt to detect other financial or transactional emails.
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 Onur
🏨 Hotel Price Comparison Workflow with Scrape.do This template requires a self-hosted n8n instance to run. A complete n8n automation that extracts hotel prices from multiple booking platforms (Booking.com, Hotels.com, Expedia, etc.) using Scrape.do API, compares prices across platforms, and saves structured results into Google Sheets for price monitoring and decision-making. 📋 Overview This workflow provides an automated hotel price comparison solution that monitors hotel rates across different booking platforms for specific destinations and dates. Ideal for travel agencies, price comparison websites, travelers, and hospitality analysts who need real-time pricing insights without manual searching. Who is this for? Travel agencies automating price comparisons Price comparison website operators Budget-conscious travelers tracking best deals Hospitality analysts monitoring market pricing Hotel managers tracking competitor rates Travel bloggers researching accommodation options What problem does this workflow solve? Eliminates manual price checking across multiple sites Processes multiple hotels and date ranges automatically Extracts structured pricing data (price, rating, amenities) Identifies the cheapest option across platforms Automates saving results into Google Sheets Ensures consistent and repeatable price monitoring ⚙️ What this workflow does Manual Trigger → Starts the workflow manually or on schedule Get Search Parameters from Sheet → Reads hotel names, destinations, check-in/check-out dates from Google Sheet URL Encode Parameters → Converts search parameters into URL-safe format Process Hotels in Batches → Handles multiple searches sequentially to avoid rate limits Fetch Hotel Data from Multiple Platforms → Calls Scrape.do API to retrieve pricing from Booking.com, Hotels.com, and Expedia Extract and Structure Price Data → Parses HTML into structured hotel data (name, price, rating, amenities) Compare Prices Across Platforms → Identifies best price and calculates savings Append Results to Sheet → Writes comparison results into Google Sheet 📊 Output Data Points | Field | Description | Example | |-------|-------------|---------| | Hotel Name | Name of the hotel | Hilton Garden Inn Downtown | | Destination | City or location | New York, NY | | Check-in Date | Arrival date | 2025-12-15 | | Check-out Date | Departure date | 2025-12-18 | | Nights | Number of nights | 3 | | Booking.com Price | Price from Booking.com | $450 | | Hotels.com Price | Price from Hotels.com | $425 | | Expedia Price | Price from Expedia | $440 | | Best Price | Lowest price found | $425 | | Best Platform | Platform with lowest price | Hotels.com | | Savings | Difference from highest price | $25 | | Average Rating | Average customer rating | 8.5/10 | | Total Reviews | Number of reviews | 1,247 | | Free Cancellation | Cancellation policy | Yes | | Breakfast Included | Breakfast availability | No | ⚙️ Setup Prerequisites n8n instance (self-hosted) Google account with Sheets access Scrape.do account with API token Google Sheet Structure This workflow uses one Google Sheet with two tabs: Input Tab: "Search Parameters" | Column | Type | Description | Example | |--------|------|-------------|---------| | Hotel Name | Text | Name of hotel (optional) | Hilton Garden Inn | | Destination | Text | City or location | New York, NY | | Check-in Date | Date | Arrival date (YYYY-MM-DD) | 2025-12-15 | | Check-out Date | Date | Departure date (YYYY-MM-DD) | 2025-12-18 | | Guests | Number | Number of guests | 2 | | Rooms | Number | Number of rooms | 1 | Output Tab: "Price Comparison" | Column | Type | Description | Example | |--------|------|-------------|---------| | Search Date | Timestamp | When search was performed | 2025-11-17 10:30:00 | | Hotel Name | Text | Name of the hotel | Hilton Garden Inn Downtown | | Destination | Text | City/location | New York, NY | | Check-in | Date | Arrival date | 2025-12-15 | | Check-out | Date | Departure date | 2025-12-18 | | Nights | Number | Number of nights | 3 | | Booking.com Price | Currency | Price from Booking.com | $450 | | Hotels.com Price | Currency | Price from Hotels.com | $425 | | Expedia Price | Currency | Price from Expedia | $440 | | Best Price | Currency | Lowest price | $425 | | Best Platform | Text | Cheapest platform | Hotels.com | | Savings | Currency | Potential savings | $25 | | Rating | Number | Average rating | 8.5 | | Reviews | Number | Total reviews | 1,247 | 🛠 Step-by-Step Setup Import Workflow: Copy the JSON → n8n → Workflows → + Add → Import from JSON Configure Scrape.do API: Endpoint: https://api.scrape.do/ Parameter: token=YOUR_SCRAPEDO_TOKEN Add render=true for JavaScript-heavy booking sites Add country=US (or target country) for localized results Configure Google Sheets: Create a sheet with two tabs: Search Parameters (input), Price Comparison (output) Set up Google Sheets OAuth2 credentials in n8n Replace placeholders: YOUR_GOOGLE_SHEET_ID and YOUR_GOOGLE_SHEETS_CREDENTIAL_ID Configure Platform URLs: Update base URLs for Booking.com, Hotels.com, Expedia in HTTP Request nodes Customize search parameters based on platform URL structure Run & Test: Add test data in Search Parameters tab Execute workflow → Check results in Price Comparison tab 🧰 How to Customize Add more platforms**: Include Agoda, Trivago, or direct hotel websites by adding new HTTP Request nodes Price alerts**: Add conditional logic to send email/Slack notification when price drops below threshold Historical tracking**: Store daily snapshots to track price trends over time Filtering**: Add filters for amenities (pool, gym, parking) or star ratings Batch Size**: Adjust "Process Hotels in Batches" based on API rate limits Rate Limiting**: Insert Wait nodes (20–30 seconds) between platform requests Currency conversion**: Add currency API integration for multi-currency comparison Scheduling**: Add Schedule Trigger to run automatically (daily/weekly) 📊 Use Cases Travel Planning**: Find the best hotel deals for upcoming trips Price Monitoring**: Track price changes for specific hotels over time Agency Operations**: Automate price research for client bookings Market Analysis**: Monitor competitor pricing in hospitality market Deal Alerts**: Get notified when prices drop below target threshold Budget Planning**: Compare costs across multiple destinations 📈 Performance & Limits Single Hotel (3 platforms)**: ~30–45 seconds (depends on Scrape.do response) Batch of 10 hotels**: 8–12 minutes typical Large Sets (50+ hotels)**: 45–90 minutes depending on API credits & batching API Calls**: 3 Scrape.do requests per hotel (one per platform) Reliability**: 90%+ extraction success, 95%+ price accuracy 🧩 Troubleshooting API error** → Check YOUR_SCRAPEDO_TOKEN and API credits on Scrape.do dashboard No hotels loaded* → Verify Google Sheet ID & tab name = *Search Parameters** Permission denied** → Re-authenticate Google Sheets OAuth2 in n8n Empty prices** → Check if Scrape.do rendered JavaScript (render=true) Parsing errors** → Booking sites change HTML structure; update CSS selectors in Extract nodes Workflow timeout** → Reduce batch size or add more Wait nodes between requests Wrong currency** → Add country parameter to Scrape.do request for localized pricing 🤝 Support & Community n8n Forum**: https://community.n8n.io n8n Docs**: https://docs.n8n.io Scrape.do Dashboard**: https://dashboard.scrape.do Scrape.do Documentation**: https://scrape.do/docs 🎯 Final Notes This workflow provides a powerful foundation for automated hotel price comparison across multiple booking platforms using Scrape.do and Google Sheets. You can extend it with: Real-time price alerts via email/Slack Historical price tracking and trend analysis Integration with travel planning dashboards Automated booking when price threshold is met Multi-destination comparison for trip planning Pro Tip: Schedule this workflow to run daily to catch early-bird discounts and flash sales automatically!
by Harvex AI
Overview This workflow automates the "speed-to-lead" process for insurance agencies. It instantly triggers an AI voice call when a new lead comes in, qualifies their needs via conversation, and automatically generates and emails a personalized insurance proposal (Blueprint) using GPT-4. Who’s it for -Insurance Brokers & Agencies who want to automate the initial outreach and qualification of inbound leads. -Applicable to any type of Insurance (Life, Health, Home, Auto or bundling ) -Sales Teams who want to filter out unqualified leads and receive detailed call summaries for qualified prospects. -Any business willing to have a 24/7 virtual assistant that want to qualify potential customers intent and draft proposals. How it works Lead Ingestion: The workflow starts when a potential client submits an n8n web form (Name, Email, Phone Number). CRM Logging: The lead is immediately created in Airtable . AI Voice Call: The workflow triggers Vapi.ai to call the lead immediately. The AI agent acts as a representative to gather requirements. Analysis & Logic: Once the call ends, Vapi sends the call analysis and transcript back to n8n via a webhook. The workflow checks the "Success Evaluation" and ensures a "Type of Insurance" was identified. Path A: Qualified Lead gets a an insurance blueprint: OpenAI (GPT-4) generates a professional "Insurance Blueprint" email based on the call transcript and client needs (type of insurance the client is seeking). Email Dispatch: The proposal is sent directly to the client via Gmail. CRM Update: The Airtable record is updated to "Qualify" with the call summary. Error Handling: If the email fails to send, a Slack alert is sent to the team with the proposal text for manual follow-up. Path B: Unqualified Lead Notification: The team is alerted via Slack with the reason for disqualification. CRM Update: The Airtable record is updated to "Unqualified." with the call summary. Requirements Vapi.ai Account: For the AI voice telephony (requires a configured Assistant and Phone Number). OpenAI Account: For GPT-4 or any LLM model of your choice analysis used for proposals writing. Make sure to have enough tokens. Airtable Account: For lead management. Gmail Account: To send the proposals. Slack Account: For internal team notifications. How to set up Configure External Services Airtable: Create a base with a table with a name of your choice. Ensure it has the following columns: Name (Single text), Email (Email), Phone number (Phone/Text), Status (Single Select: Qualify, Unqualified), Type of Insurance (Text), and Call summary (Long Text). Vapi: Create an Assistant in Vapi. Give the assistant a system prompt according to what you want it to say during the call. Ensure you enable the "Server URL" in the Vapi dashboard to point to the Production URL of the Post call Webhook node in this workflow. Configure Credentials in n8n Add credentials for Airtable, OpenAI, Gmail, and Slack. In the Vapi call node, use your credentials or add your Vapi Private API Key to the header (Authorization: Bearer <YOUR_KEY>). Update Node Parameters Airtable Nodes: Select your specific Base and Table in both the "Create a record" and "Update record" nodes. Vapi Call Node: Input your assistantId, phoneNumberId in the JSON body with the actual IDs from your Vapi dashboard and change the international dialing code. Slack Nodes: Select the channel where you want notifications sent. How to customize the workflow Change the Persona: Open the Prepare Blueprint (OpenAI) node. Edit the System Message to change the agent's name and Insurance or agency name, tone, or the formatting of the email proposal. Adjust Qualification Logic: Open the Is Qualified? (If) node. You can modify the data Collection by adding more fields to the Form Trigger (e.g., "State," "Age") and map them through to the Airtable nodes and the Vapi assistant prompt context. Switch Communication Channels: Replace the Slack and Gmail nodes with other nodes (e.g., Microsoft Teams, Outlook) depending on your tech stack preferences.
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 WeblineIndia
iOS App Store Review Monitor & Notifier – Automated User Feedback Tracking This workflow runs on a scheduled basis (default: every 6 hours, customizable) and monitors new App Store reviews for your iOS apps. It fetches reviews via Apple’s iTunes RSS API, filters only new reviews since the last run and sends real-time notifications to your team via email, Slack, Telegram or other channels. Never miss important user feedback again. Who’s it for iOS developers** tracking user sentiment and bug reports. Product managers monitoring customer satisfaction and feature requests. Customer support teams responding quickly to complaints and issues. Marketing teams collecting testimonials and case studies from positive reviews. DevOps teams automating review monitoring as part of release processes. How it works Schedule Trigger** runs every 6 hours (cron configurable). App Configuration:** Define monitored apps with {appId, country, lang}. Fetch Reviews:** Call Apple’s iTunes RSS API for latest customer reviews. Extract & Parse:** Convert JSON into structured review data (rating, content, author, date, version). Filter New Reviews:** Compare with last run using timestamps → only new reviews pass. Format Notifications:** Build rich messages with review details. Send Alerts:** Deliver via Email, Slack, Telegram, Teams, etc. Track State:** Last check time to prevent duplicates. How to set up Find your App Store ID Go to your app’s App Store page. Example URL: https://apps.apple.com/us/app/app-name/id123456789 The number after id is the App Store ID (123456789). Configure App Settings In the App Config node set: appId = App Store ID country = Country code (us, gb, de, etc.) lang = Language code (en, es, fr, etc.) Set Up Notifications Choose your notification method: Email: configure Gmail/SMTP credentials Slack: add Slack webhook URL Telegram: set up bot token + chat ID Teams: configure Teams webhook Customize Schedule In the Schedule Trigger node: Every 6 hours → 0 */6 * * * Daily at 9 AM → 0 9 * * * Every 2 hours → 0 */2 * * * Test the Workflow Use a known App ID (e.g., WhatsApp: 310633997) for testing. Run manually to verify notifications are formatted correctly. Requirements n8n (cloud or self-hosted) with HTTP Request + notification nodes. App Store ID** for each monitored app. Notification credentials (Email, Slack, Telegram, etc.). Internet access to query Apple’s iTunes API. How to customize the workflow Multiple Apps** Monitor multiple apps by extending config:** [ {appId: "310633997", country: "us", lang: "en"}, {appId: "389801252", country: "gb", lang: "en"}, {appId: "544007664", country: "de", lang: "de"} ] Notification Templates** Add-ons to level up Sentiment Analysis:** AI-based scoring per review. Auto-Reply Integration:** Respond via App Store Connect API. Analytics Dashboard:** Store in Sheets/Airtable for trends. Competitor Monitoring:** Track rival app reviews. Translation:** Auto-translate to English. Escalation Rules:** Different alerts by rating severity. Common Troubleshooting No reviews returned** → app may not have recent reviews, try other country codes. JSON parsing errors** → check App Store ID validity. Duplicate notifications** → confirm time filtering works correctly. API rate limits** → Apple may throttle, add delays. Missing metadata** → some apps don’t return all fields. Need Help? If you’d like to customize this automation flow to suit your needs, write to our n8n automation team at WeblineIndia and we’ll adapt the template to your exact use case.
by Oneclick AI Squad
This n8n workflow automates the creation and countdown notifications for events like product launches or birthdays via a Telegram bot, ensuring timely group alerts through multi-channel routing (e.g., Slack or email). It processes incoming event data from webhooks, stores it persistently, and triggers scheduled reminders to keep teams or groups informed. Key Features Handles event creation or updates via webhook from Telegram chats or external sources. Fetches and processes upcoming events on a customizable schedule for countdown notifications. Routes alerts dynamically to channels like Slack or email based on event settings. Validates incoming data, formats messages for optimal delivery, and confirms responses to initiators. Workflow Process The Webhook Trigger node starts the workflow when an external system (e.g., Telegram bot) sends a POST request with event details like date, description, and notification preferences. The Process Webhook Event node parses and validates incoming webhook data, ensuring required fields (e.g., event date, channel) are present before proceeding. The Events Database node fetches upcoming events (e.g., launches or birthdays) from a data source, either triggered by the webhook for updates or scheduled for notifications. The Webhook Response node sends a confirmation or status response back to the webhook sender (e.g., Telegram bot) in JSON format. The Schedule Trigger node runs the workflow automatically on a defined schedule (e.g., daily at 9AM) to check for countdown-eligible events. The Is Slack? node checks if the event's notification channel is set to Slack; if true, it routes to Slack-specific formatting. The Format Slack Message node formats the event countdown message in a Slack-friendly layout (e.g., with mentions or embeds). The Send to Slack node sends the formatted message to the target Slack channel for group notifications. The Is Email? node checks if the event's notification channel is set to email (fallback from Slack check); if true, it routes to email-specific formatting. The Format Email node formats the event countdown message in an email-friendly detail (e.g., with HTML for readability). The Send Email node sends the formatted email to the recipient list (e.g., group organizers or participants). Setup Instructions Import the workflow into n8n and configure the Webhook Trigger with your Telegram bot's webhook URL for event creation requests. Set up database credentials in the Events Database node (e.g., connect to PostgreSQL or Airtable for event storage). Configure channel integrations: Slack app token for Send to Slack, SMTP credentials for Send Email, and ensure Schedule Trigger aligns with your countdown frequency (e.g., hourly for real-time alerts). Test by sending a sample POST request to the webhook with event data and manually triggering the schedule to verify notifications. Monitor executions in the n8n dashboard and refine validation logic in Process Webhook Event for custom event fields. Prerequisites Telegram bot with webhook setup for incoming event creation messages. Database service (e.g., PostgreSQL or Google Sheets) for storing and querying events. Slack workspace and email provider (e.g., Gmail SMTP) for notifications. n8n instance with webhook and cron scheduling enabled. Basic API setup for Telegram bot token and channel routing. Modification Options Add a Telegram-specific check node (e.g., "Is Telegram?") branching from Events Database to integrate direct bot messaging. Customize the Schedule Trigger for dynamic timing, like event-specific intervals for countdowns (e.g., daily leading up to the date). Extend Format Slack Message or Format Email with dynamic templates, such as embedding countdown timers or images. Integrate additional channels (e.g., Discord) by duplicating the Is Slack? / Is Email? logic. Enhance Process Webhook Event to support recurring events or auto-populate recipient lists from Telegram group data. Explore More AI Workflows: Get in touch with us for custom n8n automation!