by Konstantin
How it works This workflow powers an intelligent, conversational AI bot for VK that can understand and respond to both text and voice messages. The bot uses an AI agent with built-in memory, allowing it to remember the conversation history for each unique user (or in each chat) and answer follow-up questions. It's a complete solution for creating an engaging, automated assistant within your VK group. Step-by-step VK Webhook (Trigger): The workflow starts when the Webhook node receives a new message from your VK group. Duplicate Filtering: The data immediately passes through the Filter Dubles node, which checks for the x-retry-counter header. This is a crucial step to prevent processing duplicate retry requests sent by the VK API. Voice or Text Routing: A Voice/Text (Switch) node checks if the message contains text (message.text) or a voice attachment (audio_message.link_mp3). Voice Transcription: If it's a voice note, the Get URL (HTTP Request) node downloads the audio file. The file is then passed to the Transcribe (OpenAI) node, which uses the Whisper model to convert the audio to text. Input Unification: Both the original text (from the 'Text' path) and the newly transcribed text (from the 'Voice' path) are routed to the Set Prompt node. This node standardizes the input into a single prompt variable. AI Agent Processing: The prompt variable is passed to the AI Agent. This agent is powered by an OpenAI Chat Model and uses Simple Memory to retain conversation history, using the VK peer_id as the sessionKey. This allows it to maintain a separate history for both private messages and group chats. Response Generation: The successful AI response is passed to the Send to VK (HTTP Request) node, which sends the message back to the user. Error Handling: The AI Agent node has error handling enabled (onError). If it fails, the flow is redirected to the Error (HTTP Request) node, which sends a fallback message to the user. Set up steps Estimated set up time: 10 minutes Add your OpenAI credentials to the OpenAI Chat Model and Transcribe nodes. Add your VK group's API Bearer Token credentials to the two HTTP Request nodes named Send to VK and Error. Webhook Setup (Important\!): This is a two-stage process: confirmation and operation. Copy the Production Webhook URL from the Webhook node. Stage A: Confirm Address (One-time) In the Webhook node settings, set Response Mode to On Received. In Options -\> Response Data, temporarily paste the confirmation string that VK provides. Activate the workflow (toggle "Active" in the top-right). Paste the URL into your VK group's Callback API settings (Management -\> API -\> Callback API) and click "Confirm". Stage B: Operational Mode (Permanent) Return to the Webhook node. Set Response Mode to Immediate. In Options -\> Response Data, type the word ok (lowercase). Save and reactivate the workflow. The bot is now live. (Optional) Customize the system prompt in the AI Agent node to define your bot's name and personality.
by Robert Breen
๐งโ๐ป Description This workflow automatically compares the version of your n8n instance with the latest release available. Keeping your n8n instance up-to-date is essential for security patches, bug fixes, performance improvements, and access to new automation features. By running this workflow, youโll know right away if your instance is behind and whether itโs time to upgrade. After the comparison, the workflow clearly shows whether your instance is up-to-date or outdated, along with the version numbers for both. This makes it easy to plan updates and keep your automation environment secure and reliable. โ๏ธ Setup Instructions 1๏ธโฃ Set Up n8n API Credentials In your n8n instance โ go to Admin Panel โ API Copy your API Key In n8n โ Credentials โ New โ n8n API Paste the API Key Save it Attach this credential to the n8n node (Set up your n8n credentials) โ How It Works Get Most Recent n8n Version** โ Fetches the latest release info from docs.n8n.io. Extract Version + Clean Value** โ Parses the version string for accuracy. Get your n8n version** โ Connects to your own n8n instance via API and retrieves the current version. Compare* โ Evaluates the difference and tells you if your instance is *current* or needs an *update**. ๐๏ธ Customization Guidance Notifications**: Add an Email or Slack node to automatically notify your team when a new n8n update is available. Scheduling: Use a **Schedule Trigger to run this workflow daily or weekly for ongoing monitoring. Conditional Actions**: Extend the workflow to log version mismatches into Google Sheets, or even trigger upgrade playbooks. Multi-Instance Tracking**: Duplicate the version-check step for multiple n8n environments (e.g., dev, staging, production). ๐ฌ Example Output โYour instance (v1.25.0) is up-to-date with the latest release (v1.25.0).โ โYour instance (v1.21.0) is behind the latest release (v1.25.0). Please update to get the latest bug fixes and features.โ ๐ฌ Contact Need help setting up API credentials or automating version checks across environments? ๐ง robert@ynteractive.com ๐ Robert Breen ๐ ynteractive.com
by Dean Gallop
Trigger & Topic Extraction The workflow starts manually or from a chat/Telegram/webhook input. A โtopic extractorโ node scans the incoming text and cleans it (handles /topic โฆ commands). If no topic is detected, it defaults to a sample news headline. Style & Structure Setup A style guide node defines the blogโs tone: practical, mediumโlow formality, clear sections, clean HTML only. It also enforces doโs (citations, links, actionable steps) and donโts (no clickbait, no low-quality sources). Research & Drafting A GPT node generates a 1,700โ1,800 word article following the style guide. Sections include: What happened, Why it matters, Opportunities/risks, Action plan, FAQ. The draft is then polished for clarity and flow. Quality Control A word count guard checks that the article is at least 1,600 words. If too short, a GPT โexpand draftโ node deepens the Why it matters, Risks, and Action plan sections. Image Creation The final articleโs title and content are used to generate an editorial-style image prompt. Leonardo AI creates a cinematic, text-free featured image suitable for Google News/Discover. The image is uploaded to WordPress, with proper ALT text generated by GPT. Publishing to WordPress The final post (title, content, featured image) is automatically published. Sources are extracted from the article, compiled into a โSourcesโ section with clickable links. Posts are categorized and published immediately.
by Shohani
Auto backup n8n workflows to GitLab with AI-generated documentation This n8n template automatically backs up your workflows to a GitLab repository whenever they're updated or activated, and generates README documentation using AI. This workflow can be aslo added as a sub-workflow to any existing workflow to enable backup functionality. Who's it for This template is perfect for n8n users who want to: Maintain version control of their workflows Create automatic backups in Git repositories Generate documentation for their workflows using AI Keep their workflow library organized and documented How it works The workflow monitors n8n for workflow updates and activations, then automatically saves the workflow JSON to GitLab and generates a README file using OpenAI: Trigger Detection: Uses n8n Trigger to detect when workflows are updated or activated Workflow Retrieval: Fetches the complete workflow data using the n8n API Repository Check: Lists existing files in GitLab to determine if the workflow already exists Smart File Management: Either creates a new file or updates an existing one based on the repository state AI Documentation: Generates a README.md file using OpenAI's GPT model to document the workflow GitLab Storage: Saves both the workflow JSON and README to organized folders in your GitLab repository Requirements GitLab account** with API access and a repository named "all_projects" n8n API credentials** for accessing workflow data OpenAI API key** for generating documentation GitLab personal access token** with repository write permissions How to set up Configure GitLab credentials: Add your GitLab API credentials in the GitLab nodes Set up n8n API: Configure your n8n API credentials for the workflow retrieval node Add OpenAI credentials: Set up your OpenAI API key in the "Message a model" node Update repository details: Modify the owner and repository name in GitLab nodes to match your setup Test the workflow: Save and activate the workflow to test the backup functionality How to customize the workflow Change repository structure**: Modify the file path expressions to organize workflows differently Customize commit messages**: Update the commit message templates in GitLab nodes Enhance AI documentation**: Modify the OpenAI prompt to generate different styles of documentation Add file filtering**: Include conditions to backup only specific workflows Extend triggers**: Add webhook or schedule triggers for different backup scenarios Multiple repositories**: Duplicate GitLab nodes to backup to multiple repositories simultaneously
by ลukasz
What Is This? This workflow is an automated employee time tracking and reporting system that monitors weekly work hours via TMetric, then delivers personalized summaries directly to each team member on Slack. It compares actual logged hours against individual work schedules, accounts for approved time-off requests, and flags anyone falling behind their hourly quota. It works with any team using TMetric for time tracking and Slack for communication, making it ideal for remote-first companies, IT agencies, and consulting firms managing distributed teams. Who Is It For? Designed for team leads, operations managers, and HR departments in small to medium-sized companies who want effortless visibility into employee time tracking compliance โ without micromanaging or manually pulling reports. Software development agencies, MSPs, and consulting firms billing clients by the hour will find this especially valuable, as it keeps employees accountable and ensures time entries are complete and up to date before payroll or invoicing cycles. How Does It Work? The workflow operates in two modes: a one-time Setup and a recurring Weekly Report. Setup builds a mapping table between TMetric and Slack user accounts. It checks whether the required N8N Data Table already exists, creates it if not, then fetches all TMetric and Slack users. Each Slack user receives a message asking them to identify their corresponding TMetric account via an interactive dropdown form. Responses are saved to the Data Table for use in subsequent runs. Weekly Report runs automatically every Friday at 4:00 PM. It fetches users, their work schedules, and approved time-off requests from TMetric, then processes each employee individually โ retrieving their time entries, filtering out any currently running tasks, and calculating total hours worked. The workflow accounts for time-off when determining expected hours, then computes how far ahead or behind schedule each person is. Finally, it looks up each user's Slack ID from the mapping table and sends them a personalized Block Kit message summarizing their week: hours worked, schedule adherence status, and a project-by-project breakdown. How To Set It Up? Prerequisites: An active N8N account or self-hosted instance A TMetric account with API access A Slack workspace with bot permissions Step 1: Configure the Globals node tmAccountId** โ found in your TMetric URL: https://app.tmetric.com/#/tracker/YOUR_ID/ Allow hours missing percentage** โ tolerance threshold before flagging a user as behind (default: 10%) tmetricToSlackUserDataTableName** โ name of the N8N Data Table used for user mapping (default: Tmetric to Slack user map) Step 2: Set up TMetric authentication Open any HTTP Request node, select Authentication โ Generic Credential Type โ Header Auth, and create a new credential: Name**: Authorization Value**: <Your TMetric API Key> You can generate an API key in your TMetric account settings. Full API documentation is available here. Step 3: Configure Slack credentials Connect your Slack workspace using OAuth2 in the Slack nodes. Ensure your bot has permissions to list users and send direct messages. Step 4: Run Setup Trigger the Setup manual trigger once. It will create the mapping table and send a form to each Slack user. Once all responses are collected, the workflow is ready for scheduled operation. Step 5: Customize the Slack message (optional) Edit the Send a message node to adjust the message layout, change delivery from DM to a channel, or add additional fields to the report. What's More? Flexible time-off handling: Approved time-off requests are subtracted from expected working hours, ensuring employees aren't penalized for legitimate absences. Running task filtering: Time entries without an end time are excluded from calculations, preventing inflated hours from active timers. Visual status indicators: Slack messages use color-coded action buttons โ green for on-track employees, red for those behind schedule โ giving recipients immediate visual feedback at a glance. Project breakdown: Each report includes a per-project summary showing time spent across the reporting period, giving employees and managers full transparency into where hours went. Safe re-runs: The Setup flow can be triggered again at any time to onboard new team members or correct mapping mistakes without affecting existing records. Need help? Reach out at developers@sailingbyte.com or visit sailingbyte.com. Happy hacking!
by Robert Breen
Pull recent Instagram post media for any username, fetch the image binaries, and run automated visual analysis with OpenAI โ all orchestrated inside n8n. This workflow uses a Google Sheet to supply target usernames, calls Apifyโs Instagram Profile Scraper to fetch recent posts, downloads the images, and passes them to an OpenAI vision-capable model for structured analysis. Results can then be logged, stored, or routed onward depending on your use case. ๐งโ๐ป Whoโs it for Social media managers analyzing competitor or brand posts Marketing teams tracking visual trends and campaign content Researchers collecting structured insights from Instagram images โ๏ธ How it works Google Sheets โ Supplies Instagram usernames (one per row). Apify Scraper โ Fetches latest posts (images and metadata). HTTP Request โ Downloads each image binary. OpenAI Vision Model โ Analyzes visuals and outputs structured summaries. Filter & Split Nodes โ Ensure only the right rows and posts are processed. ๐ Setup Instructions 1) Connect Google Sheets (OAuth2) Go to n8n โ Credentials โ New โ Google Sheets (OAuth2) Sign in with your Google account and grant access In the Get Google Sheet node, select your spreadsheet + worksheet (must contain a User column with Instagram usernames) 2) Connect Apify (HTTP Query Auth) Get your Apify API token at Apify Console โ Integrations/API In n8n โ Credentials โ New โ HTTP Query Auth, add a query param token=<YOUR_APIFY_TOKEN> In the Scrape Details node, select that credential and use the provided URL: 3) Connect OpenAI (API Key) Create an API key at OpenAI Platform In n8n โ Credentials โ New โ OpenAI API, paste your key In the OpenAI Chat Model node, select your credential and choose a vision-capable model (gpt-4o-mini, gpt-4o, or gpt-5 if available) ๐ ๏ธ How to customize Change the Google Sheet schema (e.g., add campaign tags or notes). Adjust the OpenAI system prompt to refine what details are extracted (e.g., brand logos, colors, objects). Route results to Slack, Notion, or Airtable instead of storing only in Sheets. Apply filters (hashtags, captions, or timeframe) directly in the Apify scraper config. ๐ Requirements n8n (Cloud or self-hosted) Google Sheets account Apify account + API token OpenAI API key with a funded account ๐ฌ Contact Need help customizing this (e.g., filtering by campaign, sending reports by email, or formatting your PDF)? ๐ง rbreen@ynteractive.com ๐ Robert Breen ๐ ynteractive.com
by Oneclick AI Squad
This n8n workflow automatically fetches top technology news from Google News, summarizes it using AI, and sends a daily email with key updates. Users get a concise overview of important tech developments every morning. Good to know: Focuses specifically on technology news. Summarizes multiple sources into one concise email. Ensures consistent and easy-to-read formatting. Handles updates from different websites reliably. How it works Trigger: Schedule Daily Tech News Runs automatically every morning at 8 AM. Fetch Google Tech News Retrieves the latest tech news from Google News. Extract Tech News Articles Parses the HTML to extract headlines, source, and timestamps. Format Tech News Data Prepares structured data ready for AI analysis. Check If News Found If no news is found, sends an error alert email. Otherwise, continues to AI summarization. AI Tech News Analyzer Uses an AI model to summarize and highlight key trends. Send Tech News Email Sends a formatted daily email with summarized tech news. Send Error Alert (optional) Sends an alert email if no news can be found. Email Examples Output Email Example: Subject: ๐ Daily Tech News Summary - August 14, 2025 ๐ Top Technology Headlines Today: AI-powered tools are revolutionizing cloud computing. (Source: TechCrunch) Startup funding in India sees record growth. (Source: Economic Times) New smartphone launches include innovative camera features. (Source: The Verge) Cybersecurity threats increase amid remote work trends. (Source: Wired) ๐๏ธ Summary Date: August 14, 2025 How to use Setup Instructions: Import workflow into your n8n instance. Configure SMTP credentials for sending emails. Set the schedule to run daily at your preferred time. Test the workflow to ensure news is fetched and the email is sent correctly. Requirements: n8n instance (cloud or self-hosted). Email account with SMTP access. Reliable internet connection. Access to Google News. Troubleshooting: No news found:** Check internet connection and Google News accessibility. Email not sent:** Verify SMTP credentials. AI summarization errors:** Check model credentials and API usage.
by Fahmi Fahreza
How It Works Trigger Watches for new emails with attachments in a Gmail label. Extract Data Extracts job code from the email subject (e.g., FN-001) Extracts raw text from the attached CV (PDF) AI Parsing Uses Google Gemini to parse the CV and extract: Name Email Years of experience Skills Job Lookup Uses the extracted job code to retrieve job details from Airtable. AI Scoring Compares applicant data with job requirements Scores from 1โ100 Generates a brief reasoning summary (in Bahasa Indonesia) Log to Airtable Saves applicant data, score, and AI notes to the "Applications" table. Setup Instructions Prepare Airtable Base Job Posts Table Columns: Job Code, Job Title, Required Skills, Minimum Experience, Job Description Applications Table Columns: Applicant Name, Email, Score, Notes Include a linked field to the Job Posts table Add Credentials in n8n Gmail Google AI (Gemini) Airtable Configure Nodes Trigger: Set Gmail filter (e.g., label:job-applications) Extract Job Code: Verify regex format, default is ([A-Z]{2}-\d{3}) Airtable Nodes: Select your base and table in: "Find Job Post..." "Save Applicant..." Activate Workflow Save and enable the workflow New applications will be processed automatically
by Robert Breen
Web-Form Auto-Responder: Instant Email + SMS Follow-Up ๐ Description Embed a simple web form on your site and let this workflow: Collect a visitorโs name, email, phone, and question Generate a professional email and a friendly SMS using GPT-4o-mini Delay briefly (1 min by default) to simulate human writing time Send the AI-crafted email via Microsoft Outlook Send the AI-crafted text via Twilio Perfect for solo consultants or small teams who want rapid, personalized responses without manual typing. โ๏ธ Setup Instructions Import the workflow n8n โ Workflows โ Import from File (or Paste JSON) โ Save Add credentials | Service | Where to get credentials | Node(s) to update | |---------|-------------------------|-------------------| | OpenAI | <https://platform.openai.com> โ create API key | OpenAI Chat Model | | Microsoft Outlook | Azure/M365 account with email-send permissions | Send email to the submitter | | Twilio | <https://console.twilio.com> โ Account SID, Auth Token | Send text to the submitter | Embed the form on your website Open Form to be embedded on website Click โEmbedโ โ copy the iframe code โ paste into your contact page Set your Twilio โFromโ number In Send text to the submitter, change phone to your verified Twilio number Adjust wait times (optional) Wait some time to write the email response (default 1 min) Wait some time to write the text response (default 1 min) Customize the AI prompt (optional) Edit the AI Agent system message to tweak tone, questions asked, or signature Test the flow Open the form URL (generated by the Form node) Submit a test entry โ after ~1 min you should receive both an email and an SMS Activate Toggle Active so the form handles real submissions 24/7 ๐งฉ Customization Ideas Pipe form data into Pipedrive, HubSpot, or Airtable for lead tracking Trigger a Slack/Teams alert to notify your team of hot questions Add a calendar link in the email so visitors can book a call instantly Use a language-detection node to reply in the visitorโs native language Contact Email:** rbreen@ynteractive.com Website:** https://ynteractive.com YouTube:** https://www.youtube.com/@ynteractivetraining LinkedIn:** https://www.linkedin.com/in/robertbreen
by Lรฉo
How it works This workflow automates a full weekly monitoring and reporting cycle using AI. Scheduled Trigger** Every Monday at 9 AM, the workflow starts automatically. AI Agent Configuration** A system prompt defines the role, objectives, and behavior of your AI agent for web monitoring or research tasks. Language Model via OpenRouter** The agent uses a powerful model (e.g., DeepSeek from Perplexity) to generate relevant insights. Data Storage in Notion** The results are saved and updated directly in a connected Notion database. Email Dispatch** A summary report is automatically sent by email to predefined recipients. Customizable elements: - AI prompt and objectives - Trigger schedule - Target database and report structure - Email recipients and message content
by Avkash Kakdiya
How it works This workflow automatically pulls daily signup stats from your PostgreSQL database and shares them with your team across multiple channels. Every morning, it counts the number of new signups in the last 24 hours, formats the results into a concise report, and posts it to Slack, Microsoft Teams, and Telegram. This ensures your entire team stays updated on customer growth without manual queries or reporting. Step-by-step Daily Trigger & Data Fetching The Daily Report Trigger runs at 9:00 AM each day. The Fetch Signup Count node queries the customers table in PostgreSQL. It calculates the number of new signups in the last 24 hours using the created_at timestamp column. Report Preparation The Prepare Report Message node formats the results into a structured message: Report date Signup count A clear summary line: Daily Signup Report โ New signups in the last 24h: X Multi-Channel Delivery The prepared message is sent to multiple platforms simultaneously: Slack Microsoft Teams Telegram This ensures all teams receive the update in their preferred communication tool. Why use this? Automates daily customer growth reporting. Eliminates manual SQL queries and report sharing. Keeps the whole team aligned with real-time growth metrics. Delivers updates across Slack, Teams, and Telegram at once. Provides simple, consistent reporting every day.
by iamvaar
Youtube Explanation: [https://youtu.be/KgmNiV7SwkU](https://youtu.be/KgmNiV7SwkU ) This n8n workflow is designed to automate the initial intake and scheduling for a law firm. It's split into two main parts: New Inquiry Handling: Kicks off when a potential client fills out a JotForm, saves their data, and sends them an initial welcome message on WhatsApp. Appointment Scheduling: Activates when the client replies on WhatsApp, allowing an AI agent to chat with them to schedule a consultation. Hereโs a detailed breakdown of the prerequisites and each node. Prerequisites Before building this workflow, you'll need accounts and some setup for each of the following services: JotForm JotForm Account**: You need an active JotForm account. A Published Form**: Create a form with the exact fields used in the workflow: Full Name, Email Address, Phone Number, I am a..., Legal Service of Interest, Brief Message, and How Did You Hear About Us?. API Credentials**: Generate API keys from your JotForm account settings to connect it with n8n. Google Google Account**: To use Google Sheets and Google Calendar. Google Sheet**: Create a new sheet named "Law Client Enquiries". The first row must have these exact headers: Full Name, Email Address, Phone Number, client type, Legal Service of Interest, Brief Message, How Did You Hear About Us?. Google Calendar**: An active calendar to manage appointments. Google Cloud Project**: Service Account Credentials (for Sheets): In the Google Cloud Console, create a service account, generate JSON key credentials, and enable the Google Sheets API. You must then share your Google Sheet with the service account's email address (e.g., automation-bot@your-project.iam.gserviceaccount.com). OAuth Credentials (for Calendar): Create OAuth 2.0 Client ID credentials to allow n8n to access your calendar on your behalf. You'll need to enable the Google Calendar API. Gemini API Key: Enable the Vertex AI API in your Google Cloud project and generate an API key to use the Google Gemini models. WhatsApp Meta Business Account**: Required to use the WhatsApp Business Platform. WhatsApp Business Platform Account: You need to set up a business account and connect a phone number to it. This is **different from the regular WhatsApp or WhatsApp Business app. API Credentials**: Get the necessary access tokens and IDs from your Meta for Developers dashboard to connect your business number to n8n. PostgreSQL Database A running PostgreSQL instance**: This can be hosted anywhere (e.g., AWS, DigitalOcean, Supabase). The AI agent needs it to store and retrieve conversation history. Database Credentials**: You'll need the host, port, user, password, and database name to connect n8n to it. Node-by-Node Explanation The workflow is divided into two distinct logical flows. Flow 1: New Client Intake from JotForm This part triggers when a new client submits your form. JotForm Trigger What it does: This is the starting point. It automatically runs the workflow whenever a new submission is received for the specified JotForm (Form ID: 252801824783057). Prerequisites: A JotForm account and a created form. Append or update row in sheet (Google Sheets) What it does: It takes the data from the JotForm submission and adds it to your "Law Client Enquiries" Google Sheet. How it works: It uses the appendOrUpdate operation. It tries to find a row where the "Email Address" column matches the email from the form. If it finds a match, it updates that row; otherwise, it appends a new row at the bottom. Prerequisites: A Google Sheet with the correct headers, shared with your service account. AI Agent What it does: This node crafts the initial welcome message to be sent to the client. How it works: It uses a detailed prompt that defines a persona ("Alex," a legal intake assistant) and instructs the AI to generate a professional WhatsApp message. It dynamically inserts the client's name and service of interest from the Google Sheet data into the prompt. Connected Node: It's powered by the Google Gemini Chat Model. Send message (WhatsApp) What it does: It sends the message generated by the AI Agent to the client. How it works: It takes the client's phone number from the data (Phone Number column) and the AI-generated text (output from the AI Agent node) to send the message via the WhatsApp Business API. Prerequisites: A configured WhatsApp Business Platform account. Flow 2: AI-Powered Scheduling via WhatsApp This part triggers when the client replies to the initial message. WhatsApp Trigger What it does: This node listens for incoming messages on your business's WhatsApp number. When a client replies, it starts this part of the workflow. Prerequisites: A configured WhatsApp Business Platform account. If node What it does: It acts as a simple filter. It checks if the incoming message text is empty. If it is (e.g., a status update), the workflow stops. If it contains text, it proceeds to the AI agent. AI Agent1 What it does: This is the main conversational brain for scheduling. It handles the back-and-forth chat with the client. How it works: Its prompt is highly detailed, instructing it to act as "Alex" and follow a strict procedure for scheduling. It has access to several "tools" to perform actions. Connected Nodes: Google Gemini Chat Model1: The language model that does the thinking. Postgres Chat Memory: Remembers the conversation history with a specific user (keyed by their WhatsApp ID), so the user doesn't have to repeat themselves. Tools: Know about the user enquiry, GET MANY EVENTS..., and Create an event. AI Agent Tools (What the AI can *do*) Know about the user enquiry (Google Sheets Tool): When the AI needs to know who it's talking to, it uses this tool. It takes the user's phone number and looks up their original enquiry details in the "Law Client Enquiries" sheet. GET MANY EVENTS... (Google Calendar Tool): When a client suggests a date, the AI uses this tool to check your Google Calendar for any existing events on that day to see if you're free. Create an event (Google Calendar Tool): Once a time is agreed upon, the AI uses this tool to create the event in your Google Calendar, adding the client as an attendee. Send message1 (WhatsApp) What it does: Sends the AI's response back to the client. This could be a confirmation that the meeting is booked, a question asking for their email, or a suggestion for a different time if the requested slot is busy. How it works: It sends the output text from AI Agent1 to the client's WhatsApp ID, continuing the conversation.