Skip to content

API-Uebersicht

Basis-URL

http://localhost:3001/api

Production: Konfiguriert ueber BOT_API_URL / NEXT_PUBLIC_BOT_API_URL.

Authentifizierung

Die meisten Endpunkte erfordern einen JWT Bearer Token:

http
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...

Tokens werden ueber die Login-Endpunkte bezogen. Siehe Authentifizierung.

Antwort-Format

Erfolg

json
{
  "success": true,
  "data": { ... }
}

Fehler

json
{
  "error": "Fehlerbeschreibung"
}

HTTP Status Codes

CodeBedeutung
200Erfolg
201Erstellt
400Ungueltige Anfrage
401Nicht authentifiziert
403Keine Berechtigung
404Nicht gefunden
429Rate Limit erreicht
500Server-Fehler

Rate Limiting

  • Global: Standard-Limit fuer alle Endpunkte
  • Sensitiv: Strengeres Limit fuer Login und Admin-Aktionen
  • Response-Header: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset

Endpunkt-Uebersicht

Authentifizierung

MethodePfadAuthBeschreibung
POST/auth/admin/login-Admin-Login
POST/auth/user/login-User-Login
GET/auth/discord-Discord OAuth starten
GET/auth/discord/callback-OAuth Callback
GET/auth/userJWTAktueller User

Schedule

MethodePfadAuthBeschreibung
GET/schedule/next14JWTNaechste 14 Tage
GET/schedule/paginatedAdminPaginierte Historie
POST/schedule/update-reasonAdminGrund aktualisieren
POST/schedule/update-availabilityJWTVerfuegbarkeit setzen
GET/schedule-detailsJWTAnalysierte Details fuer Datum
GET/schedule-details-batchJWTBatch-Abfrage

User Mappings

MethodePfadAuthBeschreibung
GET/user-mappingsOptionalAlle Spieler
POST/user-mappingsAdminSpieler hinzufuegen
PUT/user-mappings/reorderAdminReihenfolge aendern
PUT/user-mappings/:discordIdAdminSpieler bearbeiten
DELETE/user-mappings/:discordIdAdminSpieler entfernen

Scrims

MethodePfadAuthBeschreibung
GET/scrimsJWTAlle Scrims
GET/scrims/stats/summaryJWTStatistiken
GET/scrims/range/:start/:endJWTScrims im Zeitraum
GET/scrims/:idJWTEinzelner Scrim
POST/scrimsAdminScrim erstellen
PUT/scrims/:idAdminScrim bearbeiten
DELETE/scrims/:idAdminScrim loeschen

Abwesenheiten

MethodePfadAuthBeschreibung
GET/absencesJWTAbwesenheiten
POST/absencesJWTErstellen
PUT/absences/:idJWTBearbeiten
DELETE/absences/:idJWTLoeschen

Wiederkehrende Verfuegbarkeit

MethodePfadAuthBeschreibung
GET/recurring-availabilityJWTEigene Eintraege
POST/recurring-availabilityJWTSetzen
DELETE/recurring-availability/:dayJWTTag loeschen
DELETE/recurring-availabilityJWTAlle loeschen

Strategien

MethodePfadAuthBeschreibung
GET/strategiesJWTAlle Strategien
POST/strategiesJWT*Erstellen (mit Upload)
PUT/strategies/:idJWT*Bearbeiten
DELETE/strategies/:idJWT*Loeschen
GET/strategies/foldersJWTOrdner-Struktur
POST/strategies/foldersJWT*Ordner erstellen

*Berechtigungsabhaengig von stratbook.editPermission Setting

VOD-Kommentare

MethodePfadAuthBeschreibung
GET/vod-comments/scrim/:scrimIdJWTKommentare laden
POST/vod-commentsJWTKommentar erstellen
PUT/vod-comments/:idJWTBearbeiten
DELETE/vod-comments/:idJWTLoeschen

Aktionen

MethodePfadAuthBeschreibung
POST/actions/scheduleAdminSchedule posten
POST/actions/remindAdminErinnerungen senden
POST/actions/pollAdminPoll erstellen
POST/actions/notifyAdminDM senden
POST/actions/clear-channelAdminChannel leeren
POST/actions/training-pollAdminTraining-Poll
POST/actions/pin-messageAdminNachricht pinnen

Settings

MethodePfadAuthBeschreibung
GET/settings-Alle Settings laden
POST/settingsAdminSettings aktualisieren
POST/settings/reload-configAdminConfig neu laden

System

MethodePfadAuthBeschreibung
GET/health-Health Check
GET/bot-status-Bot-Status
GET/admin/logsAdminSystem-Logs
GET/discord/channelsAdminDiscord Channels
GET/discord/rolesAdminDiscord Rollen

MIT License