> ## 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 React Native Personalize SDK.

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

## DataSource

<CodeGroup>
  ```typescript TypeScript theme={null}
  enum DataSource {
    /** Returned from local cache. */  
   CACHE,
    /** Fetched from the MoEngage backend. */
    NETWORK,
  }
  ```
</CodeGroup>

## ExperienceStatus

<CodeGroup>
  ```typescript TypeScript theme={null}
  enum ExperienceStatus {
    /** Currently running. */
    ACTIVE,
    /** Manually paused on the dashboard. */
    PAUSED,
    /** Scheduled to start in the future. */
    SCHEDULED,
  }
  ```
</CodeGroup>

## ExperienceFailureReason

<CodeGroup>
  ```typescript TypeScript theme={null}
  type ExperienceFailureReason =
      | "USER_IN_CAMPAIGN_CONTROL_GROUP"
      | "USER_IN_GLOBAL_CONTROL_GROUP"
      | "USER_NOT_IN_SEGMENT"
      | "INVALID_EXPERIENCE_KEY"
      | "MAX_LIMIT_BREACHED"
      | "EXPERIENCE_NOT_ACTIVE"
      | "EXPERIENCE_EXPIRED"
      | "PERSONALIZATION_FAILED";
  ```
</CodeGroup>

## ExperienceCampaign

<CodeGroup>
  ```typescript TypeScript theme={null}
  class ExperienceCampaign {
    /** The unique identifier for the experience. */
    experienceKey: string;
    /** The JSON payload containing personalization data. */
    payload: Record<string, any>;
    /** Context for tracking (passed to impression/click events). */
    experienceContext: Record<string, string>;
    /** Whether data came from cache or network. */
    source: DataSource;
  }
  ```
</CodeGroup>

## ExperienceCampaignFailure

<CodeGroup>
  ```typescript TypeScript theme={null}
  class ExperienceCampaignFailure {
    /** The failure reason code. */
    reason: ExperienceFailureReason;
    /** Experience keys affected by this failure. */
    experienceKeys: string[];
  }
  ```
</CodeGroup>

## ExperienceCampaignsResult

<CodeGroup>
  ```typescript TypeScript theme={null}
  class ExperienceCampaignsResult {
    /** Successfully fetched experience campaigns. */
    experiences: ExperienceCampaign[];
    /** Per-key failures (business logic errors from server). */
    failures: ExperienceCampaignFailure[];
  }
  ```
</CodeGroup>

## ExperienceCampaignMeta

<CodeGroup>
  ```typescript TypeScript theme={null}
  class ExperienceCampaignMeta {
    /** The unique identifier for the experience. */
    experienceKey: string;
    /** The display name of the experience. */
    experienceName: string;
    /** The current status of the experience. */
    status: ExperienceStatus;
  }
  ```
</CodeGroup>

## ExperienceCampaignsMetadata

<CodeGroup>
  ```typescript TypeScript theme={null}
  class ExperienceCampaignsMetadata {
    /** Whether data came from cache or network. */
    source: DataSource;
    /** List of experience metadata entries. */
    experiences: ExperienceCampaignMeta[];
  }
  ```
</CodeGroup>
