bookmarks.update()

bookmarks.update() updates the title and/or URL of a bookmark, or the name of a bookmark folder.

Warning: If your extension attempts to update a bookmark in the bookmarks tree root node, the call will raise an error with the message: "The bookmark root cannot be modified" and the bookmark won't be updated.

This is an asynchronous function that returns a Promise.

Syntax

js
let updating = browser.bookmarks.update(
  id,                    // string
  changes                // object
)

Parameters

id

A string specifying the ID of the bookmark or bookmark folder to update.

changes

An object specifying the changes to apply, with some combination of the following fields. Any items not specified aren't changed in the referenced bookmark or folder:

title Optional

A string containing the new title of the bookmark, or the new name of the folder if id refers to a folder.

url Optional

A string providing a new URL for the bookmark.

Return value

A Promise that will be fulfilled with a single bookmarks.BookmarkTreeNode object, representing the updated bookmark. If the bookmark item corresponding to the id parameter can't be found, the promise is rejected.

Examples

This example renames all folders named "MDN" to "Mozilla Developer Network (MDN)".

js
function onFulfilled(bookmarkItem) {
  console.log(bookmarkItem.title);
}

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

function updateFolders(items) {
  for (const item of items) {
    // only folders, so skip items with a `url`
    if (!item.url) {
      browser.bookmarks
        .update(item.id, {
          title: "Mozilla Developer Network (MDN)",
        })
        .then(onFulfilled, onRejected);
    }
  }
}

browser.bookmarks.search({ title: "MDN" }).then(updateFolders, onRejected);

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Firefox for Android
Safari on iOS
update

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support

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