by David Ashby
Complete MCP server exposing all Gong Tool operations to AI agents. Zero configuration needed - all 4 operations pre-built. ⚡ Quick Setup Need help? Want access to more workflows and even live Q&A sessions with a top verified n8n creator.. All 100% free? Join the community Import this workflow into your n8n instance Activate the workflow to start your MCP server Copy the webhook URL from the MCP trigger node Connect AI agents using the MCP URL 🔧 How it Works • MCP Trigger: Serves as your server endpoint for AI agent requests • Tool Nodes: Pre-configured for every Gong Tool operation • AI Expressions: Automatically populate parameters via $fromAI() placeholders • Native Integration: Uses official n8n Gong Tool tool with full error handling 📋 Available Operations (4 total) Every possible Gong Tool operation is included: 🔧 Call (2 operations) • Get call • Get many calls 👤 User (2 operations) • Get user • Get many users 🤖 AI Integration Parameter Handling: AI agents automatically provide values for: • Resource IDs and identifiers • Search queries and filters • Content and data payloads • Configuration options Response Format: Native Gong Tool API responses with full data structure Error Handling: Built-in n8n error management and retry logic 💡 Usage Examples Connect this MCP server to any AI agent or workflow: • Claude Desktop: Add MCP server URL to configuration • Custom AI Apps: Use MCP URL as tool endpoint • Other n8n Workflows: Call MCP tools from any workflow • API Integration: Direct HTTP calls to MCP endpoints ✨ Benefits • Complete Coverage: Every Gong Tool operation available • Zero Setup: No parameter mapping or configuration needed • AI-Ready: Built-in $fromAI() expressions for all parameters • Production Ready: Native n8n error handling and logging • Extensible: Easily modify or add custom logic > 🆓 Free for community use! Ready to deploy in under 2 minutes.
by PollupAI
Never forget to send a satisfaction survey again! This workflow helps you automatically send CSAT surveys when a Freshdesk ticket is marked “Resolved” – and logs every response in Google Sheets for easy analysis, reporting, and escalation workflows. 💡 Built for CS and ops teams who care about real feedback This template is perfect for: Customer Support Teams who want timely, consistent survey delivery after every resolved ticket. Ops Leads & Admins tired of managing spreadsheets and survey tools manually. Businesses using Freshdesk looking for a no-code feedback loop. Automation fans who want to track, trigger, and take action — automatically. 🧩 What problem does it solve? Manual survey processes are slow, inconsistent, and hard to scale. This automation ensures: Fast survey delivery when experiences are still fresh. No duplicate emails thanks to a built-in tracking system. Centralized feedback in a Google Sheet — no more digging through platforms. Data you can act on, like triggering Slack alerts for poor scores. ⚙️ How it works 📨 Part 1: Auto-send the survey when a ticket is resolved Trigger: Workflow runs on a schedule (or manually via “Test”). Pull ticket status from Freshdesk. Compare ticket status to the last known status in Google Sheets. Detect resolution: If status = “Resolved” (ID 4), move forward. Update the Google Sheet to track that the survey was sent. Fetch the customer’s email from Freshdesk. Create & send the survey email, personalized with ticket info and your brand. Convert Markdown → HTML for a well-formatted email. 📥 Part 2: Collect responses and store in Sheets Form Trigger: Customer clicks the survey link and fills in the form. Capture responses (e.g. rating + comments). Log feedback in a second Google Sheet for analysis. You can extend this by adding escalation steps (e.g. flagging 1–2 star ratings to managers). 🚀 Setup Instructions 🔐 Connect your tools Freshdesk**: Add your API credentials to the get tickets and get client nodes. Google Sheets**: Authenticate in the get existing tickets, update status, and save survey nodes. Email (SMTP)**: Add your SMTP details in the “Send Email” node, or swap in Gmail, SendGrid, etc. 🛠 Set your data In the Set your data node, enter: Your name, email, company, and position Your survey form link (see below) 🔗 Get the form link Activate the workflow (toggle it ON) Go to the “Survey” (Form Trigger) node Copy the Production URL Paste it into the survey link field in the Set your data node 🧾 Prepare your Google Sheets Sheet 1: Freshdesk Tickets (status tracking) Used by: get existing tickets update status Create a new empty Google Sheet. Add the Spreadsheet ID + Sheet Name into the nodes. Sheet 2: Feedback freshdesk (survey responses) Used by: save survey to google sheet Create a new sheet or tab. It will auto-create columns based on your survey form field labels. Add the Spreadsheet ID + Sheet Name/GID to the save node. 🔧 Customize the workflow 📝 Survey Questions Modify them in the Survey (Form Trigger) node. Adjust the save survey to google sheet node as needed (or use auto-map). 💬 Email Content Edit the subject and message in the Create the email text (Set) node. 🏷 Freshdesk Status ID If your “Resolved” status ID isn’t 4, update the second condition in the If ticket resolved node. 📉 Escalate poor feedback Add logic after the save survey to google sheet node: If rating is low: Notify Slack Create a new internal ticket Email a team lead 🔁 Schedule Trigger Adjust the Schedule Trigger node to your desired interval (e.g., hourly). 🔄 Use a Webhook Instead (Optional) If Freshdesk supports ticket webhook events, swap the schedule trigger for a Webhook Trigger node to send surveys instantly on ticket resolution. 🤖 Why Pollup AI is building this At Pollup AI, we help CS and support teams stop drowning in tools and manual tasks. This template is part of our growing AI agent library: plug-and-play automations that connect your tools, clean your data, and free up your time – without writing a line of code. Try this workflow and let Pollup AI handle the boring parts, so your team can focus on what customers are really saying. Learn more at Pollup AI
by David Ashby
Complete MCP server exposing all Jina AI Tool operations to AI agents. Zero configuration needed - all 3 operations pre-built. ⚡ Quick Setup Need help? Want access to more workflows and even live Q&A sessions with a top verified n8n creator.. All 100% free? Join the community Import this workflow into your n8n instance Activate the workflow to start your MCP server Copy the webhook URL from the MCP trigger node Connect AI agents using the MCP URL 🔧 How it Works • MCP Trigger: Serves as your server endpoint for AI agent requests • Tool Nodes: Pre-configured for every Jina AI Tool operation • AI Expressions: Automatically populate parameters via $fromAI() placeholders • Native Integration: Uses official n8n Jina AI Tool tool with full error handling 📋 Available Operations (3 total) Every possible Jina AI Tool operation is included: 🔧 Reader (2 operations) • Read URL content • Search web 🔧 Research (1 operations) • Perform deep research 🤖 AI Integration Parameter Handling: AI agents automatically provide values for: • Resource IDs and identifiers • Search queries and filters • Content and data payloads • Configuration options Response Format: Native Jina AI Tool API responses with full data structure Error Handling: Built-in n8n error management and retry logic 💡 Usage Examples Connect this MCP server to any AI agent or workflow: • Claude Desktop: Add MCP server URL to configuration • Custom AI Apps: Use MCP URL as tool endpoint • Other n8n Workflows: Call MCP tools from any workflow • API Integration: Direct HTTP calls to MCP endpoints ✨ Benefits • Complete Coverage: Every Jina AI Tool operation available • Zero Setup: No parameter mapping or configuration needed • AI-Ready: Built-in $fromAI() expressions for all parameters • Production Ready: Native n8n error handling and logging • Extensible: Easily modify or add custom logic > 🆓 Free for community use! Ready to deploy in under 2 minutes.
by Joseph
Here is your refined template description with detailed step-by-step instructions, markdown formatting, and customization guidance. YouTube Transcript Extraction Workflow This n8n workflow extracts and processes transcripts from YouTube videos using the YouTube Transcript API on RapidAPI. It allows users to retrieve subtitles from YouTube videos, clean them up, and return structured transcript data for further processing. Table of Contents Problem Statement & Target Audience Pre-conditions & API Requirements Step-by-Step Workflow Explanation Customization Guide How to Set Up This Workflow Problem Statement & Target Audience Who is this for? This workflow is ideal for content creators, researchers, and developers who need to: Extract subtitles from YouTube videos automatically. Format and clean** transcript data for readability. Use transcripts for summarization, content repurposing, or language analysis. Pre-conditions & API Requirements API Required YouTube Transcript API** (RapidAPI) n8n Setup Prerequisites A running n8n instance (Installation Guide) A RapidAPI account to access the YouTube Transcript API An API key from RapidAPI to authenticate requests Step-by-Step Workflow Explanation 1. Input YouTube Video URL (Trigger) This step provides a simple input form where users enter a YouTube video URL. 2. HTTP Request Node (Retrieve Transcript Data) Makes a POST request to the YouTube Transcript API via RapidAPI. Passes the video URL received from the input form. Uses an environment variable to store the API key securely. 3. Function Node (Process Transcript) Receives* the API response containing the *raw transcript**. Processes and cleans** the transcript: Removes unwanted characters. Formats text for readability. Handles errors** when no transcript is available. Outputs* both the *raw and cleaned transcript** for further use. 4. Set Field Node (Response Formatting) Structures** the processed transcript data into a user-friendly format. Returns** the final transcript data to the client. Customization Guide 1. Modify Transcript Cleaning Rules Update the Function Node to apply custom text processing, such as: Removing timestamps. Changing the output format (e.g., JSON, plain text). 2. Store Transcripts in a Database Add a Database Node (e.g., MySQL, PostgreSQL, or Firebase) to save transcripts. 3. Generate Summaries from Transcripts Integrate AI services (e.g., OpenAI, Google Gemini) to summarize transcripts. 4. Convert Transcripts into Speech Use ElevenLabs API to generate an AI-powered voiceover from transcripts. How to Set Up This Workflow Step 1: Import the Workflow into n8n Download or copy the workflow JSON file. Import it into your n8n instance. Step 2: Set Up the API Key Sign up for the YouTube Transcript API. Subscribe to the api. Copy and paste your api key where the "your_api_key" is. Step 3: Activate the Workflow Start the workflow in n8n. Enter a YouTube video URL in the input form. The workflow will return a cleaned transcript. This workflow ensures seamless YouTube transcript extraction and processing with minimal manual effort. 🚀
by Ferenc Erb
Overview An automation workflow that creates a complete REST API for digitally signing PDF documents using n8n webhooks. This service demonstrates how to implement secure document signing functionality through standardized API endpoints with file upload and download capabilities. Use Case This workflow is designed for developers and automation specialists who need to implement digital document signing. It's particularly useful for: Integrating PDF signing capabilities into existing document workflows API-based automation of signature processes Creating proof-of-concept implementations for document verification systems Learning n8n's webhook capabilities and file handling techniques Testing PDF signing in development environments before production implementation What This Workflow Does API-Based Document Management Exposes RESTful webhook endpoints for all document operations Handles multipart/form-data uploads for PDF documents Processes JSON payloads for signing configuration Provides download functionality for completed documents Digital Certificate Handling Uploads existing PFX/PKCS#12 digital certificates Generates new certificates with customizable attributes Securely manages certificate storage and access Associates certificates with signing operations Cryptographic PDF Signing Applies digital signatures using industry-standard cryptographic methods Embeds signature information within PDF document structure Validates document integrity through cryptographic verification Preserves original document while adding signature elements Webhook Integration System Routes different API methods to appropriate handlers Validates request payloads and file content Manages authentication through webhook paths Returns structured responses for integration with other systems Technical Architecture Components API Gateway: n8n webhook nodes that receive external requests Request Router: Switch nodes that direct operations based on method parameters Document Processor: Function nodes for PDF manipulation and verification Certificate Manager: Specialized nodes for cryptographic key operations Storage Interface: File operation nodes for document persistence Response Formatter: Nodes that structure API responses Integration Flow Client Request → Webhook Endpoint → Method Router → Processing Engine → Digital Signing → Storage → Response Generation → Client Response Setup Instructions Prerequisites n8n installation (minimum version 0.214.0) Node.js 14 or higher Required environment variable: NODE_FUNCTION_ALLOW_EXTERNAL: "node-forge,@signpdf/signpdf,@signpdf/signer-p12,@signpdf/placeholder-plain" Configuration Steps Import Workflow Import the workflow JSON into your n8n instance Activate the workflow to enable the webhooks Configure Storage Set the storage path variables in the workflow Ensure proper permissions on the storage directories Test API Endpoints Use the included test scripts to verify functionality Test PDF upload, certificate generation, and signing Integration Document the webhook URLs for integration with other systems Configure error handling according to your requirements Testing Methods Test the workflow functionality using various HTTP requests and JSON data: Upload PDF documents to the document processing endpoint Upload or generate digital certificates Execute PDF signing operations Download signed documents from the download endpoint Webhook Endpoints The workflow exposes two primary webhook endpoints that form a complete API for PDF digital signing operations: 1. Document Processing Endpoint (/webhook/docu-digi-sign) This endpoint handles all document and certificate operations: Method: Upload PDF HTTP: POST Content-Type: multipart/form-data Parameters: method, uploadType, fileName, fileData Method: Upload Certificate HTTP: POST Content-Type: multipart/form-data Parameters: method, uploadType, fileName, fileData Method: Generate Certificate HTTP: POST Content-Type: application/json Parameters: method, subjectCN, issuerCN, serialNumber, validFrom, validTo, password Method: Sign PDF HTTP: POST Content-Type: application/json Parameters: method, inputPdf, pfxFile, pfxPassword 2. Document Download Endpoint (/webhook/docu-download) This endpoint handles the retrieval of processed documents: Method: Download Signed PDF HTTP: GET Content-Type: application/json Parameters: method, fileType, fileName Key Workflow Sections The workflow is organized into logical sections with clear responsibilities: Request Processing**: Parses incoming webhook data Method Routing**: Directs requests to appropriate handlers Document Management**: Handles file operations and storage Cryptographic Operations**: Manages signing and certificate functions Response Formatting**: Structures and returns results
by Solido AI
How it works: The organizer continuously monitors your Gmail inbox. It analyzes sender and subject to categorize emails (Work, Purchases, Newsletter) and automatically applies labels. Based on the category, it performs specific actions, such as marking important emails or archiving newsletters. Set up steps: The initial setup requires Gmail access permission and defining the categorization rules and desired actions for each email type. This process can be configured in approximately 5 to 10 minutes, depending on the complexity of the rules you wish to establish.
by Akash Kankariya
🚀 Discover trending and viral YouTube videos easily with this powerful n8n automation! This workflow helps you perform bulk research on YouTube videos related to any search term, analyzing engagement data like views, likes, comments, and channel statistics — all in one streamlined process. ✨ Perfect for: Content creators wanting to find viral video ideas Marketers analyzing competitor content YouTubers optimizing their content strategy How It Works 🎯 1️⃣ Input Your Search Term — Simply enter any keyword or topic you want to research. 2️⃣ Select Video Format — Choose between short, medium, or long videos. 3️⃣ Choose Number of Videos — Define how many videos to analyze in bulk. 4️⃣ Automatic Data Fetch — The workflow grabs video IDs, then fetches detailed video data and channel statistics from the YouTube API. 5️⃣ Performance Scoring — Videos are scored based on engagement rates with easy-to-understand labels like 🚀 HOLY HELL (viral) or 💀 Dead. 6️⃣ Export to Google Sheets — All data, including thumbnails and video URLs, is appended to your Google Sheet for comprehensive review and easy sharing. Setup Instructions 🛠️ Google API Key Get your YouTube Data API key from Google Developers Console. Add it securely in the n8n credentials manager (do not hardcode). Google Sheets Setup Create a Google Sheet to store your results (template link is provided). Share the sheet with your Google account used in n8n. Update the workflow with your sheet's Document ID and Sheet Name if needed. Run the Workflow Trigger the form webhook via browser or POST call. Enter search term, format, and number of videos. Let it process and check your Google Sheet for insights! Features ✨ Bulk fetches the latest and top-viewed YouTube videos. Intelligent video performance scoring with emojis for quick insights 🔥🎬. Organizes data into Google Sheets with thumbnail previews 🖼️. Easy to customize search parameters via an intuitive form. Fully automated, no manual API calls needed. Get Started Today! 🌟 Boost your YouTube content strategy and stay ahead with this powerful viral video research automation! Try it now on your n8n instance and tap into the world of viral content like a pro 🎥💡
by Romain Jouhannet
Linear Project/Issue Status and End Date to Productboard feature Sync Sync project and issue data between Linear and Productboard to keep teams aligned. This workflow updates Productboard features with the status and end date from Linear projects or due date from Linear issues. It ensures consistent data and sends a Slack notification whenever changes are made. Features Listens for updates in Linear projects/issues. Maps Linear statuses to Productboard feature statuses. Updates Productboard feature details including timeframe. Sends a Slack notification summarizing the updates. Setup Linear Credentials: Add your Linear API credentials in n8n. Productboard Credentials: Configure the Productboard API credentials in n8n. Linear Projects or Issues: Select the Linear project(s) or Issue(s) you want to monitor for updates. Productboard Custom Field: Create a custom field in Productboard named "Linear". This field should store the URL of the Linear project or issue you want to sync. Retrieve the UUID of the custom field in Productboard and set it up in the "Get Productboard Feature ID" node. Slack Notification: Update the Slack node with the desired Slack channel ID. Activate the Workflow: Enable the workflow to automatically sync data when triggered by updates in Linear.
by David Levesque
Here's the corrected English text: Dropbox Folder Monitoring Workflow As we don't have (yet?) a Dropbox node "Watching new files" or "Watching folder", I created this central workflow to do it. How it works Triggered by Dropbox webhook I respond immediately to Dropbox to avoid webhook disabling Then I add/duplicate one branch per monitored folder, according to my needs In my case, I need to monitor several folders, like "vocal notes to process", "transcriptions to LinkedIn posts" or "quotes to add". This workflow shows 2 types of folder monitoring: Way #1: Each file in the monitored folder calls a sub-workflow Way #2: We get all files from the monitored folder and compare them to a database. If the file is not listed in DB, i supposed it's new one. Way #1 - We get all files from the monitored folder I set a variable folder_to_watch to indicate which folder to monitor. This step is here just to be homogeneous and allow setting the folder path only once in this branch. I list the folder files We keep only files (exclude folders) Then I call the specialized sub-workflow Way #2 - We want only new files from the monitored folder I set a variable folder_to_watch to indicate which folder to monitor I list the folder files and keep only files Meanwhile, I query my DB to get known files about this folder (I send the query to NocoDB (folder_to_watch,eq,{{ $json.folder_to_watch }})) Now I can exclude old files and keep only new ones by merging (I compare from Dropbox file id - as the file could be renamed by the user) I add the new file in DB to be sure to recognize it next time - I save the JSON Dropbox data: { "id":"{{ $json.id }}", "name":"{{ $json.name }}", "lastModifiedClient": "{{ $json.lastModifiedClient }}", "lastModifiedServer": "{{ $json.lastModifiedServer }}", "rev": "{{ $json.rev }}", "contentSize": {{ $json.contentSize }}, "type": "{{ $json.type }}", "contentHash": "{{ $json.contentHash }}", "pathLower": "{{ $json.pathLower }}", "pathDisplay": "{{ $json.pathDisplay }}", "isDownloadable": {{ $json.isDownloadable }} } And now I can call my sub-workflow :) My DB Columns details: folder_to_watch data (json/text) timestamp file_id (Dropbox file ID, to ease future searches) My vision: I have only one workflow in my n8n that monitors Dropbox folders/files This workflow calls the required sub-workflow specialized for the tasks required I will have as many branches as I have folders to monitor (if I have 5 different folders to watch, I will get 5 branches and 5 sub-workflows)
by Lucas Peyrin
How it works This template is a hands-on tutorial for one of n8n's most powerful data tools: the Compare Datasets node. It's the perfect next step after learning basic logic, showing you how to build robust data synchronization workflows. We use a simple Warehouse Audit analogy to make the concept crystal clear: Warehouse A:* Our main, "source of truth" database. This is the master list of what our inventory *should be. Warehouse B:** A second, remote database (like a Notion page or Google Sheet) that we need to keep in sync. The Compare Datasets Node:* This is our *Auditor**. It takes both inventory lists and meticulously compares them to find any discrepancies. The Auditor then sorts every item into one of four categories, which correspond to the node's four outputs: In A only: New products found in our main warehouse that need to be added to Warehouse B. Same: Products that match perfectly in both warehouses. No action needed! Different: Products that exist in both places but have different details (e.g., stock count). These need to be updated in Warehouse B. In B only: Extra products found in Warehouse B that aren't in our master list. These need to be deleted. This pattern is the foundation for any two-way data sync you'll ever need to build. Set up steps Setup time: 0 minutes! This workflow is a self-contained tutorial and requires no setup or credentials. Click "Execute Workflow" to start the audit. Explore the two Set nodes ("Warehouse A" and "Warehouse B") to see the initial data we are comparing. Click on "The Auditor" (Compare Datasets node) to see how it's configured to use product_id as the matching key. Follow the outputs to the four NoOp nodes to see which products were sorted into each category. Read the sticky notes next to each output—they explain exactly why each item ended up there.
by Lucía Maio Brioso
🧑💼 Who is this for? This workflow is for anyone with two YouTube channels who wants to copy playlists from one to the other — no technical skills required. Whether you're a content creator, hobbyist, educator, or just someone managing multiple channels, this workflow helps you save time and avoid the manual work of recreating playlists video by video. 🧠 What problem is this workflow solving? YouTube doesn't provide an option to transfer or duplicate playlists between accounts or channels. That means if you want the same playlists in two places, you're stuck: Creating new playlists manually Searching for each video again Copy-pasting links one by one This workflow automates the entire process for you — accurately, quickly, and with no manual work. ⚙️ What this workflow does Retrieves all playlists from a source YouTube channel (excluding private ones) For each playlist: Gets all its videos Filters out private or unavailable videos Creates a new playlist in the target channel with the same title Adds the videos to the new playlist Continues smoothly even if some videos fail to copy (e.g., if they’re restricted or deleted) 🛠️ Setup Create two YouTube OAuth2 credentials in n8n: One for your source channel One for your target channel Assign the credentials to the correct nodes as indicated in the sticky notes: Source nodes → source credentials Target nodes → target credentials Click “Test workflow” to run it. > ⚠️ Note: If you have many playlists or videos, you may hit YouTube’s API quota. You can request a quota increase in your Google Cloud Console if needed. 🧩 How to customize this workflow to your needs ✂️ Copy only specific playlists Use a Filter node after the playlist fetch to include only certain titles or IDs. 📝 Change the title of the copied playlists Modify the title in the Create playlist node (e.g., add “(Copy)” or a prefix). 🔄 Automate it regularly Replace the Manual Trigger with a Cron node if you want to run this periodically. 🧪 Test safely If you're unsure, use a secondary channel as your test target before applying changes to your main account.
by MattF
This workflow generates a weekly performance summary from Google Search Console, focused on brand-level SEO metrics and week-over-week trends. It provides a structured view of how each brand segment is performing, with clean formatting for quick insights. Key Features Sends a weekly email with a table showing clicks, impressions, CTR, and position — along with % change vs. the previous week. Highlights both brand and non-brand clicks separately. Color-coded % changes make it easy to spot wins (green) and losses (red) at a glance. It’s designed to give SEO teams a consistent overview of performance by brand, helping to track directional shifts and support deeper analysis when needed. How it works Runs weekly (e.g. every Monday) to compare “Last Week” vs. “2 Weeks Ago” from GSC data. Includes both brand + non-brand click breakdown. Calculates raw values and week-over-week % change for clicks, impressions, CTR, and position. Outputs a clean, formatted table with labeled rows and color-coded changes. Sends the table as part of a scheduled email (can also be adapted for Slack or other channels). Setup steps Requires connected Google Search Console data (per brand segment). Email delivery is included by default (customizable to other platforms). Update brand segmentation logic to match your tracking needs (e.g. domain, label, or custom filters). Typical setup time: ~5-10 minutes with structured input data.