/api/sd/basis
GETDégradéSTALE

Basis des futures (toutes plateformes)

Basis des perpétuels (mark vs index), basis perpétuel vs spot sur la même plateforme et basis des futures à échéance avec taux annualisé, par contrat, ainsi que les agrégats pondéré par l'OI, pondéré par le volume et médian.

GET/api/sd/basis
Dégradé. L'endpoint signale une qualité de données STALE

Requête

Paramètres de requête

NomTypeRequisPar défautValeurs autoriséesDescription
coinstringRequis——Symbole de la crypto, insensible à la casse (par exemple `BTC`). Une valeur absente ou mal formée renvoie 400. Exemple: BTC

Exemple de requête

curl -s "https://www.coinboss.com/api/sd/basis?coin=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 }`.
schemastring—Identifiant de schéma de cette réponse. Il ne change que lorsqu'un champ existant change de sens ou de type.
nownumbermsHeure du serveur au moment où la réponse a été construite.
coinstring—Symbole de la crypto (en majuscules).
perpobject—Basis des perpétuels : prix mark par rapport au prix d'indice de la même plateforme.
perp.unitstring—Unité des valeurs de basis (pourcentage).
perp.aggregateobject—Agrégat multi-plateformes de la section.
perp.aggregate.oi_weighted_pctnumber%Basis pondéré par les positions ouvertes ; les lignes sans pondération OI sont écartées.
perp.aggregate.oi_weight_usdnumberUSDSomme des pondérations de positions ouvertes utilisées.
perp.aggregate.n_oi_weightednumber—Lignes disposant d'une pondération OI.
perp.aggregate.vol_weighted_pctnumber%Basis pondéré par le volume notionnel 24h.
perp.aggregate.vol_weight_usdnumberUSDSomme des pondérations de volume utilisées.
perp.aggregate.n_vol_weightednumber—Lignes disposant d'une pondération de volume.
perp.aggregate.median_pctnumber%Basis médian calculé sur un contrat principal par plateforme.
perp.aggregate.mean_pctnumber%Moyenne simple sur le même ensemble que la médiane.
perp.aggregate.n_exchangesnumber—Plateformes incluses dans l'agrégat.
perp.aggregate.n_contractsnumber—Contrats inclus dans l'agrégat.
perp.aggregate.minobject—Plateforme et contrat affichant le basis le plus bas.
perp.aggregate.min.exchangestring—Identifiant de la plateforme (en minuscules).
perp.aggregate.min.symbolstring—Symbole du contrat dans la forme de stockage de CoinBoss.
perp.aggregate.min.basis_pctnumber%(mark − index) ÷ index × 100 pour les perpétuels et les futures à échéance ; dans les classements, la médiane multi-plateformes.
perp.aggregate.maxobject—Plateforme et contrat affichant le basis le plus élevé.
perp.aggregate.max.exchangestring—Identifiant de la plateforme (en minuscules).
perp.aggregate.max.symbolstring—Symbole du contrat dans la forme de stockage de CoinBoss.
perp.aggregate.max.basis_pctnumber%(mark − index) ÷ index × 100 pour les perpétuels et les futures à échéance ; dans les classements, la médiane multi-plateformes.
perp.aggregate.median_last_pctnumber%Médiane du basis sur dernier prix.
perp.aggregate.n_exchanges_lastnumber—Plateformes incluses dans la médiane sur dernier prix.
perp.aggregate.weightsobject—Origine des pondérations, leur fenêtre de fraîcheur et l'âge de la pondération la plus ancienne.
perp.aggregate.weights.oiobject—Positions ouvertes.
perp.aggregate.weights.oi.sourcestring—Endpoints publics amont auprès desquels les données ont été collectées.
perp.aggregate.weights.oi.fresh_window_snumbersUne pondération plus ancienne que cette durée n'est pas utilisée.
perp.aggregate.weights.oi.oldest_age_snumbersÂge de la pondération la plus ancienne utilisée.
perp.aggregate.weights.oi.sidestring—Indique si la pondération par les positions ouvertes est simple face.
perp.aggregate.weights.volobject—Volume.
perp.aggregate.weights.vol.sourcestring—Endpoints publics amont auprès desquels les données ont été collectées.
perp.aggregate.weights.vol.fresh_window_snumbersUne pondération plus ancienne que cette durée n'est pas utilisée.
perp.aggregate.weights.vol.oldest_age_snumbersÂge de la pondération la plus ancienne utilisée.
perp.contractsarray—Une ligne par contrat.
perp.contracts[]object—Une ligne par contrat.
perp.contracts[].exchangestring—Identifiant de la plateforme (en minuscules).
perp.contracts[].symbolstring—Symbole du contrat dans la forme de stockage de CoinBoss.
perp.contracts[].native_symbolstring—Symbole du contrat tel que l'écrit la plateforme.
perp.contracts[].quotestring—Devise de cotation du contrat.
perp.contracts[].margin_typestring—Type de marge du contrat (par exemple à marge USDT, à marge en crypto).
perp.contracts[].multipliernumber—Nombre de cryptos par unité cotée (1000 pour les contrats de type `1000PEPE`). Le basis n'est pas affecté.
perp.contracts[].mark_pricenumber|null—Prix mark publié par la plateforme.
perp.contracts[].index_pricenumber|null—Prix d'indice publié par la plateforme.
perp.contracts[].last_pricenumber|null—Dernier prix négocié.
perp.contracts[].index_kindstring|null—Nature de l'indice : `exchange_index`, `oracle`, ou un autre type affiché mais non agrégé.
perp.contracts[].basis_pctnumber|null%(mark − index) ÷ index × 100 pour les perpétuels et les futures à échéance ; dans les classements, la médiane multi-plateformes.
perp.contracts[].basis_absnumber|null—mark − index, dans la devise de cotation.
perp.contracts[].basis_last_pctnumber|null%(last − index) ÷ index × 100 ; `null` en l'absence de transaction récente.
perp.contracts[].basis_last_reasonstring|null—Raison pour laquelle `basis_last_pct` vaut null.
perp.contracts[].index_lag_snumber|nullsSecondes entre l'horodatage du prix mark et celui du prix d'indice de la ligne.
perp.contracts[].oi_usdnumber|nullUSDPositions ouvertes du contrat, simple face ; utilisées comme pondération.
perp.contracts[].vol_usd_24hnumber|nullUSDVolume notionnel 24h du contrat ; utilisé comme pondération.
perp.contracts[].primaryboolean—True pour le contrat qui représente sa plateforme dans la médiane et la moyenne.
perp.contracts[].in_aggregateboolean—True lorsque la ligne satisfait aux règles d'inclusion.
perp.contracts[].excluded_reasonstring|null—Raison pour laquelle la ligne n'est pas dans l'agrégat.
perp.contracts[].last_tsnumber|nullmsHeure de la dernière transaction.
perp.contracts[].observed_atnumber|nullmsHorodatage attribué aux données par la source.
perp.contracts[].received_atnumbermsMoment où le collecteur CoinBoss a reçu les données.
perp.contracts[].age_snumbersSecondes écoulées depuis la réception de la ligne.
spot_perpobject—Prix du perpétuel par rapport au prix spot de la même plateforme.
spot_perp.unitstring—Unité des valeurs de basis (pourcentage).
spot_perp.aggregateobject—Agrégat multi-plateformes de la section.
spot_perp.aggregate.oi_weighted_pctnumber%Basis pondéré par les positions ouvertes ; les lignes sans pondération OI sont écartées.
spot_perp.aggregate.oi_weight_usdnumberUSDSomme des pondérations de positions ouvertes utilisées.
spot_perp.aggregate.n_oi_weightednumber—Lignes disposant d'une pondération OI.
spot_perp.aggregate.vol_weighted_pctnumber%Basis pondéré par le volume notionnel 24h.
spot_perp.aggregate.vol_weight_usdnumberUSDSomme des pondérations de volume utilisées.
spot_perp.aggregate.n_vol_weightednumber—Lignes disposant d'une pondération de volume.
spot_perp.aggregate.median_pctnumber%Basis médian calculé sur un contrat principal par plateforme.
spot_perp.aggregate.mean_pctnumber%Moyenne simple sur le même ensemble que la médiane.
spot_perp.aggregate.n_exchangesnumber—Plateformes incluses dans l'agrégat.
spot_perp.aggregate.n_contractsnumber—Contrats inclus dans l'agrégat.
spot_perp.aggregate.minobject—Plateforme et contrat affichant le basis le plus bas.
spot_perp.aggregate.min.exchangestring—Identifiant de la plateforme (en minuscules).
spot_perp.aggregate.min.symbolstring—Symbole du contrat dans la forme de stockage de CoinBoss.
spot_perp.aggregate.min.basis_pctnumber%(mark − index) ÷ index × 100 pour les perpétuels et les futures à échéance ; dans les classements, la médiane multi-plateformes.
spot_perp.aggregate.maxobject—Plateforme et contrat affichant le basis le plus élevé.
spot_perp.aggregate.max.exchangestring—Identifiant de la plateforme (en minuscules).
spot_perp.aggregate.max.symbolstring—Symbole du contrat dans la forme de stockage de CoinBoss.
spot_perp.aggregate.max.basis_pctnumber%(mark − index) ÷ index × 100 pour les perpétuels et les futures à échéance ; dans les classements, la médiane multi-plateformes.
spot_perp.pairsarray—Une ligne par couple perpétuel / spot de la même plateforme.
spot_perp.pairs[]object—Une ligne par couple perpétuel / spot de la même plateforme.
spot_perp.pairs[].exchangestring—Identifiant de la plateforme (en minuscules).
spot_perp.pairs[].symbolstring—Symbole du contrat dans la forme de stockage de CoinBoss.
spot_perp.pairs[].spot_symbolstring—Marché spot utilisé comme jambe spot.
spot_perp.pairs[].quotestring—Devise de cotation du contrat.
spot_perp.pairs[].spot_multnumber—Facteur appliqué au prix spot pour que les deux jambes cotent la même quantité.
spot_perp.pairs[].futures_pricenumber|null—Prix du perpétuel utilisé ; voir `price_kind`.
spot_perp.pairs[].price_kindstring|null—Prix du perpétuel retenu : `last` ou `mark`.
spot_perp.pairs[].spot_pricenumber—Dernier prix spot, après application de `spot_mult`.
spot_perp.pairs[].basis_pctnumber|null%(mark − index) ÷ index × 100 pour les perpétuels et les futures à échéance ; dans les classements, la médiane multi-plateformes.
spot_perp.pairs[].basis_last_pctnumber|null%(last − index) ÷ index × 100 ; `null` en l'absence de transaction récente.
spot_perp.pairs[].basis_mark_pctnumber|null%(mark − spot) ÷ spot × 100.
spot_perp.pairs[].leg_gap_snumbersSecondes entre les horodatages des deux jambes.
spot_perp.pairs[].spot_time_kindstring—Nature de l'horodatage spot (heure de la transaction ou heure de réception).
spot_perp.pairs[].spot_vol_24hnumber|null—Volume d'échanges 24h du marché spot, dans sa devise de cotation.
spot_perp.pairs[].oi_usdnumber|nullUSDPositions ouvertes du contrat, simple face ; utilisées comme pondération.
spot_perp.pairs[].vol_usd_24hnumber|nullUSDVolume notionnel 24h du contrat ; utilisé comme pondération.
spot_perp.pairs[].primaryboolean—True pour le contrat qui représente sa plateforme dans la médiane et la moyenne.
spot_perp.pairs[].in_aggregateboolean—True lorsque la ligne satisfait aux règles d'inclusion.
spot_perp.pairs[].excluded_reasonstring|null—Raison pour laquelle la ligne n'est pas dans l'agrégat.
spot_perp.pairs[].received_atnumbermsMoment où le collecteur CoinBoss a reçu les données.
spot_perp.pairs[].spot_received_atnumbermsHeure de réception de la jambe spot.
deliveryobject—Basis des futures à échéance (datés).
delivery.unitstring—Unité des valeurs de basis (pourcentage).
delivery.contractsarray—Une ligne par contrat.
delivery.contracts[]object—Une ligne par contrat.
delivery.contracts[].exchangestring—Identifiant de la plateforme (en minuscules).
delivery.contracts[].symbolstring—Symbole du contrat dans la forme de stockage de CoinBoss.
delivery.contracts[].native_symbolstring—Symbole du contrat tel que l'écrit la plateforme.
delivery.contracts[].quotestring—Devise de cotation du contrat.
delivery.contracts[].margin_typestring—Type de marge du contrat (par exemple à marge USDT, à marge en crypto).
delivery.contracts[].expiry_tsnumbermsHeure d'échéance du contrat (futures à échéance).
delivery.contracts[].days_to_expirynumberdaysJours restants avant l'échéance.
delivery.contracts[].mark_pricenumber—Prix mark publié par la plateforme.
delivery.contracts[].last_pricenumber|null—Dernier prix négocié.
delivery.contracts[].index_pricenumber—Prix d'indice publié par la plateforme.
delivery.contracts[].index_kindstring—Nature de l'indice : `exchange_index`, `oracle`, ou un autre type affiché mais non agrégé.
delivery.contracts[].basis_pctnumber%(mark − index) ÷ index × 100 pour les perpétuels et les futures à échéance ; dans les classements, la médiane multi-plateformes.
delivery.contracts[].annualized_pctnumber|null% per yearbasis_pct × 365 ÷ jours avant l'échéance, intérêt simple ; `null` au cours du dernier jour.
delivery.contracts[].basis_reasonnull—Raison pour laquelle `basis_pct` vaut null.
delivery.contracts[].index_lag_snumbersSecondes entre l'horodatage du prix mark et celui du prix d'indice de la ligne.
delivery.contracts[].basis_last_pctnumber|null%(last − index) ÷ index × 100 ; `null` en l'absence de transaction récente.
delivery.contracts[].annualized_last_pctnumber|null% per yearBasis annualisé calculé à partir du dernier prix négocié.
delivery.contracts[].spot_symbolstring|null—Marché spot utilisé comme jambe spot.
delivery.contracts[].spot_pricenumber|null—Dernier prix spot, après application de `spot_mult`.
delivery.contracts[].spot_price_kindstring|null—Prix futures qui a été comparé au spot.
delivery.contracts[].basis_spot_pctnumber|null%(futures − spot de la même plateforme) ÷ spot × 100.
delivery.contracts[].annualized_spot_pctnumber|null% per yearBasis annualisé par rapport au spot de la même plateforme.
delivery.contracts[].annualized_reasonstring|null—Raison pour laquelle la valeur annualisée vaut null (par exemple `expiry_lt_1d`).
delivery.contracts[].oi_usdnumber|nullUSDPositions ouvertes du contrat, simple face ; utilisées comme pondération.
delivery.contracts[].vol_usd_24hnumber|nullUSDVolume notionnel 24h du contrat ; utilisé comme pondération.
delivery.contracts[].last_tsnumber|nullmsHeure de la dernière transaction.
delivery.contracts[].observed_atnumber|nullmsHorodatage attribué aux données par la source.
delivery.contracts[].received_atnumbermsMoment où le collecteur CoinBoss a reçu les données.
delivery.contracts[].age_snumbersSecondes écoulées depuis la réception de la ligne.
coverageobject—Ce qui est inclus ou non dans les chiffres. Comparez ces éléments avant de comparer les totaux avec une autre source.
coverage.included_exchangesarray—Sources dont les données à jour sont incluses.
coverage.included_exchanges[]string—Sources dont les données à jour sont incluses.
coverage.unavailablearray—Sources qui n'ont pas pu être incluses, chacune avec sa raison. Elles ne sont jamais comptées comme 0.
coverage.unavailable[]object—Sources qui n'ont pas pu être incluses, chacune avec sa raison. Elles ne sont jamais comptées comme 0.
coverage.unavailable[].exchangestring—Identifiant de la plateforme (en minuscules).
coverage.unavailable[].reasonstring—Code de raison lisible par machine.
coverage.unavailable[].detailstring—Explication de la raison, lisible par un humain.
coverage.stale_excludedarray—Lignes écartées parce que leur dernière mise à jour est hors de la fenêtre de fraîcheur. vide dans les échantillons ayant servi à générer ce tableau
coverage.missing_fieldsarray—Plateformes qui ne publient pas l'un des prix.
coverage.excluded_from_aggregatearray—Lignes affichées mais écartées de l'agrégat, chacune avec sa raison.
coverage.excluded_from_aggregate[]object—Lignes affichées mais écartées de l'agrégat, chacune avec sa raison.
coverage.excluded_from_aggregate[].exchangestring—Identifiant de la plateforme (en minuscules).
coverage.excluded_from_aggregate[].symbolstring—Symbole du contrat dans la forme de stockage de CoinBoss.
coverage.excluded_from_aggregate[].sectionstring—Section à laquelle appartient la ligne.
coverage.excluded_from_aggregate[].reasonstring—Code de raison lisible par machine.
coverage.stock_excludedarray—Perpétuels sur actions partageant le même ticker, qui ont été retirés. vide dans les échantillons ayant servi à générer ce tableau
coverage.dropped_delisted_rowsnumber—Lignes écartées parce que le contrat a cessé de se mettre à jour.
coverage.delivery_unavailablearray—Plateformes dont les contrats à échéance ne sont pas collectés.
coverage.delivery_unavailable[]object—Plateformes dont les contrats à échéance ne sont pas collectés.
coverage.delivery_unavailable[].exchangestring—Identifiant de la plateforme (en minuscules).
coverage.delivery_unavailable[].reasonstring—Code de raison lisible par machine.
coverage.delivery_unavailable[].detailstring—Explication de la raison, lisible par un humain.
methodobject—Énoncé en texte brut des formules utilisées pour cette réponse, une entrée par champ.
method.perp.basis_pctstring—Note de formule pour `perp.basis_pct`, en texte brut.
method.perp.basis_last_pctstring—Note de formule pour `perp.basis_last_pct`, en texte brut.
method.perp.aggregate.oi_weighted_pctstring—Note de formule pour `perp.aggregate.oi_weighted_pct`, en texte brut.
method.perp.aggregate.vol_weighted_pctstring—Note de formule pour `perp.aggregate.vol_weighted_pct`, en texte brut.
method.perp.aggregate.median_pctstring—Note de formule pour `perp.aggregate.median_pct`, en texte brut.
method.perp.aggregate.inclusionstring—Note de formule pour `perp.aggregate.inclusion`, en texte brut.
method.spot_perp.basis_pctstring—Note de formule pour `spot_perp.basis_pct`, en texte brut.
method.spot_perp.aggregate.inclusionstring—Note de formule pour `spot_perp.aggregate.inclusion`, en texte brut.
method.delivery.basis_pctstring—Note de formule pour `delivery.basis_pct`, en texte brut.
method.delivery.annualized_pctstring—Note de formule pour `delivery.annualized_pct`, en texte brut.
method.index_lag_sstring—Note de formule pour `index_lag_s`, en texte brut.
method.multiplierstring—Note de formule pour `multiplier`, en texte brut.
metaobject—Traçabilité et fraîcheur de cette réponse.
meta.schemastring—Identifiant de schéma de cette réponse. Il ne change que lorsqu'un champ existant change de sens ou de type.
meta.sourcearray—Endpoints publics amont auprès desquels les données ont été collectées.
meta.source[]object—Endpoints publics amont auprès desquels les données ont été collectées.
meta.source[].exchangestring—Identifiant de la plateforme (en minuscules).
meta.source[].endpointstring—Endpoint public de la source que lit le collecteur (indiqué pour la traçabilité ; les clients ne l'appellent jamais).
meta.observed_atnumbermsHorodatage attribué aux données par la source.
meta.received_atnumbermsMoment où le collecteur CoinBoss a reçu les données.
meta.fetched_atnumbermsMoment où cette réponse a été assemblée.
meta.windowstring—Fenêtre temporelle couverte par les chiffres.
meta.qualitystring—FRESH, PARTIAL, STALE, BROKEN ou UNAVAILABLE, d'après les horodatages des données et la couverture.
meta.is_staleboolean—True lorsque les données sont plus anciennes que leur fenêtre de fraîcheur.
meta.cache_ttl_snumbersDurée de vie en cache de cette réponse.
meta.fallbackstring—Ce que renvoie l'endpoint lorsque le collecteur ou une source est en échec.
meta.collector_heartbeat_age_snumbersSecondes écoulées depuis le dernier signal d'activité du collecteur.
coverage.missing_fields[]object—Plateformes qui ne publient pas l'un des prix.
coverage.missing_fields[].exchangestring—Identifiant de la plateforme (en minuscules).
coverage.missing_fields[].symbolstring—Symbole du contrat dans la forme de stockage de CoinBoss.
coverage.missing_fields[].missingstring—Prix que la plateforme ne publie pas (`mark` ou `index`).

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

Exemple de réponse

/api/sd/basis?coin=BTC · Réponse réelle (capture : 2026-11-13 03:58:07 UTC). Les tableaux et dictionnaires longs sont abrégés pour l'affichage : meta.source comptait 20 éléments; perp.contracts comptait 37 éléments; spot_perp.pairs comptait 22 éléments; delivery.contracts comptait 53 éléments; coverage.unavailable comptait 4 éléments; coverage.included_exchanges comptait 20 éléments.

  • {
    • "success": true,
    • "schema": "coinboss.sd.basis/1",
    • "now": 1794542287427,
    • "coin": "BTC",
    • "perp": {
      • "unit": "percent",
      • "aggregate": { … 15 },
      • "contracts": [ … 1 ]
      },
    • "spot_perp": {
      • "unit": "percent",
      • "aggregate": { … 12 },
      • "pairs": [ … 1 ]
      },
    • "delivery": {
      • "unit": "percent",
      • "contracts": [ … 1 ]
      },
    • "coverage": {
      • "included_exchanges": [ … 8 ],
      • "unavailable": [ … 1 ],
      • "stale_excluded": [],
      • "missing_fields": [],
      • "excluded_from_aggregate": [ … 1 ],
      • "stock_excluded": [],
      • "dropped_delisted_rows": 0,
      • "delivery_unavailable": [ … 1 ]
      },
    • "method": {
      • "perp.basis_pct": "(mark_price - index_price) / index_price * 100, percent; mark and index are both published by the same exchange for that…",
      • "perp.basis_last_pct": "(last_price - index_price) / index_price * 100; null when the exchange gives no last-trade price or the last trade is mo…",
      • "perp.aggregate.oi_weighted_pct": "sum(basis_pct * oi_usd) / sum(oi_usd) over all included perpetual contracts that have an open-interest weight; oi_usd fr…",
      • "perp.aggregate.vol_weighted_pct": "same with 24h notional volume (market_tickers.volume_usd / sd_contract_latest.vol_usd_24h, <= 1 h old) as weight",
      • "perp.aggregate.median_pct": "median of basis_pct over one primary contract per exchange (largest OI, then volume, then USDT-margined); mean_pct is th…",
      • "perp.aggregate.inclusion": "row is fresh (<= 180 s), basis_pct is not null, index_kind is exchange_index or oracle, the contract traded within 24 h …",
      • "spot_perp.basis_pct": "(perp last_price, or mark_price when last is unusable - spot last price * spot_mult) / (spot last price * spot_mult) * 1…",
      • "spot_perp.aggregate.inclusion": "as perp, plus spot 24h turnover >= 10000 (quote currency) when the exchange reports it",
      • "delivery.basis_pct": "(F - S) / S * 100 with F = mark_price and S = the exchange index price of the underlying; basis_last_pct uses F = last_p…",
      • "delivery.annualized_pct": "basis_pct * 365 / days_to_expiry, simple (not compounded); null when days_to_expiry < 1; days_to_expiry = (expiry_ts - p…",
      • "index_lag_s": "seconds between the mark timestamp and the index timestamp of the row; 0 when the exchange returns both in one response;…",
      • "multiplier": "contract units per coin (1000PEPE, kPEPE = 1000); mark and index carry the same multiplier so basis_pct is unaffected; s…"
      },
    • "meta": {
      • "schema": "coinboss.sd.basis/1",
      • "source": [ … 1 ],
      • "observed_at": 1794539247345,
      • "received_at": 1794539247425,
      • "fetched_at": 1794542287427,
      • "window": "latest",
      • "quality": "STALE",
      • "is_stale": true,
      • "cache_ttl_s": 20,
      • "fallback": "rows older than 180 s are excluded; if no exchange is fresh the last stored rows (<= 1 h old) are served with is_stale=t…",
      • "collector_heartbeat_age_s": 3090
      }
    }

Échantillons vérifiés

Outre l'exemple ci-dessus, la sonde appelle cet endpoint avec les paramètres suivants et vérifie le schéma à chaque fois.

ParamètresHTTPLatenceRésultat
coin=ETH20031 msRéussi STALE
coin=SOL20028 msRéussi STALE
coin=PEPE20032 msRéussi STALE
—4002 msRéussi renvoie l'erreur attendue

Vérifié : 2026-11-13 03:58:07 UTC

Détails

Authentification
Aucune. Endpoint public.
Limite de requêtes
1200 requêtes par minute et par IP
Cache serveur
20s
Micro-cache en périphérie
10s
Fréquence de mise à jour
Cycle de collecte toutes les 60 secondes ; une ligne reste à jour pendant 180 secondes. Des instantanés horaires alimentent l'historique.
Fenêtre
Dernière valeur par contrat.
Sources de données
Prix mark, prix d'indice et dernier prix publiés par 21 plateformes de dérivés, ainsi que le prix spot de la même plateforme, collectés et stockés par CoinBoss (sd_px_latest, sd_px_hourly).
Couverture des plateformes
21 plateformes. Les plateformes qui ne publient pas de prix d'indice ou de prix mark sont listées sous `coverage.unavailable` ; les lignes dont les deux jambes de prix sont espacées de plus de 60 secondes renvoient `null`. Les lignes écartées de l'agrégat sont listées sous `coverage.excluded_from_aggregate` avec la raison.
Pagination
Pas de pagination.
Tri
Contrats aux positions ouvertes les plus importantes en premier.
Unités
All basis values in percent. Prices in the quote currency of the contract (USDT / USDC / USD). `oi_usd` single-sided.
Méthode
Perpetual: basis_pct = (mark − index) ÷ index × 100. Spot-perp: (perpetual price − spot price) ÷ spot price × 100, same exchange and quote currency. Delivery: basis_pct = (futures − index) ÷ index × 100; annualized_pct = basis_pct × 365 ÷ days to expiry (simple interest; `null` inside the last day). Aggregates use one primary contract per exchange; a row enters only if it is fresh, traded within 24 hours and |basis| ≤ 10 %.
Horodatages
Millisecondes depuis l'epoch Unix (UTC), sauf indication contraire dans la description du champ
Format de réponse
json
Stabilité
Stable
Disponible depuis
2026-11-11

Statut en direct

DégradéVérifié : 2026-11-13 03:58:07 UTCHTTP 20046 msSchéma conformePoint de données le plus récent : il y a 51m

L'endpoint signale une qualité de données STALE

Disponibilité, 30 derniers jours

100 % des 407 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/sd/basisDégradé
Paramètres

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

URL de la requêtehttps://www.coinboss.com/api/sd/basis?coin=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.