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.

Applications öffnen

Voxery Developers