Optimizely will be sunsetting Full Stack Experimentation on July 29, 2024. See the recommended Feature Experimentation migration timeline and documentation.

Dev GuideAPI Reference
Dev GuideAPI ReferenceUser GuideGitHubNuGetDev CommunitySubmit a ticketLog In
GitHubNuGetDev CommunitySubmit a ticket

Get Enabled Features

This topic describes the Get Enabled Features method, which retrieves a list of features that are enabled for the user.

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.


SDK v3.0 and higher


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.


The table below lists the required and optional parameters in C#.

stringThe ID of the user to check.
mapA 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.


A list of the feature keys that are enabled for the user, or an empty list if no features could be found for the specified user.


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

var actualFeaturesList = OptimizelyMock.Object.GetEnabledFeatures(TestUserId, userAttributes);

Source files

The language/platform source files containing the implementation for C# is Optimizely.cs.