/api/sd/liquidity/rank
GETSebagianPARTIAL

Peringkat koin berdasarkan kedalaman order book

Peringkat koin berdasarkan kedalaman order book agregat (bid + ask) dalam satu rentang, dengan jumlah kontrak yang disertakan dan spread tersempit.

GET/api/sd/liquidity/rank

Permintaan

Parameter kueri

NamaTipeWajibDefaultNilai yang diizinkanDeskripsi
marketstringOpsionalperpperp, spotJenis pasar. Order book perpetual dan spot tidak pernah dijumlahkan.
bandstringOpsional10.5, 1, 2Jarak dari harga tengah dalam persen.
limitintegerOpsional50≥ 1 · ≤ 200Jumlah baris.

Contoh permintaan

curl -s "https://www.coinboss.com/api/sd/liquidity/rank"

Kolom respons

Tabel kolom dihasilkan dari respons nyata, sehingga memuat persis apa yang dikembalikan endpoint. Path memakai a[] untuk item array dan {*} untuk objek yang kuncinya berupa nama dinamis seperti koin atau bursa.

KolomTipeSatuanDeskripsi
successboolean—true jika permintaan berhasil. Jika gagal, body-nya adalah `{ success: false, code, error, request_id }`.
schemastring—ID skema respons ini. ID hanya berubah jika kolom yang sudah ada berubah makna atau tipe.
nownumbermsWaktu server saat respons disusun.
marketstring—`perp` atau `spot`.
band_pctnumber%Rentang yang dipilih: jarak dari harga tengah.
limitnumber—Batas baris yang diterapkan.
total_coinsnumber—Koin yang memiliki minimal satu baris order book.
rowsarray—Satu baris per koin.
rows[]object—Satu baris per koin.
rows[].coinstring—Simbol koin (huruf besar).
rows[].bid_depth_usdnumberUSDNosional bid terpasang antara harga tengah dan tepi bawah rentang. Merupakan batas bawah jika `complete` bernilai false.
rows[].ask_depth_usdnumberUSDNosional ask terpasang antara harga tengah dan tepi atas rentang. Merupakan batas bawah jika `complete` bernilai false.
rows[].total_depth_usdnumberUSDKedalaman bid + kedalaman ask pada rentang tersebut, hanya dipakai sebagai kunci peringkat.
rows[].n_includednumber—Baris yang dimasukkan ke jumlah kedalaman: segar dan lengkap untuk rentang tersebut. Baca bersama nilai kedalaman.
rows[].n_freshnumber—Baris segar.
rows[].n_rowsnumber—Baris yang ditemukan, termasuk yang usang.
rows[].mid_mediannumberUSDMedian harga tengah dari baris segar.
rows[].spread_bps_minnumberbpSpread tersempit di antara baris segar.
rows[].included_exchangesarray—Sumber yang data segarnya disertakan.
rows[].included_exchanges[]string—Sumber yang data segarnya disertakan.
rows[].uses_aggregated_bucketsboolean—True jika baris yang disertakan memakai bucket agregat harga, sehingga jumlahnya menjadi batas bawah.
rows[].ranknumber—Posisi dalam peringkat; `null` jika baris tidak memiliki nilai untuk diperingkat.
coverageobject—Apa yang termasuk dan tidak termasuk dalam angka-angka ini. Bandingkan ini terlebih dahulu sebelum membandingkan total dengan sumber lain.
coverage.included_exchangesarray—Sumber yang data segarnya disertakan.
coverage.included_exchanges[]string—Sumber yang data segarnya disertakan.
coverage.unavailablearray—Sumber yang tidak dapat disertakan, masing-masing dengan alasannya. Sumber tersebut tidak pernah dihitung sebagai 0. kosong pada sampel yang dipakai untuk menghasilkan tabel ini
coverage.stale_excludedarray—Baris yang tidak dimasukkan karena pembaruan terakhirnya berada di luar jendela kesegaran.
coverage.stale_excluded[]object—Baris yang tidak dimasukkan karena pembaruan terakhirnya berada di luar jendela kesegaran.
coverage.stale_excluded[].exchangestring—ID bursa (huruf kecil).
coverage.stale_excluded[].age_snumbersJumlah detik sejak baris diterima.
coverage.n_fresh_rowsnumber—Baris segar di semua koin.
coverage.n_stale_rowsnumber—Baris usang di semua koin.
coverage.n_incomplete_rowsnumber—Baris segar yang snapshot-nya tidak menjangkau tepi rentang.
methodobject—Pernyataan teks biasa tentang rumus yang dipakai untuk respons ini, satu entri per kolom.
method.bid_depth_usdstring—Catatan rumus untuk `bid_depth_usd`, teks biasa.
method.ask_depth_usdstring—Catatan rumus untuk `ask_depth_usd`, teks biasa.
method.completestring—Catatan rumus untuk `complete`, teks biasa.
method.aggregatestring—Catatan rumus untuk `aggregate`, teks biasa.
method.freshstring—Catatan rumus untuk `fresh`, teks biasa.
method.rankstring—Catatan rumus untuk `rank`, teks biasa.
metaobject—Silsilah data dan kesegaran respons ini.
meta.schemastring—ID skema respons ini. ID hanya berubah jika kolom yang sudah ada berubah makna atau tipe.
meta.sourcearray—Endpoint publik hulu tempat data dikumpulkan.
meta.source[]object—Endpoint publik hulu tempat data dikumpulkan.
meta.source[].exchangestring—ID bursa (huruf kecil).
meta.source[].marketstring—`perp` atau `spot`.
meta.source[].endpointstring—Endpoint publik sumber yang dibaca kolektor (ditampilkan sebagai silsilah data; klien tidak pernah memanggilnya).
meta.observed_atnumbermsStempel waktu yang diberikan sumber untuk data tersebut.
meta.received_atnumbermsWaktu kolektor CoinBoss menerima data.
meta.fetched_atnumbermsWaktu respons ini disusun.
meta.windowstring—Jendela waktu yang dicakup angka-angka ini.
meta.qualitystring—FRESH, PARTIAL, STALE, BROKEN, atau UNAVAILABLE, dinilai dari stempel waktu data dan cakupan.
meta.is_staleboolean—True jika data lebih lama dari jendela kesegarannya.
meta.cache_ttl_snumbersMasa hidup cache respons ini.
meta.fallbackstring—Apa yang dikembalikan endpoint ketika kolektor atau sumber gagal.
meta.collector_heartbeat_age_snumbersJumlah detik sejak kolektor terakhir melaporkan bahwa ia berjalan.

Dihasilkan 2026-11-11 23:00 UTC dari 3 respons nyata.

Contoh respons

/api/sd/liquidity/rank · Respons nyata yang direkam 2026-11-13 04:02:46 UTC. Array dan map yang panjang dipersingkat untuk tampilan: rows berisi 50 item; meta.source berisi 23 item; coverage.stale_excluded berisi 23 item; rows[].included_exchanges berisi 19 item; coverage.included_exchanges berisi 23 item.

  • {
    • "success": true,
    • "schema": "coinboss.sd.liquidity/1",
    • "now": 1794542566023,
    • "market": "perp",
    • "band_pct": 1,
    • "limit": 50,
    • "total_coins": 89,
    • "rows": [
      • { … 12 },
      • { … 12 }
      ],
    • "coverage": {
      • "included_exchanges": [ … 8 ],
      • "unavailable": [],
      • "stale_excluded": [ … 2 ],
      • "n_fresh_rows": 1481,
      • "n_stale_rows": 82,
      • "n_incomplete_rows": 8
      },
    • "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…",
      • "aggregate": "per market and band: sum over rows that are fresh AND complete for that band; n_included / n_fresh is the denominator; lower_bound_* additionally adds the incom…",
      • "fresh": "a row is fresh when now - received_at <= max(3 * period_s, 300s); stale rows are listed in coverage.stale_excluded; rows older than 24h are dropped",
      • "rank": "coins ordered by bid_depth_usd + ask_depth_usd of the chosen market and band, aggregated as in aggregate; coins with no fresh complete row carry nulls and sort …"
      },
    • "meta": {
      • "schema": "coinboss.sd.liquidity/1",
      • "source": [ … 2 ],
      • "observed_at": 1794542565862,
      • "received_at": 1794542565977,
      • "fetched_at": 1794542566023,
      • "window": "latest",
      • "quality": "PARTIAL",
      • "is_stale": false,
      • "cache_ttl_s": 30,
      • "fallback": "stale rows (older than max(3 * period_s, 300s)) are left out; coins whose rows are all stale or incomplete keep their place in the list with null depth",
      • "collector_heartbeat_age_s": 4
      }
    }

Sampel terverifikasi

Selain contoh di atas, probe memanggil endpoint ini dengan parameter berikut dan memeriksa skemanya setiap kali.

ParameterHTTPLatensiHasil
market=spot2005 msLolos PARTIAL
band=0.5&limit=102007 msLolos PARTIAL
limit=04002 msLolos mengembalikan error yang diharapkan

Diperiksa 2026-11-13 03:58:06 UTC

Detail

Autentikasi
Tidak ada. Endpoint publik.
Batas permintaan
1200 permintaan per menit per IP
Cache server
30s
Mikro-cache edge
10s
Frekuensi pembaruan
Siklus pengumpulan yang sama dengan `/api/sd/liquidity`.
Jendela
Snapshot terbaru per kontrak.
Sumber data
Snapshot order book REST publik dari 24 bursa (pasar perpetual dan spot), dikumpulkan dan disimpan oleh CoinBoss (sd_book_latest, sd_book_hist). Kedalaman dan slippage dihitung oleh CoinBoss dari level harga mentah.
Cakupan bursa
24 bursa, 38 jalur bursa × pasar. Jika snapshot publik tidak menjangkau ±0.5 / 1 / 2 % dari harga tengah (batas level bursa), rentang tersebut ditandai `complete: false`, nilainya merupakan batas bawah, dan tidak dimasukkan ke agregat; `n_included` / `n_fresh` memberikan penyebutnya dan `excluded_incomplete` mencantumkan apa yang tidak dimasukkan.
Paginasi
Tanpa paginasi; `limit` membatasi jumlah baris (maks 200).
Pengurutan
`total_depth_usd`, menurun; koin tanpa satu pun baris yang lengkap dan segar ditempatkan di akhir dengan `rank: null`.
Satuan
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.
Stempel waktu
Milidetik epoch Unix (UTC) kecuali deskripsi kolom menyatakan lain
Format respons
json
Stabilitas
Stabil
Tersedia sejak
2026-11-11

Status langsung

SebagianDiperiksa 2026-11-13 04:02:46 UTCHTTP 2009 msSkema sesuaiTitik data terbaru berusia 0s

Endpoint melaporkan kualitas data PARTIAL

Ketersediaan, 30 hari terakhir

100% dari 408 pemeriksaan lolos

Error

Panggilan yang gagal memiliki satu bentuk yang sama di semua endpoint. Daftar lengkapnya ada di halaman error. Error dan batas permintaan →

KodeHTTPArtiTindakan
INVALID_PARAM400Parameter wajib tidak ada atau suatu nilai tidak diterima. `param` menyebutkan nama parameternya jika diketahui.Jangan mengulang tanpa perubahan; perbaiki permintaannya.
UNAUTHORIZED401Header `CB-API-KEY` dikirim tetapi kuncinya tidak dikenal atau sudah dicabut. Data publik tidak memerlukan kunci — hapus header tersebut atau gunakan kunci yang valid.Jangan mengulang tanpa perubahan.
FORBIDDEN403Rute ini bukan bagian dari API publik (internal atau khusus akun).Jangan mengulang.
NOT_FOUND404Rute tidak dikenal, atau koin / bursa / dana yang diminta tidak ada.Jangan mengulang; periksa path dan pengenal terhadap katalog.
RATE_LIMITED429Jumlah permintaan melebihi batas per menit. `Retry-After` memberikan jumlah detik untuk menunggu.Tunggu selama `Retry-After`, lalu ulangi dengan backoff.
INTERNAL500Error server yang tidak terduga. Pesannya sengaja dibuat generik; sertakan `request_id` saat melaporkannya.Ulangi sekali setelah beberapa detik; laporkan beserta ID permintaan jika masih terjadi.
UPSTREAM_FAILED503Sumber data di balik endpoint ini tidak menjawab tepat waktu. Tidak ada angka usang atau angka pengganti yang dikembalikan sebagai gantinya.Ulangi dengan backoff; periksa halaman status.
UNAVAILABLE501 / 503Dataset untuk sementara belum siap (cache sedang diisi) atau endpoint belum memiliki sumber publik yang sah.Ulangi nanti; katalog menandai endpoint yang memang tidak tersedia secara desain.
REQUEST_FAILED200Beberapa endpoint lama menjawab HTTP 200 dengan `success: false`. Selalu periksa `success`, bukan hanya status HTTP.Bergantung pada pesannya; perlakukan sebagai permintaan yang gagal.

Coba

GET/api/sd/liquidity/rankSebagian
Parameter

string · default perp — Market type. Perpetual and spot books are never added together.

string · default 1 — Distance from mid price in percent.

integer · default 50 · min 1 · maks 200 — Number of rows.

URL permintaanhttps://www.coinboss.com/api/sd/liquidity/rank
Pilih endpoint lalu tekan “Kirim permintaan”. Respons, header, dan waktu tempuhnya akan muncul di sini.