by Omer Fayyaz
This n8n template implements a Calendly Booking Link Generator that creates single-use, personalized booking links, logs them to Google Sheets, and optionally notifies a Slack channel Who's it for This template is designed for teams and businesses that send Calendly links proactively and want to generate trackable, single-use booking links on demand. It’s perfect for: Sales and SDR teams** sending 1:1 outreach and needing unique booking links per prospect Customer success and support teams** who want prefilled, one-click rescheduling or follow-up links Marketing and growth teams** that want UTM-tagged booking links for campaigns Ops/RevOps** who need a central log of every generated link for tracking and reporting How it works / What it does This workflow turns a simple HTTP request into a fully configured single-use Calendly booking link: Webhook Trigger (POST) Receives JSON payload with recipient details: name, email, optional event_type_uri, optional utm_source Configuration & Input Normalization Set Configuration extracts and normalizes: recipient_name, recipient_email requested_event_type (can be empty) utm_source (defaults to "n8n" if not provided) Calendly API – User & Event Types Get Current User calls GET /users/me using Calendly OAuth2 to get the current user URI Extract User stores user_uri and user_name Get Event Types calls GET /event_types?user={user_uri}&active=true to fetch active event types Select Event Type: Uses requested_event_type if provided, otherwise selects the first active event type Stores event type URI, name, and duration (minutes) Create Calendly Single-Use Scheduling Link Create Single-Use Link calls POST /scheduling_links with: owner: selected event type URI owner_type: "EventType" max_event_count: 1 (single use) Build Personalized Booking URL Build Personalized Link: Reads the base booking_url from Calendly Appends query parameters to prefill: name (encoded) email (encoded) utm_source Stores: base_booking_url personalized_booking_url recipient_name, recipient_email event_type_name, event_duration link_created_at (ISO timestamp) Optional Logging and Notifications Log to Google Sheets (optional but preconfigured): Appends each generated link to a “Generated Links” sheet Columns: Recipient Name, Recipient Email, Event Type, Duration (min), Booking URL, Created At, Status Notify via Slack (optional): Posts a nicely formatted Slack message with: recipient name & email event name & duration clickable booking link API Response to Caller Respond to Webhook returns a structured JSON response: success booking_url (personalized) base_url recipient object event object (name + duration) created_at expires explanation ("Single-use or 90 days") The result is an API-style service you can call from any system to generate trackable, single-use Calendly links. How to set up 1. Calendly OAuth2 setup Go to calendly.com/integrations or developer.calendly.com Create an OAuth2 application (or use an existing one) In n8n, create Calendly OAuth2 credentials: Add client ID, client secret, and redirect URL as required by Calendly Connect your Calendly user account In the workflow, make sure all Calendly HTTP Request nodes use your Calendly OAuth2 credential 2. Webhook Trigger configuration Open the Webhook Trigger node Confirm: HTTP Method: POST Path: generate-calendly-link Response Mode: Response Node (points to Respond to Webhook) Copy the Production URL from the node once the workflow is active Use this URL as the endpoint for your CRM, outbound tool, or any system that needs to request links Expected request body: { "name": "John Doe", "email": "john@example.com", "event_type_uri": "optional", "utm_source": "optional" } If event_type_uri is not provided, the workflow automatically uses the first active event type for the current Calendly user. 3. Google Sheets setup (optional but recommended) Create a Google Sheet for tracking links Add a sheet/tab named e.g. “Generated Links” Set the header row to: Recipient Name, Recipient Email, Event Type, Duration (min), Booking URL, Created At, Status In n8n: Create Google Sheets OAuth2 credentials Open the Log to Google Sheets node Update: documentId → your spreadsheet ID sheetName → your tab name (e.g. “Generated Links”) 4. Slack notification setup (optional) Create a Slack app at api.slack.com Add Bot Token scopes (for basic posting): chat:write channels:read (or groups:read if posting to private channels) Install the app to your workspace and get the Bot User OAuth Token In n8n: Create a Slack API credential using the bot token Open the Notify via Slack node Select your credential Set: select: channel channelId: your desired channel (e.g. #sales or #booking-links) 5. Test the workflow end-to-end Activate the workflow Use Postman, curl, or another system to POST to the webhook URL, e.g.: { "name": "Test User", "email": "test@example.com" } Verify: The HTTP response contains a valid booking_url A new row is added to your Google Sheet (if configured) A Slack notification is posted (if configured) Requirements Calendly account* with at least one *active event type** n8n instance** (cloud or self-hosted) with public access for the webhook Calendly OAuth2 credentials** configured in n8n (Optional) Google Sheets account and OAuth2 credentials (Optional) Slack workspace with permissions to install a bot and post to channels How to customize the workflow Input & validation Update the Set Configuration node to: Enforce required fields (e.g. fail if email is missing) Add more optional parameters (e.g. utm_campaign, utm_medium, language) Add an IF node after the Webhook Trigger for stricter validation and custom error responses Event type selection logic In Select Event Type: Change the fallback selection rule (e.g. pick the longest or shortest duration event) Add logic to map a custom field (like event_key) to specific event type URIs Link parameters & tracking In Build Personalized Link: Add additional query parameters (e.g. utm_campaign, source, segment) Remove or rename existing parameters if needed If you don’t want prefilled name/email, remove those query parameters and just keep tracking fields Google Sheets logging Extend the Log to Google Sheets mapping to include: utm_source or other marketing attributes Sales owner, campaign name, or pipeline stage Any additional fields you compute in previous nodes Slack notification formatting In Notify via Slack: Adjust the message text to your team’s tone Add emojis or @mentions for certain event types Include utm_source or other metadata for debugging and tracking Key features Single-use Calendly links** – each generated link is limited to one booking (or expires after ~90 days) Prefilled recipient details** – name and email are embedded in the URL, making it frictionless to book Webhook-first design** – easily call this from CRMs, outreach tools, or any external system Central link logging** – every link is stored in Google Sheets for auditing and reporting Optional Slack alerts** – keep sales/support teams notified when new links are generated Safe error handling** – HTTP nodes are configured with continueRegularOutput to avoid hard workflow failures Example scenarios Scenario 1: Sales outreach A CRM workflow triggers when a lead moves to “Meeting Requested”. It calls this n8n webhook with the lead’s name and email. The workflow generates a single-use Calendly link, logs it to Sheets, and posts to Slack. The CRM sends an email to the lead with the personalized booking link. Scenario 2: Automated follow-up link A support ticket is resolved and the system wants to offer a follow-up call. It calls the webhook with name, email, and a dedicated event_type_uri for “Follow-up Call”. The generated link is logged and returned via API, then included in an automated email. Scenario 3: Campaign tracking A marketing automation tool triggers this webhook for each contact in a campaign, passing utm_source (e.g. q1-outbound). The workflow adds utm_source to the link and logs it in Google Sheets. Later, you can analyze which campaigns generated the most completed bookings from single-use links. This template gives you a reliable, reusable Calendly link generation service that plugs into any part of your stack, while keeping tracking, logging, and team visibility fully automated.
by Rahul Joshi
Description Never miss a lead again with this SLA Breach Alert automation powered by n8n! This workflow continuously monitors your Google Sheets for un-replied leads and automatically triggers instant Telegram alerts, ensuring your team takes immediate action. By running frequent SLA checks, enriching alerts with direct Google Sheet links, and sending real-time notifications, this automation helps prevent unattended leads, reduce response delays, and boost customer engagement. What This Template Does 📅 Runs every 5 minutes to monitor SLA breaches 📋 Fetches lead data (status, contact, timestamps) from Google Sheets 🕒 Identifies leads marked “Un-replied” beyond the 15-minute SLA 🔗 Enriches alerts with direct Google Sheet row links for quick action 📲 Sends Telegram alerts with lead details for immediate response Step-by-Step Setup Prepare Your Google Sheet Create a sheet with the following columns (minimum required): Lead Name Email Phone Status (values: Replied, Un-replied) Timestamp (time of last update/reply) Set Up Google Sheets in n8n Connect your Google account in n8n. Point the workflow to your sheet (remove any hardcoded document IDs before sharing). Configure SLA Check Use the IF node to filter leads where: Status = Un-replied Time since timestamp > 15 minutes Enrich Alerts with Links Add a Code node to generate direct row links to the sheet. Set Up Telegram Bot Create a Telegram bot via @BotFather. Add the bot to your team chat. Store the botToken securely (remove chatId before sharing templates). Send Alerts Configure the Telegram node in n8n to send lead details + direct Google Sheet link. Customization Guidance Adjust the SLA window (e.g., 30 minutes or 1 hour) by modifying the IF node condition. Add more fields from Google Sheets (e.g., Company, Owner) to enrich the alert. Replace Telegram with Slack or Email if your team prefers a different channel. Extend the workflow to auto-assign leads in your CRM once alerted. Perfect For Sales teams that need to respond to leads within strict SLAs Support teams ensuring no customer request is ignored Businesses aiming to keep lead response times sharp and consistent
by Fabian Herhold
Who's it for Sales teams, BDRs, account managers, and customer success professionals who want to show up prepared for every meeting. Perfect for anyone using Calendly who wants to automate prospect research and never walk into a call blind again. Watch the full tutorial here: What it does This workflow automatically researches your meeting attendees the moment they book through Calendly. It combines multiple AI agents to gather comprehensive intelligence: Company Research**: Uses Perplexity AI to validate company details, recent news, funding, leadership changes, and business signals LinkedIn Analysis**: Leverages RapidAPI to analyze the person's profile, recent posts, comments, and engagement patterns from the last 60-90 days Signal Detection**: Identifies hiring signals, growth indicators, and potential risks with confidence scoring Meeting Prep**: Synthesizes everything into personalized talking points, conversation starters, and strategic recommendations The final research brief gets delivered directly to your Slack, saving 30-45 minutes of manual research per meeting. How it works Someone books a meeting via your Calendly (must include LinkedIn URL in booking form) Main AI Agent extracts company domain from email and coordinates three specialist research agents Company Agent researches business intel via Perplexity Person Agent analyzes LinkedIn activity using 4 different RapidAPI endpoints Signal Agent identifies business opportunities and risks Comprehensive meeting brief gets sent to your Slack channel Requirements API Credentials needed: Calendly API (for webhook trigger) OpenAI API key (GPT-4 recommended for orchestration) Perplexity API key (for web research) RapidAPI subscription (for LinkedIn data endpoints) Slack bot token (for output delivery) Important: Your Calendly booking form must include a LinkedIn URL field to get optimal results. How to set up Configure Calendly: Add the Calendly trigger node with your API credentials Update Slack destination: Modify the final Slack node with your user ID or channel Add API keys: Configure all the API credentials in their respective nodes Test the workflow: Book a test meeting through Calendly to verify the complete flow Customize prompts: Adjust the AI agent prompts based on your specific industry or use case The workflow uses structured JSON output with confidence scoring and source citation for reliable, actionable intelligence. How to customize the workflow Change output destination**: Replace Slack with email, Teams, or CRM integration Modify research depth**: Adjust the AI prompts to focus on specific industries or company types Add more signals**: Extend the Signal Research Agent to detect additional business indicators Integrate with CRM**: Add nodes to automatically update contact records in your sales system Schedule follow-ups**: Connect to calendar tools to automatically schedule research updates The modular design makes it easy to adapt for different sales processes and research requirements.
by Olivier
This template syncs prospects from ProspectPro into HubSpot. It checks if a company already exists in HubSpot (by ProspectPro ID or domain), then updates the record or creates a new one. Sync results are logged back in ProspectPro with tags to prevent duplicates and mark errors, ensuring reliable and repeatable integrations. ✨ Features Automatically sync ProspectPro prospects to HubSpot companies Smart search logic: match by ProspectPro ID first, then by domain Creates new HubSpot companies when no match is found Updates existing HubSpot companies with latest ProspectPro data Logs sync results back into ProspectPro with tags (HubspotSynced, HubspotSyncFailed) Extendable and modular: use as a trigger workflow or callable sub-flow ⚙ Requirements n8n instance or cloud workspace Install the ProspectPro Verified Community Node ProspectPro account & API credentials (14-day free trial) HubSpot account with OAuth2 app and API credentials 🔧 Setup Instructions Import the template and set your credentials (ProspectPro, HubSpot). Connect to a trigger (e.g., ProspectPro "New website visitor") or call as a sub-workflow. Add a propery to Hubspot for the ProspectPro ID if you don't already have one Adjust sync logic in the "Continue?"-node and HubSpot fields to match your setup. Optional: extend error handling, add Slack/CRM notifications, or sync back HubSpot data into ProspectPro. 🔐 Security Notes Prevents re-processing of failed syncs using the HubspotSyncFailed tag Error branches included for failed updates/creates Manual resolution required if sync errors persist 🧪 Testing Run with a ProspectPro ID of a company with a known domain Check HubSpot for creation or update of the company record Verify updated tags (HubspotSynced / HubspotSyncFailed) in ProspectPro 📌 About ProspectPro ProspectPro is a B2B Prospecting Platform for Dutch SMEs. It helps sales teams identify prospects, track website visitors, and streamline sales without a full CRM. Website: https://www.prospectpro.nl Platform: https://mijn.prospectpro.nl API docs: https://www.docs.bedrijfsdata.nl Support: https://www.prospectpro.nl/klantenservice Support hours: Monday–Friday, 09:00–17:00 CET 📌 About HubSpot HubSpot is a leading CRM platform offering marketing, sales, and customer service tools. It helps companies manage contacts, automate workflows, and grow their customer base. Website: https://www.hubspot.com Developer Docs: https://developers.hubspot.com
by Robert Breen
This powerful n8n workflow helps you automatically re-engage cold leads by summarizing their past emails and generating personalized outreach with OpenAI. It pulls in contacts from Google Sheets, fetches their prior communication from Outlook, and then uses an AI agent to analyze, strategize, and write a draft re-engagement message — all automatically. ⚙️ What the Workflow Does 📄 Get Contacts from Google Sheets Pulls a list of contacts and their email addresses from a Google Sheet. 📥 Search Emails from Outlook For each contact, fetches all emails received from that address since January 1, 2025. 📊 Aggregate Emails Merges relevant email fields (subject, body, createdDateTime) into a single string for analysis. 🧠 Use OpenAI to Analyze and Draft Response AI Agent summarizes the lead’s communication history. Suggests how to re-engage them in bullet points. Writes a personalized draft email to re-initiate the conversation. 📝 Save to Google Sheets Appends or updates the original row with: Summary of communication Re-engagement ideas Suggested subject line Suggested email body 📤 Create Draft Email in Outlook Creates a draft email in your Microsoft Outlook account using the subject and body provided by OpenAI. The email is not sent automatically — giving you a chance to review and personalize further. 🧰 What You'll Need 🔐 Google Sheets API connection** OAuth2 credential setup in n8n Make a copy of this sample sheet 🔐 Microsoft Outlook OAuth2 connection** Connected inbox with access to historical messages 🔐 OpenAI API Key** Add your OpenAI key in the OpenAI Chat Model node Recommended model: gpt-4o-mini or higher 👨💼 Built By Robert Breen Automation Consultant | n8n Expert | Data Strategist 🔗 Website: https://ynteractive.com 📧 Email: robert@ynteractive.com 💼 LinkedIn: https://www.linkedin.com/in/robert-breen-29429625/ 🏷 Tags openai outlook email reengagement lead nurturing automation google sheets ai email gpt-4o crm sales automation
by Matthieu
🔧 AI-Powered B2B Prospecting Automation This automation is a complete end-to-end system designed to find, qualify, and contact B2B leads — fully automated and powered by AI. 1. Lead Discovery & Scoring Searches for target companies on LinkedIn via Ghost Genius API, using filters like location, and company size. Enriches each company with details like website, description, and follower count. Uses OpenAI to score each company (0 to 10) based on fit with your product. Filters out irrelevant companies and stores only qualified ones (score ≥ 7) into a Google Sheet CRM. 2. Decision-Maker Enrichment & Outreach Finds key decision-makers at each qualified company via LinkedIn Sales Navigator. Retrieves their job titles, descriptions, and LinkedIn summaries. Generates a fully personalized 3-email cold outreach sequence using OpenAI. Retrieves verified email addresses using a waterfall enrichment system. Stores all contact data and email content in your CRM and updates lead status. Key Features Fully automated**: runs daily with no manual input required. Smart targeting**: all filters and parameters managed in Google Sheets. AI-enhanced**: leverages OpenAI for scoring, personalization, and copywriting. Compliant & safe**: uses Ghost Genius API (cookieless scraping). Ideal for B2B startups, agencies, or growth teams looking to scale outbound without manual effort.
by Lucas Perret
Job offers are a goldmine of information. Use them to boost your outreach results. They'll give you: more context to personalize your messaging a steady flow of new leads the right timing to contact your lead
by Joseph LePage
This n8n workflow is designed to automate the aggregation, processing, and reporting of community statistics related to n8n creators and workflows. Its primary purpose is to generate insightful reports that highlight top contributors, popular workflows, and key trends within the n8n ecosystem. Here's how it works and why it's important: How It Works Data Retrieval: The workflow fetches JSON data files from a GitHub repository containing statistics about creators and workflows. It uses HTTP requests to access these files dynamically based on pre-defined global variables. Data Processing: The data is parsed into separate streams for creators and workflows. It processes the data to identify key metrics such as unique weekly and monthly inserters/visitors. Ranking and Filtering: The workflow sorts creators by their weekly inserts and workflows by their popularity. It selects the top 10 creators and top 50 workflows for detailed analysis. Report Generation: Using AI tools like GPT-4 or Google Gemini, the workflow generates a Markdown report summarizing trends, contributors, and workflow statistics. The report includes tables with detailed metrics (e.g., unique visitors, inserters) and insights into why certain workflows are popular. Distribution: The report is saved locally or uploaded to Google Drive. It can also be shared via email or Telegram for broader accessibility. Automation: A schedule trigger ensures the workflow runs daily or as needed, keeping the reports up-to-date. Why It's Important Community Insights**: This workflow provides actionable insights into the n8n community by identifying impactful contributors and popular workflows. This fosters collaboration and innovation within the ecosystem. Time Efficiency**: By automating data collection, processing, and reporting, it saves significant time and effort for community managers or administrators. Recognition of Contributors**: Highlighting top creators encourages engagement and recognizes individuals driving value in the community. Trend Analysis**: The workflow helps uncover patterns in usage, enabling better decision-making for platform improvements or feature prioritization. Scalability**: With its modular design, this workflow can be easily adapted to include additional metrics or integrate with other tools.
by Lorena
This workflow synchronizes data one-way from Pipedrive to HubSpot. Cron node** schedules the workflow to run every minute. Pipedrive* and *Hubspot1 nodes pull in both lists of persons from Pipedrive and contacts from HubSpot. Merge node* with the option *Remove Key Matches identifies the items that uniquely exist in Pipedrive. Hubspot2 node** takes those unique items and adds them to HubSpot.
by moosa
My Telegram bot provides specialized support through dedicated slash commands for different departments. Users can directly access the right support team using: /billing - For payment and invoice questions /tech-support - For technical assistance /return-policy - For returns and refunds Key Features: Command-based routing Direct department access via slash commands State management Tracks active conversations in PostgreSQL Knowledge base integration Pinecone vector stores for each department Auto-updating New Google Drive documents automatically populate the knowledge base Context-aware Maintains department choice
by Robert Breen
Beginner AI Agent Duo: Lead‑Qualifier Task Automator & Ecommerce Chatbot Status: Ready for Use ✅ Note: This template is built entirely with official n8n nodes—no community‑node installation required. 📝 Description This template demonstrates two beginner‑friendly AI‑agent patterns that cover the most common use cases: | Agent | Purpose | Flow Highlights | |-------|---------|-----------------| | Lead‑Qualifier Task Automator | Classifies phone‑call transcripts to decide if the caller is a good bulk‑order lead. | Manual Trigger → Code (sample data) → AI Agent (GPT‑4o‑mini) → Structured Output Parser → Set (clean fields) | | Ecommerce Chatbot | Answers customer questions about products, bulk pricing, shipping, and returns. | Chat Trigger (webhook) → AI Agent (GPT‑4o‑mini) with Memory → If node → Order‑placed reply or no‑op | Both agents run on GPT‑4o‑mini and use n8n’s LangChain‑powered nodes for quick, low‑code configuration. ⚙️ How to Install & Run Import the Workflow In n8n, go to Workflows → Import from File or Paste JSON, then save. Add Your OpenAI API Key Go to Credentials → New → OpenAI API. Paste your key from <https://platform.openai.com>. Select this credential in both OpenAI Chat Model nodes. (Optional) Select a Different Model Default model is gpt‑4o‑mini. Change to GPT‑4o, GPT‑3.5‑turbo, or any available model in each OpenAI node. Test the Lead‑Qualifier Agent Click Activate. Press Test workflow. The Code node feeds four sample transcripts; the AI Agent returns JSON like: { "Name": "Jordan Lee", "Is Good Lead": "Yes", "Reasoning": "Customer requests 300 custom mugs, indicating a bulk order." } Test the Ecommerce Chatbot Copy the Webhook URL from the When chat message received trigger. POST a payload like: { "message": "Hi, do you offer discounts if I buy 120 notebooks?" } The AI Agent replies with bulk‑pricing info. If the customer confirms an order, it appends *; the If node then sends “Your order has been placed”. 🧩 Customization Ideas Refine Qualification Logic** Edit the Task Agent’s system prompt to match your own lead criteria. Save Leads Automatically** Add Google Sheets, Airtable, or a database node after the Set node. Expand the Chatbot** Connect inventory APIs, payment gateways, or CRM integrations. Adjust Memory Length* Change the *Simple Memory node’s window to retain more conversation context. 🤝 Connect with Me Description I’m Robert Breen, founder of Ynteractive — a consulting firm that helps businesses automate operations using n8n, AI agents, and custom workflows. I’ve helped clients build everything from intelligent chatbots to complex sales automations, and I’m always excited to collaborate or support new projects. If you found this workflow helpful or want to talk through an idea, I’d love to hear from you. Links 🌐 Website: https://www.ynteractive.com 📺 YouTube: @ynteractivetraining 💼 LinkedIn: https://www.linkedin.com/in/robert-breen 📬 Email: rbreen@ynteractive.com
by osama goda
How it works This workflow automatically uploads YouTube Shorts from a Google Drive folder. It picks one video at each run, generates a YouTube-optimized title, description, and hashtags using an AI model, uploads the video through YouTube’s resumable upload API, and finally moves the processed video to a “Posted” folder. Key steps Run on a schedule (daily/hourly/custom CRON) Fetch one video from a selected Google Drive folder Generate title + description + hashtags using an LLM Prepare YouTube metadata Upload the video via resumable upload Move the file to a “posted” folder to avoid duplicates Setup instructions Connect your Google Drive credentials Connect your YouTube OAuth2 credentials Update the Drive folder IDs (input + posted folders) Edit the “Set variables” node to change store name, country, coupon code, and tone Review the prompt in the AI node if you want to customize content style All technical details are documented inside the sticky notes within the workflow.