# templates

name: Reschedule overdue Asana tasks and clean up completed tasks
author_name: Bastien Laval
author_username: bastien-laval
categories: []
created_at: 2025-01-06T20:52:57.831Z
updated_at: 2025-01-06T20:52:57.831Z
url: https://n8n.io/workflows/2701
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Description

  Boost your productivity and keep your Asana workspace clutter-free with this n8n workflow. 

  It automatically scans for tasks whose due dates have passed and reschedules them to the current date, ensuring no important to-dos slip through the cracks. 

  Additionally, any completed tasks in Asana with an overdue date are removed, maintaining a clear, organized task list.

  Key Benefits

  Streamline Task Management**: No more manual updates—let the workflow reschedule overdue tasks for you.
  Optimize Workspace Organization**: Eliminate finished tasks to focus on active priorities and reduce clutter.
  Save Time and Effort**: Automate repetitive maintenance, freeing you to concentrate on what truly matters.

  Configuration Steps

  Add your Asana credentials
  Schedule the workflow to run at desired intervals (e.g., daily or weekly).
  Select your Workspace Name and your Assignee Name (user) in the Get user tasks node
  (Optional) Tailor filtering conditions to match your preferred due-date rules and removal criteria.
  Activate the workflow and watch your Asana workspace stay up to date and clutter-free. 

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

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

metadata_json:
  {"categories":["automation","project management","task management","productivity","integration"],"complexity":"simple","use_cases":["Automatically reschedule overdue Asana tasks to the current date","Remove completed tasks that were overdue to declutter workspaces","Run scheduled maintenance to keep task lists current","Enforce due-date hygiene and reduce manual task upkeep"],"estimated_setup_minutes":10,"required_services":["Asana (API access)","n8n (to run the workflow)"],"key_features":["Auto-reschedule overdue tasks to today","Delete completed tasks with overdue dates","Configurable Workspace and Assignee selection","Schedule node for periodic execution (daily/weekly)","Filter/IF nodes for customizable due-date and removal criteria"],"target_audience":["Project managers","Team leads","Operations/IT administrators who manage Asana workspaces\",\"Productivity-focused individuals and small teams"]}


name: Save Hotmart events to Google Sheets
author_name: Solomon
author_username: solomon
categories: []
created_at: 2025-01-06T23:55:50.691Z
updated_at: 2025-01-06T23:55:50.691Z
url: https://n8n.io/workflows/2702
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Português

  Acompanhe todos os seus eventos do Hotmart em um só lugar e mantenha seus dados organizados para análise.

  Com este fluxo você pode registrar compras, reembolsos, eventos de assinatura e abandono de carrinho diretamente no Google Sheets.

  Como funciona

  O fluxo recebe os eventos da Hotmart e registra automaticamente no Google Sheets.

  Por exemplo:

  Compras são registradas com informações como nome do produto, valor pago e dados do comprador.
  Abandono de carrinho registra informações sobre o produto visualizado, dados de contato do cliente e horários.
  Eventos de assinatura mostram atualizações como cancelamentos ou renovações.

  Para quem é?

  Criadores, empreendedores e negócios que usam o Hotmart e precisam de uma forma clara e automatizada de acompanhar suas vendas e dados de assinatura.

  Remova a necessidade de transferir dados manualmente – este fluxo de trabalho faz isso por você, economizando tempo e reduzindo erros.

  Confira meus outros templates

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

  English

  Track all your Hotmart events in one place and keep your data organized for analysis.

  With this workflow, you can register purchases, refunds, subscription events, and cart abandonment directly in Google Sheets.

  How it works

  The workflow listens for events from Hotmart and automatically records the details in Google Sheets.

  For example:

  Purchases are logged with details like product name, amount paid, and buyer information.
  Cart abandonment records include the product viewed, customer contact details, and timestamps.
  Subscription events show updates like cancellations or renewals.

  Who is this for?

  Creators, entrepreneurs, and businesses using Hotmart who need a clear and automated way to track their sales and subscription data.

  No need to manually transfer data – this workflow does it for you, saving time and reducing errors.

  Check out my other templates

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

nodes_used:
  ["n8n-nodes-base.dateTime","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.executionData","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.googleSheets","n8n-nodes-base.set","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE+2WzU7kRhDHX6Xlswv1t92zJwKzCRIBxEdyYBGq7i6Ddxn3rG1gV4iHWeUQ5ZBTHoEXizwLw0Bm2CXKMUer/1X1q/K/P26yJkXqstHxTVbHbJRVKmohfASljQAtDAcMKoIThS05Ft5InuVZgxPKRtlGaq6o7VlfT6jrcTLN8qz/PB2WmrKBWW7w2NFaxJ4O6wlleTZNXd3XqclGx6KwPDeWn+TZFFucUE9tl41ubvOsST11W83bi3SdjSq86Ohr6l+o7WbB8ja/Zy6iVlFbDUaKCnQhETxWBmypXBm4ROHLR+aD67oP5ytBu4flGUA2yoDtHe1v/LR+MD7d2989HB8csrs/GLJpW0+obpE1qa+rOuDd73e/JdYl3xKbUqxjYpFYSzTx6aJLb941wA6OfjjY2N/aO9za3TndWN/ZGG9vrw8fDENqegrE3l82fWIhTVhi08s2nGNHp9N2oOlz9vESm5hYYuGipqafVVoowiI1fZtYTGxK7d2faYBAdoYtNn2NM4Z5O/vjt0c7m+NN1t399Vj/oUJIbUssPcnNKuyHRp6k2dj9eW97fDhmXX3WzCbBPl4Sw4A+XbJFEJqDsCFzrJtzqtvE3t99GVQ9NYEYJnZFTaSY2jfvmmd+UZznulzmlyfeUHNvODTRVigBlZegvRLgTSGASkdeYwwVugVv9HX48JntpJ5WG2SmuZcssFnNcxD8m2xizsaNseSEBxGVA42lB+QCgTgKVxTWRauXsol/BSe/PbdHNrKkKZCHivsStNQOSrQFVFEVRWmc9E4tZZOvZhPW8ly8Bs5YIayiAN674aeig9IoA4Wzwha8ICXFAhxeEaNPFC6HgixijysZ57LNr6rn3pP6FZiOtA3cKfCuiKCNq8CHyKHCsqxK58kUy2eoXj9DyV/rPqeN8koJKF0woDkpQKsM8BijtKZ0sZCPdL+SP0/pw0qw6/n6IpXgD8f7/frWUFkrh6WtCErhAmgjLDjyFRhNReG8sTwME3i5j7XHTgpTefJVADTRgI5SAUqvoeI8kJe8UnbhzvoxpbMLYgfnRH23sp+zmWouWmhKKr7qznpCqNfMnBBtiFbJAEWpCHTJS3BkA0ipjK9QRPXkhqKedWlCL1u1o/4ZGNffBabW9BxMWS1EiRy4IgItPEJZKQWOC6qkiYQWl1pUv9qiUmqeq+9x6EmehdQ0FIbIQfJwZ49usgnWQ7Ljm9nD5eUnyEybZ3UT6VM24rcn+f9h/1HYyW0+PxKW/ZXnj6znCfJH5Uun89K6T7fHsuortvjSbP/semk/y7fkkoy3t38DiEFg7FQLAAA=

metadata_json:
  {"categories":["integration","automation","data processing"],"complexity":"medium","use_cases":["Automatically log Hotmart purchases to a spreadsheet","Record refunds and subscription events for bookkeeping","Capture cart abandonment details for follow-up","Centralize sales and subscriber data for analysis and reporting","Reduce manual data entry and human errors"],"estimated_setup_minutes":15,"required_services":["Hotmart (webhooks)","Google Sheets (Google account / Sheets API)"],"key_features":["Receives Hotmart events via webhook","Writes event details to Google Sheets rows","Handles multiple event types: purchase, refund, subscription updates, cart abandonment","Maps event fields (product, amount, buyer, timestamps) to sheet columns","Uses switches and timestamping to route and format events"],"target_audience":["Creators and course sellers","Entrepreneurs and small businesses using Hotmart","Marketing and sales teams tracking conversions and churn"]}


name: AI Agent : Google calendar assistant using OpenAI
author_name: Dataki
author_username: dataki
categories: []
created_at: 2025-01-07T15:09:52.723Z
updated_at: 2025-01-07T15:09:52.723Z
url: https://n8n.io/workflows/2703
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 19:51:23
description:
  This template is a simple AI Agent that acts as a Google Calendar Assistant. 
  It is designed for beginners to have their "first AI Agent" performing common tasks and to help them understand how it works.

  For new users of n8n, AI Agents, and OpenAI:
  This template involves using an OpenAI API Key. If you are new to AI Agents, make sure to research and understand key concepts such as:
  "Tokens"** (used for API requests),
  "Tool calling"** (how the AI interacts with external tools),
  OpenAI's usage costs** (how you will be billed for API usage).

  Functionality

  It has two main functionalities:
  Create events** in a calendar
  Retrieve events** from a calendar

  How you can use it
  Everything is explained with sticky notes in the workflow. 
  It is ready-to-use: all you need to do is connect your OpenAI credentials, and you can start using the workflow.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.googleCalendarTool","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","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, 5596 characters]

metadata_json:
  {"categories":["automation","integration","productivity","ai-agent","calendar"],"complexity":"simple","use_cases":["Create calendar events via natural language","Retrieve upcoming or past events","Automate meeting scheduling workflows","Demo/learn AI Agents and tool calling with OpenAI and Google Calendar"],"estimated_setup_minutes":15,"required_services":["OpenAI API key","Google Calendar (Google account with API/OAuth access)","n8n instance"],"key_features":["Natural-language AI agent for calendar tasks","Create and retrieve Google Calendar events","Uses OpenAI tool-calling via agent node","Memory buffer window to keep short-term context","Sticky notes in workflow for guided setup and learning"],"target_audience":["Beginners new to n8n and AI Agents","No-code/low-code users looking to automate calendars","Developers learning tool-calling patterns with OpenAI and Google APIs"]}


name: ServiceNow Incident Notifications to Slack Workflow
author_name: Angel Menendez
author_username: djangelic
categories: []
created_at: 2025-01-07T17:36:49.670Z
updated_at: 2025-01-07T17:36:49.670Z
url: https://n8n.io/workflows/2704
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who is this for?

  This workflow is ideal for IT operations teams or system administrators who use ServiceNow to track incidents and Slack for team communication. It provides real-time updates on new ServiceNow incidents directly in a designated Slack channel, ensuring timely response and collaboration.

  What problem is this workflow solving? / Use case

  Manually monitoring ServiceNow for new incidents can be time-consuming and prone to delays. This workflow automates the process, ensuring that team members are instantly notified of new incidents, complete with all relevant details, in a Slack channel. It enhances operational efficiency and incident response time.

  What this workflow does

  Schedule or Manual Trigger: The workflow can be triggered manually or set to run automatically every 5 minutes.
  Retrieve New Incidents: Fetches incidents created in ServiceNow within the last 5 minutes.
  Error Handling: Posts an error message in Slack if there are issues connecting to ServiceNow.
  Incident Processing:
      If new incidents are found, they are sorted in ascending order by their number.
      Detailed incident information is formatted and sent to a specified Slack channel.
  No Incidents: If no new incidents are found, the workflow does nothing.

  Setup

  ServiceNow API Credentials: Configure ServiceNow Basic Authentication in the workflow to connect to your ServiceNow instance.
  Slack API Credentials: Add your Slack API credentials to enable message posting.
  Slack Channel Configuration:
      Define the Slack channel where notifications should be sent.
      Ensure the channel ID is correctly set in the Slack node.
  Adjust the Schedule: Modify the schedule in the Schedule Trigger node to suit your requirements.

  How to customize this workflow to your needs

  Notification Format:
      Customize the Slack message format to include additional or fewer details.
      Update the Blocks section in the Slack node for personalized messages.
  Incident Query Parameters:
      Adjust the sysparm_query parameter in the ServiceNow node to filter incidents based on specific criteria.
  Error Handling:
      Modify the error message in the Slack node for more detailed troubleshooting information.

  Features

  Real-Time Notifications**: Immediate updates on new ServiceNow incidents.
  Error Handling**: Alerts in Slack if the workflow encounters issues connecting to ServiceNow.
  Customizable Notifications**: Flexibility to modify incident details sent to Slack.

  This workflow streamlines incident management and fosters collaboration by delivering actionable updates directly to your team.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.dateTime","n8n-nodes-base.serviceNow","n8n-nodes-base.if","n8n-nodes-base.slack","n8n-nodes-base.sort","n8n-nodes-base.slack","n8n-nodes-base.noOp","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, 4600 characters]

metadata_json:
  {"categories":["automation","integration","IT operations","monitoring"],"complexity":"medium","use_cases":["Real-time incident notifications from ServiceNow to Slack","Automated incident monitoring and alerting","Faster incident response and team collaboration","Filtering and routing incidents to appropriate channels","Logging or auditing new incident creation"],"estimated_setup_minutes":15,"required_services":["ServiceNow API (Basic Authentication)","Slack API (Bot token or incoming webhook)"],"key_features":["Scheduled or manual trigger (default every 5 minutes)","Fetches incidents created within a time window","Sorts incidents and formats detailed notifications","Posts notifications to a specified Slack channel","Error handling with Slack alerts if ServiceNow connection fails (no-op when no incidents)"],"target_audience":["IT operations teams","System administrators","Site reliability engineers (SRE) / Incident responders"]}


name: Chat with GitHub API Documentation: RAG-Powered Chatbot with Pinecone & OpenAI
author_name: Mihai Farcas
author_username: mihailtd
categories: []
created_at: 2025-01-07T20:05:27.294Z
updated_at: 2025-01-07T20:05:27.294Z
url: https://n8n.io/workflows/2705
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  This workflow demonstrates a Retrieval Augmented Generation (RAG) chatbot that lets you chat with the GitHub API Specification (documentation) using natural language. Built with n8n, OpenAI's LLMs and the Pinecone vector database, it provides accurate and context-aware responses to your questions about how to use the GitHub API.
  You could adapt this to any OpenAPI specification for any public or private API, thus creating a documentation chatbout that anyone in your company can use.

  How it works:

  Data Ingestion: The workflow fetches the complete GitHub API OpenAPI 3 specification directly from the GitHub repository.
  Chunking and Embeddings: It splits the large API spec into smaller, manageable chunks. OpenAI's embedding models then generate vector embeddings for each chunk, capturing their semantic meaning.
  Vector Database Storage: These embeddings, along with the corresponding text chunks, are stored in a Pinecone vector database.
  Chat Interface and Query Processing: The workflow provides a simple chat interface. When you ask a question, it generates an embedding for your query using the same OpenAI model.
  Semantic Search and Retrieval: Pinecone is queried to find the most relevant text chunks from the API spec based on the query embedding.
  Response Generation: The retrieved chunks and your original question are fed to OpenAI's gpt-4o-mini LLM, which generates a concise, informative, and contextually relevant answer, including code snippets when applicable.

  Set up steps:

  Create accounts: You'll need accounts with OpenAI and Pinecone.
  API keys: Obtain API keys for both services.
  Configure credentials: In your n8n environment, configure credentials for OpenAI and Pinecone using your API keys.
  Import the workflow: Import this workflow into your n8n instance.
  Pinecone Index: Ensure you have a Pinecone index named "n8n-demo" or adjust the workflow accordingly. The workflow is set up to work with this index out of the box.

  Setup Time: Approximately 15-20 minutes.

  Why use this workflow?

  Learn RAG in Action: This is a practical, hands-on example of how to build a RAG-powered chatbot.
  Adaptable Template: Easily modify this workflow to create chatbots for other APIs or knowledge bases.
  n8n Made Easy: See how n8n simplifies complex integrations between data sources, vector databases, and LLMs.

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","knowledge management","vector search","RAG (Retrieval-Augmented Generation)"],"complexity":"medium","use_cases":["Interactive chat interface for API documentation","Internal developer knowledge base / doc search","Onboarding and developer self-service","Generating code snippets and usage examples from API specs","Adapting RAG workflows to other OpenAPI specs or private APIs"],"estimated_setup_minutes":20,"required_services":["n8n","OpenAI (API key, LLM + embeddings)","Pinecone (vector database)","GitHub (to fetch the OpenAPI spec)"],"key_features":["Fetches OpenAPI 3 spec directly from GitHub","Text chunking and recursive splitting for large docs","Generates embeddings for chunks and queries with OpenAI","Stores and queries vectors in Pinecone for semantic search","RAG-style response generation using gpt-4o-mini (LLM) with retrieved context and code snippets support"],"target_audience":["Developers","Platform/DevOps engineers","Developer advocates/technical writers creating docs chatbots"]}


name: Auto-Categorize blog posts in wordpress using A.I.
author_name: Keith Rumjahn
author_username: rumjahn
categories: []
created_at: 2025-01-08T06:30:40.394Z
updated_at: 2025-01-08T06:30:40.394Z
url: https://n8n.io/workflows/2706
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:31
description:
  WordPress Post Auto-Categorization Workflow



  📺 Click here to watch youtube tutorial 

  🎯 Purpose
  Automatically categorize WordPress blog posts using AI, saving hours of manual work. This workflow analyzes your post titles and assigns them to predefined categories using artificial intelligence.

  🔄 What This Workflow Does
  • Connects to your WordPress site
  • Retrieves all uncategorized posts
  • Uses AI to analyze post titles
  • Automatically assigns appropriate category IDs
  • Updates posts with new categories
  • Processes dozens of posts in minutes

  ⚙️ Setup Requirements
  WordPress site with admin access
  Predefined categories in WordPress
  OpenAI API credentials (or your preferred AI provider)
  n8n with WordPress credentials

  🛠️ Configuration Steps
  Add your WordPress categories (manually in WordPress)
  Note down category IDs
  Update the AI prompt with your category IDs
  Configure WordPress credentials in n8n
  Set up AI API connection

  🔧 Customization Options
  • Modify AI prompts for different categorization criteria
  • Adjust for multiple category assignments
  • Add tag generation functionality
  • Customize for different content types
  • Add additional metadata updates

  ⚠️ Important Notes
  • Backup your WordPress database before running
  • Test with a few posts first
  • Review AI categorization results initially
  • Categories must be created manually first

  🎁 Bonus Features
  • Can be modified for tag generation
  • Works with scheduled posts
  • Handles bulk processing
  • Maintains categorization consistency

  Perfect for content managers, bloggers, and website administrators looking to organize their WordPress content efficiently.

  #n8n #WordPress #ContentManagement #Automation #AI

  Created by rumjahn

nodes_used:
  ["n8n-nodes-base.manualTrigger","n8n-nodes-base.wordpress","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.wordpress","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.agent"]

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

metadata_json:
  {"categories":["content_management","automation","integration","AI"],"complexity":"medium","use_cases":["Automatically categorize uncategorized WordPress posts","Bulk content organization and cleanup","Scheduled content categorization","Generating or suggesting tags/categories for posts","Reducing manual content management work"],"estimated_setup_minutes":30,"required_services":["WordPress site with admin access","n8n instance","OpenAI API (or alternative AI provider)","Credentials for WordPress REST API"],"key_features":["Fetches uncategorized WordPress posts","Uses AI to analyze post titles and determine categories","Assigns and updates WordPress category IDs in bulk","Configurable AI prompt for custom categorization rules","Supports scheduled or manual runs for batch processing」「Optional extension points: tag generation, multi-category assignment, metadata updates"],"target_audience":["Content managers","Bloggers","Website administrators / editors​​,"]}


name: Food Delivery Notifications and Easy Expense Tracking
author_name: darrell_tw
author_username: darrelltw
categories: []
created_at: 2025-01-08T07:41:52.038Z
updated_at: 2025-01-08T07:41:52.038Z
url: https://n8n.io/workflows/2707
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Workflow Description
  This workflow automates the process of retrieving emails from a food delivery platform, extracting key order details, and sending notifications to a Slack channel. Additionally, the Slack message includes a Moze accounting app URL scheme link for quick expense tracking.

  Key Features
  Manual Trigger: Allows the workflow to be executed manually for immediate testing.
  Gmail Integration: Retrieves emails containing specific keywords in the subject line (e.g., "透過 Uber Eats 系統送出的訂單"). (You can adjust the keywords to fit your language.)
  Data Extraction: Parses the email content to extract key details such as:
     Order price
     Shop name
     Order date and time
  Slack Notification: Sends a notification to a specified Slack channel using a structured block format, including a link to record the expense in the Moze accounting app.

  Node Configurations

  1. Manual Trigger
  Purpose**: Starts the workflow manually for testing or immediate execution.
  Configuration**: No setup needed.

  2. Gmail Trigger
  Purpose**: Automatically polls Gmail for new emails matching specific subject keywords.
  Configuration**:
    Filters:
      q: subject:透過 Uber Eats 系統送出的訂單 (You can adjust the keywords to fit your language.)
    Polling Frequency: Every hour at 30 minutes past the hour.
    Credentials: Linked Gmail account.

  3. Extract Price, Shop, Date, Time
  Purpose**: Extracts key information from the email content using regular expressions.
  Extracted Data**:
    price: Order price (e.g., $200).
    shop: Shop name (e.g., "店名").
    date: Order date (e.g., 2024.01.01).
    time: Order time converted to 24-hour format (e.g., 14:30).

  4. Slack Notification
  Purpose**: Sends a formatted message to a Slack channel with extracted order details.
  Message Content**:
    Text:
          Ubereat 訂餐資訊:
      商家: {{ shop }}
      金額: {{ price }}
      日期: {{ date }}
        Moze App Link: Includes a clickable button in the Slack message with a pre-filled Moze app URL scheme:
          moze3://expense?amount={{ price }}&account=信用卡&subcategory=外送&store={{ shop }}&date={{ date }}&time={{ time }}&project=生活開銷
        Channel: Slack channel ID associated with food delivery notifications.

  Additional Notes
  Customization**: Adjust the email subject filter (subject) to match other types of food delivery platforms or services.
  Error Handling**: Ensure regular expressions for data extraction match the email format. Test with sample emails before deployment.
  Moze URL Scheme Reference**: Learn more about Moze app URL schemes for customization by visiting the Moze Documentation.

  This workflow is ideal for automating expense tracking and centralizing notifications for food delivery orders, streamlining personal or team expense management.

  Image:
  UberEat Gmail with order information


  Slack text with button


  Click the button will call moze url scheme

  工作流程描述
  此工作流程自動化從外送平台獲取郵件，提取關鍵訂單詳細資訊，並將通知發送到指定的 Slack 頻道。此外，Slack 消息中包含一個 Moze 記帳 App URL Scheme 的連結，方便快速記帳。

  主要功能
  Manual Trigger：允許手動執行工作流程，方便測試。
  Gmail Integration：從 Gmail 中提取包含特定關鍵字（例如：「透過 Uber Eats 系統送出的訂單」）的郵件。
  資料提取：解析郵件內容，提取以下關鍵資訊：
     訂單金額
     商家名稱
     訂單日期與時間
  Slack 通知：將結構化的通知發送到指定的 Slack 頻道，並包含一個連結供用戶快速記帳。

  節點設定

  1. Manual Trigger
  用途**：手動啟動工作流程以進行測試或即時執行。
  設定**：無需額外設定。

  2. Gmail Trigger
  用途**：自動檢查 Gmail 中是否有符合特定主題關鍵字的新郵件。
  設定**：
    篩選條件：
      q: subject:透過 Uber Eats 系統送出的訂單
    檢查頻率：每小時的 30 分。
    憑證：已連結的 Gmail 帳號。

  3. Extract Price, Shop, Date, Time
  用途**：使用正則表達式從郵件內容中提取關鍵資訊。
  提取的資料**：
    price：訂單金額（例如：$200）。
    shop：商家名稱（例如：「店名」）。
    date：訂單日期（例如：2024.01.01）。
    time：訂單時間（24 小時制，例如：14:30）。

  4. Slack 通知
  用途**：將訂單詳細資訊以格式化消息發送到 Slack。
  消息內容**：
    文字：
          Ubereat 訂餐資訊:
      商家: {{ shop }}
      金額: {{ price }}
      日期: {{ date }}
        Moze App 連結：Slack 消息中包含一個可點擊按鈕，預填 Moze App URL Scheme：
          moze3://expense?amount={{ price }}&account=信用卡&subcategory=外送&store={{ shop }}&date={{ date }}&time={{ time }}&project=生活開銷
        頻道：與外送通知相關的 Slack 頻道。

  補充說明
  自訂化**：可調整郵件主題篩選條件（subject），以匹配其他外送平台或服務。
  錯誤處理**：確保正則表達式匹配郵件格式。在部署前使用樣本郵件進行測試。
  Moze URL Scheme 參考**：了解更多關於 Moze App URL Scheme 的客製化資訊，請參閱 Moze 官方文件。

  此工作流程適合自動化費用記帳以及集中管理外送訂單通知，提升個人或團隊的費用管理效率。

nodes_used:
  ["n8n-nodes-base.splitInBatches","n8n-nodes-base.manualTrigger","n8n-nodes-base.gmail","n8n-nodes-base.gmailTrigger","n8n-nodes-base.set","n8n-nodes-base.slack"]

workflow_json_compressed:
  H4sIAAAAAAAAE8VYjW8UxxX/V7ajyPjMjtmdnf2ULASEBtMkVHxEbbwnNDvz9rx4b/e6O2ds3JMAVQVBaRspgaiijZCCZLVSqpY0pSVS/xnOH/9FNbtn353vbBqcqLJ0np2Z997vfcx7b2YDJQIFSLy7mH104cMz8RUQZ6+di5CO2iAZCjZQkpWSZRwW1b5YiMgC3/QdNzYNk3DfFsIgUWwzQcyYuH7MKXVNO6Yuc5nvMMuiluUQkzNGbAv1dJSxNqAA9b98vHv7zs7m5/2XL5COJGuVKFhq6ijLBajhRg3N8LnpR8zE1I4JphaLse97NrZswxOeYXIzctE+1/fzvKNdWoVCW5TQLhXj9Y5ayLwMV5xxxEqYLztpIhezs0zyZVDbOnmZyCTPULBEqaEbTR11WMHaIKEolR3yjlpWw16v5voRFGVFYfX0AVjTc4gdmQLHXhxjCtTDXuRQzHxBiSAUOOdDsOfShK9oMteuQim1H6f5zUPxtlnWZenVImm1oDgAdwragwjNfYQO9X3L4hRHphNh6gjAvmF52BUeNyJLeOB5Q4TvgdSgzZK01OIib2vvqbF2M5HLGodCsiTTym50A7g8FHlLkYwjJqSGfBOi5TxfqSLL9zkVwBk2Xe5i6jLAzPI4tg2LUt/ywPUJOuiTMml3UkBBzNISdBQn6d7KL1CABsiC3du/273zW+1aBIV2nslS237xavsff9u9fad/79/bf/jVzubd/uOvVGiO+Fh9QMFqxKgF8kyqtChAdotMjQNZdKGnI16AgEwmLK0EV+peOtOVy6Q6PUo3ixY/81fWfpJeZOLSz53uiH0rezLO824m0URgkfmh4yJimh6zKLYJE5hSh+LIBYbd2DIN27acmIkh48vAIVmFfS+twPrNvBADBw7j6AifTQ02kxg6Nr3J4/GDuqKTp+nVpA0Vv0RCu0oP7Vwo7LAKxfqFvKuQtpOsKwEFltFr9n5g55jzZN85huF7jk0tLAyTYRqZJo4ixrBjcNdipmBgkCHj82uyYFxqPy0SDrp2ZTnv6Nq7TIKuXV1sw+FJC+S4Nxxi6M6RqUpHrCyTVtaGTFZrY597OZYTSg079jBx3BhT37IwM10Pm5FtmtQWDoniIfyOgj0EWcoiyVpIR6ss7aqJhY0N7Z0bZZ4thUjCmgxRc76tEu3sqTB8ZzYMxcnZMJwPQ7FBeo3TjVONJbOp9Xpo35y+4/HY5QI7QDxMLeJh5hEfWzEQHlnEdag1xFMu5523g/P61fPXLx9uff7Xrbub/aebs0th2KVgGDgMu37MbIZvncEfG9gPw7J5srGzeXfnxbeTcG3LoSTiEY4t5mBqeA6OBDcxiT1BXJ+41BnxvmDyLa2nQiTQlAE3aK//r6/VwNRJb+vp/f3hk+e1PecL6KSMw2yI1E6kayGaD1FjZF6RTZ1/8ryeD1FjTE8uCHFNi2DfNSNMfdfAXmQL7BJKHQtiMCxnqKdM2m/SM8y0w3Sdff3yQf/R/V++fvmw/+h+o9ZaadgIZgeRc6qhna5YzB6Hh3LmwsKCdqLedUKbmTkWpiXS1H6k+JnkRIVO005rsx1WlLCYyeNBJc2GdlIzifo9EZzQTh4PqdUcAAyOrfH3hEfBaaifQMu6aaqFmYq/5mTHNU/3o9ISXuyrSkiZIVTy8rHnezH2mMGZT00b3JHCeAUyoVquKynjK3UnczbN+crhSVdtHE+7njFIu6MNjAGeSVyLYJcKgqlPKPZEZGEn8olFfcf2LXeigVFmUmdBFURgUtvZvLv75e93Xtzb2XwQaGHW/+zX/a++CTRtLynMq2Sn9Xphtnvvk91nj4LhSpWWq6WtJ8+3nn4xsqRSTrUSZnXDvf3N3/t/vB2EWTu/BVZw6hSsdSAr4TRrq2K3MMF0ZlAGF17/59n2p5v9R89mym7EmYRWXqwv1M38TCnzAhYOYp1R4hcOgkE6KiFVnWOA+DLLMlD9VaR8UV5LqgQRZqEMB1MhCrSlakLW8+qvcplaCVEJXHknRPrIahWEgTYkGCNpFyvi5hjFCE2IpvokDLMwzOYGfpmb9EuYzQ08MzfFNWE2N3DO3KR30B6OXj3o6UfoK5LVRECxR3Tk3u/fNh/kt0CrQ2nnLw93X/1p6/4nI/hH5DDOoSzzYv0IYVFXyvwwYaM0Y1SdlCXZ9XqbfmDTPtAa48QGaOc3ErVDNfHDpd4YgqpS1Wy4uqkdANgt0oGt/m9naGamU+SqsV7Y/vSLra9f7T5+uPvgnzMzqvQON6uvKr7G4LMqJq4nYtQHmA0i5WAoqn/NMFOndnBYVdLbQNevF4OrkL7Xj6dJKUfq/DnD86xzFz8wr11QxIwvg7gMZTeVH04+BOzc+3P/4Wf93zxWV4A2lCVrwdU6LUeDLJ3LZSgujXW4Xbmsmny+d1vL6w5/sv+vcnnd/5/pJPtXgPJd86L/8fvr55d5Ky0us5FqUVWJI+5nVq+pV6ZchT0zlCBlkrUqgbAGvKtQXSoEFChAq6aCtVozqOuGRw1iU44Nw/YwdWPAfkQIduMo8i2TUre6kPM8y+pjXDE++M4RbKA2S1RxWmrqSxvVI8p3uWlUxDpKMgFrKDB6zWZPn/Y+MSJnX8jbPBJMlXdobZ4m9dCXnqms32SIaRLe3CpMFfW/Xb2Pr9J3MPtxhfV6/wWSmRXEKBQAAA==

metadata_json:
  {"categories":["automation","integration","notifications","expense-tracking","accounting"],"complexity":"medium","use_cases":["Automated expense tracking from food-delivery emails","Centralized Slack notifications for delivery orders","Quick mobile bookkeeping via URL-scheme prefilled expense","Parsing order details (price, vendor, date/time) from emails","Team-level expense visibility and auditing"],"estimated_setup_minutes":20,"required_services":["Gmail (or other email provider with searchable subject)","Slack workspace (incoming message permission)","Moze mobile app (URL scheme support)","Food-delivery service that sends order emails (e.g., Uber Eats)"],"key_features":["Manual trigger for testing","Gmail trigger with subject filtering and scheduled polling","Regex-based extraction of order price, shop, date, time","Formatted Slack block message with a clickable button","Pre-filled Moze app URL scheme to create an expense entry quickly (amount, account, subcategory, store, date, time, project)"],"target_audience":["individuals tracking personal food expenses","teams/ops managing shared delivery expenses","finance/bookkeeping personnel wanting automated receipts capture」「n8n users building email-to-Slack automations"]}


name: Send Jira task notifications to Telegram user via Bot
author_name: Abolfazl Akbarzadeh
author_username: abolfazlakbarzadeh
categories: []
created_at: 2025-01-08T19:48:54.739Z
updated_at: 2025-01-08T19:48:54.739Z
url: https://n8n.io/workflows/2708
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  What we wanna do?

  Let's look at the concern. In my experience, some developers don't check their Jira board to find out whether there are new updates on the issues or not or if some Issues need to be addressed as soon as possible. So, the developer or anyone else in other fields needs to be informed about the task as soon as possible, too. One way to send this immediate notification is through the Telegram Bot.

  Setup Guide

  so, first of all, you need to register a Telegram Bot in your account and obtain its token, so that we'll be able to send Telegram messages by using this token through our bot;
  after getting your telegram bot token
  go to the workflow and click on one of the telegram nodes
  select the telegram credential or create one through the Credential to connect with field
  and put the token in the token in the Access Token field.

  Ok, you're done with the Telegram Side setup.

  then you need the Jira accounts (team users) accountId and also their telegram chatId for the telegram account node so that it can find the corresponding telegram user from the assignee of the issue, put this data as following guide comments in the telegram account node.

  Now we go for the Jira side setup, you need to setup some automation rules as your needs.
  go to the Jira settings and Global automation section, click on the Create Rule button
  select the Issue Created trigger type in the When step
  add a Send webhook request action, after selecting it you'll see its settings
  go back to workflow and from the jira-webhook node copy the Production URL 
  paste it in the Web request URL field in the Jira action setting
  then set the HTTP method field on POST 
  set Web request body on Issue Data (Automation format)
  in the header section, add a new header with the name type and value created for the creation event.

  OK, the Jira side also is done! Now It's time to test!

  If you've put your Jira accountId and telegram chatId in the telegram account node and of course started the telegram bot, after creating an Issue that is assigned to you, the creation notif will send to you in telegram!

nodes_used:
  ["n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.switch","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.if","n8n-nodes-base.webhook"]

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

metadata_json:
  {"categories":["integration","automation","notifications","alerting"],"complexity":"medium","use_cases":["Send real-time notifications to assignees when Jira issues are created","Alert team members about high-priority or time-sensitive issues","Bridge Jira activity into teams using Telegram for faster response","Automate mapping of Jira assignees to Telegram users for direct messages"],"estimated_setup_minutes":20,"required_services":["Jira (Cloud or Server) with automation/webhook capability","Telegram Bot (Bot token)","n8n instance to run the workflow"],"key_features":["Receives Jira issue webhooks","Sends messages via Telegram Bot to mapped assignees","Assignee -> telegram chatId mapping via credential/node configuration","Conditional routing (IF/Switch) to control notifications","Custom message formatting using a Code node"],"target_audience":["Developers","Project managers","Product managers/team leads who use Telegram for communication`,`DevOps/IT teams and automation engineers"]}


name: Automated Email Optin Form with n8n and Hunter io for verification
author_name: Keith Rumjahn
author_username: rumjahn
categories: []
created_at: 2025-01-09T05:40:32.489Z
updated_at: 2025-01-09T05:40:32.489Z
url: https://n8n.io/workflows/2709
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Case Study 📧
  Want to collect email subscribers without paying expensive monthly fees? 💰 This workflow creates a free email collection system with built-in email verification to ensure you only collect legitimate email addresses! ✨

  Learn more:
  📺 Watch the tutorial: 

  What this workflow does 🛠️
  Creates a customizable email collection form that can be embedded on your website 🌐
  Verifies email addresses using Hunter.io to filter out fake or invalid emails ✅
  Stores verified email addresses in SendGrid for your email marketing needs 📊
  Completely free solution (except for Hunter.io's 50 free monthly credits) 🆓

  Setup ⚙️
  Set up a free Hunter.io account for email verification
  Configure your SendGrid account credentials
  Customize the email collection form fields
  Get the embedded form code for your website

  How to adjust it to your needs 🔧
  Add additional form fields beyond just email collection
  Customize the form's appearance and labels
  Modify the verification logic based on your requirements
  Connect to different email marketing platforms instead of SendGrid
  Add additional automation steps after email verification

  Benefits 🌟
  No monthly subscription fees for email collection 💸
  Built-in email verification prevents fake signups 🛡️
  Scalable solution that won't lock you into expensive plans 📈
  Clean email list with only verified addresses ✨
  Simple setup and customization 🎯

  This workflow is perfect for bloggers, small businesses, and anyone looking to build an email list without getting locked into expensive email marketing platforms as their subscriber count grows! 🚀

  Built by rumjahn

nodes_used:
  ["n8n-nodes-base.noOp","n8n-nodes-base.if","n8n-nodes-base.hunter","n8n-nodes-base.formTrigger","n8n-nodes-base.sendGrid","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","data collection","email marketing"],"complexity":"simple","use_cases":["Collect email subscribers via embeddable form","Verify email addresses to reduce bounces and spam","Store verified subscribers in SendGrid","Embed lightweight opt-in on websites without monthly fees","Filter out fake or invalid signups"],"estimated_setup_minutes":20,"required_services":["n8n (self-hosted or cloud)","Hunter.io (email verification API)","SendGrid (email list/storage)","Website or CMS to embed the form"],"key_features":["Embeddable customizable opt-in form","Email verification using Hunter.io","Automatic storage of verified emails in SendGrid","Simple conditional logic to accept/reject addresses","Low-cost/free workflow (only Hunter.io credits consumed)"],"target_audience":["Bloggers","Small businesses","Marketers and growth teams looking for low-cost lead capture solutions」「Developers or freelancers implementing lead capture for clients"]}


name: Form with Dynamic Dropdown Field
author_name: Obsidi8n
author_username: derruttie
categories: []
created_at: 2025-01-09T13:29:08.624Z
updated_at: 2025-01-09T13:29:08.624Z
url: https://n8n.io/workflows/2712
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:31
description:
  This workflow creates a customizable form with a dynamic dropdown field that automatically updates its options from an external data source. 

  How it works

  The workflow polls an external data source (Google Sheets in this example) at regular intervals
  New values are processed and formatted for the dropdown
  The form automatically updates with the new dropdown options

  Set up steps

  Configure your data source:

  Default setup uses Google Sheets 
  	replace with credentials for your sheet
  	set up the update frequency
  Or modify to use any other data source (API, database, etc.)

  Adjust the form configuration:

  Customize the form title and description
  Add or modify form fields as needed
  The template includes the dropdown field by default

  Connect form submissions:

  Use the "Execute Workflow" node to process form submissions

  This template provides a foundation for creating dynamic forms that stay synchronized with your data sources, making it ideal for situations where dropdown options need to reflect current data.

nodes_used:
  ["n8n-nodes-base.n8n","n8n-nodes-base.n8n","n8n-nodes-base.formTrigger","n8n-nodes-base.googleSheetsTrigger","n8n-nodes-base.executeWorkflow","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.code","n8n-nodes-base.set","n8n-nodes-base.googleSheets","n8n-nodes-base.set"]

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

metadata_json:
  {"categories":["forms","integration","data synchronization","automation"],"complexity":"medium","use_cases":["Keep form dropdowns synchronized with live data (e.g., product lists, inventory)","Event registration or signup forms with up-to-date options","Surveys or feedback forms that reflect current categories or teams","Admin panels or internal tools that require dynamic selection lists"],"estimated_setup_minutes":20,"required_services":["n8n (workflow runner)","Google Sheets (example data source) or any other API/database","Credentials/access to the chosen data source"],"key_features":["Polls an external data source at regular intervals to fetch options","Automatically formats and updates a form's dropdown field","Customizable form title, description, and additional fields","Handles form submissions via Execute Workflow node","Extensible to other data sources (APIs, databases) using code/set nodes"],"target_audience":["Developers building internal tools or integrations","Product managers or operations teams needing dynamic forms","Event organizers and marketers managing signups or options lists"]}


name: Using External Workflows as Tools in n8n
author_name: Alfred Nutile
author_username: dailyaistudio
categories: []
created_at: 2025-01-09T16:45:57.560Z
updated_at: 2025-01-09T16:45:57.560Z
url: https://n8n.io/workflows/2713
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  This guide will show you how to use a workflow as a reusable tool in n8n, such as integrating an AI Agent or other specialized processes into your workflows.

  By the end of this example, you'll have a simple, reusable workflow that can be easily plugged into larger projects, making your automations more efficient and scalable.



  With this approach, you can create reusable workflows like "Scrape a Page," "Search Brave," or "Generate an Image," which you can then call whenever needed.

  While n8n makes it easy to build these workflows from scratch, setting them up as reusable components saves time as your automations grow in complexity.

  Setup

  Add the "Execute Workflow Trigger" node

  Add the node(s) to perform the desired tasks in the workflow

  Add a final "Set" or "Edit Fields" node at the end to ensure all external workflows return a consistent output format

  Details

  In this example, the "Execute Workflow Trigger" expects input in the following JSON format:

  [
    {
      "query": {
        "url": "https://en.wikipedia.org/wiki/some_info"
      }
    }
  ]

  Once your external workflow is ready, you can instruct the AI Agent to use this tool by connecting it to the external workflow. Set up the schema type to "Generate from JSON Example" using this structure:

  {
    "url": "URL_TO_GET"
  }


  Finally, ensure your external workflow includes a "Set" or "Edit Fields" node at the end to define the response format. This helps keep the outputs of your reusable workflows consistent and predictable.

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

workflow_json_compressed:
  H4sIAAAAAAAAE4VV23LbNhD9Fcymj4QMgnfO9MFJk7RJJjcrybSWJlkCSwm1BDIkJEXR8N87JGXLduzpIxYHi4OzZxcHMBpySP54/6Z+frXbRZ+UU+sVeLAmh5AfwNjWoVX014CLdBKj8ssiTmMdikBJmYUKhUiKWMpUlkGoAvIjrYJIpkr5uqAgxlQmSqiYoPPA4poghwW5r/h1R8XXGhcEHjhctJBfHo6MttGH4o358PfVh+Tny+lruDnoqmrVggeqIXSkzx3kIIWMuPC5SKd+nAdBLv1Jmib/gAebWv8/rJt7YCtNtwjITCiVFSmnsPB56MuQYyGIY1kUQmImElmcSD3/QWrjiH2pmqtyVe3YtDGLBTX9u/Z1j7Cp5cMVvMCWJjQeuMaf4HXVGmcqC/klD2PhcV+IuQc1NrgmR00L+aEbs36mph2QfucdWZcyiklHGS8w9nmY+ZJnmEQ8pCQRQRQmmqIT6xemoWcN7laP0lw6V3+k7xtq3T1uUj7MDTbNCnLoD7b52RnWZlKahlR/zUTT9mzrn7WqwZpGky2rnvf7dxdT8KCq+/THJ/7bVvZppfeQw++HmWVs1ueeQc5mcDiw3/r9yfcNNfvJplmxrpuBN8LKqlmja3voZR/pY2tsrnS1szPoI/OZ7Rh40JLV4x2u2dC4/pNQD285hmpSptwfmfSXgge4cUuyzigc9YAFWWqMetaQ7uO4mu6HFx7j5xu3nI4K98qMV/RB8GA5LN7fEfG2pJeHbt51g+GPuQfIvTz50QEfq1fxVVx/efrz4nOdvXp9t9pDGaC7b6BwIm8shDItdEExLzHKeFiUPi8EFlwFIRWFL1QpylvG18axF4ZWun3URC39Yp5HvHOn/ti2ZmHXZN2wd2d53aU+lrGkMuNJkEY89H3kKRbIKRRpUopMBZidyDbU1pVt6cS0dY2xC/Bgi6sNDU67dpZGh5Nr17Cug7EKd3QLJuGp9ZSWsfQDLoIUeRgFJU8FRRyDLIgpVFKL+ETlwhl1tWdvK0eP6zZgjpA7cyEVHg/CX/XbGd1bIZait5VZLB3kUggPVGUd2X4GPnnCLshq9unjG7aoHBv6f2anS9MyhZYVxBratKRZsWfnhp0vesUZWs3Q7ocB19aoiLmKDW5iyFrjaMLOVyvmluhuYZbY9jhdMdOyvrcYsmYcJ/nMzuy3b996rWeWHa779KbFL6o1DSxdxV6SG/u2G87ArwNw7gEqZ7YEeYmrdmhl54xdDLqM09ZU9l2jqYEctn6fYzueH762IIvLMMaEB74UPJRlxotAR1wK6VNMWRYVKQxCWlLXLr01QfMDrNH05bk8DH/JY80xoDwwVtMPyEU3n3fe4//HQ2kfGNsPJO26/wCUSjkZ3QcAAA==

metadata_json:
  {"categories":["automation","integration","developer_tools"],"complexity":"simple","use_cases":["Create reusable workflow tools (e.g., scrape page, generate image, search)","Integrate AI agents or specialized processes into larger workflows","Standardize outputs across reusable components","Call external workflows from main workflows for modular automation"],"estimated_setup_minutes":15,"required_services":["n8n","Optional: External APIs or services used by the reusable workflow (websites to scrape, AI providers, etc.)"],"key_features":["Execute Workflow Trigger to call reusable workflows","Standardized output via Set/Edit Fields node","Schema generation from JSON example for consistent inputs","Plug-and-play integration with AI agents or other workflows"],"target_audience":["developers","automation engineers","no-code/low-code builders using n8n"]}


name: Get Meta Ads insights and save them into Google Sheets
author_name: Solomon
author_username: solomon
categories: []
created_at: 2025-01-09T21:44:06.381Z
updated_at: 2025-01-09T21:44:06.381Z
url: https://n8n.io/workflows/2714
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Pull data using the Facebook Graph API and get your Meta Ads insights into your Google Sheets for analysis.

  Get metrics like impressions, spend, reach, conversions, CTR, and CPC.

  Automate your data collection.

  Who is this template for?
  Marketing professionals looking to analyze Meta Ads data.

  You can also replace the Google Sheets node for a database node like MySQL or Postgres, and then use your BI tool (Power BI, Looker Studio, Tableau) to analyze the data.

  How it works
  Every day the flow gets Meta Ads insights from the previous day and saves them to Google Sheets.

  How to set up
  All information you need to set up this workflow is already inside the template.

  Check out my other templates
  👉 https://n8n.io/creators/solomon/

nodes_used:
  ["n8n-nodes-base.splitOut","n8n-nodes-base.splitOut","n8n-nodes-base.manualTrigger","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.facebookGraphApi","n8n-nodes-base.stickyNote","n8n-nodes-base.facebookGraphApi","n8n-nodes-base.splitOut","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.googleSheets","n8n-nodes-base.googleSheets"]

workflow_json_compressed:
  H4sIAAAAAAAAE62XzW7bOBSFX0XQ2jfgz+Wfd10Mumq7aDGzKLK4JC8TIbZkyEo7RhCgjzHzen2SgTyZsZtItR10LfLy4yHvOeJD3XaZt/Xy80Pd5HpZe6WlZqXAFSbAbBGCyRaMc1lSQuucqRd1S2uul3WmgarUre7XbdW1q129qIfdZvzS+hb2pSHSlq+2m1UzfLgf6kW96bbN0HRtvfwstRILheJ6UW+opzUP3G/r5cPjv2V+5367HygfF094SNm65B2UEjSgFQmiighGGF2kDppzOODtV60ojcttL2Xz9kI2F5IothiwBREwygTREwFFJMPB6kjlwPbHLbdVWjXprmlvqu/f/vrE26H62vV3ZdV9/f7t71neNbX3tPrUNzc33P8IfTGz0pEzFQcsVAEM6CAgWqCci7eohSr5wPzbF+53mXYVDZWm9byi6Zbz/YpnGe1pxCv1P2RUSpKKDigpAZhEBrLGgHIeQyFlMdAB8uPQpLtd9b4beB5wP+ZpyPGho1iAfwFXp64duB3qZV3/5G7q4oVlBUFlA0hCgccgQeXMibQVMrlJTHk5p7JiYdQrQaNlb6MLkHNmQBEMkBUKhC8mMeVUyE+CqotBlRViAfLllTyP1BjSXjoB2nMZT15DUB4ha5lUFsaxEwfSN7lq2m1zcztsq9J364raXZVp4GrDfdPlWfpCiWPX3b3taXP7ZtM8E1t4sTBnXNlDV3lWxiCC174AavIQSgzgc0guknGxyEmB9eU3YYR7pbrel5xCNJCC9IDOWAjZWihoA0bvUjlu/hfq7ng7cJ9p3vXP0PUit9LKuxLM6FEWAVNMEHQMYKItwlljYkjT7l99odU9X5oBSgqxMOKSfFLKOskSWBgENJwhmmJBoRXeaCWKPSIszWrgvoq7/yj3cLNq7kdP9NcZGh7MVHollAkSvBIesGCG6K0EiyJhSlFmf5RSH9rVrlp3LQ/U704m6SShxrM0VEeGTynIbLMCm60EtN6BJ09gjEyUk7ZG2ikVn4G+Us4LYQ3GQC5mEBbV6FEFgjQBROBYZCTyiSebHV/npvalE52ZT4ay8U6MrjSqyhrISQ2KWEstdTJhOp/MxaB6DFJ8bZDa7ClbnYCMZkCvJQSKCDmTIyIns4nHvpSrt9xyT6vqHQ99k+Yv6E3X3az44y3zsH1mRvtGOnnweIUHN4pGiygzSJk9oI56jNEEQcUSBTmnZvS0l7v8PkYn+vw8QbNSbBIbMFpnQIcGggkJtM/FmiidRP+joO+7Ft6d2/bzqqpw3g/+sazJJWWU8uBIaEBOHqJXDhxZzCSNjPwM9leBntH4I+j1YlS95afFlg/P3hnLh3pNzVj188P+eXUqi/ajF3XTZv6zXopRiadpJwLi+cTr68fFi5/0KZxzsnyy+IsH36nNnrXNn7bwJMeUnlMoJ/Jrsvb0nKnq5ybP5DLTZzt9WqcacnKB2WlHazwNnL0NUzjzj/4T+5wUaW7DF2729HP6F/bB4+M/6TaXXjgRAAA=

metadata_json:
  {"categories":["automation","integration","data processing","reporting"],"complexity":"medium","use_cases":["Automated daily collection of Meta (Facebook/Instagram) Ads performance data","Marketing performance reporting and dashboards","Feeding ad metrics into Google Sheets for analysis or sharing","ETL to a database for BI tools (Power BI, Looker Studio, Tableau)"],"estimated_setup_minutes":20,"required_services":["Meta (Facebook) Graph API / Meta Ads account","Google Sheets (Google account) - Sheets API access","n8n instance","Optional: MySQL or Postgres (if replacing Google Sheets)","Optional: BI tools like Power BI, Looker Studio, Tableau"],"key_features":["Daily scheduled pull of previous day's Meta Ads insights","Captures metrics: impressions, spend, reach, conversions, CTR, CPC","Writes insights to Google Sheets (replaceable with a DB node)","Automates recurring data collection for reporting","Includes filtering and splitting nodes for data transformation"],"target_audience":["Marketing professionals","Digital advertisers","Data analysts / BI engineers"]}


name: Store Form Submission in Airtable
author_name: WeblineIndia
author_username: weblineindia
categories: []
created_at: 2025-01-10T15:22:18.979Z
updated_at: 2025-01-10T15:22:18.979Z
url: https://n8n.io/workflows/2716
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  This workflow, developed by our AI developers at WeblineIndia, is designed to automate the process of capturing form submissions and storing them in Airtable. By leveraging automation, it eliminates manual data entry, ensuring a smooth and efficient way to handle form data. The purpose of creating this workflow is to streamline data management, helping businesses save time, reduce errors, and maintain an organized, structured database for easy access and future use.

  Steps:

  Trigger on Form Submission (Form Node)**
  	What It Does: Activates the workflow whenever a form is submitted.
  	How to Set It Up: Use the Form Submission Trigger node to detect new form submissions. This ensures the workflow starts automatically when a user fills out the form.

  Store Data in Airtable (Airtable Node)**
  	What It Does: Transfers the form data into an Airtable base.
  	How to Set It Up: Use the Airtable Node to map form fields to corresponding columns in your Airtable table, storing the data accurately.

  Finalize and Activate**
  	What It Does: Completes the setup to automate data storage upon form submission.
  	How to Set It Up: Save and activate the workflow. Once active, it will automatically record all new form submissions in Airtable.

nodes_used:
  ["n8n-nodes-base.formTrigger","n8n-nodes-base.airtable","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE71X227cNhD9FYIokBfJ0G1XF6AoNk7cpGjsNHYCpMYioMiRxFoiNyS1zsbQvxfUbdeO7aYGkievOcMzZ4Zz0w3mDGf4r7P8xctkQYKVKv64+vIBO7gBQ3B2g7nQhggKr62eH0FE49j3ojgISO4ny0WYsgLIwk8CiPyUAKVJyJJFugwL8MNiySBZBjSJF5AXBDvYQLOpiYFjBUyfg2k3x7LZ1GCA4cyoFjoHC9IAzvCqNbIhBhg6kapB523ecK25FOgFMQSdG6lICYgLtOLKkLwGi09KjbPLm8GxE/q5+lzwRfX7q1fvYiHwDP5eg7Iw2MFUgbWyMjjDgRcsXC90/fjCDzNvmUXBUbJI/8YObjfsv9U6Z7TcnlNxkp5+fRe+/fP1bvt+b/ltm9dcV8AeMB34F16cBUEWJEdR6j9k+hu1bu1gIRkcuF9AsVwWvueSEHI3gth30ygN3ZClHuRsERQM9sTOBCpsoPUcaBvP3cbKRCLcHtzNiYYjq3eheFmCsvelsVbxce8NsqHtnww7eCM1NxYpu/QDz0m8tYOvIa+kvOozKkxZEuQRcyMWxG7kMXCJH+Sux0hhEyzP09DCEEUaMKC0zUm5sZD2Z+fgngo3NdwmgAfJCYea9Ze2pG7H2BT28E+SQ40zfGqdd/CmJhQqWTNQOMMvhQGFPspWoVGu4HPLFbAecMrUEepijFHb5IPhQ/xV+Sj8IP4OdGgIr++CT4cPwr8cFR4zMIERxhRo/SjbUeUuOabkhslrcZffR9miimzBFq+mivcPh36b1M7mhzx8nuF57W0YLM0HpxJ36+5+b9ZjLryA2ZAtNiW3nAEyFSABFLQmaoe4sJqkJ1OBAtyNSfxanNTyekAccv8DqL4SsuAomIvbj6MFXaaxm4aUuFEYR27CfHDTALwoJiwOw/R2q7nVsh4sK7LvY1NN2StjSY3t6qCkwmQsqdv1YbHs30+fVD350khmDbbKZkMfbJxh6/dg8Hu1qazb5uDF7A+bwhn+9eYG/fKPluJoVQLqOuwMpXUosQeDaMjLQ1mfyoNwyrJD8Zicg0I/Ckw/Mg5U9HS6MrPaYS7MmpfPHsjLZ2t7sXOwphU0ZN9IxyYwvpo2iosSO5hxvanJboqagkZuLamC1Lr/n7AzUe8ODoa8nQ9GgDFQoxUGBWlr84YYWs2alIjn8F4Du5CjYKrhnuCq/An8BiNPoTe1oR9McDLzpAjO3e9HR3E29BSat3L6h3O9Y+2JhMda/RlsZ1P/h+rawQ3ZbLgo3wx9j0HBBTwHOwuszNCKi/J46n2XdtbcWkLkBhQZ28yw0/XNUgEDYTip+4Y5dfcLeQViteH9em1DtB8VuPuuSeTP0SU0KIKYJa6XBoEbpZS6KUSeG/rLPGQQk4j5e/hzw+nVDp1K8/AM0r3OqHIwazzn20FzzZmpcBYHnoMr4GVlcBYsPTsmhAFhnrbEd3f83XsLyYJGURG4NFgmbuTniZvmaeIWEWEk8fMgCaJ7vfWf4G5wz2S9z2Hfu+XwRcU1upbqqqjlNSKD+5ySut4hSjamVaARs77P8wqZSsm2rBAZFnAiGNJ27mvEzWFojtDzHWo1F+Wkut/VkRn2caffdWYCIHRv0VTEINiC2iHDG5juc40KXtfAkGzNcLXnxjUavvxMvUMKqFQM2CEVdM1NJVuDGiJaUiMoCqnMEerd10YBaWouJlcbIkgJDQjjoIZcWQe4QUD0Dhk5+Np7LVVJBP8KA7mBiUDEArbUho71h/blrAoqWnuIFBSgQFA4uid51g4m1PAtzG1AgzFclP2LwhegrX3zMzVsu1vfYmyH+8M3SrgMw0VUuBFN7TdK6rkkKAo39MMUlstwEaU57lNAAJ0X2nu+prIb3BBus+vypv9Ue3w57HUdzAWDLzjzuvW667p/AeapcE+yDwAA

metadata_json:
  {"categories":["automation","integration","data management","forms"],"complexity":"simple","use_cases":["Lead capture from web forms","Contact form submissions","Event/registration sign-ups","Survey response collection","Centralized form data storage for reporting"],"estimated_setup_minutes":10,"required_services":["n8n (workflow platform)","Airtable (API / base)","Form provider or n8n Form trigger (e.g., hosted form, Typeform, Google Forms)"],"key_features":["Automatic trigger on form submission","Map form fields to Airtable columns","Create new Airtable records without manual entry","Quick save-and-activate workflow","Optional note/enrichment nodes (stickyNote, AI/ML)"],"target_audience":["Small business owners","Marketers","Sales teams / lead managers\",\"Operations/automation specialists\",\"Developers integrating form data"]}


name: AI agent for Instagram DM/inbox. Manychat + Open AI integration
author_name: Alex Hi no code
author_username: alex-nocode
categories: []
created_at: 2025-01-12T12:45:33.424Z
updated_at: 2025-01-12T12:45:33.424Z
url: https://n8n.io/workflows/2718
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  Automate Instagram DMs with OpenAI GPT and ManyChat

  How It Works:  
  Once connected, GPT will automatically initiate conversations with messages from new recipients in Intagram.

  Who Is This For?
  This workflow is ideal for
  marketers,
  business owners
  content creators

  who want to automatically respond to Instagram direct messages using OpenAI GPT. 

  By integrating ManyChat, you can manage conversations, nurture leads, and provide instant replies at scale.

  What This Workflow Does
  Captures** incoming Instagram DMs through ManyChat’s integration.  
  Processes** messages with GPT to generate a relevant response.  
  Delivers** instant replies back to Instagram users, creating efficient, AI-driven communication.  

  Setup
  Import the Template: Copy the n8n workflow into your workspace.  
  OpenAI Credentials: Add your OpenAI API key in n8n so GPT can generate responses.  
  ManyChat Account: Create (or log in to) your ManyChat account.  
  Connect Instagram: Link your Instagram profile as a channel in ManyChat.  
  ManyChat Custom Field: Create a custom field for storing user input or conversation context.  
  Configure Default Reply: In ManyChat, set up the default Instagram reply flow to point to your n8n webhook.  
  Add External Request: Create an external request step in ManyChat to send messages to n8n.  
  Test the Flow: Send yourself a DM on Instagram to confirm the workflow triggers and GPT responds correctly.  

  Instructions and links:

  Notion instruction

  Register in ManyChat

nodes_used:
  ["n8n-nodes-base.set","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.respondToWebhook","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","social media","AI/chatbots","messaging"],"complexity":"medium","use_cases":["Automated Instagram DM replies","Lead capture and nurturing via DMs","24/7 customer engagement","Pre-qualifying leads and routing conversations","Scaling personalized outreach"],"estimated_setup_minutes":30,"required_services":["n8n","ManyChat","Instagram (connected through ManyChat)","OpenAI (API key)","Webhook/HTTP endpoint"],"key_features":["Captures incoming Instagram DMs via ManyChat","Processes messages with OpenAI GPT for contextual replies","Sends instant replies back to Instagram users","Uses ManyChat custom fields to store context and state","Includes memory buffer and conversation handling nodes to maintain context over multiple messages (memoryBufferWindow, agent)"],"target_audience":["Marketers","Business owners","Content creators」「Social media managers"]}


name: Retry on fail except for known error
author_name: Mario
author_username: octionic
categories: []
created_at: 2025-01-12T13:17:18.184Z
updated_at: 2025-01-12T13:17:18.184Z
url: https://n8n.io/workflows/2719
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Purpose

  This workflow snippet allows for advanced error catching during retry attempts.

  There are cases, where you want to check if an item exists first, so you can determine the following actions. Some API’s do not support an endpoint (e.g. Todoist: completed tasks) to do so, which is why you would work with the error branch, only that this does not work well in combination with the retry functionality.

  How it works

  Instead of the builtin retry function of a Node a custom loop is used, to get more granular control in between the iterations
  If the main executed node fails, the error can be filtered for an expected error, which can trigger a separate action
  The retries only happen, if an unexpected error happened
  The workflow only stops, if the defined amount of retries exceeded

  Setup

  Copy the nodes into your existing workflow
  Replace the “Replace me” placeholder with the Node you want to apply the retry logic on
  Follow the sticky notes for more instructions and optional settings

nodes_used:
  ["n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.wait","n8n-nodes-base.if","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.manualTrigger","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.stickyNote"]

workflow_json_compressed:
  H4sIAAAAAAAAE81YbW/byBH+KwSvwLUox9g37ouBfkjTO/RwyAVtrlegST7M7s5abCRSR1JOUp/+e7GUbMk2pcRGP/RTRO9kZp5nXnZnbsomlpflry/+8y/68LfNiz9v/mo3i66syhWNWF7elE07jNgG+iHLJW99ECR5nUxiMjjDFfOSIapaoTA+GGslcscYS8gjatK+NtynWmPUsdxWZYsrKi/Lv9PYfy66tkjYLAv6FGg9Fqnriw9t97EtqO+7vviZVusljlRW5YhXQ3n59n1Vtl2k/PNm53tCnbzSAmzgHlRAD+iSBms0aaOtNVaXD8wum1UzFj1hWFDMyj+v82FrW5i0g8eBLoaxW79o43fZlbIq193QjE3XlpdvwSlW1Yy9r8o19riikfohszW5/YqGAa9OWdvuzP1C/TAp49tqj8RpYbiuI3BbK1CoEnirGBjBk43GOG/dAckbGouxb2g47T+NM24L/djtbp0l8s9tVeIwNFftitpxOrv3eUt6iE6iSRpUYBoUWQQbWQSyXISagvKhPrj60M3NylNm9BqXm/yHP93cFL/799C1F5Nk8dtvBSu223L7fluVTRuWm0ivxwX13ze0jEN5OfYbesijvFB3TCqtKUWuQTkhQJHm4IPlEC1Z5NESan5w7x/riCM9mUw9nwJP5jImGZwXDjBh5pJZsNpGqL0hK5ggSvhELn//7V12fPuHi2ak1cURvX8s+J7dcxyiscZonoChi6CsVOBQ14BB+vzDC0kHt/6JzXiSu4+7w2PyhL1l7yP5Rdd9mPqLi9LX2abCFEEZG8AmTaCZVjyqxCPz5QPCH9XTxaGiUlI6UC1Bu4CgkrVgQ3AguLeRU13X5ojalziGxXH/OQmoSQ/g1IxV0n4hGULXxub2++iovL71XVTlktL4yz6WZVUGHOgNtdnSNe0Sf48Xl03Enf1yGPsmjOVkY+WbFseuzyFsc3M7NnubcxqlcZ5pYJ7lVkMKnE8OpFM+KmaU8qasym5N/U7XzS0T2VR7dXe2sx+6dsSmHbIHxwAOhb3r59ttWZV9c7W4kwjdZhmLthsLT0XqNm2cy0txIe5iysgFYQWCrwUHVSsHFmMNzljpVdRceXnc79dLDFS8opPBbLvX64yn3TX6HZqm3dD0/XozrjcPs9eI2T56urVLL7y20oGuvQPlGYElzkAwzhhXKdh43No3IdBwuhftPX6YgFw9wSMbnRGGK7AxeFAYNVhfJ0j5Oq+TFE6lg0c/TkXx3dmimPEqV/mTeCJnQwwKwUhUoHjk4FNNIFD6kHwSEo+8ejM24cPn4qduPB3dYZLZi9xjTLNKzJTsxyaOi/JSCFaVC8q5Wl4KxaY6Gqkdy8vym2+K3F9Tsxypf9d+P/1b+M/FMOK4GYrQRSq6fv+IWe2eAxdnbn6qvdEhSoiOIaioPKCuHaTElahrGzyGWdj86biNZdVXwpbiIezbcvqpi/Suvf0aF82Q4Y+L3UnxcdGERdFTvm+uaZgOMK6anmIRccSLd+13Lfol7SnyPbZhUTTt7r+/oXFs2quhwDYWoWtbCuOko5uKcSiWzQfK0pNh+oSr9ZLO0GsCKuZIg0mYQNmpWwgC9N6jTIxzms8q8XR6eWZQia/Mq0cE57xa4afd3f2ufbnA9oqKJhUtUaRYFZESbpZj0QyFPAMZueTakoegIgelYwRbGw8Oa+KSImf1UcN5he0Gl8XPfXN1RacrfDWJHaTu4eb6ibWuVODGMQtOxwTKcA/OpAAukAoSg5fez0ZFPj0qUrFKzTzWvr7Y8wPnLh5xs7v6TgSmHs5EJqJRXCYGxmkBKiQOjmEErm1IQUYVWJyFrZ7X42ZqPXTLfNGZah4/u4f/5f42LBbUU5UR50rs6dcNDWMx5KsqE3Cuu7k6KK8RRNASlOMaUEgHjistjbBCC5xFXD8v0GIm0P9DyHlgPYvXRptMTAxkTRKUdwqcRgk6qtpJI0VkNItXP6PdMDbfbr4A+H7jeTN26wNYXC53/adY4DV9BV4nvaSaQ5IsgSKRwJHTQDwFnWyMDOUsXvNMvM8I8H28f6HUtFSEbtPmmzuvHXZz1WmQIXLP0XuIPkpQTEiwqD0oF1RKdc0Z2gPIH9Kewfwa/voxYmqiXxwq/4/mCM9tMlYhKGnzMoAioCMOgWoUHCOTmubniLvB9XiOWI6nJ4gdn48mCPmFcSGEQEYqD8EInV/eCC5KA8ZHHZNjZBWbTU77nLufVerxI/xpubnfRnxNbr6vSgy7gCZcDlSVw/7lNO2iPlHYZNde95FyGK951rFPkmnexqg5I0LAKAwolB681gIoEiqTlzgp7SKfn2C3aTbN+pc35QqbDPvtzbSSO7lImcTyHifSp/KSbd/nrc5hezWnaG5qm1VzJDin59Eg9UhJdRA+M/7P2r6Hds76iSYwq+y+7CyWx/u+c2jOLjpnXXjwCHyuD1nVYyrntM0Olecw3V8yzVjebv8Lx7sxJdEWAAA=

metadata_json:
  {"categories":["automation","error-handling","integration","workflow-management"],"complexity":"medium","use_cases":["Apply custom retry logic around a node","Skip retries for known/expected errors and trigger alternate actions","Handle APIs that lack existence-check endpoints by using error branches","Stop workflow after a configured number of retries","Add granular checks or delays between retry attempts"],"estimated_setup_minutes":10,"required_services":["n8n (no external services required; the node being retried may call external APIs as needed)"],"key_features":["Custom retry loop instead of built-in node retry","Filter errors to distinguish expected vs unexpected failures","Trigger separate actions for known errors","Retry only on unexpected errors and stop after retry limit","Easy to drop into existing workflows (replace placeholder node)"],"target_audience":["n8n users","Developers/automation engineers","Integration specialists who work with APIs lacking certain endpoints"]}


name: Email Summary Agent
author_name: Vishal Kumar
author_username: vishalquantana
categories: []
created_at: 2025-01-13T17:24:39.260Z
updated_at: 2025-01-13T17:24:39.260Z
url: https://n8n.io/workflows/2722
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Problem
  Teams often struggle with email overload, leading to missed actions and inefficient meeting preparation.

  Solution
  This workflow automates email management using n8n and AI. It fetches emails, summarizes key points and actions, and sends two concise updates—one in the morning and one at night.

  How It Works

  Triggers at 7 AM and 9 PM: Automates the process to summarize emails received during specific time blocks.

  Fetches Emails: Retrieves emails from the last 24 hours or after a specific time.

  Summarizes with AI: Uses OpenAI to process the email content into actionable summaries.
  Sends Team Updates: Compiles the summaries into a concise, formatted email and sends it to the team.

  Expected Results
  Significant reduction in missed actions and follow-ups. 

  Customizations
  Adjust timings, filters, and recipients to suit your team’s needs.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.gmail","n8n-nodes-base.aggregate","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.gmail","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4552 characters]

metadata_json:
  {"categories":["automation","productivity","email management","AI summarization","team communication"],"complexity":"medium","use_cases":["Automated email digests","Action extraction and follow-up tracking","Meeting preparation with concise summaries","Reducing missed tasks and inbox noise","Team status/updates via scheduled summaries"],"estimated_setup_minutes":20,"required_services":["Email provider (Gmail, Office365, IMAP)","OpenAI or compatible LLM API","SMTP or transactional email service (for sending digests)","n8n instance"],"key_features":["Scheduled triggers (morning and evening)","Fetch and filter emails by time window","AI-powered summarization and action extraction","Aggregate summaries into formatted team updates","Customizable timings, filters, and recipients"],"target_audience":["Team leads and managers","Operations and support teams","Sales and account managers focused on follow-ups"]}


name: Display ServiceNow Incident Details in Slack using Slash Commands
author_name: Angel Menendez
author_username: djangelic
categories: []
created_at: 2025-01-14T20:55:38.962Z
updated_at: 2025-01-14T20:55:38.962Z
url: https://n8n.io/workflows/2727
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who is this for?
  This workflow is designed for teams using Slack for communication and ServiceNow for incident management. It simplifies incident lookup by enabling team members to fetch incident details directly within Slack via a Slash Command.

  What problem is this workflow solving?
  Manually switching between Slack and ServiceNow to retrieve incident details can be time-consuming and disrupt workflow efficiency. This workflow bridges the two platforms, providing instant access to critical incident information in Slack, saving time, and improving response efficiency.

  What this workflow does?
  The workflow listens for a Slash Command in Slack that includes an incident ID, extracts the ID from the incoming payload, queries ServiceNow for the corresponding incident details, and sends a formatted response back to Slack. Depending on the query result, it can:
  Display incident details (e.g., ID, description, severity, and priority).
  Notify the user if no matching incident is found.
  Alert the user if there’s an issue connecting to ServiceNow.

  Setup
  Slack Setup:
     Create a Slash Command in Slack with the appropriate endpoint URL.
     Configure the command to send a POST request to the webhook endpoint of this workflow.
     For details on how to setup the Slack app using Slash commands and n8n, check out this video. 

  ServiceNow Setup:
     Create or use an existing account with the necessary permissions to access incident data.
     Configure the ServiceNow node with your ServiceNow credentials.

  n8n Workflow Activation:
     Deploy and activate the workflow in your n8n instance.
     Ensure all nodes are properly configured and connected.

  How to customize this workflow to your needs
  Modify Incident Query Parameters:** Adjust the query logic in the Search For Incident in ServiceNow node to include additional filters or data points based on your organization’s needs.
  Slack Response Customization:** Customize the Slack response template to display additional incident details or to match your team’s tone and style.
  Error Handling:** Enhance the error handling nodes to include more detailed logs or send alerts to a dedicated Slack channel.

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.set","n8n-nodes-base.serviceNow","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.switch"]

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

metadata_json:
  {"categories":["integration","automation","incident management","communication"],"complexity":"medium","use_cases":["Lookup ServiceNow incident details from Slack","Speed incident response and troubleshooting","Share incident context in-team without switching apps","Notify users when incidents are not found or when ServiceNow is unreachable"],"estimated_setup_minutes":20,"required_services":["Slack (Slash Command)","ServiceNow (API/instance)","n8n instance/webhook endpoint"],"key_features":["Slack Slash Command listener","Extracts incident ID from incoming payload","Queries ServiceNow for incident details","Sends formatted response back to Slack","Handles no-match and connection errors gracefully (notifications)"],"target_audience":["IT support teams","Incident response / SRE teams","DevOps engineers / on-call responders who use Slack and ServiceNow (ITSM admins)"]}


name: List recent ServiceNow Incidents in Slack Using Pop Up Modal
author_name: Angel Menendez
author_username: djangelic
categories: []
created_at: 2025-01-15T04:47:19.413Z
updated_at: 2025-01-15T04:47:19.413Z
url: https://n8n.io/workflows/2728
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who is this for?  
  This workflow is designed for IT teams, service desk personnel, and incident management professionals who need a streamlined way to monitor and report on recent ServiceNow incidents directly within Slack.  

  What problem is this workflow solving? / Use Case  
  Manually monitoring incidents in ServiceNow can be time-consuming, and keeping teams updated about new or specific incidents often involves additional manual effort. This workflow automates the process of querying recent incidents from ServiceNow based on user-defined parameters and delivering formatted results directly to Slack. It ensures faster response times and improved incident visibility.  

  What this workflow does  
  This workflow integrates Slack and ServiceNow to provide an automated system for retrieving and presenting incident details.  
  Slack User Interaction: Users initiate the workflow via a Slack modal form, selecting incident parameters like priority and state.  
  ServiceNow Query: The workflow queries ServiceNow for incidents matching the selected criteria.  
  Results Delivery: Incident results are sent back to Slack as a message formatted using Block Kit. If no results are found, the workflow notifies the user with a detailed message, either in a Slack channel or via direct message.  
  Error Handling: If no channel is selected or any issues arise, the workflow ensures graceful fallback with appropriate notifications.  

  Setup Instructions  
  Slack Setup:  
     Integrate Slack with n8n using a Slack app.  
     Configure the modal form to accept parameters like priority and state.  
     Check out this video for setting up a modal slack app on YouTube. 
  ServiceNow Integration:  
     Use ServiceNow credentials to connect with n8n.  
     Ensure appropriate permissions for querying incidents.  
  n8n Workflow Configuration:  
     Import this workflow into n8n.  
     Verify all node configurations, particularly those for ServiceNow API queries and Slack outputs.  
     Set up webhook URLs for Slack event handling.  
  Testing:  
     Trigger the workflow from Slack to test modal inputs and incident queries.  
     Confirm the output is correctly formatted and delivered to the intended Slack channel or user.  

  How to Customize this Workflow to Your Needs  
  Modify the ServiceNow query logic to include additional filters or fields.  
  Adjust the Slack Block Kit formatting to match your organization’s preferred notification style.  
  Use conditional logic to add more advanced handling for specific priorities or states.  
  Expand the workflow to include escalation steps, such as notifying a specific team or creating follow-up tasks.  

  Workflow Highlights  
  Slack Modal Form**: Allows users to specify search criteria for incidents interactively.  
  Dynamic Results Delivery**: Automatically sends results to a Slack channel or direct message based on user input.  
  Error Handling**: Provides fallback notifications when no incidents are found or user inputs are incomplete.  
  Customizable Integration**: Easily adaptable to fit different organizational needs, including advanced filtering and formatting options.

nodes_used:
  ["n8n-nodes-base.set","n8n-nodes-base.respondToWebhook","n8n-nodes-base.switch","n8n-nodes-base.httpRequest","n8n-nodes-base.webhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.serviceNow","n8n-nodes-base.slack","n8n-nodes-base.slack","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.sort","n8n-nodes-base.limit","n8n-nodes-base.splitInBatches","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.summarize","n8n-nodes-base.slack","n8n-nodes-base.slack","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.stickyNote","n8n-nodes-base.respondToWebhook"]

workflow_json_compressed:
  [encoded data, 8732 characters]

metadata_json:
  {"categories":["integration","automation","incident management","notifications","ITSM"],"complexity":"medium","use_cases":["Ad-hoc querying of recent ServiceNow incidents from Slack","Delivering formatted incident search results to a channel or user","Improving incident visibility and response time for IT teams","Creating Slack-driven incident triage or escalation workflows"],"estimated_setup_minutes":45,"required_services":["Slack (Slack App with modal & necessary scopes)","ServiceNow (API access/credentials)","n8n (self-hosted or cloud)","Publicly accessible webhook endpoint (or n8n cloud webhook)"],"key_features":["Slack modal for user-defined search parameters (priority, state)","ServiceNow API query with dynamic filters","Block Kit formatted Slack messages for results","Sends results to channel or direct message with fallback handling","Graceful error handling when no results or missing inputs (notifications)"],"target_audience":["IT teams and service desk personnel","Incident management professionals","SREs / DevOps on-call engineers who use Slack for communication and triage"]}


name: 🔐🦙🤖 Private & Local Ollama Self-Hosted AI Assistant
author_name: Joseph LePage
author_username: joe
categories: []
created_at: 2025-01-15T05:39:06.856Z
updated_at: 2025-01-15T05:39:06.856Z
url: https://n8n.io/workflows/2729
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 21:18:31
description:
  Transform your local N8N instance into a powerful chat interface using any local & private Ollama model, with zero cloud dependencies ☁️. This workflow creates a structured chat experience that processes messages locally through a language model chain and returns formatted responses 💬.

  How it works 🔄
  💭 Chat messages trigger the workflow
  🧠 Messages are processed through Llama 3.2 via Ollama (or any other Ollama compatible model)
  📊 Responses are formatted as structured JSON
  ⚡ Error handling ensures robust operation

  Set up steps 🛠️
  📥 Install N8N and Ollama
  ⚙️ Download Ollama 3.2 model (or other model)
  🔑 Configure Ollama API credentials
  ✨ Import and activate workflow

  This template provides a foundation for building AI-powered chat applications while maintaining full control over your data and infrastructure 🚀.

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.chainLlm","@n8n/n8n-nodes-langchain.lmOllama","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.set","n8n-nodes-base.stickyNote","n8n-nodes-base.set"]

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

metadata_json:
  {"categories":["automation","AI/ML","self-hosted","chatbot"],"complexity":"medium","use_cases":["Private AI chat assistant","On‑premise customer support bot","Secure knowledge-base QA","Prototyping LLM workflows locally","Data‑private conversational apps"],"estimated_setup_minutes":45,"required_services":["n8n instance (local)","Ollama local runtime/API","Ollama model (e.g., Llama 3.2) downloaded locally","Host/server with sufficient CPU/RAM and disk"],"key_features":["Fully local, zero‑cloud LLM inference","Processes chat messages through an Ollama model chain","Returns structured JSON responses","Built‑in error handling and workflow stability","Easily swap models (any Ollama‑compatible) and customize prompts"],"target_audience":["Developers integrating local LLMs","Sysadmins deploying self‑hosted AI","Privacy‑focused teams and organizations"]}


name: Get Daily Weather and Save It in Airtable
author_name: WeblineIndia
author_username: weblineindia
categories: []
created_at: 2025-01-15T08:26:21.852Z
updated_at: 2025-01-15T08:26:21.852Z
url: https://n8n.io/workflows/2730
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  This smart automation workflow created by the AI development team at WeblineIndia, helps with the daily collection and storage of weather data. Using the OpenWeatherMap API and Airtable, this solution gathers vital weather details such as temperature, humidity, and wind speed. The automation ensures daily updates, creating a dependable historical record of weather patterns for future reference and analysis.

  Steps:

  Set Schedule Trigger
  Configure a Cron node to trigger the workflow daily, for example, at 7 AM.

  Fetch Weather Data (HTTP Request)

  Use the HTTP Request node to retrieve weather data from the OpenWeatherMap API.
  Include your API key and query parameters (e.g., q=London, unit=metric) to specify the city and desired units.

  Parse Weather Data

  Utilize a JSON Parse node to extract key weather details, such as temperature, humidity, and wind speed, from the API response.

  Store Data in Airtable

  Use the Airtable node to insert the parsed data into the designated Airtable table. Ensure proper mapping of fields like temperature, humidity, and wind speed.

  Save and Execute

  Save the workflow and activate it to ensure weather data is fetched and stored automatically every day.

  Outcome
  This robust solution, developed by WeblineIndia, reliably collects and archives daily weather data, providing businesses and individuals with an accessible record of weather trends for analysis and decision-making.

  About WeblineIndia
  We specialize in creating custom automation solutions and innovative software workflows to help businesses streamline operations and achieve efficiency. This weather data fetcher is just one example of our expertise in delivering value through technology.

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

workflow_json_compressed:
  H4sIAAAAAAAAE7VXbW/bNhD+KwQx7JPk6P0NKIYkW5v0LWnjtNvSYKDIk81VIhWScuoE/u8DJdmxk3Rrg/WTLfL43D13x7vjLeYMF/j0qA1nr+Tyj+rsxpTTA+zgBgzBxS3mQhsiKBxbOT+CiKap70VpEJDSz5I4zFkFJPazACI/J0BpFrIszpOwAj+sEgZZEtAsjaGsCHawgaatiYFDBUyfgenaQ9m0NRhguDCqg5WDBWkAF3i/M7IhBhj6lfB6iT4CMXNQ6FdiCHoOhtoPIhg6M1KRGVh0MtO4uLgdaHVnVDzP3968D09fHy8X53gDfdqVNddzYNjBVIFVsm9wgQMviF0vdAN/6qVFEBRBNoly/0/s4K5l/y22unSwkAy2jMhSv2J5xVwGUeRGNK9cAlXkejQNfRonWVz5d4ad0TmwrgY0VXw2A2U5LVu7IzLh9tBuSTRM9Ch4J9dKzQ2XAhcXkef4nnfp4JYo0oABpW0sVVfDEFMDakHq3kgzAOybI9kpXPje6nK1GrR+AKV7QH8SrJyRj1emgU8D4iah57sR8TI3T7zAzXMvzjPmVSkJt/gYqWAncl9lRLgypKxtGIU01oXj6evxNLNx5wL1Up/EPcrZ45wttP396y9VDwnm4EYyq7/m2mAHL0jd2U/Stq/Msq3etObg+NWZaW1uEOvm96C72pxbAHxv8e1AcyTY87PO63l8k1ZT1lUZ6pdZBO/O6z9esu/QulZHZd01oqc7wt7iKTQtLvCz21v0099aiklDuJjY24dWK+zgo67hjJvlQ5n5uDPIvZaUDC7ekrPBHbanvIEbKWBn24yLg8hHbq9oC/aCbwldc8Em2i5bsZWDbUY35O7ibDRvEkYbxcUMO5hx3dZkufasgkYuLHxFat1/E3Yi6uXWwlXH1ZbECDD6cUsTg4p0tXlDDJ1vpCkRB3CugU3luDEUqtHQjQ/uMrtryv5O/s+Gbml6kqE2J368kYOWpxi4lSo/3MwdXU8xdnODfripW5q+x9BLBzekbbmYvRlKD4OKCziAWl7bDm9FuZgdrqvHxeXKwbK1N8HWkv4D1Pr2D22yLzcKGAjDSd2XnHXdnsrPIPZb3ncYNhStsQtg21H6on4snlvto2N2mkww8e+aTByQKKW+y/wkdaMwoG4eVoHr+ynxqR/kNN5qmi/AfFuLmRvTvoerDvoSvO4y/SjBxQyZ+W6z2e0wQfJ4h+n6Cm2hdbG3R1o+kS2IEach7USq2Z6F2wsm8d64/ktNzLMgnHhenP9cS/EsDSZxHKX4XgQ0CPauA7XJJdKZuXX+pirPQIDi9HATlKml7qzX9zsznw7OsCb2WHYNO/jK/j/d4bLN7OJ27d9OcKO3elYDRnGKh0HhXjZYJQdED4o3qXAjr/9UB37+1pwso/pLexe7kxbEGLv9U27Ta9fMNcLJh9+Pzv8mVzfnX347PPrtxaMIb0iL+qOoPzuCHQFhoHbQZvXLMCTJi7i+mjf+4cetgWUuW14t0QtF2vm718j69ZvSN9qakeIgrkLIA5cmgedGaRW4ZZ6CG4e0zDOWhJGXbM9InH5eorfSwNfHvV5mFNlKSs95mJBU1lLhInHwNWeWdJJ5Dp4Dn80NLsLAsxODMCDME4bsT+KTwA/mww1zWlUZK0vPDZMwd6OYJC7xEubmpEzCMmAVhexR5v4TqIfR95L3d8lP51yja6k+V7W8RlXPVu/Om6z3SqfX9eFetu2fHvfe0XZS1TsVhItKqqa/pnZq3R/L5ARN5zBgU2J3aN0xQLRTCoRBdkKzRbdT4KD1KOYgOy2hflpyen2yV6GghgUR5s5kMITX2urgGpEhttYAELobDCTmQZ1DXKPxeYNgYa8PI8s7WgxVUqGqszYhBRUoEBQc1Cq54Mw6hggERC9dI11CKWiN5twe5ZTUSAGViiFZ7ehtiTGghJ48kkyXDibU8AVsOpwGY7iY9RGGL0A7S+pEMVC4wAvfYiyG8/07FaosjSIvdCM/y92ozAOX5EnoEi+oaJzFtExtpaVSCKDravuwjRS32E7EuLiwtXDoof/2oOmFHcwFgy+48FaXtqE+eNE9hvr1DvYI5mr1D8wbx2K3DwAA

metadata_json:
  {"categories":["automation","integration","data collection","monitoring"],"complexity":"simple","use_cases":["Daily weather logging and archiving","Building historical weather datasets for analysis","Supporting agriculture or outdoor operations planning","Feeding dashboards or BI tools with daily weather metrics","Triggering downstream automations based on weather trends"],"estimated_setup_minutes":15,"required_services":["OpenWeatherMap API (API key)","Airtable account and base/table","n8n instance with internet access"],"key_features":["Scheduled daily trigger (cron)","Fetch current weather via HTTP Request to OpenWeatherMap","Parse JSON response to extract temperature, humidity, wind speed","Insert/append structured records into Airtable","Configurable city and units (e.g., metric/imperial) for queries"],"target_audience":["Developers/automation engineers","Data analysts","Small businesses and operations teams (agriculture, energy, logistics)"]}


name: Daily Birthday Reminders from Google Contacts to Slack
author_name: WeblineIndia
author_username: weblineindia
categories: []
created_at: 2025-01-15T08:32:01.026Z
updated_at: 2025-01-15T08:32:01.026Z
url: https://n8n.io/workflows/2731
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Ensure you never miss a birthday with this automated workflow designed by WeblineIndia. It retrieves your Google Contacts, identifies birthdays happening today, and sends personalized reminders directly to a designated Slack channel. This daily automation keeps your team informed and makes birthday celebrations effortless.

  Steps

  Set Daily Schedule (Cron Node)
  Configure a Cron node to trigger the workflow daily at a specific time (e.g., 8 AM).
  This ensures the workflow runs consistently every day to check for birthdays.

  Retrieve Contacts (Google Contacts - Get Contact Node)
  Use the Google Contacts (Get Contact) node to fetch your contact list.
  Ensure your contacts have birthday details stored for accurate filtering.

  Filter Birthdays (IF Node)
  Add an IF Node to compare the current date with each contact’s birthday.
  Only contacts whose birthdays match today’s date will move to the next step.

  Send Birthday Notifications to Slack (Slack - Send Message Node)
  Use the Slack node to send a personalized birthday message to your chosen Slack channel (e.g., #general or #birthdays).
  Customize the message to include the contact’s name, e.g., "🎉 Today is John Doe's birthday! Let’s celebrate!"
  Configure the node to target a specific Slack channel for seamless notifications.

  Activate Workflow
  Save and activate the workflow.

  From now on, the workflow will automatically check for birthdays daily and send timely reminders to your Slack team.

  Outcome
  This hassle-free automation keeps your team engaged and ensures no birthday goes unnoticed. Celebrate special days of your contacts effortlessly and maintain meaningful connections.

  About WeblineIndia
  This workflow showcases our commitment to delivering innovative automation solutions that enhance productivity and foster better relationships. Let us help you build the AI automation tools that make a difference.

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.googleContacts","n8n-nodes-base.if","n8n-nodes-base.slack","n8n-nodes-base.filter","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","notifications","scheduling"],"complexity":"simple","use_cases":["Daily birthday reminders to team channels","Keeping team engagement and morale","Automating personal milestone notifications","Centralizing contact birthday tracking"],"estimated_setup_minutes":10,"required_services":["Google Contacts (Google account with contacts)","Slack workspace and bot/token","n8n instance"],"key_features":["Daily scheduled trigger (Cron)","Fetch contacts from Google Contacts","Filter contacts whose birthday is today","Send personalized Slack messages to a chosen channel","Configurable message and channel"],"target_audience":["HR teams","Team leaders and managers","Office administrators and operations staff」「Small business owners and team coordinators」「n8n users/automation builders"]}


name: CSV to JSON Converter with Error Handling and Slack Notifications
author_name: n8n Team
author_username: n8n-team
categories: []
created_at: 2025-01-15T11:45:23.218Z
updated_at: 2025-01-15T11:45:23.218Z
url: https://n8n.io/workflows/2732
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who this template is for
  This template is for developers or teams who need to convert CSV data into JSON format through an API endpoint, with support for both file uploads and raw CSV text input.

  Use case
  Converting CSV files or raw CSV text data into JSON format via a webhook endpoint, with error handling and notifications. This is particularly useful when you need to transform CSV data into JSON as part of a larger automation or integration process.

  How this workflow works

  Receives POST requests through a webhook endpoint at 
  /tool/csv-to-json
  Uses a Switch node to handle different input types:
      File uploads (binary data)
      Plain text CSV data
      JSON format data
  Processes the CSV data:
      For files: Uses the Extract From File node
      For raw text: Converts the text to CSV using a custom Code node that handles both comma and semicolon delimiters
  Aggregates the processed data and returns:
      Success response (200): Converted JSON data
      Error response (500): Error message with details
  In case of errors, sends notifications to a Slack error channel with execution details and a link to debug

  Set up steps

  Configure the webhook endpoint by deploying the workflow
  Set up Slack integration for error notifications:
      Update the Slack channel ID (currently set to "C0832GBAEN4")
      Configure OAuth2 authentication for Slack
  Test the endpoint using either:
      CURL for file uploads:
          
                  bash
          Copy
          curl -X POST "https://yoururl.com/webhook-test/tool/csv-to-json" \
               -H "Content-Type: text/csv" \
               --data-binary @path/to/your/file.csv
          
                  
      Or send raw CSV data as text/plain content type

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.extractFromFile","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.switch","n8n-nodes-base.slack","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.webhook","n8n-nodes-base.aggregate","n8n-nodes-base.aggregate","n8n-nodes-base.respondToWebhook"]

workflow_json_compressed:
  [encoded data, 4220 characters]

metadata_json:
  {"categories":["data processing","integration","automation","webhook"],"complexity":"medium","use_cases":["Convert uploaded CSV files to JSON via an API endpoint","Convert raw CSV text to JSON via webhook","Ingest CSV data into larger automations or integrations","Notify teams on processing errors with execution details and debug link"],"estimated_setup_minutes":15,"required_services":["n8n webhook endpoint (self-hosted or n8n cloud)","Slack (OAuth2) for error notifications"],"key_features":["HTTP webhook endpoint (/tool/csv-to-json) for POST requests","Supports file uploads (binary) and raw CSV text input","Extract From File node for uploaded files","Custom Code node to parse CSV text with comma or semicolon delimiters","Switch node to route by input type and aggregation of results into JSON response (200 on success, 500 on error)"],"target_audience":["developers","integration engineers","automation teams/devops engineers"]}


name: Line Message API : Push Message & Reply
author_name: darrell_tw
author_username: darrelltw
categories: []
created_at: 2025-01-15T17:08:04.179Z
updated_at: 2025-01-15T17:08:04.179Z
url: https://n8n.io/workflows/2733
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  Workflow Description
  This workflow demonstrates how to use the LINE Messaging API to handle two scenarios:
  Replying to a user's message using a reply token.
  Sending a push message to a specific LINE user using their user ID.

  Key Features
  Webhook Integration: Receives and processes incoming messages from LINE using a webhook.
  Conditional Logic: Checks if the received event type is a message and handles it accordingly.
  Reply Message: Automatically responds to the user's message using the LINE reply token.
  Push Message: Sends a test message to a specific LINE user using their unique user ID.

  Pre-Configuration
  To simplify the setup process, create a Header Auth credential in n8n:
  Name**: Authorization
  Value**: Bearer {line token}  
  This will authenticate all API requests to the LINE Messaging API.
  Node Configurations

  1.1. Webhook from LINE Message
  Purpose**: Captures incoming events from the LINE Messaging API.
  Configuration**:
    HTTP Method: POST
    Path: {n8n-webhook-page}

  1.2. If Condition
  Purpose**: Checks if the received event type is message.
  Configuration**:
    Condition:
      {{ $json.body.events[0].type }} equals "message"

  1.3. Line: Reply with Token
  Purpose**: Replies to the user's message using the LINE reply token.
  Configuration**:
    Method: POST
    URL: https://api.line.me/v2/bot/message/reply
    JSON Body:
          {
        "replyToken": "{{ $('Webhook from Line Message').item.json.body.events[0].replyToken }}",
        "messages": [
          {
            "type": "text",
            "text": "收到您的訊息 : {{ $('Webhook from Line Message').item.json.body.events[0].message.text }}"
          }
        ]
      }
  2.1. Manual Trigger: Test Workflow
  Purpose**: Triggers the workflow for testing the push message functionality.
  Configuration**: No additional setup required.

  2.2. Edit Fields
  Purpose**: Prepares the unique LINE user ID for the push message.
  Configuration**:
    Field:
      line_uid: Uxxxxxxxxxxxx

  2.3. Line: Push Message
  Purpose**: Sends a test message to a specific LINE user.
  Configuration**:
    Method: POST
    URL: https://api.line.me/v2/bot/message/push
    JSON Body:
          {
        "to": "{{ $json.line_uid }}",
        "messages": [
          {
            "type": "text",
            "text": "推播測試"
          }
        ]
      }
  工作流程描述
  此工作流程展示如何使用 LINE Messaging API 處理兩種情境：
  使用 reply token 回應使用者的訊息。
  使用使用者的 user ID 發送 推播訊息。

  主要功能
  Webhook 整合：透過 Webhook 接收並處理來自 LINE 的訊息。
  條件邏輯：檢查接收到的事件類型是否為訊息並進行處理。
  回應訊息：使用 LINE 的 reply token 自動回覆使用者的訊息。
  推播訊息：使用 LINE User ID 向指定用戶發送測試訊息。

  預先設定
  為簡化設定流程，請在 n8n 中建立 Header Auth 憑證：
  名稱**：Authorization
  值**：Bearer {line token}  
  此設定將用於認證所有 LINE Messaging API 的請求。
  節點設定

  1.1. Webhook from LINE Message
  用途**：接收來自 LINE Messaging API 的事件。
  設定**：
    HTTP 方法：POST
    路徑：{n8n-webhook-page}

  1.2. If 條件判斷
  用途**：檢查接收到的事件類型是否為 message。
  設定**：
    條件：
      {{ $json.body.events[0].type }} 等於 "message"

  1.3. Line: Reply with Token
  用途**：使用 LINE reply token 回應使用者訊息。
  設定**：
    方法：POST
    URL：https://api.line.me/v2/bot/message/reply
    JSON 主體：
          {
        "replyToken": "{{ $('Webhook from Line Message').item.json.body.events[0].replyToken }}",
        "messages": [
          {
            "type": "text",
            "text": "收到您的訊息 : {{ $('Webhook from Line Message').item.json.body.events[0].message.text }}"
          }
        ]
      }
  2.1. 手動觸發：測試工作流程
  用途**：測試推播訊息功能。
  設定**：無需額外設定。

  2.2. Edit Fields
  用途**：準備推播訊息所需的 LINE 使用者 ID。
  設定**：
    欄位：
      line_uid：Uxxxxxxxxxxxx

  2.3. Line: 推播訊息
  用途**：向特定 LINE 使用者發送測試訊息。
  設定**：
    方法：POST
    URL：https://api.line.me/v2/bot/message/push
    JSON 主體：
          {
        "to": "{{ $json.line_uid }}",
        "messages": [
          {
            "type": "text",
            "text": "推播測試"
          }
        ]
      }
      
  完成示意圖 (Storyboard Example):

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.httpRequest"]

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

metadata_json:
  {"categories":["integration","messaging","automation","webhook"],"complexity":"simple","use_cases":["Auto-reply to incoming LINE messages","Send push notifications to a specific LINE user","Test LINE Messaging API integration","Process webhook events from LINE"],"estimated_setup_minutes":15,"required_services":["n8n (instance with public webhook endpoint)","LINE Messaging API (channel with Channel Access Token and webhook enabled)","Header Auth credential in n8n (Authorization: Bearer {line token})","Optional: ngrok or similar if testing from local n8n"],"key_features":["Receives LINE webhook events via HTTP webhook node","Checks event type with If-condition node","Replies to user messages using replyToken (reply API)","Sends push messages to a specific user ID (push API)","Manual trigger and Set/Edit Fields node for testing"],"target_audience":["Developers building LINE bots","Automation engineers","Support teams wanting automated replies or notifications"]}


name: Stock Technical Analysis with Google Gemini
author_name: Udit Rawat
author_username: ailistmaster
categories: []
created_at: 2025-01-16T08:21:40.374Z
updated_at: 2025-01-16T08:21:40.374Z
url: https://n8n.io/workflows/2735
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:31
description:
  The purpose of this workflow, "Sell: Stock Vision," is to create an AI-powered technical analysis agent capable of analyzing financial charts for equity stocks and cryptocurrencies. This workflow provides users with actionable insights into market trends, price movements, candlestick patterns, and technical indicators to support informed trading decisions.

  How It Works

  Integration with TradingView:** The workflow uses the Chart-Img.com API to fetch detailed financial charts for the specified stock or cryptocurrency.
  AI-Powered Analysis:** The workflow employs advanced AI models, including Google's Gemini Chat Model, to analyze the retrieved charts for candlestick patterns, support/resistance levels, and technical indicators like MACD and RSI.
  News and Sentiment Analysis:** By integrating with SerpAPI, the workflow gathers relevant news about the stock or cryptocurrency to evaluate its potential impact on market movements.
  Comprehensive Insights:** It provides detailed trading strategies, including buy/sell recommendations, stop-loss levels, and risk-reward evaluations.
  Continuous Memory:** The AI agent uses buffer memory to retain context for enhanced analysis and continuity.

  Use Case
  This workflow is perfect for traders and analysts who need reliable and AI-powered market analysis to make informed trading decisions efficiently.

  Tutorial

  Obtain API keys for Chart-Img.com and SerpAPI.
  Configure the workflow in your n8n instance by inputting the required API keys and connecting the nodes.
  Trigger the workflow by providing the stock or cryptocurrency symbol, and let the agent do the rest!

  https://youtu.be/9fR4qNMT5LM

nodes_used:
  ["n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.toolSerpApi"]

workflow_json_compressed:
  H4sIAAAAAAAAE42UW2/jNhCF/4rAZ9HlTSKpp6ZFNwgW6SUbZBcJgoKXoUzEolxJdnZr+L8XspPYTpzGj5LOHH0zHJ4Vih5V6Kq7vKo/L84e/Y1bPCiFctTAYFC1QjH1g0kOLkadp2Ww0gvLwWqrvTCeAZRGBmug0NxLDlrSAgoaCsUdMwS0cZ5KRR1RgNY5SqYBVKEvMJtV2ZehdQ/ZTexjm1COBlP3qLpbbam+3V789bn83f97vqzt7SePDopRjlwHZgB/NqAKMcIKTCimxTVlFVOVUBPBxC3K0WLuP5at73OUWg97/5fMaKBB4kIZhoUkAiutAy654RIUF8zoHdN1Z3xM9U2Ex+zXqemGsZ8f8/FTUglvvLE1PUymwzC/gn8W0I+aedvHYWy/umOM5OQ+R3PTmQYG6HpUrdZbmxvoNkOqxISt8yfCwhQMWKC49IRgUViOLZMcSx14SbUKulQ7wrOL7KyGtAf2c1Lppx3dzKTaTU1ME/Ok24MT4gQ4OpEvcCUXgXoNmBZWYqFEiS2jFitbMku0DcqLHdx529YzyM6hiSmOAxyyy9bD7ATYWTPKtwbb+ldjJSRn4mP2F3IfnCfSCmytYFgwoFh7IbB33JVGUVCF3JF/jcm3j9kvixCgyy6habsfJ1A3G+G2amtxSM3FadQT/sLNQJfMaouJFQUWRCusJGOYM+UdCUL5QPe4p5AyNw66gb43NWQdOIhL8CfQj3XXXaxr6A6x8TjtkfoR7LRtHza5ETyXhdUBe+4EFoQZrDxQLK2RVAViS0nQh43uDigIcE5qiolnBAvrKDaGA6YqFOALVSqydzN/83HIPkWY+f7dO9nD67t4wrbziXhBMloAo6XGVJYGCyIJtpYwTEsIWlLHnYH9AOvmZ39enDDooW1nG/X81VYLdeJW3+fIuCEuAVXBzHrIUQ/DENMYtSsE38EtRss/Og8dqtCSjim93NZvTo+ZQIlwHBciECy8DdjKosSgBegysILYcWVcmxK40Wpj/NxitUIm/j22gaq7u9UmZI+G0bMqRzF5+I4qsr6/X+cHx1etUGNiOnD6n+DdaF/7vdUfc33Ld9Ts6OXfttw8PXzUdPOcGIfO7wbi1n3ckIWp4endRz85lL/p4v0oODaboxfqyHjW6/8A2IRVvWAIAAA=

metadata_json:
  {"categories":["automation","finance","trading","AI integration","data processing"],"complexity":"medium","use_cases":["AI-powered technical chart analysis for stocks and crypto","Generate buy/sell signals with stop-loss and risk-reward guidance","Monitor news and sentiment impact on assets","Assist traders/analysts with pattern and indicator interpretation","Continuously refine analysis using short-term memory context"],"estimated_setup_minutes":20,"required_services":["Chart-Img.com (TradingView chart images)","SerpAPI (news and search results)","Google Gemini (Gemini Chat model / Google Cloud API)","n8n instance (to run the workflow)"],"key_features":["Fetches high-detail financial charts via Chart-Img.com","Uses Google Gemini to analyze candlestick patterns and indicators (MACD, RSI, support/resistance)","Integrates SerpAPI for news and sentiment analysis","Produces actionable trade guidance: buy/sell recommendations, stop-loss, risk-reward","Agent node with buffer memory for contextual continuity across runs (memoryBufferWindow)"],"target_audience":["traders (retail and active)","financial analysts","crypto traders and researchers\",\"algorithmic traders and quant analysts"]}


name: Summarize YouTube Videos from Transcript
author_name: Ahmed Alnaqa
author_username: ahmedalnaqa
categories: []
created_at: 2025-01-16T12:37:51.928Z
updated_at: 2025-01-16T12:37:51.928Z
url: https://n8n.io/workflows/2736
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  Who is this template for?  
  This workflow template is designed for content creators, researchers, educators, and professionals who need quick, accurate summaries of YouTube videos. It’s ideal for those looking to save time, extract key insights, or repurpose video content into concise formats for reports, studies, or social media.  

  What does it do?  
  The workflow automates the process of summarizing YouTube videos by extracting the transcript, analyzing the content, and generating a concise summary. It leverages AI tools to ensure accuracy and relevance, making it easier to digest lengthy videos in seconds.  

  Why is it useful?  
  This template saves hours of manual effort by automating video summarization, enabling users to focus on analyzing or sharing insights rather than watching entire videos. It’s particularly useful for staying updated with trends, conducting research, or creating content efficiently.  

  How does it work?  
  The workflow integrates with YouTube’s Transcript API powered by Apify Actor to fetch video transcripts, process the text using AI-powered summarization tools, and deliver a clear, concise summary.

  Setup Instructions

  You need an Apify account and an API key to connect with the Actor. Follow the steps below:

  Create a Free Account.
  Choose the appropriate Actor from the Apify search.  
  Under the Integration tab, click on “Use API endpoints.”  
  Select the API that best suits your needs.  

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp","@n8n/n8n-nodes-langchain.chainSummarization","n8n-nodes-base.formTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["Automation","Content processing","Integration","AI summarization"],"complexity":"medium","use_cases":["Create concise summaries / show notes for YouTube videos","Quick research and literature review from video content","Repurpose video content into social posts or articles","Monitor trends and extract key insights from multiple videos","Generate transcripts-based summaries for accessibility or archiving"],"estimated_setup_minutes":15,"required_services":["Apify (YouTube Transcript Actor / API)","YouTube (public videos/transcripts)","OpenAI or compatible LLM (lmChatOpenAi node)","n8n account / instance"],"key_features":["Automatically fetches YouTube transcripts via Apify Actor","AI-powered summarization of transcript text","Form/input node to configure prompts or summary length","HTTP/Webhook trigger support for automation","Produces concise, shareable summaries for reports or social media"],"target_audience":["Content creators","Researchers","Educators/teachers/instructors reviewing lectures or talks"]}


name: Ultimate Content Generator for WordPress
author_name: Alex Kim
author_username: alexk1919
categories: []
created_at: 2025-01-17T03:25:32.265Z
updated_at: 2025-01-17T03:25:32.265Z
url: https://n8n.io/workflows/2737
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-30 08:33:37
description:
  Overview  
  This workflow automates the end-to-end process of creating, optimizing, and publishing content on WordPress. 

  It integrates AI-powered tools, Airtable, and WordPress plugins to generate high-quality, on-brand posts effortlessly. 

  Perfect for content creators, marketers, and business owners looking to save time and scale their content strategy.  

  Features  

  Content Creation:  
  AI-Powered Content:** Generates SEO-friendly blog posts with structured headings, relevant keywords, and meta descriptions.  
  Custom Prompts:** Tailor the AI-generated content to match your brand’s tone and voice.  

  SEO Optimization:  
  RankMath Plugin Integration:** Updates RankMath SEO with focus keywords and meta descriptions, ensuring your content is search-engine optimized.  

  Content Management:  
  Airtable Integration:** Organizes content ideas, drafts, and publishing schedules in one place. Easily scalable for teams or solo creators.  

  Visuals:  
  Branded Featured Images:** Automatically generates on-brand images for every post.  

  Publishing:  
  Effortless Formatting:** Adapts content to fit your WordPress theme and schedules it for publication.  

  Workflow Steps  
  Trigger:  
     Initiated manually or on a schedule.  
  Content Management:  
     Retrieves and organizes ideas from Airtable.  
  Content Generation:  
     Generates AI-driven blog content tailored to your audience.  
  SEO Optimization:  
     Automatically updates RankMath with SEO details.  
  Featured Image Creation:  
     Produces on-brand images for the post.  
  Publishing:  
     Formats and schedules the post on WordPress.  

  Prerequisites  

  API Keys:  
  OpenAI  
  Airtable  
  WordPress REST API  
  RankMath SEO Plugin  

  Custom Code:  
  Add a small update to your WordPress theme’s functions.php file to enable seamless automation.  

  Customization  
  Replace Airtable with another content management system if preferred.  
  Adjust AI prompts to reflect different tones, styles, or industries.  
  Add integrations for additional plugins, analytics, or storage services.  

  Usage  
  Import the workflow into your n8n instance.  
  Configure API credentials for WordPress, Airtable, OpenAI, and RankMath.  
  Update your functions.php file with the provided code snippet.  
  Customize prompts and Airtable structure for your content needs.  
  Trigger the workflow manually or set it on a schedule.  

  Notes  
  Experiment with Airtable views or add filters for more granular control over your content pipeline.  
  Extend the workflow to include social media posting or analytics tracking.  
  For questions, refer to n8n documentation or reach out to the creator.  

  Tools Used  
  Airtable  
  OpenAI GPT  
  WordPress REST API  
  RankMath SEO Plugin  

  Feel free to adapt and extend this workflow to meet your specific needs! 🎉  

nodes_used:
  ["n8n-nodes-base.formTrigger","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.if","n8n-nodes-base.splitOut","n8n-nodes-base.merge","n8n-nodes-base.code","n8n-nodes-base.wordpress","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.respondToWebhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.toolWikipedia","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.wait","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","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-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.aggregate","n8n-nodes-base.airtable","n8n-nodes-base.splitInBatches","n8n-nodes-base.if","n8n-nodes-base.airtable","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest","n8n-nodes-base.airtable","n8n-nodes-base.slack","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.airtableTrigger","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.toolHttpRequest"]

workflow_json_compressed:
  [encoded data, 4572 characters]

metadata_json:
  {"categories":["content creation","automation","CMS","AI"],"complexity":"complex","use_cases":["Automated generation of SEO-friendly WordPress blog posts","Scaling a content calendar with AI-written, on-brand copy","Syncing editorial data between Airtable and WordPress","Automated publishing and post meta (keywords, headings, SEO data)","Custom workflows that inject business logic via code/webhooks"],"estimated_setup_minutes":90,"required_services":["WordPress (REST API) with appropriate publishing plugin access","AI provider (e.g., OpenAI, Anthropic or other AI/ML service)","Airtable","Webhook endpoint or HTTP accessible service","Optional SEO plugin (Yoast, RankMath) or other WordPress plugins used by the workflow"],"key_features":["End-to-end content generation pipeline (idea -> draft -> publish)","AI-powered SEO-friendly copy with structured headings and keywords","Airtable integration for editorial data and content staging","Automated posting to WordPress and plugin integration","Conditional logic, aggregation, and custom code hooks for advanced customization"],"target_audience":["Content creators","Marketers","Small business owners/entrepreneurs managing content at scale"]}


name: Transform Image to Lego Style Using Line and Dall-E
author_name: Boriwat Chanruang
author_username: boriwatopal
categories: []
created_at: 2025-01-17T03:33:28.196Z
updated_at: 2025-01-17T03:33:28.196Z
url: https://n8n.io/workflows/2738
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Who is this for?
  This workflow is designed for:
  Content creators**, artists, or hobbyists looking to experiment with AI-generated art.
  Small business owners* or *marketers** using LEGO-style designs for branding or promotions.
  Developers* or *AI enthusiasts** wanting to automate image transformations through messaging platforms like LINE.

  What problem is this workflow solving?
  Simplifies the process of creating custom AI-generated LEGO-style images.
  Automates the manual effort of transforming user-uploaded images into AI-generated artwork.
  Bridges the gap between messaging platforms (LINE) and advanced AI tools (DALL·E).
  Provides a seamless system for users to upload an image and receive an AI-transformed output without technical expertise.

  What this workflow does
  Image Upload via LINE:
     Users send an image to the LINE chatbot.
  AI-Powered Prompt Creation:
     GPT generates a prompt to describe the uploaded image for LEGO-style conversion.
  AI Image Generation:
     DALL·E 3 processes the prompt and creates a LEGO-style isometric image.
  Image Delivery:
     The generated image is returned to the user in LINE.

  Setup

  Prerequisites
  LINE Developer Account** with API credentials.
  Access to OpenAI API with DALL·E and GPT-4 capabilities.
  A configured n8n instance to run this workflow.

  Steps
  Environment Setup:
     Add your LINE API Token and OpenAI credentials as environment variables (LINE_API_TOKEN, OPENAI_API_KEY) in n8n.
  Configure LINE Webhook:
     Point the LINE webhook to your n8n instance.
  Connect OpenAI:
     Set up OpenAI API credentials in the workflow nodes for GPT-4 and DALL·E.
  Test Workflow:
     Upload a sample image in LINE and ensure it returns the LEGO-style AI image.

  How to customize this workflow to your needs
  Localization**:
    Modify response messages in LINE to fit your audience's language and tone.
  Integration**:
    Add nodes to send notifications through other platforms like Slack or email.
  Image Style**:
    Replace the LEGO-style image prompt with other artistic styles or themes.

  Advanced Use Cases
  Art Contests:
     Users upload images and receive AI-enhanced outputs for community voting or branding.
  Marketing Campaigns:
     Quickly generate creative visual content for ads and promotions using customer-submitted photos.
  Education:
     Use the workflow to teach students about AI-generated art and automation through a hands-on approach.

  Tips for Optimization
  Error Handling**:
    Add fallback nodes to handle invalid images or API errors gracefully.
  Logging**:
    Implement a logging mechanism to track requests and outputs for debugging and analytics.
  Scalability**:
    Use queue-based systems or cloud scaling to handle large volumes of image requests.

  Enhancements
  Add sticky notes in n8n to provide inline instructions for configuring each node.
  Create a tutorial video or documentation for first-time users to set up and customize the workflow.
  Include advanced filters to allow users to select from multiple styles beyond LEGO (e.g., pixel art, watercolor).

  This workflow enables seamless interaction between messaging platforms and advanced AI capabilities, making it highly versatile for various creative and business applications.

nodes_used:
  ["n8n-nodes-base.webhook","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.httpRequest"]

workflow_json_compressed:
  H4sIAAAAAAAAE8VWbW/bNhD+KwQxoC0g2nqzXgwUWJoYbbAkDhJnwxAHAUWebS4SqVGUW9fQ79r3/bKBkmo3rdOs/dJPsnW8e07P3T3HLS7AUDzeYiErQyWDU47HmI1SFlK2AO7FXsZZEoUQszDwM4g8Nw2jJE1YAODHXpQG4AZuMIpGLB0FPEmYx7GDDRRlTg0ca+DVNZi6PFZFmYMBjsdG19A4WNIC8BjPNJXVQukCnRZ0CcgodAZLha7NJgd0Uwm5RGdCAqKSoxOa52RiAeiywuPbOwdLxcH+3GJhk0/8LPJ5CIT6UUBCP/BJmlEgIRslHs98P0oZ3oFfAQOxBkQ7iD8gWyn1YONvSmuXiSQtAMloBYP3O3upKmGEknh86zrunYN7U0ugT/2YeWFCgjSOSZiMFiTz0piMopilURR7rh/YGFTTAgzoypagpGaFxzgXEoQlAjtYlRbCWhsHr4wpz8GslEW4nF7PcNOl+Tvoqs3Eb5yehEUSeSyEjAQ8XJDQHwUk8dwFSdzAj1x/4cZp9jUJLQXnUFV0CdWTHNg8ruDvGirzmAff75h4/Fm1zvEYv7Ze1Xg4pKUgnBo6sN85KGC49oeZMsOigx1ut+iXvyolB5nimwGsQZrq1r0b9PaB4KhphkxJA9J8SZF1fAeUt9D49XYu5/ioNiulxUdqz83xGM3xG6AaNPpzenN1P5v+Nrm4fze5msyxY88fd6HJbFNCd5yWZS5Y6z+0CHM8lw12cAWS79BsTzu4KoGJxWafgz3/VZ3Cwb5SnAY09ZKEuH7CScjiEcn8YEFGC28RwsiNk/Czdj3WQI0dCCr7aanb+diPRVeyX2Uih/u65VQu2YoKOVAlyCPxuG5JdKhupVZFaVoaP5WkZx01zSPisQZTa9nmc6PzajfgGipVa2YT6jq6cTDTwEEaQfPWtcvnqBStCFlC2qpMLycXR6f3x1eTk8nF7PTo7P70ZM/CtHVClDFVS4ObL/n1BvGO3yBiiR/BiABlnIQB5SSLrDDwOElcdwSRRw/xiy7b70cLpXt20cu9LL36QapH4SGqDXwwn4ObFaCTo7Ozf/+ZoAB1hbCyaHZKaVaiQg9CcqQWqOUWCWkUokhUqgCjBUNnk7fT3vZyKvONDbQWHFAB6L0wK0T70K8G2MGF4pBb8dri+3s7sl1D29etKLXDvqZ5bf8uS0NCRQoh7fcxylbAr6Cqc3PR8fj2ckbCKTk/vTi1RX80pF91hYOFLGsz6/i0GhOFbYOBph1vmEqabz7ao5mQVG8utbWaTQ/32irKT+ku5qWLNPBIyqhLwozHJLOy60V+wpM0yzLq7SNfg+ToDWUP+/E1K63q5aqV3u9XXM87OLqd5H6muE+JrYYy39jiP1orB0T1jeKbXlERmuPWb6YeoBdUqxAvXxzepS9eDYSBYnBI1PdxUNO0+muj99lVNvatfYXQtntYq9npcts9vVdnU1oshaR5r+E3Ot/n1+LXOt8jdT6lhrWA95/U6wmH7nxjH3d79e9o6Sbl8e75aaunr1S7d75nH905mDIj1oDHC5pXNiAYq0ZtR8EHYLXNYqo5aDzGa89GWXcR2juPFQIlJbDdWjh8rRhvcUGF7d7bbXt3+zHZbWNY5eDwAY/d5u6ucZ66zR2CfObOczD8M9v3EMz/HvlnAJ/j5dusfvuycAC6af4Dhync3hsMAAA=

metadata_json:
  {"categories":["automation","integration","image processing","AI / generative art","messaging"],"complexity":"medium","use_cases":["Transform user-uploaded photos into LEGO-style images","Automated image generation via messaging platforms (LINE)","Marketing and promotional content creation","Art contests and community-generated artwork","Educational demos for AI and automation"],"estimated_setup_minutes":45,"required_services":["LINE Developer account (Messaging API)","OpenAI API with GPT-4 and DALL·E access","n8n instance with a public webhook endpoint"],"key_features":["Receive images via LINE webhook","GPT-generated prompts describing uploaded images","DALL·E 3 LEGO-style image generation (isometric)","Return generated image back to LINE user","Configurable styles and localization options (swap LEGO for other styles)"],"target_audience":["content creators","artists and hobbyists","small business owners and marketers\",\"developers and AI enthusiasts\",\"educators and students"]}


name: Convert Addresses to LatLong with Google Sheets and Google Maps API
author_name: Boriwat Chanruang
author_username: boriwatopal
categories: []
created_at: 2025-01-17T03:43:26.331Z
updated_at: 2025-01-17T03:43:26.331Z
url: https://n8n.io/workflows/2739
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Template Detail
  This template automates the process of converting a list of addresses into their latitude and longitude (LatLong) coordinates using Google Sheets and the Google Maps API. It's designed for businesses, developers, and analysts who need accurate geolocation data for use cases like delivery routing, event planning, or market analysis.

  What the Template Does
  Fetch Address Data: Retrieves addresses from a Google Sheet.
  Google Maps API Integration: Sends each address to the Google Maps API and retrieves the corresponding LatLong coordinates.
  Update Google Sheets: Automatically updates the same Google Sheet with the LatLong data for each address.

  Enhancements
  Google Sheets Template: Provide a pre-configured Google Sheets template that users can copy. Example link: Google Sheets Template. 

  Columns required:
     Address: Column to input addresses.
     LatLong: Column for the latitude and longitude results.

  Updated Workflow Structure

  Trigger:
     A manual trigger node starts the workflow.
  Retrieve Data from Google Sheets:
     Fetch addresses from a Google Sheet.
  Send to Google Maps API:
     For each address, retrieve the LatLong coordinates directly via the Google Maps API.
  Update Google Sheets:
     Write the LatLong results back into the Google Sheet.

  Steps to Use
  Prepare Google Sheet:
     Copy the provided Google Sheets template and add your addresses to the Address column.
  Configure Google Cloud API:
     Enable the Maps API for your Google Cloud project.
     Generate an API key with the required permissions.
  Run the Workflow:
     Start the workflow in n8n; it will process the addresses automatically.
     Updated LatLong data will appear in the corresponding Google Sheet.
  Review the Results:
     Use the enriched LatLong data for mapping or analysis.

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

workflow_json_compressed:
  H4sIAAAAAAAAE+1X627bNhR+FYEb0A2QbN1tGSgGp0i3dHWda5c1MAqKPJLYSJRCUr7EMNDH2F6vTzJQvqfp6nTAfvWfKR+d7zvfufBojhhFPdRhH7LJ9e+nSThw310dDZCJClAY9eaIcakwJ3Ci7UgQER+TBKjTcWJKuqEPHeJ7bgyhY0d+2I26xANwO04YeWB7theEAYkCj3a7xKFoYSKOC0A99KLkYxDK6FMqQEqQhiqN11i9LnlqTJjKjF/LMs3BuMgAlDQwp+snA1xJo396gkykcCpR72ZkIl5S0D/ny4giPww6XgBWQB1q+STyrNi3O5bjQdKJHN9PIhdtyPyRATdIzsgt46nx6eNflyCVMSnFbZKXk08f/9ZQs0qb8i63GiwrxhJaBeY1zi8FS1MQyERVKZliJUe9G8vzbdO1RyaqsMAFKBAS9eaLpau3IGRj5yzMFWff9p24k2CL+B2wfJ+4VuxGoeVGjgfdIHBI6Gw5X0nNdSuJVkRreA6qFlxLaTRaHmFy+0X6mVLVOdzVINU+ede2Tcv/jDyqRY56SL8me+12gSvZShsKuGKyRcqiedbGFWtXOSbQVjBVErAgWfuDLDkyUVlpjJUUEjg9q0HMUE+JGkx0pw+ne5i7DG7m6/gbQ2SiMc5rfX4+nxs/aojWqqSMxQJpbVf2t7Br3T+5xxezF5Oz2+P+MLubTmfXs/RKMCucZvcvL85qRvvB5QAtRouHCfNb7iZlrh27IfU8ywUfW76HqRUTO7FiEjh2Yrs0pvZOyiqKFejUWE1qGDeOMcmMU62U/GKSlgIv+2A/S4H/eJZImddFI/E64Dl6jVVe8nRPKQGyzpW8sUetFMoClJi18pJg7b6VY2UsFuaBxjzVeptIlJP3vC5iEGukn54dT5XARBmXGaxiNRJRFnsd/uznFlNQtJZQGyfLJCJJMijwtr1XKd5KJpVgPEUmokxWOd6Uk4CiHAPdHu9qJvQ5wbmEjfmbZYK2bikkuM7VACuSbYwJ5kdwJYFelqs/tNdNMawVPoDUv7LY+vkWFjsJOFydlWsBmA55fijRPaincB2ZqMBVxXg6KKn2RCFhHI4gLyf67tGmjKcv1mV8sws1WjyYIWUFAi87AtVNiyETSV1US55z9P69HlvLmIolYs6akbdqD6fjdaNO6AWO5kwyoOdNtV/tjTtakvW4a0adrLRgDZJs07YTvLwPOnesf37yKjwPhvdH/bcp6//Gr7pyeHHdhT9fHp+GKhuKwaANlKkfUkafb6HRPvZK5KY7XN0EtCR1AVzpq/iAmNBT+KD/M+5falk9p4KNQdLbx6Ne9YChL2JdunoKEwEUuGI4bybb7lgc9muVuf2KNStLswC8uXCu01f5u3qWF/bZ2+0UfrBXEFLWXKFHxnywHfNREngkcC2bxJ7l+xisboCphaPEJRRo1/P8LcAh4+4bhr3luLZpfb5QPLhQv9f997r/r3U/MhEmio1hM8glKM2nIQBTILUuuaGgzTU/dnSaxksPzYcCxdTDSQKW36GR5XcCsGLaxRZJfNx1ILYTqoc0KTkHsq7er+1HvTkqMNOtcDPSl8DXt/adN+bNF8KTu7N53USMU5iinr1ogA9y8Rj2t+3sj3J4kqtHuRy4jD6Cvlj8A+P2/OU4DgAA

metadata_json:
  {"categories":["integration","data processing","automation","geocoding"],"complexity":"simple","use_cases":["Convert address lists to latitude/longitude (geocoding)","Delivery routing and logistics","Event planning and location mapping","Market analysis and spatial reporting","Enriching CRM or contact data with coordinates"],"estimated_setup_minutes":15,"required_services":["Google Sheets","Google Maps Geocoding API (or Maps API)","Google Cloud Platform (API key / enable Maps API)","n8n"],"key_features":["Fetch addresses from a Google Sheet","Send addresses to Google Maps API to retrieve LatLong","Write LatLong results back to the same Google Sheet","Manual trigger to start processing","Supports a pre-configured Google Sheets template"],"target_audience":["businesses","developers","data analysts/BI teams"]}


name: Basic Automatic Gmail Email Labelling with OpenAI and Gmail API
author_name: Martijn Kerver
author_username: mkc
categories: []
created_at: 2025-01-17T08:51:32.434Z
updated_at: 2025-01-17T08:51:32.434Z
url: https://n8n.io/workflows/2740
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:31
description:
  Description
  This workflow automates email categorization in Gmail using the Gmail API and OpenAI's language model. It periodically checks for new emails, reads their content, and categorizes them based on existing Gmail labels. If no matching label is found, the workflow creates a new label and assigns it to the email.

  Key Features
  Polling for Emails**: The workflow triggers every 5 minutes to check for new emails using the Gmail Trigger node.
  Reading Labels**: Existing Gmail labels are fetched to determine the most relevant match for email categorization.
  Dynamic Labeling**: If no existing label matches, a new label is created dynamically based on the email's content.
  OpenAI Integration**: The workflow uses OpenAI's Chat model to analyze email content and suggest or create appropriate labels.
  Email Categorization**: Labels are applied to emails, ensuring they are organized in Gmail's structure. The workflow also removes less relevant emails (e.g., ads) from the inbox.

  Nodes in Use
  Gmail Trigger: Polls Gmail every 5 minutes for new emails.
  Gmail - Read Labels: Fetches all existing Gmail labels.
  Gmail - Get Message: Retrieves the full content of a specific email.
  Gmail - Add Label to Message: Assigns a chosen label to the email.
  Gmail - Create Label: Creates a new label if necessary.
  OpenAI Chat Model: Analyzes email content for categorization.
  Memory Buffer: Retains context for email analysis across multiple iterations.
  Wait Node: Adds a buffer period to manage email processing.

  Prerequisites
  Gmail API Setup**: Ensure Gmail OAuth2 credentials are configured in n8n.
  OpenAI API Key**: Configure OpenAI credentials for email analysis.
  Labeling Standards**: Maintain a consistent Gmail label structure for better organization.

  Instructions
  Add your Gmail API credentials to the Gmail nodes.
  Add your OpenAI API credentials to the OpenAI Chat Model node.
  Activate the workflow. It will start polling for new emails every 5 minutes.
  Monitor and refine the categorization logic if necessary to ensure alignment with Gmail's organizational needs.

  Use Case
  Ideal for individuals or teams handling high email volumes who want to maintain an organized inbox and automate repetitive categorization tasks.

  Note: You can improve the prompt to get better results from the agent by giving it more personal rules on how to categorize.

nodes_used:
  ["n8n-nodes-base.gmailTrigger","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.gmailTool","n8n-nodes-base.gmailTool","n8n-nodes-base.gmailTool","n8n-nodes-base.gmailTool","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.memoryBufferWindow","n8n-nodes-base.wait","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","email management","integration","AI/ML"],"complexity":"medium","use_cases":["Automated email categorization and labeling","Inbox decluttering by removing low-relevance emails (e.g., ads)","Triage and routing of incoming messages for teams","Maintaining consistent Gmail label structure"],"estimated_setup_minutes":20,"required_services":["Gmail (Google API with OAuth2)","OpenAI API (Chat model)","n8n (self‑hosted or cloud instance)"],"key_features":["Periodic polling for new emails (every 5 minutes)","Fetch existing Gmail labels to find best match","OpenAI Chat model analyzes email content to suggest labels","Dynamically create new Gmail labels when no match exists","Apply or remove labels on messages (organize or clear inbox)」「Memory buffer to retain context across iterations"],"target_audience":["Individuals managing high email volume","Small teams or support teams needing automated triage","Operations/administrative staff seeking inbox automation"]}


name: AI-Powered RAG Workflow For Stock Earnings Report Analysis
author_name: Mihai Farcas
author_username: mihailtd
categories: []
created_at: 2025-01-17T09:45:18.164Z
updated_at: 2025-01-17T09:45:18.164Z
url: https://n8n.io/workflows/2741
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  This n8n workflow creates a financial analysis tool that generates reports on a company's quarterly earnings using the capabilities of OpenAI GPT-4o-mini, Google's Gemini AI and Pinecone's vector search. By analyzing PDFs of any company's earnings reports from their Investor Relations page, this workflow can answer complex financial questions and automatically compile findings into a structured Google Doc.

  How it works:
  Data loading and indexing
  Fetches links to PDF earnings document from a Google Sheet containing a list of file links.
  Downloads the PDFs from Google Drive.
  Parses the PDFs, splits the text into chunks, and generates embeddings using the Embeddings Google AI node (text-embedding-004 model).
  Stores the embeddings and corresponding text chunks in a Pinecone vector database for semantic search.

  Report generation with AI agent
  Utilizes an AI Agent node with a specifically crafted system prompt. The agent orchestrates the entire process.
  The agent uses a Vector Store Tool to access and retrieve information from the Pinecone database.
  Report delivery
  Saves the generated report as a Google Doc in a specified Google Drive location.

  Set up steps
  Google Cloud Project & Vertex AI API:
  	Create a Google Cloud project.
  	Enable the Vertex AI API for your project.
  Google AI API key:
  	Obtain a Google AI API key from Google AI Studio.
  Pinecone account and API key:
  	Create a free account on the Pinecone website.
  	Obtain your API key from your Pinecone dashboard.
  	Create an index named company-earnings in your Pinecone project.
  Google Drive - download and save financial documents:
  	Go to a company you want to analize and download their quarterly earnings PDFs
  	Save the PDFs in Google Drive
  	Create a Google Sheet that stores a list of file URLs pointing to the PDFs you downloaded and saved to Google Drive
  Configure credentials in your n8n environment for:
  	Google Sheets OAuth2
  	Google Drive OAuth2
  	Google Docs OAuth2
  	Google Gemini(PaLM) Api (using your Google AI API key)
  	Pinecone API (using your Pinecone API key)
  Import and configure the workflow:
  	Import this workflow into your n8n instance.
  	Update the List Of Files To Load (Google Sheets) node to point to your Google Sheet.
  	Update the Download File From Google Drive to point to the column where the file URLs are
  	Update the Save Report to Google Docs node to point to your Google Doc where you want the report saved.

nodes_used:
  ["@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsGoogleGemini","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.splitInBatches","n8n-nodes-base.manualTrigger","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.vectorStorePinecone","n8n-nodes-base.googleDocs","@n8n/n8n-nodes-langchain.embeddingsGoogleGemini","n8n-nodes-base.googleSheets","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 5780 characters]

metadata_json:
  {"categories":["automation","integration","data processing","machine learning","document analysis"],"complexity":"complex","use_cases":["Automated earnings report summarization","Semantic Q&A over financial PDFs","Financial due-diligence and competitive analysis","Generating structured Google Doc reports from documents","Building RAG-enabled analyst workflows"],"estimated_setup_minutes":90,"required_services":["n8n instance","Google Drive (OAuth2)","Google Sheets (OAuth2)","Google Docs (OAuth2)","Google Cloud / Vertex AI (Google Gemini / PaLM API key)","Pinecone (vector DB and API key)","(Optional) OpenAI (GPT-4o-mini) API"],"key_features":["Ingest PDFs from Google Drive via links in Google Sheets","PDF parsing and recursive text splitting into chunks","Generate embeddings with Google AI embeddings node","Store and query vectors in Pinecone for semantic search","AI Agent orchestrates retrieval and synthesis using a Vector Store Tool','Generates a structured financial report and saves to Google Docs"],"target_audience":["Financial analysts","Business analysts","Data engineers / ML engineers building RAG pipelines」「Developers integrating LLMs and vector DBs for document workflows"]}


name: Post Hourly Crypto Market Summaries via Coingecko to X and to Email
author_name: Badr
author_username: b4dr
categories: []
created_at: 2025-01-17T11:18:56.845Z
updated_at: 2025-01-17T11:18:56.845Z
url: https://n8n.io/workflows/2746
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Description  
  This workflow, delivers real-time cryptocurrency market updates (default: Bitcoin) by fetching data from the CoinGecko API. It formats the information into a visually engaging message and shares it on X (formerly Twitter) and via email. The workflow is set to trigger hourly but is fully customizable to suit different schedules or cryptocurrencies.

  Key Features  
  Real-Time Market Data Retrieval:** Fetches up-to-date cryptocurrency market data using CoinGecko API.  
  AI-Driven Message Formatting:** Converts raw data into a structured, engaging message.  
  Social Media Integration:** Posts updates to X with OAuth2 authentication.  
  Email Notifications:** Sends updates via email to specified recipients.  
  Flexible Customization:** Adaptable for tracking multiple cryptocurrencies or adding new notification channels.  

  Workflow Steps  
  Trigger Workflow: Default is hourly, but the interval can be customized.  
  Fetch Cryptocurrency Data: Retrieves market data using the CoinGecko API.  
  Format the Message: Converts the data into a readable and visually appealing format.  
  Post Update on X: Shares the message on X (formerly Twitter).  
  Send Email Notifications: Sends the update to a specified email address.  
  Optional Notifications: Expand to additional channels like Slack or Telegram.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.twitter","n8n-nodes-base.gmail"]

workflow_json_compressed:
  H4sIAAAAAAAAE5XUS4+bMBAH8K+CfGZWfmFsjn2s2kOrqi9VWuVgj+0E7Qan4NU2ivjuVdJoE0XQ7F7hz/gHM8OOdMmHgTR3O9J60hCMSlaBIdSeBZCCa7DSSxDGVcZJxWomSEk6uw6kId9yi/fb4nPKgZQkbzf7i53u4FAVnB3CzXDIHCObNLS5TR1p7sBwWoLgdFGSje3tOuTQD6TZjf8q/Qz9cEiysTzioo0144aDqLwDKZCBQfQgWRVMRKZUpSdx7PU6SUuo6CtwWsRKCeeBG6tARslAo5DgnPMyekRrz3Bv++0mp+JDeuwftsX3vl0uQz+vxFXwjw/hlDunMqFoCUxfx97wZy53ngbtOHjOIkjqPViBFpioHApKjUN+4t6GjKviTZsxtV3xzmY7a13lvPkafj+GIV84a/kypjxjRld7z62CikkNEpkGh1GC9SgEratYV2fzeJv6tc3F8eN+CsNgl/OTiclfdl3wlxFPQGRMCmYrEFQxkLVQYLG2wKSIivNoahFOwC9peOb92HibQ5G64tcsMT+1OV82nB0W5/psnpCCCaqipiBVNCB9RNAKPVBhpBJRe2/wbHFC5y+Q79e2fZhVLo93L42H3X4KbpXS/ce9w2tkjjMFqGsHUhoNJtIKWCWlNdy5Onpy7a1u2LgoCaauC7g/bR+aGtBmR9a23WPudoff3PUBOeRL0nY+/CENHReLsZxZ1cnq/9mSydLTnKnSVwfnsn75/Oj1dk7a5k480y0W4zj+BZ7g7J5DBgAA

metadata_json:
  {"categories":["automation","integration","notifications","crypto"],"complexity":"medium","use_cases":["Hourly cryptocurrency market summaries","Automated social media posting","Email market alerts","Market monitoring and reporting"],"estimated_setup_minutes":20,"required_services":["CoinGecko API","X (Twitter) developer account / OAuth2 credentials","Email provider (SMTP, SendGrid, Gmail, etc.)","Optional: AI service for message formatting (e.g., OpenAI)"],"key_features":["Scheduled hourly trigger (configurable)","Fetches real-time market data from CoinGecko","AI-driven / programmatic message formatting","Posts updates to X via OAuth2","Sends email notifications to recipients (configurable)"],"target_audience":["Developers integrating APIs","Crypto traders and analysts","Social media managers handling crypto content marketing','Product managers/marketers"]}


name: 🎨 Interactive Image Editor with FLUX.1 Fill Tool for Inpainting
author_name: Eduard
author_username: eduard
categories: []
created_at: 2025-01-17T12:45:15.799Z
updated_at: 2025-01-17T12:45:15.799Z
url: https://n8n.io/workflows/2747
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  &gt; Like this template? Connect with Eduard via LinkedIn.

  This workflow is a prototype of an AI-powered image editing interface, similar to Photoshop's Generative Fill feature, but running entirely in the browser. It provides a web-based editor that allows users to:

  Select areas in images using an adjustable brush tool
  Input text prompts to guide the AI generation
  Compare original and generated images side by side
  Iterate on edits with different prompts and settings
  Save or reuse generated images

  &gt; 🎨 Perfect for product catalog management, seasonal content updates, and creative image editing tasks!

  📋 Requirements
  FLUX API Access: You'll need API credentials from FLUX to use this workflow.
  Configure the HTTP Header Auth credential in n8n with your FLUX API key


  🔧 Key Components
  FLUX Fill API for AI-powered image generation
  Konva.js for canvas manipulation
  img-comparison-slider for result visualization
  Custom CSS/JS for editor functionality


  Simple Editor Interface
     HTML page with an editor is served on the Webhook call
     Adjustable brush selection tool
     Provides several mock examples and allows uploading custom images
     Basic prompt and FLUX model parameter controls

  Image Processing Pipeline
     Handles image and mask separately
     Processes FLUX Fill API requests
     Delivers results back to the editor

  Result Viewer
     Split-screen comparison of original and generated images
     Interactive slider for before/after comparison
     Options to save or continue editing
     Support for multiple iteration cycles

  🎯 Use Cases
  This prototype is particularly useful for:

  Testing AI-powered image editing concepts
  Quick product visualization experiments
  Exploring creative image variations
  Demonstrating inpainting capabilities

  &gt; 💡 Pro Tip: Save masks for frequently edited areas to quickly generate variations with different prompts!

  The workflow can be extended to integrate with various data sources and can be customized for specific business needs.

nodes_used:
  ["n8n-nodes-base.merge","n8n-nodes-base.respondToWebhook","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.respondToWebhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.webhook","n8n-nodes-base.html","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.noOp"]

workflow_json_compressed:
  [encoded data, 5444 characters]

metadata_json:
  {"categories":["AI image editing","integration","web interface","creative tools"],"complexity":"medium","use_cases":["In‑browser AI inpainting and generative fill","Product catalog image updates and visualization","Quick creative image variations for marketing","Prototyping and demonstrating inpainting workflows","Iterative image editing with prompt adjustments"],"estimated_setup_minutes":30,"required_services":["FLUX API (Fill endpoint) with API key","n8n instance with a publicly reachable webhook"],"key_features":["Adjustable brush mask selection (Konva.js)","Text-prompt driven AI Fill via FLUX","Split-screen before/after comparison with slider","Iterative editing cycles and re-use of generated images/masks","Web-based editor served from a webhook (custom HTML/CSS/JS)"],"target_audience":["Developers building AI image editing UIs","Product/content managers for ecommerce","Marketers and creative teams experimenting with assets','AI/ML prototypers and demo creators"]}


name: Merge and filter several Rss & send to Telegram
author_name: Sherlockes
author_username: sherlockes
categories: []
created_at: 2025-01-17T18:47:18.063Z
updated_at: 2025-01-17T18:47:18.063Z
url: https://n8n.io/workflows/2748
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  Purpose of this Template:
  This template will help us combine multiple RSS sources, curate the content, and send the result to a Telegram channel for easy access.

  How it Works:
  We start with two RSS sources from which we primarily want to extract the title, link, and publication date. The workflow will periodically query both sources and use regular expressions and some JavaScript to edit several fields until we have the desired data in the proper format.
  Once the sources are formatted, we will combine them using the "Merge" node.
  Since the workflow will run twice a day, we will discard items older than two days. This will be achieved using a "Filter" node.
  A "Sort" node will arrange the items by publication date so that the most recent ones appear first.
  To create a flat list in "Markdown" format from the resulting items, we will use a small JavaScript function. This function must escape special characters to ensure they are correctly interpreted.
  Finally, the list will be sent to the appropriate channel using a "Telegram" node.

  Configuration Instructions:
  When opening the workflow for the first time, configure the Telegram credential.
  In the "RSS" nodes, insert the URLs of the sources to query.
  In the "Edit Fields" nodes we will have to adjust the regular expressions to obtain the desired result based on our RSS sources. In this case the expressions have been adjusted to obtain the name, size and link of each published file.
  In the "Sort" node we can modify the maximum age of the elements that we are going to send. In this case, 2 days have been included (2 * 24 * 60 * 60 * 1000 milliseconds) since it is necessary to take into account that Telegram has a maximum message length and if we exceed it, it will return an error instead of sending it.
  Lastly, include the channel ID in the "Telegram" node where the messages will be sent.


  Template was created in n8n v1.72.1

nodes_used:
  ["n8n-nodes-base.rssFeedRead","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.sort","n8n-nodes-base.code","n8n-nodes-base.telegram","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.filter","n8n-nodes-base.rssFeedRead","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","integration","data processing","notifications"],"complexity":"medium","use_cases":["Aggregate and curate multiple RSS/news sources into a single feed","Send periodic updates or digests to a Telegram channel","Filter out stale items and keep only recent publications","Format aggregated items as Markdown for readable messages","Notify communities about new releases or content"],"estimated_setup_minutes":15,"required_services":["Telegram (Bot API + channel ID)","Accessible RSS feed URLs"],"key_features":["Read and normalize multiple RSS feeds","Edit fields using regular expressions and JavaScript","Merge multiple feed streams into one flow","Filter out items older than a configurable age","Sort items by publication date (most recent first)"],"target_audience":["developers","community managers","marketers/content curators"]}


name: Proxmox AI Agent with n8n and Generative AI Integration
author_name: Amjid Ali
author_username: amjid
categories: []
created_at: 2025-01-18T14:13:14.250Z
updated_at: 2025-01-18T14:13:14.250Z
url: https://n8n.io/workflows/2749
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  Proxmox AI Agent with n8n and Generative AI Integration

  This template automates IT operations on a Proxmox Virtual Environment (VE) using an AI-powered conversational agent built with n8n. By integrating Proxmox APIs and generative AI models (e.g., Google Gemini), the workflow converts natural language commands into API calls, enabling seamless management of your Proxmox nodes, VMs, and clusters.
  Buy My Book:  
  Mastering n8n on Amazon

  Full Courses & Tutorials:  
  http://lms.syncbricks.com

  Watch Video on Youtube

  How It Works  
  Trigger Mechanism  
     The workflow can be triggered through multiple channels like chat (Telegram, email, or n8n's built-in chat).  
     Interact with the AI agent conversationally.

  AI-Powered Parsing  
     A connected AI model (Google Gemini or other compatible models like OpenAI or Claude) processes your natural language input to determine the required Proxmox API operation.

  API Call Generation  
     The AI parses the input and generates structured JSON output, which includes:  
       response_type: The HTTP method (GET, POST, PUT, DELETE).  
       url: The Proxmox API endpoint to execute.  
       details: Any required payload parameters for the API call.

  Proxmox API Execution  
     The structured output is used to make HTTP requests to the Proxmox VE API. The workflow supports various operations, such as:  
       Retrieving cluster or node information.  
       Creating, deleting, starting, or stopping VMs.  
       Migrating VMs between nodes.  
       Updating or resizing VM configurations.

  Response Formatting  
     The workflow formats API responses into a user-friendly summary. For example:  
       Success messages for operations (e.g., "VM started successfully").  
       Error messages with missing parameter details.

  Extensibility  
     You can enhance the workflow by connecting additional triggers, external services, or AI models. It supports:  
       Telegram/Slack integration for real-time notifications.  
       Backup and restore workflows.  
       Cloud monitoring extensions.

  Key Features  
  Multi-Channel Input**: Use chat, email, or custom triggers to communicate with the AI agent.  
  Low-Code Automation**: Easily customize the workflow to suit your Proxmox environment.  
  Generative AI Integration**: Supports advanced AI models for precise command interpretation.  
  Proxmox API Compatibility**: Fully adheres to Proxmox API specifications for secure and reliable operations.  
  Error Handling**: Detects and informs you of missing or invalid parameters in your requests.  

  Example Use Cases  
  Create a Virtual Machine  
     Input: "Create a VM with 4 cores, 8GB RAM, and 50GB disk on psb1."  
     Action: Sends a POST request to Proxmox to create the VM with specified configurations.

  Start a VM  
     Input: "Start VM 105 on node psb2."  
     Action: Executes a POST request to start the specified VM.

  Retrieve Node Details  
     Input: "Show the memory usage of psb3."  
     Action: Sends a GET request and returns the node's resource utilization.

  Migrate a VM  
     Input: "Migrate VM 202 from psb1 to psb3."  
     Action: Executes a POST request to move the VM with optional online migration.

  Pre-Requisites  
  Proxmox API Configuration  
     Enable the Proxmox API and generate API keys in the Proxmox Data Center.  
     Use the Authorization header with the format:  
       PVEAPIToken=&lt;user&gt;@&lt;realm&gt;!&lt;token-id&gt;=&lt;token-value&gt;

  n8n Setup  
     Add Proxmox API credentials in n8n using Header Auth.  
     Connect a generative AI model (e.g., Google Gemini) via the relevant credential type.

  Access the Workflow  
     Import this template into your n8n instance.  
     Replace placeholder credentials with your Proxmox and AI service details.

  Additional Notes  
  This template is designed for Proxmox 7.x and above.  
  For advanced features like backup, VM snapshots, and detailed node monitoring, you can extend this workflow.  
  Always test with a non-production Proxmox environment before deploying in live systems.

  Start with n8n  

  Learn n8n with Amjid   
  Get n8n Book 

  What is Proxmox

nodes_used:
  ["n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.toolHttpRequest","@n8n/n8n-nodes-langchain.outputParserAutofixing","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.telegramTrigger","n8n-nodes-base.gmailTrigger","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.toolHttpRequest","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 10536 characters]

metadata_json:
  {"categories":["automation","integration","infrastructure management","devops","AI integration"],"complexity":"complex","use_cases":["Create, start, stop, delete VMs via natural language","Query cluster and node resource usage","Migrate VMs between nodes","Resize or update VM configurations","Trigger backups and snapshots (extendable)"],"estimated_setup_minutes":45,"required_services":["Proxmox VE API (Proxmox 7.x+)","n8n instance","Generative AI provider (e.g., Google Gemini, OpenAI, Claude)","Optional chat/notification channels (Telegram, Slack, Email)"],"key_features":["Natural-language to API call conversion using generative AI","Multi-channel triggers (chat, email, webhooks)","Proxmox API execution for VM/node/cluster operations","Structured JSON output generation for safe HTTP requests","User-friendly response formatting and error messages」「Extensible workflow for backups, monitoring, and additional integrations"],"target_audience":["DevOps engineers","Systems administrators","Site Reliability Engineers (SREs)」「Platform engineers"]}


name: 🤖 Telegram Messaging Agent for Text/Audio/Images
author_name: Joseph LePage
author_username: joe
categories: []
created_at: 2025-01-18T18:10:46.426Z
updated_at: 2025-01-18T18:10:46.426Z
url: https://n8n.io/workflows/2751
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 20:27:49
description:
  🤖 This n8n workflow creates an intelligent Telegram bot that processes multiple types of messages and provides automated responses using AI capabilities. The bot serves as a personal assistant that can handle text, voice messages, and images through a sophisticated processing pipeline.

  Core Components

  Message Reception and Validation 📥
  🔄 Implements webhook-based message reception for real-time processing
  🔐 Features a robust user validation system that verifies sender credentials
  🔀 Supports both testing and production webhook endpoints for development flexibility

  Message Processing Pipeline ⚡
  🔄 Uses a smart router to detect and categorize incoming message types
  📝 Processes three main message formats:
    💬 Text messages
    🎤 Voice recordings
    📸 Images with captions

  AI Integration 🧠
  🤖 Leverages OpenAI's GPT-4 for message classification and processing
  🗣️ Incorporates voice transcription capabilities for audio messages
  👁️ Features image analysis using GPT-4 Vision API for processing visual content

  Technical Architecture

  Webhook Management 🔌
  🌐 Maintains separate endpoints for testing and production environments
  📊 Implements automatic webhook status monitoring
  ⚡ Provides real-time webhook configuration updates

  Error Handling ⚠️
  🔍 Features comprehensive error detection and reporting
  🔄 Implements fallback mechanisms for unprocessable messages
  💬 Provides user feedback for failed operations

  Message Classification System 📋
  🏷️ Categorizes incoming messages into tasks and general conversation
  🔀 Implements separate processing paths for different message types
  🧩 Maintains context awareness across message processing

  Security Features

  User Authentication 🔒
  ✅ Validates user credentials against predefined parameters
  👤 Implements first name, last name, and user ID verification
  🚫 Restricts access to authorized users only

  Response System

  Intelligent Responses 💡
  🤖 Generates contextual responses based on message classification

nodes_used:
  ["n8n-nodes-base.if","n8n-nodes-base.telegram","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.telegram","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.openAi","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.telegram","n8n-nodes-base.convertToFile","n8n-nodes-base.extractFromFile","@n8n/n8n-nodes-langchain.textClassifier","@n8n/n8n-nodes-langchain.textClassifier","n8n-nodes-base.set","n8n-nodes-base.telegram","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.switch"]

workflow_json_compressed:
  [encoded data, 6072 characters]

metadata_json:
  {"categories":["automation","integration","messaging","AI/chatbot"],"complexity":"complex","use_cases":["Personal assistant chatbot","Multimedia customer support (text/voice/image)","Automated message classification and routing","Voice transcription and image understanding","Secure bot access for authorized users"],"estimated_setup_minutes":90,"required_services":["Telegram Bot API","OpenAI (GPT-4, GPT-4 Vision, Whisper/transcription)","Publicly accessible webhook host (server or tunnel like ngrok)"],"key_features":["Webhook-based real-time message reception with separate test/prod endpoints","User authentication and access restriction","Smart router to detect and branch by message type (text, voice, image)","GPT-4-powered classification and contextual response generation","Voice transcription for audio messages and image analysis via GPT-4 Vision API\",\"Comprehensive error handling and fallback mechanisms\",\"Webhook status monitoring and realtime configuration updates\",\"Context awareness across message threads"],"target_audience":["Developers building chatbots","Customer support and operations teams","Small businesses automating messaging workflows\",\"AI/ML enthusiasts experimenting with multimodal bots"]}


name: HR & IT Helpdesk Chatbot with Audio Transcription
author_name: Felipe Braga
author_username: occult
categories: []
created_at: 2025-01-19T21:41:25.066Z
updated_at: 2025-01-19T21:41:25.066Z
url: https://n8n.io/workflows/2752
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  An intelligent chatbot that assists employees by answering common HR or IT questions, supporting both text and audio messages. This unique feature ensures employees can conveniently ask questions via voice messages, which are transcribed and processed just like text queries.

  How It Works
  Message Capture: When an employee sends a message to the chatbot in WhatsApp or Telegram (text or audio), the chatbot captures the input.
  Audio Transcription: For audio messages, the chatbot transcribes the content into text using an AI-powered transcription service (e.g., Whisper, Google Cloud Speech-to-Text).
  Query Processing:
     The transcribed text (or directly entered text) is sent to an AI service (e.g., OpenAI) to generate embeddings.
     These embeddings are used to search a vector database (e.g., Supabase or Qdrant) containing the company’s internal HR and IT documentation.
     The most relevant data is retrieved and sent back to the AI service to compose a concise and helpful response.
  Response Delivery: The chatbot sends the final response back to the employee, whether the input was text or audio.

  Set Up Steps
  Estimated Time**: 20–25 minutes
  Prerequisites**:
    Create an account with an AI provider (e.g., OpenAI).
    Connect WhatsApp or Telegram credentials in n8n.
    Set up a transcription service (e.g., Whisper or Google Cloud Speech-to-Text).
    Configure a vector database (e.g., Supabase or Qdrant) and add your internal HR and IT documentation.
    Import the workflow template into n8n and update environment variables for your credentials.

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.manualTrigger","n8n-nodes-base.httpRequest","n8n-nodes-base.extractFromFile","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.vectorStorePGVector","@n8n/n8n-nodes-langchain.embeddingsOpenAi","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","n8n-nodes-base.telegramTrigger","n8n-nodes-base.switch","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.telegram","n8n-nodes-base.telegram","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.memoryPostgresChat","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.vectorStorePGVector","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.embeddingsOpenAi","n8n-nodes-base.telegram","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6380 characters]

metadata_json:
  {"categories":["automation","integration","knowledge management","conversational AI"],"complexity":"medium","use_cases":["HR & IT employee self-service chatbot","Voice-enabled FAQ and knowledge retrieval","Internal documentation search via embeddings","Automated response generation for common support queries"],"estimated_setup_minutes":25,"required_services":["n8n","WhatsApp or Telegram account/credentials","AI provider for embeddings/LLM (e.g., OpenAI)","Transcription service (e.g., Whisper or Google Cloud Speech-to-Text)","Vector database (e.g., Supabase with pgvector or Qdrant)","Storage or repository for internal HR/IT documentation"],"key_features":["Supports text and audio messages with automatic transcription","Generates embeddings and performs vector search against internal docs","Retrieves relevant context and composes concise AI responses","Integrates with WhatsApp/Telegram via webhooks","Configurable environment variables and modular n8n nodes"],"target_audience":["HR teams","IT support/helpdesk teams","Internal communications/employee experience managers`,`Automation engineers/developers"]}


name: RAG Chatbot for Company Documents using Google Drive and Gemini
author_name: Mihai Farcas
author_username: mihailtd
categories: []
created_at: 2025-01-20T00:06:27.623Z
updated_at: 2025-01-20T00:06:27.623Z
url: https://n8n.io/workflows/2753
scraped_at: 2025-09-14 19:10:59
metadata_generated_at: 2025-09-14 19:26:55
description:
  This workflow implements a Retrieval Augmented Generation (RAG) chatbot that answers employee questions based on company documents stored in Google Drive. It automatically indexes new or updated documents in a Pinecone vector database, allowing the chatbot to provide accurate and up-to-date information. The workflow uses Google's Gemini AI for both embeddings and response generation.

  How it works
  The workflow uses two Google Drive Trigger nodes: one for detecting new files added to a specified Google Drive folder, and another for detecting file updates in that same folder.
  Automated Indexing: When a new or updated document is detected
  The Google Drive node downloads the file.
  The Default Data Loader node loads the document content.
  The Recursive Character Text Splitter node breaks the document into smaller text chunks.
  The Embeddings Google Gemini node generates embeddings for each text chunk using the text-embedding-004 model.
  The Pinecone Vector Store node indexes the text chunks and their embeddings in a specified Pinecone index.
  7.The Chat Trigger node receives user questions through a chat interface. The user's question is passed to an AI Agent node.
  The AI Agent node uses a Vector Store Tool node, linked to a Pinecone Vector Store node in query mode, to retrieve relevant text chunks from Pinecone based on the user's question.
  The AI Agent sends the retrieved information and the user's question to the Google Gemini Chat Model (gemini-pro).
  The Google Gemini Chat Model generates a comprehensive and informative answer based on the retrieved documents.
  A Window Buffer Memory node connected to the AI Agent provides short-term memory, allowing for more natural and context-aware conversations.

  Set up steps

  Google Cloud Project and Vertex AI API:
  Create a Google Cloud project.
  Enable the Vertex AI API for your project.
  Google AI API Key:
  Obtain a Google AI API key from Google AI Studio.
  Pinecone Account:
  Create a free account on the Pinecone website.
  Obtain your API key from your Pinecone dashboard.
  Create an index named company-files in your Pinecone project.
  Google Drive:
  Create a dedicated folder in your Google Drive where company documents will be stored.
  Credentials in n8n: Configure credentials in your n8n environment for:
  Google Drive OAuth2
  Google Gemini(PaLM) Api (using your Google AI API key)
  Pinecone API (using your Pinecone API key)
  Import the Workflow:
  Import this workflow into your n8n instance.
  Configure the Workflow:
  Update both Google Drive Trigger nodes to watch the specific folder you created in your Google Drive.
  Configure the Pinecone Vector Store nodes to use your company-files index.

nodes_used:
  ["@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsGoogleGemini","@n8n/n8n-nodes-langchain.documentDefaultDataLoader","@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter","@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.toolVectorStore","@n8n/n8n-nodes-langchain.vectorStorePinecone","@n8n/n8n-nodes-langchain.embeddingsGoogleGemini","n8n-nodes-base.googleDrive","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.googleDriveTrigger","@n8n/n8n-nodes-langchain.memoryBufferWindow","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.stickyNote"]

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

metadata_json:
[cell repeats an earlier one in this file: 210 characters]


name: Summarize the New Documents from Google Drive and Save Summary in Google Sheet
author_name: WeblineIndia
author_username: weblineindia
categories: []
created_at: 2025-01-20T04:56:30.203Z
updated_at: 2025-01-20T04:56:30.203Z
url: https://n8n.io/workflows/2754
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  This workflow is created by AI developers at WeblineIndia. It streamlines the process of managing content by automatically identifying and fetching the most recently added Google Doc file from your Google Drive. It extracts the content of the document for processing and leverages an AI model to generate a concise and meaningful summary of the extracted text. The summarized content is then stored in a designated Google Sheet, alongside relevant details like the document name and the date it was added, providing an organized and easily accessible reference for future use. This automation simplifies document handling, enhances productivity, and ensures seamless data management.

  Steps :
  Fetch the Most Recent Document from Google Drive
  Action:** Use the Google Drive Node.
  Details:** List files, filter by date to fetch the most recently added .doc file, and retrieve its file ID and metadata.

  Extract Content from the Document
  Action:** Use the Google Docs Node.
  Details:** Set the operation to "Get Content," pass the file ID, and extract the document's text content.

  Summarize the Document Using an AI Model
  Action:** Use an AI Model Node (e.g., OpenAI, ChatGPT).
  Details:** Provide the extracted text to the AI model, use a prompt to generate a summary, and capture the result.

  Store the Summarized Content in Google Sheets
  Action:** Use the Google Sheets Node.
  Details:** Append a new row to the target sheet with details such as the original document name, summary, and date added.

  About WeblineIndia
  WeblineIndia specializes in delivering innovative and custom AI solutions to simplify and automate business processes. If you need any help, please reach out to us.

nodes_used:
  ["n8n-nodes-base.googleDocs","@n8n/n8n-nodes-langchain.toolWikipedia","@n8n/n8n-nodes-langchain.toolCalculator","n8n-nodes-base.googleSheets","n8n-nodes-base.stickyNote","n8n-nodes-base.googleDriveTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

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

metadata_json:
  {"categories":["automation","document processing","AI summarization","productivity"],"complexity":"medium","use_cases":["Automatically summarize newly added Google Docs","Maintain a searchable summary index in Google Sheets","Content review and knowledge management","Onboarding and documentation tracking","Generating concise summaries for stakeholders"],"estimated_setup_minutes":20,"required_services":["Google Drive API (Google account)","Google Docs API","Google Sheets API","OpenAI API or compatible AI model","n8n (workflow runner)"],"key_features":["Fetch most recently added Google Doc from Drive","Extract full document text via Google Docs node","Generate concise summary using an AI model","Append summary, document name, and date to Google Sheet","Preserves metadata for easy reference and tracking"],"target_audience":["knowledge workers","content managers and editors","productivity-focused teams/administrators`,`developers/integrators`"]}


name: Jotform to KlickTipp Integration - Webinar registration
author_name: KlickTipp
author_username: KlickTipp
categories: []
created_at: 2025-01-20T09:28:25.362Z
updated_at: 2025-01-20T09:28:25.362Z
url: https://n8n.io/workflows/2755
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Community Node Disclaimer: This workflow uses KlickTipp community nodes.

  How It Works:  

  Jotform Webinar Registry Integration: This workflow streamlines the process of handling webinar registrations submitted via JotForm. It ensures the data is correctly formatted and seamlessly integrates with KlickTipp.  
  Data Transformation: Input data is validated and transformed to meet KlickTipp’s API requirements, including formatting phone numbers, converting dates, and validating URLs.  

  Key Features  

  JotForm Trigger:  
  Captures new form submissions, including participant details and webinar preferences.  

  Data Processing:  
  Standardizes and validates input fields  
  Converts phone numbers to numeric-only format with international prefixes.  
  Transforms dates into UNIX timestamps.  
  Validates LinkedIn URLs and applies fallback URLs if validation fails.  
  Scales numerical fields, such as work experience, for specific use cases.  

  Subscriber Management in KlickTipp:  
  Adds or updates participants as subscribers in KlickTipp.  
  Includes custom field mappings, such as:  
  	Personal information (name, email, phone number).  
  	Webinar details (chosen webinar, start date/time).  
  	Preferences (reminder intervals, questions for presenters).
  Tags contacts for segmentation: Adds fixed and dynamic tags to contacts.
    

  Error Handling:  
  Validates critical fields like phone numbers, URLs, and dates to prevent incorrect data submissions.  

  Setup Instructions  

  Install and Configure Nodes:  
  Set up the JotForm and KlickTipp nodes in your n8n instance.  
  Authenticate your JotForm and KlickTipp accounts.  

  Custom Field Preparation in KlickTipp:  
  Create the necessary custom fields to match the data structure:  

  | Field Name                          | Field Type   |
  |-----------------------------------------|------------------|
  | Jotform \| URL Linkedin                 | URL              |
  | Jotform \| Workexperience in Years      | Decimal Number   |
  | Jotform \| Webinar start timestamp      | Date & Time      |
  | Jotform \| Questions/Notes              | Text             |
  | Jotform \| Webinar                      | Text             |
  | Jotform \| Reminder                     | Text             |


  After creating fields, allow 10-15 minutes for them to sync. If fields don’t appear, reconnect your KlickTipp credentials.  

  Field Mapping and Adjustments:  
  Verify and customize field assignments in the workflow to align with your specific form and subscriber list setup.  

  Workflow Logic  

  Trigger via JotForm Submission: A new form submission from JotForm initiates the workflow  
  Data Transformation: Processes raw form data to ensure compatibility with KlickTipp’s API.  
  Add to KlickTipp Subscriber List: Adds participants to the designated KlickTipp list, including webinar-specific details.  
  Get all tags from KlickTipp and create a list:
  Fetches all existing Tags and turns them into an array

  Define tags to dynamically set for contacts: Definiton of variables that are received from the form submission and should be converted into tags

  Merge tags of both lists: Checks whether the list of existing tags in KlickTipp contains the tags which should be dynamically set based on the form submission

  Tag creation and tagging contacts: Creates new tags if it previously did not exist and then tags the contact



  Benefits  

  Efficient lead generation: Contacts from forms are automatically imported into KlickTipp and can be used immediately, saving time and increasing the conversion rate.  
  Automated processes: Experts can start workflows directly, such as welcome emails or course admissions, reducing administrative effort.  
  Error-free data management: The template ensures precise data mapping, avoids manual corrections and reinforces a professional appearance.  

  Testing and Deployment:  

  Test the workflow by filling the form on Jotform and verifying data updates in KlickTipp.  

  Notes:  

  Customization: Update field mappings within the KlickTipp nodes to align with your account setup. This ensures accurate data syncing.  

  Resources:  
  Jotform KlickTipp Knowledge Base help article
  Use KlickTipp Community Node in n8n
  Automate Workflows: KlickTipp Integration in n8n

nodes_used:
  ["n8n-nodes-klicktipp.klicktipp","n8n-nodes-base.set","n8n-nodes-base.jotFormTrigger","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-klicktipp.klicktipp","n8n-nodes-base.if","n8n-nodes-base.aggregate","n8n-nodes-klicktipp.klicktipp","n8n-nodes-base.aggregate","n8n-nodes-klicktipp.klicktipp","n8n-nodes-klicktipp.klicktipp","n8n-nodes-base.merge","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 7188 characters]

metadata_json:
  {"categories":["automation","integration","data processing","marketing automation"],"complexity":"medium","use_cases":["Automated webinar registration syncing","Lead capture from JotForm into KlickTipp","Contact segmentation and tagging based on form answers","Triggering follow-up workflows (reminders, welcome emails)","Data validation and normalization before CRM ingestion"],"estimated_setup_minutes":30,"required_services":["n8n","JotForm","KlickTipp (community node)"],"key_features":["JotForm trigger for new submissions","Data validation and transformation (phone formatting, UNIX timestamps, URL checks)","Custom field mapping to KlickTipp (including date, decimal, URL, text fields)","Add or update subscribers in KlickTipp","Dynamic tag resolution and creation; tagging contacts for segmentation
  "],"target_audience":["marketers","event organizers","growth/sales teams handling webinars and lead capture networks of contacts in KlickTipp users of n8n (automation authors)"]}


name: AI-Powered Candidate Shortlisting Automation for ERPNext
author_name: Amjid Ali
author_username: amjid
categories: []
created_at: 2025-01-20T19:58:00.264Z
updated_at: 2025-01-20T19:58:00.264Z
url: https://n8n.io/workflows/2757
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  Template Guide for Employee Shortlisting AI Agent Automation

  Overview
  This template automates the process of shortlisting job applicants using ERPNext, n8n, and AI-powered decision-making tools like Google Gemini and OpenAI. It reduces manual effort, ensures fast evaluations, and provides justifiable decisions about applicants. This is ideal for businesses aiming to streamline their recruitment process while maintaining accuracy and professionalism.

  YouTube Tutorial:** For a full walkthrough of this template, visit:  

    Integrate AI in ERPNext: Automate Recruitment Job Applicant Shortlisting in Seconds!

  What Does This Template Do?
  Webhook Integration with ERPNext: Automatically triggers the workflow when a job application is created in ERPNext.
  Resume Validation: Ensures resumes are attached and correctly processes various file formats like PDF and DOC.
  AI-Powered Evaluation: Uses AI to compare resumes against job descriptions and provides a:
     Fit Level (Strong, Moderate, or Weak)
     Score (0–100)
     Justification for the decision.
  Automated Decision Making: Based on AI-generated scores:
     Candidates with a score of 80 or higher are Accepted.
     Candidates below 80 are Rejected.
     Applications missing required fields or attachments are put On Hold.
  ERPNext Integration: Updates applicant records in ERPNext, including custom fields such as justification, fit level, and scores.
  Notifications: Notifies candidates via email, WhatsApp, or SMS about their application status.

  Step-by-Step Guide

  Step 1: Set Up ERPNext Webhook
  Go to Webhooks in ERPNext.
  Create a webhook for the Job Applicant DocType.
  Set the trigger to Insert.
  Pin and test the webhook to ensure proper data flow.

  Step 2: Import the Template into n8n
  Open your n8n instance.
  Import the provided workflow template.
  Check all nodes for proper configuration.

  Step 3: Configure Credentials
  Add your ERPNext API credentials to the ERPNext nodes.
  Add credentials for AI services like OpenAI or Google Gemini.
  Configure additional services like WhatsApp or email if you plan to use them for notifications.

  Step 4: Test Resume Validation
  Test how the workflow handles different file types (e.g., PDF, DOC, JPG).
  Ensure resumes without the proper format or attachment are flagged and rejected.

  Step 5: AI Evaluation
  The AI model (Google Gemini or OpenAI) will evaluate resumes against job descriptions.
  Customize the AI prompt to suit your job evaluation needs.
  The output will include a Fit Level, Score, Rating, and Justification.

  Step 6: Decision Automation
  The workflow automatically categorizes applicants:
    Accepted for scores ≥ 80.
    Rejected for scores &lt; 80.
    On Hold if essential fields or attachments are missing.

  Step 7: Update ERPNext Records
  The workflow updates the Job Applicant record in ERPNext with:
    Status (Accepted, Rejected, On Hold)
    AI-generated Fit Level, Score, Rating, and Justification.

  Step 8: Notify Candidates
  Configure notification nodes (email, WhatsApp, or SMS).
  Inform candidates about their application status and include feedback if required.

  How It Works
  Trigger: The workflow starts when a job application is submitted in ERPNext.
  Validation: Checks if the resume is attached and in the correct format.
  AI Evaluation: Compares the resume with the job description and generates a decision.
  ERPNext Update: Updates the applicant's record with the decision and justification.
  Notification: Sends a personalized notification to the candidate.

  Dos and Don’ts

  Dos:
  Customize Prompts:** Tailor the AI prompt to match your specific job evaluation requirements.
  Test the Workflow:** Run sample data to ensure the process works as intended.
  Secure Your Credentials:** Keep your API credentials safe and do not share them publicly.
  Optimize for Different Formats:** Ensure the workflow can handle all types of resumes you expect.

  Don’ts:
  Avoid Manual Intervention:** Let the workflow handle most of the tasks to ensure efficiency.
  Do Not Skip Testing:** Always test the workflow with various scenarios to avoid errors.
  Do Not Overlook Notifications:** Ensure candidates are notified promptly to maintain professionalism.

  Customization Options
  Add logic for more file types (e.g., scanned images using OCR).
  Enhance the AI prompts to analyze more complex resume data.
  Integrate additional tools like Slack or Trello for recruitment tracking.

  Resources
  GET n8n Now  

  N8N COURSE  
  n8n Book  

  YouTube Tutorial:** For a full walkthrough of this template, visit:  
    SyncBricks YouTube Channel
  Detailed Guides and Courses:** Learn more about ERPNext and AI-driven automation at:  
    SyncBricks LMS

  Support
  If you encounter issues or want to explore more possibilities with AI-driven automation, feel free to reach out:  
  Email:** amjid@amjidali.com  
  Website:** ERPNext and Other Courses  
  LinkedIn:** Amjid Ali

  Let me know if you'd like further details or modifications to the guide!

nodes_used:
  ["n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.erpNext","n8n-nodes-base.if","n8n-nodes-base.erpNext","n8n-nodes-base.stickyNote","n8n-nodes-base.erpNext","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatGoogleGemini","n8n-nodes-base.code","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.if","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.switch","n8n-nodes-base.httpRequest","n8n-nodes-base.extractFromFile","n8n-nodes-base.extractFromFile","n8n-nodes-base.merge","@n8n/n8n-nodes-langchain.agent","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.microsoftOutlook","n8n-nodes-base.stickyNote","n8n-nodes-base.whatsApp"]

workflow_json_compressed:
  [encoded data, 9076 characters]

metadata_json:
  {"categories":["automation","integration","recruiting/HR","AI-powered decisioning"],"complexity":"medium","use_cases":["Automated resume screening and shortlisting","Integrating ERPNext with AI for hiring decisions","Notifying candidates of application status","Adding explainability/justification to hiring decisions","Validating and normalizing resume attachments"],"estimated_setup_minutes":45,"required_services":["ERPNext (webhook & API access)","OpenAI or Google Gemini (LLM for evaluation)","Email provider (SMTP/SendGrid) and/or WhatsApp/SMS gateway (e.g., Twilio) for notifications"],"key_features":["Webhook trigger from ERPNext when application is created","Resume validation and multi-format handling (PDF, DOC, images)","AI evaluation producing Fit Level, Score (0–100) and Justification","Automated decisioning (Accept ≥80, Reject <80, On Hold for missing data)","Updates applicant records in ERPNext with custom fields (score, fit, justification) and status changes','Configurable notifications (email/WhatsApp/SMS) to candidates','Customizable AI prompts and extensible file/OCR handling"],"target_audience":["HR teams and recruiters","Hiring managers","Operations/automation engineers implementing ERPNext workflows\",\"Small and medium businesses looking to scale hiring processes"]}


name: AI-Driven Lead Management and Inquiry Automation with ERPNext & n8n
author_name: Amjid Ali
author_username: amjid
categories: []
created_at: 2025-01-20T20:28:59.526Z
updated_at: 2025-01-20T20:28:59.526Z
url: https://n8n.io/workflows/2758
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  Overview
  This workflow template automates lead management and customer inquiry processing by integrating ERPNext, AI agents, and email notifications. It streamlines the process of capturing leads, analyzing inquiries, and generating actionable responses. The workflow uses ERPNext to capture inquiries, analyzes them with AI, and notifies the appropriate team or individual, all while maintaining a professional approach.

  What This Template Does
  ERPNext Webhook Integration:
     Captures leads and inquiries through ERPNext webhooks.
     Triggers the workflow when a new lead is created.

  AI-Powered Inquiry Analysis:
     Uses AI to extract key details from lead notes (e.g., customer name, organization, inquiry summary).
     Classifies inquiries as valid or invalid based on relevance to products, services, or solutions.

  Contact Assignment:
     Matches inquiries to the appropriate contact(s) using a Google Sheets database or ERPNext contact information.
     Handles multiple contacts if required.

  Email Notifications:
     Generates professional email notifications for valid inquiries.
     Sends emails to the appropriate contact(s) with inquiry details and action steps.

  Invalid Lead Handling:
     Identifies invalid inquiries (e.g., unrelated to products or services) and flags them for follow-up or dismissal.

  Custom Email Formatting:
     Converts plain text into professionally formatted HTML emails.
     Ensures that communication is clear, concise, and visually appealing.

  How It Works

  Step 1: Capture Lead Data
  Webhook in ERPNext:**
    Create a webhook in ERPNext for the "Lead" DocType.
    Set the trigger to on_insert to capture new leads in real-time.

  Lead Details:**
    The workflow fetches lead details, including notes, contact information, and the source of the lead.

  Step 2: Validate and Analyze Inquiry
  AI Agent for Analysis:**
    An AI agent analyzes the lead notes to extract key details and classify the inquiry as valid or invalid.
    The analysis includes checking the relevance of the inquiry to products, services, or solutions offered by the company.

  Invalid Leads:**
    If the inquiry is invalid, the workflow flags it and stops further processing.

  Step 3: Assign Contact(s)
  Google Sheets Integration:**
    Uses a Google Sheets database to map products, services, or solutions to responsible contacts.
    Ensures that inquiries are directed to the right person or team.

  Multiple Contacts:**
    Handles cases where multiple contacts are responsible for a particular product or service.

  Step 4: Generate and Send Email Notifications
  AI-Generated Emails:**
    The workflow generates a professional email summarizing the inquiry.
    Emails include details like customer name, organization, inquiry summary, and action steps.

  Custom HTML Formatting:**
    Emails are converted to HTML for a polished and professional appearance.

  Send Notifications:**
    Sends email notifications through Microsoft Outlook or another configured email client.
    Optionally, notifies via WhatsApp or SMS for urgent inquiries.

  Step 5: Post-Inquiry Actions
  ERPNext Record Updates:**
    Updates the lead record in ERPNext with relevant details, including inquiry status and contact information.

  Setup Instructions

  Prerequisites
  ERPNext:
     A configured ERPNext instance with lead data and a webhook for the "Lead" DocType.
  Google Sheets:
     A sheet mapping products, services, or solutions to responsible contacts.
  AI Integration:
     Credentials for OpenAI or other supported AI platforms.
  Email Client:
     Credentials for Microsoft Outlook or another email client.

  Step-by-Step Setup
  ERPNext Configuration:
     Create a webhook for the "Lead" DocType in ERPNext.
     Test the webhook with sample data to ensure proper integration.

  Workflow Import:
     Import the workflow template into n8n.
     Configure nodes with your API credentials for ERPNext, Google Sheets, and AI tools.

  Google Sheets Integration:
     Prepare a Google Sheet with columns for product, service, or solution and the responsible contact(s).
     Link the sheet to the workflow.

  AI Agent Configuration:
     Customize the AI agent’s prompts to align with your business’s products and services.
     Adjust criteria for valid and invalid inquiries as needed.

  Email Setup:
     Configure the email client node with your email service credentials.
     Customize the email template for your organization.

  Testing:
     Run the workflow with sample leads to validate the entire process.
     Check email notifications, contact assignments, and record updates in ERPNext.

  Dos and Don’ts

  Dos:
  Test Thoroughly:** Test the workflow with various scenarios before deploying in production.
  Secure Credentials:** Keep API and email credentials secure to avoid unauthorized access.
  Customize Prompts:** Tailor AI prompts to match your business needs and language style.
  Use Professional Email Templates:** Ensure emails are clear and well-formatted.

  Don’ts:
  Skip Validation:** Always validate inquiry data to avoid sending irrelevant notifications.
  Overload the Workflow:** Avoid adding unnecessary nodes that can slow down processing.
  Ignore Errors:** Monitor logs and address errors promptly for a smooth workflow.

  Resources
  GET n8n Now  

  N8N COURSE  
  n8n Book  

  YouTube Tutorial:**  
    Watch the full step-by-step tutorial on setting up this workflow:  
    SyncBricks YouTube Channel

  Courses and Training:**  
    Learn more about ERPNext and AI automation through my comprehensive courses:  
    SyncBricks LMS

  Support and Contact:**  
    Email: amjid@amjidali.com  
    Website: SyncBricks  
    LinkedIn: Amjid Ali

nodes_used:
  ["@n8n/n8n-nodes-langchain.agent","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.googleSheetsTool","n8n-nodes-base.set","n8n-nodes-base.if","n8n-nodes-base.microsoftOutlook","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.googleDocsTool","n8n-nodes-base.googleDocsTool","n8n-nodes-base.googleSheetsTool","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.httpRequest","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook"]

workflow_json_compressed:
  [encoded data, 8776 characters]

metadata_json:
  {"categories":["automation","integration","CRM/lead management","AI-powered processing","notifications"],"complexity":"complex","use_cases":["Automated lead capture from ERPNext","AI classification and extraction of inquiry details","Assigning leads to responsible contacts via Google Sheets or ERPNext","Generating professional HTML email notifications","Updating ERPNext records and flagging invalid leads"],"estimated_setup_minutes":60,"required_services":["ERPNext instance (webhooks)","n8n instance","OpenAI or other AI provider credentials","Google Sheets (or similar spreadsheet)","Email service (Microsoft Outlook/SMTP)","Optional: WhatsApp/SMS gateway"],"key_features":["ERPNext webhook trigger for real-time lead capture","AI agent to extract key details and classify inquiries","Contact mapping via Google Sheets and multi-contact support","AI-generated, professionally formatted HTML emails","Email delivery via Outlook (or configured email node) and optional urgent notifications (SMS/WhatsApp)"],"target_audience":["Sales operations teams","Customer support / service teams","Marketing teams handling inbound leads」「System integrators and n8n developers"]}


name: Extract and process information directly from PDF using Claude and Gemini
author_name: Agent Studio
author_username: agentstudio
categories: []
created_at: 2025-01-21T07:44:36.708Z
updated_at: 2025-01-21T07:44:36.708Z
url: https://n8n.io/workflows/2764
scraped_at: 2025-09-14 19:11:01
metadata_generated_at: 2025-09-14 21:18:31
description:
  Overview
  This workflow helps you compare Claude 3.5 Sonnet and Gemini 2.0 Flash when extracting data from a PDF
  This workflow extracts and processes the data within a PDF in one single step, instead of calling an OCR and then an LLM”

  How it works
  The initial 2 steps download the PDF and convert it to base64.
  This base64 string is then sent to both Claude 3.5 Sonnet and Gemini 2.0 Flash to extract information.
  This workflow is made to let you compare results, latency, and cost (in their dedicated dashboard).

  How to use it
  Set up your Google Drive if not already done
  Select a document on your Google Drive
  Modify the prompt in "Define Prompt" to extract the information you need and transform it as wanted.
  Get a Claude API key and/or Gemini API key
  Note that you can deactivate one of the 2 API calls if you don't want to try both
  Test the Workflow

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

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

metadata_json:
  {"categories":["automation","data extraction","AI/ML integration","comparison/benchmarking"],"complexity":"medium","use_cases":["Extract structured data from PDFs using LLMs","Compare model outputs, latency, and cost (Claude vs Gemini)","Prototype PDF-to-structured-data pipelines without separate OCR","Validate prompt designs for document extraction"],"estimated_setup_minutes":20,"required_services":["n8n instance","Google Drive (for storing/selecting PDFs)","Claude 3.5 Sonnet (Anthropic) API key","Gemini 2.0 Flash (Google) API key / Google Cloud access"],"key_features":["Converts PDF to base64 and sends directly to LLMs in one step","Parallel extraction by Claude and Gemini for side-by-side comparison","Customizable prompt node to tailor extraction and output format","Optionally disable one of the model calls","Tracks outputs for comparing latency and cost in dashboards"],"target_audience":["developers","data engineers","ML/AI engineers and researchers doing model comparisons"]}


name: Automated Hugging Face Paper Summary Fetching & Categorization Workflow
author_name: quentin
author_username: quentin-royal
categories: []
created_at: 2025-01-21T09:33:22.365Z
updated_at: 2025-01-21T09:33:22.365Z
url: https://n8n.io/workflows/2765
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:32
description:
  How the Automated Workflow Works  
  Scheduled Fetching from Hugging Face ⏰  
  The workflow triggers every weekday at 8 AM, automatically fetching the latest papers from Hugging Face for easy access.  

  Duplication Check to Avoid Redundant Entries 🔍  
  It ensures the paper's summary is not already stored in your Notion workspace, preventing duplicate records and keeping your database organized.  

  Content Analysis with OpenAI 🧠  
  Using OpenAI's powerful capabilities, the workflow analyzes the fetched paper summary, extracts key insights, and categorizes the content for easier understanding.  

  Data Storage and Notification Integration 📥🔔  
  Once the summary is processed, it's automatically stored in your Notion workspace, and a notification containing the paper details is sent to your designated Slack channel for quick reference.

  Set Up Your Automated Workflow  
  Create Your n8n Account 📝  
  Start by registering for an n8n account and logging into the n8n cloud service.  

  Connect OpenAI, Notion, and Slack 🔗  
  Link your OpenAI, Notion, and Slack accounts by entering the appropriate tokens. This step will take approximately 10–15 minutes to complete.  

  Import the Workflow Template 📥  
  Import the provided workflow template into your n8n instance to streamline the setup process.  

  Activate the Workflow for Daily Summaries 🚀  
  After importing, simply enable the workflow, and you’re all set to receive daily paper summaries automatically.  

  Setup Time ⏳: Approximately 15–20 minutes.

  Why Use This Automated Workflow?  
  This automated workflow not only saves you time by fetching and categorizing the latest research papers but also helps streamline your Notion workspace and Slack notifications, allowing you to stay organized and efficient without manual intervention.

  Results Presentation

nodes_used:
  ["n8n-nodes-base.scheduleTrigger","n8n-nodes-base.if","n8n-nodes-base.splitInBatches","n8n-nodes-base.splitOut","n8n-nodes-base.httpRequest","n8n-nodes-base.html","n8n-nodes-base.notion","n8n-nodes-base.httpRequest","n8n-nodes-base.html","@n8n/n8n-nodes-langchain.openAi","n8n-nodes-base.notion","n8n-nodes-base.slack"]

workflow_json_compressed:
  H4sIAAAAAAAAE6WWTXPbNhCG/woHh564KfFBfOhU10kaz6R1J07aQ8aHBbCQOZZIlaQcOx799w5l11IVypaSC4czAF48WLy72HtWRTZhbz/J39v31/jx3TzF31TNcjanHtnknlV112Md6GyYJ4VThZAx6rKIroxJOOWE8C6WZeRGURI6KRSkQyBngkWFvkzOptLbYDzLWU/zxQx7Om0pdhfULxenzXwxo54im/TtklY5q3FObMJOln0zx55i9m45nVb1NHuLgbI/cUFtdrGcz7G9y95SH66GsZ+yU+xp2rTVV+yrps7+btrrNGu+DJvitGOTz5c5q5tIw+/9w8GliKVPROBM4qDICfBaEMTC+RhdkFZw9gR0Ea4oLmeUfWyr6ZTaQfluMYzUtoa1NHjs6FX3OHEzb9F01UDFJp9BaFXkIIviMmcLbHFOPbUdm9yvHvT+orZbT+WvxCp/JPU8qcJYAgzGgDIUwLkyQCpFis4mTJQ2pGdpL1uVdnC41EUOwr6II7ZwMGEoLPEhXA6U0gaspgSuMKSwJGvVVuDeN80iO7+hNjvrad7tj9tiVvVn9a/YhyvqdjmNPixs8onSFsajKgtwwTpQyVpAtAocT0qSxJiC3rreYffsfNk/z/cw4X9k7kAy/kRW2Bhl4iWIQhagbBKAvkiQbJmMM0Jb2orfB/pnSV0/kgd7Ua/6fvG4bNd+6kD7qa37TtJ4NNpBtJaDQozghIkQkCeF2nqHW7xvbvsWw5G889kuqCiOzxOnPDrnE6CUHpTkHFCRBquVK4h77zBuQE+vKFw/VpRPH95nb26rbqhE+yjrZg23c/2lOjiBcoazL3jXnS/7xbJ/jUORfah6j/wUyEYiAaSUAlWWBhCjg9LH4EsK0ZT6EGNkr6nHavYd/uBcHO8PhwOYkaCM5KAEJ3DaIQRf6FRK7XwRD/FHduK79dgxRnHf4ZNSeqF1IiATFCgrCnCCPBiL2qNBrWSxAT5fUH1ylp3UOLvrqm6E8pfa1j9vUGdYT8MVVvWrZlha7RBreyix3aSgcjxEk6B0lkDpFMHbIkChQkJntI5pK8QXfdPSE2f2x3/GPcLXcu0DcdS7UAorVKEJZCgJlHcebJkkoBTSKaE0J7UFSXXcBPUDdctZn13MMFzvL8GPo9+A8nU0v5C/aprrdbciojSFChxE6QtQqARYHhE495zr0nuz7kheOJtcXeYMQ1/dEJsknHWUs476vqqHnuKe0S2F5UBy3kZq2YTdcLbK2c2DwhokxVAWwREEaTioaAJ4jwRSI486+CjWxTM0dU1hkFoLn6XhO8dqOOPn+3XrclzKr9fmrKoj3bJJsbrMNzJ7n+RvFl2u8q2ncQzpOK3d2VuK24AvluZx0N0W7bgQvqQ+mlQ/HpJ9Zx1T3m7tRsX21qoxtUMycHeXfLP6+SIzivdMbzAK+G1TNir7zJ2OyR7SoYxbYH/AftwHL+f2cWcZeaeOvJPn3fPysziy3Wr1L79my7p2DgAA

metadata_json:
  {"categories":["automation","integration","research monitoring","knowledge management"],"complexity":"medium","use_cases":["Automatically fetch latest research papers from Hugging Face","Summarize and extract key insights using OpenAI","Prevent duplicate entries in a Notion knowledge base","Categorize and store paper summaries in Notion","Send notifications to Slack for new papers"],"estimated_setup_minutes":20,"required_services":["Hugging Face (papers API or RSS)","OpenAI (API)","Notion","Slack","n8n (cloud or self-hosted)"],"key_features":["Weekday scheduled fetching of new papers","Duplication check against Notion to avoid redundant records","Content analysis, summarization and categorization via OpenAI","Automatic storage of processed summaries in Notion","Slack notifications with paper details for quick reference"],"target_audience":["researchers","data scientists","knowledge managers / documentation teams」「developers / automation engineers"]}


name: Extract personal data with self-hosted LLM Mistral NeMo
author_name: Yulia
author_username: yulia
categories: []
created_at: 2025-01-21T10:08:30.509Z
updated_at: 2025-01-21T10:08:30.509Z
url: https://n8n.io/workflows/2766
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  This workflow shows how to use a self-hosted Large Language Model (LLM) with n8n's LangChain integration to extract personal information from user input. This is particularly useful for enterprise environments where data privacy is crucial, as it allows sensitive information to be processed locally.

  📖 For a detailed explanation and more insights on using open-source LLMs with n8n, take a look at our comprehensive guide on open-source LLMs.

  🔑 Key Features

  Local LLM
     Connect Ollama to run Mistral NeMo LLM locally
     Provide a foundation for compliant data processing, keeping sensitive information on-premises

  Data extraction
     Convert unstructured text to a consistent JSON format
     Adjust the JSON schema to meet your specific data extraction needs.

  Error handling
     Implement auto-fixing for LLM outputs
     Include error output for further processing

  ⚙️ Setup and сonfiguration

  Prerequisites

  n8n AI Starter Kit installed

  Configuration steps

  Add the Basic LLM Chain node with system prompts.
  Set up the Ollama Chat Model with optimized parameters.
  Define the JSON schema in the Structured Output Parser node.

  🔍 Further resources
  Run LLMs locally with n8n
  Video tutorial on using local AI with n8n

  Apply the power of self-hosted LLMs in your n8n workflows while maintaining control over your data processing pipeline!

nodes_used:
  ["@n8n/n8n-nodes-langchain.chatTrigger","@n8n/n8n-nodes-langchain.lmChatOllama","@n8n/n8n-nodes-langchain.outputParserAutofixing","@n8n/n8n-nodes-langchain.outputParserStructured","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.noOp","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"]

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

metadata_json:
  {"categories":["integration","data processing","AI/ML","privacy/compliance","automation"],"complexity":"medium","use_cases":["Extract personal data (PII) from unstructured text","On‑premises/compliant data processing","Normalize/unify user data into JSON schemas","Preprocessing for downstream workflows (CRM, ticketing, analytics)","Automated data extraction for HR/Support workflows"],"estimated_setup_minutes":60,"required_services":["n8n with AI Starter Kit","Ollama (self‑hosted)","Mistral NeMo model (hosted via Ollama)","LangChain integration (n8n)","On‑premises server or VM to run the local model"],"key_features":["Run LLM locally (Ollama + Mistral NeMo) to keep data on‑premises","Convert unstructured text to structured JSON output","Customizable JSON schema via Structured Output Parser node","Auto‑fixing/error‑handling for LLM outputs","Basic LLM Chain with system prompts (LangChain) for controlled responses"],"target_audience":["Developers integrating LLMs into workflows","DevOps/Platform engineers managing on‑prem models","Data engineers preparing structured data pipelines for PII-sensitive data teams (security/compliance)"]}


name: 🤖🔍 The Ultimate Free AI-Powered Researcher with Tavily Web Search & Extract
author_name: Joseph LePage
author_username: joe
categories: []
created_at: 2025-01-21T16:42:02.076Z
updated_at: 2025-01-21T16:42:02.076Z
url: https://n8n.io/workflows/2768
scraped_at: 2025-09-14 19:11:00
metadata_generated_at: 2025-09-14 21:18:31
description:
  🔍 This n8n workflow integrates Tavily's search and extract APIs with AI summarization capabilities to process web content efficiently.

  Quick Setup
  Get your Tavily API key from https://app.tavily.com/home
  Replace tvly-YOUR_API_KEY in the "Tavily API Key" node
  Connect your OpenAI credentials to the "OpenAI Chat Model" node
  Deploy the workflow and start the chat trigger

  Core Features
  Search & Extract 🎯
  Intelligent web searching with relevance filtering
  Automated content extraction from top results
  AI-powered content summarization in markdown format

  User Interaction 💬
  Chat-based search topic input
  Real-time processing pipeline
  Structured markdown output

  The workflow demonstrates practical implementation of Tavily's API endpoints while handling the complete process from search to summarization in a single automated pipeline.

nodes_used:
  ["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.set","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.httpRequest","@n8n/n8n-nodes-langchain.lmChatOpenAi","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.stickyNote","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chatTrigger","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 4628 characters]

metadata_json:
  {"categories":["automation","integration","data processing","research","AI"],"complexity":"medium","use_cases":["Automated web research and discovery","Article and result summarization","Content curation and knowledge base creation","Competitive intelligence and market monitoring","Quick evidence gathering for reports or briefs"],"estimated_setup_minutes":15,"required_services":["Tavily API (search & extract)","OpenAI (Chat model) or compatible LLM provider","n8n instance (where workflow runs)"],"key_features":["Tavily-powered web search with relevance filtering","Automated extraction of content from top search results","AI-powered summarization in structured Markdown","Chat-triggered user input for search topics","End-to-end pipeline from search to final summary output in real time\",\"Demonstrates use of Tavily API endpoints and OpenAI chat integration"],"target_audience":["Researchers","Content marketers and creators","Data analysts and knowledge managers\",\"Developers implementing AI research automations"]}


name: Gravity Forms to KlickTipp Integration - Feedback form
author_name: KlickTipp
author_username: KlickTipp
categories: []
created_at: 2025-01-21T17:03:13.432Z
updated_at: 2025-01-21T17:03:13.432Z
url: https://n8n.io/workflows/2769
scraped_at: 2025-09-14 19:11:03
metadata_generated_at: 2025-09-14 21:18:33
description:
  Community Node Disclaimer: This workflow uses KlickTipp community nodes.

  How It Works  

  Gravity Forms Customer Feedback Form Integration: This workflow streamlines the process of handling customer feedback submitted via Gravity Forms. It ensures the data is correctly formatted and seamlessly integrates with KlickTipp.  

  Data Transformation: Input data is validated and transformed to meet KlickTipp’s API requirements, including formatting phone numbers and converting dates.  

  Key Features  

  Gravity Forms Trigger  
  Captures new form submissions from Gravity Forms via a webhook and initiates the workflow.  

  Data Processing and Transformation  
  Formats and validates essential data:  
    Converts phone numbers to numeric-only format with international prefixes.  
    Transforms dates (e.g., birthdays) to UNIX timestamps.  
    Calculates and scales numeric responses (e.g., webinar ratings).  
    Parses webinar selections into timestamps for structured scheduling.  

  Subscriber Management in KlickTipp  
  Adds or updates contacts in a KlickTipp subscriber list.  
  Includes custom field mappings such as:  
    Personal details (name, email, birthday, phone number).  
    Feedback and preferences (e.g., webinar ratings, chosen sessions).  
    Structured answers from form responses.
  Tags contacts for segmentation: Adds fixed and dynamic tags to contacts.
    

  Error Handling  
  Ensures invalid or empty data is handled gracefully, preventing workflow interruptions.  

  Setup Instructions  

  Install and Configure Nodes:  
  Set up the Webhook, Set, and KlickTipp nodes in your n8n instance.  
  Authenticate your Gravity Forms and KlickTipp accounts.  

  Prepare Custom Fields in KlickTipp:  
  Create fields in KlickTipp to align with the form submission data, such as:  

  | Field Name                               | Field Type   |
  |----------------------------------------------|------------------|
  | Gravityforms \| URL Linkedin                 | URL              |
  | Gravityforms \| Course/webinar start timestamp | Date & Time      |
  | Gravityforms \| Course/webinar rating        | Decimal Number   |
  | Gravityforms \| Feedback                     | Text             |
  | Gravityforms \| Contact permission           | Text             |

  After creating fields, allow 10-15 minutes for them to sync. If fields don’t appear, reconnect your KlickTipp credentials.  

  Field Mapping and Adjustments:  
  Verify and customize field assignments in the workflow to align with your specific form and subscriber list setup.  

  Workflow Logic  

  Trigger via Gravity Forms Submission:  
     The workflow begins when a new form submission is received through the webhook.  

  Transform Data for KlickTipp:  
     Formats and validates raw form data for compatibility with KlickTipp’s API.  

  Add to KlickTipp Subscriber List:  
     Adds processed data as a new subscriber or updates an existing one.  

  Get all tags from KlickTipp and create a list: Fetches all existing Tags and turns them into an array

  Define tags to dynamically set for contacts: Definiton of variables that are received from the form submission and should be converted into tags

  Merge tags of both lists:
  Checks whether the list of existing tags in KlickTipp contains the tags which should be dynamically set based on the form submission

  Tag creation and tagging contacts: Creates new tags if it previously did not exist and then tags the contact


  Benefits  

  Efficient lead generation: Contacts from forms are automatically imported into KlickTipp and can be used immediately, saving time and increasing the conversion rate.  
  Automated processes: Experts can start workflows directly, such as welcome emails or course admissions, reducing administrative effort.  
  Error-free data management: The template ensures precise data mapping, avoids manual corrections and reinforces a professional appearance.  

  Testing and Deployment  

  Test the workflow by filling the form on Gravity Forms and verifying data updates in KlickTipp.  

  Notes  

  Customization: Update field mappings within the KlickTipp nodes to align with your account setup. This ensures accurate data syncing.  

  Resources:  
  Gravity Forms KlickTipp Knowledge Base help article
  Use KlickTipp Community Node in n8n
  Automate Workflows: KlickTipp Integration in n8n

nodes_used:
  ["n8n-nodes-klicktipp.klicktipp","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-klicktipp.klicktipp","n8n-nodes-base.if","n8n-nodes-base.aggregate","n8n-nodes-klicktipp.klicktipp","n8n-nodes-base.aggregate","n8n-nodes-klicktipp.klicktipp","n8n-nodes-klicktipp.klicktipp","n8n-nodes-base.merge","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.webhook","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 6452 characters]

metadata_json:
  {"categories":["integration","automation","data processing"],"complexity":"medium","use_cases":["Import Gravity Forms submissions into KlickTipp","Automated contact/tag management and segmentation","Collecting and processing customer feedback","Automated webinar/session scheduling from form selections","Triggering follow-up workflows (welcome emails, course admission)"],"estimated_setup_minutes":30,"required_services":["n8n","Gravity Forms (with webhook enabled)","KlickTipp (uses KlickTipp community node)","HTTP accessible endpoint for Gravity Forms webhook"],"key_features":["Webhook trigger for Gravity Forms submissions","Data validation and transformation (phone normalization, date → UNIX timestamp)","Numeric scaling and parsing of form responses (e.g., ratings)","Parsing webinar/session selections into structured timestamps","Add or update subscribers in KlickTipp with custom field mappings and tags creation/assignment (dynamic and fixed tags, tag merging/checks to avoid duplicates)"],"target_audience":["marketers","growth teams","operations/automation engineers using n8n"]}


name: AI Data Extraction with Dynamic Prompts and Airtable
author_name: Jimleuk
author_username: jimleuk
categories: []
created_at: 2025-01-21T18:38:26.344Z
updated_at: 2025-01-21T18:38:26.344Z
url: https://n8n.io/workflows/2771
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  This n8n template introduces the Dynamic Prompts Ai workflow pattern which are incredible for certain types of data extraction tasks where attributes are unknown or need to remain flexible.

  The general idea behind this pattern is that the prompts for requested attributes to be extracted live outside the template and so can be changed at any time - without needing to edit the template. This seriously cuts down on maintainance requirements and is reusable for any number of tables at little cost.

  Check out the video demo I did for n8n Studio here: https://www.youtube.com/watch?v=_fNAD1u8BZw

  Check out the example Airtable here: https://airtable.com/appAyH3GCBJ56cfXl/shrXzR1Tj99kuQbyL

  Looking for the Baserow Version? https://n8n.io/workflows/2780-ai-data-extraction-with-dynamic-prompts-and-baserow/

  How it works
  Given we have an "input" field for context and a number of fields for the data we want to extract, this template will run in the background to react to any changes to either the "input" or fields and automatically update the rows accordingly.
  The key is that Airtable fields have a special property called the "field description". In this pattern, we use this property to allow the user to store a simple prompt describing the data that should exist in the column.
  Our n8n template reads these column descriptions aka "prompts" to use as instructions to perform tasks on the "input".
  In this template, the "input" is a PDF of a resume/CV and the columns are attributes a HR person would want to extract from it - such as full name, address, last position, years of experience etc.

  How to use
  First publish this template and ensure it's accessible via webhook URL.
  You then have to run the "create airtable webhooks" mini-flow to configure your Airtable to send change events to the n8n template. This mini-flow exists in the template but you'll have to update the IDs.

  Check the template for more instructions.

  Requirements
  Airtable for Tables/Database
  OpenAI for LLM and extraction. Feel free to choose another LLM if preferred.

  Customising this workflow
  If you're not using files, you can replace the "input" field with anything you like. For example, the "input" could be single line text.

nodes_used:
  ["n8n-nodes-base.switch","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.extractFromFile","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.code","n8n-nodes-base.splitInBatches","n8n-nodes-base.noOp","n8n-nodes-base.httpRequest","n8n-nodes-base.extractFromFile","n8n-nodes-base.set","@n8n/n8n-nodes-langchain.chainLlm","n8n-nodes-base.filter","n8n-nodes-base.filter","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.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.lmChatOpenAi","n8n-nodes-base.stickyNote","@n8n/n8n-nodes-langchain.lmChatOpenAi","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.airtable","n8n-nodes-base.webhook","n8n-nodes-base.manualTrigger","n8n-nodes-base.set","n8n-nodes-base.airtable","n8n-nodes-base.set","n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 11056 characters]

metadata_json:
  {"categories":["automation","data extraction","AI/ML","integration"],"complexity":"medium","use_cases":["Resume/CV parsing and candidate attribute extraction","Automated structured data extraction from documents (PDFs)","Keeping extraction prompts editable outside the workflow (dynamic prompts)","Auto-updating Airtable records on input changes","Reusable document-to-table data ingestion pipeline"],"estimated_setup_minutes":45,"required_services":["Airtable","OpenAI (or another LLM provider)","n8n (hosted or self-hosted)","Webhook endpoint (n8n webhook or public URL)"],"key_features":["Dynamic prompts stored in Airtable field descriptions","LLM-driven extraction (OpenAI) from PDF or other input","Automatic reaction to changes in input or target fields via webhooks","Mini-flow to create Airtable webhooks (requires ID updates)","Reusable across different tables and attribute sets without editing the workflow"],"target_audience":["Developers/automation engineers","Data engineers","HR teams and recruiters implementing resume parsing automation\",\"No-code/low-code power users"]}


name: Realtime Notion Todoist 2-way Sync with Redis
author_name: Mario
author_username: octionic
categories: []
created_at: 2025-01-21T22:51:02.952Z
updated_at: 2025-01-21T22:51:02.952Z
url: https://n8n.io/workflows/2772
scraped_at: 2025-09-14 19:11:02
metadata_generated_at: 2025-09-14 21:18:31
description:
  Purpose

  This solution enables you to manage all your Notion and Todoist tasks from different workspaces as well as your calendar events in a single place.

  All tasks can be managed in Todoist and additionally Fantastical can be used to manage scheduled tasks & events all together.

  Demo & Explanation

  How it works

  The realtime sync consists of two workflows, both triggered by a registered webhook from either Notion or Todoist
  To avoid overwrites by lately arriving webhook calls, every time the current task is retrieved from both sides.
  Redis is used to prevent from endless loops, since an update in one system triggers another webhook call again. Using the ID of the task, the trigger is being locked down for 15 seconds.
  Depending on the detected changes, the other side is updated accordingly.
  Generally Notion is treaded as the main source. Using an "Obsolete" Status, it is guaranteed, that tasks never get deleted entirely by accident.
  The Todoist ID is stored in the Notion task, so they stay linked together
  An additional full sync workflow daily fixes inconsistencies, if any of them occurred, since webhooks cannot be trusted entirely.
  Since Todoist requires a more complex setup, a tiny workflow helps with activating the webhook.
  Another tiny workflow helps generating a global config, which is used by all workflows for mapping purposes.

  Mapping (Notion &gt;&gt; Todoist)

  Name: Task Name
  Priority: Priority (1: do first, 2: urgent, 3: important, 4: unset)
  Due: Date
  Status: Section (Done: completed, Obsolete: deleted)
  &lt;page_link&gt;: Description (read-only)
  Todoist ID: &lt;task_id&gt;

  Current limitations

  Changes on the same task cannot be made simultaneously in both systems within a 15-20 second time frame
  Subtasks are not linked automatically to their parent yet
  Recurring tasks are not supported yet
  Tasks names do not support URL’s yet

  Prerequisites

  Notion
  A database must already exist (get a basic template here) with the following properties (case matters!):
    Text: "Name"
    Status: "Status", containing at least the options "Backlog", "In progress", "Done", "Obsolete"
    Select: "Priority", containing the options "do first", "urgent", "important"
    Date: "Due"
    Checkbox: "Focus"
    Text: "Todoist ID"
  Todoist
  A project must already exist with the same sections like defined as Status in Notion (except Done and Obsolete)
  Redis
  Create a Free Redis Cloud instance or self-host

  Setup



  The setup involves quite a lot of steps, yet many of them can be automated for business internal purposes.

  Just follow the video or do the following steps:
  Setup credentials for Notion (access token), Todoist (access token) and Redis - you can also create empty credentials and populate these later during further setup
  Clone this workflow by clicking the "Use workflow" button and then choosing your n8n instance - otherwise you need to map the credentials of many nodes.
  Follow the instructions described within the bundle of sticky notes on the top left of the workflow

  How to use

  You can apply changes (create, update, delete) to tasks both in Notion and Todoist which then get synced over within a couple of seconds (this is handled by the differential realtime sync)
  The daily running full sync, resolves possible discrepancies in Todoist and sends a summary via email, if anything needed to be updated. In case that contains an unintended change, you can jump to the Task from the email directly to fix it manually.

nodes_used:
  ["n8n-nodes-base.httpRequest","n8n-nodes-base.httpRequest","n8n-nodes-base.notion","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.form","n8n-nodes-base.form","n8n-nodes-base.if","n8n-nodes-base.crypto","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.form","n8n-nodes-base.webhook","n8n-nodes-base.httpRequest","n8n-nodes-base.respondToWebhook","n8n-nodes-base.respondToWebhook","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.formTrigger","n8n-nodes-base.formTrigger","n8n-nodes-base.form","n8n-nodes-base.todoist","n8n-nodes-base.notion","n8n-nodes-base.compareDatasets","n8n-nodes-base.if","n8n-nodes-base.todoist","n8n-nodes-base.if","n8n-nodes-base.notion","n8n-nodes-base.todoist","n8n-nodes-base.todoist","n8n-nodes-base.todoist","n8n-nodes-base.splitInBatches","n8n-nodes-base.notion","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.code","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.redis","n8n-nodes-base.crypto","n8n-nodes-base.httpRequest","n8n-nodes-base.filter","n8n-nodes-base.aggregate","n8n-nodes-base.set","n8n-nodes-base.splitInBatches","n8n-nodes-base.if","n8n-nodes-base.redis","n8n-nodes-base.redis","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.scheduleTrigger","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.merge","n8n-nodes-base.set","n8n-nodes-base.filter","n8n-nodes-base.code","n8n-nodes-base.set","n8n-nodes-base.html","n8n-nodes-base.html","n8n-nodes-base.set","n8n-nodes-base.gmail","n8n-nodes-base.merge","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.executeWorkflowTrigger","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.notion","n8n-nodes-base.notion","n8n-nodes-base.notion","n8n-nodes-base.notion","n8n-nodes-base.notion","n8n-nodes-base.filter","n8n-nodes-base.redis","n8n-nodes-base.redis","n8n-nodes-base.todoist","n8n-nodes-base.filter","n8n-nodes-base.todoist","n8n-nodes-base.crypto","n8n-nodes-base.httpRequest","n8n-nodes-base.code","n8n-nodes-base.if","n8n-nodes-base.redis","n8n-nodes-base.filter","n8n-nodes-base.redis","n8n-nodes-base.filter","n8n-nodes-base.notion","n8n-nodes-base.noOp","n8n-nodes-base.notion","n8n-nodes-base.filter","n8n-nodes-base.switch","n8n-nodes-base.if","n8n-nodes-base.executionData","n8n-nodes-base.executionData","n8n-nodes-base.executionData","n8n-nodes-base.executionData","n8n-nodes-base.executionData","n8n-nodes-base.set","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.todoist","n8n-nodes-base.notion","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.filter","n8n-nodes-base.if","n8n-nodes-base.filter","n8n-nodes-base.filter","n8n-nodes-base.redis","n8n-nodes-base.notion","n8n-nodes-base.redis","n8n-nodes-base.filter","n8n-nodes-base.redis","n8n-nodes-base.if","n8n-nodes-base.set","n8n-nodes-base.filter","n8n-nodes-base.set","n8n-nodes-base.filter","n8n-nodes-base.if","n8n-nodes-base.filter","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.webhook","n8n-nodes-base.notion","n8n-nodes-base.todoist","n8n-nodes-base.httpRequest","n8n-nodes-base.set","n8n-nodes-base.todoist","n8n-nodes-base.crypto","n8n-nodes-base.httpRequest","n8n-nodes-base.redis","n8n-nodes-base.todoist","n8n-nodes-base.code","n8n-nodes-base.todoist","n8n-nodes-base.httpRequest","n8n-nodes-base.executionData","n8n-nodes-base.executionData","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.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.webhook","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.executeWorkflow","n8n-nodes-base.set","n8n-nodes-base.splitOut","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.switch","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote","n8n-nodes-base.webhook","n8n-nodes-base.switch","n8n-nodes-base.executeWorkflow","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.filter","n8n-nodes-base.if","n8n-nodes-base.noOp","n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.stopAndError","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.stickyNote","n8n-nodes-base.set","n8n-nodes-base.set","n8n-nodes-base.wait","n8n-nodes-base.if","n8n-nodes-base.if","n8n-nodes-base.stopAndError","n8n-nodes-base.stickyNote","n8n-nodes-base.code","n8n-nodes-base.splitOut","n8n-nodes-base.notion","n8n-nodes-base.stickyNote","n8n-nodes-base.stickyNote"]

workflow_json_compressed:
  [encoded data, 35828 characters]

metadata_json:
  {"categories":["integration","automation","synchronization","productivity"],"complexity":"complex","use_cases":["Two-way realtime sync of tasks between Notion and Todoist","Centralizing task management and calendar events across workspaces","Preventing sync loops and reconciling conflicts with a daily full sync","Keeping Notion as the source of truth while reflecting changes in Todoist","Sending summary notifications of sync corrections"],"estimated_setup_minutes":60,"required_services":["Notion API (Notion workspace/database)","Todoist API (project with matching sections)","Redis (Cloud instance or self‑hosted) for locking","n8n (self-hosted or cloud) to run workflows","Email service (SMTP/SendGrid/etc.) for daily summaries","Optional: Fantastical (for calendar consolidation)"],"key_features":["Realtime 2-way sync via webhooks between Notion and Todoist","Redis-based locking to prevent webhook-induced update loops","Field mapping (Name, Priority, Due, Status, Todoist ID, description link)","Notion treated as primary source with an 'Obsolete' status to avoid accidental deletions","Daily full sync workflow to fix inconsistencies and send email summaries if changes were made or required adjustments are detected"],"target_audience":["n8n users and automators","Teams or individuals using both Notion and Todoist for task management","Developers / IT admins setting up integrations and sync logic for teams"]}


