# `/user`

Dieser Endpoint bietet eine Schnittstelle für den Zugriff und die Manipulation von Benutzerdaten. Sie können Benutzerinformationen abrufen, aktualisieren, erstellen und löschen. Jeder Benutzer wird durch eine eindeutige Benutzer-ID identifiziert.

## GET /user

Diese Anforderung ruft eine Liste aller Benutzer ab. Sie kann optionale Parameter verwenden, um die abgerufenen Benutzerdaten zu sortieren oder zu filtern.

### Antwort

Die Antwort auf diese Anforderung ist ein Users Objekt mit folgenden Eigenschaften:

-   `data`: Ein Array von User Objekten.

-   `count`: Die Gesamtzahl der Benutzer.

Jedes User Objekt hat die folgenden Eigenschaften:

```ts
interface User {
    id: string // Eindeutiger Identifikator des Benutzers
    insertTime: string // Zeitpunkt der Erstellung des Benutzers
    updateTime: string // Letzter Zeitpunkt der Aktualisierung des Benutzers
    username: string // Benutzername des Benutzers
    role: number // Rolle des Benutzers, repräsentiert durch eine Zahl
    permissions: any[] // Array von Berechtigungen des Benutzers
    meta: {
        // Zusätzliche Informationen über den Benutzer
        [key: string]: any
    }
}
```

## GET /user/{id}

Diese Anforderung ruft einen bestimmten Benutzer ab. Sie nimmt die ID des abzurufenden Benutzers als Parameter an.
Anforderungsparameter

-   `id`: Die ID des abzurufenden Benutzers.

### Antwort

Die Antwort ist das entsprechende User Objekt.

## POST /user

Diese Anforderung erstellt einen neuen Benutzer. Sie nimmt ein Objekt als Parameter an, das die Eigenschaften des zu erstellenden Benutzers enthält.

### Anforderungsparameter

-   `data`: Ein Objekt, das die Eigenschaften des zu erstellenden Benutzers enthält.

### Antwort

Die Antwort ist ein Objekt, das das neu erstellte User Objekt enthält.

## PUT /user/{id}

Diese Anforderung aktualisiert die Daten eines vorhandenen Benutzers. Sie nimmt die ID des zu aktualisierenden Benutzers und ein Objekt, das die zu aktualisierenden Daten enthält, als Parameter an.

### Anforderungsparameter

-   `id`: Die ID des zu aktualisierenden Benutzers.

-   `data`: Ein Objekt, das die zu aktualisierenden Daten enthält.

### Antwort

Die Antwort ist ein Objekt, das das aktualisierte User Objekt enthält.

## DELETE /user/{id}

Diese Anforderung löscht einen vorhandenen Benutzer. Sie nimmt die ID des zu löschenden Benutzers als Parameter an.

### Anforderungsparameter

    `id`: Die ID des zu löschenden Benutzers.

### Antwort

Die Antwort ist ein boolean, das true zurückgibt, wenn das Löschen erfolgreich war.
