Premiers pas

Démarrage rapide : premier appel ou agent IA

Trois minutes, une clé et une requête. Cette page va de la création du compte à la lecture de la première réponse, puis montre comment récupérer plusieurs familles de données de marché en un seul appel. Pour confier les données à un agent IA, branchez-le sur le serveur MCP : aucun code à écrire.

#Obtenir une clé

Créez un compte : votre première clé est générée automatiquement et vous attend dans la console. L’offre gratuite ouvre quatre familles de données de marché (prix et volume, dérivés, indicateurs, macro) et 10 000 requêtes par mois : de quoi savoir en une soirée si les données vous conviennent.

La clé est affichée masquée dans la console : affichez-la ou copiez-la quand vous en avez besoin, puis gardez-la dans un gestionnaire de secrets ou une variable d’environnement. Si elle est compromise, un renouvellement la remplace.

Une seule clé pour tous les canaux : votre code appelle REST et le flux WebSocket avec elle, et le serveur MCP l’accepte pour vos agents IA, dans la même offre.

#Le premier appel

Le taux de funding composite de Bitcoin, agrégé sur toutes les places qui le publient et ramené à une base de huit heures.

export BYTNODE_API_KEY="your_key"

curl -H "X-API-KEY: $BYTNODE_API_KEY" \
  "https://api.bytnode.com/v1/funding/rate?symbol=BTCUSDT"

Seules deux choses sont obligatoires : l’en-tête X-API-KEY et le paramètre symbol. Il n’y a pas de symbole par défaut. Une requête sans symbole est refusée plutôt que servie avec Bitcoin, qui n’est pas forcément ce que vous vouliez.

#Lire la réponse

Réponse
{
  "status": "ok",
  "server_time": "2026-11-08T12:51:38.169Z",
  "data_type": "funding_rate",
  "symbol": "BTCUSDT",
  "market": "futures",
  "data": {
    "time": "2026-11-08T00:00:00.000Z",
    "period_end_at": "2026-11-08T08:00:00.000Z",
    "settled_at": "2026-11-08T08:00:00.009Z",
    "rate_pct": 0.00825097837214,
    "apr_pct": 9.0348213175,
    "is_closed": true
  }
}

Les clés de l’enveloppe

  • status : ok ou error.
  • server_time : l’instant où la réponse a été produite, en ISO 8601. Ce n’est pas l’heure de la donnée : la donnée porte son propre time.
  • data_type : le nom du type renvoyé. Il permet d’aiguiller une réponse sans dépendre du chemin appelé.
  • symbol, timeframe, market… : le rappel de la requête (ici market: "futures", le seul marché du funding), présents quand la route les a, pour qu’une réponse stockée se relise sans la requête qui l’a produite.
  • data : la charge utile, qui est un objet, une liste, ou null quand rien n’est disponible.

Ce que dit cette réponse en particulier

  • time ouvre la fenêtre de huit heures à laquelle le taux s’applique, alignée sur 00:00, 08:00 et 16:00 UTC ; period_end_at la ferme, et settled_at est le règlement qui l’a payée.
  • rate_pct est le taux de la fenêtre, en pourcentage ; apr_pct l’annualise (rate_pct × 1095 règlements de 8 heures par an).
  • time est l’unique clé de temps de chaque objet horodaté (ici le début de la fenêtre de funding), si bien qu’un client générique lit une seule clé ; is_closed: true dit que la valeur est définitive et ne changera pas.

#Plusieurs familles en une requête

Appeler dix endpoints pour remplir un tableau de bord est du gâchis : /v1/snapshot fait le travail en un aller-retour. Chaque paramètre est un nom de champ, sa valeur est la profondeur demandée : un nombre de lignes, ou 1 (ou true) pour la dernière valeur seule. Le snapshot est inclus à partir de l’offre Traders.

curl
Vingt-quatre bougies horaires, le funding, une heure de delta d’intérêt ouvert, deux heures de liquidations, le CVD horaire et le dernier ratio acheteur/vendeur.
curl -H "X-API-KEY: $BYTNODE_API_KEY" \
  "https://api.bytnode.com/v1/snapshot?symbol=BTCUSDT\
&klines@1h=24\
&funding_rate=1\
&oi_change=1\
&liquidations_cumulative=1\
&cvd@1h=24\
&buy_sell_ratio@1h=24"

Les champs multi-unités de temps se demandent avec le suffixe @tf (cvd@1h), et la clé revient telle quelle dans la réponse. Le détail des quarante-huit champs, avec la clé unavailable qui accompagne la réponse, est sur la page Snapshot.

Un agent IA obtient les mêmes champs en un appel MCP : l’outil get_pair_data sert les champs du snapshot d’une paire en une seule requête, ou de dix paires au plus, comparées côte à côte. Voir le serveur MCP.

#Et ensuite