Skip to content

Etf Btc Aum

GET/v1/cryptodata/market-intelligence/etf/btc/aum

BTC spot-ETF assets under management (reconstructed estimate). Returns one row: ``aum_usd_from_flows``, ``btc_held_from_flows``, ``btc_price_usd``, ``cumulative_net_flow_usd``, ``price_appreciation_usd``, ``as_of``, ``since``, ``flow_days``, plus ``method``, ``source``, ``excludes`` and a ``caveats`` list. The ``_from_flows`` suffix is deliberate — GBTC converted holding an existing stake that never appears here as an inflow, so these cover BTC accumulated through flows since launch and understate the complex by roughly that seed. See ``excludes`` in the payload. This 503'd on EVERY call from the 2026-07-24 CoinGlass retirement until 2026-08-22: CoinGlass was the only AUM feed and no free one exists. It is derivable though — AUM is coins held times price, and the daily flow history plus that day's close gives the coins. See FreeMarketCollector._refresh_etf_aum for the derivation and its biases. ``cumulative_net_flow_usd`` is returned alongside deliberately: it is a DIFFERENT quantity from AUM (the gap is price appreciation), and conflating the two is the usual way this number gets misreported.

Price

$0.01/ call

Edge cache

300s

Uptime 24h

100.00%

p95

226ms

Parameters

No parameters.

Code

curl
# 1. No key, no payment: the gateway answers 402 with the price
curl -i "https://api.realtimeapi.ai/v1/cryptodata/market-intelligence/etf/btc/aum"

# 2. Pay: retry with a signed x402 payment (any x402 client builds this header)
curl "https://api.realtimeapi.ai/v1/cryptodata/market-intelligence/etf/btc/aum" -H "PAYMENT-SIGNATURE: $X402_PAYMENT"
TypeScript · @x402/fetch
// npm i @x402/fetch @x402/core @x402/evm viem
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = x402Client.fromConfig({ schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(privateKeyToAccount(PRIVATE_KEY)) }] });
const pay = wrapFetchWithPayment(fetch, client);
const data = await (await pay("https://api.realtimeapi.ai/v1/cryptodata/market-intelligence/etf/btc/aum")).json();
console.log(data);
Python · x402
# pip install x402 eth-account requests
from eth_account import Account
from x402.clients.requests import x402_requests

session = x402_requests(Account.from_key(PRIVATE_KEY))
print(session.get("https://api.realtimeapi.ai/v1/cryptodata/market-intelligence/etf/btc/aum").json())
With an API key
curl "https://api.realtimeapi.ai/v1/cryptodata/market-intelligence/etf/btc/aum" -H "X-API-Key: $RTAPI_KEY"

Frequently asked questions

How do I get etf btc aum from CryptoDataAPI?

Send GET https://api.realtimeapi.ai/v1/cryptodata/market-intelligence/etf/btc/aum. Pay $0.01 per request with x402, or send an X-API-Key header.

What does GET /market-intelligence/etf/btc/aum cost?

$0.01 per successful request in USDC on Base. Failed requests are never charged.

Can I call this endpoint from an MCP client?

Yes. Connect any MCP client to the RealtimeAPI server and use call_feed with this endpoint's URL, or get_quote to check the price first.

Get a free key

1,000 calls a month across every feed. Who is setting it up?

No key needed at all: agents can pay per call in USDC with x402.