---
title: "Get Daily Snapshot"
method: GET
path: "/api/v1/daily"
tags: ["Daily Snapshot"]
---

# Get Daily Snapshot

`GET /api/v1/daily`

## Request

- Base URL: `https://cryptodataapi.com`
- URL: `https://cryptodataapi.com/api/v1/daily`
- Auth: API key in header `X-API-Key`

Full daily snapshot of all current (non-history) data in one response.

Excludes Binance spot prices and Hyperliquid data which are available
via dedicated ``/daily/prices`` and ``/daily/hyperliquid`` endpoints.

**Market health block (`market_health`)**

Dual-score architecture: 4 long-term components (Price Trend, Market Breadth,
Stablecoin Flow 90d, Macro/DXY) + 7 short-term components (Volume Quality,
Fear & Greed, Derivatives, Market Breadth Short, Volatility, Short-Term Price,
Stablecoin Flow 14d). Combined score = 0.5·LT + 0.5·ST.

- `market_health.total_score` / `long_term_score` / `short_term_score`: int 0–100
- `market_health.sentiment` / `long_term_sentiment` / `short_term_sentiment`: BULLISH | NEUTRAL | BEARISH
- `market_health.components`: `{name: {score, weight}}` (per-component details
  are stripped from `/daily`; hit `/market-health` for component `.details`)
- `market_health.indicators`: flat denormalization for quick consumption (below)

**`market_health.indicators` contract**

A flat dict of the most-filtered values from `components.<x>.details`. Keys are
**omitted entirely** when the source value is unavailable (never null) so consumers
can safely use `dict.get(key, default)` for fallbacks. Committed key set:

- `long_short_ratio` (float) — BTC long/short ratio (Binance perps)
- `funding_rate` (float, %) — avg funding rate (aliased from `avg_funding_rate`;
  CoinGlass cross-exchange when available, Binance fallback)
- `buy_ratio` (float, 0–1) — weighted taker-buy ratio across top spot pairs
- `fear_greed_value` (int, 0–100) — averaged Fear & Greed index
- `breadth_pct` (float, %) — share of top-30 coins above their 200D MA
- `pct_from_200ma` (float, %) — BTC distance from 200D MA
- `cross_status` (str) — Golden | Death | Neutral
- `stablecoin_change_7d` (float) — 7-day stablecoin market-cap change

**Cross-exchange scope**

`market_health` is computed cross-exchange (CoinGlass aggregate + Binance) and
is **not** scoped by the `exchange` query param. The `exchange` filter only
trims the `coins`, `coinglass.funding`, and `coinglass.liquidations` lists.
In particular `indicators.long_short_ratio` is BTC-on-Binance, used as a
market-wide sentiment signal — not a per-exchange Hyperliquid metric.

**Payload trimming and filter-source readiness**

To keep responses small, `coinglass.funding` and `coinglass.liquidations` are
always capped at the top 100 entries (sorted by max absolute funding rate
and 24h liquidation USD respectively) regardless of the `exchange` filter.
The full long tail is available at the dedicated
`/market-intelligence/funding-rates` and `/market-intelligence/liquidations`
endpoints. When `exchange` is set to a specific venue whose coin set has
not yet loaded after server start, this endpoint returns `503` rather than
silently emitting the unfiltered payload.

**Technical / Structural regime block (`technical_regime`)**

Universe-wide counts (`above_200ma`, `in_squeeze`, `overbought_1d`, …) plus
top-N symbol lists (`top_in_squeeze`, `top_overbought`, `top_oversold`,
`top_near_high`, `top_near_low`) as a macro overlay. The full per-symbol map
(`by_symbol`, keyed by ticker, each entry carrying the `ma` / `bollinger` /
`range_state` / `rsi` blocks) is **omitted by default** to keep this payload
compact — pass `technical_detail=true` to include it here, or read it
point-in-time from `/backtesting/daily-snapshots/{date}` where it is always
present. Per-symbol `rsi.*_1h` fields are only meaningful in the live
snapshot; backfilled historical days have no intraday series.

**Volatility regime block (`volatility_regime`)**

Realized-vol risk-sizing overlay (Regime #13): regime counts + shares
(`compressed`, `expanding`, `vol_shock`, `mean_reverting`, `normal`), a
0-100 `composite_score` (higher = more market-wide vol stress) with
`sentiment`, `median_vol_pctile_30`, and top-N lists (`top_compressed`,
`top_vol_shock`, `top_expanding`). The full per-symbol map (`by_symbol`,
each entry carrying the `regime` + `vol` metrics incl. the vol-target
multiplier) is **omitted by default** — pass `volatility_detail=true` to
include it, or read it point-in-time from `/backtesting/daily-snapshots/
{date}`. Per-symbol `vol.rv_1h` is live-only; backfilled days land null.

**SIGNUM_RGG directional trend radar (`signum_rgg`)**

Daily RED/GREY/GREEN trend classifier (ADX(14)+DMI with hysteresis) across the
full HL-perp ∪ top-Binance-spot universe — Regime #14's directional companion.
Universe summary: `green`/`grey`/`red` counts + shares, a directional
`net_breadth_pct` = (green−red)/n·100, `mean_trend_score`, a
BULLISH/NEUTRAL/BEARISH `sentiment`, and `top_green`/`top_red` (most strongly
trending). The full per-symbol map (`by_symbol`, keyed by bare ticker, each
carrying `color`, a signed `score` (+ADX green / −ADX red / 0 grey),
`adx`/`plus_di`/`minus_di`, `days_in_color`, and the `hl_symbol` join key) is
**omitted by default** — pass `signum_detail=true` to include it, or read it
point-in-time from `/backtesting/daily-snapshots/{date}`. Per-symbol
`intraday_*` are live-only; backfilled historical days land null.

## Query parameters

- `exchange` string: Filter coins by exchange: hyperliquid, binance_spot, asterdex, or 'all' for unfiltered
- `format` string: Response format: 'markdown' for LLM-friendly plain text
- `technical_detail` boolean: Include the full per-symbol technical_regime.by_symbol map (keyed by ticker). Off by default to keep the payload compact; always available point-in-time via /backtesting/daily-snapshots/{date}.
- `volatility_detail` boolean: Include the full per-symbol volatility_regime.by_symbol map (keyed by ticker; regime + vol metrics per coin). Off by default to keep the payload compact; always available point-in-time via /backtesting/daily-snapshots/{date}.
- `meme_detail` boolean: Include the full per-symbol meme_regime.by_symbol map (keyed by ticker; regime + meme metrics per coin). Off by default to keep the payload compact; always available point-in-time via /backtesting/daily-snapshots/{date}.
- `event_detail` boolean: Include the full per-symbol event_regime.by_symbol overlay (keyed by ticker; pending catalysts + net bias per coin). Off by default to keep the payload compact; always available point-in-time via /backtesting/daily-snapshots/{date}.
- `security_detail` boolean: Include the full per-symbol security_regime.by_symbol overlay (keyed by ticker; implicating hacks/depegs + acute bias per coin). Off by default to keep the payload compact; always available point-in-time via /backtesting/daily-snapshots/{date}.
- `signum_detail` boolean: Include the full per-symbol signum_rgg.by_symbol map (keyed by ticker; RED/GREY/GREEN color + signed trend score + ADX/DMI + hl_symbol join key per coin). Off by default to keep the payload compact; always available point-in-time via /backtesting/daily-snapshots/{date}.

## Response `200`

Successful Response

- DailySnapshotResponse: Full daily snapshot containing all current data from all collectors. Keys are collector names (e.g., binance_spot, hyperliquid, fear_greed, etc.) with their respective daily data payloads.
  - `available_sections` string[]
  - `market_health` object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/cryptodataapi/apis/crypto-data-api.md) · [All operations](https://skmtc.dev/cryptodataapi/apis/crypto-data-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cryptodataapi/apis/crypto-data-api/revisions/8628b754ca81?raw)
