Files
obsidian-api/packages/n8n-nodes-obsidian-api
daniel156161 be78e3aa00
Build and Push Docker Container / build-and-push (push) Successful in 4m15s
feat: resolve daily-note path from Obsidian config for scoped tokens
- Add daily_note_path_for_vault to read .obsidian/daily-notes.json

- Honor configured folder and date format for daily commands

- Add moment_to_strftime to translate Obsidian date tokens

- Authorize pathless daily:* commands against the resolved path

- Pick vault root from token vault, cwd, or default vault

- Normalize n8n httpRequest response to avoid circular JSON output

- Force returnFullResponse false and parse body to plain result

- Bump n8n-nodes-obsidian-cli-api to 0.2.0

- Add tests for allowed and denied scoped daily commands
2026-06-24 11:01:57 +02:00
..
2026-06-24 09:11:13 +02:00
2026-06-24 10:27:13 +02:00

n8n-nodes-obsidian-cli-api

n8n community-node package for the Obsidian API Docker service.

It talks to the HTTP API, which then runs the official Obsidian CLI against mounted vaults. The node sends structured args arrays only. It does not send shell commands.

Nodes

Obsidian API

Resources:

  • Note
    • Create
    • Read
    • Append
    • Prepend
    • Delete
    • Rename
    • List Files
  • Daily Note
    • Append
    • Prepend
    • Read
    • Path
  • Search
    • Search
    • Search With Context
  • Vault
    • Info
    • List Vaults
  • Raw Command
    • Safe args-array escape hatch for any official CLI command

Credentials

Credential type: Obsidian API

Fields:

  • Base URL: URL of your Obsidian API service, e.g. http://localhost:8080
  • API Token: JWT created with scripts/create_jwt.py
  • Default Vault: optional, e.g. work

Multi-vault

Set the Vault field on a node to override the credential default vault.

The node sends this as the official CLI prefix:

vault=work

Raw command example:

["vault=work", "read", "path=Inbox/Note.md"]

Local install in self-hosted n8n

From this repo:

cd packages/n8n-nodes-obsidian-api
npm install --ignore-scripts
npm run build
npm pack

Then install the generated .tgz in your n8n custom extensions setup.

For Docker-based n8n, one common setup is mounting this package into n8n's custom extensions directory and setting:

N8N_CUSTOM_EXTENSIONS=/home/node/.n8n/custom

Exact installation depends on your n8n deployment.

Development

npm install --ignore-scripts
npm run typecheck
npm run build

--ignore-scripts avoids local native builds from n8n transitive dependencies on unsupported bleeding-edge Node versions. Use the Node version recommended by your n8n release for production builds.