Feature Flags¶
As of the versions 1.2, 1.6 and 2.1, we are supporting feature flags. Feature flags are used to enable or disable features in the application. The feature flags are stored in the database. The feature flags are used in the code to check if a feature is enabled or disabled.
Usage¶
Feature flags can be used in the user interface by calling our API. The API endpoints are located at /api/feature_flags.
We created GET, POST, PATCH, PUT and DELETE endpoints for the feature flags. The endpoints are secured with JWT
authentication and are only accessible for users with the role ROLE_ADMINISTRATOR.
Besides that, we extended the endpoint /api/core-version. It now supports feature flags. It will list them under the key
features in the extra section of the response.
Default feature flags¶
We are creating some default feature flags in the database for common features. The default feature flags are created inside doctrine migrations. They can be updated by any instance. Some default feature flags are:
json-to-form- Show the Json-To-Form Form Buildervalidation-info- Show the Validation Info pagescache-usage- Enable the cache usage pagemessage-failed- Show the message failed pageenvironment- Enable the environment feature. It has implications to several pages.