by Amit Mehta
How it Works This workflow fetches top news headlines every 10 minutes from NewsAPI, summarizes them using OpenAI's GPT-4o model, and sends a concise email digest to a list of recipients defined in a Google Spreadsheet. It's ideal for anyone who wants to stay updated with the latest news in a short, digestible format. ๐ฏ Use Case Professionals who want summarized daily news Newsletters or internal communication updates Teams that require contextual summaries of the latest events Setup Instructions 1. Upload the Spreadsheet File name: Emails Column: Email with recipient addresses 2. Configure Google Sheets Nodes Connect your Google account to: Email List Send Email 3. Add API Credentials NewsAPI Key** โ for fetching top headlines OpenAI API Key** โ for summarizing headlines Gmail Account** โ for sending the email digest 4. Activate the Workflow Once active, the workflow runs every 10 minutes via a cron trigger Summarized news is sent to the list of emails in the spreadsheet ๐ Workflow Logic Trigger: Every 10 minutes via Cron Fetch News: HTTP request to NewsAPI for top headlines Summarize: Headlines are passed to OpenAI's GPT-4o for 5-bullet summary Read Recipients: Google Sheet is used to collect email recipients Send Email: Summary is formatted and sent via Gmail ๐งฉ Node Descriptions | Node Name | Description | |-----------|-------------| | Cron | Triggers the workflow every 10 minutes. | | HTTP Request - NewsAPI | Fetches top news headlines using NewsAPI. | | Set | Formats or structures raw news data before processing. | | AI Agent | Summarizes the news content using OpenAI into 5 bullet points. | | Email List | Reads recipient email addresses from the 'Emails' Google Spreadsheet. | | Send Email | Sends the email digest to all recipients using Gmail. | ๐ ๏ธ Customization Tips Modify the AI prompt for tone, length, or content type Send summaries to Slack, Telegram, or Notion instead of Gmail Adjust cron interval for more/less frequent updates Change email formatting (HTML vs plain text) ๐ Required Files | File Name | Purpose | |-----------|---------| | Emails spreadsheet | Google Sheet containing the list of email recipients | | daily_news.json | Main n8n workflow file to automate daily news digest | ๐งช Testing Tips Add 1โ2 test email addresses in your spreadsheet Temporarily change the Cron node to run every minute for testing Check email inbox for delivery and formatting Inspect the execution logs for API errors or formatting issues ๐ท Suggested Tags & Categories #News #OpenAI #Automation #Email #Digest #Marketing
by Zach @BrightWayAI
Daily Email Pulse Summary: This agent summarizes a user's daily emails into a clean, actionable summary. It uses OpenAI to analyze content and sends a formatted "Daily Pulse" email at the end of each day. Main use cases: Keep track of open loops and next steps across all email conversations Identify high-potential leads and flag conversations going nowhere Eliminate the need to manually review your inbox at dayโs end Build a smart summary layer using AI without hallucination or noise How it works This workflow can be divided into eight core nodes, each serving a distinct purpose in helping a user stay on top of their day. The result is a curated, AI-generated summary delivered to your inbox โ crafted from real message content, not guesswork. Schedule Trigger (Trigger Node โ Runs Daily at Set Time) Kicks off the workflow at a specific time each day (e.g. 6:00 PM). Ensures you receive your Daily Pulse consistently, without needing to run it manually. Date Transformer (Function Node โ Define Today & Tomorrow Range) Uses JavaScript to calculate the current dayโs date range: today: Start of day (00:00:00) tomorrow: Start of next day (used as a cutoff) This ensures only emails from today are analyzed, keeping the summary focused and current. Get All Messages (Gmail Node โ Fetch Filtered Emails) Pulls in all Gmail messages with internalDate between today and tomorrow. Outputs structured data: from, subject, and body text of each email. This forms the raw data for the daily business pulse. Aggregator (Function or Item Lists Node โ Combine Message Fields) Aggregates each message into a readable format: From: John@example.com Subject: Demo Follow-up Body: Letโs schedule a time this week... All messages are stitched together into a single combinedText string for analysis. This gives the AI model full context for the day in one unified document. Email Cleanup (Function Node โ Remove Noise & Normalize Text) Cleans the combinedText blob to remove: HTML tags Marketing footers (e.g., unsubscribe links) Redundant whitespace or formatting artifacts Ensures GPT gets clean, relevant message content with no distractions. Agent (OpenAI Node โ Generate Structured Summary) Uses a System Prompt to define its role as an AI Chief of Staff. Uses a User Prompt that instructs it to categorize messages into sections: ๐ Open Loops / Pending Follow-Up ๐ Next Steps Youโve Committed To ๐งฒ Leads Worth Following Up On ๐ Conversations That Arenโt Leading Anywhere ๐ง Strategy Notes โ Top 3 Tasks for Tomorrow Built-in guardrails ensure the model only uses real content (no hallucination). Sections with no relevant data are omitted to keep it concise. HTML Formatter (Function Node โ Wrap Markdown in Email-Ready HTML) Wraps the GPT-generated markdown summary in a simple <html><body> structure. Applies white-space: pre-wrap to preserve formatting and spacing. The result is a clean, readable email that renders well across all inboxes (especially Gmail). Email Send (Email Node โ Deliver the Final Pulse) Sends the formatted summary to your email inbox. Subject: Your Daily Business Pulse โ {{today}} HTML body: Uses the formatted output from the previous step. Final output: a well-organized, scannable summary of the dayโs communication โ focused on what matters. Why It Works Automates the end-of-day review ritual without effort Prioritizes follow-ups, action items, and time-sensitive leads Filters out noise and low-value conversations Leverages GPT without risk of hallucination or irrelevant output Delivers clarity, helping you focus on tomorrowโs most important tasks
by Alex Kim
Automate Video Creation with Luma AI Dream Machine and Airtable (Part 1) Description This workflow automates video creation using Luma AI Dream Machine and n8n. It generates dynamic videos based on custom prompts, random camera motion, and predefined settings, then stores the video and thumbnail URLs in Airtable for easy access and tracking. This automation makes it easy to create high-quality videos at scale with minimal effort. ๐ Airtable Base Template ๐ฅ Tutorial Video Setup 1. Luma AI Setup Create an account with Luma AI. Generate an API key from Luma AI for authentication. Ensure the API key has permission to create and manage video requests. 2. Airtable Setup Create an Airtable base with the following fields: Generation ID** โ To match incoming webhook data. Status** โ Workflow status (e.g., "Done"). Video URL** โ Stores the generated video URL. Thumbnail URL** โ Stores the thumbnail URL. Prompt** โ The video prompt used in the request. Aspect Ratio** โ Defines the video format (e.g., 9:16). Duration** โ Length of the video. ๐ Use the Airtable template linked above to simplify setup. 3. n8n Setup Install n8n (local or cloud). Set up Luma AI and Airtable credentials in n8n. Import the workflow and customize the settings based on your needs. How It Works 1. Global Settings Configuration The Set node defines key settings such as: Prompt** โ Example: "A crocheted parrot in a crocheted pirate outfit swinging on a crocheted perch." Aspect Ratio** โ Example: "9:16" Loop** โ Example: "true" Duration** โ Example: "5 seconds" Cluster ID** โ Used to group related videos for easy tracking. Callback URL** - Used for the Webhook workflow in Part 2 2. Random Camera Motion The Code node randomly selects a camera motion (e.g., Zoom In, Pan Left, Crane Up) to create dynamic and visually engaging videos. 3. API Request to Luma AI The HTTP Request node sends a POST request to Luma AIโs API with the following parameters: Prompt โ Uses the defined global settings. Aspect Ratio โ Matches the target platform (e.g., TikTok or YouTube). Duration โ Length of the video. Loop โ Determines if the video should loop. Callback URL โ Sends a POST response when the video is complete. 4. Capture API Response Luma AI sends a POST response to the callback URL once video generation is complete. The response includes: Video URL โ Direct link to the video. Thumbnail URL โ Link to the video thumbnail. Generation ID โ Used to match the record in Airtable. 5. Store in Airtable The Airtable node updates the record with the video and thumbnail URLs. Generation ID** is crucial for matching future webhook responses to the correct video record. Why This Workflow is Useful โ Automates high-quality video creation โ Reduces manual effort by handling prompt generation and API calls โ Random camera motion makes videos more dynamic โ Ensures organized tracking with Airtable โ Scalable โ Ideal for automating large-scale content creation Next Steps Part 2** โ Handling webhook responses and updating Airtable automatically. Future Enhancements** โ Adding more camera motions, multi-platform support, and automated video editing.
by Easy8.ai
This workflow sends an automatic daily summary of your Microsoft Outlook calendar events into a Microsoft Teams channel. Perfect for team visibility or personal reminders. This automation is ideal for team leads, project managers, and remote workers who need to keep stakeholders informed of scheduled events without manual effort. It saves time, ensures consistent communication, and reduces the chance of missing important meetings. How it works Scheduled Trigger The workflow runs automatically every midnight (00:00 UTC). Create filter for "TODAY" value (Code Node) The code node generates the date value for "today" Calculates UTC start and end of the current day Builds a Microsoft Graph-compatible filter string Microsoft Outlook Node: Get Todayโs Events Resource : Event Operation : Get Many Uses {{ $json.filter }}, which is generated from today's date, to retrieve only relevant entries Format Events as HTML (Code Node) Code node transforms each event into a formatted HTML message Meeting Time: 2025-07-08T10:00:00Z Subject: Weekly Sync Summary: Discuss project milestones and blockers. Microsoft Teams Node: Send Summary Message Chat Message | Create | Selected Channel | HTML content Uses the htmlMessage field from the previous node as the message body How to Use Import the Workflow Load the .json file into your n8n instance via โImport from Fileโ or directly via the workflow UI. Set Up Credentials Go to Credentials in n8n. Add or configure your Microsoft Outlook OAuth2 API credential. Add or configure your Microsoft Teams OAuth2 API credential. Assign these credentials to the corresponding nodes in the workflow. Adjust Timezone and Schedule Edit the Schedule Trigger node to reflect your local timezone or preferred time. Configure the Microsoft Outlook Node Ensure the correct Outlook calendar is targeted. Confirm the Get Many node includes this expression in the filter field: {{ $json.filter }} Customize the HTML Output (Optional) Open the โFormat Eventsโ Code node to: Add new fields like Location, Organizer, or Attendees. Adjust date formatting to local time if needed. Target the Correct Teams Channel Open the Microsoft Teams node, select the team and channel where messages should be posted. Message type must be set to HTML if sending formatted content. Test the Workflow Run it manually to verify: Events are fetched correctly. The message is well-formatted and appears in the correct Teams channel. If you see no events, double-check the date filter logic or ensure events exist for today. Example Use Cases Team Syncs**: Automatically notify your project channel every morning with today's meetings. Remote Work**: Help remote teams stay aligned on shared calendars. Personal Assistant**: Keep track of your own dayโs agenda with an automatic Teams message. Requirements Microsoft Outlook** Account must have permission to access calendar events via Graph API. OAuth2 credential must be configured in n8n Credential Manager. Microsoft Teams** Requires permission to post messages to specific channels. OAuth2 credential must be configured and authorized.
by Artur
What this workflow does Monitors Google Drive: The workflow triggers whenever a new CSV file is uploaded. Uses AI to Identify PII Columns: The OpenAI node analyzes the data and identifies PII-containing columns (e.g., name, email, phone). Removes PII: The workflow filters out these columns from the dataset. Uploads Cleaned File: The sanitized file is renamed and re-uploaded to Google Drive, ensuring the original data remains intact. How to customize this workflow to your needs Adjust PII Identification: Modify the prompt in the OpenAI node to align with your specific data compliance requirements. Include/Exclude File Types: Adjust the Google Drive Trigger settings to monitor specific file types (e.g., CSV only). Output Destination: Change the folder in Google Drive where the sanitized file is uploaded. Setup Prerequisites: A Google Drive account. An OpenAI API key. Workflow Configuration: Configure the Google Drive Trigger to monitor a folder for new files. Configure the OpenAI Node to connect with your API Set the Google Drive Upload folder to a different location than the Trigger folder to prevent workflow loops.
by The O Suite
This n8n workflow automates website security audits. It combines direct website scanning, threat intelligence from AlienVault OTX, and advanced analysis from an OpenAI large language model (LLM) to generate and email a comprehensive security report. How it Works (Workflow Flow): Input: A user provides a website URL via a simple web form. Data Collection: An HTTP Request node visits the provided URL to gather initial data (status code, headers). An AlienVault HTTP Request node queries AlienVault OTX for known threats associated with the website's hostname. Data Preparation (Prepare Data for AI): A custom code node consolidates the collected website data and AlienVault intelligence, performing initial checks for common issues (e.g., error codes, missing security headers, AlienVault warnings). AI Analysis (Security Configuration Audit): The prepared data is sent to an OpenAI Chat Model, which acts as a cybersecurity expert. The AI analyzes the data to identify vulnerabilities, explain their impact, suggest exploitation methods, and outline mitigation steps. Report Formatting (Format Report for Email): Another custom code node takes the AI's plain-text report and converts it into a structured HTML format suitable for email. Delivery (Send Security Report): The final HTML report is sent via Gmail to a specified email address. Setup Steps: To use this workflow, you'll need an n8n instance and the following credentials: n8n Instance: Ensure your n8n environment is running. OpenAI API Key: Generate a key from OpenAI. Add an "OpenAI API" credential in n8n (e.g., "OpenAI account"). AlienVault OTX API Key: Obtain a key from your AlienVault OTX profile. Add an "AlienVault OTX API" credential in n8n (e.g., "AlienVault account"). Gmail Account: Set up a "Gmail OAuth2" credential in n8n for sending emails (recommended for security; involves Google Cloud setup). Import Workflow: Copy the workflow's JSON code. In n8n, import the workflow via "Workflows" > "New" > "Import from JSON". Configure Recipient: In the "Send Security Report" node, specify the email address where reports should be sent. Activate: Enable the workflow to start processing submissions. Once activated, access the "On form submission" webhook URL to input a URL and trigger an audit.
by Yaron Been
Automated workflow that transforms BuiltWith technology data into actionable sales leads in Trello, creating a visual sales pipeline. ๐ What It Does Converts tech stack data into Trello cards Organizes leads by technology stack Tracks sales pipeline stages Enables team collaboration Updates automatically ๐ฏ Perfect For Sales teams Business development Account executives Tech startups Digital agencies โ๏ธ Key Benefits โ Visual sales pipeline โ Easy lead qualification โ Team collaboration โ Technology-based filtering โ Automated data entry ๐ง What You Need BuiltWith API access Trello account n8n instance Google account (for authentication) ๐ Data Mapped to Trello Company details Technology stack Contact information Website metrics Custom labels ๐ ๏ธ Setup & Support Quick Setup Start in 20 minutes with our step-by-step guide ๐บ Watch Tutorial ๐ผ Get Expert Support ๐ง Direct Help Turn technology intelligence into sales opportunities with automated lead management.
by Mauricio Perera
n8n Workflow: Calculate the Centroid of a Set of Vectors Overview This workflow receives an array of vectors in JSON format, validates that all vectors have the same dimensions, and computes the centroid. It is designed to be reusable across different projects. Workflow Structure Nodes and Their Functions: Receive Vectors (Webhook): Accepts a GET request containing an array of vectors in the vectors parameter. Expected Input: vectors parameter in JSON format. Example Request: /webhook/centroid?vectors=[[2,3,4],[4,5,6],[6,7,8]] Output: Passes the received data to the next node. Extract & Parse Vectors (Set Node): Converts the input string into a proper JSON array for processing. Ensures vectors is a valid array. If the parameter is missing, it may generate an error. Expected Output Example: { "vectors": [[2,3,4],[4,5,6],[6,7,8]] } Validate & Compute Centroid (Code Node): Validates vector dimensions and calculates the centroid. Validation: Ensures all vectors have the same number of dimensions. Computation: Averages each dimension to determine the centroid. If validation fails: Returns an error message indicating inconsistent dimensions. Successful Output Example: { "centroid": [4,5,6] } Error Output Example: { "error": "Vectors have inconsistent dimensions." } Return Centroid Response (Respond to Webhook Node): Sends the final response back to the client. If the computation is successful, it returns the centroid. If an error occurs, it returns a descriptive error message. Example Response: { "centroid": [4, 5, 6] } Inputs JSON array of vectors, where each vector is an array of numerical values. Example Input { "vectors": [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ] } Setup Guide Create a new workflow in n8n. Add a Webhook node (Receive Vectors) to receive JSON input. Add a Set node (Extract & Parse Vectors) to extract and convert the data. Add a Code node (Validate & Compute Centroid) to: Validate dimensions. Compute the centroid. Add a Respond to Webhook node (Return Centroid Response) to return the result. Function Node Script Example const input = items[0].json; const vectors = input.vectors; if (!Array.isArray(vectors) || vectors.length === 0) { return [{ json: { error: "Invalid input: Expected an array of vectors." } }]; } const dimension = vectors[0].length; if (!vectors.every(v => v.length === dimension)) { return [{ json: { error: "Vectors have inconsistent dimensions." } }]; } const centroid = new Array(dimension).fill(0); vectors.forEach(vector => { vector.forEach((val, index) => { centroid[index] += val; }); }); for (let i = 0; i < dimension; i++) { centroid[i] /= vectors.length; } return [{ json: { centroid } }]; Testing Use a tool like Postman or the n8n UI to send sample inputs and verify the responses. Modify the input vectors to test different scenarios. This workflow provides a simple yet flexible solution for vector centroid computation, ensuring validation and reliability.
by Mujtaba
Overview This n8n workflow template automatically parses incoming Telegram transaction messages and logs structured data into a Google Sheet. Itโs designed to help individuals and small businesses track and record transactions shared via Telegram without manual data entry. Target Audience This template is ideal for: Individuals, freelancers, and small businesses who receive transaction or payment notifications through Telegram and want to organize them in Google Sheets. Anyone using self-hosted n8n (required due to custom community nodes). Problem Solved Manually copying transaction details from Telegram to Google Sheets is error-prone and time-consuming. This workflow automates the process by: Monitoring a Telegram bot/chat for new messages. Parsing transaction details (amount, sender, date, etc.). Logging them in real-time into a Google Sheet for easy tracking. Setup Instructions Telegram Bot Setup Create a Telegram bot using BotFather. Add the bot to the desired group/channel and grant admin permissions if needed. Note down the bot token. Google Sheets Setup Create a Google Sheet with relevant columns (e.g., Date, Amount, Sender, Transaction ID). Set up Google Sheets credentials in n8n for access. n8n Workflow Configuration Import this template into your self-hosted n8n instance. Update the Telegram node: Add your bot token and specify the chat/group ID. Update the Google Sheets node: Link it to your created sheet and ensure column mapping matches your sheet structure. Adjust parsing logic if your message format varies (see next section for examples). Community Nodes This workflow uses custom community nodes. Ensure these are installed via the n8n settings or CLI: [List your required community nodes here, e.g., n8n-nodes-telegram, n8n-nodes-gsheet, etc.] Activate the Workflow Save and activate your workflow. Send a test transaction message to your Telegram group/chat and verify data appears in your Google Sheet. Troubleshooting If messages are not being picked up, check bot permissions and the chat ID. Ensure Google Sheets credentials are correct and the sheet is accessible. Double-check that custom nodes are properly installed and up-to-date. Example Telegram Message Formats Received: $75 from @john_doe on 2024-05-29. Transaction ID: 12345XYZ. Paid $120 to @vendor on 2024-05-28. Ref: 67890ABC. You received โน5,000 from @amit. ID: 54321PQR. Date: 29/05/2024 The workflow parses messages in the above formats and logs the following columns: Date Amount Sender/Receiver Transaction/Reference ID If your message format differs, update the regex in the parsing node. Disclaimer This n8n workflow template uses custom community nodes and is only compatible with the self-hosted version of n8n. Workflow Changes (For n8n Canvas) Rename the Nodes: 'If' node โ โIs Transaction Message?โ 'Google Sheets' node โ โLog to Google Sheetโ (Rename other generic nodes for clarity, e.g., 'Telegram' โ โListen for Telegram Messagesโ, 'Function' โ โParse Transaction Detailsโ) Sticky Note Improvement: (Edit the sticky note or add one if missing) Workflow Steps: Listen for Telegram Messages: This node receives new messages from the Telegram bot. Is Transaction Message? Checks if the message matches known transaction patterns. Parse Transaction Details: Extracts amount, sender, date, and transaction ID using regex. Log to Google Sheet: Records the parsed transaction in the linked Google Sheet for easy tracking.
by David Olusola
AI Lead Capture System - Complete Setup Guide Prerequisites n8n instance (cloud or self-hosted) Google AI Studio account (free tier available) Google account for Sheets integration Website with chat widget capability Phase 1: Core Infrastructure Setup Step 1: Set Up Google AI Studio Go to Google AI Studio Create account or sign in with Google Navigate to "Get API Key" Create new API key for your project Copy and securely store the API key Free tier limits: 15 requests/minute, 1 million tokens/month Step 2: Configure Google Sheets Create new Google Sheet for lead storage Add column headers (exact names): Full Name Company Name Email Address Phone Number Project Intent/Needs Project Timeline Budget Range Preferred Communication Channel How they heard about DAEX AI Copy the Google Sheet ID from URL (between /d/ and /edit) Ensure sheet is accessible to your Google account Step 3: Import n8n Workflow Open your n8n instance Create new workflow Click "..." menu โ Import from JSON Paste the provided workflow JSON Workflow will appear with all nodes connected Phase 2: Credential Configuration Step 4: Set Up Google Gemini API In n8n, go to Credentials โ Add Credential Search for "Google PaLM API" Enter your API key from Step 1 Test connection Link to the "Google Gemini Chat Model" node Step 5: Configure Google Sheets Access Go to Credentials โ Add Credential Select "Google Sheets OAuth2 API" Follow OAuth flow to authorize your Google account Test connection with your sheet Link to the "Google Sheets" node Phase 3: Workflow Customization Step 6: Update Company Information Open the AI Agent node In the system message, replace all mentions of: Company name and description Service offerings and specializations FAQ knowledge base Typical project timelines and pricing ranges Adjust conversation tone to match your brand voice Step 7: Configure Lead Qualification Fields In the AI Agent system message, modify the required information list: Add/remove qualification questions Adjust budget ranges for your services Customize timeline options Update communication channel preferences In Google Sheets node, update column mappings if you changed fields Step 8: Set Up Sheet Integration Open Google Sheets node Click on Document ID dropdown Select your lead capture sheet Verify all column mappings match your sheet headers Test with sample data Phase 4: Website Integration Step 9: Get Webhook URL Open Webhook node in n8n Copy the webhook URL (starts with your n8n domain) Note: URL format is https://your-n8n-domain.com/webhook/[unique-id] Step 10: Connect Your Chat Widget Choose your integration method: Option A: Direct JavaScript Integration javascript// Add to your website function sendMessage(message, sessionId) { fetch('YOUR_WEBHOOK_URL', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ message: message, sessionId: sessionId || 'visitor-' + Date.now() }) }) .then(response => response.json()) .then(data => { // Display AI response in your chat widget displayMessage(data.message); }); } Option B: Chat Platform Webhook Open your chat platform settings (Intercom, Crisp, etc.) Find webhook/integration section Add webhook URL pointing to your n8n endpoint Configure to send message and session data Option C: Zapier/Make.com Integration Create new Zap/Scenario Trigger: New chat message from your platform Action: HTTP POST to your n8n webhook Map message content and session ID Phase 5: Testing & Optimization Step 11: Test Complete Flow Send test message through your chat widget Verify AI responds appropriately Check conversation context is maintained Confirm lead data appears in Google Sheets Test with various conversation scenarios Step 12: Monitor Performance Check n8n execution logs for errors Monitor Google Sheets for data quality Review conversation logs for improvement opportunities Track response times and conversion rates Step 13: Fine-Tune Conversations Analyze real conversation logs Update system prompts based on common questions Add new FAQ knowledge to the AI agent Adjust qualification questions based on lead quality Optimize for your specific customer patterns Phase 6: Advanced Features (Optional) Step 14: Add Lead Scoring Create new column in Google Sheets for "Lead Score" Update AI agent to calculate scores based on: Budget range (higher budget = higher score) Timeline urgency (sooner = higher score) Project complexity (complex = higher score) Add conditional formatting in Google Sheets to highlight high-value leads Step 15: Set Up Notifications Add email notification node after Google Sheets Configure to send alerts for high-priority leads Include lead details and conversation summary Set up different notification rules for different lead scores Step 16: Analytics Dashboard Connect Google Sheets to Google Data Studio or similar Create dashboard showing: Daily lead volume Conversion rates by source Average qualification time Lead quality scores Revenue pipeline from captured leads Troubleshooting Common Issues AI Not Responding Check Google Gemini API key validity Verify API quota not exceeded Review n8n execution logs for errors Data Not Saving to Sheets Confirm Google Sheets permissions Check column name matching Verify sheet ID is correct Chat Widget Not Connecting Test webhook URL directly with curl/Postman Verify JSON format matches expected structure Check CORS settings if browser-based integration Conversation Context Lost Ensure sessionId is unique per visitor Check memory node configuration Verify sessionId is passed consistently
by JaredCo
This n8n workflow demonstrates how to transform natural language date and time expressions into structured data with 96%+ accuracy. Parse complex expressions like "early next July", "2 weeks after project launch", or "end of Q3" into precise datetime objects with confidence scoring, timezone intelligence, and business rules validation for any automation workflow. Good to know Achieves 96%+ accuracy on complex natural language date expressions At time of writing, this is the most advanced open-source date parser available Includes AI learning that improves over time with user corrections Supports 6 languages with auto-detection (English, Spanish, French, German, Italian, Portuguese) Sub-millisecond response times with intelligent caching Enterprise-grade with business intelligence and timezone handling How it works Natural Language Input**: Receives date expressions via webhook, form, email, or chat AI-Powered Parsing**: Your world-class date parser processes the text through: 50+ custom rule patterns for complex expressions Multi-language auto-detection and smart translation Confidence scoring (0.0-1.0) for AI decision-making Ambiguity detection with helpful suggestions Business Intelligence**: Applies enterprise rules automatically: Holiday calendar awareness (US + International) Working hours validation and warnings Business day auto-adjustment Timezone normalization (IANA format) Smart Scheduling**: Creates calendar events with: Structured datetime objects (start/end times) Confidence metadata for workflow decisions Alternative interpretations for ambiguous inputs Rich context for follow-up actions Integration Ready**: Outputs connect seamlessly to: Google Calendar, Outlook, Apple Calendar CRM systems (HubSpot, Salesforce) Project management tools (Notion, Asana) Communication platforms (Slack, Teams) How to use The webhook trigger receives natural language date requests from any source Replace the MCP server URL with your deployed date parser endpoint Configure timezone preferences for your organization Customize business rules (working hours, holidays) in the parser settings Connect calendar integration nodes for automatic event creation Add notification workflows for scheduling confirmations Use Cases Meeting Scheduling**: "Schedule our quarterly review for early Q3" Project Management**: "Set deadline 2 weeks after product launch" Event Planning**: "Book venue for the weekend before Labor Day" Personal Assistant**: "Remind me about dentist appointment next Tuesday morning" International Teams**: "Team standup tomorrow morning" (auto-timezone conversion) Seasonal Planning**: "Launch campaign in late spring 2025" Requirements Natural Language Date Parser MCP server (provided code) Webhook endpoint or form trigger Calendar integration (Google Calendar, Outlook, etc.) Optional: Slack/Teams for notifications Optional: Database for learning pattern storage Customizing this workflow Multi-language Support**: Enable auto-detection for global teams Business Rules**: Configure company holidays and working hours Learning System**: Enable AI learning from user corrections Integration Depth**: Connect to your existing calendar and CRM systems Confidence Thresholds**: Set minimum confidence levels for auto-scheduling Ambiguity Handling**: Route unclear dates to human review or clarification requests Sample Input/Output Input Examples: "early next July" "2 weeks after Thanksgiving" "next Wednesday evening" "Q3 2025" "maรฑana por la maรฑana" (Spanish) "first thing Monday" Rich Output: { "parsed": [{ "start": "2025-07-01T00:00:00Z", "end": "2025-07-10T23:59:59Z", "timezone": "America/New_York" }], "confidence": 0.95, "method": "custom_rules", "business_insights": [{ "type": "business_warning", "message": "Selected date range includes July 4th holiday" }], "predictions": [{ "type": "time_preference", "suggestion": "You usually schedule meetings at 10 AM" }], "ambiguities": [], "alternatives": [{ "interpretation": "Early July 2026", "confidence": 0.15 }], "performance": { "cache_hit": true, "response_time": "0.8ms" } } Why This Workflow is Unique World-Class Accuracy**: 96%+ success rate on complex expressions AI Learning**: Improves over time with user feedback Global Ready**: Multi-language and timezone intelligence Business Smart**: Enterprise rules and holiday awareness Performance Optimized**: Sub-millisecond cached responses Context Aware**: Provides confidence scores and alternatives for AI decision-making Transform your scheduling workflows from rigid form inputs to natural, conversational date requests that your users will love!
by Khairul Muhtadin
โ What Problem Does It Solve? Manual exporting or copying of leads and newsletter signups from web forms to spreadsheets is time-consuming, error-prone, and delays follow-ups or marketing activities. Traditional workflows can lose data due to mistakes or lack of automation. The Fluentform Export workflow automates the capture and organization of form submissions and newsletter signups into Google Sheets ๐ก Why Use this workflow? Save Time:** Automate tedious manual data entry for form leads and newsletter signups Avoid Data Loss:** Ensure all submissions are reliably logged with real-time updates Organized Data:** Separate sheets for newsletter and contact form data maintain clarity Easy Integration:** Works seamlessly with Fluentform submissions and Google Sheets Flexible & Scalable:** Quickly adapt to changes in form structure or spreadsheet columns โก Who Is This For? Marketers & Growth Teams:** Automatically gather leads and newsletter contacts to fuel campaigns Small to Medium Businesses:** Reduce overhead from manual data management and errors Customer Support Teams:** Keep track of form submissions in a centralized, accessible place Website Admins:** Simplify data workflow from Fluentform plugins without coding ๐ง What This Workflow Does โฑ Trigger:** Listens for incoming POST requests from Fluentform via webhook ๐ Step 2:** Evaluates if the submission is a newsletter signup or a form based on a specific token ๐ Step 3 (Newsletter Path):** Maps email from newsletter submissions and appends/updates Google Sheets "News Letter" tab ๐ Step 3 (Form Path):** Extracts full name, email, phone, subject, and message fields and appends/updates the Google Sheets "form" tab ๐ Step 4:** Sends a JSON success response back to Fluentform confirming receipt ๐ Setup Instructions Import the provided .json workflow file into your n8n instance Set up credentials: Google Sheets OAuth2 credential with access to your target spreadsheets Customize workflow elements: Update Fluentform webhook URL in your Fluentform settings to the n8n webhook URL generated Adjust field names or spreadsheet columns if your form structure changes Update spreadsheet IDs and sheet names used in the Google Sheets nodes to match your own Sheets Test workflow thoroughly with actual Fluentform submissions to verify data flows correctly ๐งฉ Pre-Requirements Running n8n instance (Cloud or self-hosted) Google account with access to Google Sheets and OAuth credentials Fluentform installed on your website with ability to set webhook URL Target Google Sheets prepared with tabs named "News Letter" and "form" with expected columns ๐ง Nodes Used Webhook (POST - Retrieve Leads) If (Form or newsletter?) Set (newsletter and form data preparation) Google Sheets (Append/update for newsletter and form sheets) Respond to Webhook ๐ Support Made by: khaisa Studio Tag: automation, Google Sheets, Fluentform, Leads Category: Marketing Need a custom? Contact Me