/api/sd/etf/funds
GETParzialePARTIAL

Fondi ETF spot

Una riga per ogni fondo registrato di un asset: emittente, data di riferimento, asset detenuti, patrimonio netto, quote, NAV, prezzo di mercato, premio, commissione e flusso calcolato da CoinBoss, oppure il motivo per cui il fondo non può essere raccolto.

GET/api/sd/etf/funds
Copertura parziale. Copertura parziale: diversi grandi emittenti non offrono un'informativa pubblica leggibile dalla macchina che possa essere raccolta da un server. I loro fondi sono elencati come non disponibili e i totali coprono solo i fondi restanti. Confrontare `funds_covered` / `funds_total` prima di confrontare i totali con altre fonti.

Richiesta

Parametri di query

NomeTipoObbligatorioPredefinitoValori ammessiDescrizione
assetstringObbligatorio—BTC, ETH, SOL, HYPEAsset sottostante, senza distinzione tra maiuscole e minuscole. `coin` è accettato come alias. Esempio: BTC

Richiesta di esempio

curl -s "https://www.coinboss.com/api/sd/etf/funds?asset=BTC"

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 }`.
schemastring—ID dello schema di questa risposta. Cambia solo quando un campo esistente cambia significato o tipo.
nownumbermsOra del server al momento della composizione della risposta.
assetstring—Asset sottostante.
as_ofstring—Data di riferimento dell'emittente più recente tra i fondi coperti.
expected_as_ofstring—Giornata di negoziazione statunitense più recente il cui termine di pubblicazione è trascorso.
funds_totalnumber—Fondi registrati per l'asset.
funds_coverednumber—Fondi con dati dell'emittente aggiornati.
fundsarray—Una riga per fondo registrato, compresi i fondi che non possono essere raccolti.
funds[]object—Una riga per fondo registrato, compresi i fondi che non possono essere raccolti.
funds[].tickerstring—Ticker del fondo.
funds[].issuerstring—ID dell'emittente del fondo.
funds[].namestring—Nome del fondo.
funds[].statusstring—OK, STALE, ERROR o UNAVAILABLE.
funds[].as_of_datestring|null—Data di riferimento dell'emittente per la riga.
funds[].holdings_coinnumber|nullcoinMonete detenute, così come dichiarate dall'emittente.
funds[].holdings_usdnumber|nullUSDValore di mercato degli asset detenuti, così come dichiarato dall'emittente.
funds[].ref_pricenumber|nullUSDPrezzo di riferimento per moneta usato dall'emittente.
funds[].aum_usdnumber|nullUSDPatrimonio netto del fondo.
funds[].aum_srcstring|null—Come è stato ottenuto il patrimonio netto: `reported`, `nav_x_shares` o `holdings_mv_sum`.
funds[].shares_outnumber|nullsharesQuote in circolazione.
funds[].shares_srcstring|null—Come sono state ottenute le quote in circolazione: `reported` oppure ricavate da patrimonio netto e NAV.
funds[].navnumber|nullUSDValore patrimoniale netto per quota.
funds[].market_pricenumber|nullUSDPrezzo di mercato di chiusura per quota.
funds[].premium_pctnumber|null%Premio (+) o sconto (−) del prezzo di mercato rispetto al NAV, così come pubblicato dall'emittente.
funds[].fee_pctnumber|null%Commissione annua dello sponsor; `null` quando non è pubblicata.
funds[].flow_usdnumber|nullUSDCreazione / rimborso netto del fondo nella sua data di flusso. Metodo CoinBoss.
funds[].flow_sharesnumber|nullsharesVariazione delle quote in circolazione.
funds[].flow_coinnullcoinVariazione delle monete detenute; include il rateo delle commissioni pagato in moneta, solo a titolo informativo.
funds[].flow_methodstring|null—Formula usata: `shares_x_nav` o `aum_nav_ratio_t1`.
funds[].flow_as_ofstring|null—Data in cui viene contabilizzato il flusso.
funds[].flow_obs_datestring|null—Data di riferimento della più recente delle due righe usate.
funds[].flow_prev_datestring|null—Data di riferimento della più vecchia delle due righe usate.
funds[].flow_notestring|null—Motivo per cui il flusso è mancante o particolare (per esempio `no_previous_row`, `multi_day_gap`).
funds[].is_staleboolean|null—True quando i dati sono più vecchi della loro finestra di freschezza.
funds[].source_urlstring|null—Endpoint dell'emittente da cui è stata raccolta la riga (solo a scopo di provenienza).
funds[].observed_atnumber|nullmsTimestamp indicato dalla fonte per i dati.
funds[].received_atnumber|nullmsOra in cui il collector di CoinBoss ha ricevuto i dati.
funds[].unavailable_reasonstring|null—Codice del motivo quando il fondo non può essere raccolto.
funds[].unavailable_detailstring|null—Spiegazione quando il fondo non può essere raccolto.
coverageobject—Che cosa è incluso e che cosa non è incluso nei numeri. Confrontare questo dato prima di confrontare i totali con un'altra fonte.
coverage.included_exchangesarray—Fonti i cui dati aggiornati sono inclusi.
coverage.included_exchanges[]string—Fonti i cui dati aggiornati sono inclusi.
coverage.unavailablearray—Fonti che non è stato possibile includere, ciascuna con il motivo. Non vengono mai conteggiate come 0.
coverage.unavailable[]object—Fonti che non è stato possibile includere, ciascuna con il motivo. Non vengono mai conteggiate come 0.
coverage.unavailable[].exchangestring—ID dell'exchange (in minuscolo).
coverage.unavailable[].issuerstring—ID dell'emittente del fondo.
coverage.unavailable[].reasonstring—Codice del motivo leggibile dalla macchina.
coverage.unavailable[].detailstring—Spiegazione del motivo in linguaggio naturale.
coverage.stale_excludedarray—Righe escluse perché il loro ultimo aggiornamento è fuori dalla finestra di freschezza. vuoto nei campioni usati per generare questa tabella
methodobject—Enunciato in testo semplice delle formule usate per questa risposta, una voce per campo.
method.holdings_coin_totalstring—Nota sulla formula di `holdings_coin_total`, in testo semplice.
method.aum_usd_totalstring—Nota sulla formula di `aum_usd_total`, in testo semplice.
method.net_flow_usdstring—Nota sulla formula di `net_flow_usd`, in testo semplice.
method.net_flow_missingstring—Nota sulla formula di `net_flow_missing`, in testo semplice.
method.flow_coinstring—Nota sulla formula di `flow_coin`, in testo semplice.
method.premium_pctstring—Nota sulla formula di `premium_pct`, in testo semplice.
method.is_stalestring—Nota sulla formula di `is_stale`, in testo semplice.
method.unitsstring—Nota sulla formula di `units`, in testo semplice.
metaobject—Provenienza e freschezza di questa risposta.
meta.schemastring—ID dello schema di questa risposta. Cambia solo quando un campo esistente cambia significato o tipo.
meta.sourcearray—Endpoint pubblici a monte da cui sono stati raccolti i dati.
meta.source[]object—Endpoint pubblici a monte da cui sono stati raccolti i dati.
meta.source[].exchangestring—ID dell'exchange (in minuscolo).
meta.source[].endpointstring—Endpoint pubblico della fonte letto dal collector (mostrato a scopo di provenienza; i client non lo chiamano mai).
meta.observed_atnumbermsTimestamp indicato dalla fonte per i dati.
meta.received_atnumbermsOra in cui il collector di CoinBoss ha ricevuto i dati.
meta.fetched_atnumbermsOra in cui questa risposta è stata composta.
meta.windowstring—Finestra temporale coperta dai numeri.
meta.qualitystring—FRESH, PARTIAL, STALE, BROKEN o UNAVAILABLE, valutato dai timestamp dei dati e dalla copertura.
meta.is_staleboolean—True quando i dati sono più vecchi della loro finestra di freschezza.
meta.cache_ttl_snumbersDurata in cache di questa risposta.
meta.fallbackstring—Che cosa restituisce l'endpoint quando il collector o una fonte non funziona.

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

Risposta di esempio

/api/sd/etf/funds?asset=BTC · Risposta reale acquisita 2026-11-13 01:42:50 UTC. Array e mappe lunghi sono abbreviati per la visualizzazione: funds conteneva 12 elementi; meta.source conteneva 5 elementi; coverage.unavailable conteneva 7 elementi.

  • {
    • "success": true,
    • "schema": "coinboss.sd.etf/1",
    • "now": 1794533871901,
    • "asset": "BTC",
    • "as_of": "2026-11-11",
    • "expected_as_of": "2026-11-11",
    • "funds_total": 12,
    • "funds_covered": 5,
    • "funds": [
      • { … 30 },
      • { … 30 }
      ],
    • "coverage": {
      • "included_exchanges": [ … 5 ],
      • "unavailable": [ … 2 ],
      • "stale_excluded": []
      },
    • "method": {
      • "holdings_coin_total": "sum of issuer-reported coin holdings over covered (non-stale) funds only; NOT a whole-market total, see funds_covered/funds_total",
      • "aum_usd_total": "sum of fund net assets (USD) over covered funds; aum_src per fund: reported | nav_x_shares (NAV x shares outstanding) | holdings_mv_sum (sum of issuer holdings …",
      • "net_flow_usd": "own method, per fund between two consecutive issuer as-of rows: shares_x_nav = (shares_out[t] - shares_out[t-1]) x NAV[t], dated t; aum_nav_ratio_t1 (issuer pub…",
      • "net_flow_missing": "covered funds not included in net_flow_usd and why: no_previous_row (needs two consecutive issuer rows), t1_booking_available_next_trading_day (Franklin: flow o…",
      • "flow_coin": "holdings_coin[t] - holdings_coin[t-1]; includes daily sponsor-fee accrual paid in coin, informational only",
      • "premium_pct": "issuer-reported premium/discount to NAV in percent; null when the issuer does not publish it",
      • "is_stale": "fund as_of_date older than the trading day before expected_as_of (expected_as_of = latest NYSE trading day whose T+1 16:00 UTC publication deadline has passed)",
      • "units": "holdings in coins; aum/flow in USD; nav/market_price in USD per share; fee_pct/premium_pct in percent"
      },
    • "meta": {
      • "schema": "coinboss.sd.etf/1",
      • "source": [ … 2 ],
      • "observed_at": 1794355200000,
      • "received_at": 1794501317131,
      • "fetched_at": 1794533871901,
      • "window": "latest",
      • "quality": "PARTIAL",
      • "is_stale": false,
      • "cache_ttl_s": 300,
      • "fallback": "collector failure keeps the last issuer row with its real as_of_date; a fund whose as_of_date is more than 1 trading day behind the expected as-of is flagged is…"
      }
    }

Campioni verificati

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

ParametriHTTPLatenzaRisultato
asset=ETH2003 msSuperato PARTIAL
asset=HYPE2003 msSuperato PARTIAL
asset=DOGE4001 msSuperato restituisce l'errore previsto

Verificato 2026-11-13 01:28:13 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
Tre cicli del collector al giorno (02:35, 10:35, 16:35 UTC). Gli emittenti pubblicano una volta per giornata di negoziazione statunitense, di solito la sera della data di negoziazione.
Finestra
Ultima data di riferimento dell'emittente per fondo.
Fonti dei dati
Informative giornaliere pubblicate direttamente dagli emittenti dei fondi (asset detenuti, patrimonio netto, quote in circolazione, NAV), raccolte e archiviate da CoinBoss (sd_etf_fund_daily). Il flusso netto è calcolato da CoinBoss a partire da tali informative.
Copertura degli exchange
Sono coperti solo i fondi il cui emittente pubblica dati giornalieri leggibili dalla macchina. `funds_total` e `funds_covered` indicano quanti sono; ogni fondo non coperto è elencato in `coverage.unavailable` con il motivo. I totali sono somme sui soli fondi coperti (`totals_scope = "covered_funds_only"`), non sull'intero mercato.
Paginazione
Nessuna paginazione; vengono restituiti tutti i fondi registrati per l'asset.
Ordinamento
Ticker crescente.
Unità
Amounts in USD; holdings in units of the underlying coin; NAV and market price in USD per share; `premium_pct` and `fee_pct` in percent.
Metodo
`aum_src` tells how net assets were obtained: `reported`, `nav_x_shares` (NAV × shares outstanding) or `holdings_mv_sum` (sum of the issuer's holdings market values). `flow_method` tells which flow formula was used.
Timestamp
Millisecondi dall'epoca Unix (UTC), salvo diversa indicazione nella descrizione del campo
Formato della risposta
json
Stabilità
Stabile
Disponibile dal
2026-11-11

Stato in tempo reale

ParzialeVerificato 2026-11-13 01:37:51 UTCHTTP 2004 msSchema conformeDato più recente risalente a 9h fa

L'endpoint segnala una qualità dei dati PARTIAL — Copertura parziale: diversi grandi emittenti non offrono un'informativa pubblica leggibile dalla macchina che possa essere raccolta da un server. I loro fondi sono elencati come non disponibili e i totali coprono solo i fondi restanti. Confrontare `funds_covered` / `funds_total` prima di confrontare i totali con altre fonti.

Disponibilità, ultimi 30 giorni

100% di 380 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/sd/etf/fundsParziale
Parametri

string — Underlying asset, case-insensitive. `coin` is accepted as an alias.

URL della richiestahttps://www.coinboss.com/api/sd/etf/funds?asset=BTC
Scegliere un endpoint e premere «Invia richiesta». La risposta, gli header e i tempi compariranno qui.