Usermanagement-App

Usermanagement-App

 Funktionsumfang der UserManagement-App

Die Usermanagement-App ermöglicht die Verwaltung von Benutzern und Gruppen. In der d.velop cloud kannst du mit der App auch die Administratorrechte vergeben. Du kannst die Benutzer sowie Gruppenzugehörigkeiten mithilfe einer REST-API abfragen und ändern.

 Verwenden der API-Funktionen

Nachfolgend erfährst du, wie du die Programmierschnittstelle der UserManagement-App verwenden kannst.

 Verwalten von Benutzern

Die UserManagement-App ermöglicht dir einzelne Benutzer und Benutzerbilder zu verwalten.

 Abfrufen der Benutzerliste

Um eine Liste aller Benutzer abzurufen, muss deine App eine HTTP GET-Anforderung an die UserManagement-App senden.

Request


GET /usermanagement/user
Accept: application/json

Response Die Antwort enthält ein JSON-Objekt mit einer Liste von Benutzerobjekten.


{
    "id" : "11A5C79F-D9AB-498B-9158-D3034B7E45E5",
    "mail" : "john.smith@d-velop.de",
    "firstName" : "John",
    "lastName" : "Smith",
    "pictureId" : "DF288708-FE65-492C-AD4E-7D747909CB28",
    "self" : "/usermanagement/user/11A5C79F-D9AB-498B-9158-D3034B7E45E5"
}

Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDie Anfrage wurde erfolgreich verarbeitet.

 Erstellen eines Benutzers

Um einen Benutzer zu erstellen, muss deine App eine HTTP POST-Anforderung an die UserManagement-App senden.

Hierbei wird ein vollständiges Benutzerobjekt im Body mitgegeben.


{
    "id" : "11A5C79F-D9AB-498B-9158-D3034B7E45E5",
    "mail" : "john.smith@d-velop.de",
    "firstName" : "John",
    "lastName" : "Smith",
    "pictureId" : "DF288708-FE65-492C-AD4E-7D747909CB28",
    "self" : "/usermanagement/user/11A5C79F-D9AB-498B-9158-D3034B7E45E5"
}

Request


POST /usermanagement/user

Response

Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
201CreatedDie Anfrage wurde erfolgreich verarbeitet. Im Location-Header findest du die relative URL zur Ressource des neuen Benutzers.

 Abrufen von Benutzern

Um einen Benutzer abzurufen, muss deine App eine HTTP GET-Anforderung an die UsermMnagement-App senden.

Request


GET /usermanagement/user/{id}
Accept: application/json

Hinweise zu den Parametern

ParameterBeschreibung
idDie ID des Benutzers, der abgerufen werden soll

Response

Die Antwort enthält ein JSON-Objekt mit einem Benutzerobjekt.


{
    "id" : "11A5C79F-D9AB-498B-9158-D3034B7E45E5",
    "mail" : "john.smith@d-velop.de",
    "firstName" : "John",
    "lastName" : "Smith",
    "pictureId" : "DF288708-FE65-492C-AD4E-7D747909CB28",
    "self" : "/usermanagement/user/11A5C79F-D9AB-498B-9158-D3034B7E45E5"
}

Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDie Anfrage wurde erfolgreich verarbeitet.
404Not FoundDie Angegebene ID existiert nicht. Es werden keine Daten übermittelt.

 Ändern eines Benutzers

Um einen Benutzer zu ändern, muss deine App eine HTTP PUT-Anforderung an die UserManagement-App senden. Hierbei wird ein vollständiges Benutzerobjekt im Body mitgegeben. Alle Werte von diesem Body werden übernommen.


{
    "id" : "11A5C79F-D9AB-498B-9158-D3034B7E45E5",
    "mail" : "john.smith@d-velop.de",
    "firstName" : "John",
    "lastName" : "Smith",
    "pictureId" : "DF288708-FE65-492C-AD4E-7D747909CB28",
    "self" : "/usermanagement/user/11A5C79F-D9AB-498B-9158-D3034B7E45E5"
}

Request


PUT /usermanagement/user/{id}
Accept: application/json

Hinweise zu den Parametern

ParameterBeschreibung
idDie ID des Benutzers, der geändert werden soll

Response Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDer Benutzer wurde erfolgreich geändert.
400Bad RequestDie Anfrage konnte nicht verarbeitet werden. Möglicherweise ist der Wert eines Parameters nicht gültig.
429Too Many RequestsDer Server wurde durch zu viele Anfragen von diesem Mandanten überlastet und konnte diese Anfrage daher nicht in gegebener Zeit bearbeiten.

 Löschen eines Benutzers

Um einen Benutzer zu löschen, muss deine App eine HTTP DELETE-Anforderung an die UserManagement-App senden.

Request


DELETE /usermanagement/user/{id}
Accept: application/json

Hinweise zu den Parametern

ParameterBeschreibung
idDie ID des Benutzers, der gelöscht werden soll

Response

Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDer Benutzer wurde erfolgreich gelöscht.
400Bad RequestDie Anfrage konnte nicht verarbeitet werden.
404Not FoundDer Benutzer wurde nicht gefunden.
429Too Many RequestsDer Server wurde durch zu viele Anfragen von diesem Mandanten überlastet und konnte diese Anfrage daher nicht in gegebener Zeit bearbeiten.

Hinweis

Wenn du als Antwort einen "Bad Request"-Statuscode erhältst, kann es sein, dass der Benutzer nicht gelöscht werden darf, weil er der letzte Benutzer in der administrativen Gruppe des Mandanten ist. Der letzte Benutzer kann nicht gelöscht werden, da ansonsten kein Zugriff mehr auf die Cloud-Instanz möglich wäre.

 Abrufen eines Benutzerbilds

Um das Bild eines Benutzers abzurufen, muss deine App eine HTTP GET-Anforderung an die UserManagement-App senden.

Request


GET /usermanagement/picture/{id}

Hinweise zu den Parametern

ParameterBeschreibung
idDie ID des Benutzers, dessen Bild abgerufen werden soll

Response Die Antwort enthält das Bild vom angegebenen Benutzer.

Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDas Bild wurde erfolgreich gesendet.

 Ändern des Benutzerbilds

Um das Bild eines Benutzers zu ändern, muss deine App eine HTTP PUT-Anforderung an die UserManagement-App senden.

Request


PUT /usermanagement/picture/{id}

Hinweise zu den Parametern

ParameterBeschreibung
idDie ID des Bildes, das geändert werden soll

Response Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDas Bild wurde erfolgreich geändert.
404Not FoundDer Benutzer wurde nicht gefunden und sein Bild konnte nicht geändert werden.

 Löschen eines Benutzerbilds

Um das Bild eines Benutzers zu löschen, muss deine App eine HTTP DELETE-Anforderung an die UserManagement-App senden.

Request


DELETE /usermanagement/picture/{userId}

Hinweise zu den Parametern

ParameterBeschreibung
userIdDie ID des Benutzers, dessen Bild gelöscht werden soll

Response Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDas Bild wurde erfolgreich gelöscht.
404Not FoundDer Benutzer konnte nicht gefunden werden. Das zugehörige Bild wurde nicht gelöscht.
429Too Many RequestsDer Server wurde durch zu viele Anfragen von diesem Mandanten überlastet und konnte diese Anfrage daher nicht in gegebener Zeit bearbeiten.

 Verwalten von Gruppen

Die UserManagement-App ermöglicht dir Gruppen und einzelne Gruppenmitglieder zu verwalten.

Die Folgenden Arten von Gruppenmitgliedern sind in der UserManagement-App implementiert:

ArtKeyBeschreibung
BenutzeruserId in diesem Element ist die ID eines Benutzers, der Mitglied dieser Gruppe ist
GruppegroupId in diesem Element ist die ID einer Gruppe, die Mitglied dieser Gruppe ist

Besondere IDs

Die administrative Gruppe des Mandanten hat die feste ID '6DB690CB-EA1B-4D45-B00B-63A2E7B21816'. Wenn ein Benutzer in dieser Gruppe ist, erhält er automatisch administrative Rechte in der entsprechenden Cloud-Instanz.

 Abrufen der Gruppenliste

Um eine Liste aller Gruppen abzurufen, muss deine App eine HTTP GET-Anforderung an die UserManagement-App senden.

Request


GET /usermanagement/group
Accept: application/json

Response

Die Antwort enthält eine Liste von Gruppenobjekten. Die Gruppenobjekte enthalten auch alle Mitglieder der Gruppen.


{
    "id" : "11A5C79F-D9AB-498B-9158-D3034B7E45E5",
    "name" : "sales staff",
    "infoText" : "This is the group with all sales employees",
    "members" : [ ... ],
    "self" : "/usermanagement/group/11A5C79F-D9AB-498B-9158-D3034B7E45E5"
}

Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDie Anfrage wurde erfolgreich verarbeitet.

 Erstellen von Gruppen

Um eine Gruppe zu erstellen, muss deine App eine HTTP POST-Anforderung an die UserManagement-App senden. Hierbei wird ein vollständiges Gruppenobjekt im Body mitgegeben.


{
    "id" : "11A5C79F-D9AB-498B-9158-D3034B7E45E5",
    "name" : "sales staff",
    "infoText" : "This is the group with all sales employees",
    "members" : [ ... ],
    "self" : "/usermanagement/group/11A5C79F-D9AB-498B-9158-D3034B7E45E5"
}

Request


POST /usermanagement/group

Response Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
201CreatedDie Anfrage wurde erfolgreich verarbeitet. Im Location-Header findest du die relative URL zur Ressource der neuen Gruppe.

 Abrufen einer Gruppen

Um eine Gruppe abzurufen, muss deine App eine HTTP GET-Anforderung an die UserManagement-App senden.

Request


GET /usermanagement/group/{id}
Accept: application/json

Hinweise zu den Parametern

ParameterBeschreibung
idDie ID der Gruppe, die abgerufen werden soll

Response

Die Antwort enthält ein Gruppenobjekt.


{
    "id" : "11A5C79F-D9AB-498B-9158-D3034B7E45E5",
    "name" : "sales staff",
    "infoText" : "This is the group with all sales employees",
    "members" : [ ... ],
    "self" : "/usermanagement/group/11A5C79F-D9AB-498B-9158-D3034B7E45E5"
}

Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDie Anfrage wurde erfolgreich verarbeitet.
400Bad RequestDie angegebene ID war ungültig.
404Not FoundDie Gruppe wurde nicht gefunden.

 Ändern einer Gruppe

Um eine Gruppe zu ändern, muss deine App eine HTTP PUT-Anforderung an die UserManagement-App senden.

Request


PUT /usermanagement/group/{id}
Accept: application/json

Hierbei wird ein vollständiges Gruppenobjekt im Body mitgegeben.


{
    "id" : "11A5C79F-D9AB-498B-9158-D3034B7E45E5",
    "name" : "sales staff",
    "infoText" : "This is the group with all sales employees",
    "members" : [ ... ],
    "self" : "/usermanagement/group/11A5C79F-D9AB-498B-9158-D3034B7E45E5"
}

Hinweise zu den Parametern

ParameterBeschreibung
idDie ID der Gruppe, die geändert werden soll

Im Body wird ein Gruppenobjekt übergeben. Alle Werte dieses Objekts werden übernommen.

Response Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDie Anfrage wurde erfolgreich verarbeitet.
400Bad RequestDie angegebene ID war ungültig.
404Not FoundDie Gruppe wurde nicht gefunden.
429Too Many RequestsDer Server wurde durch zu viele Anfragen von diesem Mandanten überlastet und konnte diese Anfrage daher nicht in gegebener Zeit bearbeiten.

Hinweis

Die Mitglieder der Gruppe werden durch die Mitglieder der Gruppe ersetzt, die in der Anforderung zum Ändern der Gruppe angegeben hast. Die vorherigen Mitglieder gehen verloren. Um nur die Mitglieder der Gruppe zu ändern, verwende die Funktionen zum Hinzufügen und Löschen von Gruppenmitgliedern.

 Löschen einer Gruppen

Um eine Gruppe zu löschen, muss deine App eine HTTP DELETE-Anforderung an die UserManagement-App senden.

Request


DELETE /usermanagement/group/{id}
Accept: application/json

Hinweise zu den Parametern

ParameterBeschreibung
idDie ID der Gruppe, die gelöscht werden soll

Response Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDie Anfrage wurde erfolgreich verarbeitet.
404Not FoundDie Gruppe wurde nicht gefunden.
429Too Many RequestsDer Server wurde durch zu viele Anfragen von diesem Mandanten überlastet und konnte diese Anfrage daher nicht in gegebener Zeit bearbeiten.

 Hinzufügen eines Gruppenmitglieds

Um ein Gruppenmitglied hinzuzufügen, muss deine App eine HTTP PUT-Anforderung an die UserManagement-App senden. Hierbei wird ein vollständiges Benutzerobjekt im Body mitgegeben.


{
    "id" : "11A5C79F-D9AB-498B-9158-D3034B7E45E5",
    "mail" : "john.smith@d-velop.de",
    "firstName" : "John",
    "lastName" : "Smith",
    "pictureId" : "DF288708-FE65-492C-AD4E-7D747909CB28",
    "self" : "/usermanagement/user/11A5C79F-D9AB-498B-9158-D3034B7E45E5"
}

Request


PUT /usermanagement/group/{groupId}/member/{userId}
Accept: application/json

Hinweise zu den Parametern

ParameterBeschreibung
groupIdDie ID der Gruppe, zu der ein Mitglied hinzugefügt werden soll
userIdDie ID des Benutzers, der als Mitglied zu der Gruppe hinzugefügt werden soll

Response Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDie Anfrage wurde erfolgreich verarbeitet.
400Bad RequestDie Anfrage konnte nicht verarbeitet werden. Möglicherweise ist der Wert eines Parameters ungültig oder der Benutzer ist bereits Mitglied der Gruppe.
404Not FoundDie Gruppe wurde nicht gefunden.
429Too Many RequestsDer Server wurde durch zu viele Anfragen von diesem Mandanten überlastet und konnte diese Anfrage daher nicht in gegebener Zeit bearbeiten.

 Entfernen eines Gruppenmitglieds

Um ein Gruppenmitglied zu entfernen, muss deine App eine HTTP DELETE-Anforderung an die UserManagement-App senden.

Request


DELETE /usermanagement/group/{groupId}/member/{userId}
Accept: application/json

Hinweise zu den Parametern

ParameterBeschreibung
groupIdDie ID der Gruppe, aus der ein Mitglied entfernt werden soll
userIdDie ID des Benutzers, der aus der Gruppe entfernt werden soll

Response Folgende HTTP-Statuscodes können zurückgegeben werden:

StatuscodeNameBedeutung
200OKDie Anfrage wurde erfolgreich verarbeitet.
400Bad RequestDie Anfrage konnte nicht verarbeitet werden. Möglicherweise ist der Wert eines Parameters ungültig.
404Not FoundDie Gruppe wurde nicht gefunden.
429Too Many RequestsDer Server wurde durch zu viele Anfragen von diesem Mandanten überlastet und konnte diese Anfrage daher nicht in gegebener Zeit bearbeiten.

Hinweis

Wenn du als Antwort einen "Bad Request"-Statuscode erhältst, kann es sein, dass der Benutzer nicht gelöscht werden darf, da er der letzte Benutzer in der administrativen Gruppe des Mandanten ist. Der letzte Benutzer kann nicht gelöscht werden, da ansonsten kein Zugriff mehr auf die Cloud-Instanz möglich wäre.