The bookmarks.removeTree() method recursively removes a bookmark folder and all of its contents.

This is an asynchronous function that returns a Promise.


var removingTree = browser.bookmarks.removeTree(
  id                // string


A string specifying the ID of the folder node to be deleted along with its descendants.

Return value

A Promise that will be fulfilled with no arguments when the tree has been removed.

If the node corresponding to the id parameter can't be found, the promise is rejected with an error message.


This example locates a bookmark folder named "MDN" and deletes it along with all of its contents.

function onRemoved() {
  console.log("bookmark item removed!");

function onRejected(error) {
  console.log(`An error: ${error}`);

function removeMDN(searchResults) {
  if (searchResults.length) {
    var removing = browser.bookmarks.removeTree(searchResults[0].id);
    removing.then(onRemoved, onRejected);

var searchingBookmarks ={ title: "MDN" });
searchingBookmarks.then(removeMDN, onRejected);

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxOperaFirefox for Android
removeTreeChrome Full support YesEdge Full support 15Firefox Full support 47Opera Full support YesFirefox Android No support No


Full support  
Full support
No support  
No support


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

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: mdnwebdocs-bot, irenesmith, wbamberg, Makyen, Sheppy
Last updated by: mdnwebdocs-bot,