This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The permissionState()
method of the PushManager
interface returns a Promise
that resolves to a DOMString
indicating the permission state of the push manager. Possible values are 'prompt'
, 'denied'
, or 'granted'
.
Note: As of Firefox 44, the permissions for Notifications and Push have been merged. If permission is granted for notifications, push will also be enabled.
Syntax
PushManager.permissionState(options).then(function(PushMessagingState) { ... });
Parameters
options Optional
- An object containing optional configuration parameters. It can have the following properties:
userVisibleOnly
: A boolean indicating that the returned push subscription will only be used for messages whose effect is made visible to the user.applicationServerKey
: A public key your push server will use to send messages to client apps via a push server. This value is part of a signing key pair generated by your application server and usable with elliptic curve digital signature (ECDSA) over the P-256 curve.
Returns
A Promise
that resolves to a DOMString
with a value of 'prompt'
, 'denied'
, or 'granted'
.
Specifications
Specification | Status | Comment |
---|---|---|
Push API The definition of 'permissionState()' in that specification. |
Working Draft | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
permissionState | Chrome Full support 42 | Edge
Full support
16
| Firefox
Full support
44
| IE No support No | Opera Full support 29 | Safari No support No | WebView Android No support No | Chrome Android Full support 42 | Firefox Android
Full support
48
| Opera Android Full support 29 | Safari iOS No support No | Samsung Internet Android Full support 4.0 |
Legend
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
- See implementation notes.
- See implementation notes.
- User must explicitly enable this feature.
- User must explicitly enable this feature.