Skip to main content

Flagsmith Rust SDK

The SDK client for Rust https://flagsmith.com/. Flagsmith allows you to manage feature flags and remote config across multiple projects, environments and organisations.

The source code for the client is available on Github.

Basic Usage#

The SDK is initialised against a single environment within a project on https://flagsmith.com, for example the Development or Production environment. You can find your environment key in the Environment settings page.

Usage#

Retrieving feature flags for your project#

In your application initialise the BulletTrain client with your API key

let bt = bullettrain::Client::new("<Your API Key>");

To check if a feature flag exists and is enabled:

let bt = bullettrain::Client::new("<Your API Key>");
if bt.feature_enabled("cart_abundant_notification_ab_test_enabled")? {
println!("Feature enabled");
}

To get the configuration value for feature flag value:

use bullettrain::{Client,Value};
let bt = Client::new("<Your API Key>");
if let Some(Value::String(s)) = bt.get_value("cart_abundant_notification_ab_test")? {
println!("{}", s);
}

More examples can be found in the Tests

Override default configuration#

By default, client is using default configuration. You can override configuration as follows:

let bt = bullettrain::Client {
api_key: String::from("secret key"),
base_uri: String::from("https://features.on.my.own.server/api/v1/"),
};