/api/etf/funds
GETPartiel

Liste des fonds ETF

Liste des fonds ETF (ticker, émetteur, AUM, frais, ...)

GET/api/etf/funds
Couverture partielle. Les flux et les avoirs sont mis à jour quotidiennement. `fee_pct`, `volume_usd`, `mkt_share_pct` et `cum_inflow_official` proviennent d'une source qui a cessé de publier le 2026-10-08 et conservent leur dernière valeur jusqu'à la mise en service d'une source de remplacement ; ne considérez pas ces quatre champs comme à jour. `latest_premium_pct` vaut `null` pour la même raison. L'objet `frozen_fields` de la réponse nomme ces champs avec la date à laquelle se rapporte chaque valeur.

Requête

Paramètres de requête

NomTypeRequisPar défautValeurs autoriséesDescription
assetstringOptionnelBTCBTC, ETH, SOL, HYPEActif sous-jacent. Toute autre valeur renvoie 400 `INVALID_PARAM`. Exemple: BTC

Exemple de requête

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

Champs de la réponse

Le tableau des champs est généré à partir de réponses réelles : il liste donc exactement ce que renvoie l'endpoint. Les chemins utilisent a[] pour les éléments d'un tableau et {*} pour les objets indexés par un nom dynamique, comme une crypto ou une plateforme.

ChampTypeUnitéDescription
successboolean—true lorsque la requête a abouti. En cas d'échec, le corps est `{ success: false, code, error, request_id }`.
assetstring—Symbole de l'actif.
unitstring—Unité des valeurs de cet objet.
countnumber—Nombre d'éléments.
fundsarray—Tous les fonds ETF spot de l'actif, triés par `latest_aum` décroissant.
funds[]object—Un fonds avec son dernier flux, son AUM et ses attributs instantanés.
funds[].tickerstring—Ticker du fonds.
funds[].issuerstring—Émetteur du fonds.
funds[].latest_datestring—Jour de bourse le plus récent (YYYY-MM-DD) disposant de données de flux pour le fonds ; null lorsque le fonds n'a aucune ligne.
funds[].latest_flownumbermillion USDFlux net du fonds à la date `latest_date` ; négatif = flux net sortant.
funds[].sum_7dnumber—Somme sur 7 jours.
funds[].cum_totalnumber—Total cumulé.
funds[].latest_aumnumbermillion USDActifs sous gestion du fonds à la date `latest_date` ; null lorsqu'ils ne sont pas disponibles pour ce jour.
funds[].latest_premium_pctnumber|null%Prime (+) ou décote (−) du cours de marché du fonds par rapport à sa valeur liquidative à la date `latest_date` ; null lorsqu'elle n'est pas disponible pour ce jour.
funds[].sourcestring—Provenance de la valeur.
funds[].fee_pctnumber%Frais de gestion annuels du fonds en pourcentage (0.25 = 0,25 % par an) ; dernière valeur connue, voir `frozen_fields` pour sa date.
funds[].volume_usdnumberUSDVolume en notionnel USD.
funds[].mkt_share_pctnumber%AUM du fonds en pourcentage de la capitalisation totale de la crypto sous-jacente (et non sa part parmi les ETF) ; dernière valeur connue, voir `frozen_fields`.
funds[].cum_inflow_officialnumbermillion USDFlux net entrant cumulé depuis le lancement, tel que publié par une source tierce ; dernière valeur connue, voir `frozen_fields` pour sa date.
funds[].etf_share_pctnumber%`latest_aum` du fonds en pourcentage de la somme des `latest_aum` de tous les fonds du même actif.
frozen_fieldsobject—Champs dont la source a cessé de se mettre à jour ; ils portent la dernière valeur connue et ne doivent pas être lus comme des valeurs à jour. `null` lorsque rien n'est figé.
frozen_fields.fieldsarray—Noms des champs figés.
frozen_fields.fields[]string—Nom du champ.
frozen_fields.as_ofstring—Date de la dernière mise à jour des champs figés (YYYY-MM-DD).
frozen_fields.latest_datestring—Date la plus récente des champs encore mis à jour (YYYY-MM-DD).
frozen_fields.detailarray—Détail.
frozen_fields.detail[]object—Détail.
frozen_fields.detail[].fieldstring—Nom du champ figé.
frozen_fields.detail[].as_ofstring—Date de la dernière mise à jour de ce champ (YYYY-MM-DD).
frozen_fields.detail[].servedstring—Ce que l'API renvoie pour ce champ : `last_known_value` ou `null`.
frozen_fields.by_tickerobject—Par fonds : date de la dernière mise à jour de chaque champ figé. clés dynamiques: IBIT,FBTC,GBTC,BTC,BITB,ARKB
frozen_fields.by_ticker.{*}object—Champs figés d'un fonds, indexés par nom de champ.
frozen_fields.by_ticker.{*}.fee_pctstring%Date de la dernière mise à jour de `fee_pct` (YYYY-MM-DD).
frozen_fields.by_ticker.{*}.volume_usdstringUSDVolume en notionnel USD.
frozen_fields.by_ticker.{*}.mkt_share_pctstring%Date de la dernière mise à jour de `mkt_share_pct` (YYYY-MM-DD).
frozen_fields.by_ticker.{*}.cum_inflow_officialstring—Date de la dernière mise à jour de `cum_inflow_official` (YYYY-MM-DD).
frozen_fields.by_ticker.{*}.latest_premium_pctstring%Date de la dernière mise à jour de `latest_premium_pct` (YYYY-MM-DD).
frozen_fields.notestring—Remarque.

Généré à partir de 1 réponses réelles (2026-11-11 23:00 UTC).

Exemple de réponse

/api/etf/funds?asset=BTC · Réponse réelle (capture : 2026-11-13 03:58:19 UTC). Les tableaux et dictionnaires longs sont abrégés pour l'affichage : funds comptait 13 éléments; frozen_fields.detail comptait 5 éléments; frozen_fields.by_ticker comptait 13 éléments.

  • {
    • "success": true,
    • "asset": "BTC",
    • "unit": "million_usd",
    • "count": 13,
    • "funds": [
      • { … 14 },
      • { … 14 }
      ],
    • "frozen_fields": {
      • "fields": [ … 5 ],
      • "as_of": "2026-10-08",
      • "latest_date": "2026-11-12",
      • "detail": [ … 2 ],
      • "by_ticker": { … 2 },
      • "note": "fields 所列字段的数据源自 as_of 之后未再更新:served=last_known_value 的字段返回的是 as_of 当日的最后已知值(不是 latest_date 的值);served=null 的字段在 latest_date 无数据、返回 null。其余字段(latest_flow/sum_7d…"
      }
    }

Détails

Authentification
Aucune. Endpoint public.
Limite de requêtes
1200 requêtes par minute et par IP
Cache serveur
5m
Micro-cache en périphérie
10s
Fréquence de mise à jour
toutes les heures (minute 15) ; la source publie une fois par jour de bourse américain
Fenêtre
dernier instantané par fonds (flux additionnés sur 7 jours de bourse et depuis la cotation)
Sources de données
Liste par fonds des ETF crypto spot américains : flux issus d'un site public de suivi des flux d'ETF, AUM issus d'un site public de données de marché.
Couverture des plateformes
Tous les fonds de l'actif sélectionné (BTC, ETH, SOL, HYPE).
Tri
dernier AUM décroissant
Unités
million USD (flows, AUM); percent (premium, fee, shares)
Méthode
cum_total = sum of daily flows; etf_share_pct = fund AUM / sum of AUM of all funds of the same asset x 100.
Horodatages
Millisecondes depuis l'epoch Unix (UTC), sauf indication contraire dans la description du champ
Format de réponse
json
Stabilité
Stable

Statut en direct

PartielVérifié : 2026-11-13 03:58:19 UTCHTTP 2001 msSchéma conformePoint de données le plus récent : il y a 28h

Les flux et les avoirs sont mis à jour quotidiennement. `fee_pct`, `volume_usd`, `mkt_share_pct` et `cum_inflow_official` proviennent d'une source qui a cessé de publier le 2026-10-08 et conservent leur dernière valeur jusqu'à la mise en service d'une source de remplacement ; ne considérez pas ces quatre champs comme à jour. `latest_premium_pct` vaut `null` pour la même raison. L'objet `frozen_fields` de la réponse nomme ces champs avec la date à laquelle se rapporte chaque valeur.

Disponibilité, 30 derniers jours

100 % des 410 contrôles réussis

Erreurs

Les appels en échec ont la même structure sur tous les endpoints. La liste complète figure sur la page des erreurs. Erreurs et limites de requêtes →

CodeHTTPSignificationQue faire
INVALID_PARAM400Un paramètre requis est manquant ou une valeur n'est pas acceptée. `param` indique le nom du paramètre lorsqu'il est connu.Ne réessayez pas à l'identique ; corrigez la requête.
UNAUTHORIZED401L'en-tête `CB-API-KEY` a été envoyé, mais la clé est inconnue ou révoquée. Les données publiques ne nécessitent aucune clé — supprimez l'en-tête ou utilisez une clé valide.Ne réessayez pas à l'identique.
FORBIDDEN403La route ne fait pas partie de l'API publique (interne ou réservée aux comptes).Ne réessayez pas.
NOT_FOUND404Route inconnue, ou la crypto / la plateforme / le fonds demandé n'existe pas.Ne réessayez pas ; vérifiez le chemin et les identifiants dans le catalogue.
RATE_LIMITED429Plus de requêtes que la limite par minute. `Retry-After` indique le nombre de secondes à attendre.Attendez la durée indiquée par `Retry-After`, puis réessayez avec backoff.
INTERNAL500Erreur serveur inattendue. Le message est volontairement générique ; citez `request_id` lorsque vous la signalez.Réessayez une fois après quelques secondes ; si l'erreur persiste, signalez-la avec l'ID de requête.
UPSTREAM_FAILED503La source de données derrière cet endpoint n'a pas répondu à temps. Aucun chiffre périmé ni de substitution n'est renvoyé à sa place.Réessayez avec backoff ; consultez la page de statut.
UNAVAILABLE501 / 503Le jeu de données n'est temporairement pas prêt (préchauffage du cache) ou l'endpoint n'a pas encore de source publique licite.Réessayez plus tard ; le catalogue signale les endpoints indisponibles par conception.
REQUEST_FAILED200Certains endpoints plus anciens répondent HTTP 200 avec `success: false`. Vérifiez toujours `success`, et pas seulement le statut HTTP.Dépend du message ; à traiter comme une requête en échec.

Essayer

GET/api/etf/fundsPartiel
Paramètres

string · défaut BTC — Underlying asset. Any other value returns 400 `INVALID_PARAM`.

URL de la requêtehttps://www.coinboss.com/api/etf/funds?asset=BTC
Choisissez un endpoint et cliquez sur « Envoyer la requête ». La réponse, les en-têtes et le temps de réponse s'afficheront ici.