HomeGuidesAPI Reference
Submit Documentation FeedbackJoin Developer CommunityOptimizely GitHubOptimizely NuGetLog In

Retrieves a list of features that are enabled for the user. Invoking this method is equivalent to running [Is Feature Enabled](🔗) for each feature in the datafile sequentially.

This method takes into account the user `attributes` passed in, to determine if the user is part of the audience that qualifies for the experiment.

## Version

SDK v3.0

## Description

This method iterates through all feature flags and for each feature flag invokes [Is Feature Enabled](🔗). If a feature is enabled, this method adds the feature’s key to the return list.

## Parameters

The table below lists the required and optional parameters in Python.

**user_id** _required_stringThe ID of the user to check for access to features.
**attributes** _optional_dictA map of custom key-value string pairs specifying attributes for the user that are used for audience targeting. Non-string values are only supported in the 3.0 SDK and above.

## Returns

A list of the keys of the features that are enabled for the user.

## Examples

This section shows a simple example of how you can use the method.

## Source files

The language/platform source files containing the implementation for Python is [optimizely.py](🔗).