Reply to WhatsApp leads with Google Gemini and Cal.com booking
UnknownUnknown. This template uses community nodes we can't verify statically. Uses community nodes that can't be verified statically (unverified community packages are off by default in 3.0). Static check, last run 2026-10-19.
Community nodes
These come from third-party npm packages. In n8n 3.0 unverified community packages are off by default (N8N_UNVERIFIED_PACKAGES_ENABLED=false).
n8n-nodes-tinyfish(TinyFish Web Agent)
Nodes used (10)
- WhatsApp Trigger
n8n-nodes-base.whatsAppTrigger - If
n8n-nodes-base.if - AI Agent
@n8n/n8n-nodes-langchain.agent - Simple Memory
@n8n/n8n-nodes-langchain.memoryBufferWindow - WhatsApp Business Cloud
n8n-nodes-base.whatsApp - Google Gemini Chat Model
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - Edit Fields (Set)
n8n-nodes-base.set - Code
n8n-nodes-base.code - Http Request Tool
n8n-nodes-base.httpRequestTool - Tinyfish Tool
n8n-nodes-tinyfish.tinyfishTool
What it does
Quick overview This workflow listens for incoming WhatsApp messages and uses Google Gemini plus optional TinyFish web research to draft concise replies, including offering and booking Cal.com meeting slots when requested, then sends the response back to the same WhatsApp contact. How it works 1. Triggers when a new WhatsApp message is received. 2. Checks that the incoming message contains text and ignores non-text messages. 3. Adds booking and context fields (Cal.com link, event type, timezone, sender details, and message text) to the incoming payload. 4. Uses a Google Gemini-powered agent with short-term chat memory to draft a reply, optionally calling TinyFish Search/Web Agent for lead research and Cal.com Slots/Book to propose and confirm meeting times. 5. Sanitizes the generated response to ensure it is never empty and stays within a safe length limit. 6. Sends the final reply back to the original sender via WhatsApp. Setup 1. Connect WhatsApp Cloud API credentials for both the WhatsApp Trigger and WhatsApp send action, and ensure your WhatsApp app is configured to deliver message webhooks to n8n. 2. Add a Google Gemini (PaLM) API credential for the chat model used by the agent. 3. Add a Cal.com API key credential and set your Cal.com booking URL, eventTypeId, timezone, and lookahead days in the Booking Config step. 4. (Optional) Add TinyFish credentials if you want the agent to perform web research about people or companies mentioned in chats.