Zum Hauptinhalt springen
Version: 1.89.x (Q2 26)

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.

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.

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').

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').

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-teams auf der jeweiligen Instanz deaktiviert ist, ist dieser Parameter zwingend erforderlich, und der anfragende Benutzer muss Mitglied dieser Organization sein.

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: true werden 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.