downloads.DownloadQuery

The DownloadQuery type of the downloads API defines a set of parameters that can be used to search the downloads manager for a specific set of downloads.

This type is used for example in downloads.search() and downloads.erase(), as a query object to filter the set of DownloadItems to return or erase.

Type

Values of this type are objects. They contain the following properties:

cookieStoreIdOptional
The cookie store ID of the contextual identity in which the download took place.
queryOptional
An array of strings. Include only DownloadItems whose filename or url contains all of the given strings. You can also include terms beginning with a dash (-) — these terms must not be contained in the item's filename or url for it to be included.
startedBeforeOptional
A DownloadTime. Include only DownloadItems that started before the given time.
startedAfterOptional
A DownloadTime. Include only DownloadItems that started after the given time.
endedBeforeOptional
A DownloadTime. Include only DownloadItems that ended before the given time.
endedAfterOptional
A DownloadTime. Include only DownloadItems that ended after the given time.
totalBytesGreaterOptional
A number representing a number of bytes. Include only DownloadItems whose totalBytes is greater than the given number.
totalBytesLessOptional
A number representing a number of bytes. Include only DownloadItems whose totalBytes is less than the given number.
filenameRegexOptional
A string representing a regular expression. Include only DownloadItems whose filename value matches the given regular expression.
urlRegexOptional
A string representing a regular expression. Include only DownloadItems whose url value matches the given regular expression.
limitOptional
An integer representing a number of results. Include only the specified number of DownloadItems.
orderByOptional
An array of strings representing DownloadItem properties the search results should be sorted by. For example, including startTime then totalBytes in the array would sort the DownloadItems by their start time, then total bytes — in ascending order. To specify sorting by a property in descending order, prefix it with a hyphen, for example -startTime.
idOptional
An integer representing the ID of the downloads.DownloadItem you want to query.
urlOptional
A string representing the absolute URL that the download was initiated from, before any redirects.
filenameOptional
A string representing the absolute local path of the download file you want to query.
dangerOptional
A string representing a downloads.DangerType — include only DownloadItems with this danger value.
mimeOptional
A string representing a MIME type. Include only DownloadItems with this mime value.
startTimeOptional
A string representing an ISO 8601 format time. Include only DownloadItems with this startTime value.
endTimeOptional
A string representing an ISO 8601 format time. Include only will limited to DownloadItems with this endTime value.
stateOptional
A string representing a download downloads.State (in_progress, interrupted, or complete). Include onlyDownloadItems with this state value.
pausedOptional
A boolean that indicates whether a download is paused — i.e. has stopped reading data from the host, but kept the connection open (true), or not (false). Include only DownloadItems with this paused value.
errorOptional
A string representing an downloads.InterruptReason — a reason why a download was interrupted. Include only DownloadItems with this error value.
bytesReceivedOptional
A number representing the number of bytes received so far from the host, without considering file compression. Include only DownloadItems with this bytesReceived value.
totalBytesOptional
A number representing the total number of bytes in the downloaded file, without considering file compression. Include only DownloadItems with this totalBytes value.
fileSizeOptional
number. Number of bytes in the whole file post-decompression, or -1 if unknown. A number representing the total number of bytes in the file after decompression. Include only DownloadItems with this fileSize value.
existsOptional
A boolean indicating whether a downloaded file still exists (true) or not (false). Include only DownloadItems with this exists value.

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
DownloadQuery
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
bytesReceived
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
cookieStoreId
No
No
92
?
No
No
?
?
No
?
?
?
danger
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
endedAfter
Yes
79
47
The parameter is ignored.
?
Yes
No
?
?
48-79
?
?
?
endedBefore
Yes
79
47
The parameter is ignored.
?
Yes
No
?
?
48-79
?
?
?
endTime
Yes
79
No
?
Yes
No
?
?
No
?
?
?
error
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
exists
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
filename
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
filenameRegex
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
fileSize
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
id
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
limit
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
mime
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
orderBy
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
paused
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
query
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
startedAfter
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
startedBefore
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
startTime
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
state
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
totalBytes
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
totalBytesGreater
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
totalBytesLess
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
url
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?
urlRegex
Yes
79
47
?
Yes
No
?
?
48-79
?
?
?

Note: 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.

© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/downloads/DownloadQuery