Getting Started
This documentation is no longer maintained. Pleas refer to the new documentation at https://publish.obsidian.md/advanced-uri-doc
We are going through the whole workflow of creating and launching an URI to open a note.
Create URI
Collect parameters
Let's say we want to open the file Home Index/today.md
. By looking at the navigation action the only parameter we need is a file identification. Since we want to create a new file, we use the filepath
parameter.
As you can see, our file path includes a space and a slash. We have to encode special characters. By entering Home Index/today
(You can omit the file extension) in an online url encoder you get Home%20Index%2Ftoday
as an output. Now we have the parameter key filepath
and the parameter value Home%20Index%2Ftoday
.
Construct URI
As stated in the schema every URI has to start with obsidian://advanced-uri
. Please refer to the schema for more detailed explanation. Our final URI is the following.
obsidian:?filepath=Home%20Index%2Ftoday
Launch URI
There are many ways to launch an URI. I'm just listing the most common
Browser
You can simply enter the URI into the search bar. It will ask you to confirm the execution.
Link in Obsidian
You can launch an Obsidian URI from Obsidian itself. Because obsidian://
is a more custom protocol, it doesn't recognize it as a link directly. To fix this, wrap it in a markdown link.
[This here is shown](obsidian://advanced-uri?filepath=Home%20Index%2Ftoday)
Terminal
Linux
For xdg-open
the whole URI has to be encoded twice. See encoding for more details.
xdg-open "obsidian://advanced-uri?filepath=Home%2520Index%252Ftoday"
Mac
You can use Mac shell command open
to launch Obsidian, and with --background
let Obsidian run in background.
open --background "obsidian://advanced-uri?vault=my-vault&filename=my-file&data=my-data"
Windows PowerShell
You can use the PowerShell command Start-Process
to launch an Obsidian URI.
Start-Process "obsidian://advanced-uri?&filepath=test"