This article lists common URI schemes. A Uniform Resource Identifier helps identify a source without ambiguity. Many URI schemes are registered with the IANA; however, there exist many unofficial URI schemes as well. Mobile deep links are one example of a class of unofficial URI schemes that allow for linking directly to a specific location in a mobile app.

Official IANA-registered schemes

edit

URI schemes registered with the IANA, both provisional and fully approved, are listed in its registry for Uniform Resource Identifier (URI) Schemes. These include well known ones like:

as well as many lesser known schemes like:

Unofficial but common URI schemes

edit
Scheme Purpose Defined by General format Notes
admin URL scheme in the GNOME desktop environment to access file(s) with administrative permissions with GUI applications in a safer way, instead of the insecure-considered sudo, gksu & gksudo. GNOME Virtual file system admin:/⟨path⟩/⟨to⟩/⟨file⟩

example: gedit admin:/etc/default/grub

See more information on: [1]
app URL scheme can be used by packaged applications to obtain resources that are inside a container. Google app://⟨application⟩/⟨path⟩

example: app://com.foo.bar/index.html

See more information on: [2] [3]
freeplane Open a Freemind/Freeplane `.mm` file in the locally installed Freeplane application and optionally highlight a node in the opened mindmap. Freeplane v1.3 and above freeplane:/%20⟨path to file⟩#ID_⟨node number⟩

freeplane:/%20⟨path to file⟩#:⟨path⟩/⟨in⟩/⟨map⟩/⟨to⟩/⟨node⟩

geo Open a geographic location in a two or three-dimensional coordinate reference system on your preferred maps application. Internet Engineering Task Force's RFC 5870 (published 8 June 2010) geo:25.245470718844146,51.45400942457904 See more information on: [4]. Alternatively, maps: may be implemented in some clients.
javascript Execute JavaScript code IETF Draft javascript:⟨javascript to execute⟩
jdbc Connect a database with Java Database Connectivity technology. Database vendor dependent jdbc:somejdbcvendor:other_data...

jdbc:oracle:oci:@host:port(sid or [/service])?params...
jdbc:sqlserver://serverName\instanceName:portNumber;params...
jdbc:mysql://host:port/database?params...

Requires a vendor provided connector (jar archive) to be included in the client library.
msteams Used by Microsoft to launch the Microsoft Teams desktop client. Microsoft msteams:/l/... [1][2]
ms-access
ms-excel
ms-infopath
ms-powerpoint
ms-project
ms-publisher
ms-spd
ms-visio
ms-word
Used by Microsoft to launch Microsoft Office applications. Microsoft ⟨scheme-name⟩:⟨command-name⟩|⟨command-argument-descriptor⟩|⟨command-argument⟩

example: ms-excel:ofv|u|<https://contoso/Q4/budget.xls>

odbc Open Database Connectivity IETF Draft
psns Used by PlayStation consoles to open the PS Store application, also used by Media Go. Sony (not public) psns://browse?product=⟨ContentID⟩If entered without parameters, like psns:// it opens the PS Store or Media Go app main page.
rdar URL scheme used by Apple's internal issue-tracking system. Apple (not public) rdar://⟨issue number⟩

example: rdar://10198949

Allows employees to link to internally-tracked issues from anywhere. Example of a private scheme which has leaked in to the public space and is widely seen on the internet, but can only be resolved by Apple employees.
s3 Used to interact programmatically with Amazon S3 bucket aws-cli documentation
aws s3 sync /tmp/foo/ s3://bucket/ --recursive \
 --exclude "*" --include "*.jpg" --include "*.txt"
shortcuts A scheme used by Apple to execute a Shortcut from apps that support links. Apple shortcuts://run-shortcut?name=Add20%to20%Notes&input=clipboard See more information at [5]


slack Used by Slack to launch the Slack client. Slack API reference slack://open?team={TEAM_ID}
stratum Connectivity URI for the Stratum protocol, used for proof-of-work coordination in pooled cryptocurrency mining. Stratum Protocol Draft stratum+tcp://server:port, stratum+udp://server:port This protocol has completely superseded the now-obsolete Getwork protocol,[citation needed] and was created primarily to reduce network overhead as mining pool sizes inevitably scale upwards.[3]
trueconf Used by TrueConf Server to interact with client applications. TrueConf official website trueconf:[target][@server]&[param_1]=[value_1]&[...]&[param_n]=[value_n] See more information at [6]
viber Open the locally installed Viber application to link to a view or perform an action, such as share an URL to a contact. Viber API Documentation - Deep Links

Viber API Documentation - Viber Share Button

viber://pa?chatURI=⟨URI⟩

viber://pa/info?uri=⟨URI⟩
viber://forward?text=<ShareDescription>

web+... Effectively namespaces web-based protocols from other, potentially less web-secure, protocols. This convention is defined within the HTML Living Standard specification web+⟨string of some lower-case alphabetic characters⟩: This convention is not associated with the registration of any new scheme but is currently a requirement as well as convention for non-whitelisted web-based protocols.
zoommtg
zoomus
Used by Zoom conferencing software to launch the Zoom client. Zoom developer community zoommtg://zoom.us/join?confno=⟨confno⟩... See more information at Zoom developer community

References

edit
  1. ^ "Create deep links - Teams". learn.microsoft.com. Archived from the original on 2022-10-06.{{cite web}}: CS1 maint: unfit URL (link)
  2. ^ "Build apps for Teams meeting stage - Teams". learn.microsoft.com. Retrieved 27 October 2022.
  3. ^ Stratum mining protocol, ..the official documentation of lightweight bitcoin mining protocol.
edit