Changelog
Chaque changement apporté à la Data API et à son contrat, du plus récent au plus ancien. Les numéros de version suivent la politique de versionnement et de dépréciation.
/mcp accepte désormais aussi la clé MCP dans un en-tête X-API-Key: YOUR_API_KEY, pour les clients et les passerelles qui, comme Smithery, réservent l'en-tête Authorization à leur propre connexion. Authorization: Bearer continue de fonctionner et reste la méthode par défaut documentée ; lorsque les deux en-têtes sont envoyés, c'est la clé transmise dans X-API-Key qui est vérifiée. La Data API sur /api/v1 n'accepte toujours que des clés Bearer. Les échecs d'authentification sont maintenant limités par clé ainsi que par IP, si bien que la clé invalide d'un client ne bloque plus les autres clients situés derrière la même adresse IP.
GET /calculators/compound-interest arrondissait la durée à un nombre entier de périodes de capitalisation, si bien qu'une durée se terminant en cours de période était simulée trop longue ou trop courte : 6 mois avec une capitalisation annually couvraient une année entière (12 versements et une année complète d'intérêts), et 5 mois ne couvraient aucune période (ni versements, ni intérêts). Les périodes entières se déroulent désormais comme avant, la dernière période partielle produit des intérêts au prorata (intérêts simples sur la fraction) et chaque versement compris dans la durée est compté. Les résultats sont inchangés lorsque la durée correspond à un nombre entier de périodes de capitalisation ; les paramètres et les champs de réponse sont inchangés.
L’API et sa documentation traitaient rate comme le taux par période de capitalisation, alors que le calculateur du site et son guide utilisaient un taux annuel. GET /calculators/compound-interest appliquait rate en entier à chaque période de capitalisation : 5 % capitalisés mensuellement croissaient comme 5 % par mois. rate est désormais le taux nominal annuel : chaque période rapporte rate divisé par le nombre de périodes par an (5 % capitalisés mensuellement rapportent 5/12 % par mois), comme l'indique désormais meta.note. Les paramètres et les champs de la réponse ne changent pas ; les résultats changent pour toutes les fréquences de capitalisation sauf annually. Par ailleurs, lorsque contribution_frequency et compound_frequency valent toutes deux daily ou toutes deux weekly, les dépôts ne sont plus retardés ni perdus à cause des arrondis en virgule flottante : total_contributions peut donc compter un dépôt de plus avec duration_unit=months. Cela change la signification d'un paramètre existant : pour reproduire les résultats précédents, multipliez votre rate par le nombre de périodes de capitalisation par an.
Chaque lecture Fear & Greed contient désormais index à côté de score : l'indice Fear & Greed de 0 à 100 exactement tel qu'affiché sur Bitculator (0–19 peur extrême, 20–39 peur, 40–59 neutre, 60–79 avidité, 80–100 avidité extrême) — utilisez-le pour l'affichage. score est inchangé : le composite brut de −100…+100 dont index est dérivé. Concerne GET /sentiment/fear-greed (la lecture principale et chaque entrée de intervals), fear_greed sur GET /global et meta.fear_greed sur GET /global/heatmap. Ajout uniquement ; aucun champ existant n'est modifié.
GET /coins/{slug} renvoyait fully_diluted_valuation à 0 pour les cryptos sans offre maximale (par exemple Solana et Ethereum, dont l'offre n'est pas plafonnée). Elle se rabat désormais sur l'offre totale et vaut null lorsqu'aucune n'est connue, comme le contrat OpenAPI le documentait déjà.
marketcap et dominance peuvent valoir null pour une crypto sans offre en circulation, et le score et la breakdown du trust score valent null pour un exchange non classé. POST /alarms renvoie 422 lorsque la crypto n'a pas de valeur actuelle pour la métrique choisie. /coins/recently-added et /wallets/timeline respectent désormais sort. /coins/gainers et /coins/losers sont triés selon la variation elle-même (auparavant, de fait, selon la capitalisation boursière), et les losers excluent les cryptos à 0.00. Les tris ascendants renvoient les valeurs nulles en dernier. /prices résout un symbole ambigu vers le coin actif le mieux classé. Le contrat OpenAPI signale les champs de marché pouvant être nuls et type le volume 24h comme un nombre.
Le contrat publié porte désormais des exemples au niveau du type de média, un schéma d'erreur commun référencé depuis chaque réponse 4xx/5xx, les réponses 401, 429 et 500 que tout appel à clé peut renvoyer, les en-têtes X-RateLimit-* et X-Quota-* sur chaque réponse réussie, la livraison alarm.triggered en tant que callback de POST /webhooks, ainsi que les métadonnées de contact, de licence et de conditions. Aucune requête ni réponse n'a changé - seulement la façon dont elles sont décrites.
Nouveau : /apis.json, /.well-known/api-catalog (RFC 9727), /.well-known/security.txt (RFC 9116), un bundle JSON Schema des formes de réponse communes, une page de statut publique avec son jumeau JSON, ce changelog, et la politique de versionnement et de dépréciation.
Le serveur MCP est passé à ses propres clés et forfaits, créés dans la console MCP. Les clés Data API ne sont plus acceptées sur /mcp ; chaque appel d'outil coûte toujours une requête.
Le serveur MCP de Bitculator est en ligne sur /mcp : 19 outils en lecture seule via Streamable HTTP pour Claude, Cursor, VS Code et tout client MCP, renvoyant les mêmes données en chaînes décimales que l'API REST.
Des clients TypeScript, Python, PHP, Go, Rust, Java, C# et C++, chacun couvrant tous les endpoints sur le même cœur de transport : auth Bearer, déballage de l'enveloppe, capture des X-Quota-*, nouvelles tentatives sur 429 et 5xx, erreurs typées et pagination.
Certains endpoints et les fenêtres d'indicateurs plus longues nécessitent désormais Starter ou Pro. Un appel hors de votre forfait renvoie 403 plan_required avec details.required_plan indiquant le forfait qui le débloque, et ne consomme pas de quota.
Lancement : 85 opérations réparties en 15 groupes - coins, prix, marchés, exchanges, wallets, global, sentiment, indicateurs, liquidations, conversion, calculateurs, éditorial, alarmes, webhooks et meta. Clés Bearer dotées de l'aptitude data-api, enveloppe { data, meta }, précision en chaînes décimales, en-têtes X-Quota-*, webhooks signés, et forfaits Free, Starter et Pro avec chacun leur quota mensuel.
Les dépréciations sont annoncées ici et par e-mail à chaque titulaire de clé au moins six mois avant la suppression - voir la politique de dépréciation. L'index lisible par machine sur /apis.json porte la date de l'entrée la plus récente comme horodatage modified.