by Julien DEL RIO
📌 Description This workflow serves a 1x1 transparent PNG image via a webhook, which can be embedded in an email to track when the email is opened. When the image is loaded by the recipient's email client, the webhook is triggered, optionally capturing a userId to identify who opened the email. 📂 Workflow Steps Webhook Trigger (Request img) Path: /webhook/change-with-your-id Triggered by an HTTP request (e.g. when the image is loaded in an email). Accepts a query parameter id to identify the recipient. Set Base64 Data (Create data pix) Creates a variable data containing a Base64-encoded transparent PNG image (1x1 pixel). Convert to Binary (Create img bin) Converts the Base64 data string into a binary file. Sets MIME type to image/png. Respond to Webhook (Respond to Webhook) Sends the binary image file in the HTTP response. Logging (Do anything to log) Placeholder node to log or process the id or request metadata. You can access the id using {{$json"query"}}. You can also use any parameter you want ✉️ How to Use in Emails Embed the image in an HTML email like this: When the email is opened and the image is loaded, the workflow will be triggered. 🛠️ Notes Some email clients block images by default; this may prevent tracking. You can enhance the workflow to store open events in a database, log the timestamp, IP, or user agent. Make sure to comply with data privacy and consent regulations (e.g. GDPR).
by Thomas
🧠 Writes original, thought-provoking blog posts using AI 🕓 Runs every 12 hours automatically ✍️ Publishes directly to Ghost blog with title, tags, and SEO meta 🔧 Features Scheduled every 12 hours OpenAI generates a multi-part blog post with metadata Markdown-compatible output (no HTML) Automatically published to Ghost CMS using authenticated API (🔐 no hardcoded keys) Fully modular and general-purpose — edit prompt for any blog theme! ⚙️ Nodes Overview Step Node Type Purpose 1️⃣ Schedule Trigger Runs every 12 hours 2️⃣ OpenAI Generates blog post + meta info 3️⃣ Code Extracts content, title, meta, and tags 4️⃣ Code Formats content as Ghost mobiledoc payload 5️⃣ HTTP Request Publishes post to Ghost via Admin API 📝 OpenAI Prompt (Generalized) Write a high-quality blog post on a creative or thought-provoking topic. The tone should be engaging and immersive. Length: 2–4 paragraphs. Then add a brief paragraph offering an alternative perspective or logical counterpoint. Finally, generate: Blog post title Meta description 5 tags 🔐 Notes ✅ No hardcoded API keys 🛠️ Ghost Admin API credentials must be set using the Credential Manager 📌 Prompt and Ghost URL are both easily customizable
by Ange Russell
This workflow fetches real-time air quality and pollen data using Ambee’s APIs and sends a friendly, personalized daily summary by email. It uses a scheduler to automate data collection, AI-generated health tips, and clear, actionable messages—perfect for sensitive users (e.g. kids with asthma, allergy sufferers). Use Case: Ideal for individuals with respiratory conditions, allergies, or those who want to stay informed about environmental conditions affecting their health. Set up steps Estimated time: 10–15 minutes You'll need: Ambee API key (free registration) OpenAI API key Email credentials (Gmail) User Profile 💡 Keep in mind: You’ll need to input your location coordinates (we’ve pre-filled Braunschweig as an example). The AI Agent node uses a ready-made prompt that’s tailored for email—but feel free to adapt it to other messaging platforms.
by mahavishnu
This automation runs daily at 8:00 AM to automatically collect and organize business idea insights from IdeaBrowser.com into a structured Google Docs document. The workflow performs the following actions: Data Collection: Fetches the "idea of the day" content from ideabrowser.com/idea-of-the-day using authenticated HTTP requests. Content Processing: Extracts the base idea path and generates links to all related insight pages including value ladder, market analysis, proof signals, execution plans, and community insights. The workflow also cleans the HTML content to extract readable text. Document Creation: Creates a new Google Docs document in a specified folder with a timestamp and idea name in the title format. Content Aggregation: Systematically visits each insight page (main idea page, value ladder, why now, proof signals, market gap, execution plan, value equation, value matrix, ACP, community signals, and keywords) and collects their content. Document Population: Processes the collected content through markdown formatting and appends it to the Google Docs document, creating a comprehensive report of the daily business idea with all its associated insights. Automated Scheduling: Runs automatically every day at 8 AM, ensuring you have fresh business idea analysis delivered to your Google Drive without manual intervention. This automation is perfect for entrepreneurs, business analysts, or anyone who wants to stay updated with curated business ideas and their detailed market analysis in an organized, searchable format.
by bangank36
This workflow automates the Mark as Fulfilled action in Shopify for each order, ensuring a seamless fulfillment process without manual intervention. How It Works This workflow retrieves all unfulfilled orders and processes their fulfillment automatically. Since Shopify requires a Fulfillment Order ID (not Order ID) to trigger fulfillment, the workflow follows these steps: 1️⃣ Get all unfulfilled orders using the Shopify node. 2️⃣ Retrieve the Fulfillment Order ID using the "List Fulfillment Orders" action. 3️⃣ Create a fulfillment request using "Mark fulfillment order as fulfilled." 4️⃣ Handle edge cases, such as partially fulfilled orders or API errors. This ensures that every valid order is marked as fulfilled efficiently. 🔗 Ongoing discussions on this topic: Relevant Shopify API Discussion Step-by-step The workflow can be run as requested or on schedule You can adjust these parameters within the Shopify and filter nodes: Shopify Admin URL – A Global node to customize the Shopify store URL. To find your Shopify store ID, login into your Shopify admin, then look at the URL in your browser's address bar, the subdomain portion (e.g., example_store_id.myshopify.com) is your store ID (in this case: example_store_id) Order Filtering – Ensures only valid orders are fulfilled, particularly useful if: You sell digital downloads or gift cards exclusively. You use third-party fulfillment services for all products. Credentials To run this workflow, you'll need: Shopify API Key – Required for authentication. Who Is This For? Shopify store owners looking to automate their fulfillment process. Merchants selling digital or personalized products who need instant fulfillment. Explore More Templates 👉 Check out my other n8n templates
by Joachim Brindeau
Are you looking to install external libraries for your self-hosted N8N instance? This automated workflow makes adding npm packages to your N8N environment quick and effortless. Beware, this workflow only works on self-hosted instances. What This Workflow Does This solution automatically installs npm packages like axios, cheerio, or node-fetch in your self-hosted N8N Docker container, making them immediately available in Code nodes. Key features ✅ Automated Installation: No manual npm commands needed ✅ Daily Updates: Scheduled trigger keeps packages current ✅ Smart Installation: Only installs missing packages ✅ Multiple Triggers: Manual, scheduled, and on startup of the N8N instance so you can upgrade your N8N version without worrying about external libraries. How to install and update external libraries automatically Step 1: Setting Up Your Environment Variables Before using external libraries in N8N Code nodes, configure these environment variables in your Docker comppose file. Option A to allow specific external npm packages in N8N Code nodes NODE_FUNCTION_ALLOW_EXTERNAL=axios,cheerio,node-fetch Option B to allow all external npm packages in Code nodes NODE_FUNCTION_ALLOW_EXTERNAL=* Step 2: Import the external packages workflow Import the workflow into your N8N instance by copy pasting all nodes. Step 3: Input the list of external libraries you need Edit the libraries_set node Change the comma-separated list (e.g., axios,cheerio,node-fetch). If you chose Option A above, update your NODE_FUNCTION_ALLOW_EXTERNAL variable with the same packages Step 4: Start the workflow! Run the workflow manually or let it trigger automatically Why use this to install NPM packages in N8N? Managing external packages manually in N8N can be time-consuming. This workflow automates the entire process, making sure your libraries are always installed and up-to-date.
by Miquel Colomer
Disclaimer: This template contains a community node and therefore only works for n8n self-hosted users== This is Miquel from Aprende n8n and Automate with n8n. We have created a new community node Document Generator that generates dynamic content using templates. You can compose complex content with no SETs or FUNCTION ITEMs nodes using this node, like: Send one email with a list of items in the body (i.e., one email with the last entries of an RSS feed). Send one email per item (i.e., one invoice per email). Emails are just a sample. You can create complex dynamic content to: Send messages to Telegram/Slack. Create WordPress entries. Create HTML pages for your website. Create tickets. And more! The sky is your limit ;) If you want to use this workflow, install the community node n8n-nodes-document-generator from Settings > Community nodes. Type "n8n-nodes-document-generator", check "I understand the risks..." and click on "Install": Later, copy and paste this workflow into your n8n. You will get this workflow: This workflow uses the Customer Datastore node to generate sample input items. You can render one template with all items (enable "Render All Items with One Template"): or one template per input item: Visit the oficial NPM page to see more samples. Learning n8n by yourself is nice, but a bit tricky :) We offer n8n training video courses at Aprende n8n. If you need custom trainings, let us know. Additionally, you can contact us at Automate with n8n if you need the next services: Custom installations. Custom nodes. Monitor and alarms. Delegate 12/5 or 24/7 workflow issue resolutions. Automated backups of your workflows. HTTP integrations of non-supported APIs. Complex workflows. I hope you will enjoy this new node and this workflow. Automate your life! Automate it with n8n!
by phil
This workflow automates the process of summarizing or transcribing a WordPress article, converting the text into speech using Eleven Labs API, and uploading the resulting MP3 file back to WordPress. How It Works Trigger – The workflow starts manually when the user clicks “Test Workflow”. Retrieve Article – It fetches a WordPress article based on a given post ID. Summarize or Transcribe – An LLM (GPT-4o-mini) generates either: • A summary of the article, or • A full transcription, depending on the chosen prompt. Generate Speech – The processed text (summary or transcription) is converted into an MP3 audio file using Eleven Labs API. Upload MP3 to WordPress – The generated MP3 file is uploaded to WordPress. Update WordPress Post – The article is updated with an embedded audio player, allowing users to listen to the summary or transcription. Set Up Steps WordPress API Credentials • Configure your WordPress API credentials in n8n. Eleven Labs API Key • Obtain an API Key from Eleven Labs and configure it in n8n. Choose Between Summary or Transcription • Modify the AI prompt to either generate a summary or keep the full transcription. Test the Workflow • Run the workflow and ensure the MP3 file is correctly generated and uploaded. 💡 Customization Options • Modify the AI prompt to switch between a summary and a transcription. • Change the voice model in Eleven Labs for different speech styles. • Adjust output format to higher/lower quality MP3. 🚀 This automation improves content accessibility and engagement by allowing users to listen to a summarized or full version of the article. Phil | Inforeole
by Oneclick AI Squad
This n8n workflow monitors email alerts for disk utilization exceeding 80%, extracts the server IP, logs into the server, and purges logs from Nginx, PM2, Docker, and system files to clear disk space. Key Insights Ensure email alerts are consistently formatted with server IP details. SSH access must be properly configured to avoid authentication failures. Workflow Process Initiate the workflow with the Check Disk Alert Emails node when an email triggers on high disk usage. Parse the email to extract the server IP using the Extract Server IP from Email node. Set up SSH credentials and paths manually with the Prepare SSH Variables node. Execute cleanup commands to delete logs from Nginx, PM2, Docker, and system files using the Run LogCleanup Commands via SSH node. Usage Guide Import the workflow into n8n and configure email and SSH credentials. Test with a sample email alert to verify IP extraction and log deletion. Prerequisites Email service (e.g., IMAP or API) for alert monitoring SSH access with valid credentials Customization Options Modify the Prepare SSH Variables node to target specific log directories or adjust cleanup commands for different server setups.
by Danger
Automated Execution Pruning This workflow is designed to help you manage and optimize your n8n instance by automatically pruning old workflow executions, ensuring a cleaner environment and improved performance. You can customize the retention period to suit your needs. Key Features: Configurable Retention Period: The workflow is preconfigured to delete workflow executions older than 10 days. You can easily adjust this duration by modifying the condition in the If node. Daily Automation: Using the Schedule Trigger, the workflow runs daily at the specified time (default: 4:44 AM), retrieving all workflow executions and identifying those that are older than the defined retention period. On-Demand Testing: The Manual Trigger allows you to test the workflow at any time, ensuring everything is working as expected. Decision Making: The If node evaluates each execution based on its start date and determines whether it should be deleted or retained. Execution Pruning: Delete Action: Executions meeting the criteria are removed via the Delete Execution node. No-Operation: Executions that don't meet the criteria remain untouched. Workflow Nodes: Manual Trigger: Enables on-demand testing of the workflow. Schedule Trigger: Runs the workflow daily at the configured time. n8n List Execution: Fetches all executions in your n8n instance. If Node: Compares the execution's start date with the configured retention period. Delete Execution: Deletes executions older than the specified retention period. No Operation: Serves as a placeholder for executions that don't meet the pruning criteria. How to Customize: Retention Period**: Update the If node's condition to modify the retention period. For instance, change 10 * 24 * 60 * 60 * 1000 to the desired number of days in milliseconds. Schedule**: Adjust the timing of the Schedule Trigger to match your preferred automation schedule. This workflow ensures your instance remains efficient by keeping only the relevant execution logs. Use it to maintain a streamlined and clutter-free environment effortlessly.
by Harshil Agrawal
This workflow demonstrates how to use currentRunIndex to get the running index. Function node: This node generates mock data for the workflow. Replace it with the node whose data you want to split into batches. SplitInBatches node: This node splits the data with the batch size equal to 1. Based on your use-case, set the value of the Batch Size. IF node: This node checks the running index. If the running index equals 5 the node returns true and breaks the loop. The node uses the expression {{$node["SplitInBatches"].context["currentRunIndex"];}}, which returns the running index. Set node: This node prints a message Loop Ended. Based on your use-case, connect the false output of the IF node to the input of the node you want to execute if the condition is false.
by Yaron Been
Bytedance Seedance 1 Pro Video Generator Description A pro version of Seedance that offers text-to-video and image-to-video support for 5s or 10s videos, at 480p and 1080p resolution Overview This n8n workflow integrates with the Replicate API to use the bytedance/seedance-1-pro model. This powerful AI model can generate high-quality video content based on your inputs. Features Easy integration with Replicate API Automated status checking and result retrieval Support for all model parameters Error handling and retry logic Clean output formatting Parameters Required Parameters prompt** (string): Text prompt for video generation Optional Parameters fps** (string, default: 24): Frame rate (frames per second) seed** (integer, default: None): Random seed. Set for reproducible generation image** (string, default: None): Input image for image-to-video generation duration** (string, default: 5): Video duration in seconds resolution** (string, default: 1080p): Video resolution aspect_ratio** (string, default: 16:9): Video aspect ratio. Ignored if an image is used. camera_fixed** (boolean, default: False): Whether to fix camera position How to Use Set up your Replicate API key in the workflow Configure the required parameters for your use case Run the workflow to generate video content Access the generated output from the final node API Reference Model: bytedance/seedance-1-pro API Endpoint: https://api.replicate.com/v1/predictions Requirements Replicate API key n8n instance Basic understanding of video generation parameters