curl --request GET \
--url https://api.kraken.com/v0/insto/custody/assetsimport requests
url = "https://api.kraken.com/v0/insto/custody/assets"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.kraken.com/v0/insto/custody/assets', 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/v0/insto/custody/assets"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}[
{
"name": "Bitcoin",
"asset": "BTC",
"asset_class": "currency",
"symbol": "₿",
"decimals": 8,
"display_decimals": 5,
"withdraw": true,
"deposit": true,
"transfer_to_spot": true,
"transfer_to_vault": true,
"stake": false,
"full_name": "Bitcoin (BTC)",
"network": "Bitcoin"
}
]{
"type": "tag:kraken.com,2025:gateway/ReadUpstream",
"status": 500,
"title": "Internal Server Error",
"data": "<unknown>",
"detail": "Failed to read response from upstream service.",
"instance": "https://debug.kraken.com/req/01HXYZ"
}{
"type": "tag:kraken.com,2025:gateway/Connect",
"status": 503,
"title": "Service Unavailable",
"data": "<unknown>",
"detail": "Downstream custody service is temporarily unreachable; retry with backoff.",
"instance": "https://debug.kraken.com/req/01HXYZ"
}List assets
Lists custody assets that support inbound funding via on-chain deposit or spot-to-vault transfer. Withdraw-only assets are omitted.
Each entry includes the currency code, display metadata, network, and supported actions (deposit, withdraw, transfer_to_spot, transfer_to_vault, stake).
No authentication is required.
Rate limit: 200 requests per 30 seconds per IP.
curl --request GET \
--url https://api.kraken.com/v0/insto/custody/assetsimport requests
url = "https://api.kraken.com/v0/insto/custody/assets"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.kraken.com/v0/insto/custody/assets', 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/v0/insto/custody/assets"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}[
{
"name": "Bitcoin",
"asset": "BTC",
"asset_class": "currency",
"symbol": "₿",
"decimals": 8,
"display_decimals": 5,
"withdraw": true,
"deposit": true,
"transfer_to_spot": true,
"transfer_to_vault": true,
"stake": false,
"full_name": "Bitcoin (BTC)",
"network": "Bitcoin"
}
]{
"type": "tag:kraken.com,2025:gateway/ReadUpstream",
"status": 500,
"title": "Internal Server Error",
"data": "<unknown>",
"detail": "Failed to read response from upstream service.",
"instance": "https://debug.kraken.com/req/01HXYZ"
}{
"type": "tag:kraken.com,2025:gateway/Connect",
"status": 503,
"title": "Service Unavailable",
"data": "<unknown>",
"detail": "Downstream custody service is temporarily unreachable; retry with backoff.",
"instance": "https://debug.kraken.com/req/01HXYZ"
}Response
Custody assets available for inbound funding, with display metadata and supported actions.
Localized asset name (e.g. Bitcoin, Ethereum, US Dollar).
"Bitcoin"
Asset currency code (e.g. BTC, ETH, USD).
"BTC"
Asset class label, one of: currency, equity, nft, tokenized_asset, futures_contract.
"currency"
Visual symbol or glyph for the asset (e.g. $). Empty when the catalog has no glyph.
"₿"
Number of decimal places used to record amounts of the asset.
8
Number of decimal places shown when displaying amounts in a UI.
5
Whether the asset supports withdrawal.
true
Whether the asset supports deposit.
true
Whether the asset can be transferred from a custody vault to a spot account.
true
Whether the asset can be transferred from a spot account to a custody vault.
true
Whether the asset supports staking.
false
Localized asset name followed by the asset code in parentheses (e.g. Bitcoin (BTC)).
"Bitcoin (BTC)"
Blockchain network name (e.g. Bitcoin, Ethereum, Solana). Omitted for non-crypto assets.
"Bitcoin"
Was this page helpful?