# `/login` ## POST /login Dieser Endpoint ermöglicht es Benutzern, sich in das System einzuloggen. Dabei wird eine Authentifizierung durchgeführt und bei erfolgreicher Authentifizierung ein Token zurückgegeben, der für nachfolgende API-Aufrufe verwendet wird. ## Anforderungsparameter Der /login Endpoint erwartet folgende Daten im Body: - `username`: Der Benutzername des Benutzers, der sich anmelden möchte. Typ: String. - `password`: Das Passwort des Benutzers, der sich anmelden möchte. Typ: String. Die Daten müssen als LoginData Objekt übergeben werden. ```ts const loginData: LoginData = { username: "IhrBenutzername", password: "IhrPasswort", } ``` ## Antwort Bei erfolgreicher Anmeldung gibt der /login Endpoint ein LoginResponse Objekt zurück. Dieses Objekt enthält: - `token`: Ein Authentifizierungstoken, das für nachfolgende API-Aufrufe verwendet wird. Typ: String. - `user`: Ein User Objekt, das Informationen über den eingeloggten Benutzer enthält. ```ts interface User { id: string // Eindeutige ID des Benutzers insertTime: string // Zeitpunkt der Erstellung des Benutzerkontos updateTime: string // Letzter Zeitpunkt der Aktualisierung des Benutzerkontos username: string // Benutzername des Benutzers role: number // Rolle des Benutzers im System (0=admin, 1 = editor, 2 = user) permissions: any[] // Berechtigungen des Benutzers meta: { // Weitere optionale Benutzerinformationen [key: string]: any } } ``` ## Beispielaufruf ```ts const loginData: LoginData = { username: "IhrBenutzername", password: "IhrPasswort", } postLogin(loginData) .then((response) => { console.log("Erfolgreiche Anmeldung! Token: ", response.token) console.log("Benutzerinformationen: ", response.user) }) .catch((error) => { console.log("Fehler beim Login: ", error) }) ```