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 NodeAlchemy
This n8n template demonstrates how to use AI to capture, qualify, and route inbound leads automatically from email or web forms. It extracts key business information using AI, scores the lead based on your ideal customer profile, creates CRM records, notifies your team on Slack, and logs all activity—including failures—to Google Sheets. Use cases include: automating sales inboxes, qualifying form leads for agencies or SaaS products, routing high-fit prospects to the right territory owner, and keeping your sales and ops teams aligned without manual data entry. Good to know The OpenAI model is used for lead data extraction and will incur a small cost per run depending on volume. This workflow supports either Salesforce or HubSpot as the CRM system—select which one in the configuration node. You’ll need valid credentials for Gmail (or another email service), OpenAI, Slack, Google Sheets, and your chosen CRM before running. How it works Triggers: A Gmail trigger polls for new inbound emails. A Webhook node receives submissions from any online form. Both sources merge into a single pipeline. Validation: Incoming data is checked for required fields (email or text). Invalid entries are routed to the Dead Letter Queue (DLQ) for review. AI Extraction: The OpenAI node extracts structured fields like company name, size, industry, role, region, problem statement, and budget signals from free-form text. Parsing & Scoring: The AI output is parsed, then a code node calculates a 0–100 lead score based on transparent criteria—industry, size, role, problem clarity, and budget mentions. It also assigns a lead tier (Hot, Warm, Cold, Unqualified). CRM Routing: Depending on your configuration, the workflow creates a Salesforce lead (default) or can be easily adapted for HubSpot. Territory or CRM owner routing can be extended here. Slack Notification: A rich Slack message summarizes the lead score and reasoning and includes a “Create intro email” button for quick action. Logging: All successful leads are logged to Google Sheets for reporting. Any failed or invalid leads are logged separately to the DLQ tab for auditing. How to use Configure your credentials for Gmail, OpenAI, Slack, Google Sheets, and your CRM. Open the Workflow Configuration node and fill in your target industries, buyer roles, company size, Slack channel ID, Google Sheets URL, and CRM choice. Create corresponding tabs in your Google Sheet for Leads and DLQ. Test by sending a sample email or form submission, then watch the workflow extract, score, route, and notify automatically. Requirements OpenAI account for text extraction Gmail (or other email provider) for the email trigger Slack for lead notifications Google Sheets for logging leads and DLQ entries Salesforce or HubSpot account for CRM integration Customizing this workflow This template can be expanded in many ways: Add HubSpot routing on the first Switch output. Integrate a Slack button handler to auto-generate intro emails. Add retry and backoff logic for resilience. Modify the scoring rubric in the code node to match your unique ICP. Connect additional sources, such as LinkedIn forms or landing page builders, for omnichannel lead capture.
by Trung Tran
SmartSupport Flow: Auto-Handle IT Requests from Email to JIRA with Slack notification Watch the demo video below: Who’s it for > This workflow is built for lean IT teams, office managers, and business operators who receive support requests via email and want to automate ticket creation, smart AI resolution advice, and seamless communication with both users and internal teams, all without lifting a finger. If your team is tired of manually triaging inbox requests, this AI-powered flow will transform your support handling process. How it works / What it does Trigger on New Email: Uses Gmail Trigger to detect new support request emails. Fetch Email Content: Retrieves the full message body and metadata. Check for Duplication: Skips processing if the email has already been handled (based on READ/UNREAD label). Mark as Read: Updates Gmail to mark the email as processed. Extract Structured Request: Uses the Support Request Reader Agent powered by OpenAI to extract: Request title Request description Requested by Department Category and priority Create Jira Ticket: A main issue is created in Jira using the structured request. Generate AI-Based Solution: Invokes the IT Support Advisor Agent to propose resolution(s). Post Comment to Jira: Adds the suggested solution(s) to the issue as a comment. Notify IT Team: Sends the ticket and context to a Slack channel for visibility and action. (Optional) Send Email to Requester: Currently deactivated. Can be enabled to acknowledge receipt. How to set up Gmail Integration Connect Gmail in the “Gmail Trigger” and “Get Email Content” nodes. OpenAI Configuration Use OpenAI API credentials in both the Reader and Advisor agent models. Jira Integration Authenticate your Jira account. Set project key and issue fields in the “Create Main Issue” node. Slack Notification Configure Slack connection and select a target channel. Set up Jira, Slack, Email Set your company Jira based URL, IT Support slack channel and IT Support email in the Edit Fields (Set) node (Optional) Email Acknowledgment Provide SendGrid credentials and email template in the “Send email to requester” node if re-enabled. Requirements Gmail API access with appropriate permissions OpenAI account with API access (for GPT-4 or GPT-3.5) Jira instance with project and permission to create/comment on issues Slack workspace and Webhook or OAuth setup n8n instance running with all above integrations configured How to customize the workflow Enhance Email Deduplication**: Adjust the deduplication logic to use message-id, threadId, or custom headers. Expand Reader Agent**: Configure the LLM to extract more details such as asset tags, urgency levels, or locations. Tailor Advisor Agent**: Adjust prompt to generate multiple solutions, troubleshooting guides, or internal references. Routing by Department**: Add logic to forward requests to different teams based on the request category or department. Enable Email Acknowledgment**: Activate and customize the email notification step to inform requesters that their issue is being handled.
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 Yusuke Yamamoto
This n8n template demonstrates how to use AI to fully automate the generation and scheduling of X (formerly Twitter) content based on a specific, predefined persona. Use cases are many: It's perfect for social media marketers looking to streamline content creation, individual experts building a consistent brand voice, or businesses aiming to drive traffic to specific services with a steady stream of relevant content. Good to know The AI model used in this workflow (via OpenRouter) requires an API key and will incur costs based on usage (typically a few cents per generation). The Blotato node used for posting is a third-party community node and requires a separate Blotato account. How it works This workflow is divided into two main processes: Content Generation and Content Posting. Content Generation Process: A Schedule Trigger kicks off the workflow every 4 hours. An AI Agent (LangChain) generates a post based on a detailed prompt defining a persona, purpose, and rules. A Code node refines the AI's output, ensuring the text ends naturally. The generated post is then saved to a Google Sheet with a "Not Posted" status, creating a content queue. Content Posting Process: The workflow retrieves one "Not Posted" item from the Google Sheet. An IF node checks the post's category to determine if an image is required. If an image is needed, it searches for and retrieves a matching image file from a specified Google Drive folder. The Blotato node posts the text (and image, if applicable) to the designated X (Twitter) account. A confirmation email is sent via Gmail to notify stakeholders of the successful post. Finally, the Google Sheet status is updated to "Completed" to prevent duplicate posts. How to use You can test the workflow anytime using the manual trigger. For production, adjust the posting frequency in the "Trigger: Every 4 Hours" node. The quality of the generated content is determined by the prompt. Edit the system message within the "AI: Generate X Post Content" node to customize the persona, purpose, tone of voice, etc. To generate posts with images, you must upload image files to the specified Google Drive folder. The filename must exactly match the post's category name (e.g., Evidence-based_Graph.png). Requirements An OpenRouter account (or another AI service account) for the LLM. A Blotato account for social media posting. A Google account for content management, image storage, and notifications (Sheets, Drive, Gmail). Customising this workflow Expand the workflow to post to other social media platforms supported by Blotato, such as Facebook or LinkedIn. Instead of posting immediately, add a human-in-the-loop approval step by sending the AI-generated draft to Slack or email for review before publishing. Replace the Schedule Trigger with a Webhook Trigger to generate and post relevant content based on external events, such as "when a new blog post is published."
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 Jitesh Dugar
Automated Pre-Issued Workshop Certificate Generator Description: This workflow automates the entire pre-issuance process of workshop participation certificates. When an attendee submits a registration form via a webhook, the workflow validates the data, verifies the attendee’s email, generates a unique Certificate ID and QR code, creates a styled certificate image, stores it on Google Drive, emails the certificate to the attendee, logs all details in Google Sheets, and notifies organizers via Slack — all fully automated. This template is ideal for institutions, event teams, training organizations, hackathons, and workshops that want to automate certificate issuing and remove manual processing. Key Features: Webhook-based registration intake** Required field + email validation using VerifiEmail API** Auto-generated Certificate ID, QR code, and verification URL** Dynamic HTML-to-Image certificate generation** Automatic email delivery with certificate attachment (Gmail)** Auto-upload certificate to Google Drive** Real-time Slack notification for organizers** Registration + certificate logging in Google Sheets** Instant webhook response with certificate metadata** How It Works (Short Summary): Webhook Trigger receives registration details. Validator checks for mandatory fields (name, email, event). Email verification ensures the email is deliverable. Certificate generation creates unique ID + QR + HTML. HTML-to-Image converts the certificate to PNG. Upload to Google Drive stores the certificate file. Email node sends the certificate to the attendee. Google Sheets logs the registration + certificate details. Slack message notifies organizers instantly. Webhook response returns success JSON. Use Cases: Workshops Webinars Training sessions Bootcamps Corporate events Hackathons Student registrations Event ticketing / entry pass systems Required Credentials: VerifiEmail API** – email validation at verifi.email HTMLCSStoImage API** – convert certificate HTML to PNG at htmlcsstoimg.com Gmail OAuth2** – send certificate emails Google Drive OAuth2** – store certificate files Google Sheets OAuth2** – logging Slack API** – organizer notifications Setup Instructions: Import this template into your n8n instance. Open the Webhook node and copy the generated webhook URL. Use this URL in your registration form / frontend / Postman. Add all required credentials in the Credentials Manager. Customize certificate HTML (colors, branding, logos) if needed. Test with a sample POST request containing all required fields: name email event date time venue organization designation Enable the workflow. Input Format (POST Body Required): { "name": "John Doe", "email": "john@example.com", "event": "AI Workshop 2025", "date": "25 Nov 2025", "time": "10:00 AM", "venue": "Auditorium Hall", "organization": "Tech University", "designation": "Student" } Output (Webhook Response): { "success": true, "message": "Registration successful! Certificate sent to your email.", "certificateId": "CERT-12345-ABCD", "verifyUrl": "https://workshopverify.com/cert?id=CERT-12345-ABCD" } Why This Workflow is Useful: Eliminates manual certificate design & sending Ensures professional, consistent certificates Reduces event staff workload Guarantees accurate data logging Provides instant attendee confirmation Enhances event experience with automation
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 Daniel Rosehill
Who's it for This workflow is perfect for individuals, small businesses, or households who need to: Automatically process and categorize expense receipts Extract structured data from invoices and receipts using AI Store receipts in multiple locations (Google Drive and S3) Send automated email notifications with expense details Send documents to accounting systems via email hooks How it works This comprehensive expense processing workflow combines AI-powered document analysis with automated file management and notifications. Here's the complete flow: Form Submission: Users submit expenses through a web form with receipt upload and category selection (Personal, Business, or Shared/Home) AI Document Processing: The workflow extracts text from PDF receipts using OCR, then uses Google Gemini AI to parse and structure the data into a standardized JSON format including vendor details, amounts, dates, and categorization Smart Routing: Based on the expense category, receipts are automatically routed to different processing paths with category-specific folder organization Multi-Destination Storage: Receipts are uploaded to: Google Drive (organized by year/month folders) S3 cloud storage buckets Different destinations based on expense type Email Notifications: Sends formatted HTML email notifications with complete expense details and links to stored receipts Accounting System Integration: Automatically forwards business expenses to accounting systems via email hooks (customizable per user requirements) Requirements Credentials needed: Google Gemini API**: For AI-powered document analysis Google Drive OAuth2**: For personal and business drive access Gmail OAuth2**: For sending email notifications S3 Storage**: For cloud backup (AWS S3, Wasabi, etc.) Services used: Google Drive (multiple accounts supported) Google Gemini AI Gmail S3-compatible storage Form trigger webhook How to set up Step 1: Configure Credentials Set up Google Gemini API credentials in n8n Configure Google Drive OAuth2 for both personal and business accounts Add Gmail OAuth2 credentials Set up S3 storage credentials Step 2: Update Configuration Replace all placeholder values: YOUR_GEMINI_CREDENTIAL_ID with your Gemini credential ID YOUR_PERSONAL_GDRIVE_CREDENTIAL_ID with personal Drive credential YOUR_BUSINESS_GDRIVE_CREDENTIAL_ID with business Drive credential YOUR_GMAIL_CREDENTIAL_ID with Gmail credential YOUR_S3_CREDENTIAL_ID with S3 credential Update Google Drive folder structure: Replace YOUR_BUSINESS_DRIVE_ID and YOUR_SHARED_DRIVE_ID with actual drive IDs Update the JavaScript code in the three Code nodes with your actual folder mapping Configure email addresses: Replace user@example.com with your notification email Replace receipts@paperless-service.com with your accounting system's email hook (this is a mail hook for uploading documents to small business accounting systems - can be modified per user requirements) Update S3 bucket names: Replace business-expenses, personal-expenses, and shared-expenses with your bucket names Step 3: Set Up Folder Structure Create organized folder structures in your Google Drives: Drive Root/ ├── 2024/ │ ├── January/ │ ├── February/ │ └── ... (all months) ├── 2025/ │ ├── January/ │ └── ... (all months) └── 2026/ └── ... (all months) Step 4: Test the Workflow Activate the workflow Submit a test expense through the form Verify files are uploaded to correct locations Check email notifications are received How to customize the workflow Expense Categories Modify the form dropdown options and conditional logic to add/remove expense categories: Edit the "On form submission" node form fields Update the IF condition nodes for routing Add new processing paths as needed AI Processing Schema Customize the structured output parser schema to extract different fields: Modify the JSON schema in the "Structured Output Parser" node Update the AI system prompt for different extraction requirements Add new fields for specific business needs Storage Destinations Add or modify storage locations: Duplicate upload nodes for additional cloud services Modify folder organization logic in Code nodes Add new conditional routing for different storage rules Email Templates Customize the HTML email template: Edit the email message content in the Gmail node Add/remove expense fields in the table Modify styling and branding Folder Organization Update the JavaScript code in Code nodes to match your folder structure: Modify the CSV data with your actual folder IDs Change the date-based organization logic Add custom folder naming conventions Integration Extensions Extend the workflow with additional integrations: Add Slack notifications Connect to accounting software (QuickBooks, Xero) Integrate with expense management platforms Add approval workflows for business expenses
by WeblineIndia
Zoho CRM - Smart Meeting Scheduler This workflow automatically schedules meetings for new Zoho CRM leads by detecting their timezone, checking the sales rep’s Google Calendar, generating conflict-free time slots, creating a Zoom meeting and sending a personalized AI-generated email to the lead. If no slots are available, it sends a fallback message to the lead without updating Zoho CRM. When a meeting is created, all details are logged inside Zoho CRM for visibility. ⚡ Quick Implementation Steps (Fast Start Guide) Import the workflow JSON into n8n. Configure Zoho CRM, Google Calendar, Gmail, Zoom OAuth and Gemini AI credentials. Update meeting duration, working hours, buffer time and search window. Set email recipient to the lead’s email instead of test/static values. Add the webhook URL to Zoho CRM → Automation → Webhooks. Test with a new lead and activate the workflow. 📘 What It Does This workflow automates scheduling for new Zoho CRM leads. As soon as a lead is created, it retrieves full lead and owner details, detects the lead’s timezone and checks the assigned sales rep’s upcoming Google Calendar events. This helps identify when the rep is available. Using your settings—working hours, meeting duration, buffer before/after and days to evaluate—the system generates valid meeting time slots with no conflicts. If suitable slots exist, it authenticates with Zoom and creates a meeting for the earliest option, then generates a polished HTML invitation using Gemini AI and emails it to the lead. This ensures a fast, smart and personalized lead engagement process. If no slots exist, the workflow sends a fallback email informing the lead that no availability is open in the next few days. In this branch, Zoho CRM is not updated, because no meeting was scheduled. 🎯 Who’s It For This workflow is perfect for: Sales teams managing high inbound volume CRM managers automating lead qualification & engagement SaaS companies scheduling demos automatically Agencies booking consultation calls Any team struggling with timezone-based scheduling manually 🔧 Requirements to Use This Workflow Platform Requirements n8n (Cloud or self-hosted) Required Integrations Zoho CRM OAuth2 Google Calendar OAuth2 Gmail OAuth2 Zoom OAuth (account-level) Gemini AI / Google PaLM API Required Lead Fields Email (mandatory for sending the invite) Country / State (for timezone detection) Lead Owner (to fetch rep details) 🔄 How It Works Zoho CRM Webhook triggers when a new lead is created. Workflow fetches full lead and owner details. Detects the lead’s timezone using country/state mapping. Fetches the sales rep’s availability from Google Calendar. Generates valid time slots based on working hours, buffers and meeting duration. If slots exist: Authenticate with Zoom Create a Zoom meeting Generate personalized HTML invite using Gemini AI Send email to the lead Log meeting details in Zoho CRM If no slots exist: Generate fallback message Send fallback email to the lead (Zoho CRM is NOT updated in this path) 🛠️ Setup Steps (Configuration Guide) 1. Import Workflow Go to: n8n → Workflows → Import and upload the JSON file. 2. Add Required Credentials Configure the following inside n8n: Zoho CRM OAuth Google Calendar OAuth Gmail OAuth Zoom OAuth Gemini AI API key 3. Update Workflow Configuration Node Set: Meeting duration Buffer before/after Working hours Days to look ahead Default meeting provider (Zoom) 4. Fix Email Recipient In Send Meeting Invite node, set: sendTo = {{$('Detect Lead Timezone').item.json.Email}} yaml Copy code 5. Update Google Calendar Email/ID Ensure the calendar ID matches the sales rep’s Google Calendar. 6. Add Webhook in Zoho CRM Navigate to: Setup → Automation → Webhooks → Create Webhook → Lead Created Paste the webhook URL from n8n. 7. Test the Automation Verify: Correct timezone detection Calendar availability check Zoom meeting creation AI email sent to the lead Zoho CRM updated only when meeting is created 8. Activate Workflow Enable the workflow for live operation. 🧩 How To Customize Nodes 1. Adjust Meeting Logic Modify the Workflow Configuration node to change: Slot duration Buffer time Working hour ranges Days to consider 2. Expand Timezone Detection Edit the Detect Lead Timezone node to add new countries/states. 3. Personalize Email Content Update the prompt inside the Generate Personalized Invite node. 4. Add New Regions Duplicate timezone logic for new regions (Australia, Middle East, etc.) 5. Replace Zoom Swap Zoom with Google Meet, Microsoft Teams or Zoho Meeting. ➕ Add-Ons (Optional Enhancements) Auto-book calendar events when lead confirms a slot WhatsApp notifications via Twilio or Gupshup Slack/Email internal alerts for reps Follow-up reminder emails Log lead activity to Google Sheets Attach downloadable ICS calendar file 💼 Use Case Examples SaaS demo scheduling Consultation & discovery calls Global timezone-based sales teams Onboarding/support calls Event follow-up scheduling (And many more…) 🩻 Troubleshooting Guide | Issue | Possible Cause | Solution | |-------|----------------|----------| | Lead not receiving email | Gmail OAuth expired / wrong email field | Reconnect Gmail OAuth & fix sendTo value | | Wrong time slots | Incorrect timezone detection | Update mapping in Detect Lead Timezone | | Zoom meeting not created | Invalid/expired Zoom OAuth | Reconnect Zoom credentials | | CRM not updated after fallback email | Expected behavior | No CRM update when slots don’t exist | | Workflow not triggering | Missing Zoho webhook | Re-add webhook | | Empty AI email | Gemini key incorrect | Reconfigure Gemini credentials | 🤝 Need Help? If you want assistance setting up, customizing or extending this workflow, the n8n automation team at WeblineIndia is here to help. We specialize in: Advanced automation workflows Multi-timezone scheduling systems CRM-integrated AI communication Custom Zoho + n8n development End-to-end automation architecture 👉 Contact WeblineIndia for expert workflow development and enhancements.
by Muhammad Farooq Iqbal
This n8n template demonstrates how to create consistent character videos using AI image and video generation. The workflow generates photorealistic videos featuring the same character across different poses, locations, and outfits, maintaining perfect character consistency throughout cinematic transitions. Use cases are many: Create consistent character content for social media, generate cinematic videos for brand campaigns, produce lifestyle content with the same character, automate video content creation for TikTok/Instagram, create character-based storytelling videos, or scale video production with consistent visual identity! Good to know The workflow maintains perfect character consistency across frames using reference images Uses multiple AI services: GPT-4o for prompt generation, Google Nano Banana Edit for image generation, and Veo 3.1 for video creation Features 100 unique locations (beaches, cities, cafes, rooftops, etc.) and 15 different poses KIE.AI pricing: Check current rates for Veo 3.1 and Nano Banana Edit models Processing time: ~5-10 minutes per complete video (depends on AI service queue) Output format: 9:16 aspect ratio videos optimized for TikTok/Instagram Automatically generates social media content (titles, descriptions, hashtags) using GPT-4o Includes AI disclosure labels for TikTok compliance How it works Location & Pose Selection: Randomly selects one location from 100 options and 3 unique poses from 15 options AI Story Creation: GPT-4o generates cinematic prompts for first frame, last frame, and video motion while maintaining character identity from reference images Start Frame Generation: Google Nano Banana Edit creates the first frame image with character in initial pose, location, and outfit End Frame Generation: Nano Banana Edit generates the final frame using start frame as reference, changing only pose/expression while maintaining consistency Video Generation: Veo 3.1 creates smooth cinematic video transition between frames with natural character movement Content Creation: GPT-4o generates engaging title, description, and hashtags for social media Auto-Publishing: Automatically posts to TikTok (with AI disclosure) and Instagram, plus sends previews via Telegram The workflow ensures the same character appears in both frames with identical facial features, hair, skin tone, and overall appearance, while only pose and expression change. The video features dynamic camera movements (arc shots, dolly pushes, crane rises, etc.) for cinematic quality. How to use Setup Credentials: Configure OpenAI API, KIE.AI API, Blotato API, and Telegram Bot credentials Add Reference Images: Update the 5 reference image URLs in the "Create Start Frame" node with your character images Configure Social Media: Set up Blotato accounts for TikTok and Instagram posting Set Telegram Chat ID: Replace YOUR_TELEGRAM_CHAT_ID with your Telegram chat ID for previews Deploy Workflow: Import the template and activate the workflow Trigger Generation: Use the schedule trigger (default: every 6 hours) or replace with manual/webhook trigger Receive Content: Get previews via Telegram and published posts on TikTok & Instagram Pro tip: The workflow uses 5 reference images to maintain character consistency. For best results, use clear, high-quality photos of your character from different angles. The workflow automatically handles character identity preservation across all generated content. Requirements OpenAI API** account for GPT-4o prompt generation and social media content creation KIE.AI API** account for Veo 3.1 video generation and Google Nano Banana Edit image generation Blotato API** account for TikTok and Instagram posting automation Telegram Bot** setup for preview delivery (optional but recommended) n8n** instance (cloud or self-hosted) Reference Images:** 5 high-quality images of your character (URLs or hosted images) Customizing this workflow Character Variations: Modify the reference images to create videos with different characters while maintaining the same workflow structure. Location Customization: Edit the location pool in the "Code in JavaScript" node to add or modify locations (currently 100 options). Pose Library: Expand or customize the pose library in the JavaScript code node (currently 15 poses with detailed guidance). Social Media Platforms: Add more platforms by duplicating the Blotato nodes and configuring additional accounts (YouTube, Facebook, etc.). Content Style: Adjust GPT-4o prompts in "Story Creator Agent" and "Title Description" nodes to change content tone, style, or language. Scheduling: Replace the schedule trigger with webhook, form, or manual trigger based on your needs. Video Settings: Modify Veo 3.1 parameters (aspect ratio, watermark, seeds) in the "Veo 3.1" node for different output formats. Batch Processing: Add loops to generate multiple videos with different location/pose combinations automatically.
by Trung Tran
TalentFlow AI – Bulk Resume Screening with JD Matching Automatically extract, evaluate, and shortlist multiple resumes against a selected job description using GPT-4. This smart, scalable n8n workflow helps HR/TA teams streamline hiring decisions while keeping results structured, auditable, and easy to share. 👤 Who’s it for This workflow is designed for: HR or Talent Acquisition (TA) teams handling multiple candidates per role Recruiters who want AI-assisted resume screening to save time and reduce bias Organizations that want to automatically log evaluations and keep stakeholders updated in real-time via Slack or Sheets ⚙️ How it works / What it does HR/TA uploads multiple candidate resumes and selects a job role Each resume is: Uploaded to Google Drive Parsed with GPT-4 to extract structured profile data The job description for the selected role is: Retrieved from Google Sheets Downloaded from Drive and parsed The profile + JD are sent to an AI agent to generate: Fit score Strengths & gaps Final recommendation Results are: Appended to the evaluation tracking sheet Optionally shared with the hiring team on Slack Used to trigger emails to qualified or unqualified candidates 🛠️ How to set up Clone or import the workflow into your n8n instance Connect your integrations: Google Sheets (positions & evaluation form) Google Drive (CV & JD folders) OpenAI API (GPT-4) Slack (for notifications) (Optional) SendGrid or SMTP for email notifications Update Google Sheets structure: Positions sheet: maps Job Role → JD file link Evaluation form: stores evaluation results Prepare Drive folders: /cv folder for uploaded resumes /jd folder for job description PDFs 📋 Requirements ✅ n8n (hosted or self-hosted) ✅ OpenAI GPT-4 account (used in Profile & JD evaluator agents) ✅ Google Drive + Google Sheets access ✅ Slack workspace + bot token (Optional) SendGrid or email credentials for candidate follow-up 🎨 How to customize the workflow Change the fit score threshold in the Candidate qualified? node Edit Slack message content/formatting to match your company tone Add additional candidate metadata to Sheets or Slack messages Use a webhook trigger to integrate with your ATS or job board Swap GPT-4 with Claude or Gemini if you prefer other AI services Expand to include multi-position batch screening logic Happy Hiring! 🚀 Automated with love using n8n