FeaturePolicy: allowedFeatures() method

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

The allowedFeatures() method of the FeaturePolicy interface returns a list of directive names of all features allowed by the Permissions Policy. This enables introspection of individual directives of the Permissions Policy it is run on. As such, allowedFeatures() method returns a subset of directives returned by features().





Return value

An array of strings representing the Permissions Policy directive names that are allowed by the Permissions Policy this method is called on.


The following example logs all the allowed directives for the current document. Please note that these features might be restricted by the Permissions API, if the user did not grant the corresponding permission yet.

// First, get the Permissions Policy object
const featurePolicy = document.featurePolicy;

// Then query feature for specific
const allowed = featurePolicy.allowedFeatures();

for (const directive of allowed) {


No specification found

No specification data found for api.FeaturePolicy.allowedFeatures.
Check for problems with this page or contribute a missing spec_url to mdn/browser-compat-data. Also make sure the specification is included in w3c/browser-specs.

Browser compatibility

BCD tables only load in the browser