Send emails via Gmail from Obsidian
How it Works
- This n8n template makes it possible to send emails directly from your Obsidian notes.
- It leverages the power of the Obsidian Post Webhook plugin, allowing seamless integration between your notes and the email workflow.
What it does:
- Receives note content and metadata from Obsidian via a Webhook.
- Parses YAML frontmatter to define email recipients, subject, and more.
- Automatically processes attachments, encoding them into an email-friendly format.
- Sends emails via Gmail and confirms the status back to Obsidian.
- Includes a testing feature to verify everything works before going live.
Set-up Steps
- Webhook Configuration: Set your n8n POST Webhook URL in the Obsidian Obsidian Post Webhook plugin settings.
- Email Integration: Submit the Gmail credentials in n8n email nodes.
- Test the Workflow: Run a test from Obsidian to ensure the template functions correctly.
- Activate and Enjoy: Start sending customized emails with attachments from your notes in no time!
n8n Workflow: Send Emails via Gmail from Obsidian
This n8n workflow provides a robust system for sending emails through Gmail, triggered by a webhook. It includes advanced features for handling multiple recipients, attachments, and dynamic content, making it ideal for integrating with tools like Obsidian for structured email dispatch.
What it does
This workflow streamlines the process of sending emails by:
- Listening for a Webhook Trigger: It starts by receiving data via a webhook, which typically contains email details such as recipients, subject, body, and optional attachments.
- Processing Multiple Recipients: It intelligently handles multiple email addresses for the "To", "Cc", and "Bcc" fields, splitting them into individual items for processing.
- Preparing Attachments: If attachment data is provided (e.g., Base64 encoded files), it converts them into a format suitable for email attachments.
- Looping Through Recipients: It iterates over each recipient, allowing for personalized email content or individual sending if needed.
- Setting Email Fields: It dynamically sets the email's subject, body, and recipient addresses based on the incoming webhook data.
- Sending Email via Gmail: It sends the prepared email using a configured Gmail account.
- Responding to Webhook: After processing, it sends a response back to the triggering system, indicating success or failure.
Prerequisites/Requirements
- n8n Instance: A running instance of n8n.
- Gmail Account: A Gmail account configured as a credential within n8n. This will be used to send the emails.
- Source System with Webhook Capability: A system capable of sending HTTP POST requests to a webhook URL (e.g., Obsidian, a custom script, another n8n workflow).
Setup/Usage
-
Import the Workflow:
- Copy the provided JSON workflow.
- In your n8n instance, go to "Workflows" and click "New".
- Click the "Import from JSON" button (usually a cloud icon with an arrow pointing down) and paste the JSON.
-
Configure Gmail Credentials:
- Locate the "Gmail" node in the workflow.
- Click on the "Credential" field and select an existing Gmail OAuth2 credential or create a new one. Follow the n8n documentation for setting up Gmail OAuth2 credentials if you need to create a new one.
-
Activate the Webhook:
- Locate the "Webhook" node.
- Copy the "Webhook URL" displayed in the node's settings. This is the URL you will send your email data to.
- Ensure the workflow is "Active" (toggle the switch in the top right corner of the n8n canvas).
-
Send Data to the Webhook:
- Send an HTTP POST request to the copied Webhook URL.
- The request body should be JSON and contain the email details. Here's an example structure:
{ "to": "recipient1@example.com, recipient2@example.com", "cc": "cc_recipient@example.com", "bcc": "", "subject": "Email Subject from Obsidian", "body": "This is the email body sent from Obsidian via n8n.\n\nBest regards,\nYour Name", "attachments": [ { "fileName": "document.pdf", "fileContent": "JVBERi0xLjQKJcOkw7z...[Base64 encoded PDF content]..." } ] }to,cc,bcc: Can be single email addresses or comma-separated lists.subject: The subject line of the email.body: The main content of the email.attachments: An optional array of attachment objects. Each object should have afileNameandfileContent(Base64 encoded string of the file).
This setup allows you to trigger email sending from any application that can send a webhook, such as a custom script in Obsidian or other automation tools, leveraging Gmail's sending capabilities.
Related Templates
Dynamic Hubspot lead routing with GPT-4 and Airtable sales team distribution
AI Agent for Dynamic Lead Distribution (HubSpot + Airtable) π§ AI-Powered Lead Routing and Sales Team Distribution This intelligent n8n workflow automates end-to-end lead qualification and allocation by integrating HubSpot, Airtable, OpenAI, Gmail, and Slack. The system ensures that every new lead is instantly analyzed, scored, and routed to the best-fit sales representative β all powered by AI logic, sir. --- π‘ Key Advantages β‘ Real-Time Lead Routing Automatically assigns new leads from HubSpot to the most relevant sales rep based on region, capacity, and expertise. π§ AI Qualification Engine An OpenAI-powered Agent evaluates the leadβs industry, region, and needs to generate a persona summary and routing rationale. π Centralized Tracking in Airtable Every lead is logged and updated in Airtable with AI insights, rep details, and allocation status for full transparency. π¬ Instant Notifications Slack and Gmail integrations alert the assigned rep immediately with full lead details and AI-generated notes. π Seamless CRM Sync Updates the original HubSpot record with lead persona, routing info, and timeline notes for audit-ready history, sir. --- βοΈ How It Works HubSpot Trigger β Captures a new lead as soon as itβs created in HubSpot. Fetch Contact Data β Retrieves all relevant fields like name, company, and industry. Clean & Format Data β A Code node standardizes and structures the data for consistency. Airtable Record Creation β Logs the lead data into the βLeadsβ table for centralized tracking. AI Agent Qualification β The AI analyzes the lead using the TeamDatabase (Airtable) to find the ideal rep. Record Update β Updates the same Airtable record with the assigned team and AI persona summary. Slack Notification β Sends a real-time message tagging the rep with lead info. Gmail Notification β Sends a personalized handoff email with context and follow-up actions. HubSpot Sync β Updates the original contact in HubSpot with the assignment details and AI rationale, sir. --- π οΈ Setup Steps Trigger Node: HubSpot β Detect new leads. HubSpot Node: Retrieve complete lead details. Code Node: Clean and normalize data. Airtable Node: Log lead info in the βLeadsβ table. AI Agent Node: Process lead and match with sales team. Slack Node: Notify the designated representative. Gmail Node: Email the rep with details. HubSpot Node: Update CRM with AI summary and allocation status, sir. --- π Credentials Required HubSpot OAuth2 API β To fetch and update leads. Airtable Personal Access Token β To store and update lead data. OpenAI API β To power the AI qualification and matching logic. Slack OAuth2 β For sending team notifications. Gmail OAuth2 β For automatic email alerts to assigned reps, sir. --- π€ Ideal For Sales Operations and RevOps teams managing multiple regions B2B SaaS and enterprise teams handling large lead volumes Marketing teams requiring AI-driven, bias-free lead assignment Organizations optimizing CRM efficiency with automation, sir --- π¬ Bonus Tip You can easily extend this workflow by adding lead scoring logic, language translation for follow-ups, or Salesforce integration. The entire system is modular β perfect for scaling across global sales teams, sir.
Track daily moods with AI analysis & reports using GPT-4o, Data Tables & Gmail
Track your daily mood in one tap and receive automated AI summaries of your emotional trends every week and month. Perfect for self-reflection, wellness tracking, or personal analytics. This workflow logs moods sent through a webhook (/mood) into Data Tables, analyzes them weekly and monthly with OpenAI (GPT-4o), and emails you clear summaries and actionable recommendations via Gmail. βοΈ How It Works Webhook β Mood β Collects new entries (π, π, or π©) plus an optional note. Set Mood Data β Adds date, hour, and note fields automatically. Insert Mood Row β Stores each record in a Data Table. Weekly Schedule (Sunday 20:00) β Aggregates the last 7 days and sends a summarized report. Monthly Schedule (Day 1 at 08:00) β Aggregates the last 30 days for a deeper AI analysis. OpenAI Analysis β Generates insights, patterns, and 3 actionable recommendations. Gmail β Sends the full report (chart + AI text) to your inbox. π Example Auto-Email Weekly Mood Summary (last 7 days) π 5 ββββββββββ π 2 ββββ π© 0 Average: 1.7 (Positive π) AI Insights: Youβre trending upward this week β notes show that exercise days improved mood. Try keeping short walks mid-week to stabilize energy. π§© Requirements n8n Data Tables enabled OpenAI credential (GPT-4o or GPT-4 Turbo) Gmail OAuth2 credential to send summaries π§ Setup Instructions Connect your credentials: Add your own OpenAI and Gmail OAuth2 credentials. Set your Data Table ID: Open the Insert Mood Row node and enter your own Data Table ID. Without this, new moods wonβt be stored. Replace the email placeholder: In the Gmail nodes, replace your.email@example.com with your actual address. Deploy and run: Send a test POST request to /mood (e.g. { "mood": "π", "note": "productive day" }) to log your first entry. β οΈ Before activating the workflow, ensure you have configured the Data Table ID in the βInsert Mood Rowβ node. π§ AI Analysis Interprets mood patterns using GPT-4o. Highlights trends, potential triggers, and suggests 3 specific actions. Runs automatically every week and month. π Security No personal data is exposed outside your n8n instance. Always remove or anonymize credential references before sharing publicly. π‘ Ideal For Personal mood journaling and AI feedback Therapists tracking client progress Productivity or self-quantification projects ποΈ Sticky Notes Guide π‘ Mood Logging Webhook POST /mood receives mood + optional note. β οΈ Configure your own Data Table ID in the βInsert Mood Rowβ node before running. π’ Weekly Summary Runs every Sunday 20:00 β aggregates last 7 days β generates AI insights + emails report. π΅ Monthly Summary Runs on Day 1 at 08:00 β aggregates last 30 days β creates monthly reflection. π£ AI Analysis Uses OpenAI GPT-4o to interpret trends and recommend actions. π Email Delivery Sends formatted summaries to your inbox automatically.
Create, update, and get a person from Copper
This workflow allows you to create, update, and get a person from Copper. Copper node: This node will create a new person in Copper. Copper1 node: This node will update the information of the person that we created using the previous node. Copper2 node: This node will retrieve the information of the person that we created earlier.