URL obsidian://new command fails frequently (mobile iOS)

Please add [Bug] or [Feature] to your post title, then delete this line.

Platform

[x] iOS
[ ] Android

  • Obsidian version 1.4.1 (83)
  • occurs on both iOS (iPhone) and iPadOS - both running the latest available iOS version.

Hello friends,

I have an iOS shortcut that uses the Obsidian “new” command, i.e., triggers a url to create a new note via obsidian://new…

About half the time, this simply fails to work. It launches (or foregrounds) the Obsidian.app, but simply shows me the “No file is open” screen. And no new Note is created. If I repeat the exact same shortcut as is, with all the same parameters – i.e., background the Obsidian.app, foreground Safari, then re-trigger Obsidian with the same exact obsidian://new content … – then it almost always works fine on the second attempt.

I only see this on iOS (both iPhone and iPadOS). The same URL scheme works fine consistently on my Mac desktop.

I cannot tell if this happens most often when Obsidian is backgrounded vs not running, or when a note is open vs not, or when sync is needed or not. it’s just not that consistent – but anecdotally it’s REALLY common, like 50% of the time I use my shortcut, i.e., use the Obsidian URL scheme. So it’s driving me crazy. (I can’t trust my shortcut, because any info I enter is often simply lost when Obsidian fails to make the new note.)

I think I might be seeing this most often when Obsidian has to sync first, but I have tried really hard to reproduce it and it is not consistent enough to be sure. Important note: I am using a vault stored in iCloud Drive. And sometimes I have noticed this like so: I trigger the URL, Obsidian foregrounds, I see the iCloud syncing progress bar (which I believe is while iCloud Drive is syncing files), then the “No file is open” screen. But again, opening the same URL scheme works fine the second time around.

Has anyone seen anything like this?
Is there anything I can do to my URLs to make them work more consistently?

Suggestions? Is iCloud Drive the likely culprit? (I am really happy with it apart from this one issue.)

The only forum post I could find that’s in any way similar is this - Obsidian URI didn't work if Obsidian was running in background - but it’s really not the same pattern.

Thank you all in advance!

Ben.

Obsidian URLs don’t work correctly when Obsidian isn’t already running (for example, when iOS has pushed it out of memory ti make room for another app).

I thought there was a bug report about this, but surprisingly there isn’t — only some discussion threads and this misplaced feature request:

https://forum.obsidian.md/t/please-please-support-url-schemed-calls-to-obsidian-to-work-reliably/46164

To workaround this in Shortcuts, add an action that launches Obsidian right before the action that opens the URL. It makes the shortcut slower but more reliable.

I had a look around for this feature request but couldn’t find one but I’m absolutely sure it has been asked for before because it seems such a big issue to anyone using (iPhone) URL schemes with Obsidian.

Use case or problem

I open Obsidian on my iPhone with a URL scheme -eg. obsidian://open?vault=xxx&file=yyy or obsidian://new?vault=xxx&file=yyy&content=zzz all the time from various places. But the problem is that if Obsidian is not open or needs to “sync” (or whatever it does when it starts up) then it loses the parameters passed to it.

Proposed solution

Please can this be fixed. Save the parameters, do the sync, then execute the parameters.

2 Likes

Would love to have this fixed.

For now I work around it by having Shortcuts launch Obsidian before it opens the Obsidian URL.

Is this still happening in 1.4.2?

Hello mr @WhiteNoise – I just tested it before and after installing the insider build 1.4.2 (via Testflight).

At least at the moment it seems to be resolved.

I definitely reproduced the problem just now, very easily, with 1.4.1 – and could not reproduce it with 1.4.2. Everything seems to work smoothly (and opening via URL is now quicker as well).

So seems like good news to me.

Thanks

Just noting explicitly for anyone else reading that 1.4.2 is an Insider build.

I can’t test it but look forward to seeing it eventually. \o/