Public API Reference
Dieses Dokument beschreibt die REST-API-Endpunkte zur Verwaltung von Organizations und den zugehörigen Teams und Mitgliedern.
Interaktive API-Dokumentation (Swagger UI)
Alle verfügbaren API-Endpunkte können direkt auf der jeweiligen Codesphere-Instanz interaktiv erkundet und getestet werden unter:
https://[your_instance_URL]/api/swagger-ui/
Organization-Verwaltung
Organizations auflisten
Ruft eine Liste aller Organizations ab, in denen der authentifizierte Benutzer Mitglied ist.
- URL:
GET /organizations - Parameter: Keine.
Teams einer Organization auflisten
Ruft alle Teams ab, die offiziell einer bestimmten Organization zugeordnet sind.
- URL:
GET /organizations/{organizationId}/teams - Parameter:
- Path:
organizationId(UUID) - Der eindeutige Bezeichner der Organization.
- Path:
Mitgliederverwaltung
Mitglieder einer Organization auflisten
Ruft eine Liste aller Benutzer ab, die Teil der angegebenen Organization sind, einschließlich ihrer aktuellen Rollen und ihres Status.
- URL:
GET /organizations/{organizationId}/members - Parameter:
- Path:
organizationId(UUID) - Der eindeutige Bezeichner der Organization.
- Path:
Mitglied zu Organization hinzufügen
Fügt einen bestehenden Benutzer zu einer Organization hinzu. Zu beachten ist, dass das Hinzufügen eines Benutzers zu einer Organization Voraussetzung dafür ist, dass dieser anschließend zu einem Team innerhalb dieser Organization hinzugefügt werden kann.
- URL:
POST /organizations/{organizationId}/members - Parameter:
- Path:
organizationId(UUID)
- Body:
email(String): Die gültige E-Mail-Adresse des hinzuzufügenden Benutzers.role(String): Die zuzuweisende Rolle ('admin'oder'member').
- Path:
Organization-Rolle ändern
Aktualisiert die organisatorische Rolle eines bestehenden Mitglieds (z. B. Beförderung eines Mitglieds zum Administrator).
- URL:
PUT /organizations/{organizationId}/members/{userId}/role - Parameter:
- Path:
organizationId(UUID)userId(Number) - Die userId des Mitglieds.
- Body:
role(String): Die neue Rolle ('admin'oder'member').
- Path:
Mitglied aus Organization entfernen
Entfernt einen Benutzer aus der Organization.
- URL:
DELETE /organizations/{organizationId}/members/{userId} - Parameter:
- Path:
organizationId(UUID)userId(Number) - Die userId des zu entfernenden Mitglieds.
Team-Integration
Team erstellen
Erstellt ein neues, gemeinschaftlich nutzbares Team. Abhängig von der standalone-teams-Konfiguration der Umgebung müssen Teams unter Umständen strikt an eine Organization gebunden sein.
- URL:
POST /teams - Parameter:
- Body:
name(String): Der Name des neuen Teams.dc(Integer): Die ID des Rechenzentrums, in dem das Team gehostet wird.organizationId(UUID, bedingt erforderlich): Die ID der Organization, zu der dieses Team gehört.- Hinweis: Wenn das Feature-Flag
standalone-teamsauf der jeweiligen Instanz deaktiviert ist, ist dieser Parameter zwingend erforderlich, und der anfragende Benutzer muss Mitglied dieser Organization sein.
- Hinweis: Wenn das Feature-Flag
- Body:
Team in Organization migrieren
Migriert ein bestehendes, eigenständiges Team in eine Organization oder ein Team, das bereits einer Organization angehört, in eine andere Organization. Dies wird hauptsächlich verwendet, um bestehende Teams unter der neuen Unified-Governance-Struktur zu konsolidieren.
- URL:
POST /teams/{teamId}/migrate - Parameter:
- Path:
teamId(Integer)
- Body:
organizationId(UUID): Die Ziel-Organization.force(Boolean, optional): Da ein Team innerhalb einer Organization nur Mitglieder dieser Organization enthalten darf, kann die Migration eines Teams zu Konflikten führen, wenn einige Teammitglieder nicht Teil der Ziel-Organization sind.- Bei
force: truewerden diese Nicht-Organization-Mitglieder während der Migration automatisch aus dem Team entfernt. - Bei
force: false(oder wenn der Parameter weggelassen wird) bricht die API die Migration ab und gibt einen Fehler (TeamMigrationFailed) zurück, falls Nicht-Mitglieder erkannt werden.
- Bei
- Path: