declarativeNetRequest.updateDynamicRules

Modifies the set of dynamic rules for the extension. The rules with IDs listed in options.removeRuleIds are first removed, and then the rules given in options.addRules are added. Note that:

  • This update happens as an atomic operation: either all specified rules are added and removed, or an error is returned.
  • These rules are persisted across browser sessions and across extension updates.
  • Static rules specified as part of the extension package can not be removed using this function.
  • declarativeNetRequest.MAX_NUMBER_OF_DYNAMIC_AND_SESSION_RULES is the maximum number of dynamic and session rules an extension can add.

Syntax

js
let updatedRules = browser.declarativeNetRequest.updateDynamicRules(
    options                // object
);

Parameters

options

An object containing details of the rules to add or delete from the dynamic rules.

addRules Optional

An array of declarativeNetRequest.Rule. Details of the rules to add.

removeRuleIds Optional

An array of number. IDs of the rules to remove. Any invalid IDs are ignored.

Return value

A Promise If the request was successful, the promise is fulfilled with no arguments. If the request fails, the promise is rejected with an error message.

Examples

Example extensions

Browser compatibility

BCD tables only load in the browser