curl --request GET \
--url https://whitebit.com/api/v4/public/collateral/marketsimport requests
url = "https://whitebit.com/api/v4/public/collateral/markets"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://whitebit.com/api/v4/public/collateral/markets', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://whitebit.com/api/v4/public/collateral/markets",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://whitebit.com/api/v4/public/collateral/markets"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://whitebit.com/api/v4/public/collateral/markets")
.asString();require 'uri'
require 'net/http'
url = URI("https://whitebit.com/api/v4/public/collateral/markets")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"success": true,
"message": null,
"result": [
"AAPL_USD",
"ADA_USDT",
"BCH_USDT",
"BTC_USDT",
"DOGE_USDT"
]
}{
"success": false,
"message": "api.margin.unavailable",
"errors": []
}Collateral markets list
The endpoint returns the list of market pair names available for collateral trading. Use the response to determine which markets support margin positions. Each item in the result array is a market pair name in BASE_QUOTE format (e.g., BTC_USDT).
The list includes TradFi futures markets that are enabled for collateral trading, alongside crypto markets. TradFi entries are ordinary market pair names in the same array — the response carries no per-market type field, so read type and isTradFiFutures from GET /api/v4/public/markets to tell the market types apart.
TradFi futures markets stay region-gated: a TradFi market not assigned to the caller’s region is omitted from that region’s response, exactly as on GET /api/v4/public/markets.
The collateral market list is reference data, re-synced approximately every 10 seconds. Polling more frequently returns identical data. The cache is shared across all callers.
A market in this list is configured for collateral trading; that is not the same as the account being entitled to trade it. Placing an order on a TradFi market additionally requires TradFi futures to be enabled for the account — without it the order request is rejected with HTTP 422, api.tradeErrors.tradFi.restricted.
Rate limit 2000 requests/10 sec.
curl --request GET \
--url https://whitebit.com/api/v4/public/collateral/marketsimport requests
url = "https://whitebit.com/api/v4/public/collateral/markets"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://whitebit.com/api/v4/public/collateral/markets', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://whitebit.com/api/v4/public/collateral/markets",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://whitebit.com/api/v4/public/collateral/markets"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://whitebit.com/api/v4/public/collateral/markets")
.asString();require 'uri'
require 'net/http'
url = URI("https://whitebit.com/api/v4/public/collateral/markets")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"success": true,
"message": null,
"result": [
"AAPL_USD",
"ADA_USDT",
"BCH_USDT",
"BTC_USDT",
"DOGE_USDT"
]
}{
"success": false,
"message": "api.margin.unavailable",
"errors": []
}Was this page helpful?