The removeFile() function of the downloads API removes a downloaded file from disk.

This API removes the file from disk, but does not remove it from the browser's downloads history, therefore a call to will still return the item as a DownloadItem, but its exists attribute will be false.

To remove a file from the downloads history, you need to use downloads.erase().

This is an asynchronous function that returns a Promise.

Note: If you want to remove a downloaded file from disk and erase it from history, you have to call removeFile() before you call downloads.erase(). If you try it the other way around you'll get an error when calling removeFile(), because the browser will no longer have a record of the download.


var removing = browser.downloads.removeFile(
  downloadId      // integer


An integer representing the id of the DownloadItem you want to delete from disk.

Return value

A Promise. If the request was successful, the promise will be fulfilled with no arguments. If the request failed, the promise will be rejected with an error message.

Browser compatibility

ChromeEdgeFirefoxFirefox for AndroidOpera
Basic support Yes No4848 Yes


Remove the most recently downloaded file:

function onRemoved() {
  console.log(`Removed item`);

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

function remove(downloadItems) {
  if (downloadItems.length > 0) {
    var removing = browser.downloads.removeFile(downloadItems[0].id);
    removing.then(onRemoved, onError);

var searching ={
  limit: 1,
  orderBy: ["-startTime"]

searching.then(remove, onError);

Example extensions


This API is based on Chromium's chrome.downloads 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, Makyen, chrisdavidmills
Last updated by: wbamberg,