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.
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:
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 | <nowiki>admin:/⟨path⟩/⟨to⟩/⟨file⟩</nowiki> example: <nowiki>gedit admin:/etc/default/grub</nowiki> | See more information on: https://wiki.gnome.org/Projects/gvfs/backends | |
app | URL scheme can be used by packaged applications to obtain resources that are inside a container. | <nowiki>app://⟨application⟩/⟨path⟩</nowiki> example: <nowiki>app://com.foo.bar/index.html</nowiki> | See more information on: http://www.w3.org/TR/app-uri/ http://www.w3.org/TR/2013/WD-app-uri-20130516/ | ||
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 | <nowiki>freeplane:/%20⟨path to file⟩#ID_⟨node number⟩</nowiki> <nowiki>freeplane:/%20⟨path to file⟩#:⟨path⟩/⟨in⟩/⟨map⟩/⟨to⟩/⟨node⟩</nowiki> |-| 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)| <nowiki>geo:25.245470718844146,51.45400942457904</nowiki> | See more information on: https://en.wikipedia.org/wiki/Geo_URI_scheme. Alternatively, maps: may be implemented in some clients. | |
javascript | Execute JavaScript code | IETF Draft | <nowiki>javascript:⟨javascript to execute⟩</nowiki> | ||
jdbc | Connect a database with Java Database Connectivity technology. | Database vendor dependent | <nowiki>jdbc:somejdbcvendor:other_data...</nowiki> <nowiki>jdbc:oracle:oci:@host:port(sid or [/service])?params...</nowiki> <nowiki>jdbc:sqlserver://serverName\instanceName:portNumber;params...</nowiki> <nowiki>jdbc:mysql://host:port/database?params...</nowiki> | 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| <nowiki>msteams:/l/...</nowiki> | [1] [2] |-| ms-accessms-excel ms-infopath ms-project ms-publisher ms-spd ms-visio ms-word| Used by Microsoft to launch Microsoft Office applications.| Microsoft| <nowiki>⟨scheme-name⟩:⟨command-name⟩|⟨command-argument-descriptor⟩|⟨command-argument⟩</nowiki> example: <nowiki>ms-excel:ofv|u|<https://contoso/Q4/budget.xls></nowiki> ||-| 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| ||-| shortcuts| A scheme used by Apple to execute a Shortcut from apps that support links.| Apple| |-| slack| Used by Slack to launch the Slack client.| Slack API reference| <nowiki>stratum+tcp://server:port, stratum+udp://server:port</nowiki> | This protocol has completely superseded the now-obsolete Getwork protocol, 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 | <nowiki>trueconf:[target][@server]&[param_1]=[value_1]&[...]&[param_n]=[value_n]</nowiki> | See more information at https://trueconf.com/blog/knowledge-base/trueconf-protocol-designed-to-interact-with-trueconf-client-applications.html | |
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 | <nowiki>viber://pa?chatURI=⟨URI⟩</nowiki> <nowiki>viber://pa/info?uri=⟨URI⟩</nowiki> <nowiki>viber://forward?text=<ShareDescription></nowiki> ||-| web+... | Effectively namespaces web-based protocols from other, potentially less web-secure, protocols.| This convention is defined within the HTML Living Standard specification| web+{{angbr|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.|-| zoommtgzoomus| Used by Zoom conferencing software to launch the Zoom client.| Zoom developer community| <nowiki>zoommtg://zoom.us/join?confno=⟨confno⟩...</nowiki> | See more information at Zoom developer community |