---
title: Obsidian
description: Append the current page, a selection, or workflow output to a note in a local Obsidian vault — nothing leaves your machine.
---

Clip the page you are on, a selection or a workflow's result into a note in your local Obsidian vault. Nothing goes through a cloud service.

Pick a saved connection in the **Credential** field, or create one from there. It signs in with a Bearer Token.

## What it does

The node talks to Obsidian on your own computer through the [Local REST API](https://github.com/coddingtonbear/obsidian-local-rest-api) community plugin. It has four operations:

* **Append to note**: add content to the end of a note. The note is created if it does not exist.
* **Create note**: write a note at a path. An existing note at that path is replaced.
* **Get note**: read a note's Markdown.
* **Search vault**: find notes that contain some text.

When you fill **Source URL**, **Append to note** and **Create note** add a `[Source](…)` link on its own line after your content, so every clip links back to its page.

Obsidian must be open, with the plugin enabled, while the workflow runs.

## When to use it

* Save an article's text or an AI summary of it to a "Reading" note.
* Keep a daily log: append one line per run to `Journal/2026-09-10.md`.
* Read a note (a prompt, a checklist) and use it in later nodes.
* Look up whether you already have notes on a topic before clipping again.

For a cloud workspace, use [Notion](/nodes/builtin/integration/notion/) instead.

## Inputs and settings

Call the Obsidian API yourself with the HTTP Request node, and pick the same connection in its **Credential** field.

* **Note path** is relative to the vault folder and includes `.md`, for example `Clippings/Article.md`. You can build it with an expression, like `Clippings/{{ $input.title }}.md`.
* **Server URL** can stay empty: the node uses `http://127.0.0.1:27123`, the plugin's HTTP port. Only change it if you changed the port in the plugin. Use the HTTP address, not the HTTPS one (port 27124), which the browser rejects because of its self-signed certificate.
* **Content** is Markdown, so headings, lists and links show up formatted in Obsidian.

## Outputs

* **Append to note** and **Create note** return `success: true` and the note's `path`.
* **Get note** returns the `path` and the note's Markdown in `content`.
* **Search vault** returns the plugin's search results: one item per matching note, with its `filename` and the matching passages.

## Dependencies and credentials

* **Credential** (connection, Bearer Token): required. See [Connect Obsidian](/app/connections/obsidian/).

1. In Obsidian, open **Settings → Community plugins**, install **Local REST API** and enable it.
2. In the plugin's settings, copy the **API key**.
3. In AWFlow, create a Bearer Token credential and paste the key. See [Create a credential](/app/connections/create/).

The key and your notes stay on your computer.

## Example workflow

1. A [Context Menu](/nodes/builtin/trigger/contextmenu/) trigger with **Menu Contexts** set to `Selection` adds "Clip to Obsidian" to the right-click menu for highlighted text.
2. Obsidian, **Append to note**, **Note path** `Clippings/Inbox.md`, **Content** `> {{ $input.selectionText }}`, **Source URL** `{{ $input.pageUrl }}`.
3. [Browser Notification](/nodes/extension/browsernotification/) confirms `Clipped to {{ $input.path }}`.

## Common issues

* **"Could not reach the Obsidian Local REST API at…".** Obsidian is closed, the plugin is turned off, or **Server URL** does not match the plugin's port. Open Obsidian, enable the plugin, and check the HTTP port in its settings.
* **"Obsidian API Error: 401 … check the API key from the plugin settings".** The key in the credential is wrong, or it was regenerated in the plugin. Copy it again.
* **"Obsidian API Error: 404…" on Get note.** No note at **Note path**. Check folders, spelling, capitals and the `.md` extension.
* **A note you wanted to keep was replaced.** **Create note** overwrites. Use **Append to note** to add to an existing note.
* **The run is blocked in the web app.** Obsidian runs through the browser extension. Install it, or run the workflow from the extension.

## Related nodes

* [Notion](/nodes/builtin/integration/notion/): notes and databases in Notion's cloud.
* [Get All Text](/nodes/extension/getalltext/): grab a page's text to clip.
* [Markdown](/nodes/builtin/datatransformation/markdown/): convert HTML to Markdown before writing a note.
* [Readwise / Reader](/nodes/builtin/integration/readwise/): save highlights to Readwise instead.