⬡ BitPerp — Public Market Data API

Real-time perpetual-futures market data. No authentication required.

HTTPS only No auth CORS: * 120 req/min · per IP JSON < 2s response

Overview

Endpoints

GET /api/public/ticker

Purpose: 24-hour price statistics for a single trading pair (last price, change, high/low, volume, best bid/ask).

Parameters
NameTypeRequiredDefaultDescription
symbolstringnoBTC-USDTTrading pair, e.g. ETH-USDT.
Example request
curl "https://bitperp.com/api/public/ticker?symbol=BTC-USDT"
Example response
{
  "success": true,
  "symbol": "BTC-USDT",
  "data": {
    "symbol": "BTC-USDT",
    "lastPrice": "60011.4",
    "priceChange": "463.2",
    "priceChangePercent": "0.78",
    "high": "60535.4",
    "low": "58150.7",
    "open": "59548.2",
    "volume": "12840.53",
    "quoteVolume": "764203184.2",
    "bidPrice": "60011.1",
    "askPrice": "60011.4"
  }
}

GET /api/public/market-summary

Purpose: 24-hour ticker for all trading pairs in a single call — overview of the whole market.

Parameters: none. Example request
curl "https://bitperp.com/api/public/market-summary"
Example response
{
  "success": true,
  "count": 512,
  "data": [
    { "symbol": "BTC-USDT", "lastPrice": "60011.4", "priceChangePercent": "0.78",
      "high": "60535.4", "low": "58150.7", "volume": "12840.53", "quoteVolume": "764203184.2",
      "bidPrice": "60011.1", "askPrice": "60011.4" },
    { "symbol": "ETH-USDT", "lastPrice": "1735.96", "priceChangePercent": "5.30", ... }
  ]
}

GET /api/public/orderbook

Purpose: current order-book depth (bids and asks) for a trading pair.

Parameters
NameTypeRequiredDefaultDescription
symbolstringnoBTC-USDTTrading pair.
limitintno20Depth levels per side (1–100).
Example request
curl "https://bitperp.com/api/public/orderbook?symbol=BTC-USDT&limit=5"
Example response — each level is [price, quantity]:
{
  "success": true,
  "symbol": "BTC-USDT",
  "bids": [ ["60011.1","1.038"], ["60010.7","0.703"], ... ],
  "asks": [ ["60011.4","1.405"], ["60011.8","0.836"], ... ]
}

GET /api/public/trades

Purpose: most recent public trades (time & sales) for a trading pair.

Parameters
NameTypeRequiredDefaultDescription
symbolstringnoBTC-USDTTrading pair.
limitintno50Number of recent trades (1–100).
Example request
curl "https://bitperp.com/api/public/trades?symbol=BTC-USDT&limit=3"
Example response
{
  "success": true,
  "symbol": "BTC-USDT",
  "data": [
    { "time": 1782612345678, "price": "60011.4", "qty": "0.0130", "side": "BUY" },
    { "time": 1782612344001, "price": "60010.9", "qty": "0.0042", "side": "SELL" }
  ]
}

CoinMarketCap-compatible endpoints

Formatted to the CoinMarketCap Exchange API spec (for listing). Market-pair format: BASE_USDT, e.g. BTC_USDT (underscore).

EndpointPurpose
GET /api/cmc/summaryOverview of all market pairs — last price, volumes, 24h stats.
GET /api/cmc/ticker24h price/volume of every pair (base_volume, quote_volume, isFrozen).
GET /api/cmc/assetsAll assets with deposit/withdraw flags and maker/taker fees.
GET /api/cmc/orderbook/{market_pair}Order-book depth for a pair.
GET /api/cmc/trades/{market_pair}Recent trades (trade_id, price, base_volume, quote_volume, timestamp, type).

GET /api/cmc/summary

{
  "BTC_USDT": {
    "trading_pairs": "BTC_USDT",
    "base_currency": "BTC",
    "quote_currency": "USDT",
    "last_price": 63192.8,
    "lowest_ask": 63192.8,
    "highest_bid": 63192.6,
    "base_volume": 12365.91,
    "quote_volume": 776139964.15,
    "price_change_percent_24h": 0.66,
    "highest_price_24h": 63440.0,
    "lowest_price_24h": 62300.0
  }
}

GET /api/cmc/trades/{market_pair}

Example: /api/cmc/trades/BTC_USDT

[
  { "trade_id": "688638338", "price": 63192.5, "base_volume": 0.0011,
    "quote_volume": 69.51, "timestamp": 1783198920526, "type": "sell" }
]

Errors & status codes

CodeMeaning
200Success.
429Rate limit exceeded (> 120 req/min). Retry after a short delay.
5xx / success:falseUpstream data temporarily unavailable — retry.

Compliance summary

RequirementStatus
HTTPS only with valid SSL✅ TLS on bitperp.com; HTTP → HTTPS redirect
Standard auth (or none)✅ Public, no auth (market data)
Rate limit ≥ 60 req/min✅ 120 req/min per IP
Response time < 2s✅ Server-side caching (2–5s)
Full documentation✅ This page

© 2026 BitPerp · bitperp.com · Public Market Data API v1