PermissionStatus

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The PermissionStatus interface of the Permissions API provides the state of an object and an event handler for monitoring changes to said state.

Properties

PermissionStatus.state Read only  
Returns the state of a requested permission; one of 'granted', 'denied', or 'prompt'.
PermissionStatus.statusRead only
Returns the state of a requested permission; one of 'granted', 'denied', or 'prompt'. Later versions of the specification replace this with PermissionStatus.state.

Event Handler

PermissionStatus.onchange
An event called whenever PermissionStatus.status changes.

Example

navigator.permissions.query({name:'geolocation'}).then(function(permissionStatus) {
  console.log('geolocation permission status is ', permissionStatus.state);
  permissionStatus.onchange = function() {
    console.log('geolocation permission status has changed to ', this.state);
  };
});

Specification

Specification Status Comment
Permissions
The definition of 'PermissionStatus' in that specification.
Working Draft Initial definition.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support43 ?46 ? ? ?
state

44

43 — 441

?46 ? ? ?
onchange43 ?46 ? ? ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support4343 ?46 ? ? ?
state

44

43 — 441

44

43 — 441

?46 ? ? ?
onchange4343 ?46 ? ? ?

1. Supported as status.

Document Tags and Contributors

Contributors to this page: connorshea, chrisdavidmills, panstav, poiru, jpmedley
Last updated by: connorshea,