Get futures exchanges

Growth This endpoint requires the growth plan or higher. Free, Basic and Startup plans can use preview access.

Get a list of futures exchanges with aggregate statistics and a paginated ranking. On Coinranking, we use this endpoint on our Futures exchanges ranking table.

https://api.coinranking.com/v2/futures/exchanges

Preview access

Free, Basic and Startup plans can test this endpoint with five successful requests per account per UTC day. Use the documented endpoint URL with your existing API key. Preview access is applied automatically. The allowance resets at 00:00 UTC.

All API keys, resource IDs, query parameters and pagination requests share this endpoint's allowance for your account. Failed requests do not consume the preview allowance. Successful previews also count toward your normal API usage, and your plan's result, historical-window and rate limits still apply. See endpoint previews for limits, response headers and quota errors.

Query parameters

Parameter Description
referenceCurrencyUuid (optional) String

UUID of coin (either fiat or crypto), in which all prices, volume, and open interest values are calculated. Defaults to US Dollar, but you can use any coin. You can find UUIDs for reference currencies in any coin endpoint, including a convenient dedicated reference currency endpoint.

Default value: yhjMzLPhuIDl

Example:
https://api.coinranking.com/v2/futures/exchanges?referenceCurrencyUuid=5k-_VTxqtCEI
uuids (optional) Array

UUIDs to filter the list on. If you know which exchanges you want, use this filter to return only those entries.

Example:
https://api.coinranking.com/v2/futures/exchanges?uuids[]=Ls9K5HaGJpOI&uuids[]=-zdvbieRdZ
search (optional) String

Filter exchanges by name prefix.

Example:
https://api.coinranking.com/v2/futures/exchanges?search=binance
orderBy (optional) String

Index to order the list by.

Default value: openInterest
Allowed values:
openInterest 24hVolume numberOfMarkets numberOfCoins lastTickerCreatedAt

Example:
https://api.coinranking.com/v2/futures/exchanges?orderBy=24hVolume
orderDirection (optional) String

Applies direction to the orderBy query.

Default value: desc
Allowed values:
desc asc

Example:
https://api.coinranking.com/v2/futures/exchanges?orderDirection=asc
limit (optional) Number

Limit. Used for pagination. Free is limited to 100 results per response. All paid plans can receive up to 5000 results per response, including previews.

Default value: 50
Size range: 0-5000

Example:
https://api.coinranking.com/v2/futures/exchanges?limit=10
offset (optional) Number

Offset. Used for pagination.

Default value: 0

Example:
https://api.coinranking.com/v2/futures/exchanges?offset=50
cursor (optional) String

Cursor for pagination. Use the nextCursor value from the previous response to get the next page of results, or the previousCursor value to navigate back to the previous page. See Pagination for more information.

Example:
https://api.coinranking.com/v2/futures/exchanges?cursor=eyJ0IjoxLC...

Code examples

curl
curl 'https://api.coinranking.com/v2/futures/exchanges?orderBy=openInterest&limit=50' \
  -H 'x-access-token: your-api-key' \
  -G
JavaScript
const options = {
  headers: {
    'x-access-token': 'your-api-key',
  },
};

fetch('https://api.coinranking.com/v2/futures/exchanges?orderBy=openInterest&limit=50', options)
  .then((response) => response.json())
  .then((result) => console.log(result));
PHP
<?php
  $curl = curl_init();

  curl_setopt_array($curl, array(
    CURLOPT_URL => "https://api.coinranking.com/v2/futures/exchanges?orderBy=openInterest&limit=50",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 0,
    CURLOPT_FOLLOWLOCATION => true,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => array(
      "x-access-token: your-api-key"
    ),
  ));

  $response = curl_exec($curl);

  curl_close($curl);
  echo $response;
Python
import requests

headers = {
  'x-access-token': 'your-api-key'
}

response = requests.request("GET", "https://api.coinranking.com/v2/futures/exchanges?orderBy=openInterest&limit=50", headers=headers)

print(response.text)

Response

json
HTTP/1.1 200 OK
{
  "status": "success",
  "data": {
    "stats": {
      "total": 10,
      "24hVolume": "33710029708.55014",
      "openInterest": "17321368464.034107"
    },
    "exchanges": [
      {
        "uuid": "-zdvbieRdZ",
        "rank": 1,
        "name": "Binance",
        "iconUrl": "https://cdn.coinranking.com/mDTK5qrmq/binance.svg",
        "lastTickerCreatedAt": 1781757395,
        "marketShare": "29.83",
        "coinrankingUrl": "https://coinranking.com/exchange/-zdvbieRdZ+binance",
        "numberOfMarkets": 395,
        "numberOfCoins": 360,
        "recommended": true,
        "exchangeType": "Centralized",
        "24hVolume": "41105887832",
        "openInterest": "17717491955.63013"
      }
    ]
  },
  "pagination": {
    "limit": 50,
    "hasNextPage": false,
    "hasPreviousPage": false,
    "nextCursor": null,
    "previousCursor": null
  }
}

Response fields

Property Description
status String

Status of the request.

Allowed values:
success
data.stats Object

Aggregate statistics across all futures exchanges (not just the current page).

data.stats.total Number

Total number of exchanges.

data.stats.24hVolume String

Total 24h volume of exchanges in the reference currency.

data.stats.openInterest String

Aggregate open interest across all matching exchanges, in the reference currency.

data.exchanges Object[]

List of futures exchanges.

data.exchanges.uuid String

UUID of the exchange.

data.exchanges.rank Number

Position in the ranked list for the selected ordering.

data.exchanges.name String

Name of the exchange.

data.exchanges.iconUrl String

Location of the icon. Replace .svg with .png or .webp, optionally with ?size=WIDTHxHEIGHT (e.g. ?size=28x28) to control dimensions. See Icons for more details.

data.exchanges.lastTickerCreatedAt Number|null

Unix timestamp (seconds) when this exchange last produced a futures ticker in our dataset.

data.exchanges.marketShare String|null

Percentage of the total exchange volume represented by this exchange.

data.exchanges.coinrankingUrl String

Where to find the exchange on coinranking.com.

data.exchanges.exchangeType String

Type of exchange.

Allowed values:
Centralized Decentralized Unknown
data.exchanges.24hVolume String

24-hour trading volume in the reference currency.

data.exchanges.openInterest String

Open interest in the reference currency.

data.exchanges.numberOfMarkets Number

Number of futures markets of the exchange paired with Coinranking.

data.exchanges.numberOfCoins Number

Number of futures coins of the exchange paired with Coinranking.

data.exchanges.recommended Boolean

Whether the exchange is recommended based on our criteria, see https://support.coinranking.com/article/82-recommended-exchanges.

pagination Object

Pagination information. See Pagination for more details.

pagination.limit Number

The number of results per page.

pagination.hasNextPage Boolean

Whether there are more results available after the current page.

pagination.hasPreviousPage Boolean

Whether there are results available before the current page.

pagination.nextCursor String|null

Cursor to use for the next page, or null if there are no more results.

pagination.previousCursor String|null

Cursor to use for the previous page, or null if on the first page.

Error response

json
HTTP/1.1 422 Unprocessable Entity
{
  "status": "fail",
  "type": "REFERENCE_UNAVAILABLE",
  "message": "Reference currency not available"
}

Error responses

Error Description
VALIDATION_ERROR Object

The request could not be validated. The response should provide more details.

REFERENCE_UNAVAILABLE Object

The reference currency used in the request is not available. Choose another UUID.

INVALID_CURSOR Object

The cursor string is malformed or could not be decoded. Start pagination from the beginning without a cursor.

CURSOR_MISMATCH Object

The cursor was created with different orderBy or orderDirection parameters. Match the original parameters or start over.

PAGINATION_CONFLICT Object

Both cursor and offset parameters were provided. Use only one pagination method per request.