# My tier (https://docs.loybox.com.ar/en/api-reference/mi-cuenta/nivel)



<Endpoint method="GET" path="/v1/me/level" auth="user-token" />

The user's current tier at this commerce, with their points multiplier, their
accumulated progress and which tier comes next.

<Callout type="info">
  The endpoint and its fields say `level`; this documentation says "tier", which is
  the product's term in English. It is the same thing.
</Callout>

## Headers
<Fields>
  <Field name="X-Commerce-Id" type="integer" location="header" required="true">
    Id of the commerce integrating the API. Every response is scoped to this
    commerce.
  </Field>
</Fields>

## Response
A [Tier](https://docs.loybox.com.ar/api-reference/objetos#nivel) object.

```bash
curl https://loybox-public-api-752998171300.southamerica-west1.run.app/v1/me/level \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -H "X-Commerce-Id: 87"
```

```json
// 200 OK
{
  "name": "Plata",
  "rank": 2,
  "points_multiplier": 1.25,
  "icon_url": "https://cdn.loybox.com.ar/levels/plata.png",
  "reached_at": "2026-05-11T10:00:00Z",
  "expiration_date": "2027-05-11T10:00:00Z",
  "is_expired": false,
  "next_level": {
    "name": "Oro",
    "rank": 3,
    "threshold_type": "points",
    "threshold": 5000
  },
  "total_earned_points": 3120,
  "total_spent_amount": 312000,
  "total_consumptions_count": 48
}
```

<Callout type="info">
  The tier names in the example (`Plata`, `Oro`) are the ones the commerce typed.
  They are data, not interface: Loybox does not translate them.
</Callout>

## How to build the progress bar
Progress is calculated against the lifetime accumulated figure, not against the
balance. Depending on the next tier's `threshold_type`:

| `threshold_type` | Compare it with       |
| ---------------- | --------------------- |
| By points        | `total_earned_points` |
| By amount spent  | `total_spent_amount`  |

<Callout type="info" title="Redeeming never demotes anyone">
  The tier is measured over the full history of the relationship, so spending points
  lowers the balance but never the tier. See
  [How members move up](https://docs.loybox.com.ar/niveles/como-suben-de-nivel).
</Callout>

## Errors
| Code  | When                                                                                    |
| ----- | --------------------------------------------------------------------------------------- |
| `401` | The access token is missing, expired, or does not belong to an end user.                |
| `404` | The user has no tier assigned at this commerce yet, or the commerce does not use tiers. |
| `422` | The `X-Commerce-Id` header is missing.                                                  |

<Callout type="warn" title="The 404 is the normal case for a new member">
  Do not treat it as a failure. When the user has no tier yet, or the commerce does
  not use tiers, the right move is to **hide the tiers section** in the UI, not to
  show an error.
</Callout>
