by Adem Tasin
๐งฉ Description A customized n8n workflow inspired by the Lead Generation Agent template. It automates B2B lead scraping via Apify, extracts contact emails with AI, sends cold emails via Gmail, and logs every interaction in Google Sheets with Telegram alerts for live monitoring. ๐ง How It Works This workflow automates the entire B2B lead generation and outreach process from data collection to email delivery. Once you enter your search keyword and location, the system scrapes business details using Apify, filters valid websites, and extracts email addresses with AI. Each lead is then enriched and logged in Google Sheets. The workflow automatically composes a personalized cold email based on your preferred tone (friendly, simple, or professional) and sends it through Gmail with short delays between each message to avoid spam filters. Youโll also receive Telegram notifications to monitor progress and any leads that fail to send. โ๏ธ Setup Steps Clone the workflow into your n8n instance. Add your API credentials: Apify API Token OpenAI (or Gemini) API Key Google Sheets & Gmail account connections Telegram Bot Token + Chat ID (optional) Open the Form node or Manual Trigger, and set your search criteria (e.g., โmarketing agencies in Londonโ). Configure your Google Sheet โ make sure the columns match the node mapping. Adjust the AI prompt in the OpenAI node if you want a different tone or style for your emails. Run the workflow manually to test one or two leads first. Once confirmed, activate scheduling or keep it manual for on-demand lead generation. ๐ Try It Out! Experience how AI and automation can take over your lead generation workflow. Just enter a business type and location, and watch as the system finds potential clients, extracts contact details, crafts a personalized cold email, and sends it โ all without manual effort. Perfect for freelancers, agencies, or anyone looking to automate their B2B outreach process.
by Hyrum Hurst
Whoโs it for Consultants, agencies, freelancers, and professional service firms who need to create customized proposals and contracts quickly and efficiently. How it works / What it does This n8n workflow automates the entire proposal and contract creation process: Triggers when a new client is added to Google Sheets or CRM. Normalizes client data for processing. Generates personalized proposal content using OpenAI AI models based on templates, pricing, and client info. Creates a Google Doc proposal. Converts the proposal to PDF. Sends the proposal via Gmail or Outlook. Optionally routes the proposal to DocuSign or PandaDoc for e-signature collection. Logs the proposal and client info in Google Sheets for tracking. Sends Slack notifications to internal teams. Routes high-value clients for priority follow-up via email and Slack alerts. How to set up Connect Google Sheets or your CRM for client data. Configure Gmail or Outlook credentials. Add OpenAI credentials for proposal generation. Connect Slack for notifications. Optional: Connect DocuSign/PandaDoc. Customize decision nodes for priority clients or additional workflows. Requirements n8n account with Google Sheets, Gmail/Outlook, Slack integrations. Optional DocuSign/PandaDoc accounts for signature collection. OpenAI API key for AI proposal generation. How to customize Adjust templates in OpenAI prompts for company tone/style. Modify Sheet columns for additional client info. Change decision logic to define what counts as a high-value client. Add other integrations like CRM updates or analytics dashboards. Created by Hyrum Hurst / QuarterSmart Keywords: AI proposal automation, contract automation, consulting, proposal generation, n8n workflow, QuarterSmart
by Sameed
Whoโs it for This workflow is perfect for recruiters, HR professionals, and startup founders who receive job applications by email and want to automate the process of parsing, matching, and evaluating resumes. If you want to save time by having candidate data and AI scores automatically organized in Google Sheets, this workflow is for you. How it works Monitors a Gmail inbox for new emails with resume attachments (PDF) Extracts the job title from the email subject and matches it against open positions stored in Airtable Uploads the resume file to a designated Google Drive folder for storage Builds a prompt with all relevant context and sends it, along with the resume file, to Gemini AI for analysis Gemini scores the candidate, extracts their name and phone, and provides a one-sentence explanation All resultsโincluding candidate info, AI score, feedback, and a download link for the resumeโare appended as new rows in Google Sheets How to set up Create accounts and APIs: Youโll need Google (Gmail, Drive, Sheets), Airtable, and Gemini API access. Prepare your Airtable base: Add your job descriptions (title, code, description, skills, etc.)โthese are matched against incoming applications. Prepare your Google Sheet: Create a spreadsheet to store applicant data and scores. Connect credentials in n8n: Set up Gmail, Google Drive, Google Sheets, Airtable, and Gemini API credentials in n8nโs credential manager. Import this workflow: Use the workflow import feature in n8n and connect your credentials to each node. Test: Send a test application email with a PDF resume to your connected Gmailโwatch the data appear in Google Sheets! Requirements Google account with access to Gmail, Drive, and Sheets Airtable account for job data Gemini API key (no hardcoded keysโuse n8n environment variables or credentials) n8n instance (cloud or self-hosted) How to customize the workflow Job matching logic**: Edit the EmailMatcher node to fine-tune how subjects are matched to job titles. Scoring criteria**: Adjust the prompt in PromptBuilder to change what Gemini evaluates. Supported file types**: Modify the ReadyAttachment node to accept other resume formats if needed. Sheet columns**: Edit the Google Sheets node to map new data points or change the output format. Notifications**: Add Slack or email nodes to notify you when a strong candidate is found.
by David Olusola
โ ๏ธ Crypto Price Threshold Alerts (Email/SMS/Telegram) ๐ Overview This workflow monitors Bitcoin (BTC) and Ethereum (ETH) prices in real-time using CoinGeckoโs public API. It sends you an instant alert when a price crosses a custom threshold or when the 24-hour change moves beyond your defined % range. Perfect for traders who want automated price pings without constantly checking charts. โ๏ธ How it works Schedule Trigger โ runs every 10โ15 minutes (configurable cron). HTTP Request (CoinGecko) โ fetches live BTC/ETH prices + 24h % changes. Code Node โ compares values against your target thresholds. IF Node โ checks if any condition is true (cross up/down or big move). Notification Node โ sends alert via Email, SMS (Twilio), or Telegram. Example Output: > โBTC broke $110,000 (+2.1% 24h)โ ๐ Setup Guide Set your thresholds in the Code node: BTC_UP / BTC_DOWN ETH_UP / ETH_DOWN MOVE_ABS (absolute % change to trigger) Choose delivery channel: Email Node โ SMTP (Gmail, Outlook, etc.) Twilio Node โ SMS alerts Telegram Node โ DM or channel alerts Test Run: Execute once from the Code node. If thresholds are crossed, youโll see a formatted alert payload. ๐ Customization Adjust interval in the Schedule Trigger (default: every 15m). Add more cryptos by editing the CoinGecko API call. Use Slack or Discord instead of Email/Telegram for team alerts. Store last triggered state in Google Sheets/DB to avoid repeated pings. ๐ค Author David Olusola For traning automation & 1:1 consulting: sales@daexai.com
by Rahul Joshi
Description Automatically identify clients who havenโt been contacted in 14+ days and re-engage them with personalized Gmail follow-up emails, Google Sheets tracking, and Slack notifications for account managers. Prevents churn by ensuring no client goes unnoticed. ๐๐๐ฌ What This Template Does Triggers every Monday at 9:00 AM to check client activity. โฐ Fetches all contacts from GoHighLevel CRM. ๐ Filters clients with no updates in the last 14+ days. ๐ Sends personalized Gmail re-engagement emails. ๐ง Logs all inactive clients in Google Sheets for tracking. ๐ Sends Slack notifications summarizing inactive clients for account managers. ๐ฌ Handles workflow errors and alerts the team via Slack. ๐จ Key Benefits โ Automated client re-engagement โ no more missed follow-ups. โ Reduces churn by maintaining regular touchpoints. โ Centralized Google Sheets audit trail for visibility. โ Real-time Slack alerts keep teams informed. โ Fully customizable inactivity threshold (default: 14 days). โ Built-in error handling with instant Slack error alerts. Features Weekly cron trigger (default: Monday 9 AM). โฐ GoHighLevel CRM integration to fetch contacts. ๐ Dynamic filter for โinactive 14+ daysโ clients. ๐ Personalized HTML re-engagement email via Gmail. ๐ Automatic Google Sheets logging with client metadata. ๐ Slack notification summarizing inactive clients. ๐ฌ Error Trigger node for reliable monitoring. ๐จ Requirements n8n instance (cloud or self-hosted) Gmail OAuth2 credentials for sending emails Slack API credentials with chat:write and channels:read GoHighLevel OAuth2 credentials for CRM data access Google Sheets OAuth2 credentials for logging Target Audience Agencies and consultants managing multiple client relationships. ๐ฉโ๐ผ Account managers preventing client churn. ๐ Service businesses needing systematic client check-ins. ๐ข Remote teams requiring Slack alerts for client engagement. ๐ Step-by-Step Setup Instructions Connect Gmail, Slack, Google Sheets, and HighLevel credentials in n8n. ๐ Replace placeholder values (YOUR_GOOGLE_SHEET_ID, YOUR_SLACK_CHANNEL_ID) with environment variables. โ๏ธ Customize inactivity threshold (default: 14 days). ๐ Import the workflow JSON into n8n. ๐ฆ Test manually with sample client records. โ Enable the workflow for weekly automated execution. ๐
by Oneclick AI Squad
Streamline invoice management with this automated n8n workflow. Triggered daily at 9 AM, it fetches pending invoices, filters overdue ones, uses AI to generate personalized reminders, and sends them to clients. It also tracks payments via webhooks, updates statuses, and provides daily summaries to the finance team, ensuring efficient cash flow oversight. Key Features Daily checks at 9 AM ensure timely invoice tracking. AI generates personalized reminders and payment confirmations. Real-time webhook integration for payment updates. Daily summaries and activity logs enhance financial visibility. Workflow Process Schedule Daily Check** runs every day at 9 AM to initiate the workflow. Fetch Pending Invoices** queries the database for unpaid invoices. Filter Overdue Invoices** separates overdue invoices based on due dates. Calculate Reminder Logic** applies smart logic for reminder timing and urgency. Prepare AI Prompt** formats data into a tailored prompt for AI. AI Agent for Generate Email** uses AI to create personalized reminder emails. Format Email** styles the email with HTML for a professional look. Send Email Reminder** delivers the reminder to clients. Update Reminder Status** logs the sent reminder in the database. Create Activity Log** generates a manual log for auditing. Save Input Log** archives raw input data for analysis. Generate Daily Summary** creates a report of daily metrics. Send Summary to Finance Team** emails the summary to the team. Webhook Payment Received** captures payment confirmations via POST. Update Payment Status** updates the invoice status to "paid" in the database. Webhook Response** sends an acknowledgment to the payment gateway. Webhook Logic Filtering** validates webhook data. Prepare AI Prompt (in payment branch)** formats payment data for AI. Chat Memory Tool (in payment branch)** maintains context for AI. Generate Email (in payment branch)** creates a payment confirmation email. Send Payment Confirmation** emails the confirmation to the client. Setup Instructions Import the workflow into n8n and configure database credentials (e.g., Google Sheets or SQL) for "Fetch Pending Invoices." Set up the AI service (e.g., OpenAI GPT) with an API key for email generation. Configure Gmail API Key for sending emails and Slack (if integrated) for team alerts. Test the workflow by adding overdue invoices and simulating a payment webhook. Adjust reminder logic and thresholds (e.g., 7 days overdue) as needed. Prerequisites Database access (e.g., Google Sheets OAuth2 or SQL credentials) OpenAI API key for AI email generation Gmail API Key for email notifications Payment gateway webhook integration (e.g., Stripe) Structured invoice data format Database Structure: Create a table/sheet with columns: Invoice ID Client Name Amount Due Date Status Reminder Sent Payment Date Modification Options Adjust the "Schedule Daily Check" to a different time (e.g., 8 AM IST). Customize "Calculate Reminder Logic" for escalation (e.g., multiple reminders). Modify AI prompts for branded or localized email content. Integrate with accounting software (e.g., QuickBooks) for real-time data. Enhance "Generate Daily Summary" with custom financial metrics. Discover more workflows โ Get in touch with us
by Nitin Dixit
Who's it for HR professionals and recruitment teams handling high application volumes Startup founders and hiring managers seeking to scale hiring efficiently Companies wanting consistent, objective candidate evaluation Teams spending 20+ hours per week on manual resume screening What it does Receives job applications automatically via Jotform webhook Downloads and parses resume PDFs using LlamaParse AI extraction Analyzes candidate qualifications with OpenAI GPT-4 (compatibility score, strengths, concerns, technical skills) Routes candidates into three categories based on AI score (1-10 scale) Sends personalized HTML emails: interview invitations for strong candidates (7-10), status updates for moderate (5-6), respectful rejections for weak matches (1-4) Generates detailed HR briefing emails for top candidates with interview questions and focus areas Completes full screening process in under 2 minutes per application How it works Jotform trigger captures new submissions with resume attachments HTTP requests fetch submission data and download PDF files LlamaParse extracts text from resume PDFs with status checking loop OpenAI AI Agent analyzes resume and cover letter, outputs structured JSON assessment JavaScript code parses AI output into usable data fields Switch node routes candidates to appropriate email path based on score Gmail nodes send customized HTML emails to candidates and HR team All processing happens automatically without manual intervention Set up requirements Jotform account** with API key (form fields: name, email, phone, position, start date, interview preference, cover letter, resume upload) LlamaCloud account** with API key for PDF parsing OpenAI API key** with GPT-4o-mini access Gmail OAuth2** credentials for sending emails Estimated setup time: 25-30 minutes Cost: ~$0.05-0.10 per application processed How to customize Email templates**: Replace all placeholders (company name, HR manager, contact details, interview format, social links) AI evaluation**: Edit AI Agent prompt to match your job requirements and scoring criteria Score thresholds**: Adjust Switch node conditions to change candidate category ranges (default: 7+ strong, 5-6 moderate, <5 weak) Additional features**: Add Google Sheets logging, Slack notifications, calendar booking, or ATS integration Branding**: Update HTML email colors, fonts, and styling to match company brand HR notifications**: Change recipient email from default to your HR manager's address
by Rahul Joshi
Streamline the final stage of your content production workflow by automating publishing, formatting, metadata generation, and approval routing. This AI-powered subworkflow pulls optimized drafts from Google Sheets, enriches them with SEO metadata, converts them into publish-ready HTML, and delivers them via email and Slack for approval or distribution. Ideal for teams managing high-volume content pipelines with structured review processes. โจ๐๐ What This Template Does Triggers via chat to start the content publishing process. ๐ฌ Fetches the latest optimized content draft from Google Sheets using a content ID. ๐ Prepares metadata such as topic, intent, platform, and parameters. ๐งฉ Uses an AI agent (GPT-4) to generate SEO metadata, HTML-formatted article, tags, and structured publish data. ๐ค Enforces JSON structure to ensure consistent output formatting. ๐งฑ Saves the publish-ready content (title, meta description, HTML, tags) back into Google Sheets for version tracking. ๐ Sends the content to an approver via Gmail with a previewed HTML body. ๐ง Awaits approval and branches based on decision. ๐ If approved, sends the final published content to the intended recipient via Gmail. ๐จ Sends a success confirmation message to Slack for team visibility. ๐ข Key Benefits โ AI-generated SEO optimization, metadata, and HTML formatting โ Centralizes content versioning within Google Sheets โ Automates approval workflows and content delivery โ Ensures consistent output structure with JSON parsing โ Reduces manual formatting, editing, and routing tasks โ Delivers instant Slack notifications for team transparency Features Chat-triggered publishing workflow Google Sheets content retrieval and storage AI-driven formatting, metadata generation, HTML conversion Structured JSON enforcement for clean automation Gmail integration for approval + publishing Slack notifications for successful publication Short-term memory support for context persistence Requirements Google Sheets OAuth2 credentials OpenAI API key (GPT-4 or GPT-4 mini) Gmail OAuth2 credentials for sending and receiving approval messages Slack API credentials with chat:write access Preconfigured Google Sheet containing optimized content drafts Target Audience Content operations teams handling recurring content workflows SEO and marketing teams producing high-volume articles Agencies managing structured approval pipelines Automation specialists building content publishing systems Teams needing standardized, AI-enhanced HTML content Step-by-Step Setup Instructions Connect your Google Sheets OAuth2 credential and replace the sheet/document IDs. ๐๏ธ Add your OpenAI API key for the AI Publishing Agent. ๐ Connect Gmail credentials for both approval and final publishing emails. ๐ง Update all email addresses and Slack channel IDs with your own. โ๏ธ Modify metadata fields (topic, intent, platform) if needed. ๐ฏ Run the workflow with a sample content ID to verify the flow. ๐ Enable and integrate as a subworkflow inside your main content pipeline. ๐
by SIENNA
Automated AWS S3 / Azure / Google to local MinIO Object Backup with Scheduling What this workflow does ? This workflow performs automated, periodic backups of objects from an AWS S3 bucket, an Azure Container or a Google Storage Space to a MinIO S3 bucket running locally or on a dedicated container/VM/server. It can also work if the MinIO bucket is running on a remote cloud provider's infrastructure; you just need to change the URL and keys. Who's this intended for ? Storage administrators, cloud architects, or DevOps who need a simple and scalable solution for retrieving data from AWS, Azure or GCP. How it works This workflow uses the official AWS S3 API to list and download objects from a specific bucket, or the Azure BLOB one, then send them to MinIO using their version of the S3 API. Requirements None, just a source Bucket on your Cloud Storage Provider and a destination one on MinIO. You'll also need to get MinIO running. You're using Proxmox VE ? Create a MinIO LXC Container : https://community-scripts.github.io/ProxmoxVE/scripts?id=minio Need a Backup from another Cloud Storage Provider ? Need automated backup from another Cloud Storage Provider ? $\mapsto$ Check out our templates, we've done it with AWS, Azure, and GCP, and we even have a version for FTP/SFTP servers! For a dedicated source Cloud Storage Provider, please contact us ! $\odot$ These workflow can be integrated to bigger ones and modified to best suit your needs ! You can, for example, replace the MinIO node to another S3 Bucket from another Cloud Storage Provider (Backblaze, Wasabi, Scaleway, OVH, ...)
by Jitesh Dugar
Overview Automatically generate professional PDF invoices when new orders are placed in Shopify. This template creates beautifully formatted invoices from order data, converts them to PDF, saves to Google Drive, and emails customers - all in one seamless workflow. ๐ฏ What This Template Does Transform your Shopify order fulfillment with complete invoice automation. When a customer places an order, this workflow automatically: โ Receives order data via Shopify webhook โ Validates payment status (only processes paid orders) โ Generates professional HTML invoice with your branding โ Converts to PDF using HTML to PDF conversion โ Saves invoice to Google Drive for record-keeping โ Emails PDF invoice to customer automatically โ Provides webhook response back to Shopify ๐ Key Benefits Save Hours of Manual Work Eliminate manual invoice creation and sending Process unlimited orders 24/7 without intervention Professional invoices enhance your brand image Complete Automation No missed invoices - every paid order gets processed Automatic file organization in Google Drive Immediate customer notification improves satisfaction Professional Results Clean, branded invoice design that looks enterprise-ready Proper calculations for taxes, shipping, and totals PDF format suitable for accounting and customer records ๐ What You'll Need Required Integrations: Shopify Store** - For order webhooks HTML to PDF Service** - For invoice conversion (API key required) Google Drive** - For invoice storage Email Provider** - For sending invoices to customers Technical Requirements: n8n instance (cloud or self-hosted) Basic webhook configuration in Shopify 10 minutes for initial setup ๐ Features Included Smart Order Processing Payment validation (only processes paid orders) Complete order data extraction (customer, items, addresses) Tax and shipping calculations Multi-currency support Professional Invoice Design Modern, clean layout with company branding Detailed line items with SKUs and quantities Proper totals breakdown (subtotal, tax, shipping) Customer billing and shipping addresses Automated Distribution PDF saved with descriptive filename (invoice-ORDER_NUMBER.pdf) Organized storage in Google Drive "Invoices" folder Professional email template with attachment Proper webhook responses for Shopify integration Error Handling Skips unpaid orders with proper notification Comprehensive data validation Detailed execution logs for troubleshooting ๐จ Customization Options Easy Branding Update company name, address, and contact details Modify color scheme and styling Add your logo and brand elements Invoice Layout Customize invoice template in HTML/CSS Add or remove fields as needed Modify PDF formatting options Email Templates Personalize customer email messages Add tracking links or additional information Customize sender details ๐ผ Perfect For E-commerce Stores** - Shopify merchants of any size Service Businesses** - Professional service invoicing Digital Products** - Immediate invoice delivery B2B Companies** - Automated business invoicing Accounting Teams** - Streamlined record-keeping ๐ง Setup Instructions Import Template - Add to your n8n instance Configure Webhook - Set up Shopify order webhook Add Credentials - Connect Google Drive and email accounts Update API Endpoint - Add your HTML to PDF service URL Customize Branding - Update company information in HTML template Test & Deploy - Run test orders to verify functionality ๐ Expected Results Time Savings: Save 15-30 minutes per order on manual invoice processing Accuracy: Eliminate human errors in invoice calculations Customer Experience: Immediate invoice delivery improves satisfaction Organization: All invoices automatically organized and stored Scalability: Handle thousands of orders without additional effort ๐ Works With Shopify** (primary trigger) WooCommerce** (with minor modifications) Any HTML to PDF API** (Puppeteer, wkhtmltopdf, etc.) Google Drive** (file storage) Gmail/SMTP** (email delivery) ๐ Use Cases Retail Stores Automatic invoice generation for online orders Professional receipts for customer records Seamless integration with existing Shopify workflow Service Businesses Automated billing for completed services Professional invoice presentation Immediate delivery to clients Digital Products Instant invoice delivery upon purchase Automated VAT/tax handling for different regions Professional documentation for digital goods ๐ฏ ROI Calculator If you process 100 orders per month: Manual time**: 100 orders ร 20 minutes = 33+ hours Cost savings**: 33 hours ร $25/hour = $825/month Annual savings**: $9,900+ in labor costs alone Plus benefits of improved customer satisfaction, reduced errors, and better organization. ๐ Get Started Ready to automate your invoice workflow? This template provides everything you need for professional, automated invoice generation that scales with your business. Installation Time: 10 minutes Skill Level: Beginner to Intermediate Maintenance: Zero - runs automatically once configured Transform your order fulfillment process today with this complete invoice automation solution!
by Cheng Siong Chin
Introduction Transform your Telegram bot into an AI vision system using GPT-4o-Mini and NVIDIA Stable Diffusion 3. Perfect for content moderators, researchers, and developers. Workflow Explanatory At start: Processes Telegram messages: imagesโanalysis, textโimage generation At Router: Routes by content type Upper path: Analyzes images using Nvidia Vila + GPT-4o-Mini Lower path: Generates images from text via Stable Diffusion 3 At Merge: Combines AI results At Gmail: Emails processed results How It Works Telegram Trigger listens for messages (images, text, documents) Content Router directs images โ AI analysis, text โ image generation Image Analysis: Downloads image โ GPT-4o-Mini vision analysis โ Email results Image Generation: Text prompt โ Stable Diffusion 3 โ Email generated image Gmail Notifications send formatted reports Prerequisites Telegram Bot token (via @BotFather) OpenAI API key (GPT-4 Vision) NVIDIA API key (free tier available) Gmail OAuth2 credentials Setup Steps Setup Steps * Create Telegram Bot* - Create Telegram bot and obtain token * Configure API Credentials* - Configure API credentials in HTTP Request nodes * Set Up Gmail OAuth2* - Set up Gmail OAuth2 * Import and Activate Workflow* - Import workflow, update credentials, and activate Customization Options Add more AI models (Anthropic, Gemini) Route audio/documents to transcription/OCR Replace Gmail with Slack or Discord Connect to databases for storage Benefits Speed**: Seconds per analysis vs. hours manually Accuracy**: AI-powered visual understanding Intelligence**: Historical tracking enables trend analysis
by Praneel S
Manage Google Calendar events and Gmail with a customizable AI assistant โ ๏ธ Disclaimer: This workflow uses Google Calendar and Gmail nodes which you will have to configure yourself Whoโs it for This workflow is built for busy professionals, freelancers, and teams who want to automate calendar scheduling and email handling with the help of an AI assistant. Instead of switching between Gmail and Google Calendar, you can delegate tasks like โschedule a meeting,โ โsend an invite,โ or โcheck my latest emailsโ directly to the assistant. How it works The AI Agent interprets natural language requests and decides which tool to use. Uses Google Calendar nodes to: Check availability and list events. Create new events with attendees. Update existing events. Uses Gmail nodes to: Send emails with a clear subject and body. Retrieve recent messages or filter by sender/date. The Date & Time node ensures correct time handling for scheduling. Built-in guardrails ensure clarity: if information is missing (e.g., timezone, meeting duration), the AI will ask you instead of guessing. How to set up Import the workflow into your self-hosted n8n. Create credentials for: Google Calendar API (OAuth2) Gmail API (OAuth2) AI model (Google Gemini, OpenAI GPT, or another supported connector) Connect these credentials to the corresponding workflow nodes. Update default values like: Your Google Calendar email ID Timezone preferences Default conference solution (Google Meet is included by default) Test the workflow by asking natural queries such as: โSchedule a meeting with alice@example.com tomorrow at 3 PM.โ โCheck my emails from this morning.โ โWhatโs on my calendar next week?โ Tools ๐ค AI Agent The โbrainโ of the workflow. Interprets your requests and chooses the right tool. Asks for clarification if details are missing and confirms before important actions. ๐ง Google Gemini Chat Model (or any LLM) The AI language model that powers the assistant. You can swap Gemini with OpenAI, Claude, or another model. ๐ Simple Memory Keeps short-term context of the last ~10 interactions so the agent remembers what โitโ refers to in your requests. ๐ง Send a message in Gmail Sends emails from your Gmail account. Requires recipient, subject, and body. Generates clear, professional text. ๐ฅ Get many messages in Gmail Checks your inbox. Can filter by timeframe or sender. Returns detailed summaries, not just one-liners. ๐ Get many events in Google Calendar Lists your events for a chosen date range. Useful for โWhatโs on my schedule this week?โ โฐ Date & Time Converts natural phrases like โtomorrow at 3 PMโ into exact ISO date-time values. โ Get availability in Google Calendar Checks if youโre free during a specific time slot. Prevents double-booking before scheduling. ๐ Create an event in Google Calendar Schedules a new meeting. Adds title, start/end times, attendees, description, and Google Meet link. โ๏ธ Update an event in Google Calendar Edits an existing meeting. Change time, attendees, or details without creating a new event. Example Prompt n8n AI Agent System Prompt: Personal Assistant You are an advanced AI Personal Assistant operating within an n8n workflow. Your primary function is to serve as a cognitive engine that translates user requests into specific, executable tool calls. You are precise, methodical, and you do not act without sufficient information. Core Operating Principles Tool-Centric Operation: You can only perform actions for which you have been explicitly provided a tool. Before acting, you will review the Tool Manifest to confirm you have the required capability. If a user's request does not map to any available tool, you MUST clearly state that you cannot perform the action and why. For example: "I am sorry, but I cannot set a reminder as I do not have a tool for that function." Clarification Mandate: If a user's request is ambiguous or is missing a required parameter for a tool, you MUST ask clarifying questions before proceeding. Never guess or assume details like timezones, email recipients, or event durations. Single-Focus Execution: Handle one primary task at a time. If a user asks to schedule a meeting and check emails, process the meeting first unless the user specifies otherwise. User Confirmation: Before executing actions that create data or notify others (e.g., creating an event, sending an email), briefly state your plan of action for the user to confirm. Example: "I will schedule an event titled 'Project Sync' for 3 PM tomorrow and invite 'bob@example.com'. Is that correct?" Tool Manifest & Usage Protocols You have access to the following tools. Adhere strictly to their parameters and usage triggers. Tool: system_getCurrentTime Description:** Retrieves the current date and time. When to Use:** When the user asks for the current time, date, or uses relative terms like "today", "tomorrow", "this week". This tool is often a dependency for other tools. Parameters:** timezone (string, required): The IANA timezone identifier (e.g., 'America/New_York', 'Asia/Kolkata'). Protocol:* If the user asks for the time without providing a timezone, you *MUST** respond by asking: "Certainly. In which timezone would you like the time?" You will output the time in HH:MM format as requested. Tool: googleCalendar_getEvents Description:** Fetches a list of events from the user's Google Calendar within a specified date range. When to Use:** When the user asks "What's on my schedule?", "Am I busy?", or asks about events for a specific day, week, or month. Parameters:** startDate (string, ISO 8601 format, required): The start of the time period. endDate (string, ISO 8601 format, required): The end of the time period. Protocol:** Use system_getCurrentTime to establish the date for relative queries. "This week" means from today's date for the next 7 days. "Today" means from the start of the current day to the end of the current day. Tool: googleCalendar_createEvent Description:** Creates a new event on the user's Google Calendar. When to Use:** When the user asks to "schedule", "book", "create", or "add" an event, meeting, or appointment. Parameters:** summary (string, required): The title of the event. startTime (string, ISO 8601 format, required): The start time of the event. endTime (string, ISO 8601 format, required): The end time of the event. attendees (array of strings, optional): A list of attendee email addresses. Protocol:** If the user mentions other people in the scheduling request, automatically include their names/emails in the attendees parameter. You must have all required parameters before calling this tool. Tool: gmail_sendMessage Description:** Composes and sends an email via Gmail. When to Use:** When the user asks to "email", "send a message", or "contact" someone. Parameters:** recipient (string, required): The primary recipient's email address. subject (string, required): The email subject line. body (string, required): The content of the email. Protocol:** The subject must be detailed and relevant to the body's content. The body should be professionally written and clearly articulate the user's message without unnecessary embellishment. Tool: gmail_getMessages Description:** Retrieves a list of emails from the user's Gmail account. When to Use:** When the user asks to "check my email", "see recent emails", or "find an email from someone". Parameters:** startDate (string, ISO 8601 format, optional): The start date to filter emails from. endDate (string, ISO 8601 format, optional): The end date to filter emails to. from (string, optional): Filter emails from a specific sender. Protocol:** Use system_getCurrentTime to define date ranges for requests like "emails from this morning". Defined Workflow: "Schedule a Meeting and Send Invite" When a user's request involves both scheduling a meeting and notifying the attendees, you MUST follow this exact sequence of tool calls: Acknowledge and Gather: Acknowledge the request. Check if you have all the necessary information (topic/summary, attendees, proposed time/date, duration). If not, ask for the missing details. Step 1: Check Availability (googleCalendar_getEvents): Use the googleCalendar_getEvents tool to check the user's schedule for the proposed startTime and endTime. Step 2: Report & Decide: If Conflict Exists: Report the scheduling conflict to the user, mentioning the existing event. State: "You already have '[Existing Event Title]' scheduled at that time. Would you like to find a different time?" Await further instructions. If No Conflict: Proceed to the next step. Step 3: Create Event (googleCalendar_createEvent): Once the time is confirmed to be free, call this tool with the gathered summary, startTime, endTime, and attendees. Step 4: Notify Attendees (gmail_sendMessage): After the event is successfully created, immediately call this tool to send an invitation email. recipient: The attendees from the event. subject: "Meeting Invitation: [Event Summary]". body: "Hello,\n\nThis is an invitation to schedule '[Event Summary]' on [Date] at [Time]. Please check your calendar for the official Google Calendar invite.\n\nBest regards," Step 5: Final Confirmation: Report to the user that the event has been scheduled and the invitation email has been sent. Requirements n8n instance Google Workspace or Gmail account with API access enabled Google Calendar API credentials Gmail API credentials AI model API key (Gemini, OpenAI, or other supported LLM) How to customize the workflow Swap out the AI model (Gemini, OpenAI, or another LLM). Modify the system prompt in the AI Agent to change its personality or strictness. Extend the workflow to trigger Slack or Teams notifications after scheduling. Adjust the email formatting template for different tones (casual, professional, etc.). Add error-handling logic for more advanced use cases (e.g., auto-rescheduling). Contributions Feel free to contact me for any help. Checkout the github page