---
title: "GET /api/v1/user/rewards"
method: GET
path: "/api/v1/user/rewards"
tags: ["User"]
---

# GET /api/v1/user/rewards

`GET /api/v1/user/rewards`

## Request

- Base URL: `https://api.ekiden.fi`
- URL: `https://api.ekiden.fi/api/v1/user/rewards`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/ekidenfi/apis/ekiden-gateway/docs/api/v1/user/rewards/get.ts> (a function with typed inputs; its response is checked against the schema)

## Query parameters

- `limit` integer, nullable
- `cursor` string, nullable

## Response `200`

Reward summary

- RewardSummaryResponse: `GET /user/rewards` response (spec §10).
  - `breakdown` XpBreakdown, required: Lifetime XP per source group (spec §10 `breakdown`). String-encoded integers like every XP amount on the wire.
    - `maker` string, required
    - `position` string, required
    - `quest` string, required
    - `referral` string, required
    - `taker` string, required
  - `closed_tournament_eligible` boolean, required: Closed-tournament eligibility: XP at/above the configured floor (`gateway.closed_tournament_min_xp`). Ranks removed 2026-07-20.
  - `ledger` RewardsLedgerEntry[], required: One ledger page, newest first.
    - `created_at` string, required: RFC 3339 UTC timestamp.
    - `delta_xp` string, required
    - `reason` string, required
  - `next_cursor` string, nullable: Cursor for the next ledger page; null when this page is the last.
  - `referral` ReferralStatus, required: Referral program status for the viewer as a referrer.
    - `downline_count` integer, required: Direct (L1) referrals.
    - `l1_bps_effective` integer, required: L1 cut in bps — flat for everyone (ranks removed 2026-07-20).
  - `season` SeasonStatus: Season-1 starting-multiplier block for `GET /user/rewards` (season1-conversion §5). Present only when the wallet's active-season multiplier is above 1.0× (a positive band); the whole block is omitted at 1.0×.
    - `multiplier_bps` integer, required: The wallet's Season-1 starting multiplier in bps (always > 0 when the block is present).
    - `name` string, required: Active season label (config `active_season`, e.g. `season1`).
    - `source` string, required: The band the wallet's merged Total XP fell into, e.g. `band_2000bps` — the source of the multiplier.
  - `xp_balance` string, required

## Changes

- **2026-09-10** `fad9eecaba2e`: 8 breaking, 6 info
  - the `ledger/items/created_at` response's property type changed from `integer` to `string`, and format from `int64` to no format for status `200`
  - the `ledger/items/delta_xp` response's property type changed from `integer` to `string`, and format from `int64` to no format for status `200`
  - the `xp_balance` response's property type changed from `integer` to `string`, and format from `int64` to no format for status `200`
  - removed the required property `current_week` from the response with the `200` status
  - …10 more
- **2026-05-28** `75ffe546b73a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ekidenfi/apis/ekiden-gateway/changes/api/v1/user/rewards/get.md)

---

[API](https://skmtc.dev/ekidenfi/apis/ekiden-gateway.md) - [All operations](https://skmtc.dev/ekidenfi/apis/ekiden-gateway/llms.txt) - [OpenAPI document](https://skmtc.dev/ekidenfi/apis/ekiden-gateway/revisions/fad9eecaba2e?raw)
