Obsidian Note to Email Sender with Attachment Handling - n8n Workflow

Use this powerful n8n workflow to instantly convert Obsidian notes into professional emails via Gmail. Features attachment processing, YAML metadata parsing, and instant confirmation responses.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?


  • Technical writers or researchers who use Obsidian and need to share notes quickly via email.

  • Automation enthusiasts looking for advanced n8n templates for note-taking application integration.

  • Users needing a robust n8n workflow to manage base64 data and file conversion for email attachments.

  • Anyone seeking to extend Obsidian's functionality using webhooks and custom n8n node configurations.

Overview

This advanced n8n workflow solves the problem of seamlessly integrating a local knowledge management system (Obsidian) with a major email client (Gmail). By leveraging the Obsidian Post Webhook plugin, users can trigger the entire process directly from within their notes. The key value provided by this specific n8n workflow lies in its sophisticated handling of email metadata, which is extracted from YAML frontmatter, and its robust process for converting embedded attachments (like images) from base64 encoding into usable binary files for the Gmail n8n node. This ensures that whether you send a simple text email or a complex document with multiple attachments, the n8n automation handles the delivery flawlessly, providing instant feedback back to Obsidian.

How it Works

This powerful n8n automation is initiated by a webhook call from Obsidian:


  1. Trigger: The n8n trigger is a Webhook node, waiting for a POST request from the Obsidian Post Webhook plugin containing the note content, YAML metadata (recipient, subject), and base64-encoded attachments.

  2. Attachment Check: An If n8n node checks if the payload includes any attachments. This creates two distinct execution paths.

  3. Test Handling (No Attachments Path): If no attachments are present, a second If n8n node checks if the request is a simple plugin test. If it is a test, the n8n workflow immediately responds with 'Test successful'. If it's a real email, the process proceeds directly to the Email Without Attachments Gmail n8n node.

  4. Attachment Processing (Attachments Path): If attachments exist, the Separate attachment data n8n node splits the incoming attachment array. A Set n8n node (Fix Base64 string) cleans up the base64 data by removing the MIME type prefix. The Convert Attachment to File n8n node converts this clean base64 string into binary data.

  5. Aggregation & Sending: The Prepare Attachments for Email n8n node aggregates all processed binary files. The Email With Attachments Gmail n8n node then sends the complete email, dynamically populating fields like 'To', 'CC', 'BCC', and 'Subject' using expressions referencing the original webhook data.

  6. Confirmation: Regardless of which path the email took, a Date & Time n8n node captures the current timestamp. The Respond to Obsidian n8n node then sends a final confirmation back to the originating note in Obsidian, confirming the email was successfully sent along with the exact date and time.

Installation Guide

To deploy this useful n8n workflow, follow these steps:


  1. Import: Copy the provided n8n workflow JSON code and import it into your n8n instance via the 'Workflows' section.

  2. Credentials: Set up or select your existing Gmail OAuth2 credentials in both the Email With Attachments and Email Without Attachments Gmail n8n node instances.

  3. Webhook Setup: Navigate to the Webhook n8n trigger node. Activate the n8n workflow and copy the unique Test/Production Webhook URL.

  4. Obsidian Plugin: Install the 'Obsidian Post Webhook plugin'. Paste the copied n8n Webhook URL into the plugin settings.

  5. Testing: Create a note in Obsidian, add the required YAML frontmatter (to, subject, content), and trigger the 'Send to Webhook' command to start using this efficient n8n automation.

Node Details

Webhook (n8n trigger): The entry point for the entire n8n workflow. It listens for a POST request from Obsidian, containing all the email data, including content and base64 attachments.
Check if attachments exist (If n8n node): Determines the flow path based on the presence of the body.attachments array in the incoming data. This is crucial for optimizing the n8n automation.
Separate attachment data (SplitOut n8n node): Essential for handling multiple attachments by splitting the array into individual items so that each can be processed separately by a subsequent n8n node.
Fix Base64 string (Set n8n node): Cleans the attachment data by using an expression to remove the unnecessary data:image/jpeg;base64, prefix, ensuring the Convert Attachment to File n8n node can correctly parse the payload.
Convert Attachment to File (Convert To File n8n node): This key n8n node converts the base64 string data property into binary data, which is required by the Gmail n8n node for sending actual attachments.
Prepare Attachments for Email (Aggregate n8n node): Collects all the individually converted binary items back together, aggregating them for efficient transmission in a single email.
Gmail (n8n node): Used twice (Email With Attachments and Email Without Attachments). It sends the email, dynamically mapping fields like recipient lists and subject using data extracted from the initial n8n trigger.
Respond to Obsidian (Respond to Webhook n8n node): Provides immediate feedback to the source application (Obsidian), confirming the completion of the n8n workflow execution.

Related n8n Workflows

Free

Nodes: 11 Nodes
Updated: December 26 2025
View all
Created by
Obsidi8n
Obsidi8n