Permissions

Experimental

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

The Permissions interface of the Permissions API provides the core Permission API functionality, such as methods for querying and revoking permissions

Methods

Permissions.query()
Returns the user permission status for a given API.
Permissions.request()
Requests permission to use a given API. This is not currently supported in any browser.
Permissions.requestAll()
Requests permission to use a given set of APIs. This is not currently supported in any browser.
Permissions.revoke()
Revokes the permission currently set on a given API.

Example

navigator.permissions.query({name:'geolocation'}).then(function(result) {
  if (result.state === 'granted') {
    showLocalNewsWithGeolocation();
  } else if (result.state === 'prompt') {
    showButtonToEnableLocalNews();
  }
  // Don't do anything if the permission was denied.
});

Specifications

Specification
Permissions
# permissions-interface

Browser Support

BCD tables only load in the browser