Market Data
Get Tradable Asset Pairs
Get tradable asset pairs
GET
/
public
/
AssetPairs
Get Tradable Asset Pairs
curl --request GET \
--url https://api.kraken.com/0/public/AssetPairsimport requests
url = "https://api.kraken.com/0/public/AssetPairs"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.kraken.com/0/public/AssetPairs', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.kraken.com/0/public/AssetPairs"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"error": [],
"result": {
"XETHXXBT": {
"altname": "ETHXBT",
"wsname": "ETH/XBT",
"aclass_base": "currency",
"base": "XETH",
"aclass_quote": "currency",
"quote": "XXBT",
"lot": "unit",
"cost_decimals": 6,
"pair_decimals": 5,
"lot_decimals": 8,
"lot_multiplier": 1,
"leverage_buy": [
2,
3,
4,
5
],
"leverage_sell": [
2,
3,
4,
5
],
"fees": [
[
0,
0.26
],
[
50000,
0.24
],
[
100000,
0.22
],
[
250000,
0.2
],
[
500000,
0.18
],
[
1000000,
0.16
],
[
2500000,
0.14
],
[
5000000,
0.12
],
[
10000000,
0.1
]
],
"fees_maker": [
[
0,
0.16
],
[
50000,
0.14
],
[
100000,
0.12
],
[
250000,
0.1
],
[
500000,
0.08
],
[
1000000,
0.06
],
[
2500000,
0.04
],
[
5000000,
0.02
],
[
10000000,
0
]
],
"fee_volume_currency": "ZUSD",
"margin_call": 80,
"margin_stop": 40,
"ordermin": "0.01",
"costmin": "0.00002",
"tick_size": "0.00001",
"status": "online",
"long_position_limit": 1100,
"short_position_limit": 400
},
"XXBTZUSD": {
"altname": "XBTUSD",
"wsname": "XBT/USD",
"aclass_base": "currency",
"base": "XXBT",
"aclass_quote": "currency",
"quote": "ZUSD",
"lot": "unit",
"cost_decimals": 5,
"pair_decimals": 1,
"lot_decimals": 8,
"lot_multiplier": 1,
"leverage_buy": [
2,
3,
4,
5
],
"leverage_sell": [
2,
3,
4,
5
],
"fees": [
[
0,
0.26
],
[
50000,
0.24
],
[
100000,
0.22
],
[
250000,
0.2
],
[
500000,
0.18
],
[
1000000,
0.16
],
[
2500000,
0.14
],
[
5000000,
0.12
],
[
10000000,
0.1
]
],
"fees_maker": [
[
0,
0.16
],
[
50000,
0.14
],
[
100000,
0.12
],
[
250000,
0.1
],
[
500000,
0.08
],
[
1000000,
0.06
],
[
2500000,
0.04
],
[
5000000,
0.02
],
[
10000000,
0
]
],
"fee_volume_currency": "ZUSD",
"margin_call": 80,
"margin_stop": 40,
"ordermin": "0.0001",
"costmin": "0.5",
"tick_size": "0.1",
"status": "online",
"long_position_limit": 250,
"short_position_limit": 200
}
}
}Query Parameters
Controls whether response keys and asset identifier fields use Kraken's internal names or display names.
- Omitted (default): internal names are used. Asset keys use legacy
X/Z-prefixed format (XXBT,ZUSD). Pair keys use the internal format (XXBTZUSD). Asset identifier fields (base,quote,fee_volume_currency) also use internal names. assetVersion=1: display names are used. Asset keys become their canonical display names (BTC,USD). Pair keys become the slash-separated display format (BTC/USD). On/public/AssetPairs, thebase,quote, andfee_volume_currencyfields also switch to display names.
Only assetVersion=1 is currently supported. The altname and wsname fields are not affected by this parameter.
Available options:
1 Asset pairs to get data for
Filters the asset class to retrieve (optional)
currency= spot currency pairs.tokenized_asset= tokenized asset pairs, i.e. xstocks.
Available options:
currency, tokenized_asset Info to retrieve (optional)
info= all infoleverage= leverage infofees= fees schedulemargin= margin info
Available options:
info, leverage, fees, margin Filter for response to only include pairs available in the provided country/region (ISO 3166-1 alpha-2 code).
⌘I
Get Tradable Asset Pairs
curl --request GET \
--url https://api.kraken.com/0/public/AssetPairsimport requests
url = "https://api.kraken.com/0/public/AssetPairs"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.kraken.com/0/public/AssetPairs', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.kraken.com/0/public/AssetPairs"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"error": [],
"result": {
"XETHXXBT": {
"altname": "ETHXBT",
"wsname": "ETH/XBT",
"aclass_base": "currency",
"base": "XETH",
"aclass_quote": "currency",
"quote": "XXBT",
"lot": "unit",
"cost_decimals": 6,
"pair_decimals": 5,
"lot_decimals": 8,
"lot_multiplier": 1,
"leverage_buy": [
2,
3,
4,
5
],
"leverage_sell": [
2,
3,
4,
5
],
"fees": [
[
0,
0.26
],
[
50000,
0.24
],
[
100000,
0.22
],
[
250000,
0.2
],
[
500000,
0.18
],
[
1000000,
0.16
],
[
2500000,
0.14
],
[
5000000,
0.12
],
[
10000000,
0.1
]
],
"fees_maker": [
[
0,
0.16
],
[
50000,
0.14
],
[
100000,
0.12
],
[
250000,
0.1
],
[
500000,
0.08
],
[
1000000,
0.06
],
[
2500000,
0.04
],
[
5000000,
0.02
],
[
10000000,
0
]
],
"fee_volume_currency": "ZUSD",
"margin_call": 80,
"margin_stop": 40,
"ordermin": "0.01",
"costmin": "0.00002",
"tick_size": "0.00001",
"status": "online",
"long_position_limit": 1100,
"short_position_limit": 400
},
"XXBTZUSD": {
"altname": "XBTUSD",
"wsname": "XBT/USD",
"aclass_base": "currency",
"base": "XXBT",
"aclass_quote": "currency",
"quote": "ZUSD",
"lot": "unit",
"cost_decimals": 5,
"pair_decimals": 1,
"lot_decimals": 8,
"lot_multiplier": 1,
"leverage_buy": [
2,
3,
4,
5
],
"leverage_sell": [
2,
3,
4,
5
],
"fees": [
[
0,
0.26
],
[
50000,
0.24
],
[
100000,
0.22
],
[
250000,
0.2
],
[
500000,
0.18
],
[
1000000,
0.16
],
[
2500000,
0.14
],
[
5000000,
0.12
],
[
10000000,
0.1
]
],
"fees_maker": [
[
0,
0.16
],
[
50000,
0.14
],
[
100000,
0.12
],
[
250000,
0.1
],
[
500000,
0.08
],
[
1000000,
0.06
],
[
2500000,
0.04
],
[
5000000,
0.02
],
[
10000000,
0
]
],
"fee_volume_currency": "ZUSD",
"margin_call": 80,
"margin_stop": 40,
"ordermin": "0.0001",
"costmin": "0.5",
"tick_size": "0.1",
"status": "online",
"long_position_limit": 250,
"short_position_limit": 200
}
}
}