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

# getShopVipTiers

> List all VIP tiers configured for the shop.

Retrieve all VIP tiers for the shop, including their requirements and point multipliers.

## Usage

```javascript theme={null}
MageSDK.getShopVipTiers().then(function(resp) {
  if (resp.success) {
    resp.data.tiers.forEach(function(tier) {
      console.log(tier.name, tier.pointsRequired);
    });
  }
});
```

## Response

<ResponseField name="success" type="boolean">
  Whether the request was successful.
</ResponseField>

<ResponseField name="data.tiers" type="array">
  List of VIP tiers ordered by points required.

  <Expandable title="Tier properties">
    <ResponseField name="id" type="string">
      The tier ID.
    </ResponseField>

    <ResponseField name="name" type="string">
      Display name of the tier.
    </ResponseField>

    <ResponseField name="description" type="string | null">
      Description of the tier, or `null` if not set.
    </ResponseField>

    <ResponseField name="pointsRequired" type="number">
      Points required to reach this tier.
    </ResponseField>

    <ResponseField name="pointsMultiplier" type="number">
      Points earning multiplier for this tier.
    </ResponseField>

    <ResponseField name="badgeImageUrl" type="string | null">
      URL of the tier badge image, or `null` if not set.
    </ResponseField>

    <ResponseField name="badgeColor" type="string | null">
      Hex color code for the tier badge, or `null` if not set.
    </ResponseField>

    <ResponseField name="rewards" type="array">
      Active rewards associated with this tier.

      <Expandable title="Reward properties">
        <ResponseField name="id" type="string">
          The reward ID.
        </ResponseField>

        <ResponseField name="name" type="string">
          Display name of the reward.
        </ResponseField>

        <ResponseField name="discountType" type="string | null">
          Type of discount applied.
        </ResponseField>

        <ResponseField name="pointsCost" type="number">
          Number of points required to redeem.
        </ResponseField>

        <ResponseField name="discountAmount" type="number | null">
          The discount amount.
        </ResponseField>

        <ResponseField name="isActive" type="boolean">
          Whether the reward is currently active.
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="data.entryMethod" type="string">
  How customers qualify for tiers (e.g. `"points"`, `"spend"`, `"purchases"`).
</ResponseField>

<ResponseField name="data.currencySymbol" type="string">
  The shop's currency symbol.
</ResponseField>

<ResponseField name="data.pointsMultiplierMode" type="string | null">
  The multiplier mode, or `null` if not configured.
</ResponseField>

## Sample response

```json theme={null}
{
  "success": true,
  "data": {
    "tiers": [
      {
        "id": "tier_bronze",
        "name": "Bronze",
        "description": "Welcome to the loyalty program!",
        "pointsRequired": 0,
        "pointsMultiplier": 1.0,
        "badgeImageUrl": null,
        "badgeColor": "#CD7F32",
        "rewards": []
      },
      {
        "id": "tier_gold",
        "name": "Gold",
        "description": "Our most valued customers",
        "pointsRequired": 500,
        "pointsMultiplier": 1.5,
        "badgeImageUrl": null,
        "badgeColor": "#FFD700",
        "rewards": [
          {
            "id": "reward_gold_1",
            "name": "Free shipping",
            "discountType": "free_shipping",
            "pointsCost": 200,
            "discountAmount": null,
            "isActive": true
          }
        ]
      }
    ],
    "entryMethod": "points",
    "currencySymbol": "\u00a3",
    "pointsMultiplierMode": null
  }
}
```
