Vue d’ensemble
Une requête, une réponse déjà agrégée. Toutes les routes partagent la même forme, la même enveloppe et les mêmes paramètres transverses : ce qui est vrai d’une famille l’est des autres.
#La forme d’une requête
GET https://api.bytnode.com/v1/<family>/<metric>
?symbol=BTCUSDT # required on per-asset routes
&timeframe=1h # on bucketed routes
&limit=100 # on /history routes
&fields=timestamp,rate
X-API-KEY: your_keyLe chemin dit la famille et la métrique. Les paramètres disent l’actif, l’unité de temps et la profondeur. L’en-tête porte la clé. Il n’y a rien d’autre à savoir pour appeler n’importe quelle route.
Un seul endpoint échappe à cette forme : POST /v1/indicators, qui prend un corps JSON parce qu’il décrit un calcul, pas une lecture.
#Dernière valeur ou historique
La plupart des métriques existent en deux versions. La route nue renvoie la dernière valeur : un objet, ou null. Le suffixe /history renvoie une liste, de la plus récente à la plus ancienne.
# The latest value
GET /v1/basis?symbol=BTCUSDT
# The last 200, from newest to oldest
GET /v1/basis/history?symbol=BTCUSDT&limit=200
# A dated window, in milliseconds
GET /v1/basis/history?symbol=BTCUSDT&since_ms=1756425600000&until_ms=1756512000000#Paramètres communs
| Paramètre | Type | Défaut | Description |
|---|---|---|---|
symbol | string | obligatoire | L’actif, au format du catalogue (BTCUSDT). Absent : 422. Inconnu : 400 avec la liste. Les routes de tout le marché ne l’acceptent pas. |
timeframe | string | obligatoire | Sur les routes par intervalles : 1m, 5m, 15m, 30m, 1h, 4h, 1d. Hors liste : 422. |
limit | integer | 100 | Sur les routes /history. Plafond de 1000 en général, 500 sur le ratio long/short et les écarts entre places. |
since_ms / until_ms | integer | — | Fenêtre de temps en millisecondes Unix, là où la route l’accepte. Le filtre s’applique avant limit. |
live | boolean | false | Sur les routes de dernière valeur par intervalles : expose la période en cours, marquée is_closed: false. |
fields | string | — | Projection CSV de data, notation pointée pour les champs imbriqués. Champ inconnu : 422 avec une suggestion. |
Ce qui n’existe pas
Le paramètre exchange n’existe sur aucune route : les réponses sont agrégées et ne nomment pas leur place, à la seule exception des écarts entre places. Le passer renvoie 422.
#Les familles
Toutes les routes tiennent sur une page dans le catalogue des endpoints.