---
title: "Get API public v1 live risk coins by coin history"
method: GET
path: "/api/public/v1/live/risk/coins/{coin}/history"
---

# Get API public v1 live risk coins by coin history

`GET /api/public/v1/live/risk/coins/{coin}/history`

## Request

- Base URL: `https://api.coinversa.ai`
- URL: `https://api.coinversa.ai/api/public/v1/live/risk/coins/{coin}/history`
- Auth: API key in header `X-API-Key`
- TypeScript: <https://skmtc.dev/coinversa/apis/coinversa-api/docs/api/public/v1/live/risk/coins/:coin/history/get.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `coin` string, required

## Query parameters

- `hours` integer

## Response `200`

OK

- CoinRiskHistoryBody
  - `$schema` string, uri: A URL to the JSON Schema for this object.
  - `availability` RiskAvailability, required
    - `historicalClearinghouse` boolean, required
    - `liquidations` boolean, required
    - `liveCandles` boolean, required
    - `markPrices` boolean, required
    - `userActions` boolean, required
  - `candleHistory` CandlePoint[], nullable, required
    - `close` number, double, required
    - `high` number, double, required
    - `low` number, double, required
    - `open` number, double, required
    - `timestamp` integer, required
    - `volume` number, double, required
  - `cohortBiasHistory` unknown, required
  - `coin` string, required
  - `freshness` RiskFreshness, required
    - `historicalClearinghouse` string
    - `liquidations` string
    - `liveCandles` string
    - `livePositions` string
    - `longShort` string
    - `markPrices` string
  - `generatedAt` string, required
  - `hours` integer, required
  - `liquidations` LiquidationSummaryBody, required
    - `$schema` string, uri: A URL to the JSON Schema for this object.
    - `availability` RiskAvailability, required
      - `historicalClearinghouse` boolean, required
      - `liquidations` boolean, required
      - `liveCandles` boolean, required
      - `markPrices` boolean, required
      - `userActions` boolean, required
    - `avgClosedPnl` number, double, required
    - `avgPenaltyFee` number, double, required
    - `bucketSizeMs` integer, required
    - `byCohort` GetLiquidationSummaryByCohortRow[], nullable: Cohort (pnl_tier) split of the same window, sorted by totalNotional desc; wallets with no cohort classification aggregate under tier 'unclassified'. Only populated on GET /live/risk/liquidations/summary — omitted from the other consumers of this shape (risk overview, coin risk snapshot/history) to keep those hot paths from running an extra query.
      - `count` integer, required
      - `tier` string, required
      - `totalClosedPnl` unknown, required
      - `totalNotional` unknown, required
      - `wallets` integer, required
    - `byCoin` GetLiquidationSummaryByCoinRow[], nullable, required
      - `coin` string, required
      - `count` integer, required
      - `totalClosedPnl` unknown, required
      - `totalNotional` unknown, required
      - `totalPenaltyFees` unknown, required
    - `coin` string
    - `count` integer, required
    - `freshness` RiskFreshness, required
      - `historicalClearinghouse` string
      - `liquidations` string
      - `liveCandles` string
      - `livePositions` string
      - `longShort` string
      - `markPrices` string
    - `generatedAt` string, required
    - `longEvents` integer, required: Count of LONG liquidation events in the window (longEvents+shortEvents=count).
    - `longNotional` number, double, required: Notional of liquidated LONG positions in the window (side split of totalNotional; longNotional+shortNotional=totalNotional).
    - `shortEvents` integer, required: Count of SHORT liquidation events in the window.
    - `shortNotional` number, double, required: Notional of liquidated SHORT positions in the window (side split of totalNotional).
    - `since` string, required
    - `timeline` GetLiquidationSummaryTimelineRow[], nullable, required
      - `bucketStart` integer, required
      - `count` integer, required
      - `totalClosedPnl` unknown, required
      - `totalNotional` unknown, required
      - `totalPenaltyFees` unknown, required
    - `totalClosedPnl` number, double, required
    - `totalNotional` number, double, required
    - `totalPenaltyFees` number, double, required
    - `wallets` integer, required
  - `longShortHistory` TimestampValue[], nullable, required
    - `timestamp` integer, required
    - `value` number, double, required
  - `markDislocations` MarkDislocation[], nullable, required
    - `basisPct` number, double, required
    - `markPx` number, double, required
    - `oraclePx` number, double, required
    - `timestamp` integer, required
  - `oiHistory` OISnapshot[], nullable, required
    - `coin` string, required
    - `markPx` unknown
    - `openInterest` number, double, required
    - `timestamp` unknown, required

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `422`: Unprocessable Entity
- `429`: Too Many Requests
- `500`: Internal Server Error
- `504`: Gateway Timeout

## Changes

- **2026-09-23** `f2eba29805e5`: 8 info
  - added the non-success response with the status `403`
  - removed the non-success response with the status `401`
  - added the optional property `reason` to the response with the `400` status
  - added the optional property `reason` to the response with the `404` status
  - …4 more

[Operation history](https://skmtc.dev/coinversa/apis/coinversa-api/changes/api/public/v1/live/risk/coins/:coin/history/get.md)

---

[API](https://skmtc.dev/coinversa/apis/coinversa-api.md) - [All operations](https://skmtc.dev/coinversa/apis/coinversa-api/llms.txt) - [OpenAPI document](https://skmtc.dev/coinversa/apis/coinversa-api/revisions/3454317a5830?raw)
