by Calvin Cunningham
Description This workflow automatically validates email addresses stored in a Google Sheet using Hunter Email Verifier, enriches the valid ones with Dropcontact, updates the sheet with verification and enrichment results, and sends a Slack summary showing total emails checked, valid emails, and enriched profiles. It helps teams clean their data, improve outreach accuracy, and eliminate the manual effort of checking and researching email contacts one by one. How It Works The workflow triggers whenever a new row is added or updated in your Google Sheet. It reads any emails that still need to be processed. Each email is validated using Hunter Email Verifier, which returns validity and a confidence score. Emails marked as valid and above the confidence threshold are enriched with Dropcontact to gather additional profile information, including: Full name Job title Company Domain Country Invalid or low-confidence emails are marked as invalid and skipped. Verification and enrichment results are written back into the corresponding row in your Google Sheet. A Slack summary message is sent showing: Total emails processed Number of valid emails Number of enriched profiles Credential Requirements Hunter Email Verifier:** Required for the email validation step. Dropcontact:* Requires a *business email address** (non-Gmail, non-Outlook, non-Yahoo) to create an account and use their API. Google Sheets:** Required for reading and updating your contact list. Slack:** Required to send the summary notification. Why This Is Helpful Automates a repetitive and error-prone workflow. Saves Dropcontact credits by enriching only valid, high-quality emails. Improves data accuracy for outreach, lead generation, and CRM imports. Keeps your Google Sheet updated with clean, structured verification and enrichment results. Sends a summary to Slack so your team gets instant visibility without opening the sheet. Ideal for teams preparing outbound lists, cleaning CRM data, or verifying large batches of emails before campaigns. Customization Ideas Add a second enrichment provider** (such as Clearbit or People Data Labs) to fill in missing fields when Dropcontact does not return enough data. Send enriched contacts to a CRM**, such as HubSpot, Airtable, Pipedrive, or Notion, instead of keeping everything in Google Sheets. Create separate Slack channels** for valid vs. invalid contacts to help teams prioritize follow-up. Add quality tiers** by creating categories such as "High Confidence," "Medium Confidence," and "Low Confidence" based on the verification score. Auto-tag enriched leads** with fields like industry, employee count, or revenue if you integrate additional enrichment sources. Trigger this workflow nightly** using a Schedule node if you want to process batches instead of reacting to row updates. Automatically send outreach emails** to enriched leads using Gmail, Outlook, or Resend, after adding a safety check or approval step. Export enriched contacts to CSV** or Google Drive for easy sharing with other teams. Add duplicate detection logic** to avoid enriching the same contact multiple times. Add a notification for “no enrichments found”** so your team knows when Dropcontact fails to return details.
by Marth
How It Works ⚙️ This workflow streamlines your property tour scheduling into two main automated flows: A. Property Tour Request & Automated Scheduling 0. Form Trigger (Property Tour Request): 🚀 The workflow initiates immediately when a prospective client fills out a property tour interest form on your website or a dedicated landing page. This serves as the initial data input point. 1. Extract Prospect Data (Function): 🧹 This node processes the incoming form data, intelligently extracting essential details such as the prospect's full name, email, phone number, and the specific property they are interested in. 2. Generate Scheduling Link (Function): 🔗 This node dynamically constructs a personalized scheduling link (e.g., from Calendly or another scheduling tool) that is pre-configured to show your agent's real-time availability. 3. Send Scheduling Link (Gmail/SMS): 📧 An automated email or SMS containing this personalized scheduling link is instantly dispatched to the prospect, allowing them to conveniently select a tour time that fits their schedule and aligns with the agent's availability. B. Tour Confirmation & Reminders 4. Webhook: Schedule Confirmation (Waiting for Confirmation): ⏳ The workflow patiently waits for a webhook signal from your scheduling tool (e.g., Calendly) confirming that the prospect has successfully selected and confirmed a tour slot. 5. Add Event to Agent's Calendar (Google Calendar): 🗓️ Upon confirmation, the property tour event is automatically added to the relevant agent's Google Calendar, complete with all prospect and property details, ensuring no appointments are missed. 6. Send Confirmation Notification (Slack to Agent): 📢 A detailed notification is sent to the agent's Slack channel or email, immediately informing them about the newly scheduled tour and providing all pertinent information at a glance. 7. Wait (For Tour Reminder): ⏱️ This node intelligently waits for a calculated period (e.g., 1 hour) before the scheduled tour time, ensuring the reminder is sent precisely when it's most impactful. 8. Send Tour Reminder (Gmail): 🔔 A personalized reminder email or SMS is automatically sent to the prospect a set time before the scheduled tour, significantly helping to reduce no-shows and ensure timely attendance. How to Set Up 🛠️ Follow these steps carefully to get your "Property Tour Scheduling Automation" workflow up and running in n8n: Import Workflow JSON: Open your n8n instance. Click on 'Workflows' in the left sidebar. Click the '+' button or 'New' to create a new workflow. Click the '...' (More Options) icon in the top right. Select 'Import from JSON' and paste the entire JSON code for this workflow. Configure 0. Form Trigger (Property Tour Request): Locate the '0. Form Trigger (Property Tour Request)' node. Activate the workflow. n8n will provide a unique 'Webhook URL'. Crucial Step: Integrate this 'Webhook URL' into your website's property tour request form (e.g., via Elementor Forms, Gravity Forms, or any other form platform). Ensure your form sends data in JSON format. Form Fields: Adjust the 'Form Fields' in this node (e.g., "Full Name", "Email", "Phone Number", "Interested Property ID", "Property Name (optional)") to precisely match the input fields of your actual form. If they don't match, update them here. Configure 1. Extract Prospect Data (Function): Locate the '1. Extract Prospect Data' node. Adjust Field Names: Review the functionCode within this node. You MUST adjust the variable assignments (e.g., formData['Full Name'], formData['Interested Property ID']) to accurately match the exact field names sent by your Form Trigger. Use n8n's 'Test Workflow' feature (after submitting a test form entry) to inspect the incoming items[0].json.body data structure and make precise adjustments. Configure 2. Generate Scheduling Link (Function): Locate the '2. Generate Scheduling Link' node. Set Base Scheduling URL: Inside the functionCode, replace 'YOUR_CALENDLY_BASE_LINK_FOR_AGENT' with the base URL of your Calendly or other scheduling tool link (e.g., https://calendly.com/your-agent-name). Adjust Parameters: If your scheduling tool supports URL parameters for pre-filling information (e.g., prospect name, email), adjust the code to include them (e.g., ?name=${encodeURIComponent(prospectData.clientName)}&email=${encodeURIComponent(prospectData.clientEmail)}). Configure 3. Send Scheduling Link (Gmail): Locate the '3. Send Scheduling Link (Gmail)' node. Credentials: Select your existing Gmail OAuth2 credential or click 'Create New' to set one up. You'll need to replace YOUR_GMAIL_CREDENTIAL_ID with the actual ID or name of your credential from your n8n credentials list. From Email: Replace your-agent-email@example.com with the desired sending email address for tour requests. The 'To Email', 'Subject', and 'HTML' body fields will be dynamically populated from the previous 'Function' node. (Optional: Switch to SMS): Delete this Gmail node and add a Twilio node. Configure its credentials, 'From Phone Number', 'To Phone Number' (from prospect data), and 'Message' (include the scheduling link). Configure 4. Webhook: Schedule Confirmation (Waiting for Confirmation): Locate the '4. Webhook: Schedule Confirmation (Waiting for Confirmation)' node. Activate the workflow. n8n will provide a unique 'Webhook URL'. Crucial Step: In your scheduling tool (e.g., Calendly), configure a webhook to send data to this n8n URL whenever an event is scheduled or confirmed. This is vital for the workflow to proceed after the prospect selects a time. Configure 5. Add Event to Agent's Calendar (Google Calendar): Locate the '5. Add Event to Agent's Calendar (Google Calendar)' node. Credentials: Select your existing Google Calendar OAuth2 credential or create a new one. Replace YOUR_GOOGLE_CALENDAR_CREDENTIAL_ID with the actual ID or name of your credential. Calendar ID: Replace YOUR_AGENT_CALENDAR_ID with the specific calendar ID of the agent where you want to add the event. Adjust Event Details: Ensure 'Event Name', 'Start Date & Time', 'End Date & Time', and 'Description' use the correct expressions to pull data from the incoming scheduling tool webhook (e.g., {{ $json.payload.event.start_time }}). Configure 6. Send Confirmation Notification (Slack to Agent): Locate the '6. Send Confirmation Notification (Slack to Agent)' node. Credentials: Ensure your Slack API credential is selected. Channel: Replace YOUR_AGENT_SLACK_CHANNEL_ID_OR_NAME with the exact ID or name of the Slack channel where agents receive tour scheduling notifications (e.g., #tour-bookings). (Optional: Switch to Email): Delete this Slack node and add a Gmail or SendGrid node. Configure its credentials, 'To Email' (agent's email), 'Subject', and 'HTML' body. Configure 7. Wait (For Tour Reminder): Locate the '7. Wait (For Tour Reminder)' node. Time Calculation: The node is set to wait until 1 hour before the scheduled tour start time ({{ $json.payload.event.start_time }}). Timezone: Replace YOUR_TIMEZONE_LIKE_Asia/Jakarta with your actual timezone (e.g., America/New_York, Europe/London). This is crucial for accurate timing. Configure 8. Send Tour Reminder (Gmail): Locate the '8. Send Tour Reminder (Gmail)' node. Credentials: Ensure your Gmail API credential is selected. From Email: Replace your-agent-email@example.com with the sending email address. (Optional: Switch to SMS): Delete this Gmail node and add a Twilio node, configuring it similarly to step 5 for SMS reminders. Review and Activate: Thoroughly review all node configurations. Ensure all placeholder values (like YOUR_...) are replaced with your actual information and settings are correct. Click the 'Save' button in the top right corner. Finally, toggle the 'Inactive' switch to 'Active' to enable your workflow. 🟢 Your "Property Tour Scheduling Automation" workflow is now live!
by Kanaka Kishore Kandregula
This workflow is designed for Magento 2 merchants who want to automatically identify and deactivate products that haven't been sold in the past 12 months, helping to maintain a clean and optimised catalog. This automation includes order analysis, product comparison, management approval, and automated product deactivation, with full reporting and transparency. 🔧 What It Does 1st of Every Month at 8 AM, it triggers a scheduled cleanup. Calculates the date 12 months ago from the current day. Fetches all Magento 2 orders created in the last 12 months via REST API. Extracts all SKUs of products sold during that period. Fetches the entire product catalog from Magento 2. Compares all products with sold SKUs to determine which products had zero sales in the last year. Prepares an HTML email report (including SKU, Name, Price, Status) of the unsold products. Sends the report to the merchant (e.g., kmyprojects@gmail.com) for approval via interactive email (Approve / Decline). If approved, each product is automatically disabled (status updated to 1) in Magento 2 using the REST API. Aggregates all disabled products and sends a confirmation email with a summary and product table. Ensures safe operations with conditional logic and user review before taking any action. 🧠 Key Features ✅ Fully automated detection of inactive inventory. ✅ Uses n8n's Gmail Approval Node for human decision-making. ✅ Works with Magento 2’s REST API and handles large product sets with batching and aggregation. ✅ Includes fail-safe conditional checks (e.g., don’t run if no orders are found). ✅ Clean HTML email reports with product metadata. ✅ Modular and scalable for different business sizes or intervals. 📦 Use Case Perfect for: Magento 2 store owners or managers Digital operations teams aiming for lean product catalogs Agencies maintaining Magento-based ecommerce stores Any business needing automated product lifecycle management 🔐 Credentials Required Magento 2 API Bearer Token (for reading orders and updating products) Gmail OAuth2 (for sending approval and summary emails) 🛠️ Customizable Parameters Trigger interval (currently set to monthly at 8 AM) Email recipients for approval and notifications Product status change (can be extended to delete or archive instead of disabling) 🧩 Workflow Stack Trigger: Schedule (Monthly) Nodes Used: HTTP Request Code (JavaScript) IF Condition Gmail (Approval & Notification) Split Out / Split in Batches Aggregate Merge
by Bhavy Shekhaliya
📧 AI-Powered Gmail Auto-Labeling with Smart Classification This n8n workflow automatically organizes your Gmail inbox by intelligently categorizing incoming emails and applying custom labels using AI-powered sentiment analysis. Say goodbye to manual email sorting and hello to an organized inbox! Use Cases Business Email Management**: Automatically sort partnership inquiries, meeting requests, and promotional emails Sales Team Automation**: Identify and label cold outreach and high-priority leads Executive Assistants**: Filter important meetings and urgent matters for busy professionals Marketing Teams**: Separate promotional content from genuine business communications Good to Know The workflow runs every minute to check for new emails Each email is processed only once - already labeled emails are automatically skipped Uses OpenAI's GPT model for accurate email classification (API costs apply) Processes emails in batches to handle multiple incoming messages efficiently How It Works Gmail Trigger continuously monitors your inbox for new emails every minute Switch Node checks if emails already have labels (Other, Promotion, or Meeting) to avoid duplicate processing Loop Node processes emails in batches for efficient handling AI Classification analyzes the email's sender, subject, and content using OpenAI's GPT model to categorize into: Partnerships - Collaboration opportunities and B2B proposals Promotional - Marketing emails and newsletters Cold Outreach - Unsolicited sales emails and prospecting Meeting - Calendar invites and scheduling requests High Priority - Urgent matters requiring immediate attention Other - Everything else that doesn't fit the above categories Label Application automatically applies the appropriate Gmail label based on AI classification Loop Completion returns to process the next email in the batch How to Use Set up your Gmail credentials to connect the workflow to your account Create custom labels in Gmail (or use the pre-configured label IDs in the workflow) Add your OpenAI API credentials for AI classification Activate the workflow and let it run automatically in the background Optionally adjust the polling frequency from "every minute" to your preference Requirements Gmail OAuth2** credentials for email access and label management OpenAI API** key for GPT-powered email classification Pre-created Gmail labels for each category (or modify label IDs in the workflow) Customizing This Workflow Add More Categories**: Extend the sentiment analysis node with additional email categories relevant to your business Adjust Classification Logic**: Modify the AI prompt to better match your specific email patterns Change Polling Frequency**: Update the Gmail trigger to check more or less frequently based on your email volume Add Actions**: Extend each label branch to trigger additional actions like Slack notifications, database updates, or auto-replies Filter by Sender**: Add conditions to the Switch node to handle VIP senders differently
by Jitesh Dugar
Verified Corporate Training Certificate with CEUs – Fully Automated & Verifiable A production-ready, secure, and professional automation that instantly issues accredited CEU certificates the moment a training is completed. What it does Accepts form/webhook submissions (name, email, course, CEUs, hours, etc.) Validates all required fields and checks email deliverability (blocks disposable/temporary emails) Generates a unique Certificate ID + scannable QR code for lifelong verification Renders a beautiful, branded PDF certificate using HTML → PDF Automatically uploads the certificate to Google Drive Sends a polished, personalized email with the PDF attached Notifies your team in Slack Logs every issuance in Google Sheets (perfect for audits & accreditation) Returns instant success/failure response to the caller Key Features Real-time email validation via Verif.Email API Unique, tamper-proof Certificate ID (e.g., CERT-CEU-1739981234567-AB3XF9) Embedded QR code linking to public verification page High-resolution, print-ready PDF with custom branding Full audit trail in Google Sheets Slack notification for organizers Zero manual work – 100% automated Ideal for Corporate training departments Continuing Education (CEU) providers Professional certification bodies Compliance & accreditation teams Required Credentials (one-time setup) verifi.email API https://pdfmunk.com Google Drive + Gmail Google Sheets Slack (optional) Deploy in under 5 minutes and start issuing trusted, verifiable certificates instantly. Tags: certificate, CEU, training, verification, QR code, PDF, automation, compliance, education, corporate
by Billy Christi
Who is this for? This workflow is perfect for: Project managers and Agile teams who want to automate project setup and task creation Software development teams looking to standardize their project initialization process Business analysts and product owners who need to quickly convert project ideas into structured task breakdowns Companies using ClickUp for project management who want to leverage AI for intelligent project planning What problem is this workflow solving? Creating comprehensive project structures with detailed tasks and subtasks is time-consuming and often inconsistent. This workflow solves those issues by: Automating project creation** from initial concept to fully structured ClickUp project with tasks and subtasks Standardizing task breakdown** using AI to generate professional Agile user stories with proper descriptions Eliminating manual setup** while ensuring consistency across all projects and teams Improving project planning quality** through AI-driven task analysis and structured output What this workflow does This workflow transforms raw project ideas into complete, professional ClickUp projects with AI-generated task breakdowns and subtasks, following Agile best practices. Step by step: Form Trigger captures project details through a web form (Project Name and Full Features description) Project Naming AI Agent uses OpenAI to clean up project names, create professional descriptions, and generate random Jira-style project keys ClickUp Create List establishes the main project list in your ClickUp workspace Task Generator AI Agent analyzes project features and creates detailed task breakdown following Agile user story format Split Out breaks down the AI-generated task array into individual items for processing Loop Over Items processes each main task individually through batch processing ClickUp Create Task creates each main task with descriptions in the project list Split Out Subtasks extracts subtasks from each main task for individual processing Execute Sub-workflow triggers the subtask creation workflow to build parent-child task relationships Gmail Notification sends success notification email with project link and list ID Sub-workflow Loop handles individual subtask creation in ClickUp with proper parent task relationships How to set up Connect your OpenAI account by adding your API key to the OpenAI Chat Model node for AI-powered project analysis Configure ClickUp credentials by adding your ClickUp API key and updating team ID and space ID for your workspace Set up Gmail OAuth2 credential for sending notification emails Update email recipient in the Gmail node from the placeholder email to your actual email address Configure the Execute Workflow node to reference the correct sub-workflow ID for subtask creation Customize the form fields in the Form Trigger node based on your project input requirements Test the workflow with a sample project to ensure proper task generation and ClickUp integration Verify notifications are being sent correctly with proper project links How to customize this workflow to your needs Modify task generation prompts**: adjust the AI prompts in the Task Generator node to match your specific project methodology or industry requirements Add custom fields**: enhance the form trigger with additional project metadata fields like priority, team assignment, or project type Switch AI models**: replace the OpenAI Chat Model node with other AI providers like Google Gemini, Claude, or local models by using the appropriate n8n AI nodes for different cost and performance requirements Need help customizing? Contact me for consulting and support: 📧 billychartanto@gmail.com
by Rahul Joshi
Description: Keep your databases clean and reliable with this intelligent n8n workflow template! Effortlessly detect duplicate records, generate structured logs, and receive instant email updates—no manual review needed. This automation retrieves records from Google Sheets, runs a custom deduplication engine to detect duplicate entries (based on email and phone), saves detailed logs to Google Drive, and notifies your team via email. Perfect for businesses, analysts, and data teams who need to maintain clean datasets and ensure accuracy in customer or lead management systems. What This Template Does: 📊 Fetches data from Google Sheets for duplicate analysis 🧠 Identifies duplicate entries using email + phone logic 📂 Generates detailed duplication logs and saves them in Google Drive 📧 Sends automated email notifications to your team with process details 🌟 100% automated: just run the workflow and get instant results Built-in Logic Ensures: ✔️ Duplicate detection is accurate and structured ✔️ Logs are organized for easy access and auditing ✔️ Team members stay informed with timely notifications Requirements: Google Sheets containing your dataset Google Drive account for log storage SMTP/Gmail account for notifications n8n instance (self-hosted or cloud) Perfect For: Data teams maintaining large customer or lead databases Businesses ensuring accuracy in CRM records Analysts and operations teams wanting hands-free duplicate management
by moosa
This workflow tracks new Shopify orders in real-time and logs them to a Google Sheet, while also sending a structured order summary to a Discord channel. Perfect for keeping your team and records updated without checking your Shopify admin manually. ✅ Features: Trigger: Listens to orders/create event via the **Shopify Trigger node Authentication: Uses **Shopify Access Token, generated via a custom/private Shopify app Google Sheets Logging**: Automatically appends order details to a sheet with the following columns: Order Number Customer Email Customer Name City Country Order Total Currency Subtotal Tax Financial Status Payment Gateway Order Date Line Item Titles Line Item Prices Order Link Discord Alerts**: Sends a clean and formatted summary to your Discord server Line Item Extraction**: Breaks down item titles and prices into readable format using code Multi-currency Compatible**: Displays currency type dynamically (not hardcoded) 🧩 Nodes Used: Shopify Trigger (Access Token) Code — extract line_item_titles and line_item_prices Google Sheets — Append row Code (JavaScript) — Format Discord message Discord — Send message 📒 Sticky Notes: 🛠️ Use your own Google Sheet link and Discord webhook 🔄 You can duplicate and adapt this for orders/updated or refunds/create events 🔐 No hardcoded API keys — credentials managed via UI 🖼️ Sample Outputs 📄 Google Sheet Entry | Order Number | Customer Email | Customer Name | City | Country | Order Total | Currency | Subtotal | Tax | Financial Status | Payment Gateway | Order Date | Line Item Titles | Line Item Prices | Order Link | |--------------|------------------|----------------|-----------|----------|--------------|----------|----------|--------|-------------------|------------------|------------------------------|----------------------------------------------------------------------------------------------------|----------------------------------|------------| | 1003 | abc123@gmail.com | test name | test city | Pakistan | 2522.77 | PKR | 2174.8 | 347.97 | paid | bogus | 2025-07-31T13:45:35-04:00 | Selling Plans Ski Wax, The Complete Snowboard, The Complete Snowboard, The Collection Snowboard: Liquid | 24.95, 699.95, 699.95, 749.95 | View Order | 💬 Discord Message Preview > Tested with Shopify's "Bogus" gateway — works without real card info in a development store.
by Oneclick AI Squad
This n8n workflow monitors pharmacy inventory stored in a Google Sheet, checks daily for low stock or near-expiry medicines, and sends alerts to the pharmacist via email, ensuring timely restocking and waste prevention. Why Use It This workflow automates inventory management for pharmacies, reducing the risk of stockouts or expired medicines, saving time, minimizing losses, and ensuring compliance with safety standards by providing proactive alerts. How to Import It Download the Workflow JSON: Obtain the workflow file from the n8n template or create it based on this document. Import into n8n: In your n8n instance, go to "Workflows," click the three dots, select "Import from File," and upload the JSON. Configure Credentials: Set up Google Sheets, email (e.g., SMTP), and optional SMS (e.g., Twilio) credentials in n8n. Run the Workflow: Activate the scheduled trigger and test with a sample Google Sheet. System Architecture Daily Stock Check (9 AM)**: Automated trigger to monitor inventory levels Fetch Stock Data**: Retrieves current medicine data from Google Sheets Wait For All Data**: Ensures complete data retrieval before processing Check Expiry Date and Low Stock**: Analyzes inventory for alerts Update Google Sheet**: Records alert status and timestamps Send Email Alert**: Notifies pharmacist of low stock and expiry issues Google Sheet File Structure Sheet Name**: PharmacyInventory Range**: A1:E20 (or adjust based on needs) | A | B | C | D | E | |------------|---------------|------------|---------------|---------------| | medicine_name | stock_quantity | expiry_date | alert_status | last_checked | | Paracetamol | 15 | 2025-09-15 | Notified | 2025-08-08 | | Aspirin | 5 | 2025-08-20 | Pending | 2025-08-07 | | Ibuprofen | 20 | 2026-01-10 | - | 2025-08-08 | Columns**: medicine_name: Name of the medicine. stock_quantity: Current stock level (e.g., number of units). expiry_date: Expiry date of the medicine (e.g., YYYY-MM-DD). alert_status: Status of the alert (e.g., Pending, Notified, - for no alert). last_checked: Date of the last inventory check. Customization Ideas Adjust Thresholds**: Change the low stock threshold (e.g., from 10 to 5) or expiry window (e.g., from 30 to 15 days). Add SMS Alerts**: Integrate Twilio or another SMS service for additional notifications. Incorporate Barcode Scanning**: Add a node to import inventory updates via barcode scanners. Dashboard Integration**: Connect to a dashboard (e.g., Google Data Studio) for real-time inventory tracking. Automated Restock Orders**: Add logic to generate purchase orders for low stock items. Requirements to Run This Workflow Google Sheets Account**: For storing and managing inventory data. Email Service**: Gmail, SMTP, or similar for email alerts. n8n Instance**: With Google Sheets and email connectors configured. Cron Service**: For scheduling the daily trigger. Internet Connection**: To access Google Sheets and email APIs. Optional SMS Service**: Twilio or similar for SMS alerts (requires additional credentials). Want a tailored workflow for your business? Our experts can craft it quickly Contact our team
by Oneclick AI Squad
This workflow utilizes Philips IntelliVue Device details to automatically track patient vitals, such as heart rate and oxygen levels. It quickly spots critical health issues and sends alerts to healthcare staff for fast action. The system saves data for records and helps improve patient care with real-time updates. It’s simple to set up and adjust for different needs. Essential Information Processes data from Philips IntelliVue Devices to monitor vitals instantly. Filters and categorizes conditions as critical or non-critical based on thresholds. Sends clinical alerts for critical conditions and logs data for review. Runs every 30 seconds to ensure timely updates. System Architecture Data Collection Pipeline: Poll Device Data Every 30s**: Continuously retrieves vitals from Philips IntelliVue Devices. Fetch from IntelliVue Gateway**: Retrieves data via HTTP GET requests. Processing Pipeline: Process Device Data**: Analyzes and validates the data stream. Alert Generation Flow: Validate & Enrich Data**: Ensures accuracy and adds patient context. Save to Patient Database**: Stores data for records. Check Alert Status**: Applies rules to trigger alerts. Send Clinical Alert**: Notifies staff for critical conditions. Implementation Guide Import workflow JSON into n8n. Configure the Philips IntelliVue Devices gateway URL and test with sample data. Set up alert credentials (e.g., email). Test and adjust rule thresholds. Technical Dependencies Philips IntelliVue Devices for vitals data. n8n for automation. Email or messaging API for alerts. Database for data storage. Customization Possibilities Adjust Switch node rules for critical thresholds. Customize alert messages. Modify database schema. Add logging for analysis.
by Madame AI
Post Jobs to Multiple Boards from Google Sheets using BrowerAct This powerful n8n template turns a Google Sheet into a control panel for automating job postings across multiple job boards. This workflow is perfect for HR teams, recruiters, and hiring managers who want to streamline their hiring process by posting jobs to multiple boards from a single source of truth. Self-Hosted Only This Workflow uses a community contribution and is designed and tested for self-hosted n8n instances only. How it works The workflow is triggered in two ways: manually (to batch-post all "Ready to Post" jobs) or automatically via a Google Sheets Trigger when a single row is updated. An If node filters for jobs marked with the status 'Ready to Post'. A BrowserAct node takes the job details (title, description, logins, target URL) and runs an automation to post the job on the specified board. An If node checks if the posting was successful. If it fails, a Slack alert is sent. A Code node parses the successful result from BrowserAct to get the status and live URL. The workflow Updates the row in Google Sheets with the Live_URL and changes the Status to 'Posted'. A final Slack message is sent to a channel to confirm the successful posting. Requirements BrowserAct** API account for automated posting BrowserAct* "Automated Job Posting to Niche Job Site (Custom Site)*" Template | User needs to customize the workflow based on the target site. BrowserAct** n8n Community Node -> (n8n Nodes BrowserAct) Google Sheets** credentials Slack** credentials for sending notifications Need Help? How to Find Your BrowseAct API Key & Workflow ID How to Connect n8n to Browseract How to Use & Customize BrowserAct Templates How to Use the BrowserAct N8N Community Node
by Rapiwa
Who is this for? This workflow listens for new or updated WooCommerce orders, cleans and structures the order data, processes orders in batches, and standardizes WhatsApp phone numbers. It verifies phone numbers via the Rapiwa API, sends invoice links or messages to verified numbers, and logs results into separate Google Sheets tabs for verified and unverified numbers. Throttling and looping are managed using batch processing and wait delays. What this Workflow Does Receives order events (e.g., order.updated) from WooCommerce or a similar trigger. Extracts customer, billing/shipping address, product list, and invoice link from the order payload. Processes orders/items in batches for controlled throughput. Cleans and normalizes phone numbers by removing non-digit characters. Verifies whether a phone number is registered on WhatsApp using the Rapiwa API. If verified, sends a personalized message or invoice link via Rapiwa's send-message endpoint. If not verified, logs the customer as unverified in Google Sheets. Logs every send attempt (status and validity) into Google Sheets. Uses Wait nodes and batching to avoid API rate limits. Key Features Trigger-based automation (WooCommerce trigger; adaptable to Shopify webhook). Batch processing using SplitInBatches for stable throughput. Phone number cleaning using JavaScript (waNoStr.replace(/\D/g, "")). Pre-send WhatsApp verification via Rapiwa to reduce failed sends. Conditional branching (IF node) between verified and unverified flows. Personalized message templates that include product and customer fields. Logging to Google Sheets with separate flows for verified/sent and unverified/not sent. Wait node for throttling and looping control. Requirements Running n8n instance with nodes: HTTP Request, Code, SplitInBatches, IF, Google Sheets, Wait, and a WooCommerce trigger (or equivalent). Rapiwa account and Bearer token for verify/send endpoints. Google account and Google Sheets access with OAuth2 credentials. WooCommerce store access credentials (or Shopify credentials if adapting). Incoming order payloads containing billing and line_items fields. Google Sheet format (example rows) A Google Sheet formatted like this ➤ Sample | Customer Name | Phone Number | Email Address | Address | Product Title | Product ID | Size | Quantity | Total Price | Product Image | Invoice Link | Status | Validity | | -------------- | ------------- | --------------------------------------------------------------------- | ----------- | ------------------------------------ | ---------- | ---- | -------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | ---------- | | Abdul Mannan| 8801322827799 | contact@spagreen.net | mirpur| T-Shirt - XL | 110 | XL | 1 | BDT 499.00 | https://your_shop_domain/Product/gg.img | https://your_shop_domain/INV/DAS | sent | verified | | Abdul Mannan| 8801322827799 | contact@spagreen.net | mirpur| T-Shirt - XL | 110 | XL | 1 | BDT 499.00 | https://your_shop_domain/Product/gg.img | https://your_shop_domain/INV/DAS | not sent | unverified | Important Notes The Code nodes assume billing and line_items exist in the incoming payload; update mappings if your source differs. The message template references products[0]; if orders contain multiple items, update logic to summarize or iterate products. Start testing with small batches to avoid accidental mass messaging and to respect Rapiwa rate limits. Useful Links Dashboard:** https://app.rapiwa.com Official Website:** https://rapiwa.com Documentation:** https://docs.rapiwa.com Support & Help WhatsApp**: Chat on WhatsApp Discord**: SpaGreen Community Facebook Group**: SpaGreen Support Website**: https://spagreen.net Developer Portfolio**: Codecanyon SpaGreen