Python Provider
Get Started
An OpenFeature Provider is a pluggable integration layer that connects the OpenFeature SDK to a specific feature flag management system (e.g., VWO or custom in-house solutions). OpenFeature is an open-source standard for feature flagging, designed to provide a vendor-agnostic approach, enabling organizations to switch between feature flagging tools without rewriting application code.
This VWO OpenFeature Provider for Python helps you integrate Feature Experimentation systems into your Python-based server applications.
Check this out
Check this out
Check this out
Check this out
NoteThis library is intended to be used in server-side contexts and has not been evaluated for use on mobile devices.
Requirements
Python: 3.8+
SDK Installation
It's recommended you use virtualenv to create isolated Python environments.
pip install vwo-openfeature-provider-pythonUsage
from openfeature import api
from vwo_provider import VWOProvider
from openfeature.evaluation_context import EvaluationContext
from vwo import init
options = {
'sdk_key': '32-alpha-numeric-sdk-key', # SDK Key
'account_id': '123456' # VWO Account ID
}
# Initialize the VWO client
vwo_client = init(options)
# Initialize the VWO provider
vwo_provider = VWOProvider(vwo_client)
# Registering the default provider
api.set_provider(vwo_provider)
# A client bound to the default provider
default_client = api.get_client()
def start():
print('BOOL', default_client.get_boolean_value('unique_feature_key', False, EvaluationContext(attributes={'id': 'user_id', 'key': 'boolean_variable'})))
print('STRING', default_client.get_string_value('unique_feature_key', '', EvaluationContext(attributes={'id': 'user_id', 'key': 'string_variable'})))
print('INTEGER', default_client.get_integer_value('unique_feature_key', 10, EvaluationContext(attributes={'id': 'user_id', 'key': 'number_variable'})))
print('FLOAT', default_client.get_float_value('unique_feature_key', 10.0, EvaluationContext(attributes={'id': 'user_id', 'key': 'float_variable'})))
print('OBJECT', default_client.get_object_value('unique_feature_key', {}, EvaluationContext(attributes={'id': 'user_id', 'key': 'json-variable'})))
start()API Details
API | Arguments | Argument Description | API Description |
|---|---|---|---|
|
| vwo_client: The initialized VWO SDK client instance. | Creates a new instance of |
|
| provider: The VWO provider instance that will handle feature flag evaluations. | Sets the provider for OpenFeature, enabling it to evaluate feature flags using VWO. |
|
| context: Contains user details (e.g., | Sets the evaluation context for feature flag evaluations, helping with user-based targeting. |
|
| feature_key: The unique key representing the feature flag. | Fetches the boolean value of a feature flag. If |
|
| feature_key: The unique key representing the feature flag. | Fetches the string value of a feature flag. Requires |
|
| feature_key: The unique key representing the feature flag. | Fetches the numeric value of a feature flag. Requires |
|
| feature_key: The unique key representing the feature flag. | Fetches the JSON object value of a feature flag. If |
Updated 5 months ago
