Skip to content

List Archives

GET/v1/cryptodata/backtesting/archives

List archived files available for download from cold storage. Use ``data_type=daily`` for consolidated Parquet files containing all symbols for an exchange in a single file (recommended for bulk downloads). ``data_type=klines_deep`` / ``funding_deep`` expose the deep monthly cold history (one Parquet per symbol per month) — much further back than the rolling daily files. ``klines_deep`` is coarse OHLCV (``interval`` 1h/4h/1d) for BOTH exchanges: ``exchange=binance`` (spot, back to each market's listing — BTCUSDT to Aug 2017) and ``exchange=hyperliquid`` (1d to HL's 2023 launch). ``funding_deep`` is hourly HL ``funding_rate`` + ``premium`` only (what ``fundingHistory`` carries); minute-level mark / oracle / OI history is ``hl_asset_ctxs``. Pass ``start``/``end`` (YYYY-MM-DD; YYYY-MM for deep tiers) to filter by date server-side — strongly recommended for high-volume types where the unfiltered listing can be large enough to time out.

Price

$0.01/ call

Edge cache

Off

Uptime 24h

54.17%

p95

3.22s

Parameters

NameInTypeDescription
data_type query string = klines Data type: daily, klines, funding, funding_hourly, hl_asset_ctxs, liquidations, hl_liquidations, hl_trade_flow, l4_depth, news_events, snapshots, klines_deep, or funding_deep. Use 'daily' for consolidated per-exchange bundles; 'hl_liquidations' is the per-event Hyperliquid liquidation tape, 'hl_trade_flow' the 1-min HL taker buy/sell buckets, 'funding_hourly' the settled HL funding prints with the boundary oracle price and 'hl_asset_ctxs' Hyperliquid's own 1-minute mark / oracle / mid / OI snapshots from its S3 archive, 2023-05-20 on (each one file per day, all coins); 'l4_depth' is 1-second exact-price band depth per coin-day reconstructed from the Hyperliquid order tape (pass symbol; from the day it is switched on, 2026-10-24 at the earliest); the '*_deep' tiers are monthly cold history (see /archives/index).
exchange query string Filter by exchange (klines/funding/daily/klines_deep/funding_deep only)
symbol query string Filter by symbol, or snapshot type name for snapshots
start query string Earliest archive date to include (YYYY-MM-DD, inclusive; YYYY-MM for '*_deep' tiers). Recommended for large types like liquidations to avoid listing timeouts.
end query string Latest archive date to include (YYYY-MM-DD, inclusive; YYYY-MM for '*_deep' tiers).
interval query string Candle interval for klines_deep only: 1h, 4h, or 1d (ignored for other types).

Code

curl
# 1. No key, no payment: the gateway answers 402 with the price
curl -i "https://api.realtimeapi.ai/v1/cryptodata/backtesting/archives"

# 2. Pay: retry with a signed x402 payment (any x402 client builds this header)
curl "https://api.realtimeapi.ai/v1/cryptodata/backtesting/archives" -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/backtesting/archives")).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/backtesting/archives").json())
With an API key
curl "https://api.realtimeapi.ai/v1/cryptodata/backtesting/archives" -H "X-API-Key: $RTAPI_KEY"

Frequently asked questions

How do I get list archives from CryptoDataAPI?

Send GET https://api.realtimeapi.ai/v1/cryptodata/backtesting/archives. Pay $0.01 per request with x402, or send an X-API-Key header.

What does GET /backtesting/archives 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.