/api/oi/history
GETDisponibile

Storico dell'open interest aggregato di una moneta

Storico dell'open interest aggregato di una moneta

GET/api/oi/history

Richiesta

Parametri di query

NomeTipoObbligatorioPredefinitoValori ammessiDescrizione
basestringObbligatorio——Simbolo della moneta di base (in maiuscolo, ad es. BTC). Esempio: BTC
hoursintegerFacoltativo168≥ 1 · ≤ 2160Finestra retrospettiva in ore. Esempio: 168

Richiesta di esempio

curl -s "https://www.coinboss.com/api/oi/history?base=BTC&hours=168"

Campi della risposta

La tabella dei campi è generata da risposte reali, quindi elenca esattamente ciò che l'endpoint restituisce. I percorsi usano a[] per gli elementi di un array e {*} per gli oggetti indicizzati da un nome dinamico, come una moneta o un exchange.

CampoTipoUnitàDescrizione
successboolean—true quando la richiesta è riuscita. In caso di errore il corpo è `{ success: false, code, error, request_id }`.
basestring—Simbolo dell'asset di base.
hoursnumber—Valori orari o numero di ore.
exchangesarray—Exchange.
exchanges[]string—Exchange.
countnumber—Numero di elementi.
dataarray—Payload.
data[]object—Payload.
data[].hour_tsnumbermsInizio del bucket orario.
data[].total_usdnumberUSDTotale.
data[].byExchangeobject—Open interest per exchange in quell'istantanea oraria; le chiavi sono gli ID degli exchange, i valori sono USD sommati sui contratti della moneta su quell'exchange.
data[].byExchange.bitfinexnumber—Valore per l'exchange `bitfinex` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.edgexnumber—Valore per l'exchange `edgex` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.asternumber—Valore per l'exchange `aster` (la chiave è l'ID dell'exchange).
data[].byExchange.bingxnumber—Valore per l'exchange `bingx` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.kucoinnumber—Valore per l'exchange `kucoin` (la chiave è l'ID dell'exchange).
data[].byExchange.deribitnumber—Valore per l'exchange `deribit` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.okxnumber—Valore per l'exchange `okx` (la chiave è l'ID dell'exchange).
data[].byExchange.dydxnumber—Valore per l'exchange `dydx` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.hyperliquidnumber—Valore per l'exchange `hyperliquid` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.backpacknumber—Valore per l'exchange `backpack` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.bitgetnumber—Valore per l'exchange `bitget` (la chiave è l'ID dell'exchange).
data[].byExchange.htxnumber—Valore per l'exchange `htx` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.lighternumber—Valore per l'exchange `lighter` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.bybitnumber—Valore per l'exchange `bybit` (la chiave è l'ID dell'exchange).
data[].byExchange.binancenumber—Valore per l'exchange `binance` (la chiave è l'ID dell'exchange).
data[].byExchange.gatenumber—Valore per l'exchange `gate` (la chiave è l'ID dell'exchange).
data[].byExchange.mexcnumber—Valore per l'exchange `mexc` (la chiave è l'ID dell'exchange).
data[].byExchange.cryptocomnumber—Valore per l'exchange `cryptocom` (la chiave è l'ID dell'exchange).
data[].byExchange.krakennumber—Valore per l'exchange `kraken` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.paradexnumber—Valore per l'exchange `paradex` (la chiave è l'ID dell'exchange). può essere assente
data[].byExchange.whitebitnumber—Valore per l'exchange `whitebit` (la chiave è l'ID dell'exchange).
data[].byExchange.cmenumber—Valore per l'exchange `cme` (la chiave è l'ID dell'exchange). può essere assente

Generata 2026-11-11 23:00 UTC da 4 risposte reali.

Risposta di esempio

/api/oi/history?base=BTC&hours=168 · Risposta reale acquisita 2026-11-13 03:57:41 UTC. Array e mappe lunghi sono abbreviati per la visualizzazione: data conteneva 168 elementi; exchanges conteneva 22 elementi.

  • {
    • "success": true,
    • "base": "BTC",
    • "hours": 168,
    • "exchanges": [
      • "aster",
      • "backpack",
      • "binance",
      • "bingx",
      • "bitfinex",
      • "bitget",
      • "bybit",
      • "cme"
      ],
    • "count": 168,
    • "data": [
      • { … 3 },
      • { … 3 }
      ]
    }

Campioni verificati

Oltre all'esempio qui sopra, la sonda chiama questo endpoint con i parametri seguenti e ogni volta ne verifica lo schema.

ParametriHTTPLatenzaRisultato
base=ETH&hours=16820032 msSuperato
base=SOL&hours=16820032 msSuperato
base=ARKM&hours=16820034 msSuperato

Verificato 2026-11-13 03:57:41 UTC

Dettagli

Autenticazione
Nessuna. Endpoint pubblico.
Limite di richieste
1200 richieste al minuto per IP
Cache del server
5m
Micro-cache edge
10s
Frequenza di aggiornamento
archivio orario a ogni cambio d'ora UTC (istantanea della tabella dei valori più recenti); copia su ClickHouse sincronizzata ogni 5 min
Finestra
parametro hours, predefinito 168 h, intervallo 1..2160 h; punti orari
Fonti dei dati
Open interest interrogato dai collector interni sulle API REST pubbliche di 22 exchange di derivati (ad es. binance, okx, bybit, gate, bitget, hyperliquid), più il report giornaliero ufficiale di CME su volume e open interest.
Copertura degli exchange
exchange presenti nell'archivio orario per la moneta; dal 2026-11-11 vengono archiviate solo le righe aggiornate (OI 3 h, cme 120 h); il valore giornaliero di cme viene riportato in avanti di ora in ora
Unità
open interest in USD notional; hour_ts in Unix ms
Metodo
per hour and exchange: SUM(oi_usd) over all contract symbols of the coin; total_usd = sum over exchanges
Timestamp
Millisecondi dall'epoca Unix (UTC), salvo diversa indicazione nella descrizione del campo
Formato della risposta
json
Stabilità
Stabile

Stato in tempo reale

DisponibileVerificato 2026-11-13 03:57:41 UTCHTTP 20035 msSchema conformeDato più recente risalente a 58m fa

Disponibilità, ultimi 30 giorni

100% di 410 verifiche superate

Errori

Le chiamate non riuscite hanno la stessa struttura su tutti gli endpoint. L'elenco completo è nella pagina degli errori. Errori e limiti di richieste →

CodiceHTTPSignificatoChe cosa fare
INVALID_PARAM400Manca un parametro obbligatorio oppure un valore non è accettato. `param` indica il nome del parametro quando è noto.Non riprovare senza modifiche; correggere la richiesta.
UNAUTHORIZED401L'header `CB-API-KEY` è stato inviato ma la chiave è sconosciuta o revocata. I dati pubblici non richiedono alcuna chiave: rimuovere l'header o usare una chiave valida.Non riprovare senza modifiche.
FORBIDDEN403La route non fa parte dell'API pubblica (interna o riservata agli account).Non riprovare.
NOT_FOUND404Route sconosciuta, oppure la moneta / l'exchange / il fondo richiesto non esiste.Non riprovare; verificare il percorso e gli identificatori nel catalogo.
RATE_LIMITED429Più richieste del limite al minuto. `Retry-After` indica i secondi da attendere.Attendere `Retry-After`, poi riprovare con backoff.
INTERNAL500Errore imprevisto del server. Il messaggio è volutamente generico; citare `request_id` quando lo si segnala.Riprovare una volta dopo qualche secondo; se persiste, segnalarlo con l'ID della richiesta.
UPSTREAM_FAILED503La fonte di dati alla base di questo endpoint non ha risposto in tempo. Al suo posto non vengono restituiti numeri obsoleti o sostitutivi.Riprovare con backoff; controllare la pagina di stato.
UNAVAILABLE501 / 503Il dataset è temporaneamente non pronto (riscaldamento della cache) oppure l'endpoint non ha ancora una fonte pubblica lecita.Riprovare più tardi; il catalogo contrassegna gli endpoint non disponibili per scelta progettuale.
REQUEST_FAILED200Alcuni endpoint meno recenti rispondono HTTP 200 con `success: false`. Controllare sempre `success`, non solo lo stato HTTP.Dipende dal messaggio; trattare come una richiesta non riuscita.

Prova

GET/api/oi/historyDisponibile
Parametri

string — Base coin symbol (uppercase, e.g. BTC).

integer · predefinito 168 · min 1 · max 2160 — Look-back window in hours.

URL della richiestahttps://www.coinboss.com/api/oi/history?base=BTC&hours=168
Scegliere un endpoint e premere «Invia richiesta». La risposta, gli header e i tempi compariranno qui.