In Statsig, you can use Dynamic Configs to send a different set of values (strings, numbers, etc.) to your clients based on specific user attributes. This is similar to Feature Gates, but you get an entire JSON object you can configure on the server and fetch typed parameters from it. Here's an example from the documentation:
var config = Statsig.GetConfig("awesome_product_details");
You can also use Layers/Experiments to run A/B/n experiments. We offer two APIs, but we recommend the use of layers to enable quicker iterations with parameter reuse.
However, if you're looking to dynamically set a series of flags for a user, you might need to replicate your current system using Statsig's rules. You can create rules based on user attributes and set the value of the flags accordingly.
Remember to provide a StatsigUser object whenever possible when initializing the SDK, passing as much information as possible in order to take advantage of advanced gate and config conditions.
If you're running tests in a full-stack environment and using the Ruby SDK on the server, you can override the flag value locally. Here's the relevant documentation: Local Overrides. This allows you to control the flag values based on your setup.