URI format
All Obsidian URIs follow this pattern:Available actions
open — open a note
open — open a note
Opens an Obsidian vault or a specific file within a vault.Parameters:
Examples:
| Parameter | Description |
|---|---|
vault | Vault name or vault ID. |
file | File name or vault-relative path. The .md extension can be omitted. |
path | Absolute filesystem path to a file. Overrides vault and file. |
paneType | Where to open the note: tab, split, or window (desktop only). Omit to replace the active tab. |
prepend | Add content to the top of the file and attempt to merge properties. |
append | Add content to the bottom of the file and attempt to merge properties. |
new — create a note
new — create a note
Creates a new note in a vault, optionally with content.Parameters:
Examples:
| Parameter | Description |
|---|---|
vault | Vault name or vault ID. |
name | File name to create. Location follows your “Default location for new notes” preference. |
file | Vault-absolute path including name. Overrides name. |
path | Global absolute filesystem path. Overrides vault and file. |
paneType | Where to open the note: tab, split, or window. |
content | Initial content for the note. |
clipboard | Use clipboard contents as the note content instead of content. |
silent | Include to create the note without opening it. |
append | Append to an existing file if one exists. |
overwrite | Overwrite an existing file (only applies when append is not set). |
x-success | Callback URL for x-callback-url support. |
daily — create or open daily note
daily — create or open daily note
Creates or opens today’s daily note. The Daily notes core plugin must be enabled.Parameters:Accepts the same parameters as the
new action.Example:unique — create a unique note
unique — create a unique note
Creates a new unique note. The Unique note creator plugin must be enabled.Parameters:
Examples:
| Parameter | Description |
|---|---|
vault | Vault name or vault ID. |
paneType | Where to open the note: tab, split, or window. |
content | Initial content for the note. |
clipboard | Use clipboard contents as the note content. |
x-success | Callback URL for x-callback-url support. |
search — open search
search — open search
Opens the Search panel in the specified vault, optionally pre-filling a search query.Parameters:
Examples:
| Parameter | Description |
|---|---|
vault | Vault name or vault ID. |
query | (optional) The search term to pre-fill. |
choose-vault — open the vault manager
choose-vault — open the vault manager
Opens the vault manager so the user can switch vaults.
hook-get-address — integrate with Hook
hook-get-address — integrate with Hook
Used with the Hook productivity app. Returns the address of the currently focused note.Parameters:
Example:
| Parameter | Description |
|---|---|
vault | (optional) Vault name or vault ID. Defaults to the current or last focused vault. |
x-success | (optional) x-callback-url callback. If provided, the API uses it; otherwise, a Markdown link is copied to the clipboard. |
x-error | (optional) x-callback-url error callback. |
x-callback-url parameters
Certain actions support thex-callback-url protocol via the x-success and x-error parameters. When Obsidian receives a URI with x-success, it appends the following to the callback URL upon success:
| Parameter | Description |
|---|---|
name | File name without extension. |
url | The obsidian:// URI for the file. |
file | The file:// URL for the file (desktop only). |
Shorthand URI formats
Two shorthand formats are available as alternatives to the full query-string syntax:Vault ID
Thevault parameter accepts either the vault name or its ID. The vault ID is a random 16-character code assigned when the vault is created, for example ef6ca3e3b524d22f. To find a vault’s ID, open the vault switcher, right-click the vault, and select Copy vault ID.
Register the Obsidian URI on Linux
On Windows and macOS, running Obsidian once is sufficient to register theobsidian:// protocol. On Linux, registration requires additional steps:
Create a desktop entry file
Create an
obsidian.desktop file following the GNOME desktop file guidelines.Set the Exec field
Set the
Exec field to Exec=executable %u. The %u passes obsidian:// URIs to the app.