by phil
How it works 🗣️> 📖 I set up this workflow to convert any audio or video file into structured text using the new ElevenLabs Scribe model, one of the best Speech-to-Text AIs, available in 99+ languages. This workflow integrates seamlessly with n8n and leverages the ElevenLabs Scribe API to: This workflow seamlessly integrates with n8n to: ✅ Upload audio/video files automatically ✅ Transcribe them with industry-leading accuracy in any language ✅ Export the text for further processing (summaries, subtitles, SEO content, etc.) 👉 Try the new ElevenLabs Scribe model now: Convert speech to text instantly Business Cases 🔹 Podcast Transcriptions – Convert podcast episodes into blog posts for SEO and accessibility 🔹 YouTube Subtitles – Generate captions automatically for increased engagement 🔹 Legal & Compliance – Accurately transcribe meetings, interviews, or customer calls 🔹 E-learning – Turn lectures and webinars into structured course notes 🔹 SEO & Content Marketing – Repurpose videos into articles, quotes, and social media content 💡 Boost your productivity with the new Scribe model → Start with ElevenLabs Scribe Set up steps 🚀 Quick & simple setup in n8n – Upload your file, select the model (scribe_v1), and let the AI handle the rest via the ElevenLabs API. ⸻ 📢 Why I Chose the New ElevenLabs Scribe Model? I wanted the most accurate and reliable transcription tool for my workflow. After testing different options, Scribe outperformed Google Gemini & OpenAI Whisper in independent benchmarks. It delivers high-quality transcriptions, even in underserved languages like Serbian, Mongolian, and many more. ✅ Transcribes in 99+ languages ✅ Fast, accurate, and easy to integrate ✅ Suitable for content creators, businesses, and professionals 🔗 Get started now and revolutionize your workflow with the new Scribe model → Try Scribe AI today 🚀 Phil | Inforeole
by Joseph
Note: Now includes an Apify alternative for Rapid API (Some users can't create new accounts on Rapid API, so I have added an alternative for you. But immediately you are able to get access to Rapid API, please use that option, it returns more detailed data). *Scroll to bottom for APify setup guide* This n8n workflow automates LinkedIn lead generation, enrichment, and activity analysis using Apollo.io, RapidAPI, Google Sheets and Mail.so. Perfect for sales teams, founders, B2B marketers, and cold outreach pros who want personalized lead insights to drive better conversion rates. ⚙️ How This Workflow Works The workflow is broken down into several key steps, each designed to help you build and enrich a valuable list of LinkedIn leads: 1. 🔑 Lead Discovery (Keyword Search via Apollo) Pulls leads using Apollo.io's API based on keywords, industries, or job titles. Saves lead name, title, company, and LinkedIn URL to your Google Sheet. You can replace the trigger node from the form node to a webhook, whatsapp, telegram, etc, any way for you to send over your query variables over to initiate the workflow. 2. 🧠 Username Extraction (from LinkedIn URL) Extracts the LinkedIn username from profile URLs using a simple script node. This is required for further enrichment via RapidAPI. 3. ✉️ Email Lookup (via Apollo User ID) Uses the Apollo User ID to retrieve the lead’s verified work email. Ensures high-quality leads with reliable contact info. To double check that the email is currently valid, we use the mail.so api and filter out emails that fail deliverability and mx-record check. We don't wanna risk sending emails to no longer existent addresses, right? 4. 🧾 Profile Summary Enrichment (via RapidAPI) Queries the LinkedIn Data API to fetch a lead’s profile summary/bio. Gives you a deeper understanding of their background and expertise. 5. 📰 Recent Activity Collection (Posts & Reposts) Retrieves recent posts or reposts from each lead’s profile. Great for tailoring outreach with reference to what they’re currently talking about. 6. 🗂️ Leads Database Update All enriched data is written to the same Google Sheet. New columns are filled in without overwriting existing data. ✅ Smart Retry & Row Status Logic Every subworkflow includes a fail-safe mechanism to ensure: ✅ Each row has status columns (e.g., done, failed, pending). 🕒 A scheduled retry workflow resets failed rows to pending after 2 weeks (customizable). 💬 This gives failed enrichments another chance to be processed later, reducing data loss. 📋 Google Sheets Setup Template 1: Apollo Leads Scraping & Enrichment Template 2: Enriched Leads Database Make a copy to your Drive and use. Columns will be filled as each subworkflow runs (email, summary, interests, etc.) 🔐 Required API Keys To use this workflow, you’ll need the following credentials: 🧩 Apollo.io Sign up and get your key here: Apollo.io API Keys ⚠️ Important: Toggle the “Master API Key” option to ON when generating your key. This ensures the same key can be used for all Apollo endpoints in this workflow. 🌐 RapidAPI (LinkedIn Data API) Subscribe to the API here: LinkedIn Data API on RapidAPI Use the key in the x-rapidapi-key header in the relevant nodes. ✉️ Mail.so Sign up and get your key here: Mail.so API > 💡 For both APIs, set up the credentials in n8n as “Generic Credential” types. This way, you won’t need to reconfigure the headers in each node. 🛠️ Customization Options Modify the Apollo filters (location, industry, seniority) to target your ideal customers. Change retry interval in the scheduler (e.g., weekly instead of 2 weeks). Connect the database to your email campaign tool like Mailchimp or Instantly.ai. Replace the AI nodes with your desired AI agents and customize the system messages further to get desired results. 🆕 Apify Update Guide To use this workflow, you’ll need the following credentials: Login to Apify, then open this link; https://console.apify.com/actors/2SyF0bVxmgGr8IVCZ/ Click on integrations and scroll down to API Solutions and select "Use API endpoints". Scroll to "Run Actor synchronously and get dataset items" and copy the actor endpoint url then paste it in the placeholder inside the http node of Apify alternative flow "apify-actor-endpoint". That's it, you are set to go. I am available for custom n8n workflows, if you like my work, please get in touch with me on email at joseph@uppfy.com
by Davide
How It Works This workflow creates an AI-powered Telegram chatbot with session management, allowing users to: Start new conversations** (/new). Check current sessions** (/current). Resume past sessions** (/resume). Get summaries** (/summary). Ask questions** (/question). Key Components: Session Management**: Uses Google Sheets to track active/expired sessions (storing SESSION IDs and STATE). /new creates a session; /resume reactivates past ones. AI Processing**: OpenAI GPT-4 generates responses with contextual memory (via Simple Memory node). Summarization: Condenses past conversations when requested. Data Logging**: All interactions (prompts/responses) are saved to Google Sheets for audit and retrieval. User Interaction**: Telegram commands trigger specific actions (e.g., /question [query] fetches answers from session history). Main Advantages 1. Multi-session Handling Each user can create, manage, and switch between multiple sessions independently, perfect for organizing different conversations without confusion. 2. Persistent Memory Conversations are stored in Google Sheets, ensuring that chat history and session states are preserved even if the server or n8n instance restarts. 3. Commands for Full Control With intuitive commands like /new, /current, /resume, /summary, and /question, users can manage sessions easily without needing a web interface. 4. Smart Summarization and Q&A Thanks to OpenAI models, the workflow can summarize entire conversations or answer specific questions about past discussions, saving time and improving the chatbot’s usability. 5. Easy Setup and Scalability By using Google Sheets instead of a database, the workflow is easy to clone, modify, and deploy — ideal for quick prototyping or lightweight production uses. 6. Modular and Extensible Each logical block (new session, get current session, resume, summarize, ask question) is modular, making it easy to extend the workflow with additional features like analytics, personalized greetings, or integrations with CRM systems. Setup Steps Prerequisites: Telegram Bot Token**: Create via BotFather. Google Sheets**: Duplicate this template. Two sheets: Session (active/inactive sessions) and Database (chat logs). OpenAI API Key**: For GPT-4 responses. Configuration: Telegram Integration: Add your bot token to the Telegram Trigger and Telegram Send nodes. Google Sheets Setup: Authenticate the Google Sheets nodes with OAuth. Ensure sheet names (Session, Database) and column mappings match the template. OpenAI & Memory: Add your API key to the OpenAI Chat Model nodes. Adjust contextWindowLength in the Simple Memory node for conversation history length. Testing: Use Telegram commands to test: /new: Starts a session. /question [query]: Tests AI responses. /summary: Checks summarization. Deployment: Activate the workflow; the bot will respond to Telegram messages in real-time. Need help customizing? Contact me for consulting and support or add me on Linkedin.
by Max aka Mosheh
How it works • Automates multi-platform social media posting (Instagram, YouTube, TikTok, etc.) using AI-generated content • Integrates Airtable, n8n, and Blotato for full content scheduling and publishing • Supports both image and video uploads with dynamic text and account routing Set up steps • Takes ~15–30 minutes to set up depending on how many platforms you connect • Requires Airtable personal access token and Blotato API key • Uses sticky notes throughout the workflow to explain config, tokens, and troubleshooting clearly
by KlickTipp
Community Node Disclaimer: This workflow uses KlickTipp community nodes. How It Works: Facebook Lead Ads to KlickTipp Integration: This workflow automatically transfers lead information submitted via Facebook Lead Ads into KlickTipp. It is ideal for automating course registrations or similar campaigns, enabling targeted email sequences based on user input. Data Handling: Lead data from Facebook is received via webhook, matched to KlickTipp’s custom fields, and the contact is tagged for segmentation and automation. Key Features Webhook Trigger for Facebook Lead Ads: Captures new lead form submissions from Facebook, including: Name Email address Chosen course Preferred payment method Optional comments Data Mapping & Validation: Maps Facebook field values to pre-defined custom fields in KlickTipp Subscriber Management in KlickTipp: Adds or updates leads as subscribers in KlickTipp Includes mapping to custom fields such as: Facebook_Leads_Ads_Kursauswahl Facebook_Leads_Ads_Zahlungsweise Facebook_Leads_Ads_Kommentar Assigns relevant tags for automated campaign triggers Setup Instructions 1. Prepare KlickTipp Custom Fields: Before using the workflow, create the following custom fields in KlickTipp under → Contacts → Custom fields: | Name | Datentyp | | - | - | | Facebook_Leads_Ads_Kommentar | Zeile | | Facebook_Leads_Ads_Kursauswahl | Zeile | | Facebook_Leads_Ads_Zahlungsweise | Zeile | 2. Facebook Lead Ads Setup: Create a lead form under Facebook Ads Manager Include custom fields for course interest, payment preference, and comments 3. Set Up Facebook Webhook in n8n: Use the Facebook Lead Ads node to create a webhook Authenticate your Facebook account Choose the Page and corresponding lead form Save and activate the webhook 4. Map Data to KlickTipp Fields: Open the KlickTipp node to Authenticate with your credentials (username&password) Map the fields from the Facebook webhook to the according custom fields in KlickTipp. Testing & Deployment Run a Test: Use Meta’s testing tool to generate a test lead Run the n8n workflow once manually Note: Facebook test email (e.g., test@fb.com) is invalid—expect an error in KlickTipp during testing. You can pin the output of the node and manipulate the address to a valid test-address. Workflow Logic Webhook Trigger from Facebook: Initiates workflow upon new lead form submission Add or Update Contact in KlickTipp: Submits mapped data into your KlickTipp account Benefits Automated Lead Management: No manual data transfers needed—new Facebook leads are instantly pushed to KlickTipp. Personalized Campaigns: Segment leads based on selected course or payment method for targeted follow-up emails. Notes: Customization: Adjust field mappings in the KlickTipp node based on your lead form structure. Ensure all required fields (email, opt-in, etc.) are mapped correctly. Resources: Use the Meta Lead Ads Testing Tool to simulate lead submissions during setup. Look into our knowledgebase article Send Facebook Leads to KlickTipp with Make or n8n to learn more. Use KlickTipp Community Node in n8n Automate Workflows: KlickTipp Integration in n8n
by Edisson Garcia
🚀 Message-Batching Buffer Workflow (n8n) This workflow implements a lightweight message-batching buffer using Redis for temporary storage and a JavaScript consolidation function to merge messages. It collects incoming user messages per session, waits for a configurable inactivity window or batch size threshold, consolidates buffered messages via custom code, then clears the buffer and returns the combined response—all without external LLM calls. 🔑 Key Features Redis-backed buffer** queues incoming messages per context_id. Centralized Config Parameters** node to adjust thresholds and timeouts in one place. Dynamic wait time** based on message length (configurable minWords, waitLong, waitShort). Batch trigger** fires on inactivity timeout or when buffer_count ≥ batchThreshold. Zero-cost consolidation** via built-in JavaScript Function (consolidate buffer)—no GPT-4 or external API required. ⚙️ Setup Instructions Extract Session & Message Trigger: When chat message received (webhook) or When clicking ‘Test workflow’ (manual). Map inputs: set variables context_id and message into a Set node named Mock input data (for testing) or a proper mapping node in production. Config Parameters Add a Set node Config Parameters with: minWords: 3 # Word threshold waitLong: 10 # Timeout (s) for long messages waitShort: 20 # Timeout (s) for short messages batchThreshold: 3 # Messages to trigger batch early All downstream nodes reference these JSON values dynamically. Determine Wait Time Node: get wait seconds (Code) JS code: const msg = $json.message || ''; const wordCount = msg.split(/\s+/).filter(w => w).length; const { minWords, waitLong, waitShort } = items[0].json; const waitSeconds = wordCount < minWords ? waitShort : waitLong; return [{ json: { context_id: $json.context_id, message: msg, waitSeconds } }]; Buffer Message in Redis Buffer messages: LPUSH buffer_in:{{$json.context_id}} with payload {text, timestamp}. Set buffer\_count increment: INCR buffer_count:{{$json.context_id}} with TTL {{$json.waitSeconds + 60}}. Set last\_seen: record last_seen:{{$json.context_id}} timestamp with same TTL. Check & Set Waiting Flag Get waiting\_reply: if null, Set waiting\_reply to true with TTL {{$json.waitSeconds}}; else exit. Wait for Inactivity WaitSeconds (webhook): pauses for {{$json.waitSeconds}} seconds before batch evaluation. Check Batch Trigger Get last\_seen and Get buffer\_count. IF (now - last_seen) ≥ waitSeconds * 1000 OR buffer_count ≥ batchThreshold, proceed; else use Wait node to retry. Consolidate Buffer consolidate buffer (Code): const j = items[0].json; const raw = Array.isArray(j.buffer) ? j.buffer : []; const buffer = raw.map(x => { try { return typeof x === 'string' ? JSON.parse(x) : x; } catch { return null; } }).filter(Boolean); buffer.sort((a, b) => new Date(a.timestamp) - new Date(b.timestamp)); const texts = buffer.map(e => e.text?.trim()).filter(Boolean); const unique = [...new Set(texts)]; const message = unique.join(' '); return [{ json: { context_id: j.context_id, message } }]; Cleanup & Respond Delete Redis keys: buffer_in, buffer_count, waiting_reply, last_seen (for the context_id). Return consolidated message to the user via your chat integration. 🛠 Customization Guidance Adjust thresholds* by editing the *Config Parameters** node. Change concatenation** (e.g., line breaks) by modifying the join separator in the consolidation code. Add filters** (e.g., ignore empty or system messages) inside the consolidation Function. Monitor performance**: for very high volume, consider sharding Redis keys by date or user segments. © 2025 Innovatex • Automation & AI Solutions • innovatexiot.carrd.co • LinkedIn
by Alex Kim
This workflow leverages n8n to perform automated Google Maps API queries and manage data efficiently in Google Sheets. It's designed to extract specific location data based on a given list of ZIP codes and categories. Features Queries the Google Maps API for location data using predefined ZIP codes and subcategories. Filters, de-duplicates, and organizes data into structured rows in Google Sheets. Implements exponential backoff retries to handle API rate limits. Logs and updates statuses directly in Google Sheets for easy tracking. Prerequisites Google OAuth Credentials: A configured Google Cloud project for Google Maps API and Sheets API access. Google Sheets: A sheet with ZIP codes and categories defined (e.g., "AZ Zips"). n8n Setup: A running instance of n8n with credentials configured for Google OAuth. Setup Instructions 1. Prepare Google Sheets Add the ZIP codes to the "AZ Zips" sheet. Define subcategories in another sheet (e.g., "Google Maps Categories"). Provide the sheet's URL in the Settings node of the workflow. 2. Configure API Access Set up Google OAuth credentials for Maps and Sheets APIs in n8n. Ensure your API key has access to the places.searchText endpoint. 3. Workflow Customization Modify textQuery parameters in the GMaps API node to match your query needs. Adjust trigger intervals as required (e.g., manual or scheduled execution). 4. Run the Workflow Execute the workflow manually or schedule periodic runs to keep your data updated. Notes This workflow includes robust error handling to retry failed API calls with exponential backoff. All data is organized and logged directly in Google Sheets for easy reference and updates. For more information or issues, feel free to reach out!
by Harsh Maniya
✨ Automate Daily Hindu Festival Posts on X (Twitter) with AI 🐦 This workflow automates the entire process of creating and publishing culturally rich social media content about Hindu festivals. It starts by building a comprehensive festival calendar for the year in a Google Sheet, then runs daily to post engaging, bilingual updates on X (formerly Twitter). 🗓️ The workflow uses a sophisticated dual-AI system: Google Gemini acts as a content generator creating multiple post options ✍️, while OpenAI's GPT-4o Mini acts as a discerning social media manager, selecting the very best post for publication. 🧠 This ensures your content is not only automated but also high-quality and optimized for engagement. How it works ⚙️ This workflow operates in two distinct stages: Part 1: Data Population (One-Time Manual Run) 🔍 Fetch Festival Data: Manually trigger the workflow to scrape a list of 2025 Hindu festivals from a public calendar using the Jina AI Reader API. ✨ Enrich with AI: For each festival, a Google Gemini model researches and extracts key details: The festival's name in Hindi. A concise description of its significance in English. A Hindi translation of the description. 📝 Store in Google Sheets: The enriched data for the entire year is then systematically organized and saved in a designated Google Sheet, creating a content calendar. Part 2: Daily Automated Posting ⏰ Daily Trigger: A Schedule Trigger node activates the workflow every morning at 8 AM. ✔️ Check for Festivals: The workflow gets today's date and checks the Google Sheet to see if there is a corresponding festival. 🎨 Generate Post Options: If a festival is scheduled for the day, Google Gemini generates three distinct and engaging post options for X. Each post is crafted to be concise, use a mix of English and Hindi, and include relevant emojis and hashtags. 🏆 Select the Best Post: OpenAI's GPT-4o Mini then evaluates the three generated posts based on criteria like clarity, engagement potential, and effective use of language. It selects the single most impactful post. 🚀 Publish to X: The winning post is automatically published to your connected X account. Features ⭐ 🤖 Fully Automated Content Pipeline: From data collection to final publication, no manual intervention is needed after the initial setup. 🧠 Dual-AI System: Leverages Google Gemini for creative generation and OpenAI GPT-4o Mini for critical selection, ensuring high-quality output. 🗣️ Bilingual Content: Creates posts that blend English and Hindi to enhance cultural connection and broaden audience reach. 🎯 Dynamic and Contextual: Posts are automatically tailored to the specific festival of the day. 🗓️ Centralized Content Calendar: Uses Google Sheets as a reliable, easy-to-manage database for your yearly social media plan. Prerequisites 🛠️ Before you can use this workflow, you will need to: Have an n8n instance set up. Create a new, empty Google Sheet. Obtain credentials for the following services: Jina AI: Get a free Bearer Token from the Jina AI API page. Google: Set up Google credentials (OAuth2) for the Google Sheets and Google Gemini nodes. OpenAI: Get an API key from your OpenAI Platform dashboard. X (Twitter): Set up X credentials (OAuth2) to allow n8n to post on your behalf. How to use this template 🚀 🔑 Set up Credentials: In n8n, go to the "Credentials" section and add new credentials for Jina AI, Google (for both Sheets and Gemini), OpenAI, and X using the API keys and tokens you obtained. 📊 Configure the Google Sheet: Create a new Google Sheet. In the first row, create the following headers exactly as written: Name of the Festival Date English Description (Note the trailing space) Hindi Description Open the "Add all Rows at once" and "Fetch Data of Matched Date" nodes in the workflow and connect them to your Google account and select the Sheet you just created. ▶️ Populate the Data (Manual Step): Click the "Execute workflow" button on the When clicking ‘Execute workflow’ node. This will run the first part of the workflow, filling your Google Sheet with festival data for 2025. This only needs to be done once. ✅ Activate the Workflow: Save the workflow and then activate it using the toggle at the top right of the n8n canvas. The workflow will now run automatically every day to post about the day's festival. Extending the Workflow 💡 🖼️ Add Image Generation: Integrate a node like DALL-E or Midjourney to generate a unique image for each festival and include it in the tweet. 🌐 Cross-Platform Posting: Duplicate the final "Post to X" node and adapt it to post on other platforms like Facebook, LinkedIn, or Telegram. 🎨 Change the Tone: Modify the prompts in the "Generate Posts" and "Select Best Post" nodes to change the style of your social media content—make it more formal, humorous, or poetic. 📅 Use a Different Year: Update the URL in the "Get Festival Data" node to fetch data for a different year. The current URL is https://r.jina.ai/https://www.calendarlabs.com/2025-hindu-calendar.
by Usman Liaqat
Description: This n8n workflow helps you capture Slack messages via a webhook and download attached media files (like images, documents, or videos) directly from those messages. How it works: Slack Trigger (Webhook) – Listens for new messages in a Slack channel where the app is added. HTTP Request – Uses the file's private download URL to retrieve the media securely. Use cases: Download files shared by team members in a Slack channel. Capture and process media from specific project or support channels. Prepare media for later processing, archiving, or review. Requirements: Slack app with appropriate permissions (files:read, channels:history, etc.). Slack webhook set up to listen to channel messages. - Authenticated HTTP request to handle private Slack file URLs. This template is ideal for users who want full control over file handling triggered by real-time Slack messages.
by Joseph LePage
This workflow creates an automated system for monitoring and receiving notifications about new videos from your favorite YouTube channels through RSS feeds, with customizable email and Telegram notifications. 🌟 Key Features 📡 RSS Feed Management Accepts custom YouTube channel IDs or uses default channels Automatically creates RSS feeds for each YouTube channel Monitors channels for new video uploads Labels and filters recent videos within a 3-day window (change this as required) 📨 Multi-Channel Notification System Sends Telegram notifications with video thumbnails and links Delivers customized email notifications in two formats: Individual emails for each new video Single digest email containing all new videos ⚙️ Content Processing Fetches detailed video information using YouTube API Creates responsive HTML email templates with video previews Includes video thumbnails, titles, descriptions, and direct links Maintains professional formatting across different email clients 🛠️ Setup Requirements 🔑 API Configuration YouTube Data API credentials Gmail account for sending notifications Telegram bot token and chat ID OpenAI API key for content processing 📋 Channel Management Add YouTube channel IDs through form input Configure default channel list Set notification preferences Adjust monitoring schedule This workflow is perfect for content creators, marketers, or anyone wanting to stay updated with their favorite YouTube channels through automated, professionally formatted notifications delivered via email and Telegram.
by JPres
👥 Who Is This For? Content creators, marketing teams, and channel managers who need to streamline video publishing with optimized metadata and scheduled releases across multiple videos. 🛠 What Problem Does This Solve? Manual YouTube video publishing is time-consuming and often results in inconsistent descriptions, tags, and scheduling. This workflow fully automates: Extracting video transcripts via Apify for metadata generation Creating SEO-optimized descriptions and tags for each video Setting videos to private during initial upload (critical for scheduling) Implementing scheduled publishing at strategic times Maintaining consistent branding and formatting across all content 🔄 Node-by-Node Breakdown | Step | Node Purpose | |------|--------------| | 1 | Every Day (Scheduler) | Trigger workflow on a regular schedule | | 2 | Get Videos to Harmonize | Retrieve videos requiring metadata enhancement | | 3 | Get Video IDs (Unpublished) | Filter for videos that need publishing | | 4 | Loop over Video IDs | Process each video individually | | 5 | Get Video Data | Retrieve metadata for the current video | | 6 | Loop over Videos with Parameter IS | Set parameters for processing | | 7 | Set Videos to Private | Ensure videos are private (required for scheduling) | | 8 | Apify: Get Transcript | Extract video transcript via Apify | | 9 | Fetch Latest Videos | Get most recent channel content | | 10 | Loop Over Items | Process each video item | | 11 | Generate Description, Tags, etc. | Create optimized metadata from transcript | | 12 | AP Clean ID | Format identifiers | | 13 | Retrieve Generated Data | Collect the enhanced metadata | | 14 | Adjust Transcript Format | Format transcript for better processing | | 15 | Update Video's Metadata | Apply generated description and tags to video | ⚙️ Pre-conditions / Requirements n8n with YouTube API credentials configured Apify account with API access for transcript extraction YouTube channel with upload permissions Master templates for description formatting Videos must be initially set to private for scheduling to work ⚙️ Setup Instructions Import this workflow into your n8n instance. Configure YouTube API credentials with proper channel access. Set up Apify integration with appropriate actor for transcript extraction. Define scheduling parameters in the Every Day node. Configure description templates with placeholders for dynamic content. Set default tags and customize tag generation rules. Test with a single video before batch processing. 🎨 How to Customize Adjust prompt templates for description generation to match your brand voice. Modify tag selection algorithms based on your channel's SEO strategy. Create multiple publishing schedules for different content categories. Integrate with analytics tools to optimize publishing times. Add notification nodes to alert when videos are successfully scheduled. ⚠️ Important Notes Videos MUST be uploaded as private initially - the Publish At logic only works for private videos that haven't been published before. Publishing schedules require videos to remain private until their scheduled time. Transcript quality affects metadata generation results. Consider YouTube API quotas when scheduling large batches of videos. 🔐 Security and Privacy API credentials are stored securely within n8n. Transcripts are processed temporarily and not stored permanently. Webhook URLs should be protected to prevent unauthorized triggering. Access to the workflow should be limited to authorized team members only.
by PollupAI
This n8n workflow streamlines the onboarding process for new customers by automating personalized email communication, calendar scheduling, and contact assignment in HubSpot. It is perfect for businesses looking to ensure a smooth and personalized onboarding experience for new clients. 🧑💼 Who is this for? Customer success teams who need to onboard new clients efficiently. Sales teams who want to ensure smooth transitions from prospect to customer. Small businesses that want to automate customer onboarding without complex systems. 🧩 What problem is this workflow solving? This workflow reduces the manual effort involved in onboarding new customers by: Automatically sending personalized welcome emails. Scheduling a welcome meeting using a calendar tool. Assigning the customer to a Customer Success Manager (CSM) in HubSpot. ⚙️ What this workflow does Trigger via Webhook or HubSpot: The workflow can be triggered either by a webhook (direct API call) or a HubSpot trigger (e.g., when a new contact is created). HubSpot Connection: Retrieves the list of HubSpot owners (users with contact access). Identifies the owner of the new contact. Calendar Management: Utilizes a Calendar Agent to schedule a welcome meeting with the new customer. The Calendar Agent can create, update, or delete events as needed. Personalized Email Creation: Uses an AI-powered Email Writer (OpenAI) to generate a personalized welcome email. Transforms the email text into HTML for a polished format. Email Sending via Gmail: Sends the personalized email to the customer using Gmail. Sets the new contact’s owner in HubSpot for further communication tracking. 🛠️ Setup Webhook Setup in n8n: Create a new workflow and add a Webhook node. Set the Webhook URL path (e.g., /webhook-customer-onboarding). Make sure the workflow is active. Webhook Setup in HubSpot: Go to HubSpot Developer Account. Navigate to Settings > Integrations > Webhooks. Create a new webhook and set the URL as the n8n Webhook URL. Choose POST as the request method. Test the webhook to ensure it triggers the workflow in n8n. Calendar Agent Configuration: The Calendar Agent can be configured to create, update, or delete events. Connect it to your calendar tool (Google Calendar, Outlook, etc.). Customize the calendar event details (title, description, time). Email Writer Setup: Customize the AI prompt in the Email Writer node to match your brand’s voice. Adjust the email text format for your specific needs. Gmail Integration: Connect your Gmail account in n8n. Set the recipient email to the new customer’s email address. ✏️ How to customize this workflow to your needs Modify the AI-Powered Email**: Adjust the email prompt for the AI model to create a different welcome message. Change the email format or add custom variables (e.g., customer name, service details). Customize Calendar Settings**: Set default time slots for welcome meetings. Specify which calendar to use for scheduling. Add Additional Steps**: Extend the workflow to automatically assign the customer to a specific HubSpot list. Add a follow-up email or survey after the welcome meeting. This workflow is perfect for businesses seeking an efficient and personalized onboarding process, ensuring new customers feel welcomed and supported from day one.