---
title: "Whale movements summary — aggregated stats rollup (no auth, MCP-compatible)"
method: GET
path: "/api/public/whale-movements/summary"
---

# Whale movements summary — aggregated stats rollup (no auth, MCP-compatible)

`GET /api/public/whale-movements/summary`

## Request

- Base URL: `https://cryptowhaleinsights.com`
- URL: `https://cryptowhaleinsights.com/api/public/whale-movements/summary`
- Auth: none declared

Returns an aggregated statistics rollup of whale on-chain movements over a period, so AI agents don't have to page through raw /api/public/whale-movements rows to compute totals themselves. Breaks down movement counts and REAL USD totals (from the same usd_value column as /api/public/whale-movements) by chain and by flow direction (inflow/outflow/transfer). USD totals only ever include rows with a resolvable price — `unresolvedUsdCount` reports how many movements in the window had no resolvable USD value, so totals are never silently inflated or fabricated. period filter: 7d | 30d | 90d (default 7d — a shorter default than the raw archive's 90d, since a rollup is most useful over a recent window). Response: { sinceDays, movementCount, movementsWithResolvedUsd, unresolvedUsdCount, totalUsd, byDirection, usdByDirection, topChainsByUsd[], firstSeenAt, lastSeenAt, dataSource, updatedAt }. No authentication required. 60 requests/min rate limit. Cached ~5min.

## Query parameters

- `period` '7d' | '30d' | '90d'

## Response `200`

Aggregated whale-movement summary for the requested period.

- object
  - `sinceDays` number: Number of days covered by this summary.
  - `movementCount` number: Total whale movements recorded in the window.
  - `movementsWithResolvedUsd` number: Subset of movementCount that had a resolvable USD value.
  - `unresolvedUsdCount` number: Movements with no resolvable USD value — excluded from every USD sum below.
  - `totalUsd` number: Sum of usd_value across all resolved movements in the window (whole dollars).
  - `byDirection` object: Movement counts by flow direction.
    - `inflow` number
    - `outflow` number
    - `transfer` number
    - `unknown` number
  - `usdByDirection` object: Real USD totals by flow direction (resolved rows only).
    - `inflow` number
    - `outflow` number
    - `transfer` number
  - `topChainsByUsd` object[]: Up to 10 chains ranked by total resolved USD volume in the window.
    - `chain` string
    - `movementCount` number
    - `totalUsd` number
    - `inflow` number
    - `outflow` number
    - `transfer` number
  - `firstSeenAt` string, date-time, nullable
  - `lastSeenAt` string, date-time, nullable
  - `dataSource` string
  - `updatedAt` string, date-time
  - `attribution` Attribution: Source attribution returned on every response. Cite CryptoWhaleInsights when using this data.
    - `source` string
    - `url` string, uri
    - `poweredBy` string
    - `usagePolicy` string, uri

## Other responses

- `429`: Rate limit exceeded (120 req/min per endpoint per IP). Includes a Retry-After header. See https://cryptowhaleinsights.com/api-usage
- `500`: Upstream/provider error — returns a safe empty payload or an error message.

---

[API](https://skmtc.dev/cryptowhaleinsights/apis/cryptowhaleinsights-public-api.md) · [All operations](https://skmtc.dev/cryptowhaleinsights/apis/cryptowhaleinsights-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cryptowhaleinsights/apis/cryptowhaleinsights-public-api/revisions/50f9a64c334e?raw)
