Custom protocol handling

Method of allowing a webpage to handle a given protocol using navigator.registerProtocolHandler. This allows certain URLs to be opened by a given web application, for example mailto: addresses can be opened by a webmail client.

Spec https://html.spec.whatwg.org/multipage/webappapis.html#custom-handlers
Status WHATWG Living Standard
IE Edge Firefox Chrome Safari Opera
      98 (1)    
    95 97 (1)    
    94 96 (1) TP  
11 95 (1) 93 95 (1) 15 80 (1)
10 94 (1) 92 94 (1) 14.1 79 (1)
9 93 (1) 91 93 (1) 14 78 (1)
8 92 (1) 90 92 (1) 13.1 77 (1)
Show all
7 91 (1) 89 91 (1) 13 76 (1)
6 90 (1) 88 90 (1) 12.1 75 (1)
5.5 89 (1) 87 89 (1) 12 74 (1)
  88 (1) 86 88 (1) 11.1 73 (1)
  87 (1) 85 87 (1) 11 72 (1)
  86 (1) 84 86 (1) 10.1 71 (1)
  85 (1) 83 85 (1) 10 70 (1)
  84 (1) 82 84 (1) 9.1 69 (1)
  83 (1) 81 83 (1) 9 68 (1)
  81 (1) 80 81 (1) 8 67 (1)
  80 (1) 79 80 (1) 7.1 66 (1)
  79 (1) 78 79 (1) 7 65 (1)
  18 77 78 (1) 6.1 64 (1)
  17 76 77 (1) 6 63 (1)
  16 75 76 (1) 5.1 62 (1)
  15 74 75 (1) 5 60 (1)
  14 73 74 (1) 4 58 (1)
  13 72 73 (1) 3.2 57 (1)
  12 71 72 (1) 3.1 56 (1)
    70 71 (1)   55 (1)
    69 70 (1)   54 (1)
    68 69 (1)   53 (1)
    67 68 (1)   52 (1)
    66 67 (1)   51 (1)
    65 66 (1)   50 (1)
    64 65 (1)   49 (1)
    63 64 (1)   48 (1)
    62 63 (1)   47 (1)
    61 62 (1)   46 (1)
    60 61 (1)   45 (1)
    59 60 (1)   44 (1)
    58 59 (1)   43 (1)
    57 58 (1)   42 (1)
    56 57 (1)   41 (1)
    55 56 (1)   40 (1)
    54 55 (1)   39 (1)
    53 54 (1)   38 (1)
    52 53 (1)   37 (1)
    51 52 (1)   36 (1)
    50 51 (1)   35 (1)
    49 50 (1)   34 (1)
    48 49 (1)   33 (1)
    47 48 (1)   32 (1)
    46 47 (1)   31 (1)
    45 46 (1)   30 (1)
    44 45 (1)   29 (1)
    43 44 (1)   28 (1)
    42 43 (1)   27 (1)
    41 42 (1)   26 (1)
    40 41 (1)   25 (1)
    39 40 (1)   24 (1)
    38 39 (1)   23 (1)
    37 38 (1)   22 (1)
    36 37 (1)   21 (1)
    35 36 (1)   20 (1)
    34 35 (1)   19 (1)
    33 34 (1)   18 (1)
    32 33 (1)   17 (1)
    31 32 (1)   16 (1)
    30 31 (1)   15 (1)
    29 30 (1)   12.1 (1)
    28 29 (1)   12 (1)
    27 28 (1)   11.6 (1)
    26 27 (1)   11.5
    25 26 (1)   11.1
    24 25 (1)   11
    23 24 (1)   10.6
    22 23 (1)   10.5
    21 22 (1)   10.0-10.1
    20 21 (1)   9.5-9.6
    19 20 (1)   9
    18 19 (1)    
    17 18 (1)    
    16 17 (1)    
    15 16 (1)    
    14 15 (1)    
    13 14 (1)    
    12 13 (1)    
    11 12    
    10 11    
    9 10    
    8 9    
    7 8    
    6 7    
    5 6    
    4 5    
    3.6 4    
    3.5      
    3      
    2      
Safari on iOS Opera Mini Android Browser Blackberry Browser Opera Mobile Android Chrome Android Firefox IE Mobile Android UC Browser Samsung Internet QQ Browser Baidu Browser KaiOS Browser
15 all 94 10 (1) 64 94 92 11 12.12 15.0 10.4 7.12 2.5
14.5-14.8   4.4.3-4.4.4 7 12.1     10   14.0      
14.0-14.4   4.4   12         13.0      
13.4-13.7   4.2-4.3   11.5         12.0      
Show all
13.3   4.1   11.1         11.1-11.2      
13.2   4   11         10.1      
13.0-13.1   3   10         9.2      
12.2-12.5   2.3             8.2      
12.0-12.1   2.2             7.2-7.4      
11.3-11.4   2.1             6.2-6.4      
11.0-11.2                 5.0-5.4      
10.3                 4      
10.0-10.2                        
9.3                        
9.0-9.2                        
8.1-8.4                        
8                        
7.0-7.1                        
6.0-6.1                        
5.0-5.1                        
4.2-4.3                        
4.0-4.1                        
3.2                        

Notes

  1. Supports protocols mailto, mms, nntp, rtsp, and webcal but requires custom protocols to start with web+

Resources

Data by caniuse.com
Licensed under the Creative Commons Attribution License v4.0.
https://caniuse.com/registerprotocolhandler