> ## Documentation Index
> Fetch the complete documentation index at: https://moengage.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Personalize Data Payload

> Review the data models and payload structure returned by the MoEngage Flutter Personalize SDK.

Review the data models and payload structure returned by the MoEngage Flutter Personalize SDK.

## DataSource

```dart Dart wrap theme={null}
enum DataSource {
  /** Returned from local cache. */
  cache,
  /** Fetched from the MoEngage backend. */
  network,
}
```

## ExperienceStatus

```dart Dart theme={null}
enum ExperienceStatus {
  /** Currently running. */
  active,
  /** Manually paused on the dashboard. */
  paused,
  /** Scheduled to start in the future. */
  scheduled,
}
```

## ExperienceFailureReason

```dart Dart theme={null}
enum ExperienceFailureReason {
  userInCampaignControlGroup,  // USER_IN_CAMPAIGN_CONTROL_GROUP
  userInGlobalControlGroup,    // USER_IN_GLOBAL_CONTROL_GROUP
  userNotInSegment,            // USER_NOT_IN_SEGMENT
  invalidExperienceKey,        // INVALID_EXPERIENCE_KEY
  maxLimitBreached,            // MAX_LIMIT_BREACHED
  experienceNotActive,         // EXPERIENCE_NOT_ACTIVE
  experienceExpired,           // EXPERIENCE_EXPIRED
  personalizationFailed,       // PERSONALIZATION_FAILED
}
```

## ExperienceCampaign

```dart Dart theme={null}
class ExperienceCampaign {
  /// The unique identifier for the experience.
  String experienceKey;
  /// The JSON payload containing personalization data.
  Map<String, dynamic> payload;
  /// Context for tracking (passed to impression/click events).
  Map<String, String> experienceContext;
  /// Whether data came from cache or network.
  DataSource source;
}
```

## ExperienceCampaignFailure

```dart Dart theme={null}
class ExperienceCampaignFailure {
  /// The failure reason.
  ExperienceFailureReason reason;
  /// Experience keys affected by this failure.
  List<String> experienceKeys;
}
```

## ExperienceCampaignsResult

```dart Dart theme={null}
class ExperienceCampaignsResult {
  /// Successfully fetched experience campaigns.
  List<ExperienceCampaign> experiences;
  /// Per-key failures (business logic errors from server).
  List<ExperienceCampaignFailure> failures;
}
```

## ExperienceCampaignMeta

```dart Dart theme={null}
class ExperienceCampaignMeta {
  /// The unique identifier for the experience.
  String experienceKey;
  /// The display name of the experience.
  String experienceName;
  /// The current status of the experience.
  ExperienceStatus status;
}
```

## ExperienceCampaignsMetadata

```dart Dart theme={null}
class ExperienceCampaignsMetadata {
  /// Whether data came from cache or network.
  DataSource source;
  /// List of experience metadata entries.
  List<ExperienceCampaignMeta> experiences;
}
```

## PersonalizeError

```dart Dart theme={null}
class PersonalizeError implements Exception {
  String code;    // e.g. 'SDK_NOT_INITIALIZED', 'NETWORK_ERROR'
  String message;
}
```
