MDN will be in maintenance mode on Wednesday September 20th, starting at 10 AM Pacific / 5 PM UTC, for about 1 hour.



Ask to give up the permissions listed in the given permissions.Permissions object.

The Permissions argument may contain either an origins property, which is an array of host permissions, or a permissions property, which is an array of API permissions, or both. Permissions must come from the set of permissions defined in the optional_permissions manifest.json key.

This is an asynchronous function that returns a Promise.


var removing = browser.permissions.remove(
  permissions                // Permissions object


A permissions.Permissions object.

Return value

A Promise that will be fulfilled with true if the permissions listed in the permissions argument were removed, or false otherwise.

Browser compatibility

ChromeEdgeFirefoxFirefox for AndroidOpera
Basic supportYesNo5555Yes


This code adds a click handler that removes a given permission.

const permissionToRemove = {
  permissions: ["history"]

function remove() {
  browser.permissions.remove(permissionToRemove).then(result => {

document.querySelector("#remove").addEventListener("click", remove);

Example extensions


This API is based on Chromium's chrome.permissions API.

Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.

Document Tags and Contributors

 Contributors to this page: wbamberg
 Last updated by: wbamberg,