Skip to main content
Obsidian logo

Overview

Add Obsidian to any ModuleX agent or workflow. Read, create, update, search, and delete notes in your Obsidian vault via the Obsidian Local REST API plugin. Manage periodic notes, list and execute commands, work with the active file, and patch content at specific headings, block references, or frontmatter fields. The plugin runs locally inside your Obsidian app and is reachable at a base_url you pass on every call (default https://127.0.0.1:27124). Because the plugin serves a self-signed TLS certificate, the HTTP client does not verify the certificate chain.
Categories: Productivity & Collaboration · Note Taking · Knowledge Base · Auth: API Key · Actions: 15

Authentication

API Key Authentication

Authenticate using the API key from the Obsidian Local REST API plugin
1

Step 1

Install the ‘Local REST API’ community plugin in Obsidian
2

Step 2

Open the plugin settings and enable it
3

Step 3

Copy the API key shown in the plugin settings
4

Step 4

Note the server URL (default https://127.0.0.1:27124) for the base_url parameter
5

Step 5

Paste the API key below

Required Credentials

Available Actions

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
Directory path relative to vault root. Leave empty to list the root.

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Path to the note relative to vault root (e.g. “folder/note.md”)

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Path for the note relative to vault root (e.g. “folder/note.md”)
string
required
Markdown content for the note

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Path to the note relative to vault root (e.g. “folder/note.md”)
string
required
Markdown content to append to the note

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Path to the note relative to vault root (e.g. “folder/note.md”)
string
required
Content to insert at the target location
string
required
How to insert content: append, prepend, or replace
string
required
Type of target: heading, block, or frontmatter
string
required
Target identifier (heading text, block reference ID, or frontmatter field name)
string
Delimiter for nested headings (default: ”::”)
boolean
Whether to trim whitespace from target before matching

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Path to the note to delete relative to vault root

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Text to search for across vault notes
integer
Number of characters of context around each match (default: 100)

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Markdown content to append to the active file

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Content to insert at the target location
string
required
How to insert content: append, prepend, or replace
string
required
Type of target: heading, block, or frontmatter
string
required
Target identifier (heading text, block reference ID, or frontmatter field name)
string
Delimiter for nested headings (default: ”::”)
boolean
Whether to trim whitespace from target before matching

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Path to the file relative to vault root
boolean
Whether to open the file in a new leaf/tab

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
ID of the command to execute (use list_commands to discover available commands)

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Period type: daily, weekly, monthly, quarterly, or yearly

Response

Parameters

string
required
Base URL for the Obsidian Local REST API (e.g. https://127.0.0.1:27124)
string
required
Period type: daily, weekly, monthly, quarterly, or yearly
string
required
Markdown content to append to the periodic note

Response

Limits & Quotas

  • The Local REST API runs on the user’s own machine, so throughput is bound only by the local Obsidian instance; there is no vendor rate limit.
  • base_url must be reachable from where the runtime executes (typically the same host). The default https://127.0.0.1:27124 only works for a co-located process.
  • Error model: non-2xx responses and timeouts are caught and returned as success=False + error rather than raising.

Grain

Granola

Reflect