EXCALIA
— Développeurs —

API publique

Les endpoints listés ici sont accessibles sans authentification et renvoient du JSON. Tu peux les utiliser pour construire un outil tiers, un overlay stream, un bot Discord…

📋 Règles d'usage

  • Format : toutes les réponses sont en application/json. Encodage UTF-8.
  • CORS : ouvert (Access-Control-Allow-Origin: * sur la majorité des endpoints publics).
  • User-Agent : merci d'envoyer un User-Agent identifiant ton app (ex: monBotDiscord/1.0 (contact@…)). Facilite le debug si je dois te contacter.
  • ⚠️ Rate limits : sauf indication, vise max 60 req/min par IP. Au-delà : réponse 429 Too Many Requests avec header Retry-After.
  • ⚠️ Cache : les endpoints sont mis en cache côté Cloudflare (15-60s typique). Inutile de poll plus vite — tu auras la même réponse.
  • 🚫 Scraping abusif interdit : si tu spammes, ton IP sera bloquée définitivement. Si tu construis quelque chose qui demande plus de volume, contacte-moi.

🔌 Endpoints disponibles

Joueurs en ligne

Liste live des joueurs connectés sur les serveurs publics (lobby + skyblock), staff exclu, trié par grade DESC.

Rate limit

60 req/min par IP — cache CDN 15s

Exemple cURL

curl -s 'https://excalia.fr/api/online-players'

Réponse exemple

{
  "total": 206,
  "byServer": { "lobby": 30, "skyblock": 176 },
  "players": [
    {
      "uuid": "e8ac83e2-eaf2-4eb0-9c36-6d7d93d1b85f",
      "name": "_V11",
      "serverIds": ["lobby"],
      "grade": { "name": "MVP +", "color": "#4d3dc2", "sortOrder": 3 }
    }
  ]
}

Notes

  • Les joueurs sans grade ont `grade: null`.
  • Un joueur peut apparaître sur plusieurs serveurs si présent simultanément (cas rare).
🔗 Tester dans le navigateur →

💬 Questions ?

Si tu veux qu'une donnée soit exposée publiquement et qu'elle n'y est pas encore, ou si tu construis un outil qui demande plus de volume (rate limit étendu, webhook…), ouvre un ticket sur le Discord Excalia ou contacte un admin sur le site.