FeatureFlagOptions

public struct FeatureFlagOptions

Configuration options for feature flags behavior.

Use this to control how and when feature flags are loaded by the SDK.

Example — Default behavior (prefetches flags during initialization):

let options = MixpanelOptions(
    token: "YOUR_TOKEN",
    featureFlagOptions: FeatureFlagOptions(enabled: true)
)

Example — Deferred loading (for use with identify):

let options = MixpanelOptions(
    token: "YOUR_TOKEN",
    featureFlagOptions: FeatureFlagOptions(enabled: true, prefetchFlags: false)
)
let mp = Mixpanel.initialize(options: options)
// identify() triggers loadFlags() internally when the distinctId changes
mp.identify(distinctId: "user123")

If identify may be called with the same persisted distinctId (no change), call mp.flags.loadFlags() explicitly to ensure flags are fetched.

  • Whether feature flags are enabled. Defaults to false.

    Declaration

    Swift

    public let enabled: Bool
  • Custom context dictionary sent with flag fetch requests.

    Declaration

    Swift

    public let context: [String : Any]
  • Whether the SDK should prefetch feature flags during initialization. Defaults to true.

    Set to false if you need to call identify before the first flag fetch, then manually trigger loading via flags.loadFlags().

    Declaration

    Swift

    public let prefetchFlags: Bool
  • Undocumented

    Declaration

    Swift

    public init(
      enabled: Bool = false,
      context: [String: Any] = [:],
      prefetchFlags: Bool = true
    )