HTML's registerProtocolHandler() gives a webpage a mechanism to register itself to handle a protocol after a user consents. For example, a web-based email application could register to handle the mailto: scheme. A corresponding unregisterProtocolHandler() API allows a site to abandon its protocol-handling registration.


These two APIs expose a powerful capability (reconfigures client state, subsequently transmits potentially-sensitive data over the network) thus they should only be exposed in secure contexts.


Specification link

Unknown standards status - check spec link for status

Status in Chromium


Removed (tracking bug)

Consensus & Standardization

After a feature ships in Chrome, the values listed here are not guaranteed to be up to date.


Search tags

registerProtocolHandler, scheme, secure context,

Last updated on 2021-12-13