Le Runtime API Botillon permet à votre bot d’envoyer lui-même ses compteurs et son état. Le SDK officiel le fait pour vous : un seul objet à brancher, aucune dépendance obligatoire, aucune clé dans les logs.
Sans SDK, Botillon continue d’utiliser l’annuaire Discord v9. Dès qu’un bot utilise le SDK (ou le Runtime API), Botillon détecte l’en-tête SDK et utilise ses informations : nombre de serveurs réel, heartbeat, shards, commandes et profil.
Ce que le SDK envoie
- Le nombre de serveurs, toutes shards additionnées.
- Un heartbeat : le bot reste « En ligne » 15 minutes après le dernier signal.
- Le nombre de shards et le détail par shard.
- Les commandes slash globales et leurs options.
- Le nom, l’avatar et la bannière Discord.
Langages disponibles
| Langage | Installation | Auto-loop |
|---|---|---|
| JavaScript / TypeScript | npm / pnpm / yarn / bun | Oui |
| Python 3.9+ | pip / uv / poetry | Oui (thread) |
| Go 1.21+ | go get | Oui (Run) |
| Rust 2021 | cargo | Boucle fournie dans les exemples |
| C | header-only + libcurl | Boucle fournie dans les exemples |
| curl / tout langage | HTTP JSON | À votre charge |
Détection automatique
Le SDK ajoute les en-têtes User-Agent: BotillonSDK/<langue>/<version> et X-Botillon-SDK. Une clé utilisée avec curl reste supportée, mais elle est marquée « api » au lieu de « sdk ».
Démarrage en 30 secondes
- Créez la clé API du bot dans le dashboard.
- Installez le SDK de votre langage.
- Lancez le bot : le premier envoi part à la connexion.
const { Client, GatewayIntentBits } = require('discord.js');
const { BotillonClient } = require('@botillon/sdk');
const discord = new Client({ intents: [GatewayIntentBits.Guilds] });
const botillon = new BotillonClient({
token: process.env.BOTILLON_TOKEN,
discordClient: discord,
debug: true,
});
botillon.on('error', (error) => {
console.warn('Botillon [' + error.code + '] : ' + error.message);
});
discord.login(process.env.DISCORD_TOKEN);Pages suivantes : prérequis, installation, clé API, démarrage, options, méthodes, événements, envoi manuel, sharding, statut, commandes, profil, erreurs, limites et FAQ.