> ## 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.

# Markets

> Market lookup, volume and activity endpoint reference

## Get Markets by ID

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

**Authentication:** `Public`

Query parameters:

| Query | Type   | Required | Description                                                       |
| ----- | ------ | -------- | ----------------------------------------------------------------- |
| `ids` | string | No       | Comma-separated market UUIDs. If omitted, returns an empty array. |

Response type: `Market[]`.

## Get Market

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

**Authentication:** `Public`

Path parameters:

| Parameter    | Type                  | Required | Description          |
| ------------ | --------------------- | -------- | -------------------- |
| `id_or_slug` | UUID string or string | Yes      | Market UUID or slug. |

Response type: `Market`.

## Get Top Holders

```text theme={null}
GET /api/v1/markets/{id_or_slug}/holders
```

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

Returns the largest holders of both outcome tokens. Full wallet addresses are never returned.

Path parameters:

| Parameter    | Type                  | Required | Description          |
| ------------ | --------------------- | -------- | -------------------- |
| `id_or_slug` | UUID string or string | Yes      | Market UUID or slug. |

Query parameters:

| Query   | Type    | Required | Description                                                             |
| ------- | ------- | -------- | ----------------------------------------------------------------------- |
| `limit` | integer | No       | Maximum holders returned per outcome. Default `12`, range `1` to `100`. |

Response type: `MarketHolders`.

| Field      | Type                   | Required | Description                          |
| ---------- | ---------------------- | -------- | ------------------------------------ |
| `marketId` | UUID string            | Yes      | Market UUID.                         |
| `outcome1` | `MarketHoldersOutcome` | Yes      | Holders of the first outcome token.  |
| `outcome2` | `MarketHoldersOutcome` | Yes      | Holders of the second outcome token. |

`MarketHoldersOutcome`:

| Field     | Type             | Required | Description                                                |
| --------- | ---------------- | -------- | ---------------------------------------------------------- |
| `label`   | string           | Yes      | Outcome label from the market.                             |
| `tokenId` | string or null   | Yes      | Outcome token ID; `null` before the market is initialized. |
| `holders` | `MarketHolder[]` | Yes      | Holders ranked by shares descending.                       |

`MarketHolder`:

| Field         | Type           | Required | Description                                                                           |
| ------------- | -------------- | -------- | ------------------------------------------------------------------------------------- |
| `userId`      | UUID string    | Yes      | Hit user ID.                                                                          |
| `name`        | string or null | Yes      | Public display name. When `anonymous=true`, this is the fixed `Anonymous` label.      |
| `anonymous`   | boolean        | No       | `true` when the holder has enabled anonymous mode. Omitted otherwise.                 |
| `avatarUrl`   | string or null | Yes      | Public avatar URL.                                                                    |
| `walletShort` | string or null | Yes      | Shortened wallet fallback when `name` is `null`; always `null` when `anonymous=true`. |
| `shares`      | number         | Yes      | Outcome tokens held in display units.                                                 |
| `rank`        | integer        | Yes      | One-based rank within this outcome.                                                   |

## Get Market Volume

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

**Authentication:** `Public`

Path parameters:

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

Response type: `MarketVolume`.

| Field               | Type        | Required | Description                   |
| ------------------- | ----------- | -------- | ----------------------------- |
| `marketId`          | UUID string | Yes      | Market UUID.                  |
| `eventId`           | UUID string | Yes      | Parent event UUID.            |
| `tradeVolumeUsd`    | string      | Yes      | All-time trade volume in USD. |
| `tradeVolumeUsd24h` | string      | No       | 24-hour trade volume in USD.  |

## Get Public Market Activity

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

**Authentication:** `Public`

Query parameters:

| Query    | Type        | Required | Description                                                     |
| -------- | ----------- | -------- | --------------------------------------------------------------- |
| `type`   | enum string | No       | `BUY` or `SELL`.                                                |
| `name`   | string      | No       | Case-insensitive partial name filter.                           |
| `page`   | integer     | No       | Page number. Default `1`.                                       |
| `limit`  | integer     | No       | Results per page. Default `5`.                                  |
| `total`  | boolean     | No       | Include a bounded total count. Default `false`.                 |
| `sortBy` | string      | No       | Sort field. Default `usersactivityview.timestamp`.              |
| `order`  | enum string | No       | `ASC` or `DESC`. Default `DESC`.                                |
| `cursor` | string      | No       | Opaque cursor from the previous response for keyset pagination. |

Without `cursor`, the response type is `Pagination<Activity>` and offset pagination is limited to the first 1,000 results. With `cursor`, the response is `{ data, hasMore, nextCursor }`; use it for deeper pagination.

## Get Public Activity for a Market

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

**Authentication:** `Public`

Path parameters:

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

Query parameters:

| Query          | Type           | Required | Description                                        |
| -------------- | -------------- | -------- | -------------------------------------------------- |
| `proxyAddress` | address string | No       | Proxy wallet address filter.                       |
| `type`         | enum string    | No       | `SPLIT`, `MERGE` or `REDEEM`.                      |
| `page`         | integer        | No       | Page number. Default `1`.                          |
| `limit`        | integer        | No       | Results per page. Default `10`.                    |
| `total`        | boolean        | No       | Include total count. Default `true`.               |
| `sortBy`       | string         | No       | Sort field. Default `usersactivityview.timestamp`. |
| `order`        | enum string    | No       | `ASC` or `DESC`. Default `DESC`.                   |

Response type: `Pagination<Activity>`.

## Market

| Field                        | Type                       | Required | Description                                                                                                                           |
| ---------------------------- | -------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                         | UUID string                | Yes      | Market UUID.                                                                                                                          |
| `name`                       | string                     | Yes      | Market name.                                                                                                                          |
| `slug`                       | string                     | Yes      | Market URL slug.                                                                                                                      |
| `createdAt`                  | string (date-time)         | Yes      | Creation timestamp.                                                                                                                   |
| `updatedAt`                  | string (date-time)         | Yes      | Last update timestamp.                                                                                                                |
| `startDate`                  | string (date-time) or null | No       | Market start timestamp.                                                                                                               |
| `endDate`                    | string (date-time) or null | No       | Market end timestamp.                                                                                                                 |
| `description`                | string or null             | No       | Market description.                                                                                                                   |
| `chance`                     | number                     | Yes      | Current market chance.                                                                                                                |
| `status`                     | enum string                | Yes      | `DRAFT`, `ACTIVE` or `RESOLVED`.                                                                                                      |
| `icon`                       | string                     | Yes      | Market icon URL.                                                                                                                      |
| `tokenId1`                   | string                     | Yes      | Outcome 1 token ID.                                                                                                                   |
| `tokenId2`                   | string                     | Yes      | Outcome 2 token ID.                                                                                                                   |
| `ancillaryData`              | string                     | Yes      | UMA ancillary data.                                                                                                                   |
| `isInitialized`              | boolean                    | Yes      | Whether the market has been initialized.                                                                                              |
| `conditionId`                | string                     | Yes      | Conditional Tokens condition ID.                                                                                                      |
| `questionId`                 | string                     | Yes      | UMA question ID.                                                                                                                      |
| `outcome1`                   | string                     | Yes      | Outcome 1 label.                                                                                                                      |
| `outcome2`                   | string                     | Yes      | Outcome 2 label.                                                                                                                      |
| `orderFeeRateBps`            | integer                    | Yes      | Active order fee rate in basis points.                                                                                                |
| `passiveOrderFeeRateBps`     | integer                    | Yes      | Passive order fee rate in basis points.                                                                                               |
| `tickSize`                   | string                     | Yes      | Minimum price increment.                                                                                                              |
| `speedBumpDelayMs`           | integer                    | Yes      | Taker-order matching delay in milliseconds.                                                                                           |
| `firstPriceDataAt`           | string (date-time) or null | No       | First price-history timestamp.                                                                                                        |
| `hasProposedPrice`           | boolean                    | Yes      | Whether a UMA price has been proposed.                                                                                                |
| `isDisputed`                 | boolean                    | Yes      | Whether the proposed price is disputed.                                                                                               |
| `isSettled`                  | boolean                    | Yes      | Whether the UMA request is settled.                                                                                                   |
| `resolvedOnAdapterTimestamp` | integer                    | Yes      | Adapter resolution timestamp.                                                                                                         |
| `isResolved`                 | boolean                    | Yes      | Whether the market is resolved.                                                                                                       |
| `isRegistered`               | boolean                    | Yes      | Whether the market is registered on chain.                                                                                            |
| `isPaused`                   | boolean                    | Yes      | Whether the market is paused.                                                                                                         |
| `hidden`                     | boolean                    | Yes      | Whether the market is hidden from the public event page.                                                                              |
| `marketResolvedTo`           | string                     | Yes      | Raw resolved outcome value.                                                                                                           |
| `marketId`                   | string                     | Yes      | On-chain market ID.                                                                                                                   |
| `negRisk`                    | boolean                    | Yes      | Whether the market uses negative-risk resolution.                                                                                     |
| `questionFlaggedTimestamp`   | integer                    | Yes      | Question-flagged timestamp.                                                                                                           |
| `transactionHash`            | string                     | Yes      | Creation or registration transaction hash.                                                                                            |
| `eventId`                    | UUID string                | Yes      | Parent event UUID.                                                                                                                    |
| `questionIndex`              | integer or null            | No       | Question index for multi-market events.                                                                                               |
| `tradeVolumeUsd`             | string                     | No       | All-time trade volume in USD.                                                                                                         |
| `tradeVolumeUsd24h`          | string                     | No       | 24-hour trade volume in USD.                                                                                                          |
| `proposedAt`                 | string (date-time) or null | No       | Current proposal timestamp.                                                                                                           |
| `proposedPrice`              | string or null             | No       | Current UMA proposed value.                                                                                                           |
| `displayTimezone`            | string or null             | Yes      | IANA timezone used to render this market's times. Markets without a configured timezone return `null` and should be displayed in UTC. |

## Activity

| Field                  | Type               | Required | Description                                  |
| ---------------------- | ------------------ | -------- | -------------------------------------------- |
| `id`                   | UUID string        | Yes      | Activity row UUID.                           |
| `name`                 | string             | Yes      | Market or event name.                        |
| `slug`                 | string             | Yes      | Event slug.                                  |
| `description`          | string             | Yes      | Event description.                           |
| `createdAt`            | string (date-time) | Yes      | Event creation timestamp.                    |
| `createdBy`            | UUID string        | Yes      | Event creator user ID.                       |
| `updatedAt`            | string (date-time) | Yes      | Event update timestamp.                      |
| `startDate`            | string (date-time) | Yes      | Event start timestamp.                       |
| `endDate`              | string (date-time) | Yes      | Event end timestamp.                         |
| `protected`            | boolean            | Yes      | Whether the event is protected.              |
| `icon`                 | string             | Yes      | Icon URL.                                    |
| `tokenId1`             | string             | Yes      | Outcome 1 token ID.                          |
| `tokenId2`             | string             | Yes      | Outcome 2 token ID.                          |
| `conditionId`          | string             | Yes      | Conditional Tokens condition ID.             |
| `proxy_address`        | address string     | Yes      | User proxy wallet address.                   |
| `outcome1`             | string             | Yes      | Outcome 1 label.                             |
| `outcome2`             | string             | Yes      | Outcome 2 label.                             |
| `type`                 | enum string        | Yes      | `BUY`, `SELL`, `SPLIT`, `MERGE` or `REDEEM`. |
| `timestamp`            | integer            | Yes      | Activity timestamp in seconds.               |
| `hash`                 | string             | Yes      | Transaction hash.                            |
| `amount`               | number             | Yes      | Activity amount.                             |
| `parent_collection_id` | string             | Yes      | Conditional Tokens parent collection ID.     |
| `partition`            | integer\[]         | Yes      | Conditional Tokens partition.                |
| `isResolved`           | boolean            | Yes      | Whether the market is resolved.              |
| `price`                | string             | Yes      | Activity price.                              |
| `fee`                  | number             | Yes      | Fee amount.                                  |
