by Shelly-Ann Davy
AI Contact Enrichment 📋 Template Description Overview Automatically enhance and enrich contact data using AI to fill in missing information, generate insights, and create detailed buyer personas. Supports multiple AI providers (OpenAI, Anthropic, etc.) with automatic logging to Supabase. Description This workflow transforms incomplete contact records into rich, actionable profiles. By leveraging AI, it can infer job roles, company information, likely pain points, communication preferences, and buying motivations from minimal input data. Perfect for sales and marketing teams looking to improve data quality and personalize outreach. Key Benefits: Smart Data Completion**: Fill in missing contact fields using AI inference Buyer Persona Generation**: Create detailed profiles from basic information Universal AI Support**: Works with OpenAI, Anthropic Claude, or custom providers CRM Enhancement**: Automatically enrich contacts as they enter your system Lead Qualification**: Assess lead quality and fit based on enriched data Personalization Engine**: Generate insights for tailored outreach Data Quality**: Maintain clean, complete contact records Use Cases: Sales prospecting and lead enrichment Marketing persona development CRM data cleansing and completion Account-based marketing (ABM) research Lead scoring and qualification Personalized email campaign preparation Contact segmentation and targeting ⚙️ Setup Instructions Prerequisites n8n instance (cloud or self-hosted) AI Provider account (OpenAI, Anthropic, or custom) Supabase account with database access Step 1: Configure Environment Variables Add these to your n8n environment settings: AI_PROVIDER=openai # or 'anthropic', 'custom' AI_API_KEY=your_api_key_here AI_MODEL=gpt-3.5-turbo # or 'gpt-4', 'claude-3-sonnet-20240229' AI_ENDPOINT= # Only for custom providers Recommended Models: Cost-effective**: gpt-3.5-turbo (fast, affordable, good for basic enrichment) High-quality**: gpt-4 or claude-3-sonnet-20240229 (better inference, deeper insights) Premium**: claude-3-opus-20240229 (best for complex persona generation) How to set environment variables: n8n Cloud**: Go to Settings → Environment Variables Self-hosted**: Add to your .env file or docker-compose configuration Step 2: Set Up Supabase Database Create the logging table in your Supabase database: CREATE TABLE workflow_logs ( id BIGSERIAL PRIMARY KEY, workflow_name TEXT NOT NULL, data JSONB NOT NULL, ai_response JSONB NOT NULL, created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW() ); CREATE INDEX idx_workflow_logs_created_at ON workflow_logs(created_at); CREATE INDEX idx_workflow_logs_workflow_name ON workflow_logs(workflow_name); -- Optional: Create a view for enriched contacts CREATE VIEW enriched_contacts AS SELECT id, data->>'email' as email, data->>'name' as name, data->>'company' as company, ai_response as enrichment_data, created_at FROM workflow_logs WHERE workflow_name = 'AI Contact Enrichment' ORDER BY created_at DESC; To run this SQL: Open your Supabase project dashboard Go to the SQL Editor Paste the SQL above and click "Run" Step 3: Configure Supabase Credentials in n8n Go to Settings → Credentials Click Add Credential → Supabase API Enter your Supabase URL and API key (found in Project Settings → API) Name it Supabase API Click Save Step 4: Activate the Webhook Import this workflow into n8n Click the Activate toggle in the top-right corner Click on the "Webhook Trigger" node Copy the Production URL (this is your webhook endpoint) Save this URL for integration with your applications Step 5: Test the Workflow Send a test POST request to the webhook: curl -X POST https://your-n8n-instance.com/webhook/contact-enrichment \ -H "Content-Type: application/json" \ -d '{ "email": "john.doe@acmecorp.com", "name": "John Doe", "company": "Acme Corporation", "linkedin_url": "https://linkedin.com/in/johndoe" }' Successful Response: { "success": true, "workflow": "AI Contact Enrichment", "timestamp": "2025-01-14T12:00:00.000Z" } 📥 Expected Payload Format The webhook accepts JSON with basic contact information: Minimal Input { "email": "string (required or name required)", "name": "string (required or email required)" } Recommended Input { "email": "string", "name": "string", "company": "string", "job_title": "string", "linkedin_url": "string", "phone": "string", "location": "string", "website": "string" } Complete Input Example { "email": "sarah.chen@techstartup.io", "name": "Sarah Chen", "company": "TechStartup Inc.", "job_title": "VP of Marketing", "linkedin_url": "https://linkedin.com/in/sarahchen", "phone": "+1-555-0123", "location": "San Francisco, CA", "website": "https://techstartup.io", "industry": "B2B SaaS", "company_size": "50-200 employees", "notes": "Met at SaaS conference 2024" } Field Guidelines: At minimum, provide either email or name More input fields = better AI enrichment quality Include linkedin_url for best results company helps with firmographic enrichment Any additional context improves accuracy 🔄 Workflow Flow Webhook Trigger: Receives basic contact information from your application, form, or CRM Process Data: Adds unique ID and timestamp to the incoming data Prepare AI Request: Configures AI provider settings from environment variables Call AI API: Sends contact data to AI with enrichment prompt Save to Supabase: Archives original data and enrichment results Format Response: Returns success confirmation 🎯 Customization Tips Enhance AI Prompts for Better Enrichment Modify the "Prepare AI Request" node to customize enrichment: // Enhanced prompt for contact enrichment const systemPrompt = `You are an expert sales intelligence analyst. Analyze the provided contact information and generate a comprehensive enrichment including: INFERRED DETAILS: Fill in missing information based on available data Full job title and seniority level Department and reporting structure Years of experience (estimated) Professional background COMPANY INSIGHTS: If company name provided Industry and sub-industry Company size and revenue (estimated) Key products/services Recent news or developments BUYER PERSONA: Create a detailed profile Primary responsibilities Likely pain points and challenges Key priorities and goals Decision-making authority Budget influence level ENGAGEMENT STRATEGY: Provide outreach recommendations Best communication channels Optimal outreach timing Key talking points Personalization suggestions Content interests LEAD SCORE: Rate 1-10 based on: Fit for product/service (specify your ICP) Seniority and decision power Company size and maturity Engagement potential Return as structured JSON with clear sections.`; const userMessage = Contact Information:\n${JSON.stringify($json.data, null, 2)}; const aiConfig = { provider: $env.AI_PROVIDER || 'openai', apiKey: $env.AI_API_KEY, model: $env.AI_MODEL || 'gpt-3.5-turbo', endpoint: $env.AI_ENDPOINT, messages: [ { role: 'system', content: systemPrompt }, { role: 'user', content: userMessage } ] }; return { json: { aiConfig, data: $json } }; Add External Data Sources Enhance enrichment with third-party APIs: After "Process Data" node, add: Clearbit/Hunter.io Node: Get verified company data LinkedIn API: Pull professional information Company Database: Query internal customer data Web Scraping: Extract data from company websites Then merge all data before AI enrichment for best results Connect to Your CRM Auto-update contacts after enrichment: Salesforce Integration: // Add after "Call AI API" node // Update Salesforce contact with enriched data const enrichedData = JSON.parse($json.ai_response); return { json: { contactId: $json.data.salesforce_id, updates: { Description: enrichedData.buyer_persona, Custom_Score__c: enrichedData.lead_score, Pain_Points__c: enrichedData.pain_points } } }; HubSpot Integration: Add HubSpot node to update contact properties Map enriched fields to custom HubSpot properties Pipedrive Integration: Use Pipedrive node to update person records Add custom fields for AI insights Implement Lead Scoring Add scoring logic after enrichment: // Calculate lead score based on enrichment const enrichment = JSON.parse($json.ai_response); let score = 0; // Job title scoring if (enrichment.seniority === 'C-Level') score += 30; else if (enrichment.seniority === 'VP/Director') score += 20; else if (enrichment.seniority === 'Manager') score += 10; // Company size scoring if (enrichment.company_size === 'Enterprise') score += 25; else if (enrichment.company_size === 'Mid-Market') score += 15; // Decision authority scoring if (enrichment.decision_authority === 'High') score += 25; else if (enrichment.decision_authority === 'Medium') score += 15; // Budget influence if (enrichment.budget_influence === 'Direct') score += 20; return { json: { ...enrichment, lead_score: score } }; Add Compliance Checks Insert before AI processing: // Check for opt-out or compliance flags const email = $json.email.toLowerCase(); // Check against suppression list const suppressedDomains = ['competitor.com', 'spam.com']; const domain = email.split('@')[1]; if (suppressedDomains.includes(domain)) { throw new Error('Contact on suppression list'); } // Verify email format const emailRegex = /^+@+\.+$/; if (!emailRegex.test(email)) { throw new Error('Invalid email format'); } return { json: $json }; Batch Enrichment Process multiple contacts: Add Spreadsheet File trigger instead of webhook Add Split In Batches node (process 10-20 at a time) Run enrichment for each contact Combine results and export to CSV 🛠️ Troubleshooting Common Issues Issue: "Enrichment is too generic" Solution**: Provide more input data (company, job title, LinkedIn) Use GPT-4 or Claude models for better inference Enhance the system prompt with specific instructions Issue: "AI_API_KEY is undefined" Solution**: Ensure environment variables are set correctly Verify variable names match exactly (case-sensitive) Issue: "Enrichment contradicts actual data" Solution**: AI makes inferences - always validate critical information Add validation step to check enriched data against known facts Use external APIs for verification Issue: "Too slow for real-time use" Solution**: Implement queue system for async processing Use faster models (gpt-3.5-turbo) for speed Process in batches during off-peak hours Issue: "Supabase credentials not found" Solution**: Check credential name matches exactly: "Supabase API" Verify Supabase URL and API key are correct Debugging Tips Test with known contacts first to validate accuracy Compare AI enrichment against actual data Check execution logs for API errors Start with minimal prompt, then enhance gradually Use "Execute Node" to test individual steps 📊 Analyzing Enriched Data Query and analyze your enriched contacts: -- Get all enriched contacts SELECT * FROM enriched_contacts ORDER BY created_at DESC; -- Find high-value leads (assuming scoring implemented) SELECT email, name, company, ai_response->>'lead_score' as score FROM enriched_contacts WHERE (ai_response->>'lead_score')::int > 70 ORDER BY (ai_response->>'lead_score')::int DESC; -- Analyze enrichment by company SELECT data->>'company' as company, COUNT(*) as contact_count, AVG((ai_response->>'lead_score')::int) as avg_score FROM workflow_logs WHERE workflow_name = 'AI Contact Enrichment' AND ai_response->>'lead_score' IS NOT NULL GROUP BY data->>'company' ORDER BY contact_count DESC; -- Find contacts needing follow-up SELECT email, name, ai_response->>'engagement_strategy' as strategy, created_at FROM enriched_contacts WHERE created_at > NOW() - INTERVAL '7 days' ORDER BY created_at DESC; Export Enriched Data -- Export to CSV COPY ( SELECT data->>'email' as email, data->>'name' as name, data->>'company' as company, ai_response->>'job_title' as enriched_title, ai_response->>'seniority' as seniority, ai_response->>'lead_score' as score FROM workflow_logs WHERE workflow_name = 'AI Contact Enrichment' ) TO '/tmp/enriched_contacts.csv' WITH CSV HEADER; 📈 Integration Ideas Form Integration Automatically enrich new leads from forms: Typeform**: Trigger on form submission Google Forms**: Use Google Sheets trigger Calendly**: Enrich after meeting booking Webflow Forms**: Webhook trigger from form CRM Integration Real-time enrichment as contacts enter CRM: Salesforce**: Trigger on new lead/contact creation HubSpot**: Enrich on form submission or import Pipedrive**: Auto-enrich new persons Close**: Webhook on lead creation Email Tools Enhance cold outreach campaigns: Instantly.ai**: Enrich before campaign launch Lemlist**: Generate personalization variables Apollo.io**: Supplement with AI insights Mailshake**: Enrich prospect lists Marketing Automation Power ABM and segmentation: Marketo**: Enrich leads for scoring Pardot**: Enhance prospect profiles ActiveCampaign**: Personalization data Klaviyo**: E-commerce customer insights Slack Integration Team notifications and collaboration: Send enrichment summaries to sales channel Notify reps of high-value leads Share persona insights with marketing Alert on key account contacts 🔒 Security & Compliance Best Practices Data Protection Encrypt Sensitive Data: Use environment variables for all credentials Access Control: Limit webhook access with authentication Data Retention: Set automatic deletion policies in Supabase Audit Logging: Track all enrichment activities Privacy Compliance GDPR Compliance: Get consent before enriching personal data Allow contacts to request data deletion Document legal basis for processing CCPA Compliance: Honor do-not-sell requests Data Minimization: Only enrich necessary fields Right to Access: Allow contacts to view enriched data AI Ethics Bias Awareness: Review AI inferences for bias Accuracy Validation: Verify critical information Transparency: Disclose use of AI enrichment Human Oversight: Review before critical decisions 💡 Best Practices Input Data Quality Always include email or full name** as anchor point Add LinkedIn URLs** for 50% better accuracy Provide company name** for firmographic insights Include any known details** - more data = better results Prompt Engineering Be specific** about your ideal customer profile (ICP) Request structured output** (JSON format) Define scoring criteria** that match your business Ask for actionable insights** not just descriptions Post-Enrichment Workflow Always validate** critical information before use Review AI inferences** for accuracy and bias Update CRM promptly** to maintain data freshness Track enrichment ROI** (conversion rates, time saved) Performance Optimization Batch process** during off-peak hours Use appropriate models** (gpt-3.5 for speed, gpt-4 for quality) Cache common enrichments** to reduce API costs Set rate limits** to avoid API throttling 🏷️ Tags sales-automation, lead-enrichment, ai-automation, crm-integration, data-enrichment, contact-intelligence, buyer-personas, lead-scoring, webhook, supabase, openai, anthropic, b2b-sales 📝 License This workflow template is provided as-is for use with n8n. 🤝 Support For questions or issues: n8n Community Forum: https://community.n8n.io n8n Documentation: https://docs.n8n.io 🌟 Example Output Input: { "email": "mike.johnson@cloudtech.com", "name": "Mike Johnson", "company": "CloudTech Solutions", "job_title": "Director of IT" } AI-Generated Enrichment: { "full_title": "Director of Information Technology", "seniority": "Director", "department": "Technology/IT", "experience_years": "10-15", "company_insights": { "industry": "Cloud Computing", "size": "Mid-Market (100-500)", "revenue_estimate": "$10M-$50M" }, "buyer_persona": { "responsibilities": ["Infrastructure management", "Vendor selection", "Security oversight"], "pain_points": ["Legacy system migration", "Cost optimization", "Security compliance"], "priorities": ["Scalability", "Cost reduction", "Team efficiency"] }, "engagement_strategy": { "best_channels": ["Email", "LinkedIn"], "timing": "Tuesday-Thursday, 9-11 AM", "talking_points": ["ROI and cost savings", "Security features", "Ease of implementation"], "personalization": "Reference cloud migration challenges" }, "lead_score": 75 } 🔄 Version History v1.0.0** (2025-01-14): Initial release with universal AI provider support
by Davide
This workflow is designed to manage the assignment and validation of unique QR code coupons within a lead generation system with SuiteCRM. How it Works This workflow automates the process of assigning unique QR code coupons to leads generated through a form submission, ensuring no duplicates are created, and validating the usage of coupons. Here's how it operates: Webhook Trigger: The workflow starts with a Webhook node that listens for incoming requests containing QR code data. A Set coupon node extracts the QR code value from the request parameters. Validation of QR Code: An If node checks if the QR code exists in the incoming data. If it does, the process proceeds; otherwise, a "No coupon" response is sent back. Coupon Lookup: The Get Lead node queries a Google Sheets document to check if the QR code corresponds to an existing lead. A subsequent Not used? node verifies whether the coupon has already been used by checking the "USED COUPON?" field in the sheet. Lead Duplication Check: When a new lead submits the form (On form submission), the Duplicate Lead? node checks if the email already exists in the system to prevent duplicates. Coupon Assignment: If the lead is not a duplicate, the Get Coupon node retrieves an available unassigned coupon from the Google Sheets document. The Token SuiteCRM node generates an access token for SuiteCRM, and the Create Lead SuiteCRM node creates a new lead entry in SuiteCRM, associating it with the assigned coupon. QR Code Generation and Email Notification: The Get QR node generates a QR code image URL for the assigned coupon. The Send Email node sends an email to the lead with the QR code attached. Response Handling: Depending on the validation results, the workflow responds with appropriate messages: "Coupon OK" if the coupon is valid and unused. "Coupon KO" if the coupon has already been used. "Coupon not valid" if the QR code does not exist. Set Up Steps To replicate this workflow in your own n8n environment, follow these steps: Configuration: Set up an n8n instance either locally or via cloud services. Import the provided JSON configuration file into your workspace. Configure all required credentials, such as: Google Sheets OAuth2 API for accessing the spreadsheet. SuiteCRM API credentials (e.g., SUITECRMURL, CLIENTID, CLIENTSECRET). SMTP credentials for sending emails. Customization: Adjust the Webhook URL to match your deployment environment. Modify the Google Sheets document ID and sheet name in nodes like Duplicate Lead?, Get Coupon, Update Sheet, and Update coupon used. Update the SuiteCRM API endpoint and credentials in nodes like Token SuiteCRM and Create Lead SuiteCRM. Customize the email template in the Send Email node to match your branding and messaging requirements. Ensure the QR code generation URL in the Get QR node points to a valid QR code generator service. By following these steps, you can effectively implement and customize this workflow to manage lead generation and coupon assignments in your organization.
by Angel Menendez
CallForge - AI-Powered Sales Call Data Processor Automate sales call analysis and store structured insights in Notion with AI-powered intelligence. Who is This For? This workflow is ideal for: ✅ Sales teams looking to automate call insight processing. ✅ Sales operations managers managing AI-driven call analysis. ✅ Revenue teams using Gong, Fireflies.ai, Otter.ai, or similar transcription tools. It streamlines sales call intelligence, ensuring that insights such as competitor mentions, objections, and customer pain points are efficiently categorized and stored in Notion for easy access. 🔍 What Problem Does This Workflow Solve? Manually reviewing and documenting sales call takeaways is time-consuming and error-prone. With CallForge, you can: ✔ Identify competitors mentioned in sales calls. ✔ Capture objections and customer pain points for follow-up. ✔ Track sales call outcomes and categorize insights automatically. ✔ Store structured sales intelligence in Notion for future reference. ✔ Improve sales strategy with AI-driven, automated call analysis. 📌 Key Features & Workflow Steps 🎙️ AI-Powered Call Data Processing This workflow processes AI-generated sales call insights and structures them in Notion databases: Triggers automatically when AI call analysis data is received. Extracts competitor mentions from the call transcript and logs them in Notion. Identifies and categorizes sales objections for better follow-ups. Processes integration mentions, capturing tools or platforms referenced in the call. Extracts customer use cases, categorizing pain points and feature requests. Aggregates all extracted insights and updates relevant Notion databases. 📊 Notion Database Integration Competitors → Logs mentioned competitors for sales intelligence. Objections → Tracks and categorizes common objections from prospects. Integrations → Captures third-party tools & platforms discussed in calls. Use Cases → Stores customer challenges & product feature requests. 🛠 How to Set Up This Workflow 1. Prepare Your AI Call Analysis Data Ensure AI-generated sales call data is passed into the workflow. Compatible with Gong, Fireflies.ai, Otter.ai, and other AI transcription tools. 2. Connect Your Notion Database Set up Notion databases for: 🔹 Competitors (tracks competing products) 🔹 Objections (logs customer objections & concerns) 🔹 Integrations (captures mentioned platforms & tools) 🔹 Use Cases (categorizes customer pain points & feature requests) 3. Configure n8n API Integrations Connect your Notion API key** in n8n under “Notion API Credentials.” Set up webhook triggers** to receive data from your AI transcription tool. Test the workflow** using a sample AI-generated call transcript. CallForge - 01 - Filter Gong Calls Synced to Salesforce by Opportunity Stage CallForge - 02 - Prep Gong Calls with Sheets & Notion for AI Summarization CallForge - 03 - Gong Transcript Processor and Salesforce Enricher CallForge - 04 - AI Workflow for Gong.io Sales Calls CallForge - 05 - Gong.io Call Analysis with Azure AI & CRM Sync CallForge - 06 - Automate Sales Insights with Gong.io, Notion & AI CallForge - 07 - AI Marketing Data Processing with Gong & Notion CallForge - 08 - AI Product Insights from Sales Calls with Notion 🔧 How to Customize This Workflow 💡 Modify Notion Data Structure – Adjust fields to match your company’s CRM setup. 💡 Enhance AI Data Processing – Align fields with different AI transcription providers. 💡 Expand with CRM Integration – Sync insights with HubSpot, Salesforce, or Pipedrive. 💡 Add Notifications – Send alerts via Slack, email, or webhook when key competitor mentions or objections are detected. ⚙️ Key Nodes Used in This Workflow 🔹 If Nodes – Checks if AI-generated data includes competitors, integrations, objections, or use cases. 🔹 Notion Nodes – Creates or updates entries in Notion databases. 🔹 Split Out & Aggregate Nodes – Processes multiple insights and consolidates AI outputs. 🔹 Wait Nodes – Ensures smooth sequencing of API calls and database updates. 🔹 HTTP Request Node – Sends AI-extracted insights to Notion for structured storage. 🚀 Why Use This Workflow? ✔ Eliminates manual data entry and speeds up sales intelligence processing. ✔ Ensures structured and categorized sales insights for decision-making. ✔ Improves team collaboration with AI-powered competitor tracking & objections logging. ✔ Seamlessly integrates with Notion to centralize and manage sales call insights. ✔ Scalable for teams using n8n Cloud or self-hosted deployments. This workflow empowers sales teams with automated AI insights, streamlining sales strategy and follow-ups with minimal effort. 🚀
by tanaypant
This workflow gets triggered every Friday at 6 PM with the help of a Cron node. It pulls in data about a random cocktail via the HTTP Request Node and sends the data to a Bannerbear node to create an image based on a template. The image is then finally shared on a specified Rocket.Chat channel.
by Davide
This workflow automates the process of sending text-to-speech (TTS) voice calls using API. It allows users to submit a form with the message content, recipient's phone number, voice type, and language, and then sends a voice call with the provided text. This workflow is a simple yet powerful way to automate text-to-speech voice calls using API. It’s ideal for notifications, reminders, or any scenario where voice communication is needed. Below is a breakdown of the workflow: 1. How It Works The workflow is designed to send voice calls with text-to-speech functionality. Here's how it works: Form Submission: The workflow starts with a Form Trigger node, where users submit a form with the following fields: Body: The text message to be converted to speech (max 600 characters). To: The recipient's phone number (including the international prefix, e.g., +39xxxxxxxxxx). Voice: The voice type (male or female). Lang: The language for the voice call (e.g., en-us, it-it, fr-fr, etc.). Once the form is submitted, the workflow is triggered. Send Voice Call: The Send Voice node sends a POST request to the ClickSend API (https://rest.clicksend.com/v3/voice/send). The request includes: The text message (Body) to be converted to speech. The recipient's phone number (To). The voice type (Voice). The language (Lang). Machine detection is enabled to detect if the call is answered by a machine. The API processes the request and initiates a voice call to the specified number, where the text is read aloud by the selected voice. Outcome: The recipient receives a voice call, and the submitted text is read aloud in the chosen voice and language. 2. Set Up Steps To set up and use this workflow in n8n, follow these steps: Register on ClickSend: Go to ClickSend and create an account. Obtain your API Key and take advantage of the 2 € free credits provided. Configure ClickSend API in n8n: In the Send Voice node, set up HTTP Basic Authentication: Username: Use the username you registered with on ClickSend. Password: Use the API Key provided by ClickSend. Set Up the Form Trigger: The Form Trigger node is pre-configured with fields for: Body: The text message to be converted to speech. To: The recipient's phone number. Voice: Choose between male or female voice. Lang: Select the language for the voice call. Customize the form fields if needed (e.g., add more languages or voice options). Test the Workflow: Submit the form with the required details (text, phone number, voice, and language). The workflow will send a voice call to the specified number, and the recipient will hear the text read aloud. Optional Customization: Modify the workflow to include additional features, such as: Adding more languages or voice options. Sending multiple voice calls in bulk. Integrating with other APIs or services for advanced use cases.
by Colleen Brady
Who is this for? This workflow is built for anyone who works with YouTube content, whether you're: A learner looking to understand a video’s key points A content creator repurposing video material A YouTube manager looking to update titles, descriptions A social media strategist searching for the most shareable clips Don't just ask questions about what's said. Find out what's going on in a video too. Video Overview: https://www.youtube.com/watch?v=Ovg_KfKxnC8 What problem does this solve? YouTube videos hold valuable insights, but watching and processing them manually takes time. This workflow automates: Quick content extraction**: Summarize key ideas without watching full videos Visual analysis**: Understand what’s happening beyond spoken words Clip discovery**: Identify the best moments for social sharing How the workflow works This n8n-powered automation: Uses Google’s Gemini 1.5 Flash AI for intelligent video analysis Provides multiple content analysis templates tailored to different needs What makes this workflow powerful? The easiest place to start is by requesting a summary or transcript. From there, you can refine the prompts to match your specific use case and the type of video content you’re working with. But what's even more amazing? You can ask questions about what’s happening in the video — and get detailed insights about the people, objects, and scenes. It's jaw-dropping. This workflow is versatile — the actions adapt based on the values set. That means you can use a single workflow to: Extract transcripts Generate an extended YouTube description Write a summary blog post You can also modify the trigger based on how you want to run the workflow — use a webhook, connect it to an event in Airtable, or leave it as-is for on-demand use. The output can then be sent anywhere: Notion, Airtable, CMS platforms, or even just stored for reference. How to set it up Connect your Google API key Paste a YouTube video URL Select an analysis method Run the workflow and get structured results Analysis Templates Basic & Timestamped Transcripts**: Extract spoken content Summaries**: Get concise takeaways Visual Scene Analysis**: Detect objects, settings, and people Clip Finder**: Locate shareable moments Actionable Insights**: Extract practical information Customization Options Modify templates to fit your needs Connect with external platforms Adjust formatting preferences Advanced Configuration This workflow is designed for use with gemini-1.5-flash. In the future, you can update the flow to work with different models or even modify the HTTP request node to define which API endpoint should be used. It's also been designed so you can use this flow on it's own or add to a new / existing worflow. This workflow helps you get the most out of YouTube content — quickly and efficiently.
by James Li
Summary Onfleet is a last-mile delivery software that provides end-to-end route planning, dispatch, communication, and analytics to handle the heavy lifting while you can focus on your customers. This workflow template loads in a spreadsheet from your local storage and automatically creates Onfleet tasks on a one-time basis upon workflow trigger. You can use this workflow as a task importer. Configurations Update the Read Binary File node with the absolute file path to the local spreadsheet of interest Update the Onfleet node with your own Onfleet credentials, to register for an Onfleet API key, please visit https://onfleet.com/signup to get started You can easily change how the Onfleet task is created by mapping to additional data in the spreadsheet For import templates, visit Onfleet Support to learn more 👍
by WeblineIndia
This n8n workflow automates the process of capturing and storing incoming email details in a structured spreadsheet format, such as Google Sheets or Excel. Whenever a new email is received, the workflow extracts key details—including the sender’s email, subject, email body, and optional attachments—and logs them as a new row in the spreadsheet. You can customise this workflow to extract additional details, filter emails based on specific criteria, or send notifications when new entries are added. Pre-conditions & Requirements Before setting up this workflow, ensure that: You have access to the email provider (e.g., Gmail, Outlook, or IMAP-supported email services). The Gmail Node must be enabled in n8n. You must authenticate n8n with Google OAuth2 to access your inbox. Ensure that the Gmail API is enabled in the Google Cloud Console. You have an existing Google Sheet where data will be stored. The Google Sheets API is enabled. You authenticate n8n with your Google account. Steps Step 1: Add the Gmail Trigger Node Click on "Add Node" and search for "Gmail". Select "Gmail Trigger" and click to add it. Under Authentication, click "Create New" and authenticate with your Google account. (If you have already connected your Google account, simply select it.) In the Trigger Event field, select "Message Received". Under Filters, you can specify: Label/Mailbox: If you want to listen to emails from a specific folder (optional). From Address: If you only want to receive emails from specific senders (optional). Click "Execute Node" to test the connection. Click "Save". What This Does: This node listens for new incoming emails in your Gmail inbox. Step 2: Store Email Data in Google Sheets Click on "Add Node" and search for "Google Sheets" (or Microsoft Excel, if applicable) Under Authentication, connect your Google account Select the target Spreadsheet and Sheet Name where the data will be stored Set the Operation to "Append Row" Map the extracted email data to the correct columns. Click "Execute Node" to test and verify data storage Click "Save" What This Does: This node automatically adds a new row for each incoming email, ensuring a structured and searchable email log. Final Step Attach both node and execute the workflow. Who’s behind this? WeblineIndia’s AI development team. We've delivered 3500+ software projects across 25+ countries since 1999. From no-code automations to complex AI systems — our AI team builds tools that drive results. Looking to hire AI developers? Start with us.
by Jonathan
This is the fourth workflow for the Mattermost Standup Bot. This workflow sends the team a message every morning to ask them three standup questions. What have you accomplished since your last report? What do you want to accomplish until your next report? Is anything blocking your progress? Once answered, the answers are sent to a Mattermost channel. The "Read Config" nodes will need to be updated to point to the ID of the "Standup Bot - Read Config" workflow and the "Override Config" node will need to point to "Standup Bot - Override Config"
by Eduard
An example workflow for a multilanguage Telegram bot. It allows adding many new languages to the bot without editing the workflow. Important note! Due to some breaking API changes in NocoDB some of its node options are not working at the moment (MAY 2022). These two nodes were replaced by HTTP request nodes. Functionality is still the same.
by rangelstoilov
This workflow goes through the teachable webhook request types and adds a user, updates him and tags him with #unsubscribe or removes the #unsubscribe tag. It also tags the user with the tag of the name of the course. Enjoy!
by Luciano Gutierrez
Supabase AI Agent with RAG & Multi-Tenant CRUD Version: 1.0.0 n8n Version: 1.88.0+ Author: Koresolucoes License: MIT Description A stateful AI agent workflow powered by Supabase and Retrieval-Augmented Generation (RAG). Enables persistent memory, dynamic CRUD operations, and multi-tenant data isolation for AI-driven applications like customer support, task orchestration, and knowledge management. Key Features: 🧠 RAG Integration: Leverages OpenAI embeddings and Supabase vector search for context-aware responses. 🗃️ Full CRUD: Manage agent_messages, agent_tasks, agent_status, and agent_knowledge in real time. 📤 Multi-Tenant Ready: Supports per-user/organization data isolation via dynamic table names and webhooks. 🔒 Secure: Role-based access control via Supabase Row Level Security (RLS). Use Cases Customer Support Chatbots: Persist conversation history and resolve queries using institutional knowledge. Automated Task Management: Track and update task statuses dynamically. Knowledge Repositories: Store and retrieve domain-specific information for AI agents. Instructions 1. Import Template Go to n8n > Templates > Import from File and upload this workflow. 2. Configure Credentials Add your Supabase and OpenAI API keys under Settings > Credentials. 3. Set Up Multi-Tenancy (Optional) Dynamic Webhook Path**: Replace the default webhook path with /mcp/tool/supabase/:userId to enable per-user routing. Table Names**: Use a Set Node to dynamically generate table names (e.g., agent_messages_{{userId}}). 4. Activate & Test Enable the workflow and send test requests to the webhook URL. Tags AI Agent RAG Supabase CRUD Multi-Tenant OpenAI Automation Screenshots License This template is licensed under the MIT License.