GET可用FRESH
資料品質矩陣
交易所 × 資料族矩陣,包含 FRESH / PARTIAL / STALE / BROKEN / UNAVAILABLE 等級、來源與擷取時間戳記、落後時間、覆蓋範圍,以及每個缺口的原因。
GET
/api/meta/quality請求
查詢參數
| 名稱 | 型別 | 必填 | 預設值 | 可用值 | 說明 |
|---|---|---|---|---|---|
| exchange | string | 選填 | — | — | 僅回傳此交易所(小寫 ID,例如 `binance`)。 |
| family | string | 選填 | — | — | 僅回傳此資料族(例如 `oi`、`funding`、`liquidation`)。 |
請求範例
curl -s "https://www.coinboss.com/api/meta/quality"回應欄位
欄位表由真實回應產生,因此列出的正是端點實際回傳的內容。路徑中的 a[] 代表陣列元素,{*} 代表以動態名稱(例如幣種或交易所)為鍵的物件。
| 欄位 | 型別 | 單位 | 說明 |
|---|---|---|---|
| success | boolean | — | 請求成功時為 true。失敗時回應內容為 `{ success: false, code, error, request_id }`。 |
| schema | string | — | 此回應的結構描述 ID(`coinboss.meta.quality/1`)。 |
| now | number | ms | 建立回應時的伺服器時間。 |
| families | array | — | 依交易所逐一評定的資料族(行情、持倉量、資金費率、爆倉、訂單簿、期權等)。 |
| families[] | object | — | 單一資料族:`id`、`scope`、`title`、`what`、`table`、`cadence` 與 `fresh_within_s`。 |
| families[].id | string | — | 識別碼。 |
| families[].scope | string | — | 在 `matrix` 中依交易所逐一評定的資料族為 `exchange`。 |
| families[].title | string | — | 資料族的顯示標題。 |
| families[].what | string | — | 資料族所涵蓋資料的簡短說明。 |
| families[].table | string | — | 用來評定該資料族的內部資料集名稱;僅供參考。 |
| families[].cadence | string | — | 資料族採集排程的純文字說明;未註明時為 null。 |
| families[].fresh_within_s | number | s | 新鮮視窗:比此時間更新的資料視為新鮮。 |
| exchanges | array | — | 交易所。 |
| exchanges[] | string | — | 交易所。 |
| matrix | object | — | 以列與欄為鍵的矩陣。 動態鍵: aster,backpack,binance,bingx,bitfinex,bitget |
| matrix.{*} | object | — | 以列與欄為鍵的矩陣。 動態鍵: ticker,oi,funding,funding_settle,liquidation,ls |
| matrix.{*}.{*} | object | — | 以列與欄為鍵的矩陣。 |
| matrix.{*}.{*}.status | string | — | 狀態。 |
| matrix.{*}.{*}.lag_s | number|null | s | 目前時間減去該交易所(第一層鍵)與該資料族(第二層鍵)已儲存資料的最新時間戳記;該資料族在該交易所無法使用時為 null。 |
| matrix.{*}.{*}.source_at | number|null | ms | 時間戳記。 |
| matrix.{*}.{*}.fetched_at | number|null | ms | CoinBoss 從來源擷取資料的時間。 |
| matrix.{*}.{*}.fresh_within_s | number|null | s | 新鮮視窗:比此時間更新的資料視為新鮮。 |
| matrix.{*}.{*}.coverage | object|null | — | 已納入與缺少的項目。 |
| matrix.{*}.{*}.coverage.rows | number | — | 結果資料列。 可能不存在 |
| matrix.{*}.{*}.coverage.rows_fresh | number | — | 在新鮮視窗內更新的資料列。 可能不存在 |
| matrix.{*}.{*}.coverage.rows_usable | number | — | 在可用視窗內的資料列。 可能不存在 |
| matrix.{*}.{*}.coverage.rows_orphan | number | — | 其合約已下架的資料列。 可能不存在 |
| matrix.{*}.{*}.coverage.rows_invalid | number | — | 未通過驗證的資料列。 可能不存在 |
| matrix.{*}.{*}.reason | string|null | — | 原因代碼。 |
| matrix.{*}.{*}.coverage.rows_no_liveness | number | count | 所屬合約沒有實際交易跡象(已下架或沒有成交量)的資金費率資料列;不計入新鮮度統計。 可能不存在 |
| matrix.{*}.{*}.coverage.rows_unknown_interval | number | count | 近期有更新、但結算週期不明的資金費率資料列,因此無法歸一為 8 小時。 可能不存在 |
| matrix.{*}.{*}.coverage.symbols | number | — | 交易對。 可能不存在 |
| matrix.{*}.{*}.coverage.events_1h | number | count | 過去 1 小時內自該交易所儲存的爆倉單;各交易所的最小訂單規模不同。 可能不存在 |
| matrix.{*}.{*}.coverage.events_24h | number | count | 過去 24 小時內自該交易所儲存的爆倉單;各交易所的最小訂單規模不同。 可能不存在 |
| matrix.{*}.{*}.via | string | — | 採集路徑。 可能不存在 |
| matrix.{*}.{*}.coverage.books | number | count | 追蹤中的訂單簿數量。 可能不存在 |
| matrix.{*}.{*}.coverage.books_fresh | number | count | 在新鮮視窗內有更新的訂單簿數量。 可能不存在 |
| matrix.{*}.{*}.coverage.books_reaching_2pct | number | count | 深度足以涵蓋中間價上下 ±2 % 的訂單簿數量。 可能不存在 |
| matrix.{*}.{*}.coverage.contracts | number | — | 各合約的資料列。 可能不存在 |
| matrix.{*}.{*}.coverage.contracts_fresh | number | count | 在新鮮視窗內有更新的合約數量。 可能不存在 |
| matrix.{*}.{*}.coverage.with_mark_and_index | number | count | 同時具有標記價格與指數價格的合約數量。 可能不存在 |
| matrix.{*}.{*}.coverage.delivery_contracts | number | count | 交割(有到期日)合約的數量。 可能不存在 |
| matrix.{*}.{*}.note | string | — | 備註。 可能不存在 |
| matrix.{*}.{*}.coverage.coins | number | — | 幣種。 可能不存在 |
| matrix.{*}.{*}.coverage.rows_without_oi | number | count | 沒有 USD 持倉量數值的幣本位、USDC 本位或交割合約資料列。 可能不存在 |
| matrix.{*}.{*}.coverage.with_mark_iv | number | count | 具有標記隱含波動率的期權合約數量。 可能不存在 |
| matrix.{*}.{*}.coverage.with_greeks | number | count | 具有希臘值的期權合約數量。 可能不存在 |
| datasets | array | — | 非依交易所區分之資料集(例如現貨 ETF 與 CME 每日資料)的品質檢查,各附狀態、延遲、覆蓋範圍與原因。 |
| datasets[] | object | — | 單一全市場資料集,不隸屬於任何單一交易所(期權、現貨 ETF、CME、訂單簿、基差)。 |
| datasets[].family | string | — | 資料集 ID,例如 `etf` 或 `cme`。 |
| datasets[].id | string | — | 識別碼。 |
| datasets[].title | string | — | 資料集的顯示名稱。 |
| datasets[].source | string | — | 數值的來源。 |
| datasets[].endpoint | string | — | 提供該資料集的公開端點。 |
| datasets[].status | string | — | 狀態。 |
| datasets[].lag_s | number | s | 建立回應當下最新資料點距今的時間。 |
| datasets[].source_at | number | ms | 時間戳記。 |
| datasets[].fetched_at | number | ms | CoinBoss 從來源擷取資料的時間。 |
| datasets[].fresh_within_s | number | s | 新鮮視窗:比此時間更新的資料視為新鮮。 |
| datasets[].coverage | object | — | 已納入與缺少的項目。 |
| datasets[].coverage.funds_total | number | count | 追蹤中的基金數量。 可能不存在 |
| datasets[].coverage.funds_covered | number | count | 具有可用揭露資料的基金數量。 可能不存在 |
| datasets[].coverage.funds_unavailable | number | count | 發行商未公布任何機器可讀揭露資料的基金數量。 可能不存在 |
| datasets[].coverage.funds_failing | number | count | 最近一輪採集中無法讀取揭露資料的基金數量。 可能不存在 |
| datasets[].coverage.as_of | string | — | 已涵蓋基金中最新的揭露日期(YYYY-MM-DD)。 可能不存在 |
| datasets[].coverage.as_of_min | string | — | 已涵蓋基金中最舊的揭露日期(YYYY-MM-DD)。 可能不存在 |
| datasets[].reason | string|null | — | 原因代碼。 |
| datasets[].coverage.contracts | number | — | 各合約的資料列。 可能不存在 |
| datasets[].coverage.report_date | string | — | 最新一期 CFTC Commitments of Traders 報告的日期(YYYY-MM-DD)。 可能不存在 |
| datasets[].coverage.products | number | count | 涵蓋的 CME 商品數量。 可能不存在 |
| datasets[].coverage.trade_date | string | — | 最新一份 CME 每日報告的交易日期(YYYY-MM-DD)。 可能不存在 |
| summary | object | — | 摘要區塊。 動態鍵: FRESH,PARTIAL,STALE,BROKEN,UNAVAILABLE |
| summary.{*} | number | — | 摘要區塊。 |
| by_family | object | — | 每個資料族中各狀態的交易所數量。外層鍵為資料族 ID。 動態鍵: ticker,oi,funding,funding_settle,liquidation,ls |
| by_family.{*} | object | — | 單一資料族的狀態計數,鍵為狀態(`FRESH`、`PARTIAL`、`STALE`、`BROKEN`、`UNAVAILABLE`)。 動態鍵: FRESH,PARTIAL,STALE,BROKEN,UNAVAILABLE |
| by_family.{*}.{*} | number | count | 該資料族中處於該狀態的交易所數量。 |
| alerts | array | — | 資料品質巡檢中未解除、或在過去 7 天內解除的告警,未解除者排在前面;依請求參數篩選。 |
| alerts[] | object | — | 單一告警:`level`、`exchange`、`family`、`code`、`detail`、發出/最後觀測/解除時間、`hits` 與 `open`。 |
| alerts[].level | string | — | 等級。 |
| alerts[].exchange | string | — | 交易所 ID,小寫(例如 `binance`)。 |
| alerts[].family | string | — | 告警所涉及的資料族。 |
| alerts[].code | string | — | 代碼。 |
| alerts[].detail | string | — | 詳細說明。 |
| alerts[].opened_at | number | ms | 時間戳記。 |
| alerts[].last_seen_at | number | ms | 時間戳記。 |
| alerts[].resolved_at | number|null | ms | 時間戳記。 |
| alerts[].hits | number | count | 自告警發出以來,觀測到該狀況的巡檢次數(每 5 分鐘一次)。 |
| alerts[].open | boolean | — | 該期間的開盤價。 |
| monitor | object | — | 監控本身的健康狀況:最近一次巡檢的時間與距今時間、`patrol_ok`,以及採集器心跳距今的時間。 |
| monitor.patrol_last_run_at | number | ms | 時間戳記。 |
| monitor.patrol_age_s | number | s | 距該事件的秒數。 |
| monitor.patrol_ok | boolean | — | 巡檢在過去 15 分鐘內執行過時為 true;為 false 時 `alerts` 清單可能不是最新的,但矩陣仍為即時資料。 |
| monitor.collector_heartbeat_age_s | number | s | 距該事件的秒數。 |
| errors | null | — | 資料族 ID 與錯誤碼的對應表,列出品質檢查本身失敗的資料族;所有檢查皆已執行時為 null。 |
| legend | object | — | 每種儲存格狀態定義的純文字說明。 動態鍵: FRESH,PARTIAL,STALE,BROKEN,UNAVAILABLE |
| legend.{*} | string | — | 鍵所指狀態(`FRESH`、`PARTIAL`、`STALE`、`BROKEN`、`UNAVAILABLE`)的定義。 |
| method | object | — | 公式/計算方法說明。 |
| method.status | string | — | 狀態。 |
| method.lag_s | string | — | `lag_s` 計算方式的純文字說明。 |
| method.source_at | string | — | 日期時間字串。 |
| method.fetched_at | string | — | 日期時間字串。 |
| meta | object | — | 此回應的封套資訊:結構描述 ID、產生資料的系統、時間戳記、快取存活時間與新鮮度。 |
| meta.schema | string | — | 此回應的結構描述 ID;與頂層 `schema` 的值相同。 |
| meta.source | array | — | 數值的來源。 |
| meta.source[] | object | — | 數值的來源。 |
| meta.source[].system | string | — | 產生資料的系統;開發者中心的端點一律為 `coinboss`。 |
| meta.source[].component | string | — | 資料背後的元件:端點探針與資料品質巡檢。 |
| meta.observed_at | null | — | 時間戳記。 |
| meta.received_at | number | ms | 時間戳記。 |
| meta.fetched_at | number | ms | CoinBoss 從來源擷取資料的時間。 |
| meta.window | string | — | 時間視窗。 |
| meta.cache_ttl_s | number | s | 此回應的伺服器端快取存活時間。 |
| meta.quality | string | — | 正常情況下為 `FRESH`;品質巡檢超過 15 分鐘未執行時為 `PARTIAL`(僅告警清單受影響)。 |
| meta.is_stale | boolean | — | 資料列超出新鮮視窗時為 true;過期的資料列不計入總額。 |
| meta.fallback | string | — | 輸入資料過期或缺失時此端點回傳內容的純文字說明。 |
產生於 2026-11-11 23:01 UTC,依據 3 筆真實回應。
回應範例
/api/meta/quality · 真實回應,擷取於 2026-11-13 03:53:46 UTC。 較長的陣列與對應表已截短顯示:alerts 原有 11 個項目; legend 原有 5 個項目; matrix 原有 30 個項目; summary 原有 5 個項目; datasets 原有 12 個項目; families 原有 12 個項目。
- "success"true
- "schema""coinboss.meta.quality/1"
- "now"1794542026126
- "families"
- "exchanges"
- "aster"
- "backpack"
- "binance"
- "bingx"
- "bitfinex"
- "bitget"
- "bitstamp"
- "bitunix"
- "matrix"
- "aster"
- "backpack"
- "datasets"
- "summary"
- "FRESH"161
- "PARTIAL"7
- "by_family"
- "ticker"
- "oi"
- "alerts"
- "monitor"
- "patrol_last_run_at"1794541745827
- "patrol_age_s"281
- "patrol_ok"true
- "collector_heartbeat_age_s"36
- "errors"null
- "legend"
- "FRESH""newest stored data point is inside the fresh window for this family"
- "PARTIAL""some contracts / rows are outside the fresh window or miss a required field"
- "method"
- "status""judged from data timestamps in CoinBoss storage every request (30 s in-process cache); a running collector process is not treated as evidence"
- "lag_s""now − newest stored data timestamp for the exchange / family"
- "source_at""newest stored data timestamp (exchange timestamp when the exchange provides one, otherwise collector receive time)"
- "fetched_at""last successful upstream call recorded by the collector health log; null for WebSocket feeds and collectors that do not log per-call health"
- "meta"
- "schema""coinboss.meta.quality/1"
- "source"
- "observed_at"null
- "received_at"1794542026978
- "fetched_at"1794542026126
- "window""latest"
- "cache_ttl_s"20
- "quality""FRESH"
- "is_stale"false
- "fallback""matrix is always computed from storage; when the 5-minute patrol itself stops (monitor.patrol_ok=false) only the alerts list may be outdated"
已驗證的樣本
除了上方的範例之外,探針還會以下列參數呼叫此端點,並在每次呼叫時檢查結構描述。
| 參數 | HTTP | 延遲 | 結果 |
|---|---|---|---|
| exchange=binance | 200 | 1 ms | 通過 FRESH |
| family=funding | 200 | 1 ms | 通過 FRESH |
檢查於 2026-11-13 03:29:27 UTC
詳細資訊
- 身分驗證
- 無。公開端點。
- 速率限制
- 每個 IP 每分鐘 1200 次請求
- 伺服器快取
- 20s
- 邊緣微快取
- 10s
- 更新頻率
- 於請求時依每組交易所 × 資料族的最新資料時間戳記評估。
- 資料來源
- CoinBoss 原始資料表(最新資料列的時間戳記)、採集器健康日誌。行程仍在執行絕不會被視為資料健康。
- 時間戳記
- Unix epoch 毫秒(UTC),除非欄位說明另有註明
- 回應格式
- json
- 穩定性
- 穩定版
- 上線時間
- 2026-11-11
即時狀態
可用檢查於 2026-11-13 03:53:46 UTCHTTP 200887 ms結構描述相符最新資料點距今 0s
近 30 天可用率
407 次檢查中有 100% 通過
錯誤
所有端點的失敗回應都採用同一種結構。完整清單請見錯誤頁面。 錯誤與速率限制 →
| 錯誤碼 | HTTP | 意義 | 處理方式 |
|---|---|---|---|
| INVALID_PARAM | 400 | 缺少必填參數,或某個值不被接受。已知時,`param` 會指出是哪個參數。 | 請勿原樣重試;請修正請求。 |
| UNAUTHORIZED | 401 | 已送出 `CB-API-KEY` 標頭,但金鑰未知或已撤銷。公開資料不需要金鑰——請移除該標頭或改用有效的金鑰。 | 請勿原樣重試。 |
| FORBIDDEN | 403 | 此路由不屬於公開 API(內部或僅限帳戶使用)。 | 請勿重試。 |
| NOT_FOUND | 404 | 未知的路由,或所請求的幣種/交易所/基金不存在。 | 請勿重試;請對照目錄檢查路徑與識別碼。 |
| RATE_LIMITED | 429 | 請求數超過每分鐘上限。`Retry-After` 會指出需等待的秒數。 | 等待 `Retry-After` 指定的時間後,再以退避策略重試。 |
| INTERNAL | 500 | 非預期的伺服器錯誤。訊息刻意保持籠統;回報時請附上 `request_id`。 | 幾秒後重試一次;若問題持續,請附上請求 ID 回報。 |
| UPSTREAM_FAILED | 503 | 此端點背後的資料來源未及時回應。不會以過期或替代的數字代替回傳。 | 以退避策略重試;並查看狀態頁面。 |
| UNAVAILABLE | 501 / 503 | 資料集暫時尚未就緒(快取預熱中),或此端點目前尚無合法的公開來源。 | 稍後重試;目錄會標示出設計上即無法使用的端點。 |
| REQUEST_FAILED | 200 | 部分舊版端點會以 HTTP 200 回應但帶有 `success: false`。請務必檢查 `success`,而不只是 HTTP 狀態碼。 | 視訊息而定;請當作失敗的請求處理。 |
試用
GET
/api/meta/quality可用參數
string — Return only this exchange (lower-case id, for example `binance`).
string — Return only this data family (for example `oi`, `funding`, `liquidation`).
請求 URL
https://www.coinboss.com/api/meta/quality選擇一個端點並按下「送出請求」。回應內容、標頭與耗時會顯示在這裡。
此分類的其他端點
- 資料品質矩陣(採集器視角) /api/sd/quality
- API 目錄 /api/meta/catalog
- 更新日誌與版本政策 /api/meta/changelog
- 端點文件 /api/meta/endpoint
- OpenAPI 文件 /api/meta/openapi
- 資料品質矩陣 /api/meta/quality
- 服務狀態 /api/meta/status
- 檢查平台是否收錄某個幣種代號 /api/coin-exists
- 幣種代號與本地託管圖示路徑的對應表 /api/coin-icons
- 幣種頁彙總摘要 /api/content/coin
- 全站各版塊摘要 /api/content/summary
- 法幣匯率表 /api/currency/fx
- 交易所 ID 與本地託管圖示路徑的對應表 /api/exchange-icons
- 存活檢查 /api/health
- 研究頁面統計 /api/research/stats