Workflow Templates
Discover and use pre-built workflows to automate your tasks
4365 templates found
Discover and use pre-built workflows to automate your tasks
4365 templates found
by Nick Saraev
Website AI Agent with Calendar Integration Categories: AI Agents, Website Integration, Calendar Automation This workflow creates a complete website AI agent that can be embedded on any website with just a few lines of code. The agent handles customer inquiries, provides business information, and automatically books meetings by checking calendar availability in real-time. Built for simplicity and business practicality, this system proves that effective AI agents don't need to be overcomplicated. Benefits Universal Website Integration** - Works with WordPress, Webflow, Squarespace, custom sites, or any platform that accepts HTML Intelligent Calendar Management** - Checks availability and books meetings automatically without double-booking Business-Ready Conversations** - Trained with specific business context and maintains professional, helpful interactions Real-Time Functionality** - All changes to the N8N workflow are immediately reflected on your live website No Technical Complexity** - Simple architecture that prioritizes reliability and consistent outputs over flashy features Customizable Branding** - Easy to modify appearance, messages, and behavior to match your brand How It Works Embedded Chat Interface: Generates embeddable HTML code that creates a chat widget on any website Provides both hosted and embedded modes for different use cases Handles all communication between website visitors and the AI system Intelligent Conversation Management: Uses sophisticated system prompts to maintain context about your business Handles common inquiries about services, pricing, and company information Gracefully redirects off-topic conversations back to business matters Smart Calendar Integration: Connects to Google Calendar to check real-time availability Automatically suggests meeting times based on your schedule Collects all necessary information (name, email, preferred time) before booking Meeting Booking Process: Validates meeting requests against existing calendar entries Confirms all details with users before creating calendar events Sends automatic invitations with proper timezone handling Required Setup Configuration System Message Requirements: Your AI agent needs a comprehensive system message that includes: Business Identity:** Company name, services, location, timezone Business Context:** What you offer, pricing information, key differentiators Conversation Rules:** How to handle inquiries, booking procedures, moderation guidelines Personality Instructions:** Tone of voice, response style, conversation length preferences Example System Message Structure: You are a helpful, intelligent website chatbot for [Company Name], a [business type]. The current date is [dynamic date]. You are in the [timezone] timezone. Business Context: We offer [services] with [key benefits] Our pricing is [pricing structure] We work with [target customers] Your task is answering questions about the business & booking meetings. For meetings: use calendar function to check availability, collect name/email/preferred time, confirm details. Rules: Keep responses short and conversational Stay focused on business topics Always confirm timezone when discussing meeting times Google Calendar Setup: Enable Google Calendar API in Google Cloud Console Create OAuth2 credentials for N8N Connect your business calendar in the Google Calendar nodes Set correct timezone in both nodes to match your business location Website Integration: Switch chat trigger to "embedded" mode Copy the provided CDN embed code Paste code into your website's HTML (before closing body tag) Replace webhook URL with your production URL Business Use Cases Service Businesses** - Automate initial consultations and lead qualification Agencies** - Handle project inquiries and schedule discovery calls Consultants** - Streamline the booking process for potential clients E-commerce** - Provide product support and schedule demos Any Business** - Replace contact forms with intelligent conversation Revenue Potential This system can replace expensive chatbot services that cost $100-500/month. The automated booking feature alone typically increases meeting conversion rates by 40-60% compared to traditional contact forms. Difficulty Level: Beginner Estimated Build Time: 15-20 minutes Monthly Operating Cost: ~$10 (OpenAI API usage) Watch My 13-Minute Build Want to see exactly how I built this from scratch? I walk through the complete setup process in real-time, including all the configuration, testing, and website integration. 🎥 See My Complete Build Process: "How to Build a Website AI Agent in 13 Min (Free N8N Template)" This step-by-step tutorial shows you my exact process for creating business-ready AI agents that actually make money, not just impressive demos. Set Up Steps Basic Agent Configuration: Create new N8N workflow with AI Agent node Connect OpenAI Chat Model with your API credentials Add Window Buffer Memory for conversation context System Message Setup: Configure detailed business context and operating instructions Set timezone and personality parameters for consistent responses Define conversation rules and moderation guidelines Google Calendar Integration: Set up Google Calendar credentials through Google Cloud Console Configure "Get All Events" tool for availability checking Set up "Create Event" tool for automated booking Website Embedding: Switch chat trigger to "embedded" mode for website integration Copy the provided CDN embed code Paste code into your website's HTML with your webhook URL Customization Options: Modify initial messages and branding in the embed code Adjust colors and styling using CSS variables Configure timezone settings to match your business location Testing & Optimization: Test complete conversation flows from inquiry to booking Verify calendar integration works correctly with your timezone Optimize system prompts based on actual user interactions Advanced Features Extend this system with additional capabilities: CRM Integration** - Automatically add leads to your sales pipeline Multi-language Support** - Handle conversations in different languages Custom Business Logic** - Add specific qualification questions or routing Analytics Tracking** - Monitor conversation patterns and conversion rates Check Out My Channel For more practical automation systems that generate real business value, check out my YouTube channel where I share the exact strategies I used to scale my automation agency to $72K/month.
by Nskha
Overview This n8n workflow is specifically designed to monitor USDT TRC20 transactions within a specified wallet. It utilizes the public blockchain database of TronScan, requiring no API authentication, to periodically check and process transaction data. This workflow is ideal for users who need an automated solution to track their TRC20 wallet transactions. Features Automated Tracking**: Executes every 15 minutes to capture new transactions. Customizable Filters**: Tailors the tracking based on specific parameters like transaction time and wallet addresses. Data Aggregation**: Compiles transaction data into a single, structured list. Formatted Outputs**: Presents transaction data in an organized and comprehensible format. Requirements N8N (self-hosted or cloud version) setup and operational. Basic understanding of N8N workflows and nodes. Setup and Configuration Import Workflow: Load the provided JSON workflow into your N8N instance. Configure Edit Fields Node: Enter your TRC20 wallet address in the 'Your Wallet Address' field. Adjust 'Number of transactions to retrieve per request' if necessary. (Default one set to 20 which is recommanded) TronScan Data Access: The workflow accesses TronScan's public blockchain data, so no additional configuration is required for API access. Schedule Trigger Node: Defaulted to trigger every 15 minutes. Modify as per your requirements. Test the Workflow: Execute the workflow manually to ensure everything is operating correctly. How it Works Schedule Trigger: Initiates the workflow at predetermined intervals. Edit Fields: Sets up the wallet address and transaction retrieval count. TronScan Data Retrieval: Gathers transaction data from the TRC20 wallet using TronScan's public database. Split Out & Filter: Processes and filters the transaction data. Final Results: Organizes and formats the required transaction data for review. Aggregate: Consolidates all records (items) into a one comprehensive list (item). Customization Modify the filter conditions and fields to suit your tracking needs. (for example you can higher or lower the number of time to filter or IN / OUT transactions - Default is 15m/IN) Adjust the schedule trigger frequency according to your preference (default is 15m). Best Practices Regularly test the workflow to ensure consistent performance. Stay updated with any changes to the structure of TronScan's public data that might affect the workflow. Contributing Your feedback and contributions are greatly appreciated. Feel free to adapt, modify, and share enhancements with the n8n community.
by Fahmi Oktafian
Who's it for This workflow is perfect for SEO specialists, marketers, bloggers, and content creators who want to automate keyword research using Google Sheets, Google Suggest, and Google Custom Search. Ideal for those building content pipelines, researching trends, or powering AI content generation with fresh search data. What it does This workflow automates the process of discovering a new keyword daily. It: Rotates through a keyword list in Google Sheets Selects one keyword per day Fetches autocomplete suggestions from Google Suggest Queries the Google Custom Search API for top results Returns structured JSON containing titles, links, and snippets How it works Manual Trigger – Initiates workflow manually Google Sheets – Reads keywords from a sheet (column: Title or Keyword) Code Node – Selects a daily keyword based on the number of days since July 4, 2025 Set Node – Saves the selected keyword as seed_keyword HTTP Request – Fetches autocomplete suggestions from Google Suggest API Function Node – Parses suggestions into usable items HTTP Request – Calls Google Custom Search API for each suggestion Code Node – Formats the search results into JSON How to set up Connect your Google Sheets OAuth2 credentials in n8n Use credential variables for Google Custom Search (⚠️ do not hardcode your key and cx) Replace the sample sheet ID with your own Run the workflow manually or schedule it daily Requirements Google account Enabled Custom Search JSON API on Google Cloud Google Sheet with a column labeled Title or Keyword n8n instance (cloud or self-hosted) How to customize Change the start date to control the keyword rotation cycle Randomize keyword selection instead of rotating Enrich results using tools like Ahrefs or SEMrush Push final output to Telegram, Notion, Slack, or Airtable Add filtering logic based on CPC, volume, or duplicates Example Sheet 📄 Click Here to access the example Google Sheet Sheet must contain a column Title or Keyword in the first row: Title teknologi AI berita viral tren startup
by Nskha
This N8N workflow automates the process of sharing files from Google Drive. It includes OAuth2 authentication, batch processing, public link generation, and access status modification for efficient file handling. Suitable for users seeking to streamline their Google Drive file sharing process. sutiable for bulk actions, tested on 4.2K files folder working like charm. How It Works Initialize Workflow: The process begins with a Manual Trigger, allowing the user to start the workflow at their convenience. Folder ID Specification: A 'Set Folder ID' node where the user can enter the desired Google Drive Folder ID. List Files from Google Drive: The 'Google Drive' node lists all files within the specified folder using OAuth2 authentication. Batch Processing: The 'Loop Over Items' node processes the files in batches for efficiency. Generate Public Links: The 'Generate Download Links' node creates downloadable links for each file. Change File Access: The 'Change Status' node alters the file status to make them publicly accessible. Merge and Output: A 'Merge' node consolidates the data, preparing it for further actions or output. Set Up Steps Estimated Time**: The setup should take approximately 10-15 minutes. Initial Setup**: You'll need to provide OAuth2 credentials for Google Drive and specify a folder ID. Customization**: Adjust the batch size and file access permissions according to your needs. Detailed Descriptions**: For specific configuration details, refer to the sticky notes within the workflow. Example Item output { "link": "https://drive.google.com/u/3/uc?id=1hojqPfXchNTY8YRTNkxSo-8txK9re-V4&export=download&confirm=t&authuser=0", "name": "firefox_rNjA0ybKu7.png", "kind": "drive#permission", "id": "anyoneWithLink", "type": "anyone", "role": "reader", "allowFileDiscovery": false } You can store the output data with any data store node you want, for example save them into Excel Sheet or Airtable etc... Keywords: n8n workflow, Google Drive integration, file sharing automation, batch file processing, public link generation, OAuth2 authentication, workflow automation
by Niklas Hatje
Use Case This workflow is a slight variation of a workflow we're using at n8n. In most companies, employees have a lot of great ideas. That was the same for us at n8n. We wanted to make it as easy as possible to allow everyone to add their ideas to some formatted database - it should be somewhere where everyone is all the time and could add a new idea without much extra effort. Since we're using Slack, this seemed to be the perfect place to easily add ideas. In this example, we're adding the ideas to Google Sheets instead of Notion, like we do. What this workflow does This workflow waits for a webhook call within Slack, that gets fired when users use the /idea command on a bot that you will create as part of this template. It then checks the command, adds the idea to Google Sheets and notifies the user about the newly added idea as you can see below: Creating your Slack bot Visit https://api.slack.com/apps, click on New App and choose a name and workspace. Click on OAuth & Permissions and scroll down to Scopes -> Bot token Scopes Add the chat:write scope Head over to Slash Commands and click on Create New Command Use /idea as the command Copy the test URL from the Webhook node into Request URL Add whatever feels best to the description and usage hint Go to Install app and click install Setup Create a Google Sheets document with the columns Name and Creator Add your Google credentials Fill the Set me up node. Create your Slack app (see other sticky) Click Test workflow and use the /idea comment in Slack Activate the workflow and exchange the Request URL with the production URL from the webhook How to adjust it to your needs You can adjust the table in Google Sheets and for example, add different types of ideas or areas that they impact Rename the Slack command as it works best for you How to enhance this workflow At n8n we use this workflow in combination with some others. E.g. we have the following things on top: We additionally have a /bug Slack command that adds a new bug to Linear. Here we're using AI to classify the bugs and move it to the right team. (Bug command workflow and Ai Classifier workflow) We also added other types, like /pain to be less solution-driven To make it easier for everyone to give input, we added a Votes column that allows everyone to vote on ideas/pain points in the list We're also running a workflow once a week that highlights the most popular new ideas and the most active voters
by Ryan
Who is this template for? This template is for any Microsoft Outlook user who wants a trained AI agent to reason and reply on their behalf. Teach your agent tone and writing style to replicate your own, or develop a persona for a shared inbox. Requirements Outlook with authentication credentials OpenAI account with authentication credentials A few sample email replies of various lengths and topics How it works: Connect your Outlook account. Select (filter) which email sender(s) your trained AI agent will reply to. [Tip: pick a sender that has some repeatability either with a topic (ie. sales) or an individual (coworker@yourcompany.com)] Connect your OpenAI account. Choose your AI model (ie. gpt-4o-mini) Add Prompt (User Message) and select "system message" from the option below Update the instructions by filling in your name (or persona), response style, and add full email replies from the topic or individual you want the AI agent to emulate. [Tip: Add actual replies from your email sent folder, including your greeting and sign off. Paste each email sample between a set of <example> .... </example> tags] Configure the reply (or reply all) to remain within the original email string Test it! Send an email from the address to which your agent wants to respond. Check your sent (or draft) folder for the result. Enjoy all the free time you now have!! If you have questions or need assistance, email us at: support@teambisonandbird.com ++This template does not include retrieving email addresses out of the message or body of the email.++
by Viktor Klepikovskyi
Google Sheets UI for Workflow Control This n8n template provides a practical and efficient way to manage your n8n workflows using Google Sheets as a user-friendly interface. It demonstrates how to leverage a simple spreadsheet to control inputs, capture outputs, and track the processing status of individual data rows, offering a clear and visual overview of your automation tasks. Purpose of This Template: The primary purpose of this template is to illustrate how Google Sheets can serve as a dynamic UI for your n8n automations. It's designed for n8n users who need: A structured method to feed specific data into their workflows. The ability to selectively trigger workflow execution based on data status. A centralized place to view and store workflow outputs alongside original inputs. A simple, no-code solution for managing workflow data without building custom applications. Setup Instructions: To use this template, follow these steps: Create a Google Sheet: Set up a new Google Sheet (see the template here) with three columns: Color, Status, and Number. Populate the Color column with some sample data (e.g., color names) and set the Status for the rows you want to process to READY. Import the n8n Workflow: Import this n8n template into your n8n instance. Configure Google Sheets Nodes: For the first Google Sheets node (Read operation), ensure it's connected to your newly created Google Sheet and configured to read rows where the Status column is READY. You will need to authenticate your Google Sheets account. For the second Google Sheets node (Update operation), ensure it's also connected to the same Google Sheet. The node should automatically map the row_number, Number, and Status fields from the preceding nodes. Execute the Workflow: Run the workflow. Observe how it reads READY rows, processes them (calculates string length), and updates the Number and Status columns in your Google Sheet to DONE. Control Execution: To process new data, simply add new rows to your Google Sheet and set their Status to READY. Rerunning the workflow will then only process these new entries. For more details and context on this approach, you can refer to the related blog post here.
by Daniel Nolde
What it is: In version 1.78, n8n introduced a dedicated node to use the OpenRouter service, which lets you to use a lot of different LLM models and providers and change models on the fly in an agentic workflow. For prior n8n versions, there's a workaround to make OpenRouter accessible, by using the OpenAI node with a OpenRouter-specific BaseURL. This trivial workflow demonstrates this for version before 1.78, so that you can use different LLM model dynamically with the available n8n nodes for OpenAI LLM and OpenAI credentials. What you can do: Use any of the OpenRouter models Have the model even dynamically configured or changing (by some external config, some rule, or some specific chat message) Setup steps: Import the workflow Ensure you have registered and account, purchased some credits and created and API key for OpenRouter.ai Configure the "OpenRouter" credentials with your own credentials, using an OpenAI type credential, but making sure in the credential's config form its "Base URL" is set to https://openrouter.ai/api/v1 so OpenRouter is used instead of OpenAI. Open the "Settings" node and change the model value to any valid model id from the OpenRouter models list or even have the model property set dynamically
by Yar Malik (Asfandyar)
Intro This template is for project managers, team leads, or anyone who wants to automatically remind teammates of tasks due today—no manual copy‑and‑paste required. How it works Schedule Trigger runs every morning at 8 AM. Google Sheets node reads your “Tasks” sheet. If node filters rows where Due Date = today. Summarize (ChatGPT HTTP Request) generates a friendly reminder per person. Message a model sends the prompt to your ChatGPT Assistant and returns the AI response. Send a message (Gmail) emails each assignee their personalized reminder. Required Google Sheet Structure | Column Name | Type | Example | Notes | |-------------|--------|---------------------------|-------------------------| | Name | string | Alice Johnson | Person to remind | | Email | string | user@example.com | Recipient email address | | Task | string | Submit quarterly report | Task description | | Due Date | date | 2025‑07‑29 | Format: YYYY‑MM‑DD | Detailed Setup Steps Google Sheets Create your sheet with the columns above. In n8n → Credentials, add Google Sheets API (do not include real sheet IDs in the name). ChatGPT Assistant In the OpenAI Dashboard → Assistants, click Create Assistant. Choose a model (e.g., gpt-4), copy the Assistant ID. In n8n → Credentials → OpenAI, add your API Key and Assistant ID. Gmail In n8n → Credentials → Gmail (OAuth2 or SMTP), connect your account without embedding your real address in the credential name. Import & Configure Export this workflow’s JSON (three‑dot menu → Export). Paste it under Template Code in the Creator form. In each node, select your Google Sheets, OpenAI, and Gmail credentials. Sticky Notes A note on the Schedule node: “Set your desired run time.” A note on the ChatGPT node: “Customizes reminder text.” A note on the Gmail node: “Sends reminder email.” Customization Guidance Change schedule: edit the Cron expression in **Schedule Trigger. Adjust tone**: modify the system prompt in your ChatGPT Assistant. Email format: update **Subject and Body in the Gmail node. Batch processing: insert a **SplitInBatches node before Summarize for large sheets. Troubleshooting Ensure your Google Sheet is shared with the connected service account. Verify Due Date format (YYYY‑MM‑DD). If ChatGPT fails, check your API key and quota. Security & Best Practices Do not** hard‑code API keys, sheet IDs, or real emails. Use n8n Credentials or environment variables only. Remove any private information before submitting.
by Audun
Send structured logs to BetterStack from any workflow using HTTP Request Who is this for? This workflow is perfect for automation builders, developers, and DevOps teams using n8n who want to send structured log messages to BetterStack Logs. Whether you're monitoring mission-critical workflows or simply want centralized visibility into process execution, this reusable log template makes integration easy. What problem is this workflow solving? Logging failures or events across multiple workflows typically requires duplicated logic. This workflow solves that by acting as a shared log sender, letting you forward consistent log entries from any other workflow using the Execute Workflow node. What this workflow does Accepts level (e.g., "info", "warn", "error") and message fields via Execute Workflow Trigger Sends the structured log to your BetterStack ingestion endpoint via HTTP Request Uses HTTP Header Auth for secure delivery Includes a manual trigger for testing and a sample call to demonstrate usage Comes with clear sticky notes to help you get started Setup Copy your BetterStack Logs ingestion URL. Create a Header Auth credential in n8n with your Authorization: Bearer YOUR_API_KEY. Replace the URL in the HTTP Request node with your BetterStack endpoint. Optionally modify the test data or log levels for custom scenarios. Use Execute Workflow in any of your workflows to send logs here.
by Oneclick AI Squad
This n8n template demonstrates how to create a comprehensive voice-powered restaurant assistant that handles table reservations, food orders, and restaurant information requests through natural language processing. The system uses VAPI for voice interaction and PostgreSQL for data management, making it perfect for restaurants looking to automate customer service with voice AI technology. Good to know Voice processing requires active VAPI subscription with per-minute billing Database operations are handled in real-time with immediate confirmations The system can handle multiple simultaneous voice requests All customer data is stored securely in PostgreSQL with proper indexing How it works Table Booking & Order Handling Workflow Voice requests are captured through VAPI triggers when customers make booking or ordering requests The system processes natural language commands and extracts relevant details (party size, time, food items) Customer data is immediately saved to the bookings and orders tables in PostgreSQL Voice confirmations are sent back through VAPI with booking details and estimated wait times All transactions are logged with timestamps for restaurant management tracking Restaurant Info Provider Workflow Info requests trigger when customers ask about hours, menu, location, or services Restaurant details are retrieved from the restaurant_info table containing current information Wait nodes ensure proper data loading before voice response generation Structured restaurant information is delivered via VAPI in natural, conversational format Database Schema Bookings Table booking_id (PRIMARY KEY) - Unique identifier for each reservation customer_name - Customer's full name phone_number - Contact number for confirmation party_size - Number of guests booking_date - Requested reservation date booking_time - Requested time slot special_requests - Dietary restrictions or special occasions status - Booking status (confirmed, pending, cancelled) created_at - Timestamp of booking creation Orders Table order_id (PRIMARY KEY) - Unique order identifier customer_name - Customer's name phone_number - Contact for order updates order_items - JSON array of food items and quantities total_amount - Calculated order total order_type - Delivery, pickup, or dine-in special_instructions - Cooking preferences or allergies status - Order status (received, preparing, ready, delivered) created_at - Order timestamp Restaurant_Info Table info_id (PRIMARY KEY) - Information entry identifier category - Type of info (hours, menu, location, contact) title - Information title description - Detailed information content is_active - Whether info is currently valid updated_at - Last modification timestamp How to use The manual trigger can be replaced with webhook triggers for integration with existing restaurant systems Import the workflow into your n8n instance and configure VAPI credentials Set up PostgreSQL database with the required tables using the schema provided above Configure restaurant information in the restaurant_info table Test voice commands such as "Book a table for 4 people at 7 PM" or "What are your opening hours?" Customize voice responses in VAPI nodes to match your restaurant's tone and branding The system can handle multiple concurrent voice requests and scales with your restaurant's needs Requirements VAPI account for voice processing and natural language understanding PostgreSQL database for storing booking, order, and restaurant information n8n instance with database and VAPI integrations enabled Customising this workflow Voice AI automation can be adapted for various restaurant types - from quick service to fine dining establishments Try popular use-cases such as multi-location booking management, dietary restriction handling, or integration with existing POS systems The workflow can be extended to include payment processing, SMS notifications, and third-party delivery platform integration
by ist00dent
This n8n template lets you instantly serve batches of inspirational quotes via a webhook using the free ZenQuotes API. It’s perfect for developers, content creators, community managers, or educators who want to add dynamic, uplifting content to websites, chatbots, or internal tools—without writing custom backend code. 🔧 How it works A Webhook node listens for incoming HTTP requests on your chosen path. Get Random Quote from ZenQuotes sends an HTTP Request to https://zenquotes.io/api/random?count=5 and retrieves five random quotes. Format data uses a Set node to combine each quote (q) and author (a) into a single string: "“quote” – author". Send response returns a JSON array of objects { quote, author } back to the caller. 👤 Who is it for? This workflow is ideal for: Developers building motivational Slack or Discord bots. Website owners adding on-demand quote widgets. Educators or trainers sharing daily inspiration via webhooks. Anyone learning webhook handling and API integration in n8n. 🗂️ Response Structure Your webhook response will be a JSON array, for example: [ { "quote": "Life is what happens when you're busy making other plans.", "author": "John Lennon" }, { "quote": "Be yourself; everyone else is already taken.", "author": "Oscar Wilde" } ] ⚙️ Setup Instructions Import the workflow JSON into your n8n instance. In the Webhook node, set your desired path (e.g., /inspire). (Optional) Change the count parameter in the HTTP Request node to fetch more or fewer quotes. Activate the workflow. Test by sending an HTTP GET or POST to https://<your-n8n-domain>/webhook/<path>.