Skip to main content
GET
/
stats
Get exchange statistics
curl --request GET \
  --url https://exchange-api.bulk.trade/api/v1/stats
{
  "timestamp": 1704067200000,
  "period": "1d",
  "volume": {
    "totalUsd": 126543210
  },
  "openInterest": {
    "totalUsd": 54321000
  },
  "funding": {
    "rates": {
      "BTC-USD": {
        "current": 0.0001,
        "annualized": 0.1095
      },
      "ETH-USD": {
        "current": 0.00008,
        "annualized": 0.0876
      }
    }
  },
  "markets": [
    {
      "symbol": "BTC-USD",
      "volume": 1234.56,
      "quoteVolume": 126543210,
      "openInterest": 50000000,
      "fundingRate": 0.0001,
      "fundingRateAnnualized": 0.1095,
      "lastPrice": 102500,
      "markPrice": 102480
    }
  ]
}
Returns exchange statistics with optional symbol and period filtering. Use for aggregate volume, open interest, funding rates, and per-market stats. Notes:
  • All periods currently return 24h rolling stats
  • Aggregate queries (no symbol) are cached with 600s TTL
  • Symbol-specific queries bypass cache
  • Period aliases: 24h1d, 1w7d, 1m30d, 3m90d, 365d1y

Query Parameters

period
enum<string>
default:1d

Canonical period value. If omitted or invalid, defaults to 1d.

Available options:
1d,
7d,
30d,
90d,
1y,
all
symbol
string

Optional symbol filter (e.g. BTC-USD)

Example:

"BTC-USD"

Response

Successful response

Aggregate exchange statistics

timestamp
integer<int64>

Server timestamp (milliseconds)

period
string

Requested period

Example:

"1d"

volume
object
openInterest
object
funding
object
markets
object[]

Per-market breakdown (sorted by quoteVolume desc)