by ist00dent
This n8n template allows you to automatically create shortened URLs using the TinyURL API by simply sending a webhook request. It's a quick and efficient way to integrate URL shortening into your automated workflows, ideal for sharing long links in social media, emails, or other applications. π§ How it works Receive Link Webhook: This node acts as the entry point for the workflow. It listens for incoming POST requests and expects a JSON body containing the url to be shortened and your api_key for TinyURL. Create TinyURL: This node sends a POST request to the TinyURL API, passing the long URL and your API key. It can also accept optional parameters like domain, alias, and description to customize the shortened link. Respond with Shortened URL: This node sends the response from the TinyURL API (which includes the new shortened URL) back to the service that initiated the webhook. π€ Who is it for? This workflow is ideal for: Content Managers & Marketers: Quickly shorten links for campaigns, social media posts, or tracking. Developers: Automate the process of link shortening within applications or scripts. Automation Enthusiasts: Integrate a URL shortener into various n8n workflows (e.g., after generating a report, before sending a notification). Anyone needing on-demand short links: A flexible solution for ad-hoc link shortening. π Data Structure When you trigger the webhook, send a POST request with a JSON body structured as follows: { "api_key": "YOUR_TINYURL_API_KEY", "url": "https://www.verylongwebsite.com/path/to/specific/page?param1=value1¶m2=value2", "domain": "tinyurl.com", // Optional: defaults to tinyurl.com "alias": "myCustomAlias", // Optional: desired custom alias for the link "description": "My project link" // Optional: description for the link } The workflow will return the JSON response directly from the TinyURL API, which will include the short_url and other details about the newly created link. βοΈ Setup Instructions Obtain TinyURL API Key: Before importing, make sure you have an API key from TinyURL. You can typically get this by signing up for an account on their website. Import Workflow: In your n8n editor, click "Import from JSON" and paste the provided workflow JSON. Configure Webhook Path: Double-click the Receive Link Webhook node. In the 'Path' field, set a unique and descriptive path (e.g., /shorten-link). Activate Workflow: Save and activate the workflow. π Tips Dynamic Inputs: The workflow is set up to dynamically use the url, api_key, alias, and description from the incoming webhook data. This makes it highly flexible. Error Handling: You can add an Error Trigger node to catch any issues (e.g., invalid API key, malformed URL) during the TinyURL creation process. Configure it to send notifications or log errors for easy troubleshooting. Post-Shortening Actions: After generating the shortened URL, you can insert additional nodes before the Respond with Shortened URL node to perform other actions. For example, you could: Save to a Database: Store the original and shortened URLs in a database like Airtable, Google Sheets, or a PostgreSQL database. Send a Message: Automatically send the shortened URL via Slack, Discord, email, or SMS. Update a Record: Update a CRM record or project management task with the new shortened link. Custom Domains: If you have a custom domain configured with your TinyURL account, you can change the domain parameter in the Create TinyURL node to use it.
by Roni Bandini
This workflow receives plain English instructions from a retro console via a webhook. Using an AI agent, it can combine multiple tools to read general RSS news headlines, stock market updates, emails, calendar events, search X, send Telegram messages, and run Linux commands. The idea is to avoid using smartphones or regular laptops in the morning, and instead use a retro console installed on an old notebook or netbook. You will need to copy a Python script onto the notebook, configure the webhook URL, and set up all the required credentials. Steps: Setup Gemini API key, Google Gmail and Calendar credentials from console.google.com Setup X credentials, RSS URL, etc Obtain the webhook URL and paste into the Python code to be executed at the Linux machine Run the python script with python3 console.py Note: if you ask for a Linux command, the command will not only be returned but also executed.
by RedOne
Smart Customer Support AI Agent with Gmail and Telegram Who is this for? This workflow is perfect for: Small to medium businesses** looking to automate customer support E-commerce stores** handling order inquiries and customer questions SaaS companies** providing technical support to users Service providers** managing appointment bookings and general inquiries Startups** wanting to provide 24/7 customer service without hiring full-time staff Agencies** managing client communications across multiple channels What problem is this workflow solving? Customer support is essential but resource-intensive. Common challenges include: Slow response times** leading to frustrated customers Repetitive questions** consuming valuable staff time Inconsistent responses** across different support agents Limited availability** outside business hours Scaling support costs** as business grows Context loss** when customers switch between channels This workflow eliminates these pain points by providing instant, consistent, and intelligent responses 24/7. What this workflow does Core Functionality Multi-Channel Monitoring: Simultaneously watches Gmail and Telegram for customer inquiries Intelligent Processing: Uses AI to understand customer intent and context Knowledge Base Integration: Accesses your company's FAQ and support information Contextual Responses: Provides personalized, helpful replies maintaining conversation history Smart Escalation: Automatically escalates complex issues to human agents Comprehensive Logging: Tracks all interactions for analytics and improvement AI Agent Capabilities Natural Language Understanding**: Comprehends customer questions in plain English Context Awareness**: Remembers previous conversations with each customer Knowledge Retrieval**: Searches your knowledge base for accurate information Response Generation**: Creates professional, brand-appropriate responses Escalation Decision**: Identifies when human intervention is needed Multi-Channel Support**: Handles Gmail and Telegram with channel-specific formatting Automation Features Auto-Response**: Replies to customers within seconds Email Management**: Marks processed emails as read Conversation Threading**: Maintains context in email threads and Telegram chats Error Handling**: Gracefully handles failures with admin notifications Analytics Tracking**: Logs interactions for performance monitoring Setup Prerequisites Active Google Workspace or Gmail account Telegram account for bot creation OpenAI API access Google Sheets access n8n instance (cloud or self-hosted) Step 1: Credential Setup Gmail OAuth2 Configuration Go to Google Cloud Console Create new project or select existing one Enable Gmail API Create OAuth 2.0 credentials Add authorized redirect URIs for n8n In n8n: Settings β Credentials β Add Gmail OAuth2 Enter Client ID and Client Secret Complete OAuth flow Telegram Bot Setup Message @BotFather on Telegram Create new bot with /newbot command Choose bot name and username Copy the bot token In n8n: Settings β Credentials β Add Telegram Enter bot token Set webhook URL in bot settings OpenAI API Configuration Sign up at OpenAI Platform Generate API key in API Keys section In n8n: Settings β Credentials β Add OpenAI Enter API key Choose appropriate model (gpt-4o-mini recommended) Google Sheets Setup Use existing Google account from Gmail setup In n8n: Settings β Credentials β Add Google Sheets OAuth2 Complete authorization flow Step 2: Google Sheets Preparation Create three Google Sheets in your Google Drive: Knowledge Base Sheet Sheet Name**: "Knowledge Base" Columns**: ID, Category, Question/Topic, Answer/Response, Keywords, Last_Updated Import sample data from the Knowledge Base example Customize with your company's FAQs and policies Escalation Tracker Sheet Sheet Name**: "Escalations" Columns**: Timestamp, Customer_Name, Customer_Contact, Inquiry_Summary, Escalation_Reason, Priority, Status, Assigned_To This will be auto-populated by the AI agent Interaction Log Sheet Sheet Name**: "Interaction Log" Columns**: Timestamp, Channel, Customer_Name, Customer_Contact, Inquiry_Subject, Customer_Message, AI_Response, Response_Time, Status This tracks all customer interactions for analytics Step 3: Workflow Configuration Import Template Copy the workflow JSON from the template In n8n: Import workflow from JSON Replace placeholder Sheet IDs with your actual Google Sheet IDs Update Sheet References Open each Google Sheets node Select your created sheets from the dropdown Verify column mappings match your sheet structure Customize AI Prompts Edit the "Customer Support AI Agent" node Update system message with: Your company name and description Brand voice and tone guidelines Specific policies and procedures Escalation criteria Configure Error Notifications (Optional) Set up Slack webhook or email notifications Update error notification node with your webhook URL Customize error message format Step 4: Testing Test Gmail Integration Send test email to your support Gmail account Check workflow execution in n8n Verify response is sent and email marked as read Check interaction logging in Google Sheets Test Telegram Integration Send message to your Telegram bot Verify bot responds appropriately Test conversation memory with follow-up messages Check escalation functionality with complex request Test Knowledge Base Ask questions covered in your knowledge base Verify AI retrieves and uses correct information Test with variations of the same question Ensure responses are consistent and helpful How to customize this workflow to your needs Brand Voice Customization Update the AI system prompt to include: Your company's tone (formal, casual, friendly) Key phrases and terminology you use Brand personality traits Communication style preferences Knowledge Base Expansion Add industry-specific FAQs Include product documentation Add troubleshooting guides Create category-specific responses Escalation Rules Customize when to escalate by modifying the AI agent instructions: Billing disputes over $X amount Technical issues requiring developer help Angry or dissatisfied customers Requests outside standard services Legal or compliance questions Additional Channels Extend the workflow to support: Slack**: Add Slack triggers and response nodes WhatsApp**: Integrate WhatsApp Business API Web Chat**: Add webhook triggers for website chat Discord**: Connect Discord bot integration Analytics Enhancement Add sentiment analysis to customer messages Implement customer satisfaction scoring Create automated reporting dashboards Set up alert thresholds for escalation rates Integration Opportunities CRM Integration**: Connect to HubSpot, Salesforce, or Pipedrive Ticketing System**: Link to Zendesk, Freshdesk, or Jira Service Desk E-commerce Platform**: Integrate with Shopify, WooCommerce, or Magento Calendar Booking**: Connect to Calendly or Acuity for appointment scheduling Advanced Features Multi-language Support**: Add translation capabilities Voice Messages**: Integrate speech-to-text for Telegram voice notes Image Recognition**: Process customer screenshots for technical support Proactive Outreach**: Send follow-up messages based on customer behavior Workflow Maintenance Daily Tasks Review escalation queue Monitor error notifications Check response quality in interaction log Weekly Reviews Analyze customer interaction patterns Update knowledge base with new common questions Review escalation reasons and optimize AI prompts Monthly Optimization Export interaction data for detailed analysis Calculate key metrics (response time, resolution rate, escalation rate) Update AI model parameters based on performance Expand knowledge base with seasonal or trending topics Key Metrics to Track Response Time**: Average time from customer message to AI response Resolution Rate**: Percentage of inquiries resolved without escalation Customer Satisfaction**: Based on follow-up surveys or sentiment analysis Escalation Rate**: Percentage of conversations requiring human intervention Channel Performance**: Effectiveness of Gmail vs Telegram vs other channels Knowledge Base Usage**: Which topics are accessed most frequently Peak Hours**: When customers contact support most often Troubleshooting Common Issues Gmail not triggering**: Check OAuth permissions and API quotas Telegram bot not responding**: Verify bot token and webhook configuration AI responses seem off**: Review and update system prompts Escalations not logging**: Check Google Sheets permissions and column mapping High escalation rate**: Expand knowledge base and refine AI instructions Performance Optimization Monitor OpenAI API usage and costs Adjust AI model temperature for response consistency Optimize knowledge base for faster searches Set appropriate conversation memory limits This workflow provides a solid foundation for automated customer support that can be extensively customized to match your specific business needs and grow with your company.
by Luciano Gutierrez
Instagram Auto-Comment Responder with AI Agent Integration Version: 1.1.0 β§ n8n Version: 1.88.0+ β§ License: MIT A fully automated workflow for managing and responding to Instagram comments using AI agents. Designed to improve engagement and save time, this system listens for new Instagram comments, verifies and filters them, fetches relevant post data, processes valid messages with a natural language AI, and posts context-aware replies directly on the original post. Key Features π¬ AI-Driven Engagement: Intelligent responses to comments via a GPT-powered agent. β Webhook Verification: Handles Instagram webhook handshake to ensure secure integration. π¦ Data Extraction: Maps incoming payload fields (user ID, username, message text, media ID) for processing. π« Self-Comment Filtering: Automatically skips comments made by the account owner to prevent loops. π‘ Post Data Retrieval: Fetches the mediaβs id and caption from the Graph API (v22.0) before generating a reply. π§ Natural Language Processing: Uses a custom system prompt to maintain brand tone and context. π Automated Replies: Posts the AI-generated message back to the comment thread using Instagramβs API. π§© Modular Architecture: Clear separation of steps via sticky notes and dedicated HTTP Request and Agent nodes. Use Cases Social Media Automation**: Keep followers engaged 24/7 with instant, relevant replies. Community Building**: Maintain a consistent voice and tone across all interactions. Brand Reputation Management**: Ensure no valid comment goes unanswered. AI Customer Support**: Triage simple questions and direct followers to resources or support. Technical Implementation Webhook Verification Node: Webhook + Respond to Webhook Echoes hub.challenge to confirm subscription and secure incoming events. Data Extraction Node: Set Maps payload fields into structured variables: conta.id, usuario.id, usuario.name, usuario.message.id, usuario.message.text, usuario.media.id, endpoint. User Validation Node: Filter Skips processing if conta.id equals usuario.id (self-comments). Post Data Retrieval Node: HTTP Request (Get post data) GET https://graph.instagram.com/v22.0/{{ $json.usuario.media.id }}?fields=id,caption&access_token={{ credentials }} Captures the mediaβs caption for richer context in replies. AI Response Generation Nodes: AI Agent + OpenRouter Chat Model Uses a detailed system prompt with: Profile persona (expert in AI & automations, friendly tone). Input data (username, comment text, post caption). Filtering logic (spam, praise, questions, vague comments). Returns either the reply text or [IGNORE] for irrelevant content. Posting the Reply Node: HTTP Request (Post comment) POST {{ $json.endpoint }}/{{ $json.usuario.message.id }}/replies with message={{ $json.output }} Sends the AI answer back under the original comment. Instructions for Setup Import Workflow In n8n > Workflows > Import from File, upload the provided .json template. Configure Credentials Instagram Graph API (Header Auth or FacebookGraphApi) with instagram_basic, instagram_manage_comments scopes. OpenRouter/OpenAI API key for AI agent. Customize System Prompt Edit the AI Agentβs prompt to adjust brand tone, language (Brazilian Portuguese), length, or emoji usage. Test & Activate Publish a test comment on an Instagram post. Verify each nodeβs execution, ensuring the webhook, filter, data extraction, HTTP requests, and AI Agent respond as expected. Extend & Monitor Add sentiment analysis or lead capture nodes as needed. Monitor execution logs for errors or rate-limit events. Tags Social Media β’ Instagram Automation β’ Webhook Verification β’ AI Agent β’ HTTP Request β’ Auto Reply β’ Community Management
by Floyd Mahou
How it works β’ Allows users to manage their Google Calendar via WhatsApp using natural language β’ Handles event creation, updates, deletions, availability checks, and agenda overviews β’ AI agent interprets the userβs message and triggers the appropriate calendar action β’ Responses are sent back to the user via WhatsApp, with confirmation or schedule info Set up steps β’ Set up a WhatsApp Business Cloud account and configure your webhook β’ Connect your Google Calendar using n8n credentials β’ Deploy OpenAI API key for natural language understanding β’ Link each calendar action (create, update, delete, search) to the TimePilot agent β’ Customize confirmation messages and automate reply formatting Note: More detailed configuration and custom logic are described inside sticky notes within the workflow.
by Agent Studio
Overview This workflow allows you to trigger custom logic in n8n directly from Retell's Voice Agent using Custom Functions. It captures a POST webhook from Retell every time a Voice Agent reaches a Custom Function node. You can plug in any logicβcall an external API, book a meeting, update a CRM, or even return a dynamic response back to the agent. Who is it for For builders using Retell who want to extend Voice Agent functionality with real-time custom workflows or AI-generated responses. Prerequisites Have a Retell AI Account A Retell agent with a Custom Function node in its conversation flow (see template below) Set your n8n webhook URL in the Custom Function configuration (see "How to use it" below) (Optional) Familiarity with Retell's Custom Function docs Start a conversation with the agent (text or voice) Retell Agent Example To get you started, we've prepared a Retell Agent ready to be imported, that includes the call to this template. Import the agent to your Retell workspace (top-right button on your agent's page) You will need to modify the function URL in order to call your own instance. This template is a simple hotel agent that calls the custom function to confirm a booking, passing basic formatted data. How it works Retell sends a webhook to n8n whenever a Custom Function is triggered during a call (or test chat). The webhook includes: Full call context (transcript, call ID, etc.) Parameters defined in the Retell function node You can process this data and return a response string back to the Voice Agent in real-time. How to use it Copy the webhook URL (e.g. https://your-instance.app.n8n.cloud/webhook/hotel-retell-template) Modify the Retell Custom Function webhook URL (see template description for screenshots) Edit the function Modify the URL Modify the logic in the Set node or replace it with your own custom flow Deploy and test: Retell will hit your n8n workflow during the conversation Extension Ideas Call a third-party API to fetch data (e.g. hotel availability, CRM records) Use an LLM node to generate dynamic responses Trigger a parallel automation (Slack message, calendar invite, etc.) π Reach out to us if you're interested in analyzing your Retell Agent conversations.
by Agentick AI
This n8n template demonstrates how to automate invoice data extraction from PDF attachments received via Gmail. Using LlamaParse and Gemini LLM, this workflow parses structured fields like PO numbers, line items, tax amounts, and totals β and stores them neatly into a Google Sheet. Perfect for use cases such as: πΌ Finance teams managing vendor invoices π Bookkeeping workflows π Automating monthly reconciliation Good to Know At the time of writing, LlamaParse and Gemini may involve API usage costs depending on your subscription tier. Check LlamaIndex Pricing and Gemini Pricing for updated info. LlamaParse provides Markdown-formatted parsed output which is then passed to an LLM for structured field extraction. Gemini models may be geo-restricted. If you encounter "model not found" errors, your region might not be supported. How it Works Trigger: Watches your Gmail for new emails with PDF attachments. Email Filter: Ensures we only parse fresh emails not already labeled as "invoice synced". LlamaParse Upload: Uploads the PDF to LlamaParseβs parsing endpoint. Status Polling: Periodically checks whether the parsing is complete. Download Markdown: Once ready, it fetches the parsed invoice in Markdown format. AI Parsing with Gemini: Sends the Markdown to Gemini LLM to extract structured JSON (like PO number, line items, taxes, etc.) using a predefined schema. Google Sheets Upload: Stores extracted data into a predefined spreadsheet. Labeling: Marks the email as βinvoice syncedβ to avoid reprocessing. How to Use The trigger is based on Gmail, but you can replace this with a webhook or manual trigger for testing. Setup Instructions Gmail API Enable Gmail API in Google Cloud Console. Connect your Gmail account in n8n credentials. Allow read + modify access. Google Sheets Create a new Google Sheet with the following headers (row 1): Date | Vendor Name | Invoice Number | PO Number | Line Items | Subtotal | Tax | Total Amount Connect Google Sheets in n8n and paste the Sheet ID in the node. You can customise the google sheet basis your requirement. LlamaParse Get a LlamaIndex API Key from LlamaIndex. Use the LlamaParse upload and polling nodes to process your PDFs. Gemini (via Vertex AI) Set up Gemini access in GCP. Use the Gemini 2.5 Model. Construct a structured prompt to extract required fields. Labeling Create a Gmail label named "Invoice Synced" for tracking processed emails. Requirements Gmail account with API access LlamaParse (LlamaIndex) account with API Key Google Sheets API credentials Access to Gemini 2.5 model via Google Vertex AI Customising This Workflow This template is just the beginning. You can expand it to: Auto-generate invoices back to vendors Run duplicate checks before inserting into Sheets Integrate with accounting tools like Zoho, QuickBooks, or Tally Trigger Slack/Email notifications on specific vendors or high invoice amounts
by Oneclick AI Squad
Description AI-Powered Multi-language Customer Support In this guide, we'll walk you through setting up a comprehensive AI-driven workflow that handles customer messages in any language through WhatsApp and email channels, providing intelligent translation, summarization, and automated responses. Ready to revolutionize your customer support? Let's get started! What's the Goal? Automatically handle customer messages** from WhatsApp and email in any language Translate and validate** incoming messages with smart language detection Generate intelligent summaries** with priority classification for support teams Provide automated responses** back to customers via their preferred channel Log all interactions** to database for tracking and analytics Send notifications** to admin team for high-priority cases Deliver 24/7 multilingual customer support** without manual effort Integrate seamlessly** with WhatsApp Business API and email systems By the end, you'll have a fully automated customer support system that handles multilingual communications, prioritizes urgent cases, and maintains comprehensive interaction logs. Why Does It Matter? Manual handling of multilingual customer support can be overwhelming and inefficient. Here's why this workflow is a game-changer: Break Global Language Barriers**: Handle customer inquiries in any language effortlessly Never Miss Important Messages**: Priority detection ensures urgent cases get immediate attention Save 80% of Manual Work**: Automation handles routine inquiries and escalates complex ones 24/7 Availability**: Respond to customers anytime, enhancing satisfaction and retention Professional Customer Experience**: Consistent, well-formatted responses in the customer's language Complete Audit Trail**: Database logging provides insights and accountability Scalable Solution**: Handle growing customer base without proportional staff increase Think of it as your always-on, multilingual customer support team that never sleeps and never misses a beat. How It Works Here's the step-by-step magic behind the automation: Step 1: Multi-Channel Message Capture WhatsApp Trigger**: Captures incoming WhatsApp messages via Business API webhook Email Trigger (IMAP)**: Monitors designated customer support email for new messages Both channels feed into the same processing pipeline for consistent handling Step 2: Data Normalization & Validation Data Normalizer & Validator**: Standardizes message format regardless of source channel Extracts key information: sender details, message content, timestamp, channel source Validates data integrity and handles malformed inputs gracefully Step 3: Smart Language Translation Smart Language Translator**: Automatically detects source language and translates to English Preserves original message context and cultural nuances Stores both original and translated versions for reference Step 4: Enhanced Summary & Priority Processing Enhanced Summary & Priority Processor**: Uses AI to analyze translated content Generates concise summaries highlighting key customer concerns Priority Classification**: Automatically tags messages as: π΄ High Priority: Urgent issues, complaints, billing problems π‘ Medium Priority: Product inquiries, general support π’ Low Priority: Thank you messages, general feedback Creates structured output with priority flags for support team triage Step 5: Message Source Intelligence Check Message Source**: Determines optimal response channel and method Routes WhatsApp messages back to WhatsApp, emails back to email Maintains conversation context and threading Step 6: Automated Customer Response Customer WhatsApp Auto-Response**: Sends acknowledgment via WhatsApp Customer Email Auto-Response**: Sends professional email replies Responses include: Confirmation of message receipt Estimated response time based on priority Reference number for tracking Next steps or immediate solutions for common issues Step 7: Database Logging & Analytics Log to Database**: Stores complete interaction history including: Original message and translation Priority classification and reasoning Response sent and timestamp Customer contact information Channel and source metadata Enables analytics, reporting, and quality assurance Step 8: Admin Notifications & Alerts Admin Email Notification**: Immediate email alerts for high-priority cases Admin WhatsApp Alert**: SMS/WhatsApp notifications for urgent escalations Workflow Completion & Metrics**: Performance tracking and completion confirmations Workflow Architecture βββββββββββββββββββ ββββββββββββββββββββ β WhatsApp β β Email Trigger β β Trigger β β (IMAP) β βββββββββββ¬ββββββββ βββββββββββ¬βββββββββ β β ββββββββββββ¬ββββββββββββ β ββββββββββββΌβββββββββββ β Data Normalizer & β β Validator β ββββββββββββ¬βββββββββββ β ββββββββββββΌβββββββββββ β Smart Language β β Translator β ββββββββββββ¬βββββββββββ β ββββββββββββΌβββββββββββ β Enhanced Summary & β β Priority Processor β ββββββββββββ¬βββββββββββ β ββββββββββββΌβββββββββββ β Check Message β β Source β βββββββββββ¬β¬βββββββββββ ββββ ββββββββββββΌβ ββΌβββββββββββ β Customer β β Customer β β WhatsApp β β Email β β Response β β Response β ββββββββββββ¬β ββ¬βββββββββββ ββ¬ββ¬β βββββββββββΌββΌββββββββββ β Log to Database β βββββββββββ¬ββββββββββββ β βββββββββββΌββββββββββββ β Admin Email β β Notification β βββββββββββ¬ββββββββββββ β βββββββββββΌββββββββββββ β Admin WhatsApp β β Alert β βββββββββββ¬ββββββββββββ β βββββββββββΌββββββββββββ β Workflow Completion β β & Metrics β βββββββββββββββββββββββ How to Use the Workflow? Importing a workflow in n8n is straightforward and allows you to use pre-built or shared workflows to save time. Below is a step-by-step guide to importing the Multi-language Customer Support workflow in n8n. Steps to Import a Workflow in n8n 1. Obtain the Workflow JSON Source the Workflow: Workflows are typically shared as JSON files or code snippets. You might receive them from: The n8n community (e.g., n8n.io workflows page) A colleague or tutorial (e.g., a .json file or copied JSON code) Exported from another n8n instance Format**: Ensure you have the workflow in JSON format, either as a file (e.g., customer-support-workflow.json) or as text copied to your clipboard 2. Access the n8n Workflow Editor Log in to n8n: Open your n8n instance (via n8n Cloud or your self-hosted instance) Navigate to the Workflows tab in the n8n dashboard Open a New Workflow: Click Add Workflow to create a blank workflow, or open an existing workflow if you want to merge the imported workflow 3. Import the Workflow Option 1: Import via JSON Code (Clipboard): In the n8n editor, click the three dots (β―) in the top-right corner to open the menu Select Import from Clipboard Paste the JSON code of the workflow into the provided text box Click Import to load the workflow into the editor Option 2: Import via JSON File: In the n8n editor, 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 Requirements Essential Setup Notes: WhatsApp Integration: Configure WhatsApp Business API credentials in the WhatsApp Trigger node Set up webhook URL in your WhatsApp Business account Test connection with a sample message Email Configuration: Set up IMAP credentials for your customer support email in the Email Trigger node Configure SMTP settings for outbound email responses Ensure proper email authentication (SPF, DKIM records) Translation Services: Add Google Translate API credentials in the Smart Language Translator node Alternative: Configure Azure Translator or AWS Translate based on preference Set up language detection and translation parameters Database Connection: Configure database credentials in the "Log to Database" node Create required tables for storing customer interactions: CREATE TABLE customer_interactions ( id SERIAL PRIMARY KEY, customer_contact VARCHAR(255), channel VARCHAR(50), original_message TEXT, translated_message TEXT, summary TEXT, priority VARCHAR(20), response_sent TEXT, timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); Admin Notifications: Set up admin email addresses in notification nodes Configure WhatsApp/SMS credentials for urgent alerts Customize notification templates and thresholds Priority Classification Rules: Customize JavaScript code in "Enhanced Summary & Priority Processor" node Define keywords and patterns for priority detection: // High Priority Keywords const urgentKeywords = ['urgent', 'emergency', 'billing issue', 'not working', 'broken', 'refund', 'complaint']; // Medium Priority Keywords const mediumKeywords = ['question', 'how to', 'support', 'help', 'information']; // Classification logic if (urgentKeywords.some(keyword => message.toLowerCase().includes(keyword))) { priority = 'HIGH'; } else if (mediumKeywords.some(keyword => message.toLowerCase().includes(keyword))) { priority = 'MEDIUM'; } else { priority = 'LOW'; } Response Templates: Customize auto-response templates in both WhatsApp and Email response nodes Include your company branding and contact information Set up response templates for different priority levels and common scenarios Testing and Deployment: Test Each Channel: Send test messages via WhatsApp and email to verify end-to-end flow Verify Translations: Test with messages in different languages Check Database Logging: Confirm all interactions are properly stored Test Admin Notifications: Verify alerts are sent for high-priority cases Monitor Performance: Set up workflow execution monitoring and error handling Your Multi-language Customer Support workflow is now ready to handle customer communications 24/7 across multiple channels with intelligent automation and human oversight where needed!
by Kaden Reese
SignSnapHome to Multi-CRM Auto Follow-up: Complete Real Estate Open House Automation Transform Your Open House Leads into Clients with Zero Manual Work Are you tired of manually entering open house visitor information into your CRM? Losing hot leads because you didn't follow up fast enough? This powerful n8n workflow automatically syncs every SignSnapHome open house sign-in to three major real estate CRMs and executes a customizeable 7-day follow-up sequence via email and SMS. Setup Video Here π― What This Workflow Does This automation creates a complete, hands-free lead nurturing system for real estate agents using SignSnap Home for open house visitor management. Every time someone signs in at your open house, this workflow: Instantly captures all visitor data from SignSnap Home via webhook Intelligently scores each lead based on agent status and property interest Automatically syncs contact information to three CRMs simultaneously: HubSpot - For marketing automation and pipeline management Follow Up Boss - For real estate-specific lead management Monday.com - For team collaboration and task tracking Logs everything to Google Sheets for complete audit trail and reporting Sends personalized follow-ups over 7 days for qualified leads: Day 0: Immediate thank you email Day 2: SMS text message check-in Day 5: Market update email with consultation offer Day 7: Automatic task created in HubSpot for agent to call π₯ Key Features Smart Lead Qualification Not all open house visitors are equal. This workflow automatically identifies qualified leads who receive the full follow-up sequence: β Visitors who don't currently have a real estate agent β Visitors who have an agent but haven't signed a buyer agreement Leads who already have representation get the basic treatment (thank you email + CRM sync) to respect existing relationships while still capturing their information for future opportunities. Multi-CRM Distribution Why limit yourself to one CRM? This workflow syncs to three platforms simultaneously: HubSpot**: Creates/updates contacts with full lead scoring and property visit history Follow Up Boss**: Adds leads with source attribution and detailed notes Monday.com**: Creates board items for team visibility and collaboration Complete Activity Tracking Every touchpoint is logged to Google Sheets across three tabs: Lead Master Log**: Complete record of every visitor with lead scores and qualification status Follow-up Activity**: Timestamp of every email, SMS, and task created Errors**: Captures any visitors without email addresses for manual follow-up TCPA-Compliant SMS Follow-up Automated SMS messaging via Twilio includes: Proper consent tracking (via open house sign-in) "Reply STOP to unsubscribe" compliance footer Personalized messaging based on agent status Complete activity logging for audit trail πΌ Perfect For Real Estate Agents** using SignSnap Home for open house management Real Estate Teams** who need centralized lead tracking across multiple CRMs Brokerages** wanting to standardize follow-up processes across agents Property Marketing Teams** managing multiple open houses simultaneously π οΈ What You'll Need Required Accounts & Credentials: SignSnapHome account with webhook integration enabled HubSpot account (Free or paid tier) with API access Follow Up Boss account with API key Monday.com account with API token Twilio account with SMS-enabled phone number SMTP Email service (Gmail, SendGrid, etc.) Google Sheets with OAuth2 access Technical Requirements: Active n8n instance (cloud or self-hosted) Basic familiarity with n8n workflows 30 minutes for initial setup and credential configuration π Lead Scoring Algorithm This workflow includes intelligent lead scoring to help you prioritize follow-up: Base Score: 50 points Scoring Adjustments: No real estate agent: +30 points (HOT lead!) Property rating 4-5 stars: +20 points Property rating 1-2 stars: -20 points No buyer agreement signed: +10 points Lead Status Categories: 70-100 points**: HOT π₯ 50-69 points**: WARM 40-49 points**: OPEN 0-39 points**: COLD The Day 7 follow-up task is automatically prioritized as HIGH for leads scoring 70+ points. π Setup Overview Step 1: Import Workflow Download this workflow JSON and import it into your n8n instance. Step 2: Configure Credentials Set up authentication for all seven services: HubSpot OAuth2 or API Token Follow Up Boss HTTP Basic Auth (API key as username) Monday.com API Token Twilio API credentials SMTP email settings Google Sheets OAuth2 Step 3: Create Google Sheets Structure Create one Google Sheet with three tabs: Tab 1: "Lead Master Log" Timestamp First Name Last Name Email Phone Property Lead Score Lead Status Has Agent Buyer Agreement Qualifies for Follow-up Source Tab 2: "Follow-up Activity" Timestamp Contact Email Contact Name Activity Type Message Property Success Notes Tab 3: "Errors" Timestamp Guest Name Property Phone Error Reason Step 4: Update Placeholders Replace these values in the workflow nodes: YOUR_GOOGLE_SHEET_ID_HERE - Your Google Sheet ID (or select manually) YOUR_EMAIL@DOMAIN.COM - Your from email address YOUR_TWILIO_PHONE_NUMBER - Your Twilio phone number (format: +15551234567) YOUR_MONDAY_BOARD_ID - Your Monday.com board ID Step 5: Configure SignSnap Home Activate the workflow in n8n Copy the webhook URL Go to SignSnapHome.com β Settings β Integrations Paste webhook URL and enable "Send on each submission" Step 6: Test! Have someone sign in at your next open house (or use test mode) and watch the magic happen! π Expected Results Time Savings: 15-20 minutes per open house visitor (data entry, CRM updates, follow-up scheduling) Response Rate Improvements: Immediate thank you email: Builds rapport instantly Day 2 SMS: 98% open rate (vs 20-30% for email) Day 5 market update: Re-engages interested prospects Day 7 agent call task: Ensures no lead falls through cracks, make sure you set up your crm or change this to a simple notification node. Conversion Rate Impact: Many agents report 2-3x increase in open house visitor conversions with automated follow-up vs manual processes. π¨ Customization Ideas This workflow is designed to be easily customizable: Adjust Follow-up Timing Change Wait node durations (Day 2 β Day 1, Day 5 β Day 3, etc.) Add more touchpoints (Day 10, Day 30, Day 90) Remove SMS and use email-only sequence Modify Lead Scoring Edit the JavaScript code in "Parse SignSnap Data" node Add new scoring criteria (property price range, visit duration, etc.) Change threshold values for HOT/WARM/COLD status Expand CRM Coverage Add Salesforce using HTTP Request node Include Pipedrive (native node available) Connect Zoho CRM (native node available) Add your brokerage's proprietary CRM via API Enhance Email Content Add property photos and listing details Include market statistics and neighborhood data Embed video tours or agent introduction videos Add social proof (testimonials, recent sales) Create Property-Specific Sequences Use IF nodes to branch by property address Send different messaging per listing Customize follow-up based on price range Include neighborhood-specific content π Compliance & Privacy This workflow is designed with real estate compliance in mind: TCPA Compliance (SMS): Consent established via open house sign-in "Reply STOP to unsubscribe" included in all messages Complete activity logging for audit trail Business relationship already established CAN-SPAM Compliance (Email): Easy unsubscribe mechanism Clear sender identification Accurate subject lines Business address included Data Privacy: No data stored in n8n workflow memory All data passed through encrypted connections CRM platforms handle data retention per their policies Google Sheets can be restricted to specific users π Troubleshooting "No email address" errors Make email required in SignSnap Home form settings Check "Errors" tab in Google Sheet for missed leads Follow up manually via phone using logged information CRM sync failures Verify all API credentials are current and not expired Check API rate limits (especially HubSpot free tier) Review execution logs in n8n for specific error messages SMS not sending Confirm Twilio account has sufficient balance Verify phone number format: +1XXXXXXXXXX (E.164 format) Check that recipient's country allows SMS from your Twilio number Ensure phone number was captured in SignSnap Home Wait nodes not resuming Confirm workflow is ACTIVE (not just saved) Check n8n queue system is running properly Verify execution mode settings allow waiting executions π Additional Resources SignSnap Home: Website: https://signsnaphome.com Documentation: Contact SignSnap Home support Webhook setup guide: Available in app settings n8n Documentation: Webhook nodes: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/ Wait node: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/ Code node: https://docs.n8n.io/code-examples/ CRM API Documentation: HubSpot: https://developers.hubspot.com/ Follow Up Boss: https://docs.followupboss.com/ Monday.com: https://developer.monday.com/ π Success Story "Before this automation, I was spending 30+ minutes after every open house manually entering contacts into HubSpot, then setting reminders to follow up. Now it's completely hands-free. The SMS follow-up on Day 2 alone has doubled my response rate. Best workflow I've ever implemented!" π¦ Next Steps Download this workflow from the n8n Creator Hub Import into your n8n instance Follow the setup guide in the sticky notes Test with a sample submission before your next open house Monitor results in your Google Sheets activity log Customize and optimize based on your response rates π‘ Pro Tips A/B test your messaging**: Duplicate the workflow and test different email subject lines or SMS wording Track conversion rates**: Add a "Converted" column to your Google Sheet and update it when leads become clients Segment by property**: Use IF nodes to send different follow-up sequences for luxury vs starter homes Add social media enrichment**: Connect Clearbit or Hunter.io to automatically find LinkedIn profiles Create dashboard reports**: Connect Google Sheets to Data Studio for visual analytics π Support For workflow-specific questions, please comment on this workflow in the n8n Creator Hub. For SignSnap Home account issues, contact SignSnap Home support directly. For CRM-specific questions, consult each platform's documentation linked above. π·οΈ Tags real-estate open-house crm-automation lead-nurturing sms-marketing email-automation hubspot follow-up-boss monday.com twilio google-sheets webhook multi-crm lead-scoring signsnap-home Version: 1.0 Last Updated: January 2025 Compatibility: n8n v1.0+ License: MIT Built with β€οΈ for the real estate community. Questions or improvements? Drop a comment below!
by Atta
What it does Customer support calls contain a wealth of valuable feedback and urgent issues, but manually reviewing audio files is inefficient. This workflow acts as an AI assistant for your call log, transforming unstructured audio recordings into structured, actionable data. It provides a clean summary, sentiment analysis, and a list of required actions for every call, eliminating the need for manual listening and ensuring key insights are never missed. How it works The workflow runs on a schedule to fully automate the call analysis process from start to finish. Fetch New Recordings: The workflow triggers on a schedule (e.g., every 5 minutes), searches a designated Google Drive folder for new call recordings, and downloads any new files it finds. Transcribe Audio: Each audio file is sent to the ElevenLabs API to be converted from speech to a text transcript. The result is then formatted into a conversational, multi-speaker format. AI-Powered Analysis: The transcript is passed to a Google Gemini node, which is prompted to return a structured JSON object. This JSON contains a complete analysis of the call, including speaker identification (agent_name, client_name), a summary, the client_sentiment, a call_topic, a department_tag, and a list of action_items. Log the Results: The complete, structured analysis output from Gemini is appended as a new row in a Google Sheet, creating a centralized log with all the extracted call details and the full transcript. Take Action: The workflow uses conditional logic based on the detected sentiment: Negative Sentiment: If a call was negative, an immediate alert containing the call summary and action items is sent to a manager's group on Telegram. Positive Sentiment: If a call was positive, a kudos message is sent to the support team's Telegram channel to celebrate good work. File Management: After processing, the original audio file is automatically moved to a separate "Processed" folder in Google Drive to ensure it isnβt analyzed again. Setup Instructions To configure this workflow, you will need to set up your file storage in Google Drive, create a Google Sheet for logging, and configure credentials for all connected services. Required Credentials Google: You will need Google OAuth2 credentials that have permission for Google Drive, Google Sheets, and the Google AI (Gemini) APIs. ElevenLabs: Sign up for an account at ElevenLabs and get your API Key. You will add this directly into the HTTP Request node for transcription. Telegram: Create a bot using the BotFather in Telegram to get your Bot Token. You will also need the specific Chat ID for the managers' channel and the team's channel. Step-by-Step Configuration Google Drive: Create two folders in your Google Drive: one named "Company - Support Call Recordings" and another named "Processed Recordings". Copy the unique Folder ID from the URL for each and paste it into the respective Google Drive nodes. Google Sheets: Create a new Google Sheet to log the results. In the first row, create the following headers exactly as written: Recording File, Sentiment, Department, Topic, Agent, Client, Summary, Actions, and Fulltext. Copy the Sheet ID from the URL and paste it into the "Log Recording Analysis" (Google Sheets) node. ElevenLabs Node: In the "Convert Speech To Text" (HTTP Request) node, make sure the URL is set to the correct ElevenLabs API endpoint for speech-to-text. Add your ElevenLabs API Key to the authentication header. Telegram Nodes: In the "Send Alert To Managers" node, enter the Chat ID for your managers' group. In the "Send Kudos to Team" node, enter the Chat ID for the main team channel. How to Adapt the Template This workflow is a powerful starting point. Based on your specific needs, you can customize the inputs, the AI analysis, the logging method, and the final actions. Input Method Change File Source:* Instead of Google Drive, you can adapt the workflow to fetch recordings from other services like *Dropbox, **OneDrive, or a custom FTP server. Use a Webhook:* Replace the *Schedule Trigger* with a *Webhook Trigger** to process calls in real-time as they are added from your call software (if it supports webhooks). Final Actions Create Service Tickets:* This is a key area for customization. Replace the *Telegram* nodes with nodes for ticketing systems. For a negative call, you can automatically create a high-priority ticket in *Jira, **Zendesk, or ServiceNow. Create Tasks:* For calls with specific action items, use a node like *Asana, **Trello, or Todoist to automatically create a task and assign it to the correct team member. Send Email Notifications:* Use the *Send Email** node to dispatch summaries and alerts to stakeholders who are not on Telegram. Logging and Analysis Log to a Database:* Instead of Google Sheets, you can use a *Postgres, **MySQL, or Data Warehouse node to log the structured data for more advanced business intelligence and dashboarding. Customize the AI Prompt:** The prompt in the Google Gemini node is the "brain" of the operation. It specifically instructs the AI to return a JSON object with a predefined structure. To change what data is extracted, you can modify this structure in the prompt. For example, you could add a new key-value pair like "competitor_mentioned": "Name of competitor if mentioned, otherwise null" to the JSON structure. The current workflow asks the AI to populate a JSON object like this: { "speaker_identification": { "agent": "speaker_id", "agent_name": "The agent's name", "client": "client_id", "client_name": "The client's name" }, "summary": "A concise summary.", "client_sentiment": "Positive, Negative, or Neutral", "call_topic": "A brief phrase for the topic.", "department_tag": "The most relevant department.", "action_items": [ "A list of actionable tasks." ] } Change AI or STT Service:* You can swap out the *Google Gemini* node for an *OpenAI* node, or change the *HTTP Request* node to use a different transcription service like *AssemblyAI* or *Deepgram**.
by Connor Provines
One-Line Description Automatically detects missed Zoom demos booked via Calendly and triggers AI-powered follow-up sequences. Detailed Description What it does: When a prospect books a demo through Calendly but fails to join the Zoom meeting, this workflow automatically detects the no-show, generates personalized recovery messages using AI, updates your database, and notifies your sales teamβall within minutes of the meeting ending. It bridges Calendly, Zoom, and your follow-up channels to ensure no lead falls through the cracks. Who it's for: Sales teams** running high-volume demo calendars who lose 20-40% of booked meetings to no-shows Customer success managers** conducting onboarding calls where attendance tracking matters SDRs and BDRs** who need immediate alerts when prospects miss scheduled meetings Revenue operations teams** seeking to improve demo-to-opportunity conversion rates through faster follow-up Key Features: Real-time no-show detection** - Automatically checks Zoom participant lists against expected attendees within seconds of meeting end AI-generated recovery messaging** - Creates contextual, empathetic follow-up emails and LinkedIn messages tailored to each no-show scenario Instant team notifications** - Sends formatted Slack alerts with attendee details and suggested next actions so reps can manually follow up if needed Attendance tracking database** - Maintains a searchable record of all bookings and attendance status for reporting and analysis Multi-channel follow-up orchestration** - Coordinates email, Slack notifications, and optional CRM updates from a single automation Selective event filtering** - Processes only specific Calendly event types so you control which meetings trigger the workflow How it works: Booking capture: Calendly webhook fires when a demo is scheduled, extracting Zoom meeting details and attendee information Meeting monitoring: When the Zoom meeting ends, a second webhook triggers attendance verification by pulling the participant list from Zoom's API No-show identification: Workflow cross-references the expected attendee email with actual Zoom participants to confirm whether they attended Automated response: For confirmed no-shows, AI generates personalized recovery messages while the system updates your database and notifies your team via Slack Optional integrations: Simultaneously updates CRM deal stages or triggers additional follow-up sequences based on your configuration Setup Requirements Prerequisites: Calendly account** (any paid plan) with webhook access and Personal Access Token Zoom account** (Pro or higher) with Server-to-Server OAuth app credentials for API access OpenAI API key** for AI-generated follow-up message creation Slack workspace** with OAuth permissions to post messages (optional but recommended) n8n Data Table** created with columns: meeting_id, email, status (built-in n8n feature, no external database needed) Email sending service** configured in n8n (SMTP, Gmail, SendGrid, etc.) if enabling automated email sending CRM API access** (HubSpot, Salesforce, Pipedrive, etc.) if enabling deal updates (optional) Note: Zoom API has rate limits (varies by plan); this workflow makes 1-2 API calls per meeting end event. Estimated Setup Time: 45-60 minutes including Zoom app creation, Calendly webhook configuration, and Data Table setup Installation Notes Critical setup steps: Zoom webhook validation**: You must complete Zoom's webhook endpoint validation process before receiving real events. The workflow includes a dedicated validation pathβrun it once after creating your Zoom app. Calendly webhook creation**: Use the "Manual Setup Trigger" path in the workflow to programmatically create your Calendly webhook subscription. This only needs to run once. Event type filtering**: Replace the placeholder YOUR_CALENDLY_EVENT_TYPE_URI with your specific demo event type URI from Calendly to avoid processing all meeting types. Test with a real meeting**: Book a test demo, join briefly with a different email than the booking email, then leave. The workflow should detect the "no-show" for the booking email. Common pitfalls to avoid: Forgetting to enable the disabled "Send Recovery Email" node after testing (it's disabled by default to prevent accidental sends during setup) Not configuring Zoom Server-to-Server OAuth correctly (requires Account ID, Client ID, and Client Secretβnot JWT credentials) Using a personal Calendly account instead of an organization account (webhooks require organization-level access) Overlooking the Data Table creation stepβthe workflow will fail without this internal database Testing recommendations: Start with Slack notifications only (leave email sending disabled) to verify the workflow logic Use your own email as a test booking to safely generate AI messages without sending to real prospects Check the Data Table after each test to confirm booking records are being created and updated correctly Customization Options Easy modifications: Swap email for SMS**: Replace the email node with Twilio SMS to send text message follow-ups instead Add delays**: Insert "Wait" nodes to schedule follow-ups hours or days later rather than immediately Change AI tone**: Modify the OpenAI prompt to match your brand voice (casual, formal, humorous, etc.) Multi-step sequences**: Duplicate the AI and email nodes to create a 3-touch follow-up cadence over several days Different CRM platforms**: The HubSpot node can be swapped for Salesforce, Pipedrive, or any CRM n8n supports Extension possibilities: Add Google Sheets logging for executive dashboard reporting on no-show rates Integrate with Calendly's rescheduling API to automatically send rebooking links Connect to Loom or Vidyard APIs to attach pre-recorded demo videos in follow-up emails Create a "second chance" discount workflow that offers incentives for rescheduling Build a predictive model by exporting no-show data to analyze patterns (time of day, lead source, etc.) Category Sales Tags calendly zoom no-show-recovery demo-automation lead-follow-up sales-automation meeting-tracking ai-messaging slack-notification openai Use Case Examples SaaS sales team**: A B2B software company runs 40+ demos per week. When prospects no-show, this workflow immediately notifies the assigned rep in Slack with a pre-written LinkedIn message, sends an empathetic recovery email offering a Loom recording alternative, and flags the deal in HubSpot for manual outreach within 2 hours. Agency onboarding**: A marketing agency conducts discovery calls with new clients. If a client misses their scheduled kickoff meeting, the workflow logs the no-show, updates the client status in their CRM, and sends a friendly rescheduling email with three alternative time slotsβall before the account manager even notices. Customer success**: A customer onboarding team tracks training session attendance. When users don't join their scheduled implementation calls, the workflow automatically sends a resource-rich email with documentation links, notifies the CSM team channel, and schedules a follow-up task in their project management tool.
by Daniel Rosehill
Who's it for This workflow is perfect for individuals, small businesses, or households who need to: Automatically process and categorize expense receipts Extract structured data from invoices and receipts using AI Store receipts in multiple locations (Google Drive and S3) Send automated email notifications with expense details Send documents to accounting systems via email hooks How it works This comprehensive expense processing workflow combines AI-powered document analysis with automated file management and notifications. Here's the complete flow: Form Submission: Users submit expenses through a web form with receipt upload and category selection (Personal, Business, or Shared/Home) AI Document Processing: The workflow extracts text from PDF receipts using OCR, then uses Google Gemini AI to parse and structure the data into a standardized JSON format including vendor details, amounts, dates, and categorization Smart Routing: Based on the expense category, receipts are automatically routed to different processing paths with category-specific folder organization Multi-Destination Storage: Receipts are uploaded to: Google Drive (organized by year/month folders) S3 cloud storage buckets Different destinations based on expense type Email Notifications: Sends formatted HTML email notifications with complete expense details and links to stored receipts Accounting System Integration: Automatically forwards business expenses to accounting systems via email hooks (customizable per user requirements) Requirements Credentials needed: Google Gemini API**: For AI-powered document analysis Google Drive OAuth2**: For personal and business drive access Gmail OAuth2**: For sending email notifications S3 Storage**: For cloud backup (AWS S3, Wasabi, etc.) Services used: Google Drive (multiple accounts supported) Google Gemini AI Gmail S3-compatible storage Form trigger webhook How to set up Step 1: Configure Credentials Set up Google Gemini API credentials in n8n Configure Google Drive OAuth2 for both personal and business accounts Add Gmail OAuth2 credentials Set up S3 storage credentials Step 2: Update Configuration Replace all placeholder values: YOUR_GEMINI_CREDENTIAL_ID with your Gemini credential ID YOUR_PERSONAL_GDRIVE_CREDENTIAL_ID with personal Drive credential YOUR_BUSINESS_GDRIVE_CREDENTIAL_ID with business Drive credential YOUR_GMAIL_CREDENTIAL_ID with Gmail credential YOUR_S3_CREDENTIAL_ID with S3 credential Update Google Drive folder structure: Replace YOUR_BUSINESS_DRIVE_ID and YOUR_SHARED_DRIVE_ID with actual drive IDs Update the JavaScript code in the three Code nodes with your actual folder mapping Configure email addresses: Replace user@example.com with your notification email Replace receipts@paperless-service.com with your accounting system's email hook (this is a mail hook for uploading documents to small business accounting systems - can be modified per user requirements) Update S3 bucket names: Replace business-expenses, personal-expenses, and shared-expenses with your bucket names Step 3: Set Up Folder Structure Create organized folder structures in your Google Drives: Drive Root/ βββ 2024/ β βββ January/ β βββ February/ β βββ ... (all months) βββ 2025/ β βββ January/ β βββ ... (all months) βββ 2026/ βββ ... (all months) Step 4: Test the Workflow Activate the workflow Submit a test expense through the form Verify files are uploaded to correct locations Check email notifications are received How to customize the workflow Expense Categories Modify the form dropdown options and conditional logic to add/remove expense categories: Edit the "On form submission" node form fields Update the IF condition nodes for routing Add new processing paths as needed AI Processing Schema Customize the structured output parser schema to extract different fields: Modify the JSON schema in the "Structured Output Parser" node Update the AI system prompt for different extraction requirements Add new fields for specific business needs Storage Destinations Add or modify storage locations: Duplicate upload nodes for additional cloud services Modify folder organization logic in Code nodes Add new conditional routing for different storage rules Email Templates Customize the HTML email template: Edit the email message content in the Gmail node Add/remove expense fields in the table Modify styling and branding Folder Organization Update the JavaScript code in Code nodes to match your folder structure: Modify the CSV data with your actual folder IDs Change the date-based organization logic Add custom folder naming conventions Integration Extensions Extend the workflow with additional integrations: Add Slack notifications Connect to accounting software (QuickBooks, Xero) Integrate with expense management platforms Add approval workflows for business expenses