API

ArcadiaConnect

Permettez aux joueurs d'Arcadia de se connecter à votre site avec Steam. Notre API lie leur SteamID à leur identité RP (prénom, nom, photo) issue de notre base officielle.

Comment ça marche

1
Obtenir une clé API
Connectez-vous via Steam ci-dessous. Si votre SteamID est dans la base Arcadia, une clé ac_xxx vous est délivrée immédiatement.
2
Intégrer le flux OAuth
Redirigez vos visiteurs vers /arcadiaconnect/auth?api_key=...&redirect_uri=... et récupérez les données dans votre callback.
3
Utiliser les données RP
Votre callback reçoit : steam_id, rp_name, steam_avatar, steam_profile_url + signature HMAC pour vérifier l'authenticité.

Obtenir ma clé API
Réservé aux joueurs présents dans la base Arcadia. Connexion via Steam requise.
Se connecter avec Steam

Endpoints

MéthodeRoute
GET/arcadiaconnect/auth
GET/api/arcadia/player
POST/api/arcadia/players/batch
GET/api/arcadia/key/info
GET/api/arcadia/stats
Base URL : https://bon.hinoake.xyz · Rate limit : 300 req/h par clé

Réponse type — GET /api/arcadia/player

{
  "found": true,
  "steam_id": "76561198450409644",
  "rp_name": "Aaron DUBOIS",
  "rp_first_name": "Aaron",
  "rp_last_name": "DUBOIS",
  "steam_name": "Aaron_D",
  "steam_avatar": "https://avatars.steamstatic.com/abc123_full.jpg",
  "steam_profile_url": "https://steamcommunity.com/profiles/76561198450409644/"
}

Exemples

cURL
curl -H "X-Api-Key: ac_votreclé" \
  "https://bon.hinoake.xyz/api/arcadia/player?steam_id=76561198450409644"
JavaScript (fetch)
const res = await fetch(
  "https://bon.hinoake.xyz/api/arcadia/player?steam_id=76561198450409644",
  { headers: { "X-Api-Key": "ac_votreclé" } }
);
const { rp_name, rp_first_name, steam_avatar } = await res.json();
console.log(rp_name); // "Aaron DUBOIS"
Python (requests)
import requests

r = requests.get(
    "https://bon.hinoake.xyz/api/arcadia/player",
    params={"steam_id": "76561198450409644"},
    headers={"X-Api-Key": "ac_votreclé"}
)
print(r.json()["rp_name"])  # Aaron DUBOIS

Param\u00e8tres re\u00e7us dans votre redirect_uri
Param\u00e8treTypeDescription
steam_idstringSteamID 64 bits du joueur
rp_namestringNom RP complet (vide si non trouvé)
found"true" | "false"Joueur présent dans la base Arcadia
statestringValeur state passée lors de l’initiation
sigstringHMAC-SHA256 pour vérifier l’authenticité (voir ci-dessous)

Vérification de signature (OAuth)

Chaque callback OAuth reçoit un paramètre sig. C'est un HMAC-SHA256 de steam_id|rp_name|state signé avec votre clé API. Vérifiez-le pour garantir l'authenticité du callback.

// Node.js
const crypto = require("crypto");
const expected = crypto
  .createHmac("sha256", "ac_votreclé")
  .update(steam_id + "|" + rp_name + "|" + state)
  .digest("hex");
if (sig !== expected) throw new Error("Signature invalide");

← Retour au cabinet