# templates

name: 🥇 Token Estim8r -Sub Workflow to track AI Model Token Usage and cost with JinaAI
author_name: RealSimple Solutions
author_username: joeperes
categories: []
created_at: 2025-04-10T16:19:30.845Z
updated_at: 2025-04-10T16:19:30.845Z
url: https://n8n.io/workflows/3513
scraped_at: 2025-12-24 13:02:46
description:
  Save Your Tokens from Evil King Browser
  &gt; Image Generated with ideoGener8r 
  n8n workflow template
  🔍 Estimate token usage and AI model cost from any workflow in n8n

  🙋‍♂️ Who is this for?
  This workflow is ideal for AI engineers, automation specialists, and business analysts who use OpenAI, Anthropic, or other token-based large language models (LLMs) in their n8n workflows and want to track their usage and accuratley estimate associated costs.

  Whether you're prototyping workflows or deploying in production, this tool gives you insight into how many tokens you're using and what that translates to in actual dollars.

  😌 What problem is this workflow solving?
  n8n users running AI-based workflows often struggle to track how many tokens were used per execution and how much those tokens cost. Without visibility into usage, it’s easy to lose track of API spending.

  This workflow solves that problem by:
  Logging token counts and costs to Google Sheets
  Supporting prompt and completion token counts
  Providing live pricing (optional, via Jina AI API)

  ⚙️ What this workflow does
  This template allows you to analyze the token usage and cost of any workflow in n8n. It uses an Execute Workflow node to call the Token Estim8r utility, which:
  Estimates prompt and completion tokens
  Retrieves model pricing (either statically or live via Jina API)
  Calculates the total cost
  Logs the data to a connected Google Sheet with timestamp and model info

  🛠️ Setup Instructions
  Create Google Sheet: Copy and paste the CSV template below into a .csv file and upload to Google Sheets:

          timestamp, Total Tokens, Prompt Tokens, Completion Tokens, Models Used, Tools Used, Total Cost, Json Array
      
  Set up pricing (optional): In the Get AI Pricing node, add your Jina API Auth Header if you want live pricing.

  Select the correct Google Sheet: Ensure your workflow is pointing to the imported sheet.

  Attach to your target workflow: Add an Execute Workflow node to the end of your target workflow.

  Point to this Token Estim8r: Choose this template as the executed workflow and send {{ $execution.id }} as the input.

  Run and view results: Trigger the target workflow and see your token usage and cost data populate in the sheet.

  🔧 How to customize this workflow to your needs
  Change the logging destination**: Instead of Google Sheets, connect to Airtable, Notion, or a database.
  Support multiple models**: Extend the price-mapping logic to cover your own model providers.
  Add Slack alerts**: Send a notification if a workflow exceeds a token or cost threshold.
  Aggregate costs**: Create a weekly summary workflow that totals cost by workflow or model.

  &gt; This utility workflow works across all n8n deployment types and uses only built-in nodes.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.n8n","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE62W227jNhCGX0XQdRiIZzJ3aZoWix5SbNIGiyJYDMmhI8SWXFnOAYGBfYz29fZJOnKO69hOUvTKkjCc+eb38CdvyzqVe+XP9vD60wX+dPndp6vTEGW5U06wh3LvtqybWQ9NxA9DXACZwRrQlkepOa8w62ws6sr76EFHbo3DzIWOIsvgKhVAVAmtFsrFKlDeHifTMfR40GGaHWM/nx609AV7pAIZxjNc7JQNTJDK/Yh98UubcFyctBfYFAftvOkLaBK9t+PZkA1Gs3LvzzNaQnHD4+1dR9GLSnsFzLsqMJUVZ95bYNYRoXcqZZPLx0Kn55Q9jut4UTej4uuXv09w1hdXbXeRx+3V1y//DKVupkNo4xq2rMUCzHB3As0cxiddPRphR1HTdlb3ddsQCSN9qh3tKqKbQkeVeuwI8XZxl+wPeltG8sXOPTWYLDgEwwT3wJTPwIJFZFn7FBwon8A8URNKMUh0eI1xPhQtvgf60zah0usKoCM+qd7BJwBS5blkPsrIFJeBOfCeGQ4xWCdl5qn85u/b/1D8PoMRbkeL9LjCptyb2MQjm/JOZsORFCMBlaksC0JrZgJCpZLPMcET2/HAVn/+OG8+byWbYb8CJt4mmtxVj2gSwVivkAmdCE2KwHylI5OistnZHCrlXsj2W1dHmsaNZOd9P/2If81pUimmbQ67ru2GyW+bvm7m+BFH8zF0R/N+Ol/pYaO0HfbdzVHzA9Tjcq/v5rjSlNp90hulU2CFYjyrTHpb0ptrZCkFcGi8xBjLl1t5tmwMl7t4P6XieD6ZQHfzjtGQ5p2TYRKNhMqaBS8FUyo55iTnTAhdASLSj3hG2rajMRbH54j9bCPWaBn1GPQMz7wNT+3qR0CbBTgXLOMmaKYiKuY8KGZcVNZC5XJ4Pro9+dRN8Wvb4+axXcbch3zjSY7w+Eu85dhg01OqcvP+T5WpTK4IL3nLFIBlIFJgIQQ7GDxarlZc9c6cMBXhpthv2v4cu+L03lg34uPdooe4LfbKzev2tfusAS1RcJeYJslpaDntRBSCoeZaGpEqjW6t0ub9UuvB/V/ivU1pGZ3LiMCqFNVghomBBM2ENDSwxgfrw1pQ/h9ngon3DgVFQ+zrS3ywCvJKcp7RciU+nElHXcLBli75kOLybvnyMuE1asiomaWZGgyb5ihrx7Koos0ZFddDM8TQYBxSLROvuCN9mUA9tEEn/9Dsu7xmuXSH7jgJr8u9anF2RoyrR8OmEus8em3Cl+fgupQbT6S1OTec/VtY1x3DG3G3yre2yHrXXFvgdV9YV+G1287mUlsvdv9TqcXiX1BvjYtLCwAA


name: Build an MCP Server with Google Calendar and Custom Functions
author_name: Solomon
author_username: solomon
categories: []
created_at: 2025-04-10T16:33:11.142Z
updated_at: 2025-04-10T16:33:11.142Z
url: https://n8n.io/workflows/3514
scraped_at: 2025-12-24 13:02:41
description:
  Learn how to build an MCP Server and Client in n8n with official nodes.

  &gt; ⚠ Requires n8n version 1.88.0 or higher.

  In this example, we use Google Calendar and custom functions as two separate MCP Servers, demonstrating how to integrate both native and custom tools.

  How it works

  The AI Agent connects to two MCP Servers. Each MCP Trigger (Server) generates a URL exposing its tools. This URL is used by an MCP Client linked to the AI Agent.

  Whenever you make changes to the tools, there’s no need to modify the MCP Client. It automatically keeps the AI Agent informed on how to use each tool, even if you change them over time.

  That’s the power of MCP 🙌

  Who is this template for

  Anyone looking to use MCP with their AI Agents.

  How to set up

  Instructions are included within the workflow itself.

  Check out my other templates

  👉 https://n8n.io/creators/solomon/

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","@n8n/n8n-nodes-langchain.mcpTrigger","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.switch","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.toolWorkflow","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.mcpClientTool","@n8n/n8n-nodes-langchain.mcpClientTool","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.mcpTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.debugHelper","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.toolWorkflow","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6572 characters]


name: Import Google Keep notes to Google Sheets using OpenAI and Google Drive
author_name: PollupAI
author_username: Pollup
categories: []
created_at: 2025-04-11T07:09:28.990Z
updated_at: 2025-04-11T07:09:28.990Z
url: https://n8n.io/workflows/3517
scraped_at: 2025-12-24 13:02:47
description:
  This n8n workflow automates the import of your Google Keep notes into a structured Google Sheet, using Google Drive, OpenAI for AI-powered processing, and JSON file extraction. It's perfect for users who want to turn exported Keep notes into a searchable, filterable spreadsheet – optionally enhanced by AI summarization or transformation.

  Who is this for?
  Researchers, knowledge workers, and digital minimalists who rely on Google Keep and want to better organize or analyze their notes.

  Anyone who regularly exports Google Keep notes and wants a clean, automated workflow to store them in Google Sheets.

  Users looking to apply AI to process, summarize, or extract insights from raw notes.

  What problem is this workflow solving?

  Exporting Google Keep notes via Google Takeout gives you unstructured .json files that are hard to read and manage. This workflow solves that by:
  Filtering relevant .json files
  Extracting note content
  (Optionally) applying AI to analyze or summarize each note
  Writing the result into a structured Google Sheet

  What this workflow does

  Google Drive Search: Looks for .json files inside a specified "Keep" folder.

  Loop: Processes files in batches of 10.

  File Filtering: Filters by .json extension.

  Download + Extract: Downloads each file and extracts note content from JSON.

  Optional Filtering: Only keeps non-archived notes or those meeting content criteria.

  AI Processing (optional): Uses OpenAI to summarize or transform the note content.

  Prepare for Export: Maps note fields to be written.

  Google Sheets: Appends or updates the target sheet with the note data.

  Setup
  Export your Google Keep notes using Google Takeout:

  Deselect all, then choose only Google Keep.

  Choose “Send download link via email”.

  Unzip the downloaded archive and upload the .json files to your Google Drive.

  Connect Google Drive, OpenAI, and Google Sheets in n8n.

  Set the correct folder path for your notes in the “Search in ‘Keep’ folder” node.

  Point the Google Sheet node to your spreadsheet

  How to customize this workflow to your needs
  Skip AI processing: If you don't need summaries or transformations, remove or disable the OpenAI Chat Model node.

  Filter criteria: Customize the Filter node to extract only recent notes, or those containing specific keywords.

  AI prompts: Edit the Tools Agent or Chat Model node to instruct the AI to summarize, extract tasks, categorize notes, etc.

  Field mapping: Adjust the “Set fields for export” node to control what gets written to the spreadsheet.

  Use this template to build a powerful knowledge extraction tool from your Google Keep archive – ideal for backups, audits, or data-driven insights.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.extractFromFile","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDrive","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleDrive","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4484 characters]


name: Generate Dynamic Images with Text & Templates using ImageKit.
author_name: Ahmed Alnaqa
author_username: ahmedalnaqa
categories: []
created_at: 2025-04-11T08:27:56.751Z
updated_at: 2025-04-11T08:27:56.751Z
url: https://n8n.io/workflows/3519
scraped_at: 2025-12-24 13:02:46
description:
  A Game-Changer in Dynamic Content Generation!
  In a world where Templated.io and ApiTemplate.io charge between $29 to $179/month, we’re flipping the script…

  What if you could get all the power – for FREE?
  We’re proud to introduce our N8N workflow, a modern, fast, and developer-friendly tool for generating dynamic images with $zero subscription fees.

  No pricing tiers.
  No usage caps.
  No hidden fees.
  Just pure value – 100% free.

  How We Compare:


  or 





  But we are always Free

  Note: Pricing is based on 2025-04-01 and the free imagekit plan.

  Why Free?

  We believe that powerful tools should be accessible to everyone — startups, developers, creators, and students alike. Our mission is to empower you to create amazing things without breaking the bank.

  What is a template idea, and how can you build one? (With examples)
  Follow this page to better understand everything. Add overlays on images

  Get Started in Seconds

  No credit card. No trials. No limitations.
  Just sign up and start creating.

  What You Need

  n8n (Cloud or self-hosted).
  Imagekit just the FREE plan.

  How to Generate imagekit API
  After signing up, go to the ImageKit dashboard. On the left sidebar, scroll down until you find "Developer Options", then click on it.

  Choose your preferred method of integration – either API keys or Webhooks. In this case, we will proceed with the API option.

  On the right side of the screen, you will see your Private Key. This is the API key you'll need for your n8n workflow, along with code samples in different programming languages.

  For beginners: If you're not familiar with how to connect using the code from the previous step, simply visit this link: Upload file V1

  On the right side of that page, enter your Private Key in the input field labeled "API Key", then click on the "Send API Request" button.

  Once the request is sent, scroll down to view the Shell/cURL code. From this code, copy only the part that looks like this:  
     --header 'Authorization: Basic ...'  
     and use it in your n8n workflow.

  N8N Workflow Setup
  1- Import the workflow into n8n.

  2- Add imagekit API.

  3- Follow the instructions in the workflow.

  4- Test & launch

nodes_used:
  ["n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.apiTemplateIo","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WWzW7bRhDHX4XgoSetsd8fugVGEejQwqjd9hD4MLs76xCRSJWi6gSGgDxG+3p5ko4Ut2oiKpHkm0iO5v/jf2eG81QvcIB6+lQ37WqANuEs19PaZgHWOBszKKtM9sLqnKO2yINGl3lWIdoYdMFQlBSZF2uMzzzaJF3W9aQecLGcw4DXPebVLQ7r5XVHd3BAEhj6NW4mddtlXNXTN6S+VYWcIfjimdHImc4cWEBEZhxAlihUNJkyt7BAiv7x/dBDGqrZAh6woitsV03XbqU/LLcBrW/ZToFFWOFVop/0cNmtmmEbN30jOJ8wJfk93YWesg7YE87T5nOK3+hqFyg3k2dCzg3GpDwT3GSmrYssCAdMIwpeondK2D3hZ7KbvltiPzT0psfQVjh8ScaEPA1NXen/4IQHK1PiTDiHTHtJcN4oZmUxSN5K7dQe7tflvINc3XSrZwuP0r0dhuUv+McaV19RqhMh9dXeQSet1pFzZnwQTDsZmKcyY+iS4i6giTLuIV9jiz0VUfVDdTt0PVa3XWpgXs1+el11bXU979b5fG6jz+cWkY43CmRRearNEBLzgmogmIjOJs5Rpz3372+xrdK8Se+a9qH69PGvO4KoHrv+XZl3j58+/n0UegHtGuZ3ffPwgP1XRaFO5BZ7t7Mm3BgYFpGYLjyziNmQFHglinMW3WG94p8NPu7UzzTW2fONDd5q4yLVgk6EGERh0WvJIBruignZqP81/e1Ann6ofu6G4/W62sU8hxz4Z/0BXp26lqbHQKnq416ilkEFaRhVMFUAkKsARVJ7RWOzyVKB3IO+upndPU/Aq6Y7ygrL5t+wWfclrvdEewh7HFCrVASNYialIzuLd3TYSZKxBXUMNkiIo06KC6281Ek6cBpUXtN0D5HwwNEMCMgwoRcavffAR0Hl+aBi6yLRXkYaY/EqKMXQJiL1u+IMmdkSDUhlOX0jR0nV2aT6JZyeW+A8Gla0VXT0BVjkNFqDEMV7wTUV7yinvuzoxaWgoEMBZxJzItJnMyXLAKNiQUVppeaWangU1JwNKu1LHM1IczI5zwp3lrpdULeL7FguSvnokhaQRkHtZY7KS0EtghKcuicGTl/9IBOLFrb9T1sAFYIi4FFQd76j/AVNL2n6eEl7HY9bOgNIJ58VS1EqBc4GV8bnvD+/lS7qeYqm5y2mbZZd+MH+RvcW0GwlaGXdgpyyhu7+MaH9OuP7eso39/ekfbh9jeU+b/0ZFTqGNyb3jZVwNPf3t5wxleNb8ajISR58S+dgmxmR2Wz+ATOVKK4JDQAA


name: 📌 Turn your LinkedIn insights into content ideas with Airtable and Real-Time Linkedin Scraper
author_name: Batu Öztürk
author_username: theozturkbatu
categories: []
created_at: 2025-04-11T16:27:24.938Z
updated_at: 2025-04-11T16:27:24.938Z
url: https://n8n.io/workflows/3520
scraped_at: 2025-12-24 13:02:46
description:
  🚀 Transform LinkedIn Post Reactions into Content Ideas with Airtable

  📝 Description
  This workflow helps you to turn your LinkedIn activity into a powerful content ideation engine. It captures your most recent post reactions on LinkedIn automatically, filters them based on recency, and structures the content into Airtable—ready for brainstorming, inspiration, or publication planning.

  ⚙️ What It Does
  Fetches* the latest liked posts from LinkedIn via a public API (rapidapi.com/Real-Time Linkedin Scraper*).
  Filters** posts to include only those marked as your decided reaction and posted in the last 7 days.
  Extracts** the post text, author, links and more.
  Formats** the data into a database-friendly structure.
  Saves** the output in Airtable for easy tracking, tagging, or team collaboration.

  💡 Use Cases
  Build a content idea vault from posts you admire.
  Capture inspiration from thought leaders.
  Identify trends based on what you find insightful.
  Supercharge your personal brand or newsletter by turning likes into learning.

  🛠 Prerequisites
  Before using this template, make sure you have:

  ✅ A RapidAPI account and access to the linkedin-api8 endpoint.  
  ✅ Your RapidAPI key and the target LinkedIn username.  
  ✅ An Airtable account with a base/table set up.

  🧰 Setup Instructions
  Clone this template into your n8n instance.
  Open the Fetch LinkedIn Likes node and enter:
     Your LinkedIn username.
     Your RapidAPI key in the headers.
  Open the Save to Airtable node and:
     Connect your Airtable account.
     Link the correct base (Content Hub) and table (Ideas).
  Set your desired schedule in the Trigger node.
  Activate the workflow and you're done!

  📋 Airtable Setup
  Create a base called Content Hub and a table named Ideas with the following columns:

  | Column Name | Type       | Required | Notes                      |
  |-------------|------------|----------|----------------------------|
  | Title       | Single line text | ✅ | Generated from author info |
  | Description | Long text  | ✅ | Contains post content       |
  | Source      | URL        | ✅ | Link to the original post   |
  | Type        | Single select | ✅ | Value: Linkedin  

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.splitOut","n8n-nodes-base.filter","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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


name: Auto-Publish Social Videos to 9 Platforms via Google Sheets and Blotato
author_name: Dr. Firas
author_username: drfiras
categories: []
created_at: 2025-04-12T02:42:56.028Z
updated_at: 2025-04-12T02:42:56.028Z
url: https://n8n.io/workflows/3522
scraped_at: 2025-12-24 13:02:42
description:
  Auto-Publish Social Videos to 9 Platforms via Google Sheets and Blotato

  Who is this workflow for?

  This workflow is ideal for marketers, content creators, virtual assistants, and automation specialists managing multi-platform video content. It’s especially useful for teams who want to centralize publishing via a spreadsheet and automate social distribution in one shot.

  What problem does this workflow solve?

  Manually posting videos to multiple social platforms is tedious and time-consuming. This workflow allows you to streamline video distribution using Blotato’s API — no more switching between platforms or re-uploading the same video multiple times.

  What this workflow does

  This automation reads video metadata (URL, caption, title) from a Google Sheet, uploads the video to Blotato, and automatically publishes it to Instagram, YouTube, TikTok, Facebook, LinkedIn, Threads, Twitter (X), Pinterest, and Bluesky.

  It also updates the sheet to reflect the publishing status (STATUS = DONE), ensuring that your data remains clean and trackable.

  Setup

  Set up your Google Sheet with the required columns: PROMPT, DESCRIPTION, URL VIDEO, Titre, row_number, and STATUS.
  Add your Blotato API key in the headers of the Upload Video and Post to X nodes.
  Replace the platform-specific IDs in the Assign Social Media IDs node (Instagram ID, Facebook Page ID, etc.).
  Set the schedule in the Schedule Trigger node to define when the publishing happens.

  &gt; ⚠️ Disclaimer: This workflow uses Community Nodes. These are only available on self-hosted n8n instances.

  How to customize this workflow

  Add logic to skip rows already marked as DONE.
  Expand to more platforms supported by Blotato.
  Use a webhook or Telegram trigger instead of the scheduler for more interactivity.
  Modify content per platform if needed (caption formatting, hashtags, etc.).

  📄 Documentation: Notion Guide

  Demo Video

  🎥 Watch the full tutorial here: YouTube Demo

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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


name: Upload Carousel of Images to Tiktok and Instagram with upload-post.com
author_name: Juan Carlos Cavero Gracia
author_username: carlosgracia
categories: []
created_at: 2025-04-12T10:08:09.168Z
updated_at: 2025-04-12T10:08:09.168Z
url: https://n8n.io/workflows/3524
scraped_at: 2025-12-24 13:02:44
description:
  Image Carousel Publisher for Instagram and TikTok

  Description
  This automation template is designed for content creators, digital marketers, and social media managers looking to streamline their image carousel posting workflow. It automates the process of uploading multiple images as carousels to Instagram and slideshows to TikTok, making your visual content management more efficient across platforms.

  Who Is This For?
  Content Creators & Influencers:** Simplify posting image collections and focus more on creating visual content.
  Digital Marketers:** Ensure consistent carousel posts across multiple platforms with minimal manual effort.
  Social Media Managers:** Automate repetitive image uploading tasks and maintain visual engagement.

  What Problem Does This Workflow Solve?
  Manually uploading image carousels to different platforms can be time-consuming and inconsistent. This workflow addresses these challenges by:
  Automating Multi-Image Uploads:** Processes multiple images and prepares them for platform-specific formats.
  Supporting Cross-Platform Publishing:** Simultaneously posts your image carousels to Instagram and TikTok slideshows.
  Maintaining Visual Consistency:** Ensures your visual stories remain consistent across platforms.
  Streamlining Batch Processing:** Handles the technical complexity of multi-image uploads with a single workflow trigger.

  How It Works
  Image Selection: Trigger the workflow with your selected images.
  Image Processing: The workflow automatically processes and prepares your images for both platforms.
  Content Distribution: Uploads the images as a carousel to Instagram and as a slideshow to TikTok.
  Platform Optimization: Formats the uploads according to each platform's requirements.

  Setup
  API Token Generation:
     Visit upload-post.com and create an account
     Navigate to the API settings section
     Generate a new API token
     Copy the token for use in the next steps

  Platform Configuration:
     In the "Upload to Instagram" node:
       Paste your API token in the designated field
       Configure your Instagram account settings
       Set your preferred posting parameters
     
     In the "Upload to TikTok" node:
       Add the same API token
       Set up your TikTok account credentials
       Adjust posting preferences

  Content Parameters Setup:
     Rename the "HTTP Request" node to "Social Media Upload Request"
     Configure your account information:
       Username
       Account ID
       Content title format
       Posting schedule (if applicable)

  Image Source Configuration:
     Set up your image source directory
     Configure image format requirements
     Test with sample images before going live

  About upload-post.com
  Upload-post.com is a third-party service that acts as a bridge between your workflow and social media platforms. It provides:
  Secure API endpoints for multi-platform posting
  Image format validation and optimization
  Queue management for scheduled posts
  Analytics and posting status tracking
  Cross-platform compatibility handling

  Requirements
  Accounts:** upload-post.com account with access to Instagram and TikTok publishing.
  API Keys:** Upload-post.com API token.
  Images:** Properly formatted images that meet Instagram and TikTok specifications:
    Instagram: Up to 10 images per carousel, 1:1 to 4:5 aspect ratio
    TikTok: Compatible with slideshow format, 9:16 aspect ratio recommended

  Use this template to enhance your visual storytelling, maintain consistency across social platforms, and engage your audience with compelling image carousels and slideshows.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  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


name: Compare Sequential, Agent-Based, and Parallel LLM Processing with Claude 3.7
author_name: Eduard
author_username: eduard
categories: []
created_at: 2025-04-12T15:33:29.105Z
updated_at: 2025-04-12T15:33:29.105Z
url: https://n8n.io/workflows/3527
scraped_at: 2025-12-24 13:02:45
description:
  This workflow demonstrates three distinct approaches to chaining LLM operations using Claude 3.7 Sonnet. Connect to any section to experience the differences in implementation, performance, and capabilities.

  What you'll find:

  1️⃣ Naive Sequential Chaining
  The simplest but least efficient approach - connecting LLM nodes in a direct sequence. Easy to set up for beginners but becomes unwieldy and slow as your chain grows.

  2️⃣ Agent-Based Processing with Memory
  Process a list of instructions through a single AI Agent that maintains conversation history. This structured approach provides better context management while keeping your workflow organized.

  3️⃣ Parallel Processing for Maximum Speed
  Split your prompts and process them simultaneously for much faster results. Ideal when you need to run multiple independent tasks without shared context.

  Setup Instructions:

  API Credentials: Configure your Anthropic API key in the credentials manager. This workflow uses Claude 3.7 Sonnet, but you can modify the model in each Anthropic Chat Model node, or pick an entirely different LLM.

  For Cloud Users: If using the parallel processing method (section 3), replace {{ $env.WEBHOOK_URL }} in the "LLM steps - parallel" HTTP Request node with your n8n instance URL.

  Test Data: The workflow fetches content from the n8n blog by default. You can modify this part to use a different content or a data source.

  Customization: Each section contains a set of example prompts. Modify the "Initial prompts" nodes to change the questions asked to the LLM.

  Compare these methods to understand the trade-offs between simplicity, speed, and context management in your AI workflows!

  Follow me on LinkedIn for more tips on AI automation and n8n workflows!

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.markdown","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.memoryManager","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.set","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.splitOut","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.webhook","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.noOp","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.merge"]

workflow_json_compressed:
  [encoded data, 5388 characters]


name: Advanced AI-Powered YouTube SEO Optimization & Auto-Update
author_name: Lucas Correia
author_username: lucascorrei4
categories: []
created_at: 2025-04-12T16:30:20.635Z
updated_at: 2025-04-12T16:30:20.635Z
url: https://n8n.io/workflows/3528
scraped_at: 2025-12-24 13:02:46
description:
  Optimize Existing YouTube Video Metadata using AI and YouTube API

  This n8n workflow automatically enhances the Search Engine Optimization (SEO) of your existing YouTube videos. Provide a video link, and the workflow fetches its current data, uses advanced SEO techniques with AI to generate optimized titles, descriptions, and tags, and then updates the video directly on your YouTube channel.

  Who is this for?
  This workflow is designed for:

  Content Creators & YouTubers: 
  Who want to improve the visibility and reach of their existing video library without manual effort.

  Digital Marketers & Social Media Managers: Who manage YouTube channels and need an efficient way to revitalize older or underperforming content.
  Agencies: 
  Managing multiple client YouTube channels and looking for scalable optimization solutions.

  What problem is this workflow solving? / Use Case
  Many creators have a backlog of published videos that aren't reaching their full potential due to suboptimal titles, descriptions, or tags. Manually reviewing and updating each video is time-consuming and requires SEO expertise.

  This workflow solves that by:

  Automating the re-optimization process: Saving significant time and effort.
  Leveraging AI for SEO: Generating high-quality, relevant metadata based on the video's content.
  Revitalizing existing content: Giving older videos a fresh chance to be discovered by the YouTube algorithm and new viewers.
  Improving discoverability: Helping your videos rank better in Youtube and appear more often in recommendations.

  What this workflow does
  Input: 
  Takes a YouTube video URL as the starting point (e.g., via a manual trigger or form).
  Fetch Data: 
  Connects to the YouTube API using the provided link to retrieve the video's current title, description, tags, and potentially transcript data (if accessible and configured).
  AI Analysis & Generation: 
  Sends the current metadata and video information to an AI model (like OpenAI, Google AI, or Anthropic - depending on your setup). 

  The AI analyzes the content and generates new, SEO-optimized suggestions for the:
   Video Title
   Video Description
   Video Tags
  Update Video: 
  Connects to the YouTube API again using appropriate permissions and updates the specific video with the newly generated title, description, and tags, replacing the old ones.
  How to customize this workflow to your needs
  To use this workflow, you will need to:

  Configure Credentials:
   YouTube: Set up YouTube API credentials in n8n. You'll likely need OAuth2 credentials that allow editing video metadata (youtube.force-ssl scope). Follow Google Cloud Console instructions to create these.
   AI Service: Set up credentials for your chosen AI provider (e.g., OpenAI API Key, Google AI API Key) in n8n.
   Connect Credentials: Select your configured YouTube and AI credentials in the respective nodes within the workflow.
   (Optional) Review AI Prompts: Check the prompts used in the AI node(s) to ensure they align with your desired tone and optimization strategy.

nodes_used:
  ["@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.lmChatDeepSeek","n8n-nodes-base.stickyNote","n8n-nodes-base.formTrigger","n8n-nodes-base.code","n8n-nodes-base.youTube","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.youTube","n8n-nodes-base.form","n8n-nodes-base.if","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.form"]

workflow_json_compressed:
  H4sIAAAAAAAAE52W227bRhCGX4Xgtdfd80FXTZ22MFA3QeykKAqj2MOsTdgiBYpCahh69w7lWJQU6uBcGLAWuzPfP/vPLJ/LKXS+nDyXVT3vfB3hMpWTMmrFmJMicE6T9EEb7qNTRmoVmEhBGpUgqxxCooGCZFxSpziuJBoFpeVZ2cF09ug7uGghza+hW8wuGlyBDjBB1y5geVbWTYJ5OfkHs/dZgdJkJTBitKdEei5JQA4iLbfGuay91Bi59lPA3ddVH664gmnTPok+49OsX/+5tvVP+EdW0cmjr+/iva/q8+lq5y+LnKH9q6pT8xUPzZp51VVNjRRMWnrGDaW3uOxbzNJBi3jPy5fYX/DXaic7F8uzV2YNzgghiIxJESkgkBBsIpxRkQHAWA8D83uA2TXAQ3Fx77viCgEf+Qnkj9N+/+vhHWome2p+nHrNrBSjCO2JN8FgnZ0lnkdNhIlJ2wg6ZLlR566KD0/Fn00HbGAdMIOfw/l8tanfs03HNcJR+R1cGZu6g7rDSOV+UGssdREdANlmIrUXxKfISdQ+sgTUOLlR3N+adjopLuvZoiu+VAma4vOnP/YSZ9x901Z3d9BuI+u+nkL3yF8h3DfNw6ollFFMpayI1gYtyZkgzqhIAvdBxhhzzL0JD14BP+drbcYzRRPtxaBnpBGWBOHQ9srwTLNgNoRB2wWCF6T4HV6lXb7fqyziv9uSHF1LOsw32Boid84B2toktDVLvVpFlOMsB6WNd26g+7tZ3CwCTDb4rnCsJI+jZR/l08uZMTOfQDp4hCYQwgIQJbQlMmtDQkqZWCVFzClYnehA+u6yeHeHvsNaInSHAMX1rx+Qu4bWd017QjP6/vzu5Oix5Qk9eG7W4M4kJhj2Hg8JDRUhEu8YGgC04kBzpj6NlPjzDMsK36p84+/mb6swV7xHPWHIrUG9S9FDkMR77YjEuUxc5J4EZyRTyqtk/G4Xfpv1GKn4iAU72IU7gMauATf7L1GIzLpEfDRoS4oUQVtFBE6XqEz2XLhj/TdoipSDB9BE4ttGZAJLXA6ZsJyTguCUs3bQdJlR0T3EhwLHVq7aqV/B7hNV5R1JnJ9mj835YFlOwLQk1En0Nb6qOGpQL/MpR50ZM9ZsDul2EbsFvrXFh0XXT8CPvp3DKX5uVvtftg9hdgxu+YmPzIYCLyRWklLicKChb0QgNuJPJXWWHpKOlH7vm6G+b3UO9tK6zJvO8QqtIXUgBoxEDs2JRX8RFiBGEzQzxh53DgbFy68h9tlWT9jOBwiu+Orfl48MpMGPmp72TTNnOH+G32MJ/isndHl7izBj8x8TTvECt3KdNIlXp3YzjH6avGjqvbLAu1gt/ri07TC7+cdf7zGNB9/CUW17+vdgAQ/M2dEc+/w7luTYPBlNsLfFXy5ps41//I62ouwSHKjNmMojL8GoyEP+HctxurjRdEePH9K1d1KNpFou/weOFDo4ag0AAA==


name: 📊 Token Estim8r UI – Visualize Token Usage analytics Dashboard in n8n
author_name: RealSimple Solutions
author_username: joeperes
categories: []
created_at: 2025-04-12T22:53:26.571Z
updated_at: 2025-04-12T22:53:26.571Z
url: https://n8n.io/workflows/3529
scraped_at: 2025-12-24 13:02:45
description:
  📊 Visualize all your AI Token Usage analytics Dashboard using a single n8n Workflow

  Artwork Generated with ✨ ideoGener8r n8n workflow template

  Token Estim8r UI is the premium version of our token tracking solution for n8n users who want real-time insight into AI model usage and exact cost per execution — all in a beautifully designed analytics dashboard.

  We've done the work with over 4000 lines of code for you to simply add a pre-configured HTTP Request node to the end of any workflow you want to track, and Token Estim8r UI will handle the rest: collecting data, analyzing token usage, calculating model costs, and feeding everything into a clean UI with charts, graphs, and summaries.

  🖼️ What the Dashboard Looks Like

  🙋‍♂️ Who is this for?
  This workflow is perfect for:
  AI engineers
  Automation specialists
  Business analysts
  Teams using OpenAI, Anthropic, Claude, or any token-based LLM

  If you’re managing API budgets or optimizing prompt performance, this tool provides immediate visibility into where tokens (and money) are going.

  😌 What problem does this solve?
  n8n makes it easy to build powerful workflows — but it doesn’t natively track OpenAI token usage or cost. Without that visibility, it’s impossible to:
  Know what each automation is costing
  Spot inefficiencies in prompt construction
  Track cost trends over time

  Token Estim8r UI solves that with zero manual logging.

  ⚙️ What this workflow does
  Fetches detailed execution logs from n8n
  Extracts prompt/completion token usage per model/tool
  Optionally retrieves live pricing or use preset pricing as of 4/2025
  Calculates total cost per run
  Sends data to a backend for aggregation
  Displays a full-featured analytics dashboard with:
      Total tokens, cost, and usage trends
      Most used models/tools
      Workflow-model correlations
      Cost breakdowns and comparisons
      Workflow usage over time
      Auto-complete workflow search with filtering by ID or name
      Filter by date or workflow (single or all workflows)
      Built in image server
      Sortable & searchable data table of filtered results with:
          Prompt & completion token breakdown
          Cost calculations
          Workflow name + direct link to the workflow
          Link to exact execution in n8n

  🛠️ How Setup Works
  Import the Token Estim8r UI workflow into your n8n instance
  Deploy the included dashboard (React/Next.js app, hosted or self-hosted)
  Configure Google Sheets or your preferred backend (e.g., Supabase, Airtable)
  Copy the prebuilt HTTP Request node into the end of any n8n workflow
  Run your workflow — data is captured, aggregated and stored automatically in Google Sheets 🎉

  🔄 What Makes This Better than the simple version?
  The simple version logs to Google Sheets only. This premium UI version adds:
  Full analytics dashboard
  Cost aggregation across all workflows
  Graphs, filters, and model/tool comparisons

  🔧 Customization Ideas
  Switch backend to Supabase or Firebase
  Add alerts via Slack when costs exceed thresholds
  Build weekly token cost summaries
  Track model performance across teams
  Add filters by user/session/timeframe

  🧠 Why Users Love It
  "Token Estim8r UI is exactly what I needed to take control of my AI costs inside n8n. It’s plug and play — and the dashboard makes optimization easy."  
  – Beta user, AI Ops Lead

  😐 If you're serious about building with AI in n8n, 
  Token Estim8r UI gives you the visibility to scale confidently. 🚀

nodes_used:
  ["n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.html","n8n-nodes-base.respondToWebhook","n8n-nodes-base.googleSheets","n8n-nodes-base.respondToWebhook","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.convertToFile","n8n-nodes-base.respondToWebhook","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.aggregate","n8n-nodes-base.webhook","n8n-nodes-base.webhook","n8n-nodes-base.webhook","n8n-nodes-base.webhook","n8n-nodes-base.httpRequest","n8n-nodes-base.set"]

workflow_json_compressed:
  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


name: Convert YouTube Videos into SEO Blog Posts with GPT-4o, Dumpling AI, and Flux
author_name: Yang
author_username: yang
categories: []
created_at: 2025-04-13T05:31:39.383Z
updated_at: 2025-04-13T05:31:39.383Z
url: https://n8n.io/workflows/3531
scraped_at: 2025-12-24 13:02:44
description:
  Workflow Description

  This workflow helps content creators automatically repurpose YouTube videos into SEO-friendly blog posts. It extracts the video transcript, uses AI to generate a full blog post with a relevant image, and sends the complete package via email, ready for publication.

  Prerequisites/Requirements

  This workflow relies on external AI services. You will need:

  OpenAI Account: Used for generating the blog post text (specifically mentioned using GPT-4o in the workflow notes).
      Credentials: Requires an API key from OpenAI.
      Cost: OpenAI API usage is typically paid based on the amount of text processed (tokens). Check OpenAI's current pricing.
      Setup: Sign up at OpenAI and obtain your API key.
  Dumpling AI Account: Used for retrieving YouTube video transcript and generating the blog post image.
      Credentials: Requires an API key from Dumpling AI.
      Cost: Dumpling AI offers 250 free credits to start with and different plans for different levels of usage. Check the pricing page for more details.
      Setup: Sign up at Dumpling AI and obtain your API key/credentials.
  Email Account: Credentials for the email service (e.g., Gmail) used to send the final result.

  How it works

  Input Video Details: You provide the YouTube video URL and your email address.
  Get Transcript: The workflow fetches the transcript of the specified YouTube video.
  Generate Content: An AI model crafts a blog post (title, description, body) based on the transcript.
  Create Image: Another AI model generates a suitable image for the blog post.
  Format & Package: The blog post is converted to HTML, and the image is prepared for sending.
  Email Result: The final HTML blog post and image are emailed to you.

  Set up steps

  Configure Variables: Enter the specific YouTube video URL and the recipient email address in the "Set Variables" node.
  Connect Credentials: Add your credentials for the services used (e.g., OpenAI for text generation, Dumpling AI for YouTube Transcript and AI image generation service).
  Connect Email Credentials: Authenticate your Gmail account (or chosen email provider) to allow the workflow to send the email.

  Take it to the next level

  Direct Publishing:** Instead of emailing the result, connect directly to your CMS (like WordPress, Ghost, Webflow) to automatically create a draft or publish the blog post.
  AI Agent Integration:** Replace the single "Generate Blog Post" step with an AI Agent for more sophisticated content generation, potentially researching topics or structuring the post section by section based on the transcript.
  Social Media Snippets:** Add steps to generate companion social media posts (e.g., for Twitter, LinkedIn) summarizing the blog post.
  Batch Processing:** Modify the trigger to read multiple YouTube URLs from a spreadsheet or database to convert videos in bulk.
  Enhanced SEO:** Refine the AI prompts to specifically target keywords or incorporate SEO best practices more deeply into the generated content.
  Multiple Image Options:** Generate several image variations and include them in the email or draft post for selection.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.gmail","n8n-nodes-base.markdown","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5324 characters]


name: Summarize Glassdoor Company Info with Google Gemini and Bright Data Web Scraper
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-13T05:41:52.066Z
updated_at: 2025-04-13T05:41:52.066Z
url: https://n8n.io/workflows/3532
scraped_at: 2025-12-24 13:02:46
description:
  Who is this for?
  This workflow is designed for HR professionals, employer branding teams, talent acquisition strategists, market researchers, and business intelligence analysts who want to monitor, understand, and act upon employee sentiment and company perception on Glassdoor.

  It's ideal for organizations that value real-time feedback, are tracking employer brand perception, or need summarized insights for leadership reporting without sifting through thousands of raw reviews.

  What problem is this workflow solving?
  Manually reviewing and analyzing Glassdoor reviews is tedious, subjective, and not scalable especially for larger companies or those with many subsidiaries.
  This workflow:
  Automates review collection by making a Glassdoor company request via the Bright Data Web Scrapper API.
  Uses Google Gemini to summarize the content.
  Sends an actionable summary to HR dashboards, leadership teams, or alert systems via the Webhook notification.

  What this workflow does
  Makes an HTTP Request to Glassdoor via the Bright Data Web Scrapper API.
  Polls the BrightData Glassdoor for the completion of the request.
  Downloads the Glassdoor response when a new snapshot is ready.
  Sends the prompt to Google Gemini for summarization.
  Delivers the summarized insights (strengths, weaknesses, sentiment, patterns) to a configured webhook or dashboard endpoint.

  Setup
  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  A Google Gemini API key (or access through Vertex AI or proxy).
  A webhook or endpoint to receive the summary (e.g., Slack, Notion, or custom HR dashboard).

  How to customize this workflow to your needs

  Change Summary Focus by updating the Summarization of Glassdoor Response node Summarization methods and prompts to extract specific insights:
  Cultural feedback
  Leadership issues
  Compensation comments
  Exit motivation
  Update the HTTP Request to Glassdoor node with a specific Glassdoor Company information that you are looking for.
  Format the output to produce a customized summary to Markdown or HTML for rich delivery.
  Integrate with HR Systems
  BambooHR, Workday, SAP SuccessFactors via API.
  Google Sheets or Airtable
   	

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.chainSummarization","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  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


name: Google Search Engine Results Page Extraction and Summarization with Bright Data
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-13T06:59:12.105Z
updated_at: 2025-04-13T06:59:12.105Z
url: https://n8n.io/workflows/3533
scraped_at: 2025-12-24 13:02:45
description:
  Who this is for?
  This workflow is designed for professionals and teams who need real-time, structured insights from Google Search results without manual effort.

  What problem is this workflow solving? 
  This n8n workflow solves the problem of automating Google Search result extraction, cleanup, summarization, and AI-enhanced formatting for downstream use like sending the results to a webhook or another system. 

  What this workflow does

  Automates Google Search via Bright Data
   Uses Bright Data’s proxy-based SERP API to run a Google Search query programmatically. 
   Makes the process repeatable and scriptable with different search terms and regions/zones.

  Cleans and Extracts Useful Content
   The Google Search Data Extractor uses LLM based cleaning to remove HTML/CSS/JS from the response and extract pure text data. 
   Converts messy, unstructured web content into structured, machine-readable format.

  Summarizes Search Results
  Through the Gemini Flash + Summarization Chain, it generates a concise summary of the search results. Ideal for users who don’t have time to read full pages of search results.

  Formats Data Using AI Agent
  The AI Agent acts like a virtual assistant that: 
  Understands search results
  Formats them in a readable, JSON-compatible form
  Prepares them for webhook delivery

  Delivers Results to Webhook
  Sends the final summary + structured search result to a webhook (could be your app, a Slack bot, Google Sheets, or CRM).

  Setup

  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  A Google Gemini API key (or access through Vertex AI or proxy).
  Update the Google Search query as you wish by navigating to the Set Google Search Query node.
  Update the Webhook HTTP Request node with the Webhook endpoint of your choice.

  How to customize This Workflow to your needs

  1. Change the Search Input

  Default: It searches a fixed query or dataset.

  Customize:
  Accept input from a Google Sheet, Airtable, or a form.
   Auto-trigger searches based on keywords or schedules.

  2. Customize Summarization Style (LLM Output)

  Default: General summary using Google Gemini or OpenAI.

  Customize:

  Add tone: formal, casual, technical, executive-summary, etc.

  Focus on specific sections: pricing, competitors, FAQs, etc.

  Translate the summaries into multiple languages.

  Add bullet points, pros/cons, or insight tags.

  3.Choose Where the Results Go

  Options:

  Email, Slack, Notion, Airtable, Google Docs, or a dashboard.

  Auto-create content drafts for WordPress or newsletters.

  Feed into CRM notes or attach to Salesforce leads.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.chainSummarization","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.informationExtractor","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.set"]

workflow_json_compressed:
  H4sIAAAAAAAAE91Y627bOBZ+FUKzwLRF6OguysBiN70mM23iJm5nt9OioMgjW411qS65NAgwj7HzevMkcyg6tmzLcbq7v+ZHHEs+PHd+5yNvjEQaQ+OVOJsdH55kx04oRtPTA2PPSKHmxvDGSLKq5pmAIyXHmBe5ceRyn4fCFpHn25ZrhzyIwsCWsSlNL4oC2xW2yUUg8c8KrMi3Y0sEELsm6q0hLWa8hmclyOoM6qZ4luMbqAEN1GUDt3tGxlNQXuX5ZAbkDHgppuRFNkkyIKdQNbO6IiM+AfLiqi65qJM8I5dJPSVPy2Qyrclzjr6jKT6pjOGvNzrGn5svcW2/PPmSnrx/e5D+ZCzsaM1QJtkEX4oS0D15UOMvtml71HSpGY5Na+hYQ9MceB77gGJNIXeL3e7NjUs5Or8MDiee/DB929iXS+MHR1tsWs7Y9IYOG5psYHrONpsbYrefUHcuoRO6cE3L86OQRkHEqeuGEWWOb9OYRUxIO+COL5ce/TKFjIhZIs4xIeSP3/4zhqoml3l5Hs/yyz9++12l9rpQohnLaGuLRryCQcqzhs/GWIQJlChV5FWiioOe2Ka5h5ZNdK7gJRqqoUQPb261rvf41Apay5SFjIPNgPLQjanrcIuGUQwUHecyEr4l/NBY75VXkCZZQp5NeU3eoGOzpa//RGf3lw7PeDYRU55kg1mqxLUCvX7V9dBH1+1N1428UBLzKFJl7Vg7036v9ietMmoPTBrPeDWlcFVgS6hqS8jqhM9aNZPW8ojP0oMiabecCv/fcBLIww9Z8+rp+7c/v/+wJdRHI/76zWOCKwkXIm+y2rjdntOQuVzE4FMuZEBdZgU0sqVHfWlzHnmWFXFYGjpr0pSXyTfebrBnKlkPSGf7ubJ0NZ2WY/e3Qjef6yHYixD8yAPbj2LKmGlT15QujYTrUt8WJvOFacaB2N0W5GVeknUn/9dG0ZHZ/l+hUyzfD2Mv5BTimFHX4pJyHyIaeAwAwVwGLt+dZuv/kVW/zar5V8gql75wueUhaoNJ3TDmNDRdhh1sMYdF3IS4g2m/QDTN83NyOB6PcO59bRCHH5DQOs9nh3VdLFd0s6nRrCebTTlDrVNcWA339y+17QEuhH0BrgWm51Nhhgo2BKPcDH3EYxb40uFRFAeaMkxzFebo5GyMzxVk8mkur/Vc79rTb2+MCz5r5oNqHnPVDvvPVbs1r1FJK4I//P3mhvztS5VngxKqAssOgxquanJ7eyc0KvOLROLgGRpxAjP5vl2pcr+qu2wZBM5JVSfM1XOoRJkUOkHGnFKQegrkzhLhmSRxXqbY15xUGI2oG2wi8tPZyfFCytio+6AzzYQXMk/Y1LSFpG4gTYp4yyiTIpTMMe0wZB3krXH6XpPjvIatw7ZqZeYi3UmrtkvANgt8mch6agxdnMTGFBRRMoaOehB5VuN+QBM//NClUGSVgJ29OB2RR9vZ2OOP2cfsOeCu0mRMZXBVQ1MpRqHed61gm5MzUfICSnIwOhooNWOUOcp0ytXwWRK9vVXYbktzcEQOJhgB4SWQCJSRpsLy1DmRkGJtcHENreGmUrwxj9uHY3as1gpe8CiZYQKhaq0/eTKaAeaYpPwcSIWlVqqQrPbE9LaB8rr1QrOzVuRu52J1kjgR2tN3p6+fPNlskkWLIABY3DYjGkrkZq4nQxo6YUjNKESK5gNjNu9tEeu7eyTY1SPs3h55/foNeacSWalsrYL/S4W0WK+CtChMkqpTkUFHfp6/tgXm5cWZvGwRDEW1QJmvtgDKqABbTT0EZdWe2rStsmpFEsuvsYBoLKgWPbfoJN16lV7clW1LXTTVFCqS1KovugW/SPgqXN9TbtPCQuNIFTFzkd/GkkZRyGgcAOCYCEXgxRtDpzdpD5gJyXIvdZets9w+VqZQdgV/pTLewu5yABvVdYUnO4TgtKjH8yOemqJ5025KnhEcvlDWmJ03r/H73IcBQYmSfMkjVThMJs/47PobbMn7R7WVk4Lkjd6K0zqd7RFRVXtEY3ily1PmshFolSjn8UhClM8DVQxeo4KoqaH1uvu0nEHzRZ8XwL5nyJUZMZ5rPV0g/6d7hj4wG5CdxtT3EfBd08Ohj+Wm0g4dJwjUZLWWhR5BqUq1hjIb039to0+3zftgG9leHfe8SAZRi8ltpkSe7pcLdetzfYV3rQ959XwIXLZm9CveYK2Qb2kcRD24w/C0LZ4teNhYBbVnRKhntOJl1+dlgb7lGfRSA/WDas3O0FdxdkQX/ObycqCJXxusbrV/fFWqIBOY2HenR4+00jlt+KqA/vGadr2rOgZKfqmZxTzGA4x9rEumTOvMqJeGAlj1cF/Auq/W+OqanjvCei6jr/9qro5O2dejq5fB9bKltDBR0ttJqjtYnrHwUBVx7grqxj6SlSiyKQt9lwaODEVscye0Ns9Yd8RAb/M7IH0ANvG53ArnZzvQaBNY+txo4YVkoLnAnMFtQssC0x+A6ANyCGg36RsNlKhOfPTjfWD94+MBUup00LYW4ljR1IN1wFlHV6xVoZFVp1JCjOSrh2+yRQldx5Gu44c4Tjw8aZiRpAxcX937sNhzPAjDznRR1KaH1mznFbBWMCzVzjM9AkFVJZMsxXJr9O0+3t1VORxkxH2fxq6LZw0ZIFo6wqTM8pjwIAi97hGpuzeX3qoh0d7l3e3K7r3gMkWAk9axJJWchdS17ZgyMwipHce2dLyAm1GHb80xZ5uFCsriM6Ko1TcLnIGrbuUUgb1A4Rg3couUdY1K2lTAFYhGZeqk1CeYC0uV90JraO9e0SNHegHODVAXHwJ8GsUyph4whzPuSTxTGC1Ry0As5nLfHQ6+Ttv/vypIxao+fBOn+g4oySRcGUPz9pOCut5zqqpv8lmdr/4bO3dL101ta9S+kB44SXtD2nqdqMNS4NUgbs3fbY1vG0/bUPFQ+9Z3OnBfgh/kQX8gfem+97bwviRvcbVjo5W+v5y7e3pbLfpbeucdeG8KdsHod/Vazx3lruLfW4MdJb+9/RPcUyyoDRoAAA==


name: Search & Summarize Web Data with Perplexity, Gemini AI & Bright Data to Webhooks
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-13T08:06:23.221Z
updated_at: 2025-04-13T08:06:23.221Z
url: https://n8n.io/workflows/3534
scraped_at: 2025-12-24 13:02:45
description:
  Who this is for?
  This workflow is designed for professionals and teams who need real-time, structured insights from Perplexity Search results without manual effort.

  What problem is this workflow solving? 
  This n8n workflow solves the problem of automating Perplexity Search result extraction, cleanup, summarization, and AI-enhanced formatting for downstream use like sending the results to a webhook or another system. 

  What this workflow does

  Automates Perplexity Search via Bright Data
  Uses Bright Data’s proxy-based SERP API to run a Google Search query programmatically. 
  Makes the process repeatable and scriptable with different search terms and regions/zones.

  Cleans and Extracts Useful Content
  The Readable Data Extractor uses LLM-based cleaning to remove HTML/CSS/JS from the response and extract pure text data. 
  Converts messy, unstructured web content into structured, machine-readable format.

  Summarizes Search Results
  Through the Gemini Flash + Summarization Chain, it generates a concise summary of the search results. Ideal for users who don’t have time to read full pages of search results.

  Formats Data Using AI Agent
  The AI Agent acts like a virtual assistant that: - Understands search results
  Formats them in a readable, JSON-compatible form
  Prepares them for webhook delivery

  Delivers Results to Webhook
  Sends the final summary + structured search result to a webhook (could be your app, a Slack bot, Google Sheets, or CRM).

  Setup

  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  In n8n, configure the Google Gemini(PaLM) Api account with the Google Gemini API key (or access through Vertex AI or proxy).
  Update the Perplexity Search Request node with the prompt you wish to perform the search.
  Update the Webhook HTTP Request node with the Webhook endpoint of your choice.

  How to customize this workflow to your needs

  1. Change the Perplexity Search Input

  Default: It searches a fixed query or dataset.

  Customize:
  Accept input from a Google Sheet, Airtable, or a form.
   Auto-trigger searches based on keywords or schedules.

  2. Customize Summarization Style (LLM Output)

  Default: General summary using Google Gemini or OpenAI.

  Customize:

  Add tone: formal, casual, technical, executive-summary, etc.

  Focus on specific sections: pricing, competitors, FAQs, etc.

  Translate the summaries into multiple languages.

  Add bullet points, pros/cons, or insight tags.

  3.Choose Where the Results Go

  Options:

  Email, Slack, Notion, Airtable, Google Docs, or a dashboard.

  Auto-create content drafts for WordPress or newsletters.

  Feed into CRM notes or attach to Salesforce leads.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.chainSummarization"]

workflow_json_compressed:
  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


name: AI Agent: Scrape, Summarize & Save Articles to Notion (Gemini, Browserless)
author_name: Mihai Farcas
author_username: mihailtd
categories: []
created_at: 2025-04-13T08:42:11.141Z
updated_at: 2025-04-13T08:42:11.141Z
url: https://n8n.io/workflows/3535
scraped_at: 2025-12-24 13:02:42
description:
  This n8n workflow automates the process of saving web articles or links shared in a chat conversation directly into a Notion database, using Google's Gemini AI and Browserless for web scraping.

  Who is this AI automation template for?

  It's useful for anyone wanting to reduce manual copy-pasting and organize web findings seamlessly within Notion. A smarter web clipping tool!

  What this AI automation workflow does

  Starts when a message is received
  Uses a Google Gemini AI Agent node to understand the context and manage the subsequent steps. It identifies if a message contains a request to save an article/link.
  If a URL is detected, it utilizes a tool configured with the Browserless API (via the HTTP Request node) to scrape the content of the web page.
  Creates a new page in a specified Notion database, populating it with thea summary scraped content, in a specific format, never leaving out any important details. It also saves the original URL, smart tags, publication date, and other metadata extracted by the AI.
  Posts a confirmation message (e.g., to a Discord channel) indicating whether the article was saved successfully or if an error occurred.

  Setup

  Import Workflow: Import this template into your n8n instance.
  Configure Credentials & Notion Database:
      Notion Database:
          Create or designate a Notion database (like the example "Knowledge Database") where articles will be saved.
           Ensure this database has the following properties (fields):
              Name (Type: Text) - This will store the article title.
              URL (Type: URL) - This will store the original article link.
              Description (Type: Text) - This can store the AI-generated summary.
              Tags (Type: Multi-select) - Optional, for categorization.
              Publication Date (Type: Date) - *Optional, 
  store the date the article was published.
          Ensure the n8n integration has access to this specific database.
  	If you require a different format to the Notion Database, not that you will have to update the Notion tool configuration in this n8n workflow accordingly.
      Notion Credential: Obtain your Notion API key and add it as a Notion credential in n8n. Select this credential in the save_to_notion tool node.
      Configure save_to_notion Tool: In the save_to_notion tool node within the workflow, set the 'Database ID' field to the ID of the Notion database you prepared above. Map the workflow data (URL, AI summary, etc.) to the corresponding database properties (URL, Description, etc.).  In the blocks section of the notion tool, you can define a custom format for the research page, allowing the AI to fill in the exact details you want extracted from any web page!
      Google Gemini AI: Obtain your API key from Google AI Studio or Google Cloud Console (if using Vertex AI) and add it as a credential. Select this credential in the "Tools Agent" node.
      Discord (or other notification service): If using Discord notifications, create a Webhook URL (instructions) or set up a Bot Token. Add the credential in n8n and select it in the discord_notification tool node. Configure the target Channel ID.
      Browserless/HTTP Request:
          Cloud: Obtain your API key from Browserless and configure the website_scraper HTTP Request tool node with the correct API endpoint and authentication header.
          Self-Hosted: Ensure your Browserless Docker container is running and accessible by n8n. Configure the website_scraper HTTP Request tool node with your self-hosted Browserless instance URL.
  Activate Workflow: Save test and activate the workflow.

  How to customize this workflow to your needs

  Change AI Model:** Experiment with different AI models supported by n8n (like OpenAI GPT models or Anthropic Claude) in the Agent node if Gemini 2.5 Pro doesn't fit your needs or budget, keeping in mind potential differences in context window size and processing capabilities for large content.
  Modify Notion Saving:** Adjust the save_to_notion tool node to map different data fields (e.g., change the summary style by modifying the AI prompt, add specific tags, or alter the page content structure) to your Notion database properties.
  Adjust Scraping:** Modify the prompt/instructions for the website_scraper tool or change the parameters sent to the Browserless API if you need different data extracted from the web pages. You could also swap Browserless for another scraping service/API accessible via the HTTP Request node.

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.notionTool","n8n-nodes-base.discordTool","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6520 characters]


name: Extract & Summarize Bing Copilot Search Results with Gemini AI and Bright Data
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-13T08:51:07.772Z
updated_at: 2025-04-13T08:51:07.772Z
url: https://n8n.io/workflows/3536
scraped_at: 2025-12-24 13:02:46
description:
  Who is this for?
  This workflow automates the process of querying Bing's Copilot Search, extracting structured data from the results, summarizing the information, and sending a notification via webhook. It leverages the Microsoft Copilot to retrieve search results and integrates AI-powered tools for data extraction and summarization.

  What problem is this workflow solving?

  Data Analysts and Researchers: Who need to gather and summarize information from Bing search results efficiently.​

  Developers and Engineers: Looking to integrate Bing search data into applications or services.​

  Digital Marketers and SEO Specialists: Interested in monitoring search engine results for specific keywords or topics.

  What this workflow does

  Manually extracting and summarizing information from search engine results can be time-consuming and error-prone. This workflow automates the process by:​

  Performing Bing searches using Bright Data's Bing Search API.​

  Extracting structured data from the search results.​

  Summarizing the extracted information using AI tools.​

  Sending the summarized data to a specified endpoint via webhook.

  Setup

  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  In n8n, configure the Google Gemini(PaLM) Api account with the Google Gemini API key (or access through Vertex AI or proxy).
  Update the Perform a Bing Copilot Request node with the prompt you wish to perform the search.
  Update the Structured Data Webhook Notifier node with the Webhook endpoint of your choice.
  Update the Summary Webhook Notifier node with the Webhook endpoint of your choice.

  How to customize this workflow to your needs

  Modify Search Queries: Adjust the search terms to target different topics or keywords.​

  Change Data Extraction Logic: Customize the extraction process to capture specific data points from the search results.​

  Alter Summarization Techniques: Integrate different AI models or adjust parameters to change how summaries are generated.​

  Update Webhook Endpoints: Direct the summarized data to different endpoints as required.​

  Schedule Workflow Runs: Set up automated triggers to run the workflow at desired intervals.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainSummarization","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  [encoded data, 4140 characters]


name: Process Multiple Prompts in Parallel with Azure OpenAI Batch API
author_name: Greg Evseev
author_username: greg
categories: []
created_at: 2025-04-13T09:34:04.418Z
updated_at: 2025-04-13T09:34:04.418Z
url: https://n8n.io/workflows/3537
scraped_at: 2025-12-24 13:02:46
description:
  Process Multiple Prompts in Parallel with Azure OpenAI Batch API

  Who is this for?
  This workflow is designed for developers and data scientists who want to efficiently send multiple prompts to the Azure OpenAI Batch API and retrieve responses in a single batch process. It is particularly useful for applications that require processing large volumes of text data, such as chatbots, content generation, or data analysis.

  What problem is this workflow solving?
  Sending multiple prompts to the Azure OpenAI API can be time-consuming and inefficient if done sequentially. This workflow automates the process of batching requests, allowing users to submit multiple prompts at once and retrieve the results in a streamlined manner. This not only saves time but also optimizes resource usage.

  What this workflow does
  This workflow:
  Accepts an array of requests, each containing a prompt and associated parameters.
  Converts the requests into a JSONL format suitable for batch processing.
  Uploads the batch file to the Azure OpenAI API.
  Creates a batch job to process the prompts.
  Polls for the job status and retrieves the output once processing is complete.
  Parses the output and returns the results.

  Key Features of Azure OpenAI Batch API
  The Azure OpenAI Batch API is designed to handle large-scale and high-volume processing tasks efficiently. Key features include:
  Asynchronous Processing**: Handle groups of requests with separate quotas, targeting a 24-hour turnaround at 50% less cost than global standards.
  Batch Requests**: Send a large number of requests in a single file, avoiding disruption to online workloads.
  Key Use Cases
  Large-Scale Data Processing**: Quickly analyze extensive datasets in parallel.
  Content Generation**: Create large volumes of text, such as product descriptions or articles.
  Document Review and Summarization**: Automate the review and summarization of lengthy documents.
  Customer Support Automation**: Handle numerous queries simultaneously for faster responses.
  Data Extraction and Analysis**: Extract and analyze information from vast amounts of unstructured data.
  Natural Language Processing (NLP) Tasks**: Perform tasks like sentiment analysis or translation on large datasets.
  Marketing and Personalization**: Generate personalized content and recommendations at scale.

  Setup
  Azure OpenAI Credentials: Ensure you have your Azure OpenAI API credentials set up in n8n.
  Configure the Workflow: 
     Set the az_openai_endpoint in the "Setup defaults" node to your Azure OpenAI endpoint.
     Adjust the api-version in the "Set desired 'api-version'" node if necessary.
  Run the Workflow: Trigger the workflow using the "Run example" node to see it in action.

  How to customize this workflow to your needs
  Modify Prompts**: Change the prompts in the "One query example" node to suit your application.
  Adjust Parameters**: Update the parameters in the requests to customize the behavior of the OpenAI model.
  Add More Requests**: You can add more requests in the input array to process additional prompts.

  Example Input
  [
    {
      "api-version": "2025-03-01-preview",
      "requests": [
        {
          "custom_id": "first-prompt-in-my-batch",
          "params": {
            "messages": [
              {
                "content": "Hey ChatGPT, tell me a short fun fact about cats!",
                "role": "user"
              }
            ]
          }
        },
        {
          "custom_id": "second-prompt-in-my-batch",
          "params": {
            "messages": [
              {
                "content": "Hey ChatGPT, tell me a short fun fact about bees!",
                "role": "user"
              }
            ]
          }
        }
      ]
    }
  ]

  Example Output
  [
    {
      "custom_id": "first-prompt-in-my-batch",
      "response": {
        "body": {
          "choices": [
            {
              "message": {
                "content": "Did you know that cats can make over 100 different sounds?"
              }
            }
          ]
        }
      }
    },
    {
      "custom_id": "second-prompt-in-my-batch",
      "response": {
        "body": {
          "choices": [
            {
              "message": {
                "content": "Bees communicate through a unique dance called the 'waggle dance'."
              }
            }
          ]
        }
      }
    }
  ]

  Additional Notes
  Job Management**: You can cancel a job at any time, and any remaining work will be canceled while already completed work is returned. You will be charged for any completed work.
  Data Residency**: Data stored at rest remains in the designated Azure geography, while data may be processed for inferencing in any Azure OpenAI location.
  Exponential Backoff**: If your batch jobs are large and hitting the enqueued token limit, certain regions support queuing multiple batch jobs with exponential backoff.

  This template provides a comprehensive solution for efficiently processing multiple prompts using the Azure OpenAI Batch API, making it a valuable tool for developers and data scientists alike.

nodes_used:
  ["n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.aggregate","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.memoryManager","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.memoryManager","n8n-nodes-base.executionData","n8n-nodes-base.executionData","n8n-nodes-base.splitOut","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.memoryManager","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.set","n8n-nodes-base.convertToFile","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.executeWorkflow","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4516 characters]


name: Create AI News Videos with HeyGen Avatars and Auto-Post to Social Media
author_name: Sam Yassine
author_username: samyassine
categories: []
created_at: 2025-04-13T10:19:03.143Z
updated_at: 2025-04-13T10:19:03.143Z
url: https://n8n.io/workflows/3538
scraped_at: 2025-12-24 13:02:45
description:
  Automatically generate short AI avatar videos based on trending news, then post them across social media platforms—fully automated using n8n, HeyGen, ChatGPT, and Blotato.

  Tools & Services Used:

  n8n (Self-hosted required due to Community Nodes)
  HeyGen (for creating AI avatar videos)
  OpenAI (for script and caption generation)
  Blotato (for social media distribution)
  Hacker News (for sourcing trending articles)

  Workflow Overview:

  This automation performs the following steps:

  Fetches trending news from Hacker News
  Generates a short script using ChatGPT
  Creates an AI avatar video with HeyGen
  Generates platform-specific captions
  Posts the content across social media with Blotato

  Prerequisites:

  Make sure you have active accounts and API keys for:

  HeyGen
  OpenAI
  Blotato

  How to Use This Template

  Step 1: Import the Template

  Open your self-hosted n8n instance  
  Go to "Workflows" &gt; "Create Workflow"  
  Click the three dots (…) &gt; "Import from File"  
  Upload the downloaded JSON file  

  Step 2: Configure API Keys

  Only two nodes need customization:

  Setup HeyGen: Add your HeyGen API key, avatar ID, and voice ID
  Prepare for Publish: Add your Blotato API key, account IDs, and page IDs

  Optional platforms like Pinterest and Bluesky are already disabled by default.

  Finding Your HeyGen Avatar & Voice IDs
  To customize the AI avatar video:

  Log into your HeyGen Dashboard

  Navigate to "Avatars" → choose or create an avatar → copy the Avatar ID

  Navigate to "Voices" → select a preferred voice → copy the Voice ID

  You can upload a custom avatar or voice if you have access to those features in your plan

  This allows you to align the video style with your brand’s tone and personality.

  Initial Test Run

  For your first run:

  Shorten the AI script in the prompt to 5 seconds
  Enable only one social media platform
  Adjust the wait time to 2 minutes to speed up testing
  Verify that the video is created and successfully posted

  Once successful, enable more platforms and scale your automation.

  Workflow Diagram:

  Use Cases

  Business owners automating daily content
  Creators scaling short-form video production
  Freelancers offering automation as a service
  Anyone building an AI-driven media workflow

  Disclaimer
  This workflow uses Community Nodes, which only function on self-hosted n8n instances.
  This workflow may not work on n8n Cloud without some modifications.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.scheduleTrigger","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.hackerNewsTool","n8n-nodes-base.hackerNewsTool","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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


name: Extract & Summarize Wikipedia Data with Bright Data and Gemini AI
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-13T10:36:32.089Z
updated_at: 2025-04-13T10:36:32.089Z
url: https://n8n.io/workflows/3539
scraped_at: 2025-12-24 13:02:47
description:
  Who this is for?
  This workflow automates the process of Wikipedia data extraction using the Bright Data Web Unlocker, parsing and cleaning the data, and then sending the results to a specified webhook URL for downstream processing, reporting, or integration.

  What problem is this workflow solving?

  Researchers who need structured information from Wikipedia pages regularly.

  Data Engineers building knowledge bases or enriching datasets with factual data.

  Digital Marketers or Content Writers automating fact-checking or content sourcing.

  Automation Enthusiasts who want to trigger external systems with rich context from Wikipedia.

  What this workflow does

  This workflow addresses the challenges of manually retrieving, structuring, and using data from Wikipedia at scale.

  Workflow Breakdown

  Trigger
  Type: Scheduled or Manual
  Purpose: Starts the workflow either on a fixed schedule (e.g., daily) or on-demand via a manual trigger or incoming webhook.

  Bright Data Wikipedia Scraping
  Tool Used: Bright Data Web Unlocker
  Action: Scrape the HTML content of one or multiple Wikipedia article URLs.

  Parse & Extract Structured Data
  The Basic LLM Chain node is responsible for producing a human readable content.

  Summarization
  Summarize the Wikipedia content by utilizing the Summarization Chain node.

  Send to Webhook
  Initiates a Webhook notification to the specified URL as part of the "Summary Webhook Notifier" node.

  Setup

  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  In n8n, configure the Google Gemini(PaLM) Api account with the Google Gemini API key (or access through Vertex AI or proxy).
  Update the Set Wikipedia URL with Bright Data Zone node with the Wikipedia URL and Bright Data Zone.
  Update the Summary Webhook Notifier node with the Webhook endpoint of your choice.

  How to customize this workflow to your needs

  Update Wikipedia URL
  Replace with your own Wikipedia URL of your interest.
  Make sure to set the Wikipedia URL as part of the "Set Wikipedia URL with Bright Data Zone" node.
  Modify Data Extraction Logic
  Extract entire article content or just specific sections by extending the "LLM Data Extractor" node prompt.
  Extend AI Summarization
  Extract key bullet points or entities.
  Create short-form summaries by extending the "Concise Summary Generator" node.
  Extend Summary Webhook Notifier
  Send to Slack, Discord, Telegram, MS Teams via the Webhook notification mechanism.
  Connect to your internal database/API via the Webhook notification mechanism.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainSummarization","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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


name: Generate Company Stories from LinkedIn with Bright Data & Google Gemini
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-13T11:18:22.841Z
updated_at: 2025-04-13T11:18:22.841Z
url: https://n8n.io/workflows/3540
scraped_at: 2025-12-24 13:02:46
description:
  Who this is for?

  The LinkedIn Company Story Generator is an automated workflow that extracts company profile data from LinkedIn using Bright Data's web scraping infrastructure, then transforms that data into a professionally written narrative or story using a language model (e.g., OpenAI, Gemini). The final output is sent via webhook notification, making it easy to publish, review, or further automate.

  This workflow is tailored for:​

  Marketing Professionals**: Seeking to generate compelling company narratives for campaigns.​

  Sales Teams**: Aiming to understand potential clients through summarized company insights.​

  Content Creators**: Looking to craft stories or articles based on company data.​

  Recruiters**: Interested in obtaining concise overviews of companies for talent acquisition strategies.​

  What problem is this workflow solving?

  Manually gathering and summarizing company information from LinkedIn can be time-consuming and inconsistent. This workflow automates the process, ensuring:​

  Efficiency**: Quick extraction and summarization of company data.​

  Consistency**: Standardized summaries for uniformity across use cases.​

  Scalability**: Ability to process multiple companies without additional manual effort.

  What this workflow does

  The workflow performs the following steps:​

  Input Acquisition**: Receives a company's name or LinkedIn URL as input.​

  Data Extraction**: Utilizes Bright Data to scrape the company's LinkedIn profile.​

  Information Parsing**: Processes the extracted HTML content to retrieve relevant company details.​

  Summarization**: Employs AI Google Gemini to generate a concise company story.

  Output Delivery**: Sends the summarized content to a specified webhook or email address.

  Setup

  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  In n8n, configure the Google Gemini(PaLM) Api account with the Google Gemini API key (or access through Vertex AI or proxy).
  Update the LinkedIn URL by navigating to the Set LinkedIn URL node.
  Update the Webhook HTTP Request node with the Webhook endpoint of your choice.

  How to customize this workflow to your needs

  Input Variations: Modify the **Set LinkedIn URL node to accept a different company LinkedIn URL.

  Data Points**: Adjust the HTML Data Extractor Node to retrieve additional details like employee count, industry, or headquarters location.​

  Summarization Style**: Customize the AI prompt to generate summaries in different tones or formats (e.g., formal, casual, bullet points).​

  Output Destinations**: Configure the output node to send summaries to various platforms, such as Slack, CRM systems, or databases.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.informationExtractor","@n8n/n8n-nodes-langchain.chainSummarization","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.wait"]

workflow_json_compressed:
  [encoded data, 4160 characters]


name: Create AI-Ready Vector Datasets for LLMs with Bright Data, Gemini & Pinecone
author_name: Ranjan Dailata
author_username: ranjancse
categories: []
created_at: 2025-04-13T14:26:13.036Z
updated_at: 2025-04-13T14:26:13.036Z
url: https://n8n.io/workflows/3542
scraped_at: 2025-12-24 13:02:45
description:
  Who this is for?
  This workflow enables automated, scalable collection of high-quality, AI-ready data from websites using Bright Data’s Web Unlocker, with a focus on preparing that data for LLM training. Leveraging LLM Chains and AI agents, the system formats and extracts key information, then stores the structured embeddings in a Pinecone vector database.

  This workflow is tailored for:​

  ML Engineers & Researchers building or fine-tuning domain-specific LLMs.

  AI Startups needing clean, structured content for product training.

  Data Teams preparing knowledge bases for enterprise-grade AI apps.

  LLM-as-a-Service Providers sourcing dynamic web content across niches.

  What problem is this workflow solving?

  Training a large language model (LLM) requires vast amounts of clean, relevant, and structured data. Manual collection is slow, error-prone, and lacks scalability. 

  This workflow:

  Automatically extracts web data from specified URLs.

  Bypasses anti-bot measures using Bright Data’s Web Unlocker.

  Formats, cleans, and transforms raw content using LLM agents.

  Stores semantically searchable vectors in Pinecone.

  Makes datasets AI-ready for fine-tuning, RAG, or domain-specific training.

  What this workflow does

  This workflow automates the process of collecting, cleaning, and vectorizing web content to create structured, high-quality datasets that are ready to be used for LLM (Large Language Model) training or retrieval-augmented generation (RAG).

  Web Crawling with Bright Data Web Unlocker.
  AI Information Extraction and Data Formatting.
  AI Data Formatting to produce a JSON structured data.
  Persistence in Pinecone Vector DB.
  Handle Webhook notification of structured data.

  Setup

  Sign up at Bright Data.
  Navigate to Proxies & Scraping and create a new Web Unlocker zone by selecting Web Unlocker API under Scraping Solutions.
  In n8n, configure the Header Auth account under Credentials (Generic Auth Type: Header Authentication).

  The Value field should be set with the
  Bearer XXXXXXXXXXXXXX. The XXXXXXXXXXXXXX should be replaced by the Web Unlocker Token.
  A Google Gemini API key (or access through Vertex AI or proxy).
  Update the LinkedIn URL by navigating to the Set LinkedIn URL node.
  Update the Set Fields - URL and Webhook URL node with the URL for web data extraction and the Webhook notification URL.

  How to customize this workflow to your needs

  Set Your Target URLs. Target sites that are high-quality, domain-specific, and relevant to your LLM's purpose.
  Adjust Bright Data Web Unlocker Settings. Geo-location, Headers / User-Agent strings, Retry rules and proxies.
  Modify the Information Extraction Logic. Change prompts to extract specific attributes. Use structured templates or few-shot examples in prompts.
  Swap the Embedding Model. Use OpenAI, Hugging Face or other your own hosted embedding model API.
  Customize Pinecone Metadata Fields. Store extra fields in Pinecone for better filtering & semantic querying.
  Add Data Validation or Deduplication. Skip duplicates or low-quality content.

nodes_used:
  ["n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsGoogleGemini","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.informationExtractor","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4284 characters]


name: Automated LinkedIn Job Hunter: Get Your Best Daily Job Matches by Email
author_name: Tianyi
author_username: muzi
categories: []
created_at: 2025-04-13T16:34:43.497Z
updated_at: 2025-04-13T16:34:43.497Z
url: https://n8n.io/workflows/3543
scraped_at: 2025-12-24 13:02:45
description:
  Overview

  This n8n template automates the tedious process of searching for jobs on LinkedIn. By integrating with tools for web scraping and leveraging AI (Google Gemini) for intelligent matching, this workflow delivers a curated list of the top 5 most relevant job opportunities published within past 24h directly to your inbox daily, based on your unique resume and preferences.The cost is only 0.1 USD per day and there is no subscription needed.

  Who is this for?

  This template is ideal for:

  Active job seekers wanting to save time and effort.
  Professionals looking to discreetly monitor relevant new opportunities.
  Individuals seeking a highly personalized job feed tailored to their resume and preferences.
  Anyone overwhelmed by manual job searching on LinkedIn.

  What is Included:

  n8n Workflow Template:** The complete workflow file (.json) ready to import into your n8n instance.
  Video Guidance:** A step-by-step video walkthrough showing you exactly how to set up and configure the workflow.

  What problem is this workflow solving?

  Finding the right job on LinkedIn can be overwhelming and time-consuming. Sifting through hundreds of listings, tailoring searches, and checking daily takes significant effort. This workflow solves the problem of manual, repetitive job searching by automating the discovery and filtering process, ensuring you see the most relevant opportunities without the daily grind and reducing the risk of missing out on your ideal role.

  What this workflow does:

  This workflow automates the following steps:

  Scheduled Job Fetching: Runs automatically (default: daily at 8 AM) to find the latest jobs.
  Resume Processing: Downloads your resume (PDF) from Google Drive and extracts the text content.
  Targeted LinkedIn Scraping: Uses Apify to scrape recent job listings from LinkedIn based on your custom search URL.
  AI-Powered Matching: Employs an AI agent (Google Gemini) to analyze scraped jobs against your resume text and specified preferences.
  Top 5 Ranking & Selection: Identifies and ranks the opportunities, selecting the 5 best matches for you.
  Personalized Email Reporting: Generates and sends a detailed HTML email containing the top 5 jobs, including company name, job title, industry, a personalized reason for the match, and a direct application link.

  Setup:

  Follow these steps to configure the workflow:

  Core Connections:
      Connect your Google Drive and Gmail accounts to n8n via the Credentials section.
      Ensure your n8n environment has access/credentials configured for the AI model used by the AI Agent node (e.g., Google Gemini).
  Apify Integration:
      Sign up for an Apify account (apify.com) and obtain your API key.
      Action: In the Input node, paste your Apify API Key into the Value field for the ApifyAPIKey assignment.
  Resume Setup:
      Upload your current resume in PDF format to your Google Drive.
      Action: Find the File ID of the uploaded resume in Google Drive (part of the shareable link). Paste this File ID into the File ID parameter within the DownloadResume (Google Drive) node.
  LinkedIn Search Definition:
      Go to LinkedIn Jobs (www.linkedin.com/jobs/search/) using an incognito/private browser window to ensure you get a public URL.
      Apply all your desired filters (keywords, location, date posted, job type, industry, etc.).
      Copy the complete URL from your browser's address bar.
      Action: In the ScrapeLinkedin (HTTP Request) node, navigate to the Body &gt; JSON parameter. Replace the example URL within the urls array [ "YOUR_LINKEDIN_SEARCH_URL_HERE" ] with the URL you just copied. Make sure the URL is enclosed in double quotes.
  Personalization Inputs:
      Action: Go to the Input node:
          In the Preference assignment, replace the example text in the Value field with your detailed job preferences (e.g., "Seeking remote Data Scientist roles in SaaS companies with less than 1000 employees, strong preference for Python/ML focus").
          In the EmailAddressToReceiveJobRecommendations assignment, enter the email address where you want to receive the daily job list in the Value field.
  Email Sender Configuration:
      Action: In the Email the top job recommendations (Gmail) node, ensure the correct Gmail credential (the account you want to send emails from) is selected.

  How to customize this workflow:

  Run Schedule:** Modify the settings in the Schedule Trigger node to change the time or frequency (e.g., twice daily, weekly).
  Job Search Criteria:** Update the LinkedIn search URL in the ScrapeLinkedin node whenever you want to target different roles, industries, or locations.
  Matching Preferences:** Refine the text in the Preference field within the Input node to guide the AI's matching process more accurately.
  AI Behavior:** Advanced users can adjust the system prompt within the AI Agent: Find Best-matched jobs node to change how the AI analyzes or presents information (ensure the output structure still matches the Structured Output Parser and email node expectations).
  Number of Jobs Scraped:** Change the count value (e.g., from 100) in the JSON Body of the ScrapeLinkedin node. Note that higher numbers may increase Apify costs/usage.
  Number of Jobs Emailed:** To change the number of recommendations (e.g., top 3 or top 10), you'll need to:
      Modify the AI prompt in the AI Agent: Find Best-matched jobs node to request the desired number.
      Adjust the Structured Output Parser node's example/schema if needed.
      Update the HTML code in the Email the top job recommendations node to correctly loop through and display the new number of jobs.
  Email Appearance:** Edit the HTML within the Message field of the Email the top job recommendations node to customize the email's style, colours, or layout.

  Category:

  Job Search, Automation, AI, Productivity, Career Management

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.outputParserAutofixing","n8n-nodes-base.googleDrive","n8n-nodes-base.extractFromFile","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.gmail","n8n-nodes-base.set","n8n-nodes-base.aggregate","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.lmChatGoogleGemini"]

workflow_json_compressed:
  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


name: Generate SEO Keywords with AI: Topic to Keyword List in Seconds
author_name: Gegenfeld
author_username: gegenfeld
categories: []
created_at: 2025-04-13T19:33:34.486Z
updated_at: 2025-04-13T19:33:34.486Z
url: https://n8n.io/workflows/3544
scraped_at: 2025-12-24 13:02:44
description:
  Who is this template for?
  This AI Keyword Generator workflow template is designed for marketers, SEO specialists, and content creators who need to quickly generate high-quality keyword lists for their content strategy. Instead of spending hours researching keywords manually, this AI-powered tool delivers targeted keyword suggestions based on your specific criteria.

  What problem does this workflow solve?
  Keyword research is a time-consuming but essential part of SEO and content marketing. Many professionals struggle with:
  Finding relevant keywords that match specific search intents
  Balancing between short-tail and long-tail keywords
  Generating comprehensive keyword lists that cover different aspects of a topic
  Consistently identifying high-potential keywords for content creation

  What this workflow does
  This n8n workflow leverages AI to automatically generate a customized list of 15-20 high-potential keywords based on three simple inputs:
  Topic** - The main subject area you want keywords for
  Search Intent** - Choose between Navigational, Informational, Commercial, or Transactional
  Keyword Type** - Select Short-Tail or Long-Tail keywords

  The workflow processes your input through an AI language model that follows SEO best practices to generate relevant keywords. It then formats the results and delivers them directly to your email inbox, ready for use in your SEO strategy.

  Setup
  Setting up this workflow is straightforward:

  Add your credentials for the AI language model in the "Select your Chat Model" node
     Click on the node and connect your Groq account (and choose any LLM you want, like: OpenAI, Claude AI or Llama)  or replace with another LLM provider
     
  Configure email delivery in the "Send Result" node
     Update the "sendTo" parameter with your email address
     Add your Gmail credentials or replace with your preferred email service

  Test your workflow by clicking the "Test Workflow" button
     Use the form to enter your topic, search intent, and keyword type
     Check your email for the generated keyword report

  Activate the workflow once testing is complete

  How to customize this workflow
  The template is highly adaptable to fit your specific needs:

  Replace the email node** with a database or spreadsheet node to store keywords
  Modify the AI prompts** in the "AI Keyword Agent" to adjust the keyword generation strategy
  Add additional filtering nodes** to further refine keywords based on custom criteria
  Integrate with other SEO tools** to analyze competition or search volume for generated keywords

  This workflow serves as a powerful starting point for automating your keyword research process, saving you valuable time while delivering consistent, high-quality results.

nodes_used:
  ["n8n-nodes-base.set","@n8n/n8n-nodes-langchain.lmChatGroq","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.aggregate","n8n-nodes-base.code","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.formTrigger","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE52W227jRgyGX0XQtSeds2Z81UXaLIKiu8X2dFEEBWeG4whrS15ZTjYI8u6l7DQ+RN4keydZHPIj+Q/p+7JO5bTMaXERbtcXf3/6cNn9+fFLOSkX2EM5vS/rZtVDE/FysIOYXFLZo0KRjQaeBTrnhXI20wdfCZWMFNHwkHmORkBK2XgtTKy4T0h+e1ws59DjeYdp9Tv26+V5S79gjxSg79b4MCkbWCBFe3dZ/IJ3t22XivfYYAd92xXhjl5m2GScp8EdzFbl9J8rOtQmHB7vtylpdFL6oJmUWTMtlGQhOsVAZec4gODoy6dQBFL8BD0UuWsXxUXbLQbfd8vhW+MatnHOAqzwbIU9fVu2q7qv24YCMmH5hElODEvoyF+PHYHcD4m0Pa4um4t5e7tNbuv0LzLYnFVn+mHyCGxBuhRdZoCYmTaOMyeDY9LbDDEkFFbtA88x9sVdu+6K82voi1+JcL6D/pGof9iRz6GZxWuom7P5YjB/37VfDrOQmk+EG0vigFg88YI0RjhCRVTEq1JmwdrMkrIqaZtiiKEc6+U76l7/ClJ4tDuCHK/0IeSZe8L0OfiQInVfq8h0lSNzIDnzgUuoAs8Adg9zNutwRvLcquG3tm76VZFJd6cTONIH/O/iEP0k+Usa2VXcGYdGoGI82IoUwiXznpKKiURttbHaml0qP3/tOyCJQJM2gobTyLFNR7SWv6rQ8omtSuC8T4nFzBXT4AwLRkSGEYPXCqgLB+olqE+4Ws9PQ80WUM8PqdwT1S2G67b9vBlKBqSELD1ToZJMY2Wow5YzK3X2KjgXdC5fSuRsV+ZkbZI5SWJ3nukgKuajdJSZN9FUQMLZT6Wv4+e74kO7afiJkbGxeTQ5yoeGx3GVy9g2/SCxaVmevn8CA/cBMrOCG6o4IgNwiQmuggaLNJDjKKZ4MyczA6j+TtCQfIVZVSy4hMMNtAw8GCai8MFnAWpfGpfNct1/ewLTdVz80dWzGXZHnMqOCUTbiiutHUuJ2qitA+awsiRQk5zWIVc2vCyQndaN0A6lR2bRkuCi98zRgmHRR+uFS8GENFp5+ebKD6tFvbXwZE0Xv76hOBnmKxootLP6upltjuJXjOvB/ccuUQGn5Y0YfNxsz28LJqOrAl1hTFWgGyANA23pSXInvKK1qoaOEURDS4hObRzvdY7e6PYOCdA6HtJ8YcVujCf0XyPh13LKH66uiOjZxB3z+q0pN+p15MA47ciEGnU4kteYw+/ZLCfijW5+ign1v8P2XNPifPxtP/7JKM+OPWvE69FHM39Lfg8P/wHnV/B6kwoAAA==


name: Automate Purchase Order Form Submissions from Outlook Excel Attachments with AI
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-04-14T10:29:07.345Z
updated_at: 2025-04-14T10:29:07.345Z
url: https://n8n.io/workflows/3545
scraped_at: 2025-12-24 13:02:45
description:
  This n8n template imports purchase order submissions from Outlook and converts attached purchase order forms in XLSX format into structured output.

  Data entry jobs with user-submitted XLSX forms are time consuming, incredibly mundane but necessary tasks which in likelihood are inherited and critical to business operation.

  While we could dream of system overhauls and modernisation, the fact is that change is hard. There is another way however -  using n8n and AI! N8N offers an end-to-end solution to parse XLSX form attachments using LLM-powered OCR and send the extracted output to your ERP or otherwise.

  How it works
  An Outlook trigger is used to watch for incoming purchase order forms submitted via a shared inbox.
  The email attachment for the submission is a form in xlsx format - like this one Purchase Order Example - which is imported into the workflow.
  The 'Extract from File' node is used with the 'code' node to convert the xlsx file to markdown. This is so our LLM can understand it.
  The Information Extractor node is used to read and extract the relevant purchase order details and line items from the form.
  A simple validation step is used to check for common errors such as missing PO number or the amounts not matching up. A notification is automated to reply to the buyer if so.
  Once validation passes, a confirmation is sent to the buyer and the purchase order structured output can be sent along to internal systems.

  How to use
  This template only works if you're expecting and receiving forms in XLSX format. These can be invoices, request forms as well as purchase order forms.
  Update the Outlook nodes with your email or other emails as required.
  What's next? I've omitted the last steps to send to an ERP or accounting system as this is dependent on your org.

  Requirements
  Outlook for Emails
    Check out how to setup credentials here: https://docs.n8n.io/integrations/builtin/credentials/microsoft
  OpenAI for LLM document understanding and extraction.

  Customising the workflow
  This template should work for other Excel files. Some will be more complicated than others so experiment with different parsers and extraction tools and strategies.
  Customise the Information Extractor Schema to pull out the specific data you need. For example, capture any notes or comments given by the buyer.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.informationExtractor","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.extractFromFile","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.microsoftOutlook","n8n-nodes-base.microsoftOutlookTrigger","n8n-nodes-base.microsoftOutlook","n8n-nodes-base.microsoftOutlook","n8n-nodes-base.noOp","n8n-nodes-base.set","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.textClassifier","n8n-nodes-base.noOp","@n8n/n8n-nodes-langchain.lmChatOpenAi"]

workflow_json_compressed:
  [encoded data, 7540 characters]


name: Screen and Score Resumes from Gmail to Sheets with AI
author_name: Aditya Sharma
author_username: hicounselor
categories: []
created_at: 2025-04-14T11:05:17.689Z
updated_at: 2025-04-14T11:05:17.689Z
url: https://n8n.io/workflows/3546
scraped_at: 2025-12-24 13:02:43
description:
  Description

  This intelligent n8n automation streamlines the process of collecting, extracting, and scoring resumes sent to a Gmail inbox—making it an ideal solution for recruiters who regularly receive hundreds of applications. The workflow scans incoming emails with attachments, extracts relevant candidate information from resumes using AI, evaluates each candidate based on customizable criteria, and logs their scores alongside contact details in a connected Google Sheet.

  Who Is This For?

  Recruiters & Hiring Managers**: Automate the resume screening process and save hours of manual work.
  HR Teams at Startups & SMBs**: Quickly evaluate talent without needing large HR ops infrastructure.
  Agencies & Talent Acquisition Firms**: Screen large volumes of resumes efficiently and with consistent criteria.
  Solo Founders Hiring for Roles**: Use AI to help score and shortlist top candidates from email applications.

  What Problem Does This Workflow Solve?

  Manually reviewing resumes is time-consuming, error-prone, and inconsistent. This workflow solves these challenges by:

  Automatically detecting and extracting resumes from Gmail attachments.
  Using OpenAI to intelligently extract candidate info from unstructured PDFs.
  Scoring resumes using customizable evaluation criteria (e.g., relevant experience, skills, education).
  Logging all candidate data (Name, Email, LinkedIn, Score) in a centralized, filterable Google Sheet.
  Enabling faster, fairer, and more efficient candidate screening.

  How It Works

  1. Gmail Trigger
  Runs on a scheduled interval (e.g., every 6 or 24 hours).
  Scans a connected Gmail inbox (using OAuth credentials) for unread emails that contain PDF attachments.

  2. Extract Attachments
  Downloads the attached resumes from matching emails.

  3. Parse Resume Text
  Sends the PDF file to OpenAI's API (via GPT-4 or GPT-3.5 with file support or via base64 + PDF-to-text tool).
  Prompts GPT with a structured format to extract fields like Name, Email, LinkedIn, Skills, and Education.

  4. Score Resume
  Evaluates the resume on predefined scoring logic using AI or logic inside the workflow (e.g., "Has X skill = +10 points").

  5. Log to Google Sheets
  Appends a new row in a connected Google Sheet, including:
    Candidate Name
    Email Address
    LinkedIn URL
    Resume Score

  Setup

  Accounts & API Keys
  You’ll need accounts and credentials for:

  n8n** (hosted or self-hosted)
  Google Cloud Platform** (for Gmail, Drive, and Sheets APIs)
  OpenAI** (for GPT model access)

  Google Sheet
  Make a Google Sheet and connect it via Google Sheets node in n8n. Columns should include:
    Name
    Email
    LinkedIn
    Score

  Configuration

  Google Cloud:
  Enable Gmail API and Google Sheets API.
  Set up OAuth 2.0 Credentials in Google Console.
  Connect n8n Gmail, Drive, and Sheets nodes to these credentials.

  OpenAI:
  Generate an API Key.
  Use the HTTP Request node or official OpenAI node to send prompt requests.

  n8n Workflow:
  Add Gmail Trigger.
  Add extraction logic (e.g., filter PDFs).
  Add OpenAI prompt for resume parsing and scoring.
  Connect structured output to a Google Sheets node.

  Requirements

  Accounts:
  n8n**
  Google** (Gmail, Sheets, Drive, Cloud Console)
  OpenAI**

  API Keys & Credentials:
  OpenAI API Key
  Google Cloud OAuth Credentials
  Gmail Access Scopes (for reading attachments)
  Configured Google Sheet
  OpenAI usage (after free tier)
  Google Cloud API usage (if exceeding free quota)

nodes_used:
  ["@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.stickyNote","n8n-nodes-base.extractFromFile","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.googleSheets","n8n-nodes-base.gmailTrigger"]

workflow_json_compressed:
  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


name: Convert Text to Speech with Local KOKORO TTS
author_name: bswlife
author_username: bswlife
categories: []
created_at: 2025-04-14T11:43:43.518Z
updated_at: 2025-04-14T11:43:43.518Z
url: https://n8n.io/workflows/3547
scraped_at: 2025-12-24 13:02:44
description:
  Disclaimer
  The Execute Command node is only supported on self-hosted (local) instances of n8n.

  Introduction


  KOKORO TTS - Kokoro TTS is a compact yet powerful text-to-speech model, currently available on Hugging Face and GitHub. Despite its modest size—trained on less than 100 hours of audio—it delivers impressive results, consistently topping the TTS leaderboard on Hugging Face. Unlike larger systems, Kokoro TTS offers the advantage of running locally, even on devices without GPUs, making it accessible for a wide range of users.

  Who will benefit from this integration?

  This will be useful for video bloggers, TikTokers, and it will also enable the creation of a free voice chat bot. Currently, TTS models are mostly paid, but this integration will allow for fully free voice generation. The possibilities are limited only by your imagination.

  Note
  Unfortunately, we can't interact with the KOKORO API via browser URL (GET/POST), 
  but we can run a Python script through n8n and pass any variables to it.

  In the tutorial, the D drive is used, but you can rewrite this for any paths, including the C drive.

  Step 1 

  You need to have Python installed. link
  Also, download and extract the portable version of KOKORO from GitHub.

  Create a file named voicegen.py with the following code in the KOKORO folder: (C:\KOKORO). As you can see, the output path is: (D:\output.mp3).

  import sys
  import shutil
  from gradio_client import Client

  Set UTF-8 encoding for stdout
  sys.stdout.reconfigure(encoding='utf-8')

  Get arguments from command line
  text = sys.argv[1] # First argument: input text
  voice = sys.argv[2] # Second argument: voice
  speed = float(sys.argv[3]) # Third argument: speed (converted to float)

  print(f"Received text: {text}")
  print(f"Voice: {voice}")
  print(f"Speed: {speed}")

  Connect to local Gradio server
  client = Client("http://localhost:7860/")

  Generate speech using the API
  result = client.predict(
  text=text,
  voice=voice,
  speed=speed,
  api_name="/generate_speech"
  )

  Define output path
  output_path = r"D:\output.mp3"

  Move the generated file
  shutil.move(result[1], output_path)

  Print output path
  print(output_path)

  Step 2
  Go to n8n and create the following workflow.

  Step 3
  Edit Field Module.
  {
    "voice": "af_sarah",
    "text": "Hello world!"
  }
  Step 4 
  We’ll need an Execute Command module with the command: python 
  C:\KOKORO\voicegen.py “{{ $json.text }}” “{{ $json.voice }}” 1

  Step 5 
  The script is already working, but to listen to it, you can connect a Binary module with the path to the generated MP3 file 
  D:/output.mp3

  Step 6
  Click “Text workflow” and enjoy the result.

  There are more voices and accents than in ChatGPT, plus it’s free.

  P.S.
  If you want, there is a detailed tutorial on my blog.

nodes_used:
  ["n8n-nodes-base.executeCommand","n8n-nodes-base.set","n8n-nodes-base.manualTrigger","n8n-nodes-base.readBinaryFiles"]

workflow_json_compressed:
  H4sIAAAAAAAAE31Uy27bMBD8FZXo0XQpUdQL6KUJihY5uEiKXqqgWJFLR4VMCiKVxDD076VsowkSJTdhOZydmV3qQHbogVQH0hrnwUj8rkhFIFMiLmMUhVZZg0WeJIlO85QLzHSpdKHLAiVTZSoUx7zJdcZzLkUJmeSa52RFPO76DjxeDKjcDfqxv7Chgh5DAz+MOK2IsQodqX6H7nNXLXXMshSpELmmqYhTWsaspE0TM5AFz3XRBGYDOwzo69FE/d7fWRM5ObS9n5vu+/nIFIYeuWkDDtf4iHIMSuxuB0YFWG9d61trQmsaM7ZK2G0owhCIPQ5ujkOewRX5fG5yUdX11eZqc72p63vbStyiWff7qCaHQ/Txr7Nm7fHRR9NUk+fFI/ZUjWtDppPKX6HPUUE8rc7247IEnsQJzUrJaMpn+4ksaF5wkXMdZ0LlT/Z/gHOt2Ub3MLTQdCHHt+w79C8882TR8y7cCdcHeAh428/ouR4Uz0Y2o+9HH84PtYmCwaOvmlThE/QfF5juarI6nc1BnI6+YdfZ6MEOnfpQk9pMCxHwdfo/BIUNY4ViVHDAEEJaUBBC0BJF2mTIUKv0KYQbD8Pbcw8DHKH7ObTbLQ4vIhDpUgRvD0driJuk0RQaycNuqoIWTd5QhalkecEgY+Wz4XSwj5wdj9u2LG5AUF9aA8P+a3ua3jN58fKAdEDeYIfS2yEwXlaf7HEo613PXy/WikD3AHt3GtwlzO9cQ+dwCsTSGhN4ziM+BznvALSzgPAkzWkb3tmzI3YV/hwKH0nFptvboOE1fon1nce7yPoav6h1IfYFumn6BzmaBjf3BAAA


name: Audit Google Drive File Permissions for Access Control Management
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-04-14T14:38:23.283Z
updated_at: 2025-04-14T14:38:23.283Z
url: https://n8n.io/workflows/3549
scraped_at: 2025-12-24 13:02:45
description:
  This n8n template reviews and audits recently active Google Drive files and reports on files with excessively open permissions. This shows how you can automate simple compliance tasks for access control management.

  File Sharing Permissions are routinely abused when access needs and scopes expand to many colleagues, clients and users. Often, granting excessively open permissions means you can get back to work rather than deal with numerous access request notifications. Whilst sometimes justified, the problem is that the permissions are rarely reverted to a safer setting at a later date when it is no longer needed.

  This template serves to improve your security posture by giving frequent reminders of these open files so that they can be actioned and not forgotten about.

  See example Audit Report here: https://docs.google.com/spreadsheets/d/1V2aiLhp3_nH7EBniMn7D0kFHg7-A5NjpDZXMhb4F5UI/edit?gid=503992967

  How it works
  A scheduled trigger runs everyday to generate a new audit report. A new sheet is created in a designated Google Sheets document to store the day's results.
  The Google Drive node is used with Advanced Search params to fetch recently modified files for the user with each file result containing the current permission settings.
  The results are filtered for those with publicly accessible "anyone with link" and sharing with external users via domain.
  The results are then manipulated into rows so that we can append them to the Sheet we created earlier.
  The audit Google Sheet is updated with the results and an audit report is sent to the user to action.

  How to use
  Set the scheduled trigger to a more appropriate interval which works for you or your organisation.
  Consider using allowlists for organisations you frequently share with to reduce the number of false positives.
  The results can be forwarded to other security or analytical products as required.

  Requirements
  Google Drive for Document Management
  Google Sheet for Reports and Data Collection
  Gmail to Email Reports

  Customising the workflow
  Not using Google? Apply the same approach using Microsoft Sharepoint or Dropbox.
  If your security policies require it, you could automate fixing the file permissions as a proactive action instead and notify the user later.

nodes_used:
  ["n8n-nodes-base.filter","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","n8n-nodes-base.splitOut","n8n-nodes-base.aggregate","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.gmail","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.filter","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6652 characters]


name: AI-Powered YouTube Shorts Automation: Create & Publish with OpenAI & ElevenLabs
author_name: Jonas Busch
author_username: jonasbusch
categories: []
created_at: 2025-04-15T00:18:11.214Z
updated_at: 2025-04-15T00:18:11.214Z
url: https://n8n.io/workflows/3553
scraped_at: 2025-12-24 13:02:43
description:
  👥 Who is this for?

  Digital marketers, content creators, social media managers, and businesses who want to use AI marketing automation for YouTube Shorts without spending hours on production. This AI workflow helps anyone looking to create more short-form video marketing content without needing fancy editing skills or tons of time. It's perfect for marketing teams who want to automate content creation while keeping their brand's voice and boosting audience engagement through artificial intelligence technology.

  🔍 What problem does this workflow solve?

  Let's be honest - creating high-performing YouTube Shorts consistently takes way too much work. You need AI script generation, voiceover production, video editing, and a solid content marketing strategy to keep your channel growing. Our intelligent automation workflow turns this whole headache into a simple two-click process, while still giving you videos that look and sound professional. This AI solution tackles the real marketing challenge of scaling short-form video production without sacrificing quality or burning through your team's resources.

  ⚙️ What this workflow does

  This all-in-one AI marketing automation solution handles your entire YouTube Shorts creation process through five easy steps:

  🧠 Smart Idea Generation**: Advanced AI creates engaging video concepts, SEO-optimized titles, and descriptions that work with YouTube's algorithm and improve content marketing performance
  🎤 Natural Voice Creation**: Makes professional-sounding voiceovers using ElevenLabs' artificial intelligence technology, no recording equipment needed
  🖼️ Automatic Visual Creation**: Uses cutting-edge AI models to make custom images and animated clips that match your video marketing style and brand identity
  🎬 Smart Video Editing**: AI-powered editing automatically combines all elements with smooth transitions for maximum viewer retention and marketing impact
  📱 Easy Content Distribution**: Automates the YouTube publishing process with proper metadata to maximize your marketing reach and content discovery

  The whole marketing automation system runs through Telegram with just two human checkpoints - approving the initial AI idea and giving the final video a thumbs-up. This makes YouTube marketing automation so much easier while letting you keep control over the AI-generated content that gets published.

  🛠️ Setup (About 10-15 minutes)

  Before using this AI marketing automation tool, you'll need:

  n8n installation (cloud or self-hosted)
  Telegram account (to interact with your workflow)
  OpenAI API Key (for AI content generation)
  ElevenLabs API Key (for AI voice creation)
  Replicate API Key (for AI video generation)
  Cloudinary account (for media asset storage)
  Creatomate API Key (for automated video assembly)
  0CodeKit API Key (for script processing automation)
  YouTube channel with API access (for content publishing)

  Just add your API keys to the "Set API Keys" node, connect your Telegram bot, and you're ready to start your automated marketing content creation. We've included a step-by-step video walkthrough in the workflow to make setup super easy for your AI marketing system.

  🔧 How to customize this workflow to your needs

  This AI marketing workflow offers tons of flexibility to fit your specific content strategy:

  Voice Options**: Pick from different AI voices to match your brand's tone and what your audience prefers in marketing content
  Visual Styles**: Choose from over 40 different AI image models to get the perfect visual marketing approach
  Video Effects**: Try various artificial intelligence video models for different animation styles that make your content marketing more engaging
  Content Tweaking**: Adjust the AI prompts to perfectly align with your brand voice and content marketing strategy
  YouTube Settings**: Easily optimize category selection and metadata for better audience targeting with your automated marketing content

  Every part of the AI automation workflow comes with easy-to-follow instructions in color-coded notes, so even if you're new to marketing automation tools, you can still customize everything to fit your needs.

  Transform your YouTube Shorts marketing strategy with this complete AI automation solution that brings together multiple artificial intelligence technologies to help you create consistent, high-quality short-form video content that drives engagement and scales your digital marketing efforts without the usual production headaches.

nodes_used:
  ["@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.telegramTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.set","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.convertToFile","n8n-nodes-base.httpRequest","n8n-nodes-base.youTube","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5984 characters]


name: 💰 Automate Currency Rates Update in Invoices with Google Sheet, ExchangeRate API
author_name: Samir Saci
author_username: samirsaci
categories: []
created_at: 2025-04-15T07:24:16.306Z
updated_at: 2025-04-15T07:24:16.306Z
url: https://n8n.io/workflows/3556
scraped_at: 2025-12-24 13:02:47
description:
  Tags: Automation, Finance, Google Sheets, API

  Note: This workflow uses the Exchange rate API and requires a valid API key.

  Context
  I’m a Supply Chain Data Scientist who builds automations to streamline operations, reduce manual tasks, and boost decision-making through real-time data.

  In this workflow, I automated the task of fetching live currency exchange rates, updating a Google Sheet with the latest values, and archiving historical records — all without writing any code.

  &gt; Improve your productivity by automating admin tasks with n8n!

  📬 For business inquiries, you can add me on LinkedIn

  Who is this template for?
  This template is perfect for:
  Finance teams** tracking multi-currency cashflows
  Analysts** building dashboards or models requiring updated FX data
  Anyone working with spreadsheets** who needs up-to-date exchange rates

  It updates:
  A live sheet with the latest USD-based exchange rates
  An archive tab to track historical changes over time

  How does it work?
  This workflow runs in N8N and performs the following steps:

  🌐 Calls the ExchangeRate API to get the latest rates based on USD
  🧠 Extracts and formats key fields: base currency, timestamp, and conversion values
  📊 Updates a main Google Sheet with the latest data (using upsert logic)
  🗂️ Appends all rates to a second Google Sheet tab for historical tracking

  You can schedule this workflow to run daily, hourly, or on-demand.

  What do I need to start?
  You don’t need to write a single line of code.
  Prerequisites:
  A Google Sheet with two tabs: Rate Sheet and Archives (Link of the publicly available example in the template)
  A valid Exchangerate API key
  Google Sheets API** connected via OAuth2

  Next Steps
  Use the sticky notes in the workflow to understand how to:
  Add your Exchangerate API key
  Map the fields to match your Google Sheet layout
  Schedule the run frequency using the Cron node
  Optionally add Slack or email alerts if the base rate changes

  For more information, check my tutorial:



  🎥 Watch My Tutorial

  🚀 Want to build finance automation workflows like this?
  📬 Let’s connect on LinkedIn

  Notes
  You can adapt this template for other currencies by changing the API endpoint


  This workflow was built using *n8n 1.85.4**
  Submitted: April 15th, 2025*

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.httpRequest","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5952 characters]


name: Export Wordpress to PineCone Vector Store
author_name: Theo Marcadet
author_username: theomarcadet
categories: []
created_at: 2025-04-15T09:22:15.767Z
updated_at: 2025-04-15T09:22:15.767Z
url: https://n8n.io/workflows/3557
scraped_at: 2025-12-24 13:02:47
description:
  Click here to access this Workflow for free.

  Make your website the knowledge base of your LLM chatbot


  This workflow automatically syncs your WordPress content (Pages and Posts) into a vector database like Pinecone, making it searchable and usable by AI agents through embeddings. This allows your AI chatbot to stay continuously up to date with your latest site content — without manual uploads or retraining steps.

  It pulls all published and private content via WordPress's REST API, processes the data into clean JSON, and sends it to Pinecone using vector embeddings (OpenAI by default, but swappable). This enables a dynamic AI knowledge base that grows with your website.

  Best of all, you don’t need to modify your workflow: keep managing your content in WordPress — this automation takes care of the rest.

  Requirements

  A WordPress site with API access
  Pinecone account credentials (API Key + Environment)
  OpenAI account (or any LLM with embedding capabilities)
  An n8n instance (cloud or self-hosted)

  Setup

  Configure WordPress Access:
     Create HTTP credentials in n8n with your WordPress site's base URL and authentication.
     This workflow uses the REST API to fetch pages and posts.

  Connect Pinecone and OpenAI:
     Set up credentials for both Pinecone and OpenAI in n8n's Credentials Manager.
     The workflow automatically uses them in the relevant nodes.

  Set Your Schedule:
     The workflow starts with a Schedule node. Open it to adjust how often the sync runs (e.g., daily, weekly).

  Check the Nodes:
     Make sure your folder structure and API URLs match your WordPress setup.
     Adjust filters if needed (only published and private content is fetched by default).

  Usage

  Once the workflow is active:

  It runs on a defined schedule.
  It fetches all WordPress Pages and Posts.
  It converts them into structured JSON, including metadata (title, tags, URL, categories, etc.).
  It generates embeddings (via OpenAI) and sends them to Pinecone.
  All vectors are stored with rich metadata for easy use in search/chat-based AI tools.

  You’ll have a continuously refreshed, vectorized copy of your WordPress site content.

  Customization

  Replace Pinecone:** You can swap Pinecone for any other vector database by updating the vector node.
  Swap Embedding Provider:** You’re not limited to OpenAI — just replace the embedding step with your LLM of choice.
  Selective Sync:** If you want to sync only posts or only pages:
    Delete the node that fetches the type you don’t want.
    Remove the associated Merge node.
  Schedule:** Edit the first node to control how often the automation runs.

  If you need any help, or have any question, feel free to come discuss about it on Telegram 

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.merge","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterTokenSplitter","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  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


name: Autonomous Customizable Support Chatbot on Intercom + Discord Thread Reports
author_name: Theo Marcadet
author_username: theomarcadet
categories: []
created_at: 2025-04-15T09:29:57.081Z
updated_at: 2025-04-15T09:29:57.081Z
url: https://n8n.io/workflows/3558
scraped_at: 2025-12-24 13:02:46
description:
  Click here to access this Workflow for free.

  Connect your own LLM-boosted chatbot to Intercom (f* their overly priced FlN Agent), and stay in touch on Discord


  This workflow connects your Intercom chat system with your own AI Agent and sends a complete log of each conversation to Discord using threads. It allows you to run a fully automated support system while maintaining full visibility of the bot's behavior in real time.

  For every new conversation in Intercom, a thread is created in a specified Discord channel. Each message from the user, the AI, and even manual human responses is logged to the thread, offering full traceability and transparency.

  You also have fine-grained control over the AI agent. By simply clicking the ⭐️ star in Intercom’s UI, support agents can instantly pause or resume AI responses for a specific chat — no coding or config changes needed.

  Requirements

  A working n8n instance
  An Intercom account with permission to set up webhooks
  A Discord bot with the following permissions:
    Send Messages
    Create Public/Private Threads
    Manage Threads
  API credentials for your preferred LLM (OpenAI is used by default)
  Google Chrome or any browser to access Intercom’s UI

  Setup

  Intercom:
     Go to Intercom’s webhook settings.
     Add a webhook that listens to new incoming messages and points to the Webhook URL in this n8n workflow.
     Make sure to send full conversation data.

  Discord:
     Create a Discord bot and invite it to your server with the required permissions.
     In the Discord + Token node at the top of the workflow:
       Add your bot token
       Add the ID of the channel where threads should be created

  LLM / AI Agent:
     By default, the workflow uses OpenAI via HTTP Request.
     You can substitute it with any LLM provider of your choice.
     Make sure to set up your credentials in n8n and select them in the HTTP nodes.

  HTTP Authentication Tips:
     For both Intercom and Discord API calls, it's recommended to create credentials in n8n's Credential Manager.
     Then, assign those credentials inside each HTTP Request node for a cleaner setup.

  Usage

  When a new conversation starts in Intercom, a Discord thread is created automatically.
  Each message — user input, AI response, and human reply — is logged into the Discord thread in real time.
  The AI replies automatically unless the ⭐️ star is checked in Intercom:
    ☆ Unchecked = AI replies enabled
    ⭐️ Checked = AI replies disabled, human takeover enabled



  This gives you on-the-fly control of each conversation’s automation level directly from the Intercom inbox.

  Customization

  You can replace OpenAI with any LLM that provides a compatible API.
  Discord channel ID, thread naming, and message formatting can be customized to match your team’s preferences.
  You can expand the workflow to handle events like conversation closure or satisfaction ratings for deeper analytics.

  If you need any help, or have any question, feel free to come discuss about it on Telegram 

nodes_used:
  ["n8n-nodes-base.splitOut","n8n-nodes-base.if","n8n-nodes-base.switch","n8n-nodes-base.webhook","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.filter","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.intercom","n8n-nodes-base.intercom","n8n-nodes-base.intercom","n8n-nodes-base.intercom"]

workflow_json_compressed:
  [encoded data, 4276 characters]


name: Automated n8n Workflow Backup System with Google Drive and Archiving
author_name: Theo Marcadet
author_username: theomarcadet
categories: []
created_at: 2025-04-15T09:32:46.476Z
updated_at: 2025-04-15T09:32:46.476Z
url: https://n8n.io/workflows/3559
scraped_at: 2025-12-24 13:02:46
description:
  Click here to access this Workflow for free.

  Automatically save and archive your workflows


  This workflow provides a fully automated system for backing up your n8n workflows to Google Drive. It runs on a schedule (which you can customize) and saves each workflow as a .json file, named after the workflow itself. All active workflows are backed up by default and stored in a specified Google Drive folder of your choice.

  A special feature of this workflow is its ability to archive and clean up old workflows. If you tag a workflow with ARCHIVE (case-sensitive), the workflow will be backed up into a designated Archive subfolder inside your main Google Drive folder — and then automatically deleted from your n8n instance. This keeps your workspace clean and reduces clutter while ensuring everything is safely stored.

  Requirements

  A Google Drive account connected to n8n (via OAuth2 or preferred method)
  An n8n instance with access to your workflows
  A folder in Google Drive for storing backups
    Inside this folder, create a subfolder named Archive
  Folder IDs for both the main and archive folders* (Find it in folder's URL e.g. https://drive.google.com/drive/u/0/folders/1F7Exr2xkZQFvmHmjdFD43K0jfd*)

  Setup

  In your Google Drive, create a main folder for storing backups.
  Inside it, create a subfolder called Archive.
  Retrieve the folder IDs for both folders
  In n8n, connect your Google Drive credentials.
  Open the workflow and insert the folder IDs in the appropriate nodes.
  Optionally, edit the schedule trigger to set your preferred backup frequency.

  Usage

  Once configured, the workflow will:
  Run automatically on the defined schedule
  Back up all existing workflows into your Drive
  For workflows tagged with ARCHIVE:
    Save them into the Archive subfolder
    Delete them from your n8n instance

  The workflow ensures your automation logic is safely versioned, with optional cleanup for outdated or unused flows.

  Customization

  You can modify the schedule to run daily, weekly, or at any custom interval using the built-in Cron node.

  You can also change the folder structure or naming conventions in the Google Drive nodes to match your personal or team preferences.

  Workflows are archived only if they are explicitly tagged with ARCHIVE — this tag is case-sensitive.

  If you need any help, or have any question, feel free to come discuss about it on Telegram 

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDrive","n8n-nodes-base.n8n","n8n-nodes-base.stickyNote","n8n-nodes-base.convertToFile","n8n-nodes-base.convertToFile","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.n8n","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WXTW8bRwyG/4qwF1/MYL4/fCuctHUPKVAbyaHIgTPDcYTIu4a0dhsY/u/lOoGlSCt1pRz0uVzOo/cdcqin5o56bC6emnm76rHNdFWai6bWqLOPyiSnQ00uow/SlkBFpEghpizRpMAXnXYmpiSoWKlzybnKaFxz3vR0d7/Ani6XVFbX1D/cX3b8DfXEC/TLB3o+b9qu0Kq5+JtXH1ZNVWZCrUFTJTBaJkCXA0ShRBZWu0SSM7d4Rxx9nT9TeVjQ7GY5v72l5bDm1/vhShtaeEkNCVf0ZvU9cB13363m/bxreWlpnDjnxyf+FpecuaclIz09f8v2gT+9BMo36vn8OydWoZNPHkLIDoyrjOhDheoCxoCeUsE151XdSzavP8IoOw1GbcCwJc4LbaCwLWBEVKyXVKCTqDYnBqplQ7R+nr98nb3veor7BXsJGmK2tNKMp8UOXpO7tqe250zNjm6voCby7pDegEY9uKsFRBYMPMmEvuRKLo+CqqNBlQg/AVqlLqpGAlRCg8EUIChdIBFbU2LhnZjWoLy/eZfP+m5WhtfaLcqBvXjbdbcLerucP25rG8wk6/XaeFciVnSQI9eIkVEAZhEgZatF0IUKblTLb+9uZh+75Ze66P5Z7cXjj1tKKjWtPF6xYtUCsTpQQVgw0UtIVjko0hfKGKwUadTm41027LI50WQKqJyQrJ7zvBvZU0DNdivNxSSdqkJtmty1j7TsB5f/uP7z/V7U/C3upvt1vtim9Uxrw4RGs4Ys2iJ3QQ3OFwOmGLa4OAnZ1OqDilk5uxfy7GRKvSvqIUrUQQrvLWQq3IESaS5szUVTklNRxGAibTiOjzQ7++Wvy9+vPrw7m7An95aMlmIS67pklJGWnKiAhuvZWIvAB1wFqSw6bYl3gd8ixcVi1vWfafnTpBO8X5Ma8iYVE6BGOZAWxUcht3Z2vYgqU1Iirknf0nCuHqXqTqVro6Y5/8qYlK2VuJcHW7jSreF3MkiQOYXqq0En7Wil6+NPHssCgt5VcFqxI3E9a2sBa2BSHT2gR54uBCrNHU5nIUdJ5QlnJPdxdSJnyayf1g5qxcF1p1lRcuAiKRttDGnT9Q1OcwInF/puX5+oZ0kil4SQvVN89IRBSu+B6ys7i0TZjfd4e3yTj8wpTzW+YOKzMPPMEWUE3uEFWEYDVfFPiCSiRjcK6o4X1IsTZg6O5ust5SHLSziPi/x8h/MhKU/Gw9IHm/tL6DnP74X+bS4Ep9x714GbPjHbjzPCGMXmLDuaYnvBsST/31enpD7bn/tgHxzNvfNfYtSCw5PeOPToPWPZ9wxo47j7fuVY4imHw8gqz8//AcXH8gYcDgAA


name: Extract Trends, Auto-Generate Social Content with AI, Reddit, Google & Post
author_name: Immanuel
author_username: spectrabit
categories: []
created_at: 2025-04-15T10:37:51.062Z
updated_at: 2025-04-15T10:37:51.062Z
url: https://n8n.io/workflows/3560
scraped_at: 2025-12-24 13:02:41
description:
  Extract Trends and Auto-Generate Social Media Content with OpenAI, Reddit, and Google Trends: Approve and Post to Instagram, TikTok, and More

  Description
  What Problem Does This Solve? 🛠️
  This workflow automates trend extraction and social media content creation for businesses and marketers. It eliminates manual trend research and content generation by fetching trends, scoring them with AI, and posting tailored content to multiple platforms. Target audience: Social media managers, digital marketers, and businesses aiming to streamline content strategies.

  What Does It Do? 🌟
  Fetches trending topics from Reddit, X and Google Trends
  Scores trends for relevance using OpenAI.
  Generates content for Twitter/X, LinkedIn, Instagram and Facebook
  Posts to supported platforms 
  Stores results in Google Sheets for tracking

  Key Features 📋
  Real-time trend fetching from Reddit and Google Trends.
  AI-driven trend scoring and content generation (OpenAI).
  Automated posting to Twitter/X, LinkedIn, Instagram, and Facebook.
  Persistent storage in Google Sheets.
  Setup Instructions

  Prerequisites ⚙️
  n8n Instance**: Self-hosted or cloud n8n instance.
  API Credentials**:
    Reddit API: Client ID and secret from Reddit.
    SerpApi (Google Trends): API key from SerpApi, stored in n8n credentials 
    OpenAI API: API key with GPT model access.
    Twitter/X API: OAuth 1.0a credentials with write permissions.
    LinkedIn API: OAuth 2.0 credentials with w_organization_social scope.
    Instagram/Facebook API: Meta Developer app with posting permissions.
    Google Sheets API: Credentials from Google Cloud Console.

  Installation Steps 📦
  Import the Workflow:
     Copy the workflow JSON from the "Template Code" section below.
     Import it into n8n via "Import from File" or "Import from URL".
  Configure Credentials:
     Add API credentials in n8n’s Credentials section for Reddit, SerpApi, OpenAI, Twitter/X, LinkedIn, Instagram/Facebook, and Google Sheets.
     Assign credentials to respective nodes. For example:
       In the Fetch Google Trends node (HTTP Request), use n8n credentials for SerpApi instead of hardcoding the API key.
       Example: Set the API key in n8n credentials as SerpApiKey and reference it in the node’s query parameter: api_key={{ $credentials.SerpApiKey }}.
  Set Up Google Sheets with the following columns (exact column names are case-sensitive)
   -Timestamp | Trend | Score | BrandVoice | AudienceMood |

  Customize Nodes:
  OpenAI Nodes** (Trend Relevance Scoring, Generate Social Media Content): Update the model (e.g., gpt-4o) and prompt as needed.
  HTTP Request Nodes** (Post to Twitter/X, Post to LinkedIn, etc.): Verify URLs, authentication, and payloads.
  Brand Voice/Audience Mood**: Adjust Prepare Trend Scoring Input for your desired brand_voice (e.g., "casual") and audience_mood (e.g., "curious").
  Test the Workflow:
  Fetch Reddit Trends to Store Selected Trends- to score and store trends.
  Retrieve Latest Trends to end) to generate and post content
  Check Google Sheets for posting statuses
  How It Works

  High-Level Steps 🔍
  Fetch Trends**: Pulls trends from Reddit,X and Google Trends.
  Score Trends**: Uses OpenAI to score trends for relevance.
  Generate Content**: Creates platform-specific social media content.
  Post Content**: Posts to LinkedIn,  Facebook or X

  Detailed descriptions are available in the sticky notes within the workflow screenshot above.

  Node Names and Actions

  Trend Extraction and Scoring
  Daily Trigger Idea: Triggers the workflow daily.
  Set Default Inputs: Sets default brand_voice and inputs.
  Fetch Reddit Trends: Fetches Reddit posts.
  Extract Reddit Trends: Extracts trends from Reddit.
  Fetch Google Trends: Fetches Google Trends via SerpApi.
  Extract Google Trends2: Processes Google Trends data.
  Fetch Twitter Mentions: Fetches Twitter mentions.
  Translate Tweets to English: Translates tweets.
  Fix Tweet Translation Output: Fixes translation format.
  Detect Audience Mood: Detects audience mood.
  Fix Audience Mood Output: Fixes mood output format.
  Analyze News Sentiment: Analyzes news sentiment.
  Combine Data (Merge): Merges all data sources.
  Merge Items into Single Item: Combines data into one item.
  Combine Trends and UGC: Combines trends with UGC.
  Prepare Trend Scoring Input: Prepares data for scoring.
  Trend Relevance Scoring: Scores trends with OpenAI.
  Parse Trend Scores: Parses scoring output.
  Store Selected Trends: Stores trends in Google Sheets.

  Content Generation and Posting
  Retrieve Latest Trends: Retrieves trends from Google Sheets.
  Parse Retrieved Trends: Parses retrieved trends.
  Select Top Trends: Selects the top trend.
  Generate Social Media Content: Generates platform-specific content.
  Parse Social Media Content: Parses generated content.
  Generate Images: Generates images for posts (if applicable).
  -Handle Approvals/Rejection before Posting
  Post to Instagram: Posts to Instagram.
  Post to Facebook: Posts to Facebook.
  Post to LinkedIn: Posts to LinkedIn.

  Customization Tips

  Add Trend Sources** 📡: Include more sources (e.g., Instagram trends) by adding nodes to Combine Data (Merge).
  Change Content Tone** ✍️: Update the Generate Social Media Content prompt for a different tone (e.g., "humorous").
  Adjust Schedule** ⏰: Modify Daily Trigger Idea to run hourly or weekly.
  Automate TikTok/YouTube** 🎥: Add video generation (e.g., FFMPEG) to post TikTok and YouTube Shorts

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.reddit","n8n-nodes-base.code","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.code","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.googleSheets","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.gmail","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.wait","n8n-nodes-base.wait","n8n-nodes-base.reddit","n8n-nodes-base.facebookGraphApi","n8n-nodes-base.facebookGraphApi","n8n-nodes-base.facebookGraphApi","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.webhook","n8n-nodes-base.code","n8n-nodes-base.linkedIn","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5088 characters]


name: Automate Hyper-Personalized Outreach at Scale With Bright Data and LLMs
author_name: Yaron Been
author_username: yaron-nofluff
categories: []
created_at: 2025-04-15T10:47:56.856Z
updated_at: 2025-04-15T10:47:56.856Z
url: https://n8n.io/workflows/3561
scraped_at: 2025-12-24 13:02:45
description:
  LinkedIn Enrichment & Ice Breaker Generator

  For SDRs, growth marketers, and founders looking to scale personalized outreach.  
  This workflow enriches LinkedIn profile data using Bright Data and generates AI-powered ice breakers using Claude (Anthropic).  
  It automates research and messaging to help you connect smarter and faster — without manual effort.

  🧩 How It Works

  This workflow combines Google Sheets, Brigt Data, and Claude (Anthropic) to fully automate your outreach research:

  Trigger  
     Manually trigger the workflow or run it on a schedule (via Manual Trigger or Schedule Trigger).

  Read Input Sheet  
     Fetches rows from a Google Sheet. Each row must contain at least a Linkedin_URL_Person and row_number.

  Prepare Input  
     Formats each row for Bright Data’s API using Set and SplitInBatches nodes.

  Enrich Profile (Bright Data API)  
     Sends LinkedIn URLs to Bright Data’s Dataset API via HTTP Request.
     Waits for snapshot to be ready using polling logic with Wait, If, and Snapshot Progress nodes.
     Once ready, retrieves the enriched profile data including:
       Name
       City
       Current company
       About section
       Recent posts

  Update Sheet with Profile Data  
     Writes the retrieved enrichment data into the corresponding row in Google Sheets (via row_number).

  Generate Ice Breaker (Claude AI)  
     Sends enriched profile content to Claude (Anthropic) using a custom prompt.
     Focuses on recent posts for crafting relevant, respectful, 1–4-line ice breakers.

  Update Sheet with Ice Breaker  
     Writes the generated ice breaker to the Ice Breaker 1 column in the original row.

  ✅ Requirements

  To use this workflow, you must have the following:

  Google Sheets
  A Google account
  A Google Sheet with at least one sheet/tab containing:
    Column: Linkedin_URL_Person
    Column: row_number (used for mapping input and output rows)

  Bright Data
  A Bright Data account with access to the Dataset API
  An active dataset that accepts LinkedIn URLs
  API key with Dataset API access

  Anthropic Claude
  An Anthropic API key (for Claude 3.5 Haiku or other Claude models)

  n8n Environment
  Access to HTTP Request, Set, Wait, SplitInBatches, If, and Google Sheets nodes
  Access to Claude integration (via LangChain nodes: @n8n/n8n-nodes-langchain)
  Credential manager properly configured with:
    Google Sheets OAuth2 credentials
    Bright Data API key
    Anthropic API key

  ⚙️ Setup Instructions

  Step 1: Copy the Google Sheets Template

  &gt; 📄 Click here to make a copy

  Fill the Linkedin_URL_Person column with LinkedIn profile URLs you want to enrich
  Do not modify headers or add filters to the sheet
  Leave other columns (name, city, about, posts, ice breaker) blank — the workflow fills them

  Step 2: Connect Your Accounts in n8n

  Google Sheets: Create a credential under Google Sheets OAuth2 API
  Bright Data: Add your API key as a credential under HTTP Request (Authorization header)
  Anthropic: Create a credential for Anthropic API with your Claude key

  Step 3: Import and Configure the Workflow

  Import the workflow into your n8n instance.
  In each Google Sheets node:
     Select the copied Google Sheet
     Select the correct tab (usually input or Sheet1)
  In the HTTP Request node to Bright Data:
     Paste your Bright Data dataset ID
  In the Claude prompt node:
     Optionally adjust the tone and length of the ice breaker prompt

  Step 4: Run the Workflow

  Test it using the Manual Trigger node
  For daily automation, enable the Schedule Trigger and configure interval settings
  Watch your Google Sheet populate with enriched data and tailored ice breakers

  🧠 Tips & Best Practices

  Bright Data Delay**: Snapshots may take time. The workflow polls the status until complete.
  Retry Protection**: If and Wait nodes avoid infinite loops by checking snapshot status.
  Mapping via row_number**: Critical to ensure data is updated in the right row.
  Prompt Engineering**: You can fine-tune Claude's behavior by editing the text prompt.

  🧾 Output Example

  Once complete, each row in your Google Sheet will contain:

  | Linkedin_URL_Person | Name | City | Company | Recent Post | Ice Breaker |
  |---------------------|------|------|---------|-------------|--------------|
  | linkedin.com/... | Jane Doe | NYC | ACME Corp | “Why AI should replace meetings” | "Loved your post about AI and meetings — finally someone said it!" |

  💬 Support & Feedback

  Questions? Want to tweak the prompt or expand the enrichment?

  📧 Email: Yaron@nofluff.online  
  📺 YouTube: @YaronBeen  
  🔗 LinkedIn: linkedin.com/in/yaronbeen

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatAnthropic","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.httpRequest","n8n-nodes-base.if","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.splitInBatches"]

workflow_json_compressed:
  [encoded data, 6172 characters]


name: Build an AI Powered Phone Agent 📞🤖 with Retell, Google Calendar and RAG
author_name: Davide
author_username: n3witalia
categories: []
created_at: 2025-04-15T12:55:32.914Z
updated_at: 2025-04-15T12:55:32.914Z
url: https://n8n.io/workflows/3563
scraped_at: 2025-12-24 13:02:43
description:
  This Workflow simulates an AI-powered phone agent with RetellAI with two main functions:

  📅 Appointment Booking – It can schedule appointments directly into Google Calendar.  
  🧠 RAG-based Information Retrieval – It provides answers using a Retrieval-Augmented Generation (RAG) system. For example, it can respond to questions such as store opening hours, return policies, or product details.

  The guide also explains how to purchase a dedicated phone number (with a +1 prefix) and link it to the AI agent. This setup is cost-effective, as it uses a FREE $10 credit to operate without additional charges in the beginning.

  ✨ Advantages

  🕐 24/7 Availability** – The AI agent can answer calls and assist customers at any time.  
  🤖 Automation** – It reduces the workload on human staff by handling repetitive tasks like appointment scheduling and FAQ responses.  
  🔌 Easy Integration** – Built with n8n, it’s flexible and customizable for various platforms and tools.  
  💸 Low-cost Setup** – Using the free credit, businesses can get started without an upfront investment.

  📦 Use Cases

  🛍 E-commerce** – Answer common product questions or order inquiries.  
  🏬 Retail Stores** – Provide store hours, address info, and return policies.  
  🍽 Restaurants** – Take reservations or share menu information.  
  💼 Service Providers** – Book appointments or consultations.  
  📞 Any Local Business** – Offer phone support without needing a live operator.

  How It Works  
  This Workflow simulates an AI-powered phone agent with two primary functions:  

  Appointment Booking  
     The workflow captures call events (e.g., call_ended or call_analyzed) and extracts key details (transcript, caller info, duration, etc.).  
     Using OpenAI, it summarizes the conversation and parses structured data (e.g., names, contact info, dates).  
     For scheduling, it converts user-provided dates into Google Calendar-compatible formats and creates events automatically.  

  RAG-Based Information Retrieval  
     When a query is received (e.g., store hours, product details), the workflow retrieves relevant information from a Qdrant vector store.  
     An AI agent processes the query using the retrieved data and responds via a webhook, ensuring accurate, context-aware answers.   

  Set Up Steps  
  Prepare Qdrant Vector Store  
     Create/refresh a Qdrant collection (via HTTP requests).  
     Upload and vectorize documents (e.g., from Google Drive) using OpenAI embeddings.  

  Configure RetellAI Agent  
     Sign up for RetellAI, create an agent, and set the webhook URLs (n8n_call for call events, n8n_rag_function for RAG queries).  
     Purchase a Twilio phone number and link it to the agent.  

  n8n Workflow Setup  
     Connect OpenAI, Qdrant, Google Calendar, and Telegram nodes with credentials.  
     Customize prompts for summarization, date parsing, and RAG responses.  
     Test the workflow to ensure data flows from call events → processing → actions (e.g., calendar bookings, Telegram alerts).  

  Deploy  
     Trigger the workflow via RetellAI webhooks during calls.  
     Monitor outputs (e.g., call summaries in Telegram, calendar events).  

  Note: Replace placeholders (e.g., QDRANTURL, COLLECTION, CHAT_ID) with actual values. 

  Need help customizing?  
  Contact me for consulting and support or add me on Linkedin. 

nodes_used:
  ["n8n-nodes-base.filter","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.webhook","@n8n/n8n-nodes-langchain.vectorStoreQdrant","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.respondToWebhook","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.telegram","n8n-nodes-base.googleCalendar","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.vectorStoreQdrant","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterTokenSplitter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 10184 characters]


name: Create Daily Israeli Economic Newsletter using RSS and GPT-4o
author_name: Elay Guez
author_username: elay96
categories: []
created_at: 2025-04-15T17:51:10.645Z
updated_at: 2025-04-15T17:51:10.645Z
url: https://n8n.io/workflows/3564
scraped_at: 2025-12-24 13:02:44
description:
  Daily Economic News Brief for Israel (Hebrew, RTL, GPT-4o)

  Overview
  Stay ahead of the curve with this AI-powered workflow that delivers a daily economic summary tailored for professionals tracking the Israeli economy.
  At 8:00 PM Israel Time, this workflow:

  Retrieves the latest articles from Calcalist and Mako via RSS
  Filters duplicates and irrelevant stories
  Uses OpenAI’s GPT-4o to identify the 5 most important stories of the day
  Summarizes each article in concise, readable Hebrew
  Generates a fully styled, responsive HTML email (with proper RTL layout)
  Sends it to your inbox using your preferred SMTP email provider

  Perfect for economists, analysts, investors, or policymakers who want an actionable and personalized news digest -- no distractions, no fluff.

  Setup Instructions
  Estimated setup time:
  10 minutes

  Required credentials:

  OpenAI API Key
  SMTP credentials (for email delivery)

  Steps:
  Import this template into your n8n instance.
  Add your OpenAI API Key under credentials.
  Configure the SMTP Email node with:
  	Host (e.g. smtp.gmail.com)
  	Port (465 or 587)
  	Username (your email)
  	Password (app-specific password or login)
  Set your target email address in the last node.
  (Optional) Customize the GPT prompt to adjust tone or audience (e.g. general public, policy makers).
  Activate the workflow and receive daily updates straight to your inbox.

  Customization Tips
  Change the RSS sources to pull from other Hebrew or international news websites
  Modify the summarization prompt to fit different sectors (e.g. tech, health, politics)
  Add integrations like Notion, Airtable, or Telegram for logging or distribution
  Apply your branding to the HTML output (logos, footer, colors)

  Why Use This?
  This is more than a news digest. It’s an intelligent economic assistant that filters noise, highlights what matters, and keeps you informed-automatically.

  You can set it up in 10 minutes and benefit every single day.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.emailSend","n8n-nodes-base.function","n8n-nodes-base.merge","n8n-nodes-base.html","n8n-nodes-base.aggregate","n8n-nodes-base.set","n8n-nodes-base.html","n8n-nodes-base.httpRequest","n8n-nodes-base.splitOut","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.code","n8n-nodes-base.sort","n8n-nodes-base.filter","n8n-nodes-base.merge","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.rssFeedRead","n8n-nodes-base.rssFeedRead","n8n-nodes-base.scheduleTrigger"]

workflow_json_compressed:
  [encoded data, 6744 characters]


name: Automate PDF Image Extraction & Analysis with GPT-4o and Google Drive
author_name: merfy
author_username: merfylee
categories: []
created_at: 2025-04-16T02:02:34.526Z
updated_at: 2025-04-16T02:02:34.526Z
url: https://n8n.io/workflows/3567
scraped_at: 2025-12-24 13:02:43
description:
  Use Case

  Manually extracting images from PDF files for analysis is often slow and inefficient. Many users resort to taking screenshots of each page, uploading them to an AI tool like OpenAI for image analysis, and then manually copying the insights into a document. This manual process is time-consuming and prone to errors.

  This workflow streamlines the entire process by automatically extracting images from a PDF, analyzing them using the GPT-4o model, and saving the results in seconds—eliminating the need for manual effort.

  What This Workflow Does

  Extracts all images from the uploaded PDF file automatically
  The workflow scans each page of the PDF and identifies embedded images without manual intervention.

  Uses the GPT-4o model to analyze each extracted image

  Each image is processed through GPT-4o to generate descriptive insights, summaries, or context-specific analysis depending on the use case.

  Saves the analysis results to a .txt file, including image URLs
  The final output is a plain text file containing both the image URLs (e.g., hosted on cloud storage) and the corresponding GPT-4o analysis, ready for further use or sharing.

  Setup

  1.Set up your credentials when you first open the workflow. You’ll need accounts for OpenAI, Convert API, and Google Drive.

  2.Convert API does not rate-limit your API, sometimes you may receive 503 service unavailable error.

  Nevertheless, it doesn’t mean that you cannot convert your file. It simply means that you should retry the conversion in a few seconds.

  3.Upload a PDF with images to Google Drive.

  4.Remove unnecessary parts and retrieve image-related information.

  5.Integrate image and image analysis information together.

  6.Analyze each image using the OPENAI GPT-4o model.

  7.Retrieve all image analysis content and image URL

  8.Integrate multiple image URLs and analysis content

  9.Output content to a .txt file.

  Template was created in n8n v1.83.2

  How to Customize

  Replace the manual trigger with a Google Drive trigger or other automation triggers

  Change the image analysis model (e.g., switch or fine-tune GPT-4o)

  Send the results to other platforms (e.g., Slack, Telegram, LINE, etc.) instead of saving to a .txt file

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDrive","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.splitOut","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.convertToFile"]

workflow_json_compressed:
  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


name: Deploy Workflows from Google Drive to n8n Instance
author_name: Jason Guest
author_username: jpguest
categories: []
created_at: 2025-04-16T09:04:20.466Z
updated_at: 2025-04-16T09:04:20.466Z
url: https://n8n.io/workflows/3568
scraped_at: 2025-12-24 13:02:47
description:
  Automatically deploy n8n workflows by simply dropping JSON files into a Google Drive folder—this template watches for new exports, cleans and imports them into your n8n instance, applies a tag, and then archives the processed files.

  Who is this template for?  
  This workflow template is designed for n8n power users, and automation specialists who need a simple, reliable way to bulk‑deploy or version‑control n8n workflows via Google Drive. It’s perfect if you:  
  Manage multiple n8n instances (staging, production, etc.)  
  Want an easy “drop‑in” approach to publish new or updated workflows  
  Prefer storing/exporting JSON in Drive rather than editing in the UI  

  Use case
  Manually importing .json exports into n8n is slow and error‑prone. With this template you can:  
  Keep your workflows in a shared Drive folder (version control friendly)  
  Automatically sanitize each file so only supported settings go through  
  Tag deployed workflows consistently for easy filtering  
  Move processed files to a “Deployed” folder for clear change tracking  

  How it works
  Watch “ToDeploy” folder in Google Drive for new .json files  
  Download & parse each file into a JSON object  
  Clean payload: strip out everything except the allowed executionOrder (and timezone if you choose)  
  POST the cleaned workflow to your n8n instance via /api/v1/workflows  
  PUT a predefined tag onto the newly created workflow  
  Move file to your “Deployed” folder when import succeeds, or capture the workflow name & error if it fails  

  Setup instructions

  1. In Google Drive create a ToDeploy folder and a Deployed folder
  Update "Google Drive Trigger -ToDeploy folder" to your ToDeploy folder
  Update "Move JSON file to Deployed folder" to you Deployed folder


  2. Create a n8n API key:
  +Go to Settings &gt; n8n API
  +Select Create an API key
  +Copy API Key

  3. In "Get Existing Workflow Tags" node: 
  Create n8n API Authentication
  Authentication: Predefined Credential Type
  Credential Type: n8n API

  Create new credential:
  +Paste in API key
  +Baseurl: https://SUBDOMAIN.YOURDOMAINNAME.com/api/v1/

  4. Add n8n API authentication to: 
  "Create n8n Workflow" node
  "Set Workflow Tag" node


  5. Add your N8N instance URL to the N8N_Instance_URL variable in "Set n8n URL variable" node.

  6. Run "1. Get Workflow Tags" flow and copy the ID of your chosen tag.

  7. In "Set n8n API URL & Tag ID variables" node:
  Add the Workflow Tag ID to the N8N_Instance_Tag variable
  Add your N8N instance URL to the N8N_Instance_URL variable


  8. Set workflow to Active

  How to adjust it to your needs 
   Use different tags: run Get Existing Workflow Tags on start‑up to refresh available tags, or hard‑code multiple tags in the Set Workflow Tag node.  
  Add notifications**: connect the error branch to Slack or Email nodes so you get alerted if an import fails.  
  Swap Drive for another storage**: replace Google Drive nodes with Dropbox, S3, or GitHub triggers if you prefer a different source for your JSON files.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.extractFromFile","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.googleDrive","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.googleDriveTrigger"]

workflow_json_compressed:
  [encoded data, 4156 characters]


name: Build an MCP Server with Google Calendar
author_name: GuanNan
author_username: sun-guannan
categories: []
created_at: 2025-04-16T09:13:50.769Z
updated_at: 2025-04-16T09:13:50.769Z
url: https://n8n.io/workflows/3569
scraped_at: 2025-12-24 13:02:43
description:
  Who is this for?
  This template is designed for anyone who wants to integrate MCP with their AI Agents. Whether you're a developer, a data analyst, or an automation enthusiast, if you're looking to leverage the power of MCP and Google Calendar in your n8n workflows, this template is for you.

  What problem is this workflow solving?
  This template caters to MCP beginners seeking a hands - on example and developers looking to integrate Google Calendar MCP service. When integrating MCP with Google Calendar, manually updating AI Agents after changes to Google Calendar tools on the MCP Server is time - consuming and error - prone. 

  This template automates the process, enabling the AI Agent to instantly recognize changes made to Google Calendar on the MCP Server. In project management, for example, it ensures that task schedule updates in Google Calendar are automatically detected by the AI Agent. With detailed steps, it simplifies the integration process for all users. 

  What this workflow does
  This workflow focuses on integrating MCP with Google Calendar within n8n. Specifically, it allows you to build an MCP Server and Client using Google Calendar nodes in n8n. Any changes made to the Google Calendar tools on the MCP Server are automatically recognized by the MCP Client in the workflow. This means that you can make changes to your Google Calendar (such as adding, deleting, or modifying events) on the MCP Server, and the MCP Client in the n8n workflow will immediately detect these changes without any manual intervention.

  Setup
  Requirements
  An active n8n account.
  Access to Google Calendar API. You need to  enable the Google Calendar API, and create the necessary credentials (OAuth 2.0 client ID).
  Basic knowledge of n8n workflows and MCP concepts.

  Step - by - step guide
  Create a new workflow in n8n: Log in to your n8n account and create a new workflow.
  Add Google Calendar nodes: Search for and add the Google Calendar nodes to your workflow. Configure the nodes with your Google Calendar API credentials.
  Set up the MCP Server and Client: Use the appropriate nodes in n8n to set up the MCP Server and Client. Connect the Google Calendar nodes to the MCP nodes as required.
  Test the workflow: Make some changes to your Google Calendar on the MCP Server and check if the MCP Client in the n8n workflow can detect these changes.

  How to customize this workflow to your needs
  If you want to customize this workflow, you can:
  Modify the triggers**: You can change the conditions under which the MCP Client detects changes. For example, you can set it to detect only specific types of events in Google Calendar.
  Integrate with other services**: You can add more nodes to the workflow to integrate with other services, such as sending notifications to Slack or saving data to a database when a change is detected.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","@n8n/n8n-nodes-langchain.mcpTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.mcpClientTool","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5708 characters]


name: Get Scaleway Server Info with Dynamic Filtering
author_name: Pablo
author_username: pablobarrier
categories: []
created_at: 2025-04-16T11:20:04.714Z
updated_at: 2025-04-16T11:20:04.714Z
url: https://n8n.io/workflows/3571
scraped_at: 2025-12-24 13:02:47
description:
  Get Scaleway Server Info with Dynamic Filtering

  Description

  This workflow is designed for developers, system administrators, and DevOps engineers who need to retrieve and filter Scaleway server information quickly and efficiently. It gathers data from Scaleway instances and baremetal servers across multiple zones and is ideal for:
  Quickly identifying servers by tags, names, public IPs, or zones.
  Automating server status checks in production, staging, or test environments.
  Integrating Scaleway data into broader monitoring or inventory systems.

  High-Level Steps

  Webhook Trigger:**
    Receives an HTTP POST request (with basic authentication) containing the search criteria (search_by and search).

  Server Data Collection:**
    Fetches server data from Scaleway’s API endpoints for both instances and baremetal servers across defined zones.

  Data Processing:**
    Aggregates and normalizes the fetched data using a Code node with helper functions.

  Dynamic Filtering:**
    Routes data to dedicated filtering routines (by tags, name, public_ip, or zone) based on the input criteria.

  Response:**
    Returns the filtered data (or an error message) via a webhook response.

  Set Up Steps

  Insert Your Scaleway Token:
     In the “Edit Fields” node, replace the placeholder Your personal Scaleway X Auth Token with your Scaleway API token.

  Configure Zones:
     Review or update the zone lists (ZONE_INSTANCE and ZONE_BAREMETAL) to suit your environment.

  Send a Request:
     Make a POST request to the workflow’s webhook endpoint with a JSON payload, for example:
        {
       "search_by": "tags",
       "search": "Apiv1"
     }
     
  View the Results:
     The workflow returns a JSON array of servers matching your criteria, including details like name, tags, public IP, type, state, zone, and user.

nodes_used:
  ["n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.switch","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.splitInBatches","n8n-nodes-base.respondToWebhook","n8n-nodes-base.httpRequest","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.splitOut","n8n-nodes-base.if","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 8312 characters]


name: Create a RAG System with Paul Essays, Milvus, and OpenAI for Cited Answers
author_name: Cheney Zhang
author_username: zc277584121
categories: []
created_at: 2025-04-16T12:54:47.941Z
updated_at: 2025-04-16T12:54:47.941Z
url: https://n8n.io/workflows/3573
scraped_at: 2025-12-24 13:02:46
description:
  Create a RAG System with Paul Essays, Milvus, and OpenAI for Cited Answers

  This workflow automates the process of creating a document-based AI retrieval system using Milvus, an open-source vector database. It consists of two main steps:

  Data collection/processing
  Retrieval/response generation

  The system scrapes Paul Graham essays, processes them, and loads them into a Milvus vector store. When users ask questions, it retrieves relevant information and generates responses with citations.

  Step 1: Data Collection and Processing

  Set up a Milvus server using the official guide
  Create a collection named "my_collection"
  Execute the workflow to scrape Paul Graham essays:
     Fetch essay lists
     Extract names
     Split content into manageable items
     Limit results (if needed)
     Fetch texts
     Extract content
     Load everything into Milvus Vector Store

  This step uses OpenAI embeddings for vectorization.

  Step 2: Retrieval and Response Generation

  When a chat message is received, the system:

  Sets chunks to send to the model
  Retrieves relevant information from the Milvus Vector Store
  Prepares chunks
  Answers the query based on those chunks
  Composes citations
  Generates a comprehensive response

  This process uses OpenAI embeddings and models to ensure accurate and relevant answers with proper citations.

  For more information on vector databases and similarity search, visit Milvus documentation.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.html","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.limit","n8n-nodes-base.html","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.set","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.informationExtractor","n8n-nodes-base.code","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreMilvus","@n8n/n8n-nodes-langchain.vectorStoreMilvus","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.lmChatOpenAi"]

workflow_json_compressed:
  [encoded data, 4580 characters]


name: Create a Paul Graham Essay Q&A System with OpenAI and Milvus Vector Database
author_name: Cheney Zhang
author_username: zc277584121
categories: []
created_at: 2025-04-16T13:00:23.190Z
updated_at: 2025-04-16T13:00:23.190Z
url: https://n8n.io/workflows/3574
scraped_at: 2025-12-24 13:02:46
description:
  Create a Paul Graham Essay Q&A System with OpenAI and Milvus Vector Database
  How It Works

  This workflow creates a question-answering system based on Paul Graham essays. It has two main steps:

  Data Collection & Processing: 
     Scrapes Paul Graham essays
     Extracts text content
     Loads them into a Milvus vector store

  Chat Interaction:
     Provides a question-answering interface using the stored vector embeddings
     Utilizes OpenAI embeddings for semantic search

  Set Up Steps

  Set up a Milvus server following the official guide
  Create a collection named "my_collection"
  Run the workflow to scrape and load Paul Graham essays
  Start chatting with the QA system

  The workflow handles the entire process from fetching essays, extracting content, generating embeddings via OpenAI, storing vectors in Milvus, and providing retrieval for question answering.

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.html","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.limit","n8n-nodes-base.html","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStoreMilvus","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.vectorStoreMilvus","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chainRetrievalQa","@n8n/n8n-nodes-langchain.retrieverVectorStore"]

workflow_json_compressed:
  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


name: Paul Graham Essay Search & Chat with Milvus Vector Database
author_name: Cheney Zhang
author_username: zc277584121
categories: []
created_at: 2025-04-16T13:04:56.892Z
updated_at: 2025-04-16T13:04:56.892Z
url: https://n8n.io/workflows/3576
scraped_at: 2025-12-24 13:02:46
description:
  Paul Graham Essay Search & Chat with Milvus Vector Database
  How It Works

  This workflow creates a RAG (Retrieval-Augmented Generation) system using Milvus vector database to search Paul Graham essays:

  Scrape & Load: Fetches Paul Graham essays, extracts text, and stores them as vector embeddings in Milvus
  Chat Interface: Enables semantic search and AI-powered conversations about the essays

  Set Up Steps

  Set up Milvus server following the official installation guide, then create a collection
  Execute the workflow to scrape essays and load them into your Milvus collection
  Chat with the AI agent using the Milvus tool to query and discuss essay content

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.html","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.limit","n8n-nodes-base.html","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.vectorStoreMilvus","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.vectorStoreMilvus","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE91ZbW/bOBL+K4L3gN0FQoekREoKcMAFae/SbbvtNkHbu7bI8mVk6yJLXkl2kg3y328oObZiy0pyB/TDfXEsmRzO6zPPMLej1I6ORsfiQ/j5n2d/lie/vM6u4svRwWgGtRod3Y7SvKpVbuCVW8dNYBhwH0JNZchDamiklJZMamUVZ5YaPwoskwlnXHPfJIwFvsFfFY05i1FuDbN5pmo4KcFWZ1Av5icFvoEa8IC6XMDdwShXM3BaTSCvvbdptlxUXl0UmduuJtXo6Mttq/esyl98en362+zq7YvrT7+djtZ72134bErA0+xx7dSnXBAaECbPGT8KoiMWjIUf/wuXLeb28WV3B6tz6/xkXkTTP6LF69Ien73enHv8avjM8EiE4ziUj5y5WXb3DWUXFjpWmwQkl4EiXAMj6G4gcRhoAkCFUZGCWOmNRp+mkHsmS81lmk+8r6OX12AWNXifivIyyYqrryPn1pu5W5tHOWkOI1pVMJ6pfKGy8zKdTKDEVfOiSuu0yFEVwiN6QAKK2s1ViSfVUKKKt3etrI/41Cxka58ZKqUwJkatDZAgspooXxvCBGaHkREIGW+0/jvUZuq9rCp1471Jq3qvjtO6nn+APxbQrHmgYa+Co0WZoRS37ejw8OrqajxXi2xSqqmajU0xO1RlnZoMKpQ8cxlXzJ3AxrZt44IxX5tHqTbWUIyClpYEDNA8Qy1RMmTUSu5zCDbmvbyuS2VqDxoD3ctqwMJGj45prN/3XVWd3lCqdsMI2uNOUdJJkddYVihw9RJXfFTZAhoJy9U3TLVLuHE7nYK4WNV1mWrMG+e7EhKX5RXWbwamLkpXEkpn4LWfCn8tsbTL/LgscXtT1/evmsNww0bi3bcdz7KOZwXiiM9iIJaZkAScBUSFWC3WCBEmMgiZ4hvPns2ztPaKRe2leV14KeLNftdWbvG7xVbm+E9xb5JCZs+Ls3sJ967aXwBYrEL4MiJxnAgS+NpHJaQhghpjEq5Dbvl2AbT5UWOohvJjTwWEe+xoK+Cv+0vg9tb7y7+rIh+3x9/dPb0MYq4Q831DrA0dNllLtKCKJCL2uR9zsFHHyDfpDIOFYUrSsqo9f6+NmVv40Dqxx7qZun7VBP3I3x8LplgU+yYgEGlOAoFgqoM4IYpqmviGMmXUbrWeYxy8d3l285xaZfS7FSu2E7VTmLqwTt/qMp3fv8U9o3Q2OcjV8rHisyxQIKkkCaXoqMQCUVEsiU6wGBMEN6G7xYfQeXnj/VrUsD+WVbPIrdkC7MZTTO666iq19RT1oiEbhwJbJRPS9wP/YDSFdDLF4uORGEtJ/TD0RRTENBDohpXzjkY//OCdmVLNwXPMAxPtPea7948m4dsSqwbq1iaaGu1zEtvQYK5EEdGhAEJ1GHMfgT7kqtcF4tkuYJQPu0BysTFa0nDLyjeFsi3urVjTsom35xLDHTxgZSS5YgpjLChgoLGMSZyoGNuZr4KEGxVIf2PlB+QQKGIJ3slUucSEsq2OBg/xiW1s/xsaf7hxQKbyiZmqNB87WLtfvxa4lnfe+XXLS0FAD3z6SEmZ6SK/PEv/BOcoSvdbHmOxY5UqIkLkJEGgGdGcJ8RyJf0Ev7GwY/nKsR9bx57hBzzB1DYOzeo1M+1a5O8hKzOU44o1r6CsH6DwCDmKKk+KzJV0I2VFnmeN/O4Pt6OLCwf5bRdeicxaUrVcdWNU+qJuO4hRZgr2A1SLrP61NXr9q8MKZLcWMy5VWatic97xPG2mhSaV6renp8Wb9NPnV8efVXi24zxlTLHIW2lbyLMJSyAkxCzEOARSkgBMRCKbxARrPNBKREww2+XdXjMuPCEWarWu43+J+dRTdAM9j43jtaZKGJH4NCI0DpH6JUBJjNScYAcME2TnCBQd6tfy8amqvZmDngl4JRjAzLdP0N3t28/HWxuuQE+L4rIZ2IzFIc1XIUlihlUtEyBRGIXET3Tkg2JMNqPCM8zu4KLxBU8oCvNFQoLQaBLhacTnKsA+GoU2CXtx8fmdIcAAIZ/fC4vO+DUsOna8Bf41zD32NWdjDydObzH31D1AYl0tEbvc8dYrcu9LPU0rb7JILXz7yTGkCilSm+LjtDi0hakOm5E4yy7cYGxVVuQY6sJcQkmQPKHaODjZn8fecW69ugl2Mw7imWZdlA3lt97v94X1+/hrzsfeiRvTvEaFq9V45thR5mC9ajsYHtk+7/Ywb4P7m5NQ8ADqCxNDHCFTM7FhrrcB0b4wBBTGTxkcJ7ncxPAFJHho7b3AdtL0miYLH8tZ9M1ihrFY7Xab13sfYCAGGWM3jOqOljoJjsA6mvrTjzvk7Mefx471jxsG6zpfS2Dd49sW++B6XqLL0pWoAfdoJBuUMiI4OiUIIkbQIT4RUsvYxJppGw22Bk9tbi7+xxaBWS16MGoF5zhblSkskZ1V5P5A/LPC7zaBLy7z4ioDO4GLhgy0S14AZlY6X5HPRQUJ5tWVy9ubYuHlgGmKeXUvH9lFUpSzlqv+/zQbqYWOBY6X1jr2Y3xkP4JrEocqSoThMjRxL5ax/w7M+H6K9xDLeC+W8a/5Wa3KZnRqWslVWk8d2Hj3fbB90707GwIBd6PkS8I1zqQB5ZLEUUKRD2kVWYFjZEI7w9BMg7VpPqm8d3PImwuvx3Ib1nuaLelWanO0sg/dHzairVQoGkndVJie8vfnL06DRJ9h332/3OjcnjqUCp0JNuKSc4iJSiiO6YD5oAD7OpPSBGESCgPxluRXjgXXnkOXp1R6NnPL+zzB99d49rTSmsxrEhRklubp6G57av9OHlTaxkgyImIMIHNDMkAirYDETPgSVBBpqQfy6Smjw3BCYS4dhMMj9/fzBqU2iJXSyIsoRW8khiiKH1ES4nARx5Fk/TSJPx9aov65CNmAuwrAaXGFMSIMOmMkj7sY0wMUKNDdPSxRlQS9hclXQV077zvp0Fwo49J3pWvqR6MlczKW7f6GhkYgE6q1ICzBjyBy5iuGpDGKfIlUOYCGKqISedtHGsE7d8DN7U7qLP1y21yKP3aT2qw+wPHJwvXoiN59+4aK7Vw69YkduH7rFbqLiihVpRfrRH0gfXCIfLBr55ydq6g+7Qfl9+q/a++Qs3suwnql7qJj6xVXyAscfVbvOifsznE7yx91PXuu73dZ2mAM+mhwe+I91X1WsNeb9sW6m9p9URm+8u4NTO+WPtn7b2h75Q4Mt33Sd6PdK3UoZK3j26+P5dEqxn0qD/5/bD9A9P2DqteEJ1yYrSzpXnt1DxwcvrY3Pjz+7u4/GfeDT+gdAAA=


name: Travel Planning Assistant with MongoDB Atlas, Gemini LLM and Vector Search
author_name: Pavel Duchovny
author_username: pash
categories: []
created_at: 2025-04-16T15:14:03.770Z
updated_at: 2025-04-16T15:14:03.770Z
url: https://n8n.io/workflows/3577
scraped_at: 2025-12-24 13:02:44
description:
  Building agentic AI workflows often requires multiple moving parts: memory management, document retrieval, vector similarity, and orchestration. 

  Until now, these pieces had to be custom-wired. 

  But with the new native n8n nodes for MongoDB Atlas, we reduce that overhead dramatically.


  With just a few clicks:

  Store and recall long-term memory from MongoDB

  Query vector embeddings stored in Atlas Vector Search

  Use these results in your LLM chains and automation logic

  In this example we present an ingestion and AI Agent flows that focus around Travel Planning. The different interest points that we want the agent to know about can be ingested into the vector store.

  The AI Agent will use the vector store tool to get relevant context about those points of interest if it needs to. 

  Prerequisites
  MongoDB Atlas project and Cluster
  OpenAI Valid API Key for embeddings (can be other provider)
  Gemini API Key for the LLM (can be other provider)

  How it works:

  There are 2 main flows. 

  One is ingesting flow:
  Gets a document from a webhook and use MongoDB Vector Atlas to embed the document title and description into points_of_interest collection.
  Embeddings are stored in a field named embedding
  Embeddings used are OpenAI's but it can be any type of supported embedders.

  Second flow is an AI Agent node with Chat Memory Stored in MongoDB Atlas and a Vector Search node as a tool:
  Chat Message Trigger**: Chatting with the AI Agent will trigger the conversation store in the MongoDB Chat Memory node.
  When data is necessary like a location search or details it will go to the "Vector Search" tool.
  Vector Search Tool** - uses Atlas Vector Search index created on the points_of_interest collection:

  // index name : "vector_index"
  // If you change an embedding provider make sure the numDimensions correspond to the model.
  {
    "fields": [
      {
        "type": "vector",
        "path": "embedding",
        "numDimensions": 1536,
        "similarity": "cosine"
      }
    ]
  }

  Additional Resources
  MongoDB Atlas Vector Search
  n8n Atlas Vector Search docs

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.memoryMongoDbChat","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.vectorStoreMongoDBAtlas","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.webhook","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.vectorStoreMongoDBAtlas","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4192 characters]


name: Generate Dynamic Line Chart from JSON Data to Upload to Google Drive
author_name: Lucas Correia
author_username: lucascorrei4
categories: []
created_at: 2025-04-16T16:57:21.009Z
updated_at: 2025-04-16T16:57:21.009Z
url: https://n8n.io/workflows/3578
scraped_at: 2025-12-24 13:02:45
description:
  What Does This Flow Do?

  This workflow demonstrates how to dynamically generate a line chart using the QuickChart node based on data provided in a JSON object and then upload the resulting chart image to Google Drive. 

  Use Cases

  You can use it in presentations or requesting for chart generation from a software with HTTP requests.
  Automated report generation (e.g., daily sales charts).
  Visualizing data fetched from APIs or databases.
  Simple monitoring dashboards.
  Adding charts to internal tools or notifications.

  How it Works

  Trigger: The workflow starts manually when you click 'Test workflow'.
  Set Sample Data: A Set node (Edit Fields: Set JSON data to test) defines a sample JSON object named jsonData. This object contains:
      reportTitle: A title (not used in the chart generation in this example, but useful for context).
      labels: An array of strings representing the labels for the chart's X-axis (e.g., ["Q1", "Q2", "Q3", "Q4"]).
      salesData: An array of numbers representing the data points for the chart's Y-axis (e.g., [1250, 1800, 1550, 2100]).
  Generate Chart: The QuickChart node is configured to:
      Create a line chart.
      Dynamically read labels from the jsonData.labels array (Labels Mode: From Array).
      Use the jsonData.salesData array as the input data (Note: This configuration places data in the top-level 'Data' field. For more complex charts with multiple datasets or specific dataset options, configure datasets under 'Dataset Options' instead).
      The node outputs the generated chart image as binary data in a field named data.
  Upload to Google Drive: The Google Drive node (Google Drive: Upload File):
      Takes the binary data (data) from the QuickChart node.
      Uploads the image to your specified Google Drive folder.
      Dynamically names the file based on its extension (e.g., chart.png).

  Setup Steps

  Import: Import this template into your n8n instance.
  Configure Google Drive Credentials:
      Select the Google Drive: Upload File node.
      You MUST configure your own Google Drive credentials. Click on the 'Credentials' dropdown and either select existing credentials or create new ones by following the authentication prompts.
  (Optional) Customize Google Drive Folder: In the Google Drive: Upload File node, you can change the Drive ID and Folder ID to specify exactly where the chart should be uploaded.
  Activate: Activate the workflow if you want it to run automatically based on a different trigger.

  How to Use & Customize

  Change Input Data:** Modify the labels and salesData arrays within the Edit Fields: Set JSON data to test node to use your own data. Ensure the number of labels matches the number of data points.
  Use Real Data Sources:** Replace the Edit Fields: Set JSON data to test node with nodes that fetch data from real sources like:
      HTTP Request (APIs)
      Postgres / MongoDB nodes (Databases)
      Google Sheets node
      Ensure the output data from your source node is formatted similarly (providing labels and salesData arrays). You might need another Set node to structure the data correctly before the QuickChart node.
  Change Chart Type:** In the QuickChart node, modify the Chart Type parameter (e.g., change from line to bar, pie, doughnut, etc.).
  Customize Chart Appearance:** Explore the Chart Options parameter within the QuickChart node to add titles, change colors, modify axes, etc., using QuickChart's standard JSON configuration options.
  Use Datasets (Recommended for Complex Charts):** For multiple lines/bars or more control, configure datasets explicitly in the QuickChart node:
      Remove the expression from the top-level Data field.
      Go to Dataset Options -&gt; Add option -&gt; Add dataset.
      Set the Data field within the dataset using an expression like {{ $json.jsonData.salesData }}.
      You can add multiple datasets this way.
  Change Output Destination:** Replace the Google Drive: Upload File node with other nodes to handle the chart image differently:
      Write Binary File: Save the chart to the local filesystem where n8n is running.
      Slack / Discord / Telegram: Send the chart to messaging platforms.
      Move Binary Data: Convert the image to Base64 to embed in HTML or return via webhook response.

  Nodes Used

  Manual Trigger
  Set
  QuickChart
  Google Drive



  Tags: (Suggestions for tags field)

  QuickChart, Chart, Visualization, Line Chart, Google Drive, Reporting, Automation

nodes_used:
  ["n8n-nodes-base.quickChart","n8n-nodes-base.set","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger"]

workflow_json_compressed:
  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


name: Automated Research Report Generation with AI, Wiki, Search & Gmail/Telegram
author_name: Immanuel
author_username: spectrabit
categories: []
created_at: 2025-04-16T16:59:02.174Z
updated_at: 2025-04-16T16:59:02.174Z
url: https://n8n.io/workflows/3579
scraped_at: 2025-12-24 13:02:43
description:
  Automated Research Report Generation with OpenAI, Wikipedia, Google Search, Gmail/Telegram and PDF Output
  Description

  What Problem Does This Solve? 🛠️
  This workflow automates the process of generating professional research reports for researchers, students, and professionals. It eliminates manual research and report formatting by aggregating data, generating content with AI, and delivering the report as a PDF via Gmail or Telegram. Target audience: Researchers, students, educators, and professionals needing quick, formatted research reports.

  What Does It Do? 🌟
  Aggregates research data from Wikipedia, Google Search, and SerpApi.
  Refines user queries and generates structured content using OpenAI.
  Converts the content into a professional HTML report, then to PDF.
  Sends the PDF report via Gmail or Telegram.

  Key Features 📋
  Real-time data aggregation from multiple sources.
  AI-driven content generation with OpenAI.
  Automated HTML-to-PDF conversion for professional reports.
  Flexible delivery via Gmail or Telegram.
  Error handling for robust execution.

  Setup Instructions

  Prerequisites ⚙️
  n8n Instance**: Self-hosted or cloud n8n instance.
  API Credentials**:
    OpenAI API: API key with GPT model access, stored in n8n credentials.
    SerpApi (Google Search): API key from SerpApi, stored in n8n credentials (do not hardcode in nodes).
    Gmail API: Credentials from Google Cloud Console with Gmail scope.
    Telegram API: Bot token from BotFather on Telegram.

  Installation Steps 📦
  Import the Workflow:
     Copy the workflow JSON from the "Template Code" section below.
     Import it into n8n via "Import from File" or "Import from URL".
  Configure Credentials:
     Add API credentials in n8n’s Credentials section for OpenAI, SerpApi, Gmail, and Telegram.
     Assign credentials to respective nodes. For example:
       In the SerpApi Google Search node, use n8n credentials for SerpApi: api_key={{ $credentials.SerpApiKey }}.
       In the Send Research PDF on Gmail node, use Gmail credentials.
       In the Send PDF to Telegram node, use Telegram bot credentials.
  Set Up Nodes:
     OpenAI Nodes (Research AI Agent, OpenAI Chat Model, OpenAI Chat Middle Memory): Update the model (e.g., gpt-4o) and prompt as needed.
     Input Validation (Input Validation node): Ensure your input query format matches the expected structure (e.g., topic: "AI ethics").
     Delivery Options (Send Research PDF on Gmail, Send PDF to Telegram): Configure recipient email or Telegram chat ID.
  Test the Workflow:
     Run the workflow by clicking the "Test Workflow" node.
     Verify that the research report PDF is generated and sent via Gmail or Telegram.

  How It Works

  High-Level Steps 🔍
  Query Refinement**: Refines the input query for better research.
  Aggregate Data**: Fetches data from Wikipedia, Google Search, and SerpApi.
  Generate Report**: Uses OpenAI to create a structured report.
  Convert to PDF**: Converts the report to HTML, then PDF.
  Deliver Report**: Sends the PDF via Gmail or Telegram.

  Detailed descriptions are available in the sticky notes within the workflow screenshot above.

  Node Names and Actions

  Research and Report Generation
  Test Workflow: Triggers the workflow for testing.
  Input Validation: Validates the input query.
  Query Refiner: Refines the query for better results.
  Research AI Agent: Coordinates research using OpenAI.
  OpenAI Chat Model: Generates content for the report.
  Structured Output Parser: Parses OpenAI output into structured data.
  OpenAI Chat Middle Memory: Retains context during research.
  Wikipedia Google Search: Fetches data from Wikipedia.
  SerpApi Google Search: Fetches data via SerpApi.
  Merge Split Items: Merges data from multiple sources.
  Aggregate: Aggregates all research data.
  Generate PDF HTML: Creates an HTML report.
  Convert HTML to PDF: Converts HTML to PDF.
  Download PDF: Downloads the PDF file.
  Send PDF to Telegram: Sends the PDF via Telegram.
  Send Research PDF on Gmail: Sends the PDF via Gmail.

  Customization Tips

  Expand Data Sources** 📡: Add more sources (e.g., academic databases) by adding nodes to Merge Split Items.
  Change Report Style** ✍️: Update the Generate PDF HTML node to modify the HTML template (e.g., adjust styling or sections).
  Alternative Delivery** 📧: Add nodes to send the PDF via other platforms (e.g., Slack).
  Adjust AI Model** 🧠: Modify the OpenAI Chat Model node to use a different model (e.g., gpt-3.5-turbo).

nodes_used:
  ["@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.outputParserStructured","n8n-nodes-base.splitOut","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.aggregate","n8n-nodes-base.httpRequest","n8n-nodes-base.gmail","n8n-nodes-base.manualTrigger","n8n-nodes-base.telegram","n8n-nodes-base.executeWorkflowTrigger","n8n-nodes-base.googleDrive","n8n-nodes-base.if"]

workflow_json_compressed:
  [encoded data, 13584 characters]


name: Scrape LinkedIn Job Listings for Hiring Signals & Prospecting with Bright Data
author_name: Yaron Been
author_username: yaron-nofluff
categories: []
created_at: 2025-04-16T18:34:57.146Z
updated_at: 2025-04-16T18:34:57.146Z
url: https://n8n.io/workflows/3580
scraped_at: 2025-12-24 13:02:42
description:
  LinkedIn Hiring Signal Scraper — Jobs & Prospecting Using Bright Data

  Purpose:
  Discover recent job posts from LinkedIn using Bright Data's Dataset API, clean the results, and log them into Google Sheets — for both job hunting and identifying high-intent B2B leads based on hiring activity.

  Use Cases:
  Job Seekers** – Spot relevant openings filtered by role, city, and country.  
  Sales & Prospecting** – Use job posts as buying signals.  
    If a company is hiring for a role you support (e.g. marketers, developers, ops) —  
    it's the perfect time to reach out and offer your services.

  Tools Needed:
  n8n Nodes:**
    Form Trigger  
    HTTP Request  
    Wait  
    If  
    Code  
    Google Sheets  
    Sticky Notes (for embedded guidance)
  External Services:**
    Bright Data (Dataset API)  
    Google Sheets

  API Keys & Authentication Required:
  Bright Data API Key**  
    → Add in the HTTP Request headers:  
    Authorization: Bearer YOUR_BRIGHTDATA_API_KEY

  Google Sheets OAuth2**  
    → Connect your account in n8n to allow read/write access to the spreadsheet.

  General Guidelines:
  Use descriptive names for all nodes.  
  Include retry logic in polling to avoid infinite loops.  
  Flatten nested fields (like job_poster and base_salary).  
  Strip out HTML tags from job descriptions for clean output.

  Things to be Aware Of:
  Bright Data snapshots take ~1–3 minutes — use a Wait node and polling.  
  Form filters affect output significantly:  
    🔍 We recommend filtering by "Last 7 days" or "Past 24 hours" for fresher data.  
  Avoid hardcoding values in the form — leave optional filters empty if unsure.

  Post-Processing & Outreach:
  After data lands in Google Sheets, you can use it to:  
    Personalize cold emails based on job titles, locations, and hiring signals.  
    Send thoughtful LinkedIn messages (e.g., "Saw you're hiring a CMO...")  
    Prioritize outreach to companies actively growing in your niche.

  Additional Notes:
  📄 Copy the Google Sheet Template:  
    Click here to make your copy  
    → Rename for each campaign or client.

  Form fields include:  
    Job Location (city or region)  
    Keyword (e.g., CMO, Backend Developer)  
    Country (2-letter code, e.g., US, UK)

  This workflow gives you a competitive edge —  
  📌 For candidates: Be first to apply.  
  📌 For sellers: Be first to pitch.  
  All based on live hiring signals from LinkedIn.

  STEP-BY-STEP WALKTHROUGH

  Step 1: Set up your Google Sheet
  Open this template
  Go to File → Make a copy
  You'll use this copy as the destination for the scraped job posts

  Step 2: Fill out the Input Form in n8n
  The form allows you to define what kind of job posts you want to scrape.

  Fields:
  Job Location** → e.g. New York, Berlin, Remote  
  Keyword** → e.g. CMO, AI Architect, Ecommerce Manager  
  Country Code (2-letter)** → e.g. US, UK, IL

  💡 Pro Tip:  
  For best results, set the filter inside the workflow to:  
  time_range = "Past 24 hours" or "Last 7 days"  
  This keeps results relevant and fresh.

  Step 3: Trigger Bright Data Snapshot
  The workflow sends a request to Bright Data with your input.

  Example API Call Body:
  [
    {
      "location": "New York",
      "keyword": "Marketing Manager",
      "country": "US",
      "time_range": "Past 24 hours",
      "job_type": "Part-time",
      "experience_level": "",
      "remote": "",
      "company": ""
    }
  ]

  Bright Data will start preparing the dataset in the background.

  Step 4: Wait for the Snapshot to Complete
  The workflow includes a Wait Node and Polling Loop that checks every few minutes until the data is ready.

  You don't need to do anything here — it's all automated.

  Step 5: Clean Up the Results
  Once Bright Data responds with the full job post list:

  ✔️ Nested fields like job_poster and base_salary are flattened  
  ✔️ HTML in job descriptions is removed  
  ✔️ Final data is formatted for export

  Step 6: Export to Google Sheets
  The final cleaned list is added to your Google Sheet (first tab).

  Each row = one job post, with columns like:

  job_title, company_name, location, salary_min, apply_link, job_description_plain

  Step 7: Use the Data for Outreach or Research
  Example for Job Seekers:
  You search for:

  Location: Berlin
  Keyword: Product Designer
  Country: DE
  Time range: Past 7 days

  Now you've got a live list of roles — with salary, recruiter info, and apply links.
  → Use it to apply faster than others.

  Example for Prospecting (Sales / SDR):
  You search for:

  Location: London
  Keyword: Growth Marketing
  Country: UK

  And find companies hiring growth marketers.
  → That's your signal to offer help with media buying, SEO, CRO, or your relevant service.

  Use the data to:
  Write personalized cold emails ("Saw you're hiring a Growth Marketer…")
  Start warm LinkedIn outreach
  Build lead lists of companies actively expanding in your niche

  API Credentials Required:
  Bright Data API Key**  
    Used in HTTP headers: Authorization: Bearer YOUR_BRIGHTDATA_API_KEY

  Google Sheets OAuth2**  
    Allows n8n to read/write to your spreadsheet

  Adjustments & Customization Tips:
  Modify the HTTP Request body to add more filters (e.g. job_type, remote, company)
  Increase or reduce polling wait time depending on Bright Data speed
  Add scoring logic to prioritize listings based on title or location

  Final Notes:
  📄 Google Sheet Template:  
    Make your copy here

  ⚙️ Bright Data Dataset API:  
    Visit BrightData.com

  📬 Personalization works best when you act quickly.  
    Use the freshest data to reach out with context — not generic pitches.

  This workflow turns LinkedIn job posts into sales insights and job leads.
  All in one click. Fully automated. Ready for your next move.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.formTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set"]

workflow_json_compressed:
  [encoded data, 8052 characters]


name: Domain to Email Extraction using Apollo API
author_name: Hueston
author_username: hueston
categories: []
created_at: 2025-04-16T19:03:08.744Z
updated_at: 2025-04-16T19:03:08.744Z
url: https://n8n.io/workflows/3581
scraped_at: 2025-12-24 13:02:45
description:
  Who is this for?
  Sales professionals looking to build lead lists from target company domains
  Business development teams conducting outreach campaigns
  Marketers building contact databases for account-based marketing
  Recruiters searching for potential candidates at specific companies
  Anyone needing to transform a list of company domains into actionable contact information

  What problem is this workflow solving?
  Finding business email addresses for outreach is a time-consuming process. The Apollo API doesn't provide a direct way to extract email contacts from domains in a single call. This workflow bridges that gap by:

  Automating the two-step process required by Apollo's API
  Processing multiple domains in batches without manual intervention
  Extracting, enriching, and storing contact information in a structured format
  Eliminating hours of manual data entry and API interaction

  What this workflow does
  This workflow creates an automated pipeline between Google Sheets and Apollo's API to:

  Pull a list of target domains from a Google Sheet
  Submit each domain to Apollo's search API to find associated people
  Loop through each person found and enrich their profile data
  Extract key information: name, title, email address, and LinkedIn URL
  Write the enriched contact information back to a results sheet
  Process the next domain automatically until all are complete

  Setup

  Prerequisites:
  An n8n instance (cloud or self-hosted)
  Apollo.io account with API access
  Google account with access to Google Sheets

  Google Sheets Setup:
  Create a new Google Sheet with two tabs:
     Tab 1: "Target Domains" with a column named "Domain To Enrich"
     Tab 2: "Results" with columns: Company, First Name, Last Name, Title, Email, LinkedIn

  n8n Setup:
  Import the workflow JSON into your n8n instance
  Set up Google Sheets credentials in n8n
  Update the Google Sheets document ID in both Google Sheets nodes
  Add your Apollo API key to both HTTP Request nodes
  Review and adjust API rate limits if needed

  Testing:
  Add a few test domains to your "Target Domains" sheet
  Run the workflow manually to verify it's working correctly
  Check the "Results" sheet to confirm data is being properly populated

  How to customize this workflow to your needs

  Adding More Contact Fields:
  Modify the "Clean Up" node to extract additional fields from the Apollo API response
  Add corresponding columns to your "Results" sheet
  Update the "Results To Results Sheet" node mapping to include the new fields

  Filtering Results:
  Add a Filter node after "Clean Up" to include only contacts with specific roles
  Create conditions based on title, seniority, or other fields returned by Apollo

  Automating Workflow Execution:
  Replace the manual trigger with a Schedule Trigger to run daily/weekly
  Add a Filter node to process only domains with "Not Processed" status
  Update the status field in Google Sheets after processing

  Additional Notes
  This workflow respects Apollo's API rate limits by processing one contact at a time
  The Apollo API may not return contact information for all domains or all employees
  Consider legal and privacy implications when collecting and storing contact information

  Made with ❤️ by Hueston

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.splitInBatches","n8n-nodes-base.googleSheets","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.splitInBatches","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  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


