by athipat
Automated AI Content Publisher This n8n workflow is your all-in-one solution for automated content creation and publishing. It intelligently crafts unique articles in Thai, generates captivating AI images, and seamlessly publishes them to your website while notifying you via Telegram. Say goodbye to manual content pipelines and hello to effortless, AI-driven publishing. How It Works This workflow kicks off when new news data hits your designated Google Sheet, then it springs into action: Smart Image Selection: An AI analyzes your news content to decide if a general photorealistic image or a more artistic, risoprint-style AI image is the best fit. Article Generation: Another AI drafts a high-quality, long-form article in flawless Thai, adapting its format (listicle or analytical) to perfectly suit the topic. SEO & Marketing Boost: A specialized AI then optimizes your content by generating concise titles, engaging excerpts, and relevant tags in both Thai and English. It also creates the perfect prompts for image generation. AI Image Creation: Leveraging Google Gemini, the workflow generates stunning visuals, producing either photorealistic or artistic risoprint-style images based on the AI's prompts. Seamless Publishing: Your newly created article, complete with its AI-generated image and all metadata, is automatically posted to your website. Instant Notifications: You'll get a quick ping on Telegram with a summary of the new post, so you're always in the loop. Setup To get this workflow up and running, you'll need to configure a few things: Google Sheet: Link your Google Sheet and specify the sheet name and the column containing your news description. Ollama: Set up your Ollama API credentials to connect the workflow to your local or remote Ollama instance. Google Gemini API: Provide your Google Gemini API key to enable AI image generation. Website API: Create a credential for your website, including its posting URL, an API Key for authentication, and your desired user_id and username for posts. You can also add optional fields like bgColor, LinkAff, postType, and embeddedContent here. Telegram: Set up your Telegram API credential with your bot token and the chatId where you want to receive notifications.
by DataMinex
📊 Real-Time Flight Data Analytics Bot with Dynamic Chart Generation via Telegram 🚀 Template Overview This advanced n8n workflow creates an intelligent Telegram bot that transforms raw CSV flight data into stunning, interactive visualizations. Users can generate professional charts on-demand through a conversational interface, making data analytics accessible to anyone via messaging. Key Innovation: Combines real-time data processing, Chart.js visualization engine, and Telegram's messaging platform to deliver instant business intelligence insights. 🎯 What This Template Does Transform your flight booking data into actionable insights with four powerful visualization types: 📈 Bar Charts**: Top 10 busiest airlines by flight volume 🥧 Pie Charts**: Flight duration distribution (Short/Medium/Long-haul) 🍩 Doughnut Charts**: Price range segmentation with average pricing 📊 Line Charts**: Price trend analysis across flight durations Each chart includes auto-generated insights, percentages, and key business metrics delivered instantly to users' phones. 🏗️ Technical Architecture Core Components Telegram Webhook Trigger: Captures user interactions and button clicks Smart Routing Engine: Conditional logic for command detection and chart selection CSV Data Pipeline: File reading → parsing → JSON transformation Chart Generation Engine: JavaScript-powered data processing with Chart.js Image Rendering Service: QuickChart API for high-quality PNG generation Response Delivery: Binary image transmission back to Telegram Data Flow Architecture User Input → Command Detection → CSV Processing → Data Aggregation → Chart Configuration → Image Generation → Telegram Delivery 🛠️ Setup Requirements Prerequisites n8n instance** (self-hosted or cloud) Telegram Bot Token** from @BotFather CSV dataset** with flight information Internet connectivity** for QuickChart API Dataset Source This template uses the Airlines Flights Data dataset from GitHub: 🔗 Dataset: Airlines Flights Data by Rohit Grewal Required Data Schema Your CSV file should contain these columns: airline,flight,source_city,departure_time,arrival_time,duration,price,class,destination_city,stops File Structure /data/ └── flights.csv (download from GitHub dataset above) ⚙️ Configuration Steps 1. Telegram Bot Setup Create a new bot via @BotFather on Telegram Copy your bot token Configure the Telegram Trigger node with your token Set webhook URL in your n8n instance 2. Data Preparation Download the dataset from Airlines Flights Data Upload the CSV file to /data/flights.csv in your n8n instance Ensure UTF-8 encoding Verify column headers match the dataset schema Test file accessibility from n8n 3. Workflow Activation Import the workflow JSON Configure all Telegram nodes with your bot token Test the /start command Activate the workflow 🔧 Technical Implementation Details Chart Generation Process Bar Chart Logic: // Aggregate airline counts const airlineCounts = {}; flights.forEach(flight => { const airline = flight.airline || 'Unknown'; airlineCounts[airline] = (airlineCounts[airline] || 0) + 1; }); // Generate Chart.js configuration const chartConfig = { type: 'bar', data: { labels, datasets }, options: { responsive: true, plugins: {...} } }; Dynamic Color Schemes: Bar Charts: Professional blue gradient palette Pie Charts: Duration-based color coding (light→dark blue) Doughnut Charts: Price-tier specific colors (green→purple) Line Charts: Trend-focused red gradient with smooth curves Performance Optimizations Efficient Data Processing: Single-pass aggregations with O(n) complexity Smart Caching: QuickChart handles image caching automatically Minimal Memory Usage: Stream processing for large datasets Error Handling: Graceful fallbacks for missing data fields Advanced Features Auto-Generated Insights: Statistical calculations (percentages, averages, totals) Trend analysis and pattern detection Business intelligence summaries Contextual recommendations User Experience Enhancements: Reply keyboards for easy navigation Visual progress indicators Error recovery mechanisms Mobile-optimized chart dimensions (800x600px) 📈 Use Cases & Business Applications Airlines & Travel Companies Fleet Analysis**: Monitor airline performance and market share Pricing Strategy**: Analyze competitor pricing across routes Operational Insights**: Track duration patterns and efficiency Data Analytics Teams Self-Service BI**: Enable non-technical users to generate reports Mobile Dashboards**: Access insights anywhere via Telegram Rapid Prototyping**: Quick data exploration without complex tools Business Intelligence Executive Reporting**: Instant charts for presentations Market Research**: Compare industry trends and benchmarks Performance Monitoring**: Track KPIs in real-time 🎨 Customization Options Adding New Chart Types Create new Switch condition Add corresponding data processing node Configure Chart.js options Update user interface menu Data Source Extensions Replace CSV with database connections Add real-time API integrations Implement data refresh mechanisms Support multiple file formats Visual Customizations // Custom color palette backgroundColor: ['#your-colors'], // Advanced styling borderRadius: 8, borderSkipped: false, // Animation effects animation: { duration: 2000, easing: 'easeInOutQuart' } 🔒 Security & Best Practices Data Protection Validate CSV input format Sanitize user inputs Implement rate limiting Secure file access permissions Error Handling Graceful degradation for API failures User-friendly error messages Automatic retry mechanisms Comprehensive logging 📊 Expected Outputs Sample Generated Insights "✈️ Vistara leads with 350+ flights, capturing 23.4% market share" "📈 Long-haul flights dominate at 61.1% of total bookings" "💰 Budget category (₹0-10K) represents 47.5% of all bookings" "📊 Average prices peak at ₹14K for 6-8 hour duration flights" Performance Metrics Response Time**: <3 seconds for chart generation Image Quality**: 800x600px high-resolution PNG Data Capacity**: Handles 10K+ records efficiently Concurrent Users**: Scales with n8n instance capacity 🚀 Getting Started Download the workflow JSON Import into your n8n instance Configure Telegram bot credentials Upload your flight data CSV Test with /start command Deploy and share with your team 💡 Pro Tips Data Quality**: Clean data produces better insights Mobile First**: Charts are optimized for mobile viewing Batch Processing**: Handles large datasets efficiently Extensible Design**: Easy to add new visualization types Ready to transform your data into actionable insights? Import this template and start generating professional charts in minutes! 🚀
by Femi Ad
"Ade Technical Analyst" is a dual-workflow AI system combining conversational intelligence with visual chart analysis through Telegram. The system features 11 primary nodes for conversation management and 8 secondary nodes for chart generation and analysis. Core Components: Telegram Integration: Message handling with dynamic typing indicators AI Personality: "Ade" - a financial analyst with 50+ years NYSE/LSE experience using Claude 3.5 Sonnet Chart Generation: TradingView integration via Chart-IMG API with MACD and volume indicators Visual Analysis: GPT-4O vision for technical pattern recognition Memory System: Session-based conversation context retention Target Users Individual traders seeking professional-grade analysis without subscription costs Financial advisors wanting 24/7 AI-powered client support Investment educators needing interactive learning tools Fintech companies requiring white-label analysis solutions Setup Requirements Critical Security Fix Needed: Remove hardcoded API key from Chart-IMG node immediately Store all credentials securely in n8n credential manager Required APIs: OpenRouter (Claude 3.5 Sonnet) OpenAI (GPT-4O vision) Chart-IMG API Telegram Bot Token Technical Prerequisites: n8n version 1.7+ with Langchain nodes Webhook configuration for Telegram Dual-workflow setup with proper ID referencing Workflow Requirements Security Compliance: Never hardcode API keys in workflow JSON files Use n8n credential manager for all sensitive data Implement proper session isolation for user data Include mandatory financial disclaimers Performance Specifications: Model temperature: 0.8 for balanced responses Token limit: 500 for optimized performance Dark theme charts with professional indicators Session-based memory management Need help customizing? Contact me for consulting and support or add me on LinkedIn
by berke
Who's it for This workflow is perfect for sales teams, customer service departments, and businesses that frequently handle spare parts inquiries via email. It's especially valuable for companies managing multiple products with complex pricing structures who want to automate their quotation process while maintaining professional, multilingual communication. What it does This workflow: Monitors your Gmail inbox** for incoming spare parts requests Automatically generates professional HTML price quotes** in the sender's language Sends personalized replies** Uses AI to detect the email language (supports Turkish, English, German, and more) Extracts project or part codes** Fetches pricing data from Google Sheets** Calculates totals accurately** Formats everything** into a clean, professional quote that matches your brand How it works Schedule Trigger runs every minutes to check for new emails Gmail node fetches the latest unread email Keyword detection filters for spare parts-related terms in multiple languages AI Agent processes the request by: Detecting the email's language Extracting project/part codes Querying three Google Sheets: CRM, Bill of Materials, Pricing Calculating line totals and grand total Generating a professional HTML quote in the sender's language Gmail reply sends the quote and marks the original email as read Requirements n8n self-hosted or cloud instance Gmail account with OAuth2 authentication Google Sheets with proper structure (3 sheets for CRM, BoM, and Pricing data) Google Gemini API key for AI processing Basic understanding of Google Cloud Console for OAuth setup How to set up Import the workflow into your n8n instance Create three Google Sheets with the following column structure: CRM Sheet: Email, ProjectCode, CustomerName Bill of Materials: ProjectCode, PartCode, PartDescription, Quantity Pricing Sheet: PartCode, UnitPriceEUR, PartDescription Configure credentials: Set up Gmail OAuth2 in Google Cloud Console Configure Google Sheets OAuth2 (can use same project) Get your Google Gemini API key from Google AI Studio Update the workflow: Replace placeholder Sheet IDs in the CRM, BoM, and Pricing nodes Adjust company name in the AI Agent’s system message Modify keyword detection if needed Test with a sample email before activating How to customize the workflow Add more languages**: Update the keyword detection node with additional terms Modify the quote template**: Edit the HTML in the AI Agent's message to match your branding Change data sources**: Replace Google Sheets with PostgreSQL or MySQL nodes Add approval steps**: Insert a manual approval node for quotes above a certain value Include attachments**: Add PDF or product spec file nodes Enhance notifications**: Add Slack or Teams notifications after quote is sent Implement follow-ups**: Create a separate workflow for reminder emails This template provides a solid foundation for automating your quotation process, while staying flexible to fit your specific business needs. Feel free to contact me for further implementation guidelines: LinkedIn: Berke
by Sobek
📝 DESCRIPTION OF THE WORKFLOW This workflow connects Salesforce and Geotab to streamline fleet tracking for field service jobs (Work Orders). When a new Work Order is created in Salesforce (with a 'New' status and valid coordinates), it creates a circular geofence zone in Geotab and updates the Work Order with the zone ID. If geolocation is missing, an alert email is sent to dedicated email. The workflow uses a Salesforce Outbound Message to trigger an n8n webhook. It includes robust credential handling and optional logic to skip or notify on bad data. Use Cases: Automating vehicle geofence setup for service visits Enhancing CRM-to-fleet system synchronisation Enforcing work orders data quality via alerts Integrations Used: Salesforce Geotab API Microsoft Outlook (or any SMTP-compatible service) Tags: geotab, salesforce, fleet management, gps tracking, field service, crm, automation, webhook, integration ADDITIONAL RESOURCES 🔗 Salesforce Salesforce Login \[Salesforce Setup (Admin Console)]\(https://login.salesforce.com/ → click “Setup” gear icon) Outbound Messages Documentation Salesforce Developer Documentation Salesforce Workbench (API Testing Tool) 🔗 Geotab Geotab Login (MyGeotab) Geotab Developer Portal Geotab API Explorer Geotab SDK (JavaScript Samples) Geotab Support Centre
by InfraNodus
This template can be used to find the content gaps in your competitors' discourse: identifying the topics they are not yet connecting and giving you an opportunity to fill in this gap with your content and product ideas. It will also generate research questions that will help bridge the gaps and generate new ideas. The template showcases the use of multiple n8n nodes and processes: enriching Google sheets file with the new data data extraction content enhancement using GraphRAG approach content gap / research question generation This approach can be very useful for research, marketing, and SEO applications as you can quickly get an overview of the main topics that are available online for a certain niche and understand what is missing. What are Content Gaps in Marketing and SEO? In the context of SEO, content gaps are usually understood as the topics that your competitors rank for but you do not. However, it's hard to rank for these topics because there's very high competition. So a much more effective way is to identify the gaps between the topics your competitors are talking about that are not yet bridged in their discourse. If you address these gaps in your content, you will increase the informational gain that your content offers and also offer a novel perspective while touching upon the topics that are relevant in your field. For example, if we analyze the top websites for "body and physical practices, fitness, etc." we will see that most of them are talking about the health and fitness aspects and another big topic is the community aspect. However, there is a gap between the two topics: which means that most of the websites (companies) that talk about this topic don't mention the two in the same context. This might be an opportunity: bridging the gap between health, fitness but also emphasizing the community aspect that comes with a collective practice. How it works This template consists of the two stages: 1) Data enrichment of a Google sheet file with a list of your competitors using InfraNodus' GraphRAG to generate topical summaries and graph summaries for every URL you're analyzing. 2) Insight generation (using InfraNodus to identify the main topical clusters and gaps in those summaries, these insights are then added to the Google sheet file. Additionally, it contains a sub workflow that you can activate and launch to ask Perplexity model to conduct a market research and find the companies that operate in your field and populate the original Google sheet file. Here's a description step by step: Step 0: Populate the Google sheets file with the company data (either manually or using the sub-workflow provided or Manus AI / Deep Research) Steps 1-2: Triggering and Launching the workflow, extracting the company URL from the Google sheet row Step 3: Scraping the url content from the companies' websites and cleaning the data Steps 5-7: Use InfraNodus GraphRAG Content Enhancer to get a topical summary and graph summary. This is what you're going to get: Steps 8-10: Use InfraNodus AI to generate insight advice and research questions based on the content gaps How to use You need an InfraNodus GraphRAG API account and key to use this workflow. Create an InfraNodus account Get the API key at https://infranodus.com/api-access and create a Bearer authorization key for the InfraNodus HTTP nodes. Create a separate knowledge graph for each expert (using PDF / content import options) in InfraNodus For each graph, go to the workflow, paste the name of the graph into the body name field. Keep other settings intact or learn more about them at the InfraNodus access points page. Once you add one or more graphs as experts to your flow, add the LLM key to the OpenAI node and launch the workflow Requirements An InfraNodus account and API key A Google Sheet account and an authorization key Note: OpenAI key is not required. But you might want to get a Perplexity AI key if you'd like to use the sub-workflow that populates the Google sheet with your competitors' website addresses (if you don't have this list yet). Customizing this workflow You can use this same workflow with a Telegram bot or Slack (to be notified of the summaries and ideas). You can also hook up automated social media content creation workflows in the end of this template, so you can generate posts that are relevant (covering the important topics in your niche) but also novel (because they connect them in a new way). Check out our n8n templates for ideas at https://n8n.io/creators/infranodus/ Check out the complete guide at https://support.noduslabs.com/hc/en-us/articles/20234254556828-Find-Content-Gaps-in-Websites-Market-Research-and-SEO-n8n-Workflow Also check the full tutorial with a conceptual explanation at https://support.noduslabs.com/hc/en-us/articles/20454382597916-Beat-Your-Competition-Target-Their-Content-Gaps-with-this-n8n-Automation-Workflow Also check out the video tutorial with a demo: For support and help with this workflow, please, contact us at https://support.noduslabs.com
by Joseph LePage
This n8n workflow template is designed to integrate a DeepSeek AI agent with Telegram, incorporating long-term memory capabilities for personalized and context-aware responses. Here's a detailed breakdown: Core Features Telegram Integration Uses a webhook to receive messages from Telegram users. Validates user identity and message content before processing. AI-Powered Responses Employs DeepSeek's AI models for conversational interactions. Includes memory capabilities to personalize responses based on past interactions. Error Handling Sends an error message if the input cannot be processed. Model Options 🧠 DeepSeek-V3 Chat**: Handles general conversational tasks. DeepSeek-R1 Reasoning**: Provides advanced reasoning capabilities for complex queries. Memory Buffer Window**: Maintains session context for ongoing conversations. Quick Setup 🛠️ Telegram Webhook Configuration Set up a webhook using the Telegram Bot API: https://api.telegram.org/bot{my_bot_token}/setWebhook?url={url_to_send_updates_to} Replace {my_bot_token} with your bot's token and {url_to_send_updates_to} with your n8n webhook URL. Verify the webhook setup using: https://api.telegram.org/bot{my_bot_token}/getWebhookInfo DeepSeek API Configuration Base URL: https://api.deepseek.com Obtain your API key from the DeepSeek platform. Implementation Details 🔧 User Validation The workflow validates the user's first name, last name, and ID using data from incoming Telegram messages. Only authorized users proceed to the next steps. Message Routing Routes messages based on their type (text, audio, or image) using a switch node. Ensures appropriate handling for each message format. AI Agent Interaction Processes text input using DeepSeek-V3 or DeepSeek-R1 models. Customizable system prompts define the AI's behavior and rules, ensuring user-centric and context-aware responses. Memory Management Retrieves long-term memories stored in Google Docs to enhance personalization. Saves new memories based on user interactions, ensuring continuity across sessions.
by Oneclick AI Squad
An intelligent food menu update notification system that automatically detects changes in your restaurant's special menu and sends personalized notifications to customers via multiple channels - WhatsApp, Email, and SMS. This workflow ensures your customers are always informed about new dishes, price changes, and menu availability in real-time. What's the Goal? Automatically monitor special menu updates from Google Sheets Detect menu changes and generate alert messages using AI Send multi-channel notifications (WhatsApp, Email, SMS) based on customer preferences Maintain comprehensive notification logs for tracking and analytics Provide seamless customer communication for menu updates Enable restaurant owners to keep customers engaged with latest offerings By the end, you'll have a fully automated menu notification system that keeps your customers informed and engaged with your latest culinary offerings. Why Does It Matter? Manual menu update communication is time-consuming and often missed by customers. Here's why this workflow is essential for restaurants: Real-Time Updates**: Customers receive instant notifications about menu changes Multi-Channel Reach**: WhatsApp, Email, and SMS ensure maximum customer reach Personalized Experience**: Customers receive notifications via their preferred channels Increased Sales**: Immediate awareness of new items drives orders Customer Retention**: Regular updates keep customers engaged and coming back Operational Efficiency**: Eliminates manual notification tasks for staff Data-Driven Insights**: Comprehensive logging for marketing analytics Think of it as your restaurant's digital menu announcer that never misses an update. How It Works Here's the complete workflow process: Step 1: Menu Monitoring Node**: Daily Menu Update Scheduler Function**: Triggers the workflow on a scheduled basis Frequency**: Configurable (hourly, daily, or real-time) Step 2: Data Retrieval Node**: Fetch Special Menu Data Function**: Pulls current menu data from Google Sheets (Sheet 1) Data**: Retrieves item details, prices, descriptions, and availability Step 3: Change Detection Node**: Detect Menu Changes Function**: Compares current data with previous state Logic**: Identifies new items, price changes, or availability updates Step 4: AI Content Generation Node**: Generate Menu Alert Message Function**: Creates engaging notification content using AI Output**: Formatted message with new items, descriptions, and prices Step 5: Customer Data Processing Node**: Fetch Customer Contact List Function**: Retrieves customer preferences from Google Sheets (Sheet 2) Filter**: Segments customers by notification preferences Step 6: Multi-Channel Delivery The workflow splits into three parallel notification channels: WhatsApp Branch Node**: Filter WhatsApp Users Function**: Identifies customers with WhatsApp notifications enabled Node**: Send WhatsApp Notification Function**: Delivers menu updates via WhatsApp Node**: Log WhatsApp Status Function**: Records delivery status in Sheet 3 Email Branch Node**: Filter Email Users Function**: Identifies customers with email notifications enabled Node**: Send Menu Email Function**: Delivers formatted email notifications Node**: Log Email Status Function**: Records delivery status in Sheet 3 SMS Branch Node**: Filter SMS Users Function**: Identifies customers with SMS notifications enabled Node**: Send Twilio SMS Alert Function**: Delivers text message notifications via Twilio Node**: Log SMS Status Function**: Records delivery status in Sheet 3 Step 7: Comprehensive Logging All notification activities are logged in Sheet 3 for tracking and analytics. Google Sheets Structure Sheet 1: Special Menu | Column | Description | Example | |--------|-------------|---------| | Item ID | Unique identifier for menu item | "ITEM001" | | Item Name | Name of the dish | "Truffle Risotto" | | Price | Item price | "$28.99" | | Description | Detailed item description | "Creamy arborio rice with black truffle, parmesan, and wild mushrooms" | | Nutritions | Nutritional information | "Calories: 450, Protein: 15g" | | Category | Menu category | "Main Course" | | Available | Availability status | "Yes" / "No" | Sheet 2: Customer Database | Column | Description | Example | |--------|-------------|---------| | Customer Name | Customer's full name | "ABC" | | Email | Customer's email address | "abc@gmail.com" | | Phone Number | Customer's phone number | "91999999999" | | WhatsApp Number | Customer's WhatsApp number | "91999999999" | | Email Notifications | Email preference | "Yes" / "No" | | SMS Notifications | SMS preference | "Yes" / "No" | | WhatsApp Notifications | WhatsApp preference | "Yes" / "No" | Sheet 3: Notification Logs | Column | Description | Example | |--------|-------------|---------| | Timestamp | Notification send time | "2025-07-09T12:51:09.587Z" | | Customer Name | Recipient name | "ABC" | | Notification Type | Channel used | "Email" / "SMS" / "WhatsApp" | | Status | Delivery status | "Sent" / "Failed" / "Pending" | | Message | Content sent | "SPECIAL MENU UPDATE..." | How to Use the Workflow Prerequisites Google Sheets Setup: Create three sheets with the required structure n8n Account: Access to n8n workflow platform WhatsApp Business API: WhatsApp Business account with API access Email Service: Gmail or SMTP service for email notifications Twilio Account: Twilio account for SMS functionality AI Model Access: OpenAI or similar AI service for content generation Importing the Workflow in n8n Step 1: Obtain the Workflow JSON Export the workflow from your n8n instance or obtain the JSON file Ensure you have the complete workflow configuration Step 2: Access n8n Workflow Editor Log in to your n8n instance (Cloud or self-hosted) Navigate to the Workflows section Click "Add Workflow" to create a new workflow Step 3: Import the Workflow Option A: Import from Clipboard Click the three dots (⋯) in the top-right corner Select "Import from Clipboard" Paste the JSON code into the text box Click "Import" to load the workflow Option B: Import from File Click the three dots (⋯) in the top-right corner Select "Import from File" Choose the .json file from your computer Click "Open" to import the workflow Configuration Setup Google Sheets Integration Authentication: Connect your Google account in n8n Sheet 1 Configuration: Set spreadsheet ID and range for menu data Sheet 2 Configuration: Set spreadsheet ID and range for customer data Sheet 3 Configuration: Set spreadsheet ID and range for notification logs WhatsApp Integration WhatsApp Business API: Set up WhatsApp Business API credentials Webhook Configuration: Configure webhook URLs for message delivery Message Templates: Create approved message templates for menu updates Email Integration Gmail/SMTP Setup: Configure email service credentials Email Templates: Design HTML email templates for menu notifications Sender Configuration: Set sender name and email address Twilio SMS Integration Twilio Account: Set up Twilio Account SID and Auth Token Phone Number: Configure Twilio phone number for SMS sending Message Templates: Create SMS message templates AI Content Generation API Configuration: Set up OpenAI or preferred AI service credentials Prompt Customization: Configure prompts for menu update content Content Parameters: Set message tone, length, and style Workflow Execution Automatic Execution Scheduled Triggers: Set up cron expressions for regular checks Webhook Triggers: Configure real-time triggers for immediate updates Manual Triggers: Enable manual execution for testing Monitoring and Maintenance Execution Logs: Monitor workflow execution through n8n interface Error Handling: Set up error notifications and retry mechanisms Performance Monitoring: Track execution times and success rates Sample Notification Message SPECIAL MENU UPDATE 🍽️ NEW ITEMS: • Truffle Risotto - $28.99 Creamy arborio rice with black truffle, parmesan, and wild mushrooms • Chocolate Lava Cake - $18.99 Warm chocolate cake with molten center, vanilla ice cream Total Menu Items: 2 Updated: 7/9/2025, 12:10:50 PM Visit our restaurant or call to place your order! 📞 Best Practices Data Management Regularly validate customer contact information Keep menu data updated and accurate Maintain clean customer preference settings Notification Strategy Send notifications during optimal hours (lunch/dinner time) Limit frequency to avoid customer fatigue Personalize messages based on customer preferences Content Quality Use engaging language and emojis appropriately Include clear pricing and descriptions Add call-to-action for immediate orders Performance Optimization Batch process notifications to avoid rate limits Implement retry logic for failed deliveries Monitor API quotas and usage limits Troubleshooting Common Issues Authentication Errors**: Verify API credentials and permissions Rate Limiting**: Implement delays between notifications Message Delivery**: Check phone number formats and email addresses Sheet Access**: Ensure proper sharing permissions Error Handling Set up notification alerts for workflow failures Implement fallback mechanisms for service outages Maintain backup notification methods Analytics and Reporting Key Metrics Delivery Rates**: Track successful notifications by channel Customer Engagement**: Monitor response rates and feedback Menu Performance**: Analyze which items generate most interest Channel Effectiveness**: Compare performance across WhatsApp, Email, and SMS Reporting Features Automated daily/weekly reports Customer preference analytics Notification performance dashboards Revenue correlation with menu updates Security and Compliance Data Protection Secure storage of customer contact information Compliance with GDPR and local privacy laws Regular security audits of API access Rate Limiting Respect platform rate limits (WhatsApp, Twilio, Email) Implement queuing systems for high-volume notifications Monitor and adjust sending frequencies Conclusion The Food Menu Update Notifier transforms restaurant communication from reactive to proactive, ensuring customers are always informed about your latest offerings. By leveraging multiple communication channels and AI-generated content, this workflow creates a seamless bridge between your kitchen innovations and customer awareness. This system not only improves customer engagement but also drives immediate sales through timely notifications about new menu items, special offers, and seasonal dishes. The comprehensive logging and analytics capabilities provide valuable insights for menu optimization and marketing strategy refinement.
by David Olusola
AI-Powered Airtable Contact Manager Overview The AI-Powered Airtable Contact Manager is an intelligent n8n workflow that enables AI assistants to seamlessly manage contact data in Airtable through natural language interactions. Using the Model Context Protocol (MCP), this workflow bridges the gap between conversational AI and structured data management. How It Works This workflow creates a powerful AI-to-database interface that allows users to manage their Airtable contacts through natural language commands. Here's the complete flow: 1. AI Interaction Layer Users interact with an AI assistant using natural language Examples: "Add John Doe to contacts", "Find all contacts assigned to Sarah", "Show me contact details for ID xyz" 2. MCP Server Trigger The AI assistant processes the user's request and identifies the needed operation Sends structured commands to the n8n workflow via the MCP (Model Context Protocol) Acts as the intelligent routing system for all contact operations 3. Airtable Operations The workflow provides four core contact management functions: 🔍 Get Record: Retrieves specific contact details using a Record ID Input: Record ID from AI Output: Complete contact information (Name, Email, Assignee, Status) ➕ Create Record: Adds new contacts to the database Input: Contact details (Name, Email, Assignee) Output: New record with auto-generated ID and default status 🗑️ Delete Record: Removes contacts permanently Input: Record ID to delete Output: Confirmation of successful deletion 🔎 Search Records: Finds contacts using flexible criteria Input: Airtable formula for filtering Output: All matching contact records 4. Smart Data Handling The workflow uses AI-powered field mapping with $fromAI() functions Automatically extracts relevant information from natural language requests Maintains data integrity with proper field validation Setup Steps Prerequisites n8n instance (cloud or self-hosted) Airtable account with API access MCP-compatible AI system Step 1: Airtable Preparation Create Airtable Base: Set up a new base or use existing one Note your Base ID (starts with app) Set Up Contact Table: Create a table with these fields: Name (Single line text) email (Email) Assignee (Single line text) Status (Single select: Todo, In progress, Done) Note your Table ID (starts with tbl) Generate API Token: Go to https://airtable.com/developers/web/api/introduction Create a personal access token with full permissions Save this token securely Step 2: n8n Configuration Import Workflow: Copy the enhanced JSON workflow Import into your n8n instance Configure Airtable Credentials: Go to Credentials in n8n Create new "Airtable Personal Access Token" credential Enter your Airtable API token Name it "full access" (or update credential references in workflow) Update Base and Table IDs: Replace YOUR_AIRTABLE_BASE_ID with your actual Base ID (starts with app) Replace YOUR_AIRTABLE_TABLE_ID with your actual Table ID (starts with tbl) Update in all four Airtable nodes Update Credential References: Replace your-airtable-credential-id with your actual credential ID Or rename your credential to match "Airtable API Token" Step 3: MCP Integration Configure MCP Server: Set up your MCP server to communicate with n8n Replace your-webhook-path-here and your-webhook-id-here with your actual webhook details Configure your AI system to use this workflow Update Node IDs (Optional): The workflow uses placeholder node IDs for privacy n8n will auto-generate new IDs when you import No action needed unless you're referencing specific nodes Test the Integration: Activate the workflow in n8n Test each operation through your AI interface Verify data flows correctly between AI and Airtable Step 4: Customization (Optional) Add More Fields: Extend the Airtable schema as needed Update the Create Record node field mappings Modify the Search Record filters Enhanced Error Handling: Add error handling nodes Set up notifications for failed operations Implement retry logic for reliability Usage Examples Once set up, users can interact with the system naturally: Creating Contacts: "Add Sarah Johnson with email sarah@company.com, assign to Mike" "Create a new contact for David Wilson, email david@startup.io" Finding Contacts: "Show me all contacts assigned to Jennifer" "Find contacts with status 'In progress'" "Search for contacts with gmail addresses" Managing Records: "Get details for contact rec123ABC" "Delete the contact with ID rec456DEF" "Update John's status to Done" Benefits Natural Language Interface**: No technical knowledge required Automated Data Entry**: Reduces manual work and errors Flexible Searching**: Find contacts using any criteria AI-Powered**: Leverages advanced language understanding Scalable**: Easily extend with more operations Integrated**: Works seamlessly with existing Airtable workflows Technical Notes Uses n8n's $fromAI() function for intelligent data extraction Implements MCP for standardized AI-to-automation communication Supports Airtable's formula syntax for complex searches Maintains security through proper credential management Designed for high reliability with error handling capabilities This workflow transforms contact management from a manual, time-consuming task into an effortless, conversational experience powered by AI.
by Stefan
Track n8n Node Definitions from GitHub and Export to Google Sheets Overview This workflow automatically retrieves and processes metadata from the official n8n GitHub repository, filters all available .node.json files, parses their structure, and appends structured information into a Google Sheet. Perfect for developers, community managers, and technical writers who need to maintain up-to-date information about n8n's evolving node ecosystem. Setup Instructions Prerequisites Before setting up this workflow, ensure you have: A GitHub account with API access A Google account with Google Sheets access An active n8n instance (cloud or self-hosted) Step 1: GitHub API Configuration Navigate to GitHub Settings → Developer Settings → Personal Access Tokens Generate a new token with public_repo permissions Copy the generated token and store it securely In n8n, create a new "GitHub API" credential Paste your token in the credential configuration and save Step 2: Google Sheets Setup Create a new Google Sheets document Set up the following column headers in the first row: node (Column A) - Node identifier/name nodeVersion (Column B) - Version of the node codexVersion (Column C) - Codex version number categories (Column D) - Node categories credentialDocumentation (Column E) - Credential documentation URL primaryDocumentation (Column F) - Primary documentation URL Note down the Google Sheets document ID from the URL Configure Google Sheets OAuth2 credentials in n8n Step 3: Workflow Configuration Import the workflow into your n8n instance Update the following placeholder values: Replace YOUR_GOOGLE_SHEETS_DOCUMENT_ID with your actual document ID Replace YOUR_WEBHOOK_ID if using webhook functionality Configure the GitHub API credentials in the HTTP Request nodes Set up Google Sheets credentials in the Google Sheets nodes Share your Google Sheets document with the email address associated with your Google OAuth2 credentials Grant "Editor" permissions to allow the workflow to write data Google Sheets Template Details The workflow creates a structured dataset with these columns: node**: Node identifier (e.g., n8n-nodes-base.slack) nodeVersion**: Version of the node (e.g., 1.0.0) codexVersion**: Codex version number (e.g., 1.0.0) categories**: Node categories (e.g., Communication, Productivity) credentialDocumentation**: URL to credential documentation primaryDocumentation**: URL to primary node documentation Customization Options Modifying Data Extraction You can customize the "Format Data" node to extract additional fields: Add new assignments in the Set node Modify the column mapping in the Google Sheets node Update your spreadsheet headers accordingly Changing Update Frequency To run this workflow on a schedule: Replace the Manual Trigger with a Cron node Set your desired schedule (e.g., daily, weekly) Configure appropriate timing to avoid API rate limits Adding Filters Customize the "Filter Node Files" code node to: Filter specific node types Include/exclude certain categories Process only recently updated nodes Features Fetches all node definitions from the n8n-io/n8n repository Filters for .node.json files only Downloads and parses metadata automatically Extracts key fields like node names, versions, categories, and documentation URLs Appends structured data to Google Sheets with batch processing Includes error handling and retry mechanisms Clears existing data before appending new information for fresh results Use Cases This workflow is ideal for: Track changes in official n8n node definitions over time Audit node categories and documentation links for completeness Build custom dashboards from node metadata Community management and documentation maintenance Integration planning and compatibility analysis
by Khairul Muhtadin
Tesseract - Money Mate Workflow Description Disclaimer: This template requires the n8n-nodes-tesseractjs community node, which is only available on self-hosted n8n instances. You’ll need a self-hosted n8n setup to use this workflow. Who is this for? This workflow is designed for individuals, freelancers, or small business owners who want an easy way to track expenses using Telegram. It’s ideal for anyone looking to digitize receipts—whether from photos or text messages—using free tools, without needing advanced technical skills. What problem does this workflow solve? Manually entering receipt details into a spreadsheet or app is time-consuming and prone to mistakes. This workflow automates the process by extracting information from receipt images or text messages sent via Telegram, categorizing expenses, and sending back a clear, formatted summary. It saves time, reduces errors, and makes expense tracking effortless. What this workflow does The workflow listens for messages sent to a Telegram bot, which can be either text descriptions of expenses or photos of receipts. If a photo is sent, Tesseract (an open-source text recognition tool) extracts the text. If text is sent, it’s processed directly. An AI model (LLaMA via OpenRouter) analyzes the input, categorizes it into expense types (e.g., Food & Beverages, Household, Transport), and creates a structured summary including store name, date, items, total, and category. The summary is then sent back to the user’s Telegram chat. Setup Instructions Follow these step-by-step instructions to set up the workflow. No advanced technical knowledge is required, but you’ll need a self-hosted n8n instance. Set Up a Self-Hosted n8n Instance: If you don’t have n8n installed, follow the n8n self-hosting guide to set it up. You can use platforms like Docker or a cloud provider (e.g., DigitalOcean, AWS). Ensure your n8n instance is running and accessible via a web browser. Install the Tesseract Community Node: In your n8n instance, go to Settings > Community Nodes in the sidebar. Click Install a Community Node, then enter n8n-nodes-tesseractjs in the search bar. Click Install and wait for confirmation. This node enables receipt image processing. If you encounter issues, check the n8n community nodes documentation for troubleshooting. Create a Telegram Bot: Open Telegram and search for @BotFather to start a new bot. Send /start to BotFather, then /newbot to create your bot. Follow the prompts to name your bot (e.g., “MoneyMateBot”). BotFather will provide a Bot Token (e.g., 23872837287:ExampleExampleExample). Copy this token. In n8n, go to Credentials > Add Credential, select Telegram API, and paste the token. Name the credential (e.g., “MoneyMateBot”) and save. Set Up OpenRouter for AI Processing: Sign up for a free account at OpenRouter. In your OpenRouter dashboard, generate an API Key under the API section. In n8n, go to Credentials > Add Credential, select OpenRouter API, and paste the API key. Name it (e.g., “OpenRouter Account”) and save. The free tier of OpenRouter’s LLaMA model is sufficient for this workflow. Import and Configure the Workflow: Download the workflow JSON file (provided separately or copy from the source). In n8n, go to Workflows > Import Workflow and upload the JSON file. Open the imported workflow (“Tesseract - Money Mate”). Ensure the Telegram Trigger and Send Expense Summary nodes use the Telegram credential you created. Ensure the AI Analyzer node uses the OpenRouter credential. Save the workflow. Test the Workflow: Activate the workflow by toggling the Active switch in n8n. In Telegram, find your bot (e.g., @MoneyMateBot) and send /start. Test with a sample input (see “Example Inputs” below). Check the n8n workflow execution panel to ensure data flows correctly. If errors occur, double-check credentials and node connections. Activate for Continuous Use: Once tested, keep the workflow active in n8n. Your bot will now process any text or image sent to it via Telegram. Example Inputs/Formats To help the workflow process your data accurately, use clear and structured inputs. Below are examples of valid inputs: Text Input Example: Send a message to your Telegram bot like this: Bought coffee at Starbucks, Jalan Sudirman, yesterday. Total Rp 50,000. 2 lattes, each Rp 25,000. Expected Output: hello [Your Name] Ini Rekap Belanjamu 📋 Store: Starbucks 📍 Location: Jalan Sudirman 📅 Date: 2025-05-26 🛒 Items: Latte: Rp 25,000 Latte: Rp 25,000 💸 Total: Rp 50,000 📌 Category: Food & Beverages Image Input Example: Upload a photo of a receipt to your Telegram bot. The receipt should contain: Store name (e.g., “Alfamart”) Address (e.g., “Jl. Gatot Subroto, Jakarta”) Date and time (e.g., “27/05/2025 14:00”) Items with prices (e.g., “Bread Rp 15,000”, “Milk Rp 20,000”) Total amount (e.g., “Total: Rp 35,000”) Expected Output: hello [Your Name] Ini Rekap Belanjamu 📋 Store: Alfamart 📍 Location: Jl. Gatot Subroto, Jakarta 📅 Date: 2025-05-27 14:00 🛒 Items: Bread: Rp 15,000 Milk: Rp 20,000 💸 Total: Rp 35,000 📌 Category: Household Tips for Images: Ensure the receipt is well-lit and text is readable. Avoid blurry or angled photos for better Tesseract accuracy. How to Customize This Workflow Change Expense Categories: In the **AI Categorizer node, edit the prompt to include custom categories (e.g., add “Entertainment” or “Utilities” to the list: Food & Beverages, Household, Transport). Modify Response Format: In the **Format Summary Message node, adjust the JavaScript code to change how the summary looks (e.g., add emojis, reorder fields). Save to a Database: Add a node (e.g., Google Sheets or PostgreSQL) after the **Format Summary Message node to store summaries. Support Other Languages: In the **AI Categorizer node, update the prompt to handle additional languages (e.g., Spanish, Mandarin) by specifying them in the instructions. Add Error Handling: Enhance the **Check Invalid Input node to catch more edge cases, like invalid dates. All Free, End-to-End This workflow is 100% free! It leverages: Telegram Bot API**: Free via BotFather. Tesseract**: Open-source text recognition. LLaMA via OpenRouter**: Free tier available for AI processing. Enjoy automating your expense tracking without any cost! Made by: khmuhtadin Need a custom? contact me on LinkedIn or Web
by Mihai Farcas
This workflow implements a Retrieval Augmented Generation (RAG) chatbot that answers employee questions based on company documents stored in Google Drive. It automatically indexes new or updated documents in a Pinecone vector database, allowing the chatbot to provide accurate and up-to-date information. The workflow uses Google's Gemini AI for both embeddings and response generation. How it works The workflow uses two Google Drive Trigger nodes: one for detecting new files added to a specified Google Drive folder, and another for detecting file updates in that same folder. Automated Indexing: When a new or updated document is detected The Google Drive node downloads the file. The Default Data Loader node loads the document content. The Recursive Character Text Splitter node breaks the document into smaller text chunks. The Embeddings Google Gemini node generates embeddings for each text chunk using the text-embedding-004 model. The Pinecone Vector Store node indexes the text chunks and their embeddings in a specified Pinecone index. 7.The Chat Trigger node receives user questions through a chat interface. The user's question is passed to an AI Agent node. The AI Agent node uses a Vector Store Tool node, linked to a Pinecone Vector Store node in query mode, to retrieve relevant text chunks from Pinecone based on the user's question. The AI Agent sends the retrieved information and the user's question to the Google Gemini Chat Model (gemini-pro). The Google Gemini Chat Model generates a comprehensive and informative answer based on the retrieved documents. A Window Buffer Memory node connected to the AI Agent provides short-term memory, allowing for more natural and context-aware conversations. Set up steps Google Cloud Project and Vertex AI API: Create a Google Cloud project. Enable the Vertex AI API for your project. Google AI API Key: Obtain a Google AI API key from Google AI Studio. Pinecone Account: Create a free account on the Pinecone website. Obtain your API key from your Pinecone dashboard. Create an index named company-files in your Pinecone project. Google Drive: Create a dedicated folder in your Google Drive where company documents will be stored. Credentials in n8n: Configure credentials in your n8n environment for: Google Drive OAuth2 Google Gemini(PaLM) Api (using your Google AI API key) Pinecone API (using your Pinecone API key) Import the Workflow: Import this workflow into your n8n instance. Configure the Workflow: Update both Google Drive Trigger nodes to watch the specific folder you created in your Google Drive. Configure the Pinecone Vector Store nodes to use your company-files index.