Post Webhook

by MasterB1234
5
4
3
2
1
Score: 48/100

Description

Category: 3rd Party Integrations

The Post Webhook Plugin allows users to effortlessly send their Obsidian notes to any Webhook endpoint, making it easy to automate note-taking workflows and integrate with external services. With YAML frontmatter support, attachment handling, and quick access through the command palette, this plugin is a game-changer for those looking to streamline their note-taking process. Whether you want to share your notes with others, sync them across platforms, or send them to specific services for processing, this plugin has got you covered. With its intuitive interface and built-in testing functionality, it's never been easier to get started with Webhook automation in Obsidian.

Reviews

No reviews yet.

Stats

163
stars
6,500
downloads
16
forks
523
days
36
days
171
days
2
total PRs
1
open PRs
0
closed PRs
1
merged PRs
12
total issues
1
open issues
11
closed issues
37
commits

Latest Version

6 months ago

Changelog

Changelog v1.2.5

  • Fixed Property Type Handling (Boolean)
  • Added Raw Content Option

README file from

Github

Post Webhook Plugin

Send your Obsidian notes or selected text to any Webhook endpoint with YAML frontmatter support and attachment handling. Perfect for automating your note-taking workflow and integrating with external services such as n8n, Make. com and Zapier.

Features

  • 📤 Send note content to multiple Webhook endpoints
  • ✂️ Send selected text to Webhook endpoints
  • 📋 YAML frontmatter and inline fields parsing and inclusion in the Webhook payload
  • 📎 Automatic attachment handling
  • 📥 Response insertion into notes
  • 🔄 Support for adding other notes with context (such as prompts) for dynamic workflows
  • 🌐 Send rendered HTML content (useful for plugings like Dataview and Bases)
  • 📦 Handle complex JSON responses with attachments

Installation

  1. Open Obsidian Settings
  2. Go to Community Plugins and disable Safe Mode
  3. Click Browse and search for "Post Webhook"
  4. Install the plugin
  5. Enable the plugin in your Community Plugins list

Usage

Setting Up Webhooks

  1. Open plugin settings
  2. Add one or more Webhook endpoints
  3. Choose whether to append responses to your notes
  4. Configure attachment and context note options per Webhook

Sending Content

Full Notes
  1. Open any note
  2. Use the command palette (Ctrl/Cmd + P)
  3. Search for "Send to [Webhook Name]"
  4. Your note's content, frontmatter, and attachments will be sent
Selected Text (not available in Reading View)
  1. Select text in your note
  2. Open command palette
  3. Choose "Send Selection to [Webhook Name]"
  4. The selected text will be sent and any response will be inserted after the selection

Sending Rendered HTML (This feature requires the active note to be in Reading View)

You can configure a Webhook to send the rendered HTML of your note instead of the raw Markdown source. This is useful for notes that contain data from the Dataview or Bases plugin.

  1. Enable the "Send Rendered HTML" option in the webhook's settings.
  2. Switch your note to Reading View.
  3. Trigger the webhook command.

The rendered HTML will be included in the payload under the renderedHtml key.

Response Handling

You can configure how responses from the webhook are handled:

  • Append: Add the response at the end of your note
  • New Note: Create a new note with versioning (v1, v2, etc.)
  • Overwrite: Replace the current note's content with the response
  • None: Don't save the response

The handling mode can be set per Webhook, with an option to ask every time.

YAML Frontmatter Support

The plugin automatically parses YAML frontmatter and includes it in the Webhook payload. Example note:

---
title: My Note
tags: [Webhook, automation]
category: tech
exclude-attachment: attachment1.mp3  # Exclude a single attachment
# OR exclude multiple attachments:
exclude-attachment:
  - image1.png
  - document.pdf
---
Your note content here...

![attachment.png]

Will be sent as:

{
  "title": "My Note",
  "tags": ["Webhook", "automation"],
  "category": "tech",
  "content": "Your note content here...\n\n![attachment.png]",
  "filename": "note.md",
  "timestamp": 1234567890,
  "attachments": [
    {
      "name": "attachment.png",
      "type": "png",
      "size": 12345,
      "data": "base64_encoded_data..."
    }
  ]
}

Inline Fields Support

In addition to YAML frontmatter, you can use inline fields that will be included in the webhook payload:

title:: My Document
status:: draft
tags:: [research, notes]

Your content here...

These fields will be automatically extracted and added to the payload when inline field processing is enabled for the Webhook.

Attachment Support

The plugin automatically:

  • Detects attachments referenced in your notes using the ![[filename]] syntax
  • Reads the attachment files
  • Converts them to Base64
  • Includes them in the Webhook payload
  • Supports images and other file types
  • Allows excluding specific attachments via YAML frontmatter

For Webhooks where attachments are not necessary or might exceed the endpoint's file size limits, you can enable the "Exclude Attachments" option in the Webhook settings. All attachments will be omitted from requests to this endpoint.

Prosessing Responses with Text as well as Attachments

If the response is a JSON object with a content key and an attachments key (containing a list of files with name and data as a base64 string), the plugin will automatically save the attachments to your vault and insert the content into your note.

This is useful for advanced workflows where an external service generates both text and files (e.g., images from a prompt, generated PDFs, etc.).

Example response payload:

{
  "content": "Here is the generated chart:",
  "attachments": [
    {
      "name": "chart.png",
      "data": "base64_encoded_image_data..."
    }
  ]
}

Context Notes

Context notes enable you to create reusable content blocks that can be seamlessly integrated into your Webhook requests. This feature is particularly helpful for leveraging prompt templates stored in your Obsidian vault when interacting with AI models through Webhook data.

Example: To use context notes for AI prompting, create a note with the following structure:

---
post-webhook: true # Required to make this note available as a context block for Webhook payloads.
---
--user # can be any keyword
Your user prompt to send to an AI model.

--assistant # can be any keyword
Tell the model to adopt a specific tone or personality.

--system # can be any keyword
Set the model's behavior.

  1. Enable "Include Context Note" for your Webhook
  2. When sending content, you'll be prompted to select a context note
  3. The parameters (separated by --keyword) will be included in the Webhook payload

Command IDs for Templater

Each webhook has a unique command ID that can be used with Templater templates. To get the command IDx, go to plugin settings and click the "Copy" icon next to the webhook.

You can use these command IDs in your Templater templates like this:

<%* await app.commands.executeCommandById("post-webhook:post-webhook-note-[id]") %>

Use Cases

Email Integration

Send emails directly from your Obsidian notes using n8n workflows. Write your email content in Obsidian, include recipients and subject in the frontmatter, and send it to your email workflow with a single command. Template here

Smart Airtable Queries

Query your Airtable bases using natural language. Highlight a question in your note, send it to an n8n workflow that uses GPT to interpret your query, and get formatted Airtable data inserted directly into your note. Template here

Notes to Audio in Podcast Feed

Transform your Obsidian notes into an audio podcast feed. Select text from your notes, send it to an n8n workflow that converts it to speech, and automatically publish it to a podcast feed compatible with apps such as Podcast Republic or platforms like Apple Podcasts and Spotify. The workflow handles text-to-speech conversion, audio hosting, and RSS feed generation. Template here)

License

MIT License - feel free to use this plugin in any way you'd like.


Created by MasterB1234

Similar Plugins

info
• Similar plugins are suggested based on the common tags between the plugins.
Templater
5 years ago by SilentVoid
A template plugin for obsidian
Table Extended
5 years ago by AidenLx
Extend basic table in Obsidian with MultiMarkdown table syntax
Whisper
3 years ago by Nik Danilov
Speech-to-text in Obsidian using Whisper
GPT-3 Notes
3 years ago by micahke
An Obsidian plugin to generate notes based on GP3 output.
ZettelFlow
3 years ago by RafaelGB
ZettelFlow is a plugin for Obsidian that helps you to create and manage your notes in a Zettelkasten way.
Auto Classifier
3 years ago by Hyeonseo Nam
Auto classification plugin for Obsidian using ChatGPT.
Mindmap
2 years ago by YunXiaoYi
An Obsidian plugin for creating Mindmaps.
Ghost Fade Focus
5 years ago by Sami Korpela
Ghost Fade Focus plugin for Obsidian
Reading comments
3 years ago by BumbrT
Reading comments, for consuming books or large articles in markdown with https://obsidian.md/.
Pluck
5 years ago by Kevin Barrett
Quickly create notes in Obsidian from web pages.
Webhooks
5 years ago by Stephen Solka
Connect obsidian to the internet of things via webhooks
HTML Tabs
3 years ago by Patrick Tournet
Obsidian plugin allowing the creation and rendering of Tabs and tab panels in your notes.
LLM Summary
2 years ago by QSun
wip
Achievements
3 years ago by Zachatoo
Add achievements to Obsidian to help guide the user to build good habits in Obsidian.
New Bullet With Time
3 years ago by Boninall
A plugin allows you to auto add current time to new bullet line.
Callout Toggles
2 years ago by Aly Thobani
An Obsidian plugin to quickly add, change, or remove callout wrappers in your notes.
Editor Autofocus
2 years ago by Mgussekloo
AI bot
a year ago by kuzzh
The AI Bot Plugin is a powerful tool designed to enhance your note-editing experience in Obsidian by leveraging the capabilities of AI. This plugin allows you to interact with an AI assistant directly within Obsidian, making it easier to generate, edit, and organize your notes with intelligent suggestions and automated tasks.
Auto Bullet
a year ago by takitsuba
Masking Type
a year ago by Telehakke
Obsidian plugin.
Consecutive Lists
2 years ago by Josh Tucker
tidit
a year ago by codingthings.com
tidit is an Obsidian - https://obsidian.md - plugin that adds timestamps to your document as you type — when you want it, how you want it, where you want it.
BookNav
a year ago by jemberton
A plugin for ObsidianMD that enables book style navigation links in a note.
Relative Timestamps
2 years ago by Charles Young
Varinote
a year ago by Giorgos Sarigiannidis
A plugin for Obsidian that allows you to add variables in Templates and set their values during the Note creation.
Trakt.tv Sync
a year ago by Nick Felker
Sync Trakt checkins to Obsidian file
Time Inserter
7 months ago by heycalmdown
Obsidian plugin to insert current time at cursor position with exact or rounded formats
Bottom to Top
a year ago by Henry Gustafson