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

# Rewards

> Dollar-denominated maker reward, history and claim endpoint reference

The user-facing Rewards API is denominated in USDC. It does not expose internal scoring units, reward shares or projected-share values.

## Get My Rewards Summary

```text theme={null}
GET /api/v1/rewards/me/summary
```

**Authentication:** `JWT` or `API key HMAC`

Returns today's per-market rewards, yesterday's settled payouts and the current claimable balance.

Response type: `UserRewardsSummary`.

| Field                        | Type                           | Required | Description                                                                                                                                                                                              |
| ---------------------------- | ------------------------------ | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `todayByMarket`              | `UserRewardsMarketBreakdown[]` | Yes      | Today's per-market rewards, ordered by represented dollar value descending with `marketId` ascending as the stable tie-break. Active rows use `earnedSoFarUsdc`; pending rows use `estimatedRewardUsdc`. |
| `earnedSoFarUsdc`            | string                         | Yes      | USDC payable if active markets settled now, formatted to 6 decimal places.                                                                                                                               |
| `pendingSettlementTotalUsdc` | string                         | Yes      | Estimated USDC from markets awaiting settlement, formatted to 6 decimal places.                                                                                                                          |
| `yesterdaySettled`           | `YesterdaySettledRewards`      | Yes      | Yesterday's settled total and per-market rows.                                                                                                                                                           |
| `claimableUsdc`              | string                         | Yes      | USDC currently available to claim.                                                                                                                                                                       |
| `allTimeEarnedUsdc`          | string                         | Yes      | Lifetime USDC earned across all reward periods and markets, formatted to 6 decimal places.                                                                                                               |
| `claimInFlight`              | boolean                        | Yes      | Whether a claim dispatch is currently in progress.                                                                                                                                                       |
| `minPayoutUsdc`              | string                         | Yes      | Minimum claimable balance required to claim.                                                                                                                                                             |
| `canClaim`                   | boolean                        | Yes      | Whether the current balance can be claimed now.                                                                                                                                                          |

`UserRewardsMarketBreakdown`:

| Field                 | Type           | Required | Description                                                                    |
| --------------------- | -------------- | -------- | ------------------------------------------------------------------------------ |
| `marketId`            | UUID string    | Yes      | Market UUID.                                                                   |
| `marketSlug`          | string or null | Yes      | Market slug when available.                                                    |
| `marketName`          | string or null | Yes      | Market name when available.                                                    |
| `marketDisplayName`   | string or null | Yes      | Optional market presentation label. Use `marketName` when this is `null`.      |
| `earnedSoFarUsdc`     | string         | Yes      | USDC payable if this market settled now.                                       |
| `pendingSettlement`   | boolean        | Yes      | Whether earning has stopped and settlement is pending.                         |
| `estimatedRewardUsdc` | string or null | Yes      | Estimated settlement amount for a pending market; `null` for an active market. |

`YesterdaySettledRewards`:

| Field           | Type                      | Required | Description                                |
| --------------- | ------------------------- | -------- | ------------------------------------------ |
| `totalPaidUsdc` | string                    | Yes      | Total USDC across yesterday's payout rows. |
| `perMarket`     | `YesterdayMarketPayout[]` | Yes      | Yesterday's per-market payouts.            |

`YesterdayMarketPayout` includes `marketId`, nullable `marketSlug`, `marketName` and `marketDisplayName`, `amountUsdc`, `status`, and optional `txHash`.

## Get My Qualifying Orders

```text theme={null}
GET /api/v1/rewards/me/qualifying-orders
```

**Authentication:** `JWT` or `API key HMAC`

Returns only your resting orders that currently qualify for Liquidity (Maker) Rewards. Non-qualifying orders and internal scoring values are not returned.

Response type: `QualifyingOrder[]`.

| Field               | Type            | Required | Description                                                               |
| ------------------- | --------------- | -------- | ------------------------------------------------------------------------- |
| `orderId`           | UUID string     | Yes      | Order UUID.                                                               |
| `marketId`          | UUID string     | Yes      | Market UUID.                                                              |
| `marketName`        | string or null  | Yes      | Market name when available.                                               |
| `marketDisplayName` | string or null  | Yes      | Optional market presentation label. Use `marketName` when this is `null`. |
| `outcome`           | string or null  | Yes      | Human-readable outcome label for the order.                               |
| `outcomeIndex`      | integer or null | Yes      | Outcome index, `0` or `1`, when resolvable.                               |
| `side`              | enum string     | Yes      | `BUY` or `SELL`.                                                          |
| `price`             | number          | Yes      | Order price from `0` to `1`.                                              |
| `sizeUsdc`          | string          | Yes      | Remaining resting USDC notional, formatted to 6 decimal places.           |

## Get My Reward History

```text theme={null}
GET /api/v1/rewards/me/history
```

**Authentication:** `JWT` or `API key HMAC`

Query parameters:

| Query   | Type    | Required | Description                                     |
| ------- | ------- | -------- | ----------------------------------------------- |
| `page`  | integer | No       | Page number. Default `1`.                       |
| `limit` | integer | No       | Results per page. Default `20`.                 |
| `total` | boolean | No       | Include a bounded total count. Default `false`. |

Response type: `Pagination<UserPayoutHistoryItem>`.

| Field               | Type               | Required | Description                                                                                |
| ------------------- | ------------------ | -------- | ------------------------------------------------------------------------------------------ |
| `marketId`          | UUID string        | Yes      | Market UUID.                                                                               |
| `marketSlug`        | string or null     | Yes      | Market slug when available.                                                                |
| `marketName`        | string or null     | Yes      | Market name when available.                                                                |
| `marketDisplayName` | string or null     | Yes      | Optional market presentation label. Use `marketName` when this is `null`.                  |
| `epochDate`         | string             | Yes      | UTC reward date in `YYYY-MM-DD` format.                                                    |
| `earnedUsdc`        | string             | Yes      | USDC earned before any carried balance.                                                    |
| `carriedInUsdc`     | string             | Yes      | USDC carried in from an earlier payout.                                                    |
| `amountUsdc`        | string             | Yes      | Final USDC amount for the row.                                                             |
| `status`            | enum string        | Yes      | `PENDING`, `PAID`, `CARRIED`, `ROLLED_UP`, `FAILED`, `CANCELLED` or `NEEDS_INVESTIGATION`. |
| `txHash`            | string             | No       | Payout transaction hash when available.                                                    |
| `paidAt`            | string (date-time) | No       | Time the payout was marked paid.                                                           |

## List Reward Markets

```text theme={null}
GET /api/v1/rewards/markets/pools
```

**Authentication:** `Public`

Query parameters:

| Query    | Type    | Required | Description                                                                   |
| -------- | ------- | -------- | ----------------------------------------------------------------------------- |
| `page`   | integer | No       | Event page number. Default `1`.                                               |
| `limit`  | integer | No       | Events per page. Default `20`, maximum `50`; larger values are clamped.       |
| `search` | string  | No       | Case-insensitive match against an event name or qualifying child-market name. |

Response type: `PublicRewardsMarketPoolPage`.

| Field             | Type                        | Required | Description                                                                                           |
| ----------------- | --------------------------- | -------- | ----------------------------------------------------------------------------------------------------- |
| `first`           | integer                     | Yes      | One-based index of the first event group on a non-empty page; otherwise the page offset.              |
| `last`            | integer                     | Yes      | One-based index of the last event group on a non-empty page; otherwise the page offset.               |
| `limit`           | integer                     | Yes      | Effective events-per-page limit.                                                                      |
| `total`           | integer                     | Yes      | Total matching event groups.                                                                          |
| `totalRewardUsdc` | string                      | Yes      | Current UTC period's committed reward across all qualifying markets, independent of the current page. |
| `data`            | `PublicRewardsEventGroup[]` | Yes      | Event-grouped reward opportunities.                                                                   |

Pagination is over events. A multi-market event and all of its qualifying child markets always stay together on one page.

`PublicRewardsEventGroup`:

| Field           | Type                | Required | Description                                  |
| --------------- | ------------------- | -------- | -------------------------------------------- |
| `eventId`       | UUID string or null | Yes      | Parent event UUID.                           |
| `eventName`     | string or null      | Yes      | Parent event name.                           |
| `eventSlug`     | string or null      | Yes      | Parent event slug.                           |
| `isMultiMarket` | boolean             | Yes      | Whether the event contains multiple markets. |
| `markets`       | `MarketReward[]`    | Yes      | All qualifying reward markets in this event. |

Only active markets with a strictly positive, committed and enabled reward for the current UTC period are returned. The reward window must be open now or scheduled to open later in the same period. Ended, disabled, zero-value, next-period-only and globally paused opportunities are omitted.

`MarketReward`:

| Field                       | Type                        | Required | Description                                                                                     |
| --------------------------- | --------------------------- | -------- | ----------------------------------------------------------------------------------------------- |
| `marketId`                  | UUID string                 | Yes      | Market UUID.                                                                                    |
| `marketSlug`                | string or null              | Yes      | Market slug when available.                                                                     |
| `marketName`                | string or null              | Yes      | Market name when available.                                                                     |
| `marketDisplayName`         | string or null              | Yes      | Optional market presentation label. Use `marketName` when this is `null`.                       |
| `rewardUsdc`                | string or null              | Yes      | Fixed USDC reward committed for the current UTC period.                                         |
| `rewardStatus`              | enum string                 | Yes      | `ACCRUING` when earning now or `SCHEDULED` when opening later in the current UTC period.        |
| `accruingNow`               | boolean                     | Yes      | Whether qualifying orders are earning rewards now. Equivalent to `rewardStatus === "ACCRUING"`. |
| `rewardStartAt`             | string (date-time) or null  | Yes      | Reward-window start, or `null` when unbounded.                                                  |
| `rewardEndAt`               | string (date-time) or null  | Yes      | Reward-window end, or `null` when unbounded.                                                    |
| `maxDistanceFromMid`        | string                      | Yes      | Normal-market qualifying distance from the midpoint.                                            |
| `extremeMaxDistanceFromMid` | string                      | Yes      | Qualifying distance at extreme probabilities.                                                   |
| `minOrderSizeUsdc`          | string                      | Yes      | Minimum remaining USDC notional required to qualify.                                            |
| `boostWindows`              | `RewardBoostWindow[]`       | Yes      | Frozen boost windows for the current reward period.                                             |
| `activeBoostWindow`         | `RewardBoostWindow` or null | Yes      | Boost window active now, if any.                                                                |
| `currentBoostMultiplier`    | string                      | Yes      | Multiplier active now; `"1"` when no boost applies.                                             |

`RewardBoostWindow` contains ISO-8601 `startAt` and `endAt` values and a decimal-string `multiplier`. Window bounds are half-open: the boost applies when `startAt <= now < endAt`.

## Get Market Reward

```text theme={null}
GET /api/v1/rewards/markets/{marketId}/pool
```

**Authentication:** `Public`

Path parameters:

| Parameter  | Type        | Required | Description  |
| ---------- | ----------- | -------- | ------------ |
| `marketId` | UUID string | Yes      | Market UUID. |

Response type: `MarketRewardDetail`.

Returns the fields from `MarketReward` plus nullable `eventId`, `eventSlug` and `eventName`, and boolean `isMultiMarket` and `isActive`.

This endpoint returns `404` when the market does not have a genuine current-period opportunity. In particular, next-period-only, ended, disabled, zero-value, globally paused and otherwise inactive reward configurations are not exposed.

## Get Rewards Leaderboard

```text theme={null}
GET /api/v1/rewards/leaderboard
```

**Authentication:** `Public` with optional `JWT` authentication

Query parameters:

| Query    | Type        | Required | Description                                                                                                                                                                                  |
| -------- | ----------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `window` | enum string | No       | `24h`, `week` or `all`. Default `24h`. These use UTC reward dates, not rolling durations: `24h` includes yesterday and today, while `week` includes dates from seven days ago through today. |
| `page`   | integer     | No       | Page number. Default `1`.                                                                                                                                                                    |
| `limit`  | integer     | No       | Results per page. Default `20`, maximum `100`.                                                                                                                                               |

Response type: `RewardsLeaderboardResponse`.

| Field         | Type                              | Required | Description                                                                                                                                                   |
| ------------- | --------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `first`       | integer                           | Yes      | One-based index of the first row on this page.                                                                                                                |
| `last`        | integer                           | Yes      | One-based index of the last row on this page.                                                                                                                 |
| `limit`       | integer                           | Yes      | Requested page size.                                                                                                                                          |
| `total`       | integer                           | Yes      | Total rows in the filtered leaderboard.                                                                                                                       |
| `data`        | `RewardsLeaderboardEntry[]`       | Yes      | Ranked leaderboard rows.                                                                                                                                      |
| `window`      | enum string                       | Yes      | Effective `24h`, `week` or `all` window.                                                                                                                      |
| `currentUser` | `RewardsLeaderboardEntry` or null | No       | Authenticated caller's full-board row when not already on the page; `null` when the caller has no earnings. Omitted for anonymous callers and excluded users. |

Each `RewardsLeaderboardEntry` contains integer `rank`, `userId`, optional `displayName`, optional `anonymous`, boolean `isCurrentUser`, and string `earnedUsdc`. When `anonymous=true`, `displayName` is the fixed `Anonymous` label. Ties share a rank. No raw scoring units, reward share, projection, trading P/L or volume values are returned.

## Claim Rewards

```text theme={null}
POST /api/v1/rewards/me/claim
```

**Authentication:** `JWT` or `API key HMAC`

Rate limit: 6 requests per minute.

The request has no body. A dispatched claim is asynchronous; poll the returned `pollUrl` or listen for `user-reward-claim-update` on the authenticated WebSocket.

Response type: `ClaimResponse`.

| Field                 | Type        | Required | Description                                                                                                                                                    |
| --------------------- | ----------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `accepted`            | boolean     | Yes      | Whether claim dispatch was accepted.                                                                                                                           |
| `outcome`             | enum string | Yes      | `dispatched`, `nothing-to-claim` or `below-threshold`. Dispatch errors and in-flight state arrive through `user-reward-claim-update`, after the HTTP response. |
| `claimableAmountUsdc` | string      | Yes      | Claimable USDC at decision time.                                                                                                                               |
| `recipientCount`      | integer     | Yes      | Number of recipient addresses, normally `0` or `1`.                                                                                                            |
| `rowCount`            | integer     | Yes      | Number of market/reward-period rows included.                                                                                                                  |
| `pollUrl`             | string      | No       | History path to poll after dispatch.                                                                                                                           |
| `message`             | string      | No       | Explanation for a non-dispatched outcome.                                                                                                                      |
