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. [1] These include well known schemes such as:
file
- File URI scheme ftp
– File Transfer Protocol http
– Hypertext Transfer Protocol https
– Hypertext Transfer Protocol Secure mailto
– mailto for email addressestel
– for telephone numbers imap
– Internet Message Access Protocol irc
– Internet Relay Chat nntp
– Network News Transfer Protocol as well as many lesser known schemes such as:
acap
– Application Configuration Access Protocol icap
– Internet Content Adaptation Protocol mtqp
– Message Tracking Query Protocol (RFC 3887)wss
– Encrypted WebSocket connectionsScheme | 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 sudo, gksu & gksudo, which may be considered insecure | GNOME Virtual file system [2] | admin:/⟨path⟩/⟨to⟩/⟨file⟩ example: | [2] |
app | URL scheme can be used by packaged applications to obtain resources that are inside a container | Google [3] | app://⟨application⟩/⟨path⟩ example: | [4] [5] |
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 [6] | freeplane:/%20⟨path to file⟩#ID_⟨node number⟩
| |
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 [7] (published 8 June 2010) | geo:25.245470718844146,51.45400942457904 | See more information on: Geo URI scheme. Alternatively, maps: may be implemented in some clients. |
javascript | Execute JavaScript code. | IETF Draft [8] | javascript:⟨javascript to execute⟩ | |
jdbc | Connect a database with Java Database Connectivity technology. | Database vendor dependent | jdbc:somejdbcvendor:other_data...
| 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 [9] | msteams:/l/... | [10] [11] |
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 [12] | ⟨scheme-name⟩:⟨command-name⟩|⟨command-argument-descriptor⟩|⟨command-argument⟩ example: | |
odbc | Open Database Connectivity | IETF Draft [13] | ||
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: | 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 [14] | awss3sync/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 | [15] |
slack | Used by Slack to launch the Slack client | Slack API reference [16] | 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 [17] | 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. [18] |
trueconf | Used by TrueConf Server to interact with client applications | TrueConf official website [19] | trueconf:[target] [@server]&[param_1]=[value_1]&[...]&[param_n]=[value_n] | [19] |
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 [20] Viber API Documentation - Viber Share Button [21] | viber://pa?chatURI=⟨URI⟩
| |
web+... | Effectively namespaces web-based protocols from other, potentially less web-secure, protocols | This convention is defined within the HTML Living Standard specification [22] | 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 [23] | zoommtg://zoom.us/join?confno=⟨confno⟩... | More information at Zoom developer community [23] |
A procedural guideline like RFC 2717 [24] BCP 35 [25] is provided for new URL Scheme Names registration. From time to time, some guidelines may be updated. The scheme registry maintains the mapping between scheme names and their specifications.