{ "title":"Push API", "description":"API to allow messages to be pushed from a server to a browser, even when the site isn't focused or even open in the browser.", "spec":"https://w3c.github.io/push-api/", "status":"wd", "links":[ { "url":"https://developer.mozilla.org/en-US/docs/Web/API/Push_API", "title":"MDN Web Docs - Push API" }, { "url":"https://developers.google.com/web/updates/2015/03/push-notifications-on-the-open-web", "title":"Google Developers article" } ], "bugs":[ ], "categories":[ "JS API" ], "stats":{ "ie":{ "5.5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"n", "11":"n" }, "edge":{ "12":"n", "13":"n", "14":"n", "15":"n", "16":"n", "17":"y", "18":"y", "79":"y #2", "80":"y #2", "81":"y #2", "83":"y #2", "84":"y #2", "85":"y #2", "86":"y #2", "87":"y #2", "88":"y #2", "89":"y #2", "90":"y #2", "91":"y #2", "92":"y #2", "93":"y #2", "94":"y #2", "95":"y #2", "96":"y #2", "97":"y #2", "98":"y #2", "99":"y #2", "100":"y #2", "101":"y #2", "102":"y #2", "103":"y #2", "104":"y #2", "105":"y #2", "106":"y #2", "107":"y #2", "108":"y #2", "109":"y #2", "110":"y #2", "111":"y #2", "112":"y #2", "113":"y #2", "114":"y #2", "115":"y #2", "116":"y #2", "117":"y #2", "118":"y #2", "119":"y #2", "120":"y #2", "121":"y #2", "122":"y #2", "123":"y #2", "124":"y #2", "125":"y #2", "126":"y #2", "127":"y #2", "128":"y #2", "129":"y #2", "130":"y #2", "131":"y #2", "132":"y #2", "133":"y #2", "134":"y #2", "135":"y #2", "136":"y #2", "137":"y #2", "138":"y #2", "139":"y #2" }, "firefox":{ "2":"n", "3":"n", "3.5":"n", "3.6":"n", "4":"n", "5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"n", "11":"n", "12":"n", "13":"n", "14":"n", "15":"n", "16":"n", "17":"n", "18":"n", "19":"n", "20":"n", "21":"n", "22":"n", "23":"n", "24":"n", "25":"n", "26":"n", "27":"n", "28":"n", "29":"n", "30":"n", "31":"n", "32":"n", "33":"n", "34":"n", "35":"n", "36":"n", "37":"n", "38":"n", "39":"n", "40":"n", "41":"n", "42":"n", "43":"n", "44":"y #2", "45":"y #2 #4", "46":"y #2", "47":"y #2", "48":"y #2", "49":"y #2", "50":"y #2", "51":"y #2", "52":"y #2 #4", "53":"y #2", "54":"y #2", "55":"y #2", "56":"y #2", "57":"y #2", "58":"y #2", "59":"y #2", "60":"y #2 #4", "61":"y #2", "62":"y #2", "63":"y #2", "64":"y #2", "65":"y #2", "66":"y #2", "67":"y #2", "68":"y #2", "69":"y #2", "70":"y #2", "71":"y #2", "72":"y #2", "73":"y #2", "74":"y #2", "75":"y #2", "76":"y #2", "77":"y #2", "78":"y #2", "79":"y #2", "80":"y #2", "81":"y #2", "82":"y #2", "83":"y #2", "84":"y #2", "85":"y #2", "86":"y #2", "87":"y #2", "88":"y #2", "89":"y #2", "90":"y #2", "91":"y #2", "92":"y #2", "93":"y #2", "94":"y #2", "95":"y #2", "96":"y #2", "97":"y #2", "98":"y #2", "99":"y #2", "100":"y #2", "101":"y #2", "102":"y #2", "103":"y #2", "104":"y #2", "105":"y #2", "106":"y #2", "107":"y #2", "108":"y #2", "109":"y #2", "110":"y #2", "111":"y #2", "112":"y #2", "113":"y #2", "114":"y #2", "115":"y #2", "116":"y #2", "117":"y #2", "118":"y #2", "119":"y #2", "120":"y #2", "121":"y #2", "122":"y #2", "123":"y #2", "124":"y #2", "125":"y #2", "126":"y #2", "127":"y #2", "128":"y #2", "129":"y #2", "130":"y #2", "131":"y #2", "132":"y #2", "133":"y #2", "134":"y #2", "135":"y #2", "136":"y #2", "137":"y #2", "138":"y #2", "139":"y #2", "140":"y #2", "141":"y #2", "142":"y #2", "143":"y #2", "144":"y #2", "145":"y #2" }, "chrome":{ "4":"n", "5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"n", "11":"n", "12":"n", "13":"n", "14":"n", "15":"n", "16":"n", "17":"n", "18":"n", "19":"n", "20":"n", "21":"n", "22":"n", "23":"n", "24":"n", "25":"n", "26":"n", "27":"n", "28":"n", "29":"n", "30":"n", "31":"n", "32":"n", "33":"n", "34":"n", "35":"n", "36":"n", "37":"n", "38":"n", "39":"n", "40":"n", "41":"n", "42":"n", "43":"n", "44":"a #1 #2", "45":"a #1 #2", "46":"a #1 #2", "47":"a #1 #2", "48":"a #1 #2", "49":"a #1 #2", "50":"y #2", "51":"y #2", "52":"y #2", "53":"y #2", "54":"y #2", "55":"y #2", "56":"y #2", "57":"y #2", "58":"y #2", "59":"y #2", "60":"y #2", "61":"y #2", "62":"y #2", "63":"y #2", "64":"y #2", "65":"y #2", "66":"y #2", "67":"y #2", "68":"y #2", "69":"y #2", "70":"y #2", "71":"y #2", "72":"y #2", "73":"y #2", "74":"y #2", "75":"y #2", "76":"y #2", "77":"y #2", "78":"y #2", "79":"y #2", "80":"y #2", "81":"y #2", "83":"y #2", "84":"y #2", "85":"y #2", "86":"y #2", "87":"y #2", "88":"y #2", "89":"y #2", "90":"y #2", "91":"y #2", "92":"y #2", "93":"y #2", "94":"y #2", "95":"y #2", "96":"y #2", "97":"y #2", "98":"y #2", "99":"y #2", "100":"y #2", "101":"y #2", "102":"y #2", "103":"y #2", "104":"y #2", "105":"y #2", "106":"y #2", "107":"y #2", "108":"y #2", "109":"y #2", "110":"y #2", "111":"y #2", "112":"y #2", "113":"y #2", "114":"y #2", "115":"y #2", "116":"y #2", "117":"y #2", "118":"y #2", "119":"y #2", "120":"y #2", "121":"y #2", "122":"y #2", "123":"y #2", "124":"y #2", "125":"y #2", "126":"y #2", "127":"y #2", "128":"y #2", "129":"y #2", "130":"y #2", "131":"y #2", "132":"y #2", "133":"y #2", "134":"y #2", "135":"y #2", "136":"y #2", "137":"y #2", "138":"y #2", "139":"y #2", "140":"y #2", "141":"y #2", "142":"y #2" }, "safari":{ "3.1":"n", "3.2":"n", "4":"n", "5":"n", "5.1":"n", "6":"n", "6.1":"n", "7":"n #3", "7.1":"n #3", "8":"n #3", "9":"n #3", "9.1":"n #3", "10":"n #3", "10.1":"n #3", "11":"n #3", "11.1":"n #3", "12":"n #3", "12.1":"n #3", "13":"n #3", "13.1":"n #3", "14":"n #3", "14.1":"n #3", "15":"n #3", "15.1":"n #3", "15.2-15.3":"n #3", "15.4":"n #3", "15.5":"n #3", "15.6":"n #3", "16.0":"n #3", "16.1":"a #3 #5 #6", "16.2":"a #3 #5 #6", "16.3":"a #3 #5 #6", "16.4":"a #3 #5 #6", "16.5":"a #3 #5 #6", "16.6":"a #3 #5 #6", "17.0":"a #3 #5 #6", "17.1":"a #3 #5 #6", "17.2":"a #3 #5 #6", "17.3":"a #3 #5 #6", "17.4":"a #3 #5 #6", "17.5":"a #3 #5 #6", "17.6":"a #3 #5 #6", "18.0":"y #3 #6", "18.1":"y #3 #6", "18.2":"y #3 #6", "18.3":"y #3 #6", "18.4":"y #3 #6", "18.5-18.6":"y #3 #6", "26.0":"y #3 #6", "TP":"y #3 #6" }, "opera":{ "9":"n", "9.5-9.6":"n", "10.0-10.1":"n", "10.5":"n", "10.6":"n", "11":"n", "11.1":"n", "11.5":"n", "11.6":"n", "12":"n", "12.1":"n", "15":"n", "16":"n", "17":"n", "18":"n", "19":"n", "20":"n", "21":"n", "22":"n", "23":"n", "24":"n", "25":"n", "26":"n", "27":"n", "28":"n", "29":"n", "30":"n", "31":"n", "32":"n", "33":"n", "34":"n", "35":"n", "36":"n", "37":"u", "38":"u", "39":"u", "40":"u", "41":"u", "42":"y #2", "43":"y #2", "44":"y #2", "45":"y #2", "46":"y #2", "47":"y #2", "48":"y #2", "49":"y #2", "50":"y #2", "51":"y #2", "52":"y #2", "53":"y #2", "54":"y #2", "55":"y #2", "56":"y #2", "57":"y #2", "58":"y #2", "60":"y #2", "62":"y #2", "63":"y #2", "64":"y #2", "65":"y #2", "66":"y #2", "67":"y #2", "68":"y #2", "69":"y #2", "70":"y #2", "71":"y #2", "72":"y #2", "73":"y #2", "74":"y #2", "75":"y #2", "76":"y #2", "77":"y #2", "78":"y #2", "79":"y #2", "80":"y #2", "81":"y #2", "82":"y #2", "83":"y #2", "84":"y #2", "85":"y #2", "86":"y #2", "87":"y #2", "88":"y #2", "89":"y #2", "90":"y #2", "91":"y #2", "92":"y #2", "93":"y #2", "94":"y #2", "95":"y #2", "96":"y #2", "97":"y #2", "98":"y #2", "99":"y #2", "100":"y #2", "101":"y #2", "102":"y #2", "103":"y #2", "104":"y #2", "105":"y #2", "106":"y #2", "107":"y #2", "108":"y #2", "109":"y #2", "110":"y #2", "111":"y #2", "112":"y #2", "113":"y #2", "114":"y #2", "115":"y #2", "116":"y #2", "117":"y #2" }, "ios_saf":{ "3.2":"n", "4.0-4.1":"n", "4.2-4.3":"n", "5.0-5.1":"n", "6.0-6.1":"n", "7.0-7.1":"n", "8":"n", "8.1-8.4":"n", "9.0-9.2":"n", "9.3":"n", "10.0-10.2":"n", "10.3":"n", "11.0-11.2":"n", "11.3-11.4":"n", "12.0-12.1":"n", "12.2-12.5":"n", "13.0-13.1":"n", "13.2":"n", "13.3":"n", "13.4-13.7":"n", "14.0-14.4":"n", "14.5-14.8":"n", "15.0-15.1":"n", "15.2-15.3":"n", "15.4":"n", "15.5":"n", "15.6-15.8":"n", "16.0":"n", "16.1":"n", "16.2":"n", "16.3":"n", "16.4":"a #7", "16.5":"a #7", "16.6-16.7":"a #7", "17.0":"a #7", "17.1":"a #7", "17.2":"a #7", "17.3":"a #7", "17.4":"a #7", "17.5":"a #7", "17.6-17.7":"a #7", "18.0":"a #7", "18.1":"a #7", "18.2":"a #7", "18.3":"a #7", "18.4":"a #7", "18.5-18.6":"a #7", "26.0":"a #7" }, "op_mini":{ "all":"n" }, "android":{ "2.1":"n", "2.2":"n", "2.3":"n", "3":"n", "4":"n", "4.1":"n", "4.2-4.3":"n", "4.4":"n", "4.4.3-4.4.4":"n", "139":"n" }, "bb":{ "7":"n", "10":"n" }, "op_mob":{ "10":"n", "11":"n", "11.1":"n", "11.5":"n", "12":"n", "12.1":"n", "80":"y" }, "and_chr":{ "139":"y" }, "and_ff":{ "142":"y" }, "ie_mob":{ "10":"n", "11":"n" }, "and_uc":{ "15.5":"y" }, "samsung":{ "4":"y", "5.0-5.4":"y", "6.2-6.4":"y", "7.2-7.4":"y", "8.2":"y", "9.2":"y", "10.1":"y", "11.1-11.2":"y", "12.0":"y", "13.0":"y", "14.0":"y", "15.0":"y", "16.0":"y", "17.0":"y", "18.0":"y", "19.0":"y", "20":"y", "21":"y", "22":"y", "23":"y", "24":"y", "25":"y", "26":"y", "27":"y", "28":"y" }, "and_qq":{ "14.9":"y" }, "baidu":{ "13.52":"n" }, "kaios":{ "2.5":"y #2", "3.0-3.1":"y #2" } }, "notes":"", "notes_by_num":{ "1":"Partial support refers to not supporting `PushEvent.data` and `PushMessageData`", "2":"Requires full browser to be running to receive messages", "3":"Safari 7.0 - 16.0 supported a custom implementation which remains available in later versions, see [Safari Push Notifications](https://developer.apple.com/notifications/safari-push-notifications/) and [WWDC video](https://web.archive.org/web/20210419000205/https://developer.apple.com/videos/play/wwdc2013/614/)", "4":"Disabled on Firefox ESR, but can be re-enabled with the `dom.serviceWorkers.enabled` and `dom.push.enabled` flags", "5":"Only available on macOS 13 Ventura or later", "6":"Supported in Safari, not WKWebView nor SFSafariViewController", "7":"Requires website to first be added to the Home Screen." }, "usage_perc_y":80.83, "usage_perc_a":12.86, "ucprefix":false, "parent":"", "keywords":"web push,push notifications", "chrome_id":"5416033485586432", "shown":true }