BackgroundFetchRegistration: matchAll() method

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The matchAll() method of the BackgroundFetchRegistration interface returns an array of matching BackgroundFetchRecord objects.




request Optional

The Request for which you are attempting to find records. This can be a Request object or a URL. If this parameter is omitted, all records are included in the result.

options Optional

An object that sets options for the match operation. The available options are:

ignoreSearch Optional

A boolean value that specifies whether to ignore the query string in the URL. For example, if set to true the ?value=bar part of would be ignored when performing a match. It defaults to false.

ignoreMethod Optional

A boolean value. When true, prevents matching operations from validating the Request http method. If false (the default) only GET and HEAD are allowed.

ignoreVary Optional

A boolean value. When true indicates that the Vary header should be ignored. It defaults to false.

Return value

A Promise that resolves with an array of all matching BackgroundFetchRecord objects.


InvalidStateError DOMException

Returned if the recordsAvailable flag is false, indicating that there is no fetch in progress.


Use matchAll() with no parameters to return all of the records in a background fetch.

const records = await bgFetch.matchAll();
console.log(records); // an array of BackgroundFetchRecord objects


Background Fetch
# background-fetch-registration-match-all

Browser compatibility

BCD tables only load in the browser