---
title: "Per-user reward breakdowns"
method: GET
path: "/v3/rewards/breakdown"
tags: ["Rewards"]
---

# Per-user reward breakdowns

`GET /v3/rewards/breakdown`

Returns current per-account reward breakdown rows by chain and optional
vault. Merkl rows are reconciled with direct Merkl user reward data at
query time when available; fully claimed Merkl rows are omitted, and
stored Merkl rows older than 24 hours are hidden when live Merkl data
cannot be read. Chain filters accept at most 12 distinct supported chain
IDs and normalize duplicates before database and external requests. Each
account/filter combination is privately cached for five minutes, with a
stale copy available for up to fifteen additional minutes when the
handler fails. Responses with a degraded live provider are marked in
`meta.degradedProviders` and are not cached.

## Query parameters

- `chainId` string
- `account` string, required
- `vault` string

## Response `200`

Reward breakdowns

- object
  - `data` RewardBreakdown[]
    - `chainId` integer, required
    - `vault` string, required
    - `recipient` string, required
    - `rewardToken` string, required
    - `amount` string, required — Current claimable reward token amount as a bigint string in the reward token's native unit scale.
    - `campaignId` string, required
    - `timestamp` string, date-time, required
  - `meta` PaginationMeta
    - `total` integer — Exact total count when the endpoint provides one.
    - `hasMore` boolean — Indicates whether another page exists beyond the current page.
    - `offset` integer
    - `limit` integer — Echoed page size after endpoint-side clamping.
    - `timestamp` string, date-time, required
    - `chainId` string — Comma-separated chain IDs for multi-chain responses.
    - `degradedProviders` string[] — Live providers whose data is incomplete in this response.

## Other responses

- `400` — Invalid account, vault, or chain filter. Chain filter failures use `INVALID_CHAIN_ID`; malformed values report `details.reason: invalid`, while more than 12 distinct IDs report `details.reason: too_many` and `details.maxDistinctChainIds: 12`.
- `404` — One or more parsed chain IDs are not in the supported chain registry. The response uses `CHAIN_NOT_SUPPORTED` with `details.reason: unsupported`.

---

[API](https://skmtc.dev/euler/apis/euler-data-api-v3.md) · [All operations](https://skmtc.dev/euler/apis/euler-data-api-v3/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/euler/euler-data-api-v3/revisions/9e69e7cdb054/schema)
