by ueharayuuki
This workflow provides a comprehensive weather reporting system with two main functionalities: a scheduled daily summary and an interactive AI agent for dynamic queries. Who's it for? This template is ideal for anyone who wants to stay updated on the weather, from individuals planning their day to teams needing automated daily briefings. It's also a great example for developers and n8n users who want to explore the capabilities of AI Agents and integrating external APIs in their workflows. What it does / How it works This workflow operates in two distinct modes: Scheduled Daily Summary: The workflow triggers automatically every day at 9:00 AM (customizable) or can be run manually. It fetches the latest weather data for a specified location (default is near Chiba, Japan) from the Open-Meteo API. It then formats a message with the day's maximum and minimum temperatures. Finally, it sends this summary to a designated Gmail address and a Slack channel. AI-Powered Forecasts via Chat: When you send a message to the Chat Trigger webhook, it activates the AI Agent. The AI Agent, powered by an OpenAI model, understands natural language questions like "What's the humidity right now?" or "Will it be warmer tomorrow?". The agent uses an HTTP Request tool to fetch real-time, specific data from the weather API to answer your question. The generated answer is then sent back to you via both Gmail and Slack. How to set up Configure Credentials: Add your credentials for OpenAI, Gmail, and Slack in the credentials menu. Set Your Location: In the Fetch Weather Data and HTTP Request Tool for AI nodes, update the latitude and longitude in the URL to your desired location. Update Email and Slack: In the Send Email Summary and Send AI Response via Email nodes, change the recipient email address to your own. In the Send Slack Summary and Send AI Response via Slack nodes, select your desired Slack channel. Adjust the Schedule: Modify the Schedule Trigger node to change the time or frequency of the daily summary. Activate the Workflow: Click the "Active" toggle in the top-right corner to enable the workflow. How to customize the workflow Change the Message:** You can easily customize the notification message in the Format Daily Summary node (for the summary) and in the Send... nodes for both flows. Add More Data:** The Open-Meteo API provides a wealth of data. You can fetch additional information like precipitation, wind speed, or UV index by modifying the URL in the HTTP Request nodes. Integrate Other Services:** Add other notification nodes like Discord, Telegram, or Microsoft Teams to send the weather reports to more platforms.
by Kaden Reese
SignSnapHome to Multi-CRM Auto Follow-up: Complete Real Estate Open House Automation Transform Your Open House Leads into Clients with Zero Manual Work Are you tired of manually entering open house visitor information into your CRM? Losing hot leads because you didn't follow up fast enough? This powerful n8n workflow automatically syncs every SignSnapHome open house sign-in to three major real estate CRMs and executes a customizeable 7-day follow-up sequence via email and SMS. Setup Video Here 🎯 What This Workflow Does This automation creates a complete, hands-free lead nurturing system for real estate agents using SignSnap Home for open house visitor management. Every time someone signs in at your open house, this workflow: Instantly captures all visitor data from SignSnap Home via webhook Intelligently scores each lead based on agent status and property interest Automatically syncs contact information to three CRMs simultaneously: HubSpot - For marketing automation and pipeline management Follow Up Boss - For real estate-specific lead management Monday.com - For team collaboration and task tracking Logs everything to Google Sheets for complete audit trail and reporting Sends personalized follow-ups over 7 days for qualified leads: Day 0: Immediate thank you email Day 2: SMS text message check-in Day 5: Market update email with consultation offer Day 7: Automatic task created in HubSpot for agent to call 🔥 Key Features Smart Lead Qualification Not all open house visitors are equal. This workflow automatically identifies qualified leads who receive the full follow-up sequence: ✅ Visitors who don't currently have a real estate agent ✅ Visitors who have an agent but haven't signed a buyer agreement Leads who already have representation get the basic treatment (thank you email + CRM sync) to respect existing relationships while still capturing their information for future opportunities. Multi-CRM Distribution Why limit yourself to one CRM? This workflow syncs to three platforms simultaneously: HubSpot**: Creates/updates contacts with full lead scoring and property visit history Follow Up Boss**: Adds leads with source attribution and detailed notes Monday.com**: Creates board items for team visibility and collaboration Complete Activity Tracking Every touchpoint is logged to Google Sheets across three tabs: Lead Master Log**: Complete record of every visitor with lead scores and qualification status Follow-up Activity**: Timestamp of every email, SMS, and task created Errors**: Captures any visitors without email addresses for manual follow-up TCPA-Compliant SMS Follow-up Automated SMS messaging via Twilio includes: Proper consent tracking (via open house sign-in) "Reply STOP to unsubscribe" compliance footer Personalized messaging based on agent status Complete activity logging for audit trail 💼 Perfect For Real Estate Agents** using SignSnap Home for open house management Real Estate Teams** who need centralized lead tracking across multiple CRMs Brokerages** wanting to standardize follow-up processes across agents Property Marketing Teams** managing multiple open houses simultaneously 🛠️ What You'll Need Required Accounts & Credentials: SignSnapHome account with webhook integration enabled HubSpot account (Free or paid tier) with API access Follow Up Boss account with API key Monday.com account with API token Twilio account with SMS-enabled phone number SMTP Email service (Gmail, SendGrid, etc.) Google Sheets with OAuth2 access Technical Requirements: Active n8n instance (cloud or self-hosted) Basic familiarity with n8n workflows 30 minutes for initial setup and credential configuration 📊 Lead Scoring Algorithm This workflow includes intelligent lead scoring to help you prioritize follow-up: Base Score: 50 points Scoring Adjustments: No real estate agent: +30 points (HOT lead!) Property rating 4-5 stars: +20 points Property rating 1-2 stars: -20 points No buyer agreement signed: +10 points Lead Status Categories: 70-100 points**: HOT 🔥 50-69 points**: WARM 40-49 points**: OPEN 0-39 points**: COLD The Day 7 follow-up task is automatically prioritized as HIGH for leads scoring 70+ points. 🚀 Setup Overview Step 1: Import Workflow Download this workflow JSON and import it into your n8n instance. Step 2: Configure Credentials Set up authentication for all seven services: HubSpot OAuth2 or API Token Follow Up Boss HTTP Basic Auth (API key as username) Monday.com API Token Twilio API credentials SMTP email settings Google Sheets OAuth2 Step 3: Create Google Sheets Structure Create one Google Sheet with three tabs: Tab 1: "Lead Master Log" Timestamp First Name Last Name Email Phone Property Lead Score Lead Status Has Agent Buyer Agreement Qualifies for Follow-up Source Tab 2: "Follow-up Activity" Timestamp Contact Email Contact Name Activity Type Message Property Success Notes Tab 3: "Errors" Timestamp Guest Name Property Phone Error Reason Step 4: Update Placeholders Replace these values in the workflow nodes: YOUR_GOOGLE_SHEET_ID_HERE - Your Google Sheet ID (or select manually) YOUR_EMAIL@DOMAIN.COM - Your from email address YOUR_TWILIO_PHONE_NUMBER - Your Twilio phone number (format: +15551234567) YOUR_MONDAY_BOARD_ID - Your Monday.com board ID Step 5: Configure SignSnap Home Activate the workflow in n8n Copy the webhook URL Go to SignSnapHome.com → Settings → Integrations Paste webhook URL and enable "Send on each submission" Step 6: Test! Have someone sign in at your next open house (or use test mode) and watch the magic happen! 📈 Expected Results Time Savings: 15-20 minutes per open house visitor (data entry, CRM updates, follow-up scheduling) Response Rate Improvements: Immediate thank you email: Builds rapport instantly Day 2 SMS: 98% open rate (vs 20-30% for email) Day 5 market update: Re-engages interested prospects Day 7 agent call task: Ensures no lead falls through cracks, make sure you set up your crm or change this to a simple notification node. Conversion Rate Impact: Many agents report 2-3x increase in open house visitor conversions with automated follow-up vs manual processes. 🎨 Customization Ideas This workflow is designed to be easily customizable: Adjust Follow-up Timing Change Wait node durations (Day 2 → Day 1, Day 5 → Day 3, etc.) Add more touchpoints (Day 10, Day 30, Day 90) Remove SMS and use email-only sequence Modify Lead Scoring Edit the JavaScript code in "Parse SignSnap Data" node Add new scoring criteria (property price range, visit duration, etc.) Change threshold values for HOT/WARM/COLD status Expand CRM Coverage Add Salesforce using HTTP Request node Include Pipedrive (native node available) Connect Zoho CRM (native node available) Add your brokerage's proprietary CRM via API Enhance Email Content Add property photos and listing details Include market statistics and neighborhood data Embed video tours or agent introduction videos Add social proof (testimonials, recent sales) Create Property-Specific Sequences Use IF nodes to branch by property address Send different messaging per listing Customize follow-up based on price range Include neighborhood-specific content 🔐 Compliance & Privacy This workflow is designed with real estate compliance in mind: TCPA Compliance (SMS): Consent established via open house sign-in "Reply STOP to unsubscribe" included in all messages Complete activity logging for audit trail Business relationship already established CAN-SPAM Compliance (Email): Easy unsubscribe mechanism Clear sender identification Accurate subject lines Business address included Data Privacy: No data stored in n8n workflow memory All data passed through encrypted connections CRM platforms handle data retention per their policies Google Sheets can be restricted to specific users 🆘 Troubleshooting "No email address" errors Make email required in SignSnap Home form settings Check "Errors" tab in Google Sheet for missed leads Follow up manually via phone using logged information CRM sync failures Verify all API credentials are current and not expired Check API rate limits (especially HubSpot free tier) Review execution logs in n8n for specific error messages SMS not sending Confirm Twilio account has sufficient balance Verify phone number format: +1XXXXXXXXXX (E.164 format) Check that recipient's country allows SMS from your Twilio number Ensure phone number was captured in SignSnap Home Wait nodes not resuming Confirm workflow is ACTIVE (not just saved) Check n8n queue system is running properly Verify execution mode settings allow waiting executions 📚 Additional Resources SignSnap Home: Website: https://signsnaphome.com Documentation: Contact SignSnap Home support Webhook setup guide: Available in app settings n8n Documentation: Webhook nodes: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/ Wait node: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/ Code node: https://docs.n8n.io/code-examples/ CRM API Documentation: HubSpot: https://developers.hubspot.com/ Follow Up Boss: https://docs.followupboss.com/ Monday.com: https://developer.monday.com/ 🌟 Success Story "Before this automation, I was spending 30+ minutes after every open house manually entering contacts into HubSpot, then setting reminders to follow up. Now it's completely hands-free. The SMS follow-up on Day 2 alone has doubled my response rate. Best workflow I've ever implemented!" 🚦 Next Steps Download this workflow from the n8n Creator Hub Import into your n8n instance Follow the setup guide in the sticky notes Test with a sample submission before your next open house Monitor results in your Google Sheets activity log Customize and optimize based on your response rates 💡 Pro Tips A/B test your messaging**: Duplicate the workflow and test different email subject lines or SMS wording Track conversion rates**: Add a "Converted" column to your Google Sheet and update it when leads become clients Segment by property**: Use IF nodes to send different follow-up sequences for luxury vs starter homes Add social media enrichment**: Connect Clearbit or Hunter.io to automatically find LinkedIn profiles Create dashboard reports**: Connect Google Sheets to Data Studio for visual analytics 📞 Support For workflow-specific questions, please comment on this workflow in the n8n Creator Hub. For SignSnap Home account issues, contact SignSnap Home support directly. For CRM-specific questions, consult each platform's documentation linked above. 🏷️ Tags real-estate open-house crm-automation lead-nurturing sms-marketing email-automation hubspot follow-up-boss monday.com twilio google-sheets webhook multi-crm lead-scoring signsnap-home Version: 1.0 Last Updated: January 2025 Compatibility: n8n v1.0+ License: MIT Built with ❤️ for the real estate community. Questions or improvements? Drop a comment below!
by David Olusola
Overview: GitHub to WordPress Tutorial Generator This workflow automates the process of creating technical tutorials for your blog. It runs on a weekly schedule, automatically identifies trending GitHub repositories, uses an AI to generate a detailed tutorial for each one, and then saves the content as a draft post on your WordPress site. Finally, it sends you an email notification so you can review and publish the new content. This is an excellent way to keep your blog fresh with relevant, trending topics without manual effort. How It Works Weekly Trigger: The workflow is set to activate every Monday at 10 AM, starting the entire process. Get Trending Repositories: The workflow makes an HTTP request to the GitHub API to find the most popular repositories. Split Items: The Split node processes the list of repositories from the GitHub API, handling each one as a separate item. This ensures that a unique tutorial is created for every trending repository. AI Tutorial Generation: The AI Tutorial Generator node, powered by the Google Gemini Chat Model, takes the information for each repository and, following a detailed prompt, creates a comprehensive tutorial. The prompt instructs the AI to include an introduction, prerequisites, code examples, best practices, and more. Format Content: A Code node then processes the AI's output. It extracts the title and content, ensuring the data is correctly formatted for the next steps. It's a key step to handle potential variations in the AI's output. Create WordPress Post: The WordPress node takes the formatted tutorial content and creates a new post on your blog, automatically setting the title, tags, and categories. It's saved as a draft, allowing you to review and edit it before publishing. Send Notification: Once the post is created, the Email node sends a notification to your email address, letting you know a new tutorial is ready for your review. Setup Steps Configure WordPress Credentials: In the Create Tutorial Post node, add your WordPress credentials. This includes your site URL, username, and application password. Set Up Email Credentials: In the Notify Admin node, add your email service credentials (e.g., SMTP, Gmail) to enable sending email notifications. Configure GitHub API Access: Manual Mapping: Run the Get Trending Repos node once to get sample data. In the Split Repository Items node, manually map the data by setting the "Field to Split Out" to json.items. This tells the workflow to process each repository in the API response. Optional: For higher API limits, you can create a GitHub Personal Access Token and configure the Get Trending Repos node to use it. Review AI Prompt: Go to the AI Tutorial Generator node and read the system message. You can adjust the prompt to change the style, length, or content of the tutorials the AI generates.
by Khairul Muhtadin
This workflow scrapes Google Maps via Decodo API, analyzes each business using Google Gemini 2.5 Flash, scores lead quality, and generates ready to send outreach emails. Why Use This Workflow? Time Savings:** Reduces manual lead research from 20 minutes per lead to 30 seconds processing 100 leads in under an hour Cost Reduction:** Eliminates $300-500/month spent on lead databases and enrichment tools like Apollo or ZoomInfo Scalability:** Process 500+ leads daily without additional staff or subscription costs Ideal For Sales Teams & BDRs:** Building targeted prospect lists for local businesses (restaurants, retail, service providers) with verified contact data and personalized outreach hooks Digital Marketing Agencies:** Identifying high-value clients in specific niches (e.g., "restaurants without websites in Chicago") and automating first-touch campaigns B2B SaaS Companies:** Finding businesses matching ideal customer profiles based on ratings, reviews, and digital maturity indicators Local Service Providers:** Generating qualified leads for web design, SEO, POS systems, or booking software tailored to underserved markets How It Works Trigger: Manually start the workflow or schedule it to run on specific intervals (e.g., daily/weekly) Data Collection: Scrapes Google Maps search results using Decodo API based on your query (e.g., "coffee shops in Austin"), country, and language settings Processing: Parses raw HTML responses into structured lead objects with business name, address, phone, website, ratings, reviews, and coordinates Intelligence Layer: Google Gemini 2.5 Flash analyzes each lead to generate value propositions, identify pain points, create outreach hooks, and assign a 1-10 quality score Output & Delivery: Filters leads scoring ≥7, generates personalized email templates, and saves all data to Google Sheets with enrichment timestamps Storage & Logging: Maintains complete lead database with outreach status tracking; error handler sends Telegram notifications for failed executions Setup Guide Prerequisites | Requirement | Type | Purpose | |-------------|------|---------| | n8n instance | Essential | Workflow execution platform | | Decodo Scraper API | Essential | Google Maps data extraction (get key at dashboard.decodo.com) | | Google Gemini API | Essential | AI-powered lead analysis and scoring | | Google Sheets | Essential | Lead database and outreach tracking | | Telegram Bot (optional) | Optional | Real-time error notifications | Installation Steps Import the JSON file to your n8n instance Configure credentials: Decodo API: Create HTTP Header Auth credential with header name Authorization and value Basic [YOUR_API_KEY] get from Decodo dashboard Google Gemini API: Add your Google AI API key in the "2.5 Flash" node credentials Google Sheets OAuth2: Authenticate with your Google account (both "Save to Google Sheets" and "Save Outreach To Sheets" nodes) Telegram (optional): Add bot token and replace YOUR-CHAT-ID in "Send Error Notification" node Update environment-specific values: In "Set Search Parameters" node: Update searchQuery (e.g., "Italian restaurants in Miami"), country, targetLanguage, and resultsLimit In both Google Sheets nodes: Select your destination spreadsheet and sheet name Customize settings: Adjust lead score threshold in "Filter Hot Leads" (default: ≥7) Modify AI prompt in "Lead Enrichment" node to match your value proposition Customize outreach email template in "Prepare Outreach Message" node Test execution: Start with resultsLimit: 5 to verify all connections work Check Google Sheets for properly formatted data Verify AI enrichment produces actionable insights Technical Details Core Nodes | Node | Purpose | Key Configuration | |------|---------|-------------------| | Decodo Maps Scraper | Fetches Google Maps listings via API | Set target: google_maps, adjust page_to based on resultsLimit | | Parse & Normalize Data | Extracts business data from HTML | Custom JavaScript handles multiple response formats | | Lead Enrichment (AI Chain) | Analyzes leads with Gemini 2.5 Flash | Structured output parser ensures JSON compliance | | Filter Hot Leads | Isolates high-quality prospects | Combines lead score ≥7 + contact info validation | | Save to Google Sheets | Stores all enriched leads | Uses appendOrUpdate with id as matching column | | Save Outreach To Sheets | Updates hot leads with messages | Marks leads as "HOT" category for prioritization | Customization Options Basic Adjustments Search Parameters:** Modify searchQuery, country, targetLanguage in "Set Search Parameters" to target different markets (supports all Google Maps locales) Lead Scoring Threshold:** Change filter condition from ≥7 to ≥6 for broader lead pool or ≥8 for ultra-qualified prospects Batch Size:** Adjust "Split Into Batches" to process 10-50 items per cycle (lower = more reliable, higher = faster execution) Advanced Enhancements Email Automation:** Connect "Prepare Outreach Message" to Gmail/SendGrid nodes for automatic campaign sends (medium complexity) CRM Integration:** Add HubSpot/Salesforce nodes after enrichment to sync leads directly (requires CRM API credentials) Multi-Channel Outreach:** Branch hot leads to LinkedIn automation tools or SMS providers (high complexity, needs additional services) Custom Scoring Models:** Modify AI prompt to prioritize industry-specific signals (e.g., verified badges for healthcare, delivery options for restaurants) Troubleshooting Common Issues | Problem | Cause | Solution | |---------|-------|----------| | "No valid leads extracted" error | Decodo response format changed or empty results | Check Decodo API response in "Parse & Normalize Data" execution logs; verify search query returns results in Google Maps manually | | AI enrichment produces invalid JSON | Gemini output doesn't match schema | Review "Result Parser" schema; add retry logic or simplify AI prompt to reduce complexity | | Google Sheets "matching column not found" | Spreadsheet missing "id" column header | Ensure Sheet1 has headers: id, businessName, category, address, phone, website, rating, reviewCount, valueProposition, painPoints, outreachHook, leadScore, engagementStrategy, googleMapsUrl, scrapedAt, enrichedAt, outreachMessage, status | | Timeout on large batches | Processing 100+ leads exceeds execution limits | Reduce resultsLimit to 25-50; run workflow multiple times with different queries | Use Case Examples Scenario 1: Digital Marketing Agency Prospecting Challenge: Agency needs 200 qualified restaurant leads monthly for web design services, spending 40 hours on manual research Solution: Configure workflow with query "restaurants in [city]" filtered by ratings ≥4.0 and missing professional websites (AI scoring detects this) Result: Generated 312 leads in 8 hours across 3 cities; 89 scored ≥8 (hot prospects); closed 14 clients in first month at $2,500 average contract value Scenario 2: SaaS Company Market Entry Challenge: Booking software startup targeting salons/spas in new geographic market with zero existing contacts Solution: Ran workflow with "beauty salons in Denver" + "day spas in Denver"; AI identified pain points like "manual appointment booking" and "no online presence" Result: 156 leads enriched in 2 days; personalized outreach hooks increased demo booking rate from 2% (cold template) to 11%; secured 8 pilot customers in 3 weeks Scenario 3: Local Service Provider Lead Generation Challenge: POS system reseller needs to identify retail stores still using cash registers, wasting days driving to scout locations Solution: Configured workflow for "retail stores in [neighborhood]" with AI analyzing reviews for mentions of "cash only" or payment friction Result: Identified 47 high-probability prospects in 90 minutes; field sales team prioritized top 15 leads (score ≥9), closed 6 deals worth $32K total revenue Credits & Links Created by: Khaisa Studio Category: Sales & CRM | Tags: lead-generation, google-maps, ai-enrichment, sales-automation, prospecting Need custom workflows? Contact us Connect with the creator: Portfolio • Workflows • LinkedIn • Medium • Threads
by WeblineIndia
Automated SEO Health Monitoring & Reporting This workflow automatically monitors the SEO health of websites stored in a Google Sheet. It fetches each website’s HTML, analyzes key SEO metrics (title, meta description, H1 count, canonical, robots, performance score, etc.) and updates results back into Google Sheets. If performance is poor (<50), it sends an alert email. For healthy sites, it generates a detailed PDF report and stores it in Google Drive. Who’s it for Digital marketing teams SEO agencies Website administrators who want automated SEO health checks Businesses with multiple websites or landing pages to monitor How it works Daily Trigger – Runs every day at 9 AM. Fetch Website List – Reads website URLs from Google Sheets. Crawl Websites – Uses HTTP requests to fetch each website’s HTML. SEO Analysis – Extracts SEO-related metadata (title, meta description, H1, etc.). Health Check – Scores SEO performance based on predefined rules. Decision Node – If score < 50 → Send alert email; else → Generate full SEO report. Update Logs – Logs results back into Google Sheets. Generate PDF Reports – Converts HTML reports into PDFs via PDF.co API. Save to Drive – Stores the PDF reports in Google Drive for long-term access. How to set up Open n8n and import the workflow. Configure your Google Sheets credentials and specify the sheet containing your website URLs. Add your Gmail account to allow automated alert emails. Set up your Google Drive credentials for storing PDF reports. Obtain an API key from PDF.co and configure the HTTP Request node. Adjust the Schedule Trigger to the time that works best (default: 9 AM daily). Test the workflow with a sample domain list. Requirements n8n instance (self-hosted or cloud) Google Sheets account (to store website URLs and logs) Gmail account (for sending alerts) Google Drive account (to save SEO reports) PDF.co API Key (for HTML → PDF conversion) How to customize Change performance threshold**: Modify the IF node condition (default <50). Custom SEO rules**: Edit the “SEO Health Check” Function node to add/remove checks (e.g., missing schema tags, page load times). Different output storage**: Replace Google Drive with Dropbox, S3 or OneDrive. Alternate notification channels**: Swap Gmail with Slack, Microsoft Teams or Telegram. Add-ons Send Slack/Teams notifications for low scores. Add PageSpeed Insights API for performance scoring. Generate weekly summary reports per domain. Integrate with Notion/Confluence to log SEO health history. Use Case Examples An SEO agency monitors 100+ client websites daily and sends alerts when a site has poor SEO signals. A company’s marketing manager gets a daily SEO health PDF report stored in Drive. A SaaS product team automatically logs performance changes for each release. Common Troubleshooting | Issue | Possible Cause | Solution | | ------------------------------------ | ------------------------------------------------ | --------------------------------------------------------------------------- | | Workflow fails at HTTP Crawl | Website blocks requests / timeout | Increase timeout in Set Config node or add retry logic. | | Always returns https://example.com | Missing canonical / OG tags in HTML | Enhanced code now infers from JSON-LD or domain detection. Update analyzer. | | PDF not generated | Invalid API key or wrong endpoint in PDF.co node | Verify PDF.co API key and endpoint URL. | | Email not sending | Gmail credentials not set or blocked | Reconnect Gmail in n8n credentials manager. | | Google Sheet not updating | Wrong column mapping in Update Sheet node | Check node mapping: domain column vs performance/date columns. | | Google Drive upload fails | Missing folder permissions | Ensure correct Drive folder ID and credentials. | Need Help? If you’d like assistance setting up, customizing or scaling this workflow for your use case, our n8n automation team at WeblineIndia can help you: Tailor SEO rules for your industry. Connect to additional APIs (Ahrefs, Semrush, PageSpeed). Automate weekly/monthly reporting with summary dashboards.
by Gerald Denor
Unleash the power of AI to automate your job search, tailor your applications, and boost your chances of landing your dream job! This comprehensive workflow handles everything from finding relevant job postings to generating personalized resumes and cover letters. Use cases are many: Automate your entire job application process:** Spend less time searching and more time preparing for interviews. Tailor your resume and cover letter for every application:** Maximize your ATS compatibility and stand out to recruiters. Efficiently track your applications:** Keep all your job search activities organized in one place. Discover new job opportunities:** Leverage the Adzuna API to find relevant listings. Good to know: Free Adzuna API:* This workflow utilizes the *free Adzuna API, making job search capabilities accessible without initial cost. OpenRouter Chat Model Costs:** AI model usage (for resume rewriting and cover letter generation) will incur costs based on the OpenRouter pricing model. Please check OpenRouter's official website for updated pricing information. Model Availability:** The AI models used may have geo-restrictions. If you encounter a "model not found" error, it might not be available in your country or region. How it works: Webhook Trigger: The workflow is initiated via a webhook, allowing you to trigger it manually or integrate it with other systems (e.g., a form submission with your desired job title and resume). Resume Extraction: Your uploaded resume (e.g., PDF) is automatically extracted into a readable text format. Job Search (Adzuna API): Using the provided job title, the workflow queries the Adzuna API to fetch relevant job postings. Job Filtering: Duplicate job listings are filtered out to ensure you receive unique opportunities. Job Info Extraction: Key details like job description, company name, and job URL are extracted from each posting. Skills Extraction (AI): An AI model (OpenRouter) analyzes the job description to identify the top skills and qualifications required. Resume Match Scoring (AI): Your resume is compared against the extracted job skills by an AI model, generating a compatibility score (1-5). Conditional Resume & Cover Letter Generation: If the resume match score is satisfactory (≥ 3): Tailored Resume Generation (AI): An AI model rewrites your resume, specifically highlighting the skills and experience most relevant to the target job, in an ATS-friendly and human-readable JSON/HTML format. Personalized Cover Letter Generation (AI): A custom cover letter is drafted by AI, uniquely tailored to the job description and your newly optimized resume, generated as well-formatted HTML. Google Sheets Integration: The generated cover letter, tailored resume, job URL, and application status are automatically updated in your designated Google Sheet for easy tracking. Gmail Notification: A personalized email containing the generated cover letter, tailored resume, and a direct link to the job posting on Adzuna is sent to your specified email address. Webhook Response: A final text response is sent back via the webhook, summarizing the sent application materials. How to use: Manual Trigger:** The workflow is set up with a manual trigger (Webhook) for initial testing and demonstration. You can easily replace this with an n8n form, a scheduled trigger, or integrate it into your existing tools. Input:** Provide your desired job search keyword and your resume (e.g., as a PDF) to the webhook. Review & Apply:** Review the AI-generated cover letter and tailored resume sent to your email, then proceed to apply for the job using the provided Adzuna link. Requirements: n8n Instance:** A running n8n instance (self-hosted or cloud). Adzuna API Key:** A free Adzuna API key (easily obtainable from their developer portal). OpenRouter Account:** For AI model access (costs apply based on usage). Google Sheets Account:** To store and track your job applications. Gmail Account:** To send automated application emails. Customizing this workflow: This workflow is highly customizable. You can: Integrate with other job boards (e.g., LinkedIn, Indeed) using their APIs. Add more sophisticated AI models or custom prompts for even finer control over resume and cover letter generation. Connect to other services for CRM, calendar management, or applicant tracking. Implement different filtering criteria for job postings. Expand the data stored in your Google Sheet (e.g., interview dates, feedback). Start automating your job search today and streamline your path to career success!
by Aditya Malur
Overview This workflow automates your entire sales outreach process across LinkedIn, Email, and WhatsApp using AI to create hyper-personalized messages for each prospect. Instead of spending hours crafting individual messages, the workflow analyzes your lead data and generates customized connection requests, emails, and WhatsApp messages that feel genuinely personal and researched. The workflow includes a built-in approval mechanism, so you can review all AI-generated messages before they're sent, ensuring quality control while still saving massive amounts of time. How It Works The workflow follows a seven-step process: Step 1: Data Collection The workflow starts by reading your lead data from a Google Sheet. Your sheet should contain information about each prospect including their name, title, company, industry, technologies they use, and any other relevant details that can be used for personalization. Step 2: Batch Processing To prevent overwhelming APIs and ensure smooth operation, the workflow processes leads in batches. Each lead's complete data is prepared and formatted for the AI agent to analyze. Step 3: AI Personalization This is where the magic happens. The AI agent receives all the prospect data and generates three distinct messages: A LinkedIn connection request (under 300 characters) that references their specific role, company, or industry A professional HTML email that demonstrates you've researched their business and explains how you can help A casual WhatsApp message that's friendly and approachable The AI is instructed to make these messages sound completely human, never generic or templated. Step 4: Data Cleanup and Storage The AI's output is parsed and cleaned up, then written back to your Google Sheet in separate columns. This creates a permanent record of all generated messages for your review. Step 5: Manual Approval Before anything gets sent, you receive an email asking for your approval. You can review all the generated messages in your Google Sheet, make any edits if needed, and then approve or reject the batch. This ensures you maintain full control over what goes out. Step 6: LinkedIn Automation Once approved, the workflow triggers your Phantombuster agent to send LinkedIn connection requests using the AI-generated messages. Phantombuster handles the actual LinkedIn interaction safely within their platform's limits. Step 7: Email and Notification Delivery Finally, the workflow sends out the personalized emails via Gmail and optionally notifies you via Telegram for each message sent. This happens sequentially to respect rate limits and maintain deliverability. Setup Requirements Before you can use this workflow, you'll need to set up several accounts and gather credentials: Essential Services: An n8n instance (cloud or self-hosted) A Google account with Google Sheets access A Gmail account for sending emails An OpenAI account with API access (for the AI agent) Phantombuster account (for LinkedIn automation) Optional Services: Telegram account and bot (for notifications) Credentials You'll Need: Google Sheets OAuth2 credentials Gmail OAuth2 credentials OpenAI API key Phantombuster API key and agent ID Telegram bot token and chat ID (if using notifications) How to Use This Workflow Initial Setup: Import this workflow into your n8n instance Add all required credentials in n8n's credential manager Create your Google Sheet with the following columns at minimum: First Name, Last Name, Title, Company Name, Personal Email, Industry, Website. Add three additional columns for output: Connection, AI Email, AI Whatsapp Message Copy your Google Sheet ID from the URL and update it in all Google Sheets nodes Open the AI Agent node and update the prompt with your personal information: your name, title, email, and LinkedIn URL Update the email addresses in the Gmail nodes to your actual email addresses Configure your Phantombuster agent for LinkedIn and add the API key and agent ID Running the Workflow: Add your lead data to the Google Sheet (you can start with just 2-3 leads for testing) Click "Execute Workflow" in n8n to start the process Wait for the AI to generate messages (this takes a few seconds per lead) Check your email for the approval request Review the AI-generated messages in your Google Sheet Reply to the approval email with your decision If approved, the workflow will automatically send LinkedIn requests, emails, and WhatsApp messages Best Practices: Start small. Process 5-10 leads at a time initially to test the quality of AI-generated messages and ensure everything works correctly. Once you're confident in the output, you can scale up to larger batches. Monitor your results. Keep track of response rates in your Google Sheet and adjust the AI prompt if certain types of messages aren't performing well. Respect rate limits. Gmail allows 100-500 emails per day depending on your account type, and LinkedIn has strict limits on connection requests (typically 100 per week through automation tools). Stay well within these limits to avoid account restrictions. Customizing This Workflow The workflow is designed to be highly customizable to fit your specific use case: Personalizing the AI Prompt: The most important customization is in the AI Agent node's prompt. You can modify it to: Emphasize different aspects of your value proposition Change the tone from formal to casual or vice versa Include specific pain points relevant to your target industry Add your company's unique selling points Adjust message length and structure Modifying the Output: You can change what the AI generates by editing the prompt. For example, you might want: Different message types (Twitter DMs instead of WhatsApp) Multiple email variations for A/B testing Follow-up message sequences Industry-specific templates Adding Features: The workflow can be extended with additional nodes: Add time delays between sends to appear more natural Include condition checks to segment leads by industry or company size Connect to your CRM to automatically log activities Add sentiment analysis to filter out negative-sounding messages Implement response tracking by monitoring your inbox Changing Tools: If you prefer different services, you can swap out nodes: Replace Phantombuster with other LinkedIn automation tools Use SendGrid or Mailgun instead of Gmail for higher volume Add Slack notifications instead of Telegram Connect to WhatsApp Business API for official messaging Data Source Alternatives: Instead of Google Sheets, you could: Connect directly to your CRM (HubSpot, Salesforce, Pipedrive) Use Airtable as your database Pull data from CSV files uploaded to cloud storage Integrate with lead generation tools like Apollo or Hunter Tips for Success The quality of your AI-generated messages depends heavily on the data you provide. The more information you have about each prospect (their role, company size, technologies used, recent news, pain points), the more personalized and effective the messages will be. Regularly review and refine your AI prompt based on the responses you're getting. If prospects aren't responding, your messages might be too sales-focused or not personal enough. Adjust the prompt to make messages feel more consultative and helpful. Don't send to your entire list at once. Even with approval gates, it's wise to test with small batches, measure results, iterate on your approach, and then scale up gradually. Always comply with email and LinkedIn best practices. Never spam, always provide value in your outreach, respect people's time and privacy, and make it easy for them to opt out if they're not interested. This workflow is a powerful tool that can save you hours of work while actually improving the quality of your outreach through AI-powered personalization. Use it responsibly and watch your response rates improve.
by Connor Provines
One-Line Description Automatically detects missed Zoom demos booked via Calendly and triggers AI-powered follow-up sequences. Detailed Description What it does: When a prospect books a demo through Calendly but fails to join the Zoom meeting, this workflow automatically detects the no-show, generates personalized recovery messages using AI, updates your database, and notifies your sales team—all within minutes of the meeting ending. It bridges Calendly, Zoom, and your follow-up channels to ensure no lead falls through the cracks. Who it's for: Sales teams** running high-volume demo calendars who lose 20-40% of booked meetings to no-shows Customer success managers** conducting onboarding calls where attendance tracking matters SDRs and BDRs** who need immediate alerts when prospects miss scheduled meetings Revenue operations teams** seeking to improve demo-to-opportunity conversion rates through faster follow-up Key Features: Real-time no-show detection** - Automatically checks Zoom participant lists against expected attendees within seconds of meeting end AI-generated recovery messaging** - Creates contextual, empathetic follow-up emails and LinkedIn messages tailored to each no-show scenario Instant team notifications** - Sends formatted Slack alerts with attendee details and suggested next actions so reps can manually follow up if needed Attendance tracking database** - Maintains a searchable record of all bookings and attendance status for reporting and analysis Multi-channel follow-up orchestration** - Coordinates email, Slack notifications, and optional CRM updates from a single automation Selective event filtering** - Processes only specific Calendly event types so you control which meetings trigger the workflow How it works: Booking capture: Calendly webhook fires when a demo is scheduled, extracting Zoom meeting details and attendee information Meeting monitoring: When the Zoom meeting ends, a second webhook triggers attendance verification by pulling the participant list from Zoom's API No-show identification: Workflow cross-references the expected attendee email with actual Zoom participants to confirm whether they attended Automated response: For confirmed no-shows, AI generates personalized recovery messages while the system updates your database and notifies your team via Slack Optional integrations: Simultaneously updates CRM deal stages or triggers additional follow-up sequences based on your configuration Setup Requirements Prerequisites: Calendly account** (any paid plan) with webhook access and Personal Access Token Zoom account** (Pro or higher) with Server-to-Server OAuth app credentials for API access OpenAI API key** for AI-generated follow-up message creation Slack workspace** with OAuth permissions to post messages (optional but recommended) n8n Data Table** created with columns: meeting_id, email, status (built-in n8n feature, no external database needed) Email sending service** configured in n8n (SMTP, Gmail, SendGrid, etc.) if enabling automated email sending CRM API access** (HubSpot, Salesforce, Pipedrive, etc.) if enabling deal updates (optional) Note: Zoom API has rate limits (varies by plan); this workflow makes 1-2 API calls per meeting end event. Estimated Setup Time: 45-60 minutes including Zoom app creation, Calendly webhook configuration, and Data Table setup Installation Notes Critical setup steps: Zoom webhook validation**: You must complete Zoom's webhook endpoint validation process before receiving real events. The workflow includes a dedicated validation path—run it once after creating your Zoom app. Calendly webhook creation**: Use the "Manual Setup Trigger" path in the workflow to programmatically create your Calendly webhook subscription. This only needs to run once. Event type filtering**: Replace the placeholder YOUR_CALENDLY_EVENT_TYPE_URI with your specific demo event type URI from Calendly to avoid processing all meeting types. Test with a real meeting**: Book a test demo, join briefly with a different email than the booking email, then leave. The workflow should detect the "no-show" for the booking email. Common pitfalls to avoid: Forgetting to enable the disabled "Send Recovery Email" node after testing (it's disabled by default to prevent accidental sends during setup) Not configuring Zoom Server-to-Server OAuth correctly (requires Account ID, Client ID, and Client Secret—not JWT credentials) Using a personal Calendly account instead of an organization account (webhooks require organization-level access) Overlooking the Data Table creation step—the workflow will fail without this internal database Testing recommendations: Start with Slack notifications only (leave email sending disabled) to verify the workflow logic Use your own email as a test booking to safely generate AI messages without sending to real prospects Check the Data Table after each test to confirm booking records are being created and updated correctly Customization Options Easy modifications: Swap email for SMS**: Replace the email node with Twilio SMS to send text message follow-ups instead Add delays**: Insert "Wait" nodes to schedule follow-ups hours or days later rather than immediately Change AI tone**: Modify the OpenAI prompt to match your brand voice (casual, formal, humorous, etc.) Multi-step sequences**: Duplicate the AI and email nodes to create a 3-touch follow-up cadence over several days Different CRM platforms**: The HubSpot node can be swapped for Salesforce, Pipedrive, or any CRM n8n supports Extension possibilities: Add Google Sheets logging for executive dashboard reporting on no-show rates Integrate with Calendly's rescheduling API to automatically send rebooking links Connect to Loom or Vidyard APIs to attach pre-recorded demo videos in follow-up emails Create a "second chance" discount workflow that offers incentives for rescheduling Build a predictive model by exporting no-show data to analyze patterns (time of day, lead source, etc.) Category Sales Tags calendly zoom no-show-recovery demo-automation lead-follow-up sales-automation meeting-tracking ai-messaging slack-notification openai Use Case Examples SaaS sales team**: A B2B software company runs 40+ demos per week. When prospects no-show, this workflow immediately notifies the assigned rep in Slack with a pre-written LinkedIn message, sends an empathetic recovery email offering a Loom recording alternative, and flags the deal in HubSpot for manual outreach within 2 hours. Agency onboarding**: A marketing agency conducts discovery calls with new clients. If a client misses their scheduled kickoff meeting, the workflow logs the no-show, updates the client status in their CRM, and sends a friendly rescheduling email with three alternative time slots—all before the account manager even notices. Customer success**: A customer onboarding team tracks training session attendance. When users don't join their scheduled implementation calls, the workflow automatically sends a resource-rich email with documentation links, notifies the CSM team channel, and schedules a follow-up task in their project management tool.
by Deniz
Good to know: The workflow runs every hour with a randomized delay of 5–20 minutes to help distribute load. It records the exact date and time a lead is emailed so you can track outreach. Follow-ups are automatically scheduled two days after the initial email. How it works: After apify completes, the JSON data is retrieved and inserted into the proper JSON node (only the JSON is removed — nothing else). The agent then runs on its own, parsing the data and pushing it to Google Sheets. When a lead is emailed, the system tags it with the date and time for tracking. Two days later the workflow automatically triggers a follow-up, again on an hourly schedule with the same time delay. How to use: Start by connecting your apify account to retrieve data. Place the returned JSON into the designated JSON node. Configure your Google Sheet where the data will be stored. Adjust the time delay window or follow-up period if needed. Insert your email credentials and the message. Requirements: Apify account with active leads/data. Google Sheet for storing and managing parsed lead information. n8n credentials configured for your accounts. email credentials Customising this workflow: You can easily extend this template to include other CRMs, different time delays, or additional notification steps. For example, push new leads to Slack, send SMS notifications, or trigger downstream analytics dashboards automatically.
by Jitesh Dugar
Meeting Minutes & Action Item Tracker Fully automated meeting documentation workflow that uses AI to transform raw transcripts into professional PDFs and actionable tasks. Features AI-powered summary generation (GPT-4) Automatic action item extraction with assignees, deadlines, and priorities Professional PDF generation with custom styling Multi-channel distribution (Email, Slack, Google Drive) Task creation in Google Tasks Personalized notifications to each assignee Deadline tracking and urgency detection Setup Instructions REQUIRED CREDENTIALS: OpenAI API - Get from Gmail OAuth2 - Connect your Google account Google Drive OAuth2 - Same Google account Google Tasks OAuth2 - Same Google account Slack OAuth2 - Connect your workspace htmlcsstopdf API - Get from CONFIGURATION STEPS: WEBHOOK: Note your webhook URL after activation EMAIL NODES: "Email All Participants": Uses participants array from input "Send Individual Task Emails": Change @yourcompany.com to your domain GOOGLE DRIVE: Select folder where PDFs should be stored Recommended: Create "Meeting Minutes" folder SLACK: Select channel for team notifications Recommended: Create #meeting-notes channel GOOGLE TASKS: Select task list where tasks should be created Default list works fine TESTING: Use the webhook URL with sample meeting data Check execution log for any errors Verify PDF in Google Drive Check emails were sent Confirm tasks created in Google Tasks Example Input Format POST : Headers: Content-Type: application/json Body: { "title": "Weekly Team Standup", "date": "2025-09-29", "participants": [ "john@company.com", "sarah@company.com", "joe@company.com" ], "duration": "30 minutes", "transcript": "John started the meeting by discussing the progress on the API development. Sarah mentioned that she's working on the dashboard and needs to prepare mockups by Thursday. The team agreed that Sarah will review the API documentation before the client demo on Friday. Akshita confirmed she finished the database schema redesign and needs to schedule a meeting with DevOps team by next Monday to discuss production deployment." } This will generate: Professional PDF with summary and action items Emails to all participants Individual task emails to John, Sarah, and Joe Tasks in Google Tasks Slack notification Output After execution, you'll get: Professional PDF stored in Google Drive Email sent to all participants with meeting overview Individual emails to each assignee with their tasks Slack notification with summary and download link Tasks created in Google Tasks with deadlines CUSTOMIZATION: Modify PDF styling in "Generate PDF Document" node Adjust email templates in Gmail nodes Change AI prompts in OpenAI nodes for different output Modify priority/deadline logic in "Parse and Enrich Data" Troubleshooting Workflow stops at validation: Ensure transcript has >50 words Check that webhook payload is correctly formatted No PDF generated: Verify htmlcsstopdf API credentials Check API usage limits Tasks not created: Verify deadline format is YYYY-MM-DD Check Google Tasks API connection Emails not sending: Confirm Gmail OAuth2 is connected Check that email addresses are valid Support For issues or questions, visit the n8n community forum. License MIT License - Feel free to modify and share!
by Atta
What it does Customer support calls contain a wealth of valuable feedback and urgent issues, but manually reviewing audio files is inefficient. This workflow acts as an AI assistant for your call log, transforming unstructured audio recordings into structured, actionable data. It provides a clean summary, sentiment analysis, and a list of required actions for every call, eliminating the need for manual listening and ensuring key insights are never missed. How it works The workflow runs on a schedule to fully automate the call analysis process from start to finish. Fetch New Recordings: The workflow triggers on a schedule (e.g., every 5 minutes), searches a designated Google Drive folder for new call recordings, and downloads any new files it finds. Transcribe Audio: Each audio file is sent to the ElevenLabs API to be converted from speech to a text transcript. The result is then formatted into a conversational, multi-speaker format. AI-Powered Analysis: The transcript is passed to a Google Gemini node, which is prompted to return a structured JSON object. This JSON contains a complete analysis of the call, including speaker identification (agent_name, client_name), a summary, the client_sentiment, a call_topic, a department_tag, and a list of action_items. Log the Results: The complete, structured analysis output from Gemini is appended as a new row in a Google Sheet, creating a centralized log with all the extracted call details and the full transcript. Take Action: The workflow uses conditional logic based on the detected sentiment: Negative Sentiment: If a call was negative, an immediate alert containing the call summary and action items is sent to a manager's group on Telegram. Positive Sentiment: If a call was positive, a kudos message is sent to the support team's Telegram channel to celebrate good work. File Management: After processing, the original audio file is automatically moved to a separate "Processed" folder in Google Drive to ensure it isn’t analyzed again. Setup Instructions To configure this workflow, you will need to set up your file storage in Google Drive, create a Google Sheet for logging, and configure credentials for all connected services. Required Credentials Google: You will need Google OAuth2 credentials that have permission for Google Drive, Google Sheets, and the Google AI (Gemini) APIs. ElevenLabs: Sign up for an account at ElevenLabs and get your API Key. You will add this directly into the HTTP Request node for transcription. Telegram: Create a bot using the BotFather in Telegram to get your Bot Token. You will also need the specific Chat ID for the managers' channel and the team's channel. Step-by-Step Configuration Google Drive: Create two folders in your Google Drive: one named "Company - Support Call Recordings" and another named "Processed Recordings". Copy the unique Folder ID from the URL for each and paste it into the respective Google Drive nodes. Google Sheets: Create a new Google Sheet to log the results. In the first row, create the following headers exactly as written: Recording File, Sentiment, Department, Topic, Agent, Client, Summary, Actions, and Fulltext. Copy the Sheet ID from the URL and paste it into the "Log Recording Analysis" (Google Sheets) node. ElevenLabs Node: In the "Convert Speech To Text" (HTTP Request) node, make sure the URL is set to the correct ElevenLabs API endpoint for speech-to-text. Add your ElevenLabs API Key to the authentication header. Telegram Nodes: In the "Send Alert To Managers" node, enter the Chat ID for your managers' group. In the "Send Kudos to Team" node, enter the Chat ID for the main team channel. How to Adapt the Template This workflow is a powerful starting point. Based on your specific needs, you can customize the inputs, the AI analysis, the logging method, and the final actions. Input Method Change File Source:* Instead of Google Drive, you can adapt the workflow to fetch recordings from other services like *Dropbox, **OneDrive, or a custom FTP server. Use a Webhook:* Replace the *Schedule Trigger* with a *Webhook Trigger** to process calls in real-time as they are added from your call software (if it supports webhooks). Final Actions Create Service Tickets:* This is a key area for customization. Replace the *Telegram* nodes with nodes for ticketing systems. For a negative call, you can automatically create a high-priority ticket in *Jira, **Zendesk, or ServiceNow. Create Tasks:* For calls with specific action items, use a node like *Asana, **Trello, or Todoist to automatically create a task and assign it to the correct team member. Send Email Notifications:* Use the *Send Email** node to dispatch summaries and alerts to stakeholders who are not on Telegram. Logging and Analysis Log to a Database:* Instead of Google Sheets, you can use a *Postgres, **MySQL, or Data Warehouse node to log the structured data for more advanced business intelligence and dashboarding. Customize the AI Prompt:** The prompt in the Google Gemini node is the "brain" of the operation. It specifically instructs the AI to return a JSON object with a predefined structure. To change what data is extracted, you can modify this structure in the prompt. For example, you could add a new key-value pair like "competitor_mentioned": "Name of competitor if mentioned, otherwise null" to the JSON structure. The current workflow asks the AI to populate a JSON object like this: { "speaker_identification": { "agent": "speaker_id", "agent_name": "The agent's name", "client": "client_id", "client_name": "The client's name" }, "summary": "A concise summary.", "client_sentiment": "Positive, Negative, or Neutral", "call_topic": "A brief phrase for the topic.", "department_tag": "The most relevant department.", "action_items": [ "A list of actionable tasks." ] } Change AI or STT Service:* You can swap out the *Google Gemini* node for an *OpenAI* node, or change the *HTTP Request* node to use a different transcription service like *AssemblyAI* or *Deepgram**.
by Md Sabirul Islam
🦷 Dental Clinic Appointment Booking System (n8n) This project is an automated appointment booking system for a dental clinic, built using #n8n. It helps streamline clinic operations by checking availability, creating events in Google Calendar, and sending email notifications to both the doctor and the patient. ✨ Features ✅ Check available slots before booking ✅ Create event in Google Calendar after patient confirmation ✅ Send email notification to the Doctor with appointment details ✅ Send email confirmation to the Patient with their booking details ✅ Unique Appointment ID generation for every booking 🚀 Live Demo https://devsabirul.github.io/Dental-Clinic-Receptionist-N8n/ 🛠 Tech Used n8n.io (Automation Platform) Google Calendar API (Manage bookings) SMTP / Gmail (Send email notifications) 📂 Workflow Setup Import Workflow JSON In n8n, go to Workflows → Import from File. Set Credentials Configure Google Calendar API Credentials in n8n. Configure Email SMTP / Gmail Credentials for sending emails. Update Clinic Info Replace placeholder Doctor’s email with the real email. Customize messages (email subject, body). 📧 Example Email Sent To Doctor: New Appointment Booked Patient: John Doe Phone: +123456789 Email: john@example.com Date: 31st August 2025 Time: 2:15 PM Appointment ID: APT-20250831-ABCD12 To Patient: Hello John Doe, Your appointment has been successfully booked. 📅 Date: 31st August 2025 🕒 Time: 2:15 PM 📍 Appointment ID: APT-20250831-ABCD12 Thank you, Dental Clinic 📌 Tags #n8n #automation #dentalclinic #calendar #appointment 🙌 Author 👨💻 Developed by MD Sabirul Islam