Hyperliquid perpetual exchange data endpoints, plus API documentation and monitoring.
    Read-only preview
    You're browsing the public OpenAPI spec. Sign in to send live requests with your team's API key.
    Sign in

    Quickstart

    Preview Hyperliquid fills through the market activity feed. Start with BTC fills, then swap in any supported coin, DEX, or user address from the endpoint catalog below.

    Website
    No API key on this team yet — sample shows <YOUR_JWT> placeholder.
    cURL
    1curl 'https://token-api.service.pinax.network/v1/hyperliquid/markets/activity?coin=BTC&limit=10&page=1' \
    2 -H 'Authorization: Bearer <YOUR_JWT>' \
    3 -H 'Accept: application/json'
    Hyperliquid Markets

    Market OHLCV

    PREVIEW

    Returns OHLCV candles for a single coin and interval, derived from regular trade fills. Volume is broken down both by side (buy_volume, ask_volume) and — on perpetuals — by directional intent (open_long_volume, close_long_volume, open_short_volume, close_short_volume) so consumers can distinguish whether price moves are driven by fresh exposure or position unwinds. On spot markets the directional-intent fields are zero; the side-volume fields carry the buy/sell breakdown directly.

    For liquidation-only candles (with mark-price OHLC), use /v1/hyperliquid/markets/liquidations/ohlc.

    GET
    https://token-api.service.pinax.network/v1/hyperliquid/markets/ohlc
    Requires bearer token — sign in to inject your team’s key.

    Required parameters

    NameTypeDescription
    coinrequired
    query
    stringHyperliquid coin identifier. Core perps have no prefix (BTC, HYPE); spot pairs use @N (@107); builder DEXs prefix the symbol with the DEX name (xyz:SILVER).
    e.g. BTC

    Optional parameters

    NameTypeDescription
    interval
    query
    Enum · 8The interval* for which to aggregate price data (1-minute, 5-minutes, 10-minutes, 30-minutes, hourly, 4-hours, daily or weekly).
    *Plan restricted.
    1m5m10m30m1h4h1d1w
    start_time
    query
    DatetimeUNIX timestamp in seconds or date string (e.g. "2025-01-01T00:00:00Z", "2025-01-01", ...).
    end_time
    query
    DatetimeUNIX timestamp in seconds or date string (e.g. "2025-01-01T00:00:00Z", "2025-01-01", ...).
    limit
    query
    integerNumber of items* returned in a single request.
    *Plan restricted.
    page
    query
    integerPage number to fetch.
    Empty data array signifies end of results.

    Response

    200 OK
    {
      "data": [
        {
          "timestamp": "2026-04-30 23:00:00",
          "coin": "BTC",
          "market_name": "BTC",
          "dex": "perps",
          "interval_min": 60,
          "open": 76184,
          "high": 76286,
          "low": 76178,
          "close": 76257,
          "buy_volume": 10848062.98,
          "ask_volume": 28447564.19,
          "gross_volume": 39295627.17,
          "net_volume": -17599501.21,
          "open_long_volume": 4495886.85,
          "close_long_volume": 11423420.07,
          "open_short_volume": 13640171.56,
          "close_short_volume": 5181222.62,
          "transactions": 5544,
          "buys": 2170,
          "sells": 3374,
          "unique_users": 1183,
          "total_fees": 111.23
        }
      ]
    }