Uninstalls the calling add-on.

This API does not require the "management" API permission.

This is an asynchronous function that returns a Promise.


let uninstallingSelf =
  options              // object


options Optional

object. Object which may two properties, both optional:

showConfirmDialog Optional

Boolean. If showConfirmDialog is true, the browser will show a dialog asking the user to confirm that the add-on should be uninstalled. Defaults to false.

dialogMessage Optional

String. An extra message that will be displayed in the confirmation dialog.

Return value

A Promise that will be rejected with an error message if the user canceled uninstall.

Browser compatibility

BCD tables only load in the browser


Uninstall the add-on, asking the user to confirm. In the callback, check whether the user canceled uninstallation.

Note that we haven't passed a fulfillment handler because if uninstallation succeeds, the add-on is no longer around to handle it.

function onCanceled(error) {
  console.log(`Canceled: ${error}`);

let uninstalling ={
  showConfirmDialog: true

uninstalling.then(null, onCanceled);

The same, but also adding a custom message to the dialog:

function onCanceled(error) {
  console.log(`Canceled: ${error}`);

let uninstalling ={
  showConfirmDialog: true,
  dialogMessage: "Testing self-uninstall"

uninstalling.then(null, onCanceled);


This API is based on Chromium's API. This documentation is derived from management.json in the Chromium code.