/api/sd/liquidity/history
GET부분FRESH

오더북 깊이 히스토리

코인의 한 밴드 내 매수·매도 호가 깊이 합계 시계열로, 커버리지에 포함된 전체 거래소 또는 단일 거래소 기준입니다. 각 포인트에는 포함된 계약 수가 명시됩니다.

GET/api/sd/liquidity/history
부분 커버리지. 수집은 2026-11-11에 시작되었으므로 더 긴 기간은 점진적으로 채워집니다. 누락된 버킷은 보간하지 않고 비워 둡니다. 두 포인트 사이에서 `n_included`가 달라지면 기여한 계약 집합이 바뀌었다는 뜻입니다.

요청

쿼리 파라미터

이름타입필수기본값허용 값설명
coinstring필수——코인 심볼, 대소문자 구분 없음(예: `BTC`). 값이 없거나 형식이 잘못되면 400을 반환합니다. 예시: BTC
marketstring선택perpperp, spot시장 유형. 무기한 선물과 현물 오더북은 절대 합산하지 않습니다.
bandstring선택10.5, 1, 2중간가로부터의 거리(%).
rangestring선택24h24h, 7d, 30d조회 기간: 24h(30분 포인트), 7d(2시간 포인트) 또는 30d(6시간 포인트).
exchangestring선택——이 시장에서 커버하는 거래소 ID 하나(예: `gate`). 기본값: 모든 거래소. 커버하지 않는 거래소는 400을 반환합니다.

요청 예시

curl -s "https://www.coinboss.com/api/sd/liquidity/history?coin=BTC"

응답 필드

필드 표는 실제 응답에서 생성되므로 엔드포인트가 반환하는 내용을 그대로 보여 줍니다. 경로에서 a[]는 배열 항목을, {*}는 코인이나 거래소처럼 동적 이름을 키로 갖는 객체를 뜻합니다.

필드타입단위설명
successboolean—요청이 성공하면 true입니다. 실패하면 본문은 `{ success: false, code, error, request_id }`입니다.
schemastring—이 응답의 스키마 ID. 기존 필드의 의미나 타입이 바뀔 때만 변경됩니다.
nownumberms응답이 생성된 서버 시각.
coinstring—코인 심볼(대문자).
marketstring—`perp` 또는 `spot`.
band_pctnumber%선택한 밴드: 중간가로부터의 거리.
rangestring—적용된 조회 기간.
exchangestring|null—거래소 ID(소문자).
interval_snumbers포인트 간격.
pointsarray—시리즈 포인트, 오래된 순.
points[]object—시리즈 포인트, 오래된 순.
points[].tnumberms시간 버킷의 시작 시각.
points[].bid_depth_usdnumberUSD중간가와 밴드 하단 경계 사이의 대기 매수 주문 명목가치. `complete`가 false이면 하한값입니다.
points[].ask_depth_usdnumberUSD중간가와 밴드 상단 경계 사이의 대기 매도 주문 명목가치. `complete`가 false이면 하한값입니다.
points[].n_includednumber—깊이 합계에 포함된 행: 최신이며 해당 밴드에 대해 완전한 행. 깊이 값과 함께 확인하십시오.
points[].n_rowsnumber—만료된 행을 포함해 찾은 행.
points[].midnumberUSD(최우선 매수호가 + 최우선 매도호가) ÷ 2, 코인 1개의 가격.
points[].uses_aggregated_bucketsboolean—포함된 행 중 가격 집계 버킷을 사용한 행이 있으면 true이며, 이 경우 합계는 하한값이 됩니다.
points_expectednumber—기간이 완전할 때 포함되는 포인트 수.
first_tnumberms반환된 첫 포인트의 시각.
last_tnumberms반환된 마지막 포인트의 시각.
exchange_pointsobject—각 거래소가 등장하는 포인트 수(키는 거래소 ID). 동적 키: deribit,aster,backpack,bitfinex,bitget,bitunix
exchange_points.{*}number—각 거래소가 등장하는 포인트 수(키는 거래소 ID).
coverageobject—수치에 포함된 것과 포함되지 않은 것. 다른 소스와 합계를 비교하기 전에 먼저 이 항목을 비교하십시오.
coverage.included_exchangesarray—최신 데이터가 포함된 소스.
coverage.included_exchanges[]string—최신 데이터가 포함된 소스.
coverage.unavailablearray—포함할 수 없었던 소스와 각각의 사유. 0으로 집계하는 일은 없습니다. 이 표를 생성한 샘플에서는 비어 있음
coverage.stale_excludedarray—마지막 갱신이 신선도 창을 벗어나 제외된 행. 이 표를 생성한 샘플에서는 비어 있음
methodobject—이 응답에 사용된 산식을 필드당 한 항목씩 일반 텍스트로 기술한 내용.
method.bid_depth_usdstring—`bid_depth_usd`의 산식 설명, 일반 텍스트.
method.ask_depth_usdstring—`ask_depth_usd`의 산식 설명, 일반 텍스트.
method.completestring—`complete`의 산식 설명, 일반 텍스트.
method.historystring—`history`의 산식 설명, 일반 텍스트.
method.exchange_pointsstring—`exchange_points`의 산식 설명, 일반 텍스트.
metaobject—이 응답의 데이터 경로와 신선도.
meta.schemastring—이 응답의 스키마 ID. 기존 필드의 의미나 타입이 바뀔 때만 변경됩니다.
meta.sourcearray—데이터를 수집한 업스트림 공개 엔드포인트.
meta.source[]object—데이터를 수집한 업스트림 공개 엔드포인트.
meta.source[].exchangestring—거래소 ID(소문자).
meta.source[].marketstring—`perp` 또는 `spot`.
meta.source[].endpointstring—수집기가 읽는 소스의 공개 엔드포인트(데이터 경로 표시용이며 클라이언트가 직접 호출하지 않음).
meta.observed_atnull—소스가 데이터에 부여한 타임스탬프.
meta.received_atnumbermsCoinBoss 수집기가 데이터를 수신한 시각.
meta.fetched_atnumberms이 응답이 조립된 시각.
meta.windowstring—수치가 포괄하는 시간 구간.
meta.qualitystring—FRESH, PARTIAL, STALE, BROKEN 또는 UNAVAILABLE. 데이터 타임스탬프와 커버리지로 판정합니다.
meta.is_staleboolean—데이터가 신선도 창보다 오래되었으면 true.
meta.cache_ttl_snumbers이 응답의 캐시 수명.
meta.fallbackstring—수집기나 소스에 장애가 발생했을 때 엔드포인트가 반환하는 내용.
meta.collector_heartbeat_age_snumbers수집기가 가동 중임을 마지막으로 보고한 이후 경과한 초.

2026-11-11 23:00 UTC에 실제 응답 3건으로 생성.

응답 예시

/api/sd/liquidity/history?coin=BTC · 2026-11-13 04:02:45 UTC에 수집한 실제 응답. 긴 배열과 맵은 표시를 위해 줄였습니다: points: 원래 항목 48개; meta.source: 원래 항목 19개; exchange_points: 원래 항목 19개; coverage.included_exchanges: 원래 항목 19개.

  • {
    • "success": true,
    • "schema": "coinboss.sd.liquidity/1",
    • "now": 1794542565889,
    • "coin": "BTC",
    • "market": "perp",
    • "band_pct": 1,
    • "range": "24h",
    • "exchange": null,
    • "interval_s": 1800,
    • "points": [
      • { … 7 },
      • { … 7 }
      ],
    • "points_expected": 48,
    • "first_t": 1794457800000,
    • "last_t": 1794542400000,
    • "exchange_points": {
      • "deribit": 96,
      • "aster": 48
      },
    • "coverage": {
      • "included_exchanges": [ … 8 ],
      • "unavailable": [],
      • "stale_excluded": []
      },
    • "method": {
      • "bid_depth_usd": "sum of resting bid notional with price >= mid * (1 - band%), in USD; notional = price * size * contract_value (inverse contracts: size * contract_value); USDT /…",
      • "ask_depth_usd": "sum of resting ask notional with price <= mid * (1 + band%), in USD; same notional rule as bid_depth_usd",
      • "complete": "true when BOTH sides of the snapshot reach the band edge (reach_pct >= band) or the whole side of the book was returned; when false the depth values are lower b…",
      • "history": "sd_book_hist keeps the first snapshot of every 15-minute bucket per contract; each returned point takes, per contract, the first stored snapshot inside the poin…",
      • "exchange_points": "number of returned points in which each exchange had a row that was complete for the band; a changing venue set moves the aggregate, so compare n_included acros…"
      },
    • "meta": {
      • "schema": "coinboss.sd.liquidity/1",
      • "source": [ … 2 ],
      • "observed_at": null,
      • "received_at": 1794542400000,
      • "fetched_at": 1794542565889,
      • "window": "24h",
      • "quality": "FRESH",
      • "is_stale": false,
      • "cache_ttl_s": 120,
      • "fallback": "history is append-only (first snapshot of each 15-minute bucket per contract, 30-day retention); buckets the collector missed are simply absent, never interpola…",
      • "collector_heartbeat_age_s": 3
      }
    }

검증된 샘플

프로브는 위 예시 외에도 아래 파라미터로 이 엔드포인트를 호출하고 매번 스키마를 검사합니다.

파라미터HTTP지연 시간결과
band=2&coin=ETH&market=spot2006 ms통과 FRESH
coin=SOL&exchange=gate2002 ms통과 FRESH
band=3&coin=BTC4001 ms통과 예상된 오류 반환

2026-11-13 03:58:06 UTC 점검

상세 정보

인증
없음. 공개 엔드포인트.
요청 한도
IP당 분당 1200회
서버 캐시
2m
엣지 마이크로 캐시
10s
갱신 주기
계약별로 15분마다 스냅샷을 저장합니다. 각 포인트는 해당 버킷에서 가장 이른 스냅샷을 사용합니다(평균이 아닌 특정 시점의 값).
구간
24h / 7d / 30d.
데이터 소스
거래소 24곳(무기한 선물 및 현물 시장)의 공개 REST 오더북 스냅샷을 CoinBoss가 수집해 저장합니다(sd_book_latest, sd_book_hist). 깊이와 슬리피지는 CoinBoss가 원시 호가 단계에서 계산합니다.
거래소 커버리지
거래소 24곳, 거래소 × 시장 조합 38개. 공개 스냅샷이 중간가 기준 ±0.5 / 1 / 2 %에 도달하지 못하는 경우(거래소의 호가 단계 수 제한) 해당 밴드는 `complete: false`로 표시되고, 그 값은 하한값이며 집계에서 제외됩니다. `n_included` / `n_fresh`가 분모를 나타내고 `excluded_incomplete`에 제외된 항목이 나열됩니다.
페이지네이션
페이지네이션 없음. `range`가 포인트 수를 결정합니다(48 / 84 / 120).
정렬
시간 오름차순.
단위
Depth in USD notional, bid and ask side reported separately and never added. Spread and slippage in basis points (1 bp = 0.01 %). USDT / USDC / USD quotes are counted 1:1 as USD.
타임스탬프
필드 설명에 별도 언급이 없는 한 Unix epoch 밀리초(UTC)
응답 형식
json
안정성
안정
제공 시작
2026-11-11

실시간 상태

부분2026-11-13 04:02:45 UTC 점검HTTP 20012 ms스키마 일치최신 데이터 포인트: 3m 경과

수집은 2026-11-11에 시작되었으므로 더 긴 기간은 점진적으로 채워집니다. 누락된 버킷은 보간하지 않고 비워 둡니다. 두 포인트 사이에서 `n_included`가 달라지면 기여한 계약 집합이 바뀌었다는 뜻입니다.

최근 30일 가용성

점검 408회 중 100% 통과

오류

실패한 호출은 모든 엔드포인트에서 동일한 구조로 반환됩니다. 전체 목록은 오류 페이지에 있습니다. 오류 및 요청 한도 →

코드HTTP의미대응 방법
INVALID_PARAM400필수 파라미터가 누락되었거나 허용되지 않는 값입니다. 문제가 된 파라미터를 알 수 있으면 `param`에 그 이름이 들어갑니다.그대로 재시도하지 말고 요청을 수정하십시오.
UNAUTHORIZED401`CB-API-KEY` 헤더를 보냈지만 알 수 없거나 폐기된 키입니다. 공개 데이터에는 키가 필요 없으므로 헤더를 빼거나 유효한 키를 사용하십시오.그대로 재시도하지 마십시오.
FORBIDDEN403해당 경로는 공개 API에 포함되지 않습니다(내부용 또는 계정 전용).재시도하지 마십시오.
NOT_FOUND404알 수 없는 경로이거나, 요청한 코인 / 거래소 / 펀드가 존재하지 않습니다.재시도하지 말고 경로와 식별자를 카탈로그와 대조해 확인하십시오.
RATE_LIMITED429요청 수가 분당 한도를 초과했습니다. `Retry-After`가 대기해야 할 초를 알려 줍니다.`Retry-After`만큼 기다린 뒤 백오프를 적용해 재시도하십시오.
INTERNAL500예기치 않은 서버 오류입니다. 메시지는 의도적으로 일반적인 내용만 담습니다. 신고할 때 `request_id`를 인용하십시오.몇 초 뒤 한 번 재시도하고, 계속되면 요청 ID와 함께 신고하십시오.
UPSTREAM_FAILED503이 엔드포인트의 데이터 소스가 제시간에 응답하지 않았습니다. 그 대신 만료된 수치나 대체 수치를 반환하는 일은 없습니다.백오프를 적용해 재시도하고 상태 페이지를 확인하십시오.
UNAVAILABLE501 / 503데이터셋이 일시적으로 준비되지 않았거나(캐시 워밍 중) 엔드포인트에 아직 합법적인 공개 소스가 없습니다.나중에 재시도하십시오. 설계상 사용 불가인 엔드포인트는 카탈로그에 표시되어 있습니다.
REQUEST_FAILED200일부 이전 엔드포인트는 HTTP 200에 `success: false`로 응답합니다. HTTP 상태만 보지 말고 항상 `success`를 확인하십시오.메시지에 따라 다릅니다. 실패한 요청으로 처리하십시오.

직접 실행

GET/api/sd/liquidity/history부분
파라미터

string — Coin symbol, case-insensitive (for example `BTC`). Missing or malformed values return 400.

string · 기본값 perp — Market type. Perpetual and spot books are never added together.

string · 기본값 1 — Distance from mid price in percent.

string · 기본값 24h — Look-back range: 24h (30-minute points), 7d (2-hour points) or 30d (6-hour points).

string — One exchange id covered for this market (for example `gate`). Default: all exchanges. An exchange that is not covered returns 400.

요청 URLhttps://www.coinboss.com/api/sd/liquidity/history?coin=BTC
엔드포인트를 선택하고 “요청 보내기”를 누르십시오. 응답, 헤더, 소요 시간이 여기에 표시됩니다.