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

Update compatibility data on GitHub
ChromeEdgeFirefoxOperaSafariFirefox for Android
removeFileChrome Full support YesEdge Full support 79Firefox Full support 48Opera Full support YesSafari No support NoFirefox Android No support 48 — 79


Full support  
Full support
No support  
No support


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.