GETAvailable
Perp vs spot volume
Perp vs spot volume (per-coin table and market series)
GET
/api/p3/perp-spot-volumeRequest
Query parameters
| Name | Type | Required | Default | Allowed values | Description |
|---|---|---|---|---|---|
| limit | integer | Optional | 100 | ≤ 300 | Number of rows to return. Example: 100 |
Example request
curl -s "https://www.coinboss.com/api/p3/perp-spot-volume?limit=100"Response fields
The field table is generated from real responses, so it lists exactly what the endpoint returns. Paths use a[] for array items and {*} for objects keyed by a dynamic name such as a coin or an exchange.
| Field | Type | Unit | Description |
|---|---|---|---|
| success | boolean | — | true when the request succeeded. On failure the body is `{ success: false, code, error, request_id }`. |
| now | number | ms | Server time when the response was built. |
| data | array | — | Payload. |
| data[] | object | — | Payload. |
| data[].coin | string | — | Coin symbol, upper case (for example BTC). |
| data[].price | number | — | Last price in the quote currency (USD or USDT unless stated). |
| data[].perp_vol | number | USD | The coin's 24h futures volume summed over all exchanges (tickers updated within the last hour). |
| data[].spot_vol | number | USD | The coin's 24h spot volume across venues, from a third-party market snapshot. |
| data[].ratio | number | — | Ratio. |
| history | array | — | Historical points, oldest first unless stated. |
| history[] | object | — | Historical points, oldest first unless stated. |
| history[].ts | number | ms | Timestamp. |
| history[].futures | number | — | Futures market block or value. |
| history[].spot | number | — | Spot market block or value. |
Generated 2026-11-11 23:01 UTC from 1 real responses.
Example response
/api/p3/perp-spot-volume?limit=100 · Real response captured 2026-11-13 03:59:26 UTC. Long arrays and maps are shortened for display: data had 100 items; history had 720 items.
- "success"true
- "now"1794542366091
- "data"
- "history"
Details
- Authentication
- None. Public endpoint.
- Rate limit
- 1200 requests per minute per IP
- Server cache
- 60s
- Edge micro-cache
- 10s
- Update frequency
- tickers every 60 s; third-party market-data aggregator data every 10 min; history snapshot every 10 min
- Window
- latest snapshot; history = hourly averages over the last 30 d
- Data sources
- Futures volume aggregated in-house from exchange tickers of 24 venues; spot volume per coin comes from a third-party market-data aggregator.
- Exchange coverage
- futures: all ticker rows (not freshness-filtered); spot: third-party market-data aggregator aggregate
- Pagination
- limit (default 100, max 300)
- Sorting
- perp + spot volume desc
- Units
- perp / spot 24 h volume in USD; ratio dimensionless
- Method
- ratio = SUM(futures volume_usd across exchanges) / third-party market-data aggregator 24 h spot volume
- Timestamps
- Unix epoch milliseconds (UTC) unless the field description says otherwise
- Response format
- json
- Stability
- Stable
Live status
AvailableChecked 2026-11-13 03:59:26 UTCHTTP 20027 msSchema matchesNewest data point 59m old
Availability, last 30 days
100% of 408 checks passed
Errors
Failed calls share one shape on every endpoint. The full list is on the errors page. Errors and rate limits →
| Code | HTTP | Meaning | What to do |
|---|---|---|---|
| INVALID_PARAM | 400 | A required parameter is missing or a value is not accepted. `param` names the parameter when it is known. | Do not retry unchanged; fix the request. |
| UNAUTHORIZED | 401 | The `CB-API-KEY` header was sent but the key is unknown or revoked. Public data needs no key — drop the header or use a valid key. | Do not retry unchanged. |
| FORBIDDEN | 403 | The route is not part of the public API (internal or account-only). | Do not retry. |
| NOT_FOUND | 404 | Unknown route, or the requested coin / exchange / fund does not exist. | Do not retry; check the path and identifiers against the catalog. |
| RATE_LIMITED | 429 | More requests than the per-minute limit. `Retry-After` gives the seconds to wait. | Wait for `Retry-After`, then retry with backoff. |
| INTERNAL | 500 | Unexpected server error. The message is generic by design; quote `request_id` when reporting it. | Retry once after a few seconds; report it with the request id if it persists. |
| UPSTREAM_FAILED | 503 | The data source behind this endpoint did not answer in time. No stale or substitute numbers are returned in its place. | Retry with backoff; check the status page. |
| UNAVAILABLE | 501 / 503 | The dataset is temporarily not ready (cache warming) or the endpoint has no lawful public source yet. | Retry later; the catalog marks endpoints that are unavailable by design. |
| REQUEST_FAILED | 200 | Some older endpoints answer HTTP 200 with `success: false`. Always check `success`, not only the HTTP status. | Depends on the message; treat as a failed request. |
Try it
GET
/api/p3/perp-spot-volumeAvailableParameters
integer · default 100 · max 300 — Number of rows to return.
Request URL
https://www.coinboss.com/api/p3/perp-spot-volume?limit=100Choose an endpoint and press “Send request”. The response, headers and timing will appear here.
More in this category
- Global derivatives metrics /api/derivatives/global
- Homepage indicator-card bundle /api/home/indicator-cards
- Homepage macro cards /api/home/macro-cards
- Monthly BTC spot volume /api/indicators/cm/btc-spot-vol-monthly
- Monthly crypto spot volume /api/indicators/cm/crypto-spot-vol-monthly
- Total crypto market cap and major-coin cap history /api/indicators/marketcap
- Crypto market cap split by type /api/indicators/marketcap-type
- Homepage ticker-bar aggregates /api/market/home-ticker
- Derivatives market overview /api/market/overview
- Daily perp-to-spot volume ratio /api/p3/perp-spot-ratio
- Perp vs spot volume /api/p3/perp-spot-volume
- Market-wide volume time series /api/p3/volume/history
- Volume overview /api/p3/volume/overview
- Total stablecoin market-cap history /api/stablecoins/chart
- Stablecoin list /api/stablecoins/list
- BTC dominance history /api/volume/btc-dominance-series
- Global spot / derivatives volume history /api/volume/global-history