Authentifizierung
Nutzer-JWT und Bot-Token für REST und Socket.IO Gateway.
Login
POST /auth/login
curl -X POST https://api.voxery.xyz/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"bot@example.com","password":"secret"}'Antwort (vereinfacht):
Code
{
"accessToken": "eyJhbG...",
"refreshToken": "eyJhbG...",
"user": {
"id": "clx...",
"username": "my-bot",
"discriminator": "0001"
}
}Token verwenden
REST (JWT)
fetch("https://api.voxery.xyz/servers", {
headers: { Authorization: "Bearer " + accessToken },
});REST (Bot)
fetch("https://api.voxery.xyz/applications", {
headers: { Authorization: "Bot " + botToken },
});Socket.IO
import { io } from "socket.io-client";
const socket = io("https://api.voxery.xyz", {
path: "/socket.io",
auth: { token: accessToken }, // or botToken
transports: ["websocket", "polling"],
});Token erneuern
Code
POST /auth/refresh
{ "refreshToken": "..." }Access-Token läuft nach 15 Minuten ab. Refresh-Token: 7 Tage.
MFA
Wenn MFA aktiv ist, liefert /auth/login einen mfaToken. Verifiziere mit POST /auth/mfa/verify und code (TOTP).
Bot-Token (empfohlen)
Erstelle eine Application unter Applications & Token, generiere einen Bot-Token und nutze Authorization: Bot {token} für REST sowie auth.token am Socket. Bot-User können sich nicht per Passwort anmelden.