Frequently Asked Questions (FAQs)

This page answers frequently asked questions about Intellitoggle, the Dart ecosystem SDKs, and feature flag best practices.

1. General

1.1. What is Intellitoggle?

Intellitoggle is a feature flag management platform built for the Dart ecosystem. It allows developers to enable, disable, or roll out features dynamically without redeploying their applications.

1.2. How is Intellitoggle different from other feature flag tools?

Intellitoggle provides first-class support for Dart and Flutter, integrates with the OpenFeature standard, and offers both SDK-based and direct API integrations.

1.3. Do I need to use the OpenFeature SDK?

Yes, Intellitoggle’s recommended integration is via the OpenFeature Dart SDK with the Intellitoggle provider. This ensures compatibility with the OpenFeature specification and portability between providers.

2. Setup & Usage

2.1. How do I get started?

  1. Create an Intellitoggle account and obtain your API key.

  2. Add the SDKs to your Dart/Flutter project.

  3. Initialize the OpenFeature API with the Intellitoggle provider.

  4. Evaluate flags using the SDK.

2.2. How do I evaluate a feature flag?

Basic example:

final enabled = await client.getBooleanValue('new-dashboard', false);
if (enabled) {
  print('Showing new dashboard');
} else {
  print('Fallback to old dashboard');
}

2.3. Can I target specific users?

Yes. You can pass a targeting key and an evaluation context:

final enabled = await client.getBooleanValue(
  'pro-feature',
  false,
  targetingKey: 'user-123',
  evaluationContext: {'plan': 'enterprise'},
);

3. Development & Testing

3.1. Can I run Intellitoggle locally?

Yes. Use the InMemoryProvider for testing or run an OREP server for remote evaluations in development. See Advanced Topics.

3.2. Do flags work offline?

Yes. The SDK caches the last known state of flags and falls back to default values if the service is unreachable.

3.3. Is there Flutter support?

Yes. Flutter apps can integrate via the SDK or by making direct API calls. See Flutter Integration.

4. Security & Privacy

4.1. How does Intellitoggle handle sensitive data?

Attributes used for targeting are only processed for evaluation and not stored. Developers can mark fields as privateAttributes to exclude them from logs. See Security & Privacy.

4.2. Are API calls encrypted?

Yes. All communication with Intellitoggle APIs uses TLS (HTTPS).

4.3. Can I use Intellitoggle in a multi-tenant environment?

Yes. The SDK and APIs enforce tenant isolation using the X-Tenant-ID header.

5. Operations

5.1. How often are flags refreshed?

By default, every 5 minutes with polling. You can configure polling intervals or enable streaming for near real-time updates.

5.2. What happens if a flag doesn’t exist?

The SDK will return the provided default value. You should always provide defaults when evaluating flags.

5.3. How do I manage stale flags?

Flags should be reviewed and removed after experiments or rollouts. See Best Practices.

6. Support

6.1. Where can I get help?