vike
API EndpointsHyperliquid

/cohorts

The canonical cohort ladders as flat label sets — the exact strings ?cohort= accepts.

GET https://data.vike.io/v1/hyperliquid/cohorts

The canonical cohort ladders as flat label sets — the exact strings ?cohort= accepts. Takes no parameters. The shape is {"size": [...12], "pnl": [...12, "unknown"], "tier": [...10]}, and it is served from the same label set ?cohort= is validated against — so a label is accepted on its axis if and only if it appears here.

unknown rides the pnl set because it is a real, queryable bucket there (wallets under 10 closed trades), not a rung of the ladder.

cURL
# the exact label strings every ?cohort= accepts, per ladder
curl -s "https://data.vike.io/v1/hyperliquid/cohorts" \
  -H "X-API-KEY: $VIKE_API_KEY"

# the dollar-banded pnl_abs ladder is not in /cohorts: read its labels, slugs and bounds from /segments
curl -s "https://data.vike.io/v1/hyperliquid/segments" \
  -H "X-API-KEY: $VIKE_API_KEY" \
  | jq '[.[] | select(.axis == "pnl_abs") | {cohort, slug, min_usd, max_usd}]'

# the per-position tier ladder, largest first: the spellings axis=tier returns on /coins/{coin}/cohort-metrics
curl -s "https://data.vike.io/v1/hyperliquid/cohorts" \
  -H "X-API-KEY: $VIKE_API_KEY" \
  | jq '.tier'

# a label with a space or a symbol is awkward in a URL path: the slug stands in for it
curl -s "https://data.vike.io/v1/hyperliquid/segments/3x_smart/summary?axis=pnl" \
  -H "X-API-KEY: $VIKE_API_KEY"
Example response
{
  "size": [
    "4x whale",
    "3x whale",
    "2x whale",
    "whale",
    "2x shark",
    "shark",
    "2x dolphin",
    "dolphin",
    "2x fish",
    "fish",
    "2x shrimp",
    "shrimp"
  ],
  "pnl": [
    "3x smart",
    "2x smart",
    "smart",
    "3x winner",
    "2x winner",
    "winner",
    "loser",
    "2x loser",
    "3x loser",
    "rekt",
    "2x rekt",
    "3x rekt",
    "unknown"
  ],
  "tier": [
    ">$2.5m",
    "$1m-$2.5m",
    "$500k-$1m",
    "$250k-$500k",
    "$100k-$250k",
    "$50k-$100k",
    "$25k-$50k",
    "$10k-$25k",
    "$1k-$10k",
    "<$1k"
  ]
}

pnl_abs is a valid axis and is not in this response

/cohorts publishes three ladders; the dollar-banded pnl_abs ladder is published by /segments only. A client that enumerates axes from this endpoint will miss it.

cURL
# the exact label strings every ?cohort= accepts, per laddercurl -s "https://data.vike.io/v1/hyperliquid/cohorts" \  -H "X-API-KEY: $VIKE_API_KEY"# the dollar-banded pnl_abs ladder is not in /cohorts: read its labels, slugs and bounds from /segmentscurl -s "https://data.vike.io/v1/hyperliquid/segments" \  -H "X-API-KEY: $VIKE_API_KEY" \  | jq '[.[] | select(.axis == "pnl_abs") | {cohort, slug, min_usd, max_usd}]'# the per-position tier ladder, largest first: the spellings axis=tier returns on /coins/{coin}/cohort-metricscurl -s "https://data.vike.io/v1/hyperliquid/cohorts" \  -H "X-API-KEY: $VIKE_API_KEY" \  | jq '.tier'# a label with a space or a symbol is awkward in a URL path: the slug stands in for itcurl -s "https://data.vike.io/v1/hyperliquid/segments/3x_smart/summary?axis=pnl" \  -H "X-API-KEY: $VIKE_API_KEY"
Example response
{  "size": [    "4x whale",    "3x whale",    "2x whale",    "whale",    "2x shark",    "shark",    "2x dolphin",    "dolphin",    "2x fish",    "fish",    "2x shrimp",    "shrimp"  ],  "pnl": [    "3x smart",    "2x smart",    "smart",    "3x winner",    "2x winner",    "winner",    "loser",    "2x loser",    "3x loser",    "rekt",    "2x rekt",    "3x rekt",    "unknown"  ],  "tier": [    ">$2.5m",    "$1m-$2.5m",    "$500k-$1m",    "$250k-$500k",    "$100k-$250k",    "$50k-$100k",    "$25k-$50k",    "$10k-$25k",    "$1k-$10k",    "<$1k"  ]}