by AppUnits AI
Generate Invoices and Send Reminders for Customers with Jotform, QuickBooks and Gmail This workflow automates the entire process of receiving a product/service order, checking or creating a customer in QuickBooks Online (QBO), generating an invoice, emailing it — all triggered by a form submission (via Jotform), and sending invoice reminders. How It Works Receive Submission Triggered when a user submits a form. Collects data like customer details, selected product/service, etc. Check If Customer Exists Searches QBO to determine if the customer already exists. If Customer Exists:* *Update** customer details (e.g., billing address). If Customer Doesn’t Exist:* *Create** a new customer in QBO. Get The Item Retrieves the selected product or service from QBO. Create The Invoice Generates a new invoice for the customer using the item selected. Send The Invoice Automatically sends the invoice via email to the customer. Store The Invoice In DB Stores the needed invoice details in the DB. Send Reminders Every day at 8 AM, the automation checks each invoice to decide whether to: send a reminder email, skip and send it later, or delete the invoice from the DB (if it's paid or all reminders have been sent). Who Can Benefit from This Workflow? Freelancers** Service Providers** Consultants & Coaches** Small Businesses** E-commerce or Custom Product Sellers** Requirements Jotform webhook setup, more info here QuickBooks Online credentials, more info here Email setup, update email nodes (Send reminder email & Send reminders sent summary), more info about Gmail setup here Create data table with the following columns: invoiceId (string) remainingAmount (number) currency (string) remindersSent (number) lastSentAt (date time) Update Add reminders config node so update the data table id and intervals in days (default is after 2 days, then after 3 days and finally after 5 days ) LLM model credentials
by Billy Christi
Who is this for? This workflow is ideal for: Business analysts* and *data professionals** who need to quickly analyze spreadsheet data through natural conversation Small to medium businesses** seeking AI-powered insights from their Google Sheets without complex dashboard setups Sales teams* and *marketing professionals** who want instant access to customer, product, and order analytics What problem is this workflow solving? Traditional data analysis requires technical skills and time-consuming manual work. This AI data analyst chatbot solves that by: Eliminating the need for complex formulas or pivot tables** - just ask questions in plain text Providing real-time insights** from live Google Sheets data whenever you need them Making data analysis accessible** to non-technical team members across the organization Maintaining conversation context** so you can ask follow-up questions and dive deeper into insights Combining multiple data sources** for comprehensive business intelligence What this workflow does This workflow creates an intelligent chatbot that can analyze data from Google Sheets in real time, providing AI-powered business intelligence and data insights through a conversational interface. Step by step: Chat Trigger receives incoming chat messages with session ID tracking for conversation context Parallel Data Retrieval fetches live data from multiple Google Sheets simultaneously Data Aggregation combines data from each sheet into structured objects for analysis AI Analysis processes user queries using OpenAI's language model with the combined data context Intelligent Response delivers analytical insights, summaries, or answers back to the chat interface How to set up Connect your Google Sheets account to all Google Sheets nodes for data access View & Copy the example Google Sheet template here: 👉 Smart AI Data Analyst Chatbot – Google Sheet Template Update Google Sheets document ID in all Google Sheets nodes to point to your specific spreadsheet Configure sheet names to match your Google Sheets structure Add your OpenAI API key to the OpenAI Chat Model node for AI-powered analysis Customize the AI Agent system message to reflect your specific data schema and analysis requirements Configure the chat trigger webhook for your specific chat interface implementation Test the workflow by sending sample queries about your data through the chat interface Monitor responses to ensure the AI is correctly interpreting and analyzing your Google Sheets data How to customize this workflow to your needs Replace with your own Google Sheets**: update the Google Sheets nodes to connect to your specific spreadsheets based on your use case. Replace with different data sources**: swap Google Sheets nodes with other data connectors like Airtable, databases (PostgreSQL, MySQL), or APIs to analyze data from your preferred platforms Modify AI instructions**: customize the Data Analyst AI Agent system message to focus on specific business metrics or analysis types Change AI model**: Switch to different LLM models such as Gemini, Claude, and others based on your complexity and cost requirements. Need help customizing? Contact me for consulting and support: 📧 billychartanto@gmail.com
by Oneclick AI Squad
This n8n workflow automatically fetches monthly financial statements, normalizes the data, performs KPI calculations and trend analysis, detects anomalies, generates AI-powered executive insights and recommendations, creates professional reports, and distributes them to stakeholders while maintaining historical records. Key Insights Consistent data formats from accounting systems (QuickBooks, Xero, etc.) are critical for reliable normalization and analysis. AI-generated insights are only as good as the input data quality — always validate fetched statements and mappings first. Monthly scheduling ensures timely reporting; consider adding manual triggers for ad-hoc runs during testing. Workflow Process Initiate the workflow with the Monthly Schedule Trigger node (runs on the 1st of each month at 8 AM). Fetch current period financial statements (P&L, balance sheet, cash flow) using the accounting API nodes. Fetch previous period data for accurate YoY/MoM comparisons. Merge all statements, normalize formats, validate integrity, and calculate standardized KPIs/metrics using data transformation nodes. Analyze trends, variances, and detect anomalies/unusual patterns. Send cleaned financial data to an AI model (OpenAI/Claude) to generate natural language executive summaries, key insights, and actionable management recommendations. Format and generate professional HTML/PDF reports (with charts/visualizations if configured). Store the report and metrics in a database for historical tracking, post summary to Slack, and email the full report to management/stakeholders. Usage Guide Import the workflow into n8n and configure credentials for your accounting system(s), AI provider, database, Slack webhook, and email (SMTP). Map fields correctly in the normalization/validation nodes to match your source data structure. Test end-to-end with sample/historical financial data before enabling the schedule. Execute manually first via the Execute workflow button to verify each step (especially API fetches and AI output quality). Prerequisites API access to accounting system (QuickBooks, Xero, SAP, or direct database connection) OpenAI or Claude API key for insight generation Database (PostgreSQL, MySQL, etc.) with tables ready for reports and metrics storage SMTP server or email service credentials Slack webhook (optional for notifications) PDF/HTML generation tools (if using external services like WeasyPrint via code node or Make.com-style nodes) Customization Options Adjust the schedule (e.g., quarterly instead of monthly) in the trigger node. Modify the AI prompt in the LLM node to change the style/tone of summaries or add specific focus areas (e.g., cost control, revenue growth). Extend anomaly detection rules or add more KPIs in the analysis section. Change distribution channels (add Teams, Discord, Google Drive upload, etc.) by modifying or adding nodes after report generation. Add conditional branching for high-priority alerts (e.g., if major anomaly detected → immediate notification).
by DIGITAL BIZ TECH
This workflow converts emailed timesheets into structured invoice rows in Google Sheets and stores them in the correct Google Drive folder structure. It: Listens to Gmail for timesheet attachments Runs OCR and AI parsing Looks up Customer and PO data from a Google Sheet Organizes files in Client → Employee → Year folders Reuses an existing invoice sheet or creates a new one and writes the invoice row Quick Implementation Steps Import the workflow JSON into your n8n instance. Set up credentials for: Gmail Google Drive Google Sheets OpenAI Check the OCR HTTP node: Default URL: https://universal-file-to-text-extractor.vercel.app/extract Configure "Get Customer Info From PO Sheet" with: Spreadsheet ID Correct sheet and column names Confirm Gmail Trigger filter: has:attachment (filename:timesheet OR subject:timesheet) and unread only Ensure your Client Invoices root folder exists in Google Drive. Test once with a sample timesheet email. Activate the workflow. What It Does Reads unread Gmail messages with timesheet attachments. Splits and processes each attachment separately. Sends files to OCR and converts them to text. Uses OpenAI to extract: Employee Name Client Name Week Start and End Dates Total Billable Hours Current Year Looks up Customer and PO data from a Google Sheet: Account Number PO Number Item Name Folder Name Invoice range Due Date offset Builds or finds: Client folder Employee folder Year folder Either: Appends to an existing sheet for that employee and period, or Creates a new sheet, sets timezone, moves it into the right folder, and adds the invoice row Who Is It For Agencies and consultancies billing from emailed timesheets Finance or ops teams managing many clients and employees in Google Workspace Service providers that keep one sheet per employee per period Anyone who wants to stop manually reading timesheets and filling invoice sheets Requirements n8n instance Gmail account with timesheet emails Google Drive and Google Sheets OpenAI API key OCR API endpoint (or the default one) Customer POs Google Sheet with: Email Customer Account Number PO Number Item Folder Name Invoice range Due Date Calculation How It Works 1. Email Intake and Loop Gmail Trigger Polls every minute Filter: unread + has attachment + timesheet in file name or subject Split Binary Attachments Creates one item per attachment Loop: Process Each Attachment Handles each timesheet file in sequence 2. OCR and AI Parsing Extract Text from Attachment Sends binary file to OCR endpoint Returns plain text Extract Timesheet Data (OpenAI) Reads the text and outputs strict JSON with: Employee Name Client Name Week Starting Date Week Ending Date Total Working Hours Set Timesheet JSON Fields Normalizes and stores: Employee Name Total Billable hours Week Start Date and Week End Date Client Name Current Year 3. Customer and PO Lookup Get Customer Info From PO Sheet Looks up sender email Pulls: Customer Account Number PO Number Item Folder Name Invoice range Due Date Calculation 4. Drive Folder Discovery Search: Client Invoices Folder Finds the main invoices root folder Search or create: Client folder using Client Name Employee folder using Folder Name from PO sheet Search: Year Folder Looks for folder matching Current Year If Year Folder does not exist: Create Year Folder or Create Current Year Folder Set: Invoice Range Stores invoice range and Year Folder id 5. File Naming and Sheet Search Set: File Name from Start and End Based Date Range Builds: File Name (Start Date Based) File Name (End Date Based) Handles weekly and 15 days invoice logic Search: File By Start Date Name Search: File By End Date Name Merge: Combine Folder Search Results Merges both search results If: Invoice Range is 15 Days Uses custom 2 week window for file naming Set Invoice Date and Due Date Days Invoice Date from week end Due Date from week end plus offset 6. Reuse vs Create Sheet If: File Already Exists If found Go to Append: Final Row to Existing Sheet If not found Go to Sheets: Create Sheet New Sheet Path Sheets: Create Sheet Creates new spreadsheet with generated name HTTP Request (create sheet) Sets spreadsheet timezone to America/New_York Drive: Move Sheet To Final Folder Moves spreadsheet into the Year Folder Set: Empty Row Structure Prepares JSON structure for invoice row Sheets: Append Row1 Writes the first invoice row Set: Spreadsheet (ID and Name) Stores id and name Append: Final Row to Existing Sheet Ensures row is appended with full mapping Existing Sheet Path Set: Spreadsheet (ID and Name) Uses found spreadsheet Append: Final Row to Existing Sheet Appends new row with: Customer Account Number Invoice Date Due Date PO Number Item and columns Total billable hours as Quantity Description with week period How To Set Up 1. Import and Credentials Import JSON in n8n Set credentials for: Gmail Trigger Google Drive nodes Google Sheets nodes OpenAI node OCR HTTP node if needed 2. Customer POs Sheet In Get Customer Info From PO Sheet: Set Spreadsheet ID Confirm column names Make sure each employee email row has: Customer Account Number PO Number Item Folder Name Invoice range Due Date Calculation 3. Drive and Gmail Confirm Client Invoices root folder exists Confirm Gmail Trigger: Query string Poll schedule 4. Test Send a sample timesheet email Run the workflow once manually Check: Folder structure Created or reused sheet Invoice row content 5. Activate Turn workflow ON once tests are successful. How To Customize Swap the OpenAI model in Extract Timesheet Data. Change prompt to extract extra fields such as project, cost center, or approval status. Replace OCR endpoint with another service if needed. Change folder naming rules in Set and Create folder nodes. Adjust file naming rules for different billing periods. Add validation steps to handle: Missing name Zero hours Invalid dates Extend the PO sheet and invoice sheet with: Hourly rate Currency Tax codes Use Case Examples Weekly consulting invoices from signed timesheets. Contractor billing for staffing agencies. Internal cross charging between departments using timesheet reports. Creating a clean, auditable history of timesheets and related invoice lines. Troubleshooting Guide | Issue | Possible Solution | |-------|-------------------| | No rows are created | Check Gmail Trigger is active and the filter matches the email. Confirm email is unread and has attachments. | | OCR returns empty or error | Check OCR URL, status code, and supported file types. Log the response body. | | Wrong or missing dates or hours | Review OpenAI prompt and a sample output. Ensure JSON keys in Set Timesheet JSON Fields match the AI output. | | Folders not found or created | Confirm the Client Invoices root exists and that Client Name and Folder Name text matches what the workflow expects. | | Files in wrong year folder | Check Current Year extraction and Year Folder search logic. | | Duplicate sheets for same period | Check file naming code and Drive search nodes for exact match on names. | | Due Date incorrect | Confirm Due Date Calculation in PO sheet and date math formats in Set and append nodes. | Need Help or More Workflows? Want to customize this workflow for your business or integrate it with your existing tools? Our team at Digital Biz Tech can tailor it precisely to your use case from automation logic to AI-powered enhancements. We can help you set it up for free — from connecting credentials to deploying it live. Contact: rajeet.nair@digitalbiz.tech Website: https://www.digitalbiz.tech LinkedIn: https://www.linkedin.com/company/digital-biz-tech/ You can also DM us on LinkedIn for any help.
by Hassan
Overview Transform competitor Instagram content into optimized scripts for your own channel with this fully automated AI-powered content intelligence system. This workflow monitors Instagram profiles in your niche (AI/automation/tech), downloads their videos, transcribes the content, analyzes it for valuable tools and technologies, enriches it with web research, and rewrites it into polished, engagement-optimized scripts ready for your content team. It's like having a 24/7 content research team that never sleeps, turning competitor content into fresh opportunities for your channel. Key Benefits 🎯 Automated Competitive Intelligence - Monitor unlimited Instagram profiles and automatically capture their latest content the moment they post, ensuring you never miss trending topics in your niche. 🤖 AI-Powered Content Analysis - GPT-4O intelligently filters videos to identify only those discussing relevant tools, technologies, or AI solutions, saving hours of manual review time. ✍️ Professional Script Rewriting - Automatically transforms competitor scripts into unique, high-quality content optimized for your brand voice with engagement-focused CTAs that drive comments and DMs. 🔍 Deep Research Integration - Enriches every script with fresh facts from Perplexity AI's web search, adding unique insights and credibility that sets your content apart from simple reposts. 📊 Comprehensive Data Tracking - Stores all video metadata (views, likes, comments, duration) alongside original and rewritten scripts for performance analysis and content strategy optimization. ⚡ Scalable Batch Processing - Process multiple Instagram profiles in a single execution with built-in error handling, ensuring the workflow continues even if individual videos fail to process. 💰 Revenue-Generating Lead Magnet - Built-in CTA system ("comment [keyword] for the link") creates engagement and captures leads directly into your DMs for monetization opportunities. 🔄 100% Repurposable Output - Every processed video becomes a ready-to-use script with step-by-step guides, tool information, and engagement hooks perfect for reels, shorts, or TikToks. How It Works Phase 1: Content Discovery & Extraction The workflow begins by reading your curated list of Instagram profiles from a Google Sheet. These should be competitors or influencers in your niche (AI, automation, tech tools, etc.). For each profile, the system uses the Scrape Creators API to fetch their most recent post, specifically targeting video content. It extracts multiple video quality URLs and prepares them for download. Phase 2: Video Processing & Transcription Once a video is identified, the workflow downloads it directly from Instagram's servers using the highest quality version available. The video file is then passed to OpenAI's Whisper transcription model, which converts the audio into accurate text transcripts. This happens automatically even for videos with background music, multiple speakers, or accents. Phase 3: Intelligent Content Filtering The raw transcript is analyzed by GPT-4O using a sophisticated prompt that determines if the content is relevant to your niche. The AI identifies: Whether the video discusses tools, technologies, or AI solutions (verdict: true/false) Specific tool names mentioned Step-by-step instructions for using the tools A search query for additional research Suggestions for making the content more engaging for an AI/automation audience If the content isn't relevant, the workflow skips it and moves to the next profile, saving API costs and processing time. Phase 4: Deep Research & Fact-Finding For relevant content, the system automatically queries Perplexity AI using the generated search prompt. Perplexity searches the web in real-time to find three interesting, peculiar, or unique facts about the tool or technology. This adds depth and credibility to your final script that the original content likely didn't have. Phase 5: Professional Script Rewriting The final AI step combines everything: the original transcript, the step-by-step guide, the Perplexity research, and the improvement suggestions. GPT-4O rewrites the entire script in your brand voice (casual, spartan, straightforward) at approximately 100 words. The new script: Opens with a strong hook Presents the tool/technology clearly Includes the researched facts naturally Provides value-driven instructions Ends with a specific CTA (e.g., "Comment 'AI' and I'll send the link") Phase 6: Data Storage & Loop Execution All data is written back to your Google Sheet including video metadata (ID, timestamp, caption, engagement metrics), the original transcript, and the rewritten script. The workflow then loops back to process the next Instagram profile in your list, continuing until all profiles have been processed. Required Setup Google Sheets Database Create a Google Sheet with two tabs: "profiles" tab - Column: "Instagram Handles" (without @ symbol, e.g., "aiautomationhub") "phantom output" tab - Columns: id, timeStamp, caption, commentcount, videoUrl, likesCount, videoViewsCount, Username, Duration, original Script, rewritten Script, style, Updated API Credentials Required Scrape Creators API** - For Instagram data extraction (handles, posts, videos) OpenAI API Key** - For Whisper transcription and GPT-4O script analysis/rewriting Perplexity API Key** - For real-time web research and fact-finding Google Sheets OAuth** - For reading profiles and writing processed data Software Requirements n8n instance (cloud or self-hosted) Internet connection for API calls Sufficient OpenAI credits (approximately $0.05-0.15 per video processed) Business Use Cases Content Creation Agencies - Offer content repurposing services to clients, turning competitor research into ready-to-post scripts at scale. Social Media Managers - Monitor competitor content and generate fresh ideas for your own channels without manual research. Course Creators - Identify trending tools in your niche and create educational content around them before competitors do. Affiliate Marketers - Discover new tools to promote, complete with ready-made scripts and CTAs for lead generation. SaaS Companies - Track how competitors explain similar products and optimize your own messaging based on what works. Newsletter Operators - Find trending topics and tools to feature, with scripts easily adaptable to written content. Revenue Potential Direct Sales: Sell this workflow template for $97-$297 depending on setup complexity and included support. Subscription Service: Offer managed content intelligence as a service at $197-$497/month, processing unlimited profiles for clients. Agency Upsell: Use this as a lead generation tool (the CTA system) to build an email/DM list, then sell content creation services at $500-$2,000 per client/month. Course Integration: Include as a bonus tool in a content creation course priced at $497-$997, increasing perceived value. White-Label Licensing: License to agencies for $997-$2,997 with white-label rights for their client base. Time Savings ROI: If a content team spends 2 hours per video on research and scripting at $50/hour, this workflow saves $100 per video. Processing 20 videos weekly = $104,000 annual savings. Difficulty Level & Build Time Difficulty: Intermediate-Advanced Requires understanding of API authentication Needs basic JSON knowledge for data mapping Involves prompt engineering for optimal AI outputs Build Time: 3-4 hours for experienced n8n users, 6-8 hours for beginners Setup and API credential configuration: 1 hour Node connection and data flow: 1-2 hours Prompt optimization and testing: 1-2 hours Google Sheets schema creation: 30 minutes End-to-end testing with real profiles: 1-2 hours Maintenance: Low - Occasional prompt tweaks as AI models evolve Detailed Setup Steps Create Google Sheets Database Create new Google Sheet named "Instagram Content Intelligence" Add tab "profiles" with column "Instagram Handles" Add tab "phantom output" with all required columns (see schema above) Populate profiles tab with 5-10 Instagram handles in your niche Obtain API Credentials Sign up for Scrape Creators (https://scrapecreators.com) and get API key Create OpenAI account and generate API key with GPT-4O and Whisper access Sign up for Perplexity AI API (https://perplexity.ai) and get API key Connect Google Sheets via OAuth in n8n Import Workflow to n8n Copy the JSON workflow provided In n8n, click "Import from File" or paste JSON All nodes will appear but show credential errors Configure Credentials Click each node with a red error icon Add your respective API credentials (Scrape Creators, OpenAI, Perplexity, Google Sheets) Test each connection to ensure validity Map Google Sheets In "Get row(s) in sheet1" node, select your Google Sheet and "profiles" tab In "Update Entries2" node, select your Google Sheet and "phantom output" tab Verify column mappings match your sheet structure Customize AI Prompts Review "Filter & Generate Suggestions" prompt - adjust for your specific niche Review "Write New Script" prompt - modify tone, length, and CTA format to match your brand Test with sample transcripts to optimize output quality Test with Single Profile Add one Instagram handle to your profiles sheet Click "Execute workflow" manually Monitor each node's output to verify data flow Check that final script appears in Google Sheet Scale to Multiple Profiles Add 10-20 Instagram profiles to your sheet Run full workflow and monitor for errors Review output quality across different content types Adjust batch size if rate limits are hit Set Up Scheduling (Optional) Replace Manual Trigger with Schedule Trigger Set to run daily at optimal times (e.g., 6 AM when fresh posts exist) Enable error notifications to catch failures Implement DM Automation (Advanced) Connect Instagram API or tools like ManyChat Monitor comments for keywords from your CTA Auto-send tool links via DM to engaged users Advanced Customization Options Multi-Language Support: Add language detection node and conditional branches for different script formats per language. Engagement Scoring: Implement scoring algorithm based on likes, comments, views to prioritize which videos to repurpose first. Content Categorization: Add classification layer to tag scripts by category (productivity tools, AI models, automation platforms) for better organization. Thumbnail Analysis: Integrate vision AI to analyze which thumbnail styles perform best and suggest designs for your repurposed content. Sentiment Analysis: Add sentiment detection to understand emotional tone and adjust rewritten scripts to match or improve engagement potential. A/B Script Variants: Generate 2-3 script variations per video with different hooks/CTAs for split testing performance. Competitor Trend Dashboard: Build a connected dashboard showing trending tools, engagement patterns, and content gaps in your niche. Auto-Publishing Integration: Connect to Instagram API or scheduling tools to automatically post rewritten content with approval workflows. Voice Cloning Integration: Add ElevenLabs API to generate audio using your voice profile, making videos fully production-ready. Multi-Platform Expansion: Extend to TikTok, YouTube Shorts, LinkedIn by adjusting script length and platform-specific CTAs.
by Manu
Sync your Google Calendar events with Google Sheets and get daily Slack summaries with meeting statistics. FEATURES: Real-time sync of new and updated events Auto-categorization (Meeting, 1:1, Interview, Demo, Focus Time) Platform detection (Google Meet, Zoom, Teams) Daily statistics dashboard Cancellation tracking Optional email notifications to attendees FLOWS: New Event: Log to Sheets + Slack notification + Optional email Updated Event: Update Sheets + Slack notification Canceled Event: Log cancellation + Slack alert Daily Summary (8AM): Meeting time stats + Schedule to Slack SETUP: Connect Google account with Calendar access Create Google Sheet with 3 tabs: Events: ID, Synced At, Title, Category, Date, Day, Start Time, End Time, Duration, Platform, Attendees, Status, Meeting Link Cancellations: ID, Canceled At, Title, Original Date, Original Time, Affected Attendees Statistics: Date, Total Events, Meeting Time, Minutes, Busy %, Status, Virtual, In-Person Replace YOUR_DOCUMENT_ID in all Sheets nodes Connect Slack (#calendar, #errors channels) Optional: Connect Gmail for attendee notifications DAILY STATISTICS: Total events count Time spent in meetings Busy percentage of work day Virtual vs in-person breakdown Full day schedule IDEAL FOR: Anyone wanting to track their calendar, analyze meeting patterns, or get daily schedule summaries on Slack.
by Viktor Klepikovskyi
Configurable Multi-Page Web Scraper Introduction This n8n workflow provides a robust and highly reusable solution for scraping data from paginated websites. Instead of building a complex series of nodes for every new site, you only need to update a simple JSON configuration in the initial Input Node, making your scraping tasks faster and more standardized. Purpose The core purpose of this template is to automate the extraction of structured data (e.g., product details, quotes, articles) from websites with multiple pages. It is designed to be fully recursive: it follows the "next page" link until no link is found, aggregates the results from all pages, and cleanly structures the final output into a single list of items. Setup and Configuration Locate the Input Node: The entire configuration for the scraper is held within the first node of the workflow. Update the JSON: Replace the existing JSON content with your target website's details: startUrl: The URL of the first page to begin scraping. nextPageSelector: The CSS selector for the "Next" or "Continue" link element that leads to the next page. This is crucial for the pagination loop. fields: An array of objects defining the data to extract on each page. For each field, specify the name (the output key), the selector (the CSS selector pointing to the data), and the value (the HTML attribute to pull, usually text or href). Run the Workflow: After updating the configuration, execute the workflow. It will automatically loop through all pages and deliver a final, structured list of the scraped data. For a detailed breakdown of the internal logic, including how the loop is constructed using the Set, If, and HTTP Request nodes, please refer to the original blog post: Flexible Web Scraping with n8n: A Configurable, Multi-Page Template
by Habeeb Mohammed
AI Voice Appointment Booking with Vapi and Google Calendar Build an intelligent appointment booking system that lets customers schedule appointments through natural voice conversations. This workflow connects Vapi AI assistant with Google Calendar to check availability, create appointments, and send professional confirmation emails automatically. Who's It For Healthcare providers, consultants, service businesses, coaches, salons, or any business that schedules appointments and wants to automate booking through voice calls. What It Does This workflow creates two powerful tools for your Vapi voice assistant: Availability Checker: When customers ask about available time slots, the assistant calls this workflow which fetches busy times from Google Calendar, processes them through an AI agent, and returns open slots in natural language. Appointment Creator: Once the customer confirms their preferred time, the assistant triggers this workflow to create the calendar event and send a branded confirmation email with all appointment details. The entire booking process happens conversationally without requiring customers to navigate websites or apps. How It Works Availability Flow: Customer asks Vapi assistant to check availability for a specific date Vapi calls the first webhook with the requested date Workflow queries Google Calendar for busy slots that day JavaScript code formats the busy times into readable text AI agent analyzes the schedule and identifies available time windows Available slots are returned to Vapi in natural language Assistant presents options to the customer Booking Flow: Customer confirms their chosen appointment time and provides details Vapi calls the second webhook with name, email, date/time, and appointment type Workflow creates the calendar event in Google Calendar Professional HTML confirmation email is sent via Gmail Success confirmation is returned to Vapi Assistant confirms the booking to the customer Requirements Vapi account** with a configured voice assistant Google Calendar** for appointment management Gmail account** for sending confirmation emails Google Gemini API key** for availability analysis How to Set Up 1. Activate the Workflow Import this template and activate it to generate the two webhook URLs. 2. Configure Google Calendar In both calendar nodes, select your appointment calendar and set your timezone. 3. Connect Gmail Add your Gmail credentials to the email node and customize the confirmation email template with your branding. 4. Set Business Hours In the Availability Checker AI agent node, update the system message to reflect your operating hours. 5. Create Vapi Tools In your Vapi assistant dashboard, add two server tools: Tool 1: availability_checker Function name: availability_checker Description: "Checks available appointment slots for a specific date" Server URL: Your first webhook URL Parameters: date (string, required, ISO 8601 format) Tool 2: Creating_the_appointment_and_sending_the_confirmation_email Function name: Creating_the_appointment_and_sending_the_confirmation_email Description: "Creates appointment and sends confirmation email" Server URL: Your second webhook URL Parameters: Name, Email, date and time, Appointment type (all strings, all required) 6. Update Assistant Prompt Ensure your Vapi assistant knows when to call each tool based on customer requests. Vapi Configuration Download the complete Vapi assistant configuration: vapi-config.json 7. Test End-to-End Call your Vapi assistant and test the complete booking flow. How to Customize Appointment Duration: Change the 30-minute default in the "Create an event" node by modifying the .plus(30, 'mins') expression. Email Template: Edit the HTML in the "Send confirmation email" node to match your brand colors, logo, and messaging. Business Hours: Update the system message in the "Availability checker" AI agent node to reflect when you accept appointments. Timezone: Ensure both Google Calendar nodes use your correct timezone for accurate scheduling. Calendar Selection: Point both calendar nodes to the same Google Calendar to avoid double-bookings. Appointment Types: Customize the event description format in the "Create an event" node to include relevant details for your business. This workflow transforms appointment scheduling from a manual back-and-forth into an automated, professional experience that runs 24/7 through voice conversations.
by Rahul Joshi
Description This workflow automates Zendesk ticket escalation by creating ClickUp tasks for urgent cases and notifying the support team in Telegram. It ensures that high-priority tickets are instantly visible to the right team members, avoiding delays in resolution. What This Template Does (Step-by-Step) 🟢 Trigger (Manual Test or Later Zendesk Trigger) Currently uses a manual trigger (Execute Workflow) for testing. In production, this would start whenever a pending Zendesk ticket appears. 🎫 Fetch Zendesk Tickets Pulls all pending tickets assigned to a group. Sorts them by status and date. 🧹 Select Latest Ticket Sorts by created_at and keeps only the newest ticket. Outputs: id, subject, description, requester_id, created_at. 📧 Fetch Requester Email Retrieves requester details (name, email, timezone) from Zendesk Users API. 🔀 Merge Ticket & Requester Data Combines both streams: ticket info + requester info. Ensures the ClickUp task payload has everything it needs. 📝 Prepare ClickUp Task Payload Builds a structured task: Task Name: [Escalation] {Subject} (Ticket #ID) Description: Ticket + requester details + escalation message Priority: 3 (default, can be adjusted) Tags: zendesk, escalation 📂 Create ClickUp Task Pushes the structured task into ClickUp under the escalation list. Assigns it to a predefined team member. 📨 Format Telegram Alert Message Generates a concise but urgent message: Ticket subject + ID Requester name + email Direct ClickUp link Adds urgency formatting (🚨 Immediate Attention Required). 📢 Send Telegram Escalation Alert Posts the alert into the chosen Telegram chat/team. Ensures managers/stakeholders know instantly. Prerequisites Zendesk account + API credentials ClickUp account + API credentials Telegram bot token & chat ID n8n instance (cloud or self-hosted) Customization Ideas ⚡ Replace manual trigger with Zendesk “Ticket Created” trigger. 🎯 Add SLA-based conditions (e.g., escalate only if response > 4 hrs). 📊 Auto-assign ClickUp tasks by ticket category. 🔔 Add Slack/Email notification along with Telegram. 📂 Store escalation logs into Notion or Google Sheets. Key Benefits ✅ Zero delay in handling critical tickets ✅ Automatically creates ClickUp task + Telegram alert ✅ Reduces manual handoff between support → escalation team ✅ Keeps everyone aligned in real-time Perfect For 🎯 Support teams needing fast escalations 📈 SaaS companies managing large ticket volumes 🚀 Agencies ensuring VIP clients never wait
by Davide
This workflow automatically processes Fireflies.ai meeting recap emails, extracts the meeting transcript, generates a structured summary email, and sends it to a designated recipient. Key Advantages 1. ✅ Full Automation of Meeting Summaries The workflow eliminates all manual steps from receiving the Fireflies email to sending a polished summary. This ensures: No delays No forgotten recaps No repetitive manual tasks 2. ✅ Accurate Extraction of Meeting Information Using AI-based information extraction and custom parsing, the workflow reliably identifies: The correct meeting link The Fireflies meeting ID Relevant transcript data This avoids human error and ensures consistency. 3. ✅ High-Quality, AI-Generated Email Summaries The Gemini-powered summary generator: Produces well-structured, readable emails Includes decisions, action items, and discussion points Automatically crafts a professional subject line Uses real content (no placeholders) This results in clear, usable communication for recipients. 4. ✅ Robust Error-Free Data Handling The workflow integrates custom JavaScript steps to: Parse URLs safely Convert AI responses into valid JSON Ensure correct formatting before email delivery This guarantees the message is always properly structured. 5. ✅ Professional Formatting By converting Markdown to HTML, the summary: Is visually clear Displays well on all email clients Enhances readability for recipients 6. ✅ Easily Scalable and Adaptable The workflow can be expanded to: Send summaries to multiple recipients Add storage (e.g., Google Drive) Trigger based on additional conditions Integrate with CRMs or project management tools How It Works Trigger The workflow starts with a Gmail Trigger that checks for new emails with the subject "Your meeting recap" from fred@fireflies.ai every hour. Email Processing When a matching email is found, the workflow retrieves the full email content and extracts the meeting recap URL using an Information Extractor node powered by OpenAI GPT-4.1-mini. Meeting ID Extraction A Code Node extracts the meeting ID from the Fireflies URL (between :: and ?) for use in the next step. Transcript Fetching The meeting ID is sent to the Fireflies Node, which retrieves the full transcript and summary data (short summary, short overview, and full overview). AI-Powered Email Generation The meeting summary data is passed to a Google Gemini node, which generates a complete meeting summary email with a subject line and body in JSON format. Data Formatting The raw JSON output is parsed in a Code Node, and the email body is converted from Markdown to HTML using the Markdown Node. Email Delivery Finally, the email is sent via Gmail with the AI-generated subject and HTML body. Set Up Steps Configure Credentials Set up Gmail OAuth2 credentials for email triggering and sending. Add Fireflies.ai API credentials for fetching transcripts. Configure OpenAI and Google Gemini API keys for AI processing. Adjust Email Filters Update the Gmail Trigger filters (subject and sender) if Fireflies.ai uses a different sender or subject format. Customize Output Email Modify the recipient email in the Send email node to the desired address. Optional: Modify AI Prompts Adjust the system prompts in the Information Extractor and Email Agent nodes to change extraction behavior or email tone. Activate Workflow Ensure the workflow is set to Active in n8n, and test it by sending a sample Fireflies recap email to your connected Gmail account. Need help customizing? Contact me for consulting and support or add me on Linkedin.
by Jitesh Dugar
Automated Influencer Campaign Management System A comprehensive n8n workflow template for streamlining influencer application processing with real-time social media data validation, intelligent scoring algorithms, and automated onboarding workflows. Who’s It For Marketing agencies managing high-volume influencer applications Brand marketing teams screening social media creators Influencer platforms automating creator onboarding Digital marketing consultants reducing manual workload E-commerce brands building creator partnerships Social media management companies scaling operations How It Works Capture influencer applications via Webhook (connected to forms/websites). Validate applicant emails using VerifiEmail to prevent fake submissions. Fetch real-time social data from Instagram (via Instagram120 API) and YouTube (via YouTube138 API). Calculate engagement scores using a weighted algorithm (Instagram 60% + YouTube 40%). Auto-approve qualified influencers based on follower count & engagement thresholds. Log approved applications in Google Sheets with complete metrics. Send personalized welcome emails with campaign information & next steps. Reject low-quality applications with detailed reasoning (for internal tracking). Generate scoring breakdown with platform-specific analytics & tier classification. Track application volume and approval rates for performance optimization. Offers: Real-time API integration, intelligent scoring, automated actions, scalable processing. 🛠️ How to Set Up Connect your application form to Webhook: POST → https://[your-n8n-url]/webhook/influencer-signup Sign up for RapidAPI and subscribe to Instagram120 + YouTube138 APIs. Get VerifiEmail API key (100 free verifications/month). Configure Gmail OAuth2 in Google Cloud Console for email automation. Create a Google Sheets database for approved influencer storage. Add credentials in n8n: RapidAPI, VerifiEmail, Gmail, Google Sheets. Customize scoring thresholds & email templates in Function nodes. Test with sample data: { "name": "Test Creator", "email": "test@gmail.com", "social_handles": { "instagram": "testuser", "youtube": "testchannel" }, "niche": "fitness", "rate_card": 500 } Requirements n8n instance** (cloud or self-hosted) API credentials**: RapidAPI (Instagram120 + YouTube138 APIs) VerifiEmail Gmail OAuth2 Google Sheets access Form/website integration** → sends webhook data Google Sheets** for database & reporting RapidAPI Integration Details Instagram120 API Pricing Plans:** Free: 1,000 requests/month Pro: 10,000 requests/month ($10/mo) Ultra: 100,000 requests/month ($50/mo) n8n Example:** { "method": "POST", "url": "https://instagram120.p.rapidapi.com/api/instagram/profile", "headers": { "X-RapidAPI-Host": "instagram120.p.rapidapi.com", "X-RapidAPI-Key": "YOUR_RAPIDAPI_KEY", "Content-Type": "application/json" }, "body": { "username": "{{ $('Data Sanitizer').item.json.social_handles.instagram }}" } } YouTube138 API Pricing Plans:** Free: 1,000 requests/month Pro: 10,000 requests/month ($15/mo) Ultra: 100,000 requests/month ($75/mo) n8n Example:** { "method": "GET", "url": "https://youtube138.p.rapidapi.com/channel/details", "headers": { "X-RapidAPI-Host": "youtube138.p.rapidapi.com", "X-RapidAPI-Key": "YOUR_RAPIDAPI_KEY" }, "queryParameters": { "id": "{{ $('Webhook').item.json.body.social_handles.youtube }}", "hl": "en", "gl": "US" } } Core Features Social Media Validation** Instagram follower counts, engagement, verification YouTube subscriber counts, channel stats Cross-platform scoring algorithm Fraud prevention via email validation Intelligent Scoring** Multi-tier classification (Nano, Micro, Macro, Mega) Engagement analysis per platform Customizable approval thresholds Automation Actions** Auto-approve/reject with reasoning Store results in Google Sheets Send onboarding emails Track performance stats Use Cases & Applications Marketing Agencies** → Process 100+ daily influencer applications automatically Brands** → Validate influencer metrics before partnerships Platforms** → Qualify creators for platform admission automatically E-commerce** → Build authentic influencer partnerships Key Benefits ✔️ Saves 80-90% processing costs ✔️ Cuts manual review time from 15 minutes → 30 seconds ✔️ Prevents fraud with real-time validation ✔️ Scales infinitely with no extra staffing Technical Specifications Execution time:** 30–45 sec per application Throughput:** 100+ applications/hour Success rate:** 95%+ valid applications Cost:** ~$0.05–$0.15 per application ROI & Cost Breakdown Manual:** $15–25/hour human review Automated:** $0.05–0.15/application Savings:** 80–90% at scale Break-even:** 50–100 apps/month Integration Example // Example website form submission fetch('https://your-n8n-instance.com/webhook/influencer-signup', { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify(formData) }); Sample Application Data: { "name": "Sarah Johnson", "email": "sarah.fitness@gmail.com", "social_handles": { "instagram": "sarahfitlife", "youtube": "SarahFitnessJourney" }, "niche": "fitness", "country": "US", "rate_card": 750 } Installation Import workflow JSON file into n8n Add API credentials (RapidAPI, VerifiEmail, Gmail, Sheets) Configure Sheets with correct columns Customize scoring & emails Test with sample apps Activate workflow Disclaimers Requires paid RapidAPI plans for scale API rate limiting applies Data accuracy depends on APIs Ensure GDPR/CCPA compliance before production Always test before live deployment License This template is provided as-is for educational and commercial use. Users are responsible for ensuring compliance with laws, platform TOS, and data privacy rules.
by nobu
Title Create Google Calendar events from labeled Gmail emails using AI Description Who is it for? This template is for anyone who frequently receives unstructured event or task information via email and wants to quickly add it to their Google Calendar without manual data entry. It's perfect for busy professionals, personal productivity enthusiasts, and anyone looking to streamline their scheduling. What it does This workflow automates the process of creating Google Calendar events from emails you label in Gmail, using AI to parse the details. Triggers on Labeled Email: The workflow starts when a new email is given a specific label in Gmail (e.g., "Scheduled"). Parses Event with AI: The email's content is sent to Google Gemini to extract structured event data: title, start time, end time, location, and a description. Creates Calendar Event: Using the data extracted by the AI, a new event is automatically created in your Google Calendar. Sends Confirmation Email: A confirmation email is sent back to you, containing a summary of the created event and a direct link to edit it in Google Calendar. Requirements An active n8n instance. A Google account for Gmail and Google Calendar. Credentials for the Google Gemini API. How to set up Credentials: Configure your credentials for the 'Gmail Trigger', 'Google Gemini Chat Model', 'Create Google Calendar Event', and 'Send Confirmation Email' nodes. Gmail Trigger: Select the 'Gmail Trigger' node. In the 'Label Ids' field, choose the Gmail label you want to use to trigger the workflow (e.g., a label named Scheduled). Confirmation Email: Select the 'Send Confirmation Email' node. In the 'Send To' field, enter the email address where you want to receive the confirmation email. Activate Workflow: Save and activate the workflow. How to customize AI Prompt: You can modify the prompt in the 'Parse Event with AI' node to better suit your needs. For example, you can change the default timezone or add rules for how to handle recurring events. Email Content: Customize the subject and body of the confirmation email in the 'Send Confirmation Email' node. Calendar Options: In the 'Create Google Calendar Event' node, you can add more event details, such as attendees or reminders.