Auf dieser Seite

API-Referenz: Mandanten

Mandanteninformationen abrufen

Endpunkt: GET /v1/tenant/{tenantId}

Authentifizierung: Mandantenbezogener API-Schlüssel · read Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid

Antwort (200):

Mandantendetails

{
	"id": "00000000-0000-0000-0000-000000000000",
	"createdBy": "00000000-0000-0000-0000-000000000000",
	"createdAt": "2024-03-15T16:30:00Z",
	"displayName": "string",
	"contactEmail": "string",
	"isActive": true,
	"shortName": "string",
	"useOrganizationTheme": true,
	"description": "string",
	"organizationId": "00000000-0000-0000-0000-000000000000",
	"allowedLogins": {
		"Microsoft": true,
		"Google": true,
		"LinkedIn": true
	},
	"url": "string"
}
Feld Typ Erforderlich Beschreibung
id string Ja Format: uuid
createdBy string Ja Format: uuid
createdAt string Ja Format: date-time
displayName string Ja Standard: ""
Maximale Länge: 128
contactEmail string Ja Format: email
isActive boolean Ja Standard: true
shortName string Ja
useOrganizationTheme boolean Ja Standard: true
description string Ja Maximale Länge: 200
organizationId string Ja Format: uuid
allowedLogins object Ja
url string Ja Format: uri

Fehler:

  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 404 Ressource nicht gefunden

Mandanteneinstellungen aktualisieren

Endpunkt: PUT /v1/tenant/{tenantId}

Authentifizierung: Mandantenbezogener API-Schlüssel · write Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid

Anfragetext:

{
	"id": "00000000-0000-0000-0000-000000000000",
	"displayName": "string",
	"contactEmail": "string",
	"shortName": "string",
	"description": "string"
}
Feld Typ Erforderlich Beschreibung
id string Nein Format: uuid
displayName string Nein
contactEmail string Nein
shortName string Nein
description string Nein

Antwort (200):

Mandant aktualisiert

{
	"id": "00000000-0000-0000-0000-000000000000",
	"createdBy": "00000000-0000-0000-0000-000000000000",
	"createdAt": "2024-03-15T16:30:00Z",
	"displayName": "string",
	"contactEmail": "string",
	"isActive": true,
	"shortName": "string",
	"useOrganizationTheme": true,
	"description": "string",
	"organizationId": "00000000-0000-0000-0000-000000000000",
	"allowedLogins": {
		"Microsoft": true,
		"Google": true,
		"LinkedIn": true
	},
	"url": "string"
}
Feld Typ Erforderlich Beschreibung
id string Ja Format: uuid
createdBy string Ja Format: uuid
createdAt string Ja Format: date-time
displayName string Ja Standard: ""
Maximale Länge: 128
contactEmail string Ja Format: email
isActive boolean Ja Standard: true
shortName string Ja
useOrganizationTheme boolean Ja Standard: true
description string Ja Maximale Länge: 200
organizationId string Ja Format: uuid
allowedLogins object Ja
url string Ja Format: uri

Fehler:

  • 400 Ungültige Anfrage, z. B. ein ungültiger Filterausdruck, ein Prozess ohne Modell, ein nicht unterstützter Upload-Typ oder ein fehlendes Pflichtfeld
  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 403 Dem API-Schlüssel fehlt der erforderliche Bereich oder der Organisationszugriff, der Mandant ist inaktiv oder der Tarif blockiert den Dateityp
  • 406 Der Wert kann nicht akzeptiert werden, z. B. ein reservierter oder bereits verwendeter Kurzname

Mandantenstatistiken abrufen (Datenmenge, Modelle, Simulationen, Benutzer)

Endpunkt: GET /v1/tenant/{tenantId}/statistics

Authentifizierung: Mandantenbezogener API-Schlüssel · read Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid

Antwort (200):

Mandantenstatistiken

{
	"tenantId": "00000000-0000-0000-0000-000000000000",
	"uploadedDataSize": 0,
	"uploadedDataCount": 0,
	"modelCount": 0,
	"simulationCount": 0,
	"userCount": 0
}
Feld Typ Erforderlich Beschreibung
tenantId string Ja Format: uuid
uploadedDataSize number Ja
uploadedDataCount number Ja
modelCount number Ja
simulationCount number Ja
userCount number Ja

Fehler:

  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 404 Ressource nicht gefunden

Benutzer im Mandanten auflisten

Gibt die passenden Benutzer als reines JSON-Array zurück: Es gibt keine Gesamtanzahl; verwenden Sie limit/offset für die Seitennavigation.

Endpunkt: GET /v1/tenant/{tenantId}/users

Authentifizierung: Mandantenbezogener API-Schlüssel · read Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid
limit integer query Nein Maximale Anzahl zurückzugebender Elemente
offset integer query Nein Anzahl zu überspringender Elemente

Antwort (200):

Benutzerliste

[
	{
		"id": "00000000-0000-0000-0000-000000000000",
		"email": "string",
		"firstName": "string",
		"lastName": "string",
		"createdAt": "2024-03-15T16:30:00Z",
		"lastLoginAt": "2024-03-15T16:30:00Z",
		"tenantId": "00000000-0000-0000-0000-000000000000",
		"isActiveInTenant": true,
		"isAdminInTenant": true,
		"access": "none",
		"isDashboardViewer": true,
		"organizationId": "00000000-0000-0000-0000-000000000000",
		"isActiveInOrganization": true,
		"isAdminInOrganization": true
	}
]

Fehler:

  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel

Benutzer zum Mandanten hinzufügen (keine Einladungs-E-Mail wird versendet)

Die Rollenfelder im Anfragetext (isAdminInTenant, access: none|portalViewer|designer|architect|intelligence, isDashboardViewer) werden unverändert übernommen. Dieser Endpunkt bietet vollständige Administrationsfunktionen für den Mandanten. Geben Sie daher nur vertrauenswürdigen Aufrufern API-Schlüssel mit Schreibberechtigungen. Die Dashboard-Anzeige wird über den booleschen Wert isDashboardViewer gesteuert; die frühere schreibgeschützte Viewer-Stufe wurde entfernt.

Endpunkt: POST /v1/tenant/{tenantId}/users

Authentifizierung: Mandantenbezogener API-Schlüssel · write Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid

Anfragetext:

{
	"email": "string",
	"firstName": "string",
	"lastName": "string",
	"isActiveInTenant": true,
	"isAdminInTenant": true,
	"access": "none",
	"isDashboardViewer": true,
	"preferredLocale": "en"
}
Feld Typ Erforderlich Beschreibung
email string Ja E-Mail-Adresse des Benutzers, zugleich Anmeldekennung
Format: email
firstName string Nein Optionaler Vorname
Maximale Länge: 64
lastName string Nein Optionaler Nachname
Maximale Länge: 64
isActiveInTenant boolean Nein Gibt an, ob der Benutzer in diesem Mandanten aktiv ist
isAdminInTenant boolean Nein Administrationsrechte in diesem Mandanten, werden unverändert übernommen: vollständige Mandantenadministration
access none | portalViewer | designer | architect | intelligence Nein Sitzplatz mit Einzelauswahl: none | portalViewer | designer | architect | intelligence
Zulässige Werte: none, portalViewer, designer, architect, intelligence
isDashboardViewer boolean Nein Gibt an, ob der Benutzer Dashboards schreibgeschützt anzeigen kann
preferredLocale en | zh | es | fr | de | pt | it | nl | ja | tr Nein Bevorzugte Sprache der Benutzeroberfläche für den Benutzer
Zulässige Werte: en, zh, es, fr, de, pt, it, nl, ja, tr

Antwort (201):

Benutzer hinzugefügt

{
	"id": "string",
	"message": "string"
}
Feld Typ Erforderlich Beschreibung
id string Ja ID des neu hinzugefügten Benutzers
message string Ja

Fehler:

  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 409 Die Anfrage steht im Konflikt mit dem aktuellen Zustand, z. B. wegen einer Sitzplatzbeschränkung oder einer wiederverwendeten ID

Mandanteneinstellungen eines Benutzers aktualisieren

Endpunkt: PUT /v1/tenant/{tenantId}/users/{userId}

Authentifizierung: Mandantenbezogener API-Schlüssel · write Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid
userId string path Ja Format: uuid

Anfragetext:

{
	"isActiveInTenant": true,
	"isAdminInTenant": true,
	"access": "none",
	"isDashboardViewer": true
}
Feld Typ Erforderlich Beschreibung
isActiveInTenant boolean Nein Gibt an, ob der Benutzer in diesem Mandanten aktiv ist
isAdminInTenant boolean Nein Administrationsrechte in diesem Mandanten, werden unverändert übernommen: vollständige Mandantenadministration
access none | portalViewer | designer | architect | intelligence Nein Sitzplatz mit Einzelauswahl: none | portalViewer | designer | architect | intelligence. Die Dashboard-Anzeige wird über den booleschen Wert isDashboardViewer gesteuert.
Zulässige Werte: none, portalViewer, designer, architect, intelligence
isDashboardViewer boolean Nein Gibt an, ob der Benutzer Dashboards schreibgeschützt anzeigen kann

Antwort (200):

Aktualisiert

{
	"message": "string"
}
Feld Typ Erforderlich Beschreibung
message string Ja

Fehler:

  • 400 Ungültige Anfrage, z. B. ein ungültiger Filterausdruck, ein Prozess ohne Modell, ein nicht unterstützter Upload-Typ oder ein fehlendes Pflichtfeld
  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 404 Ressource nicht gefunden

Benutzer aus dem Mandanten entfernen

Endpunkt: DELETE /v1/tenant/{tenantId}/users/{userId}

Authentifizierung: Mandantenbezogener API-Schlüssel · write Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid
userId string path Ja Format: uuid

Antwort (200):

Benutzer entfernt

{
	"message": "string"
}
Feld Typ Erforderlich Beschreibung
message string Ja

Fehler:

  • 400 Ungültige Anfrage, z. B. ein ungültiger Filterausdruck, ein Prozess ohne Modell, ein nicht unterstützter Upload-Typ oder ein fehlendes Pflichtfeld
  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 404 Ressource nicht gefunden

Einmalig verwendbares Login-Übergabetoken für einen Benutzer erstellen

Gibt ein einmalig verwendbares Token mit einer Gültigkeit von 60 Sekunden zurück, das an den Benutzer, den Mandanten und die Organisation gebunden ist, sowie die url, an die der Browser des Benutzers weitergeleitet werden soll. Öffnen Sie die URL im Browser des Benutzers. Er wird in ProcessMind bereits authentifiziert angemeldet: ohne E-Mail-Link und ohne Identitätsübernahme; der Benutzer erhält eine eigene Sitzung. Erfordert den dedizierten Bereich sessions für den API-Schlüssel: Ein organisationsbezogener Schlüssel kann ein Token für jeden Mandanten seiner Organisation erstellen, ein mandantenbezogener Schlüssel nur für Benutzer seines eigenen Mandanten. Behandeln Sie das Token wie ein Passwort: Es wird nur einmal zurückgegeben, niemals protokolliert und durch die Deaktivierung des Schlüssels oder des Benutzers widerrufen.

Endpunkt: POST /v1/tenant/{tenantId}/users/{userId}/login-token

Authentifizierung: Mandanten- oder organisationsbezogener API-Schlüssel · sessions Bereich · Ratenlimit 2 Anfragen/s (Burst 4)

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid
userId string path Ja Format: uuid

Anfragetext:

Optionaler Zielpfad, ein relativer App-Pfad, z. B. “app” oder “app/dashboards”

{
	"path": "string"
}
Feld Typ Erforderlich Beschreibung
path string Nein Maximale Länge: 512

Antwort (200):

Login-Übergabetoken

{
	"token": "string",
	"url": "string",
	"expiresInSeconds": 0,
	"expiresAt": "2024-03-15T16:30:00Z"
}
Feld Typ Erforderlich Beschreibung
token string Ja
url string Ja
expiresInSeconds number Ja
expiresAt string Ja Format: date-time

Fehler:

  • 400 Ungültige Anfrage, z. B. ein ungültiger Filterausdruck, ein Prozess ohne Modell, ein nicht unterstützter Upload-Typ oder ein fehlendes Pflichtfeld
  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 403 Dem API-Schlüssel fehlt der erforderliche Bereich oder der Organisationszugriff, der Mandant ist inaktiv oder der Tarif blockiert den Dateityp
  • 404 Ressource nicht gefunden
  • 429 Ratenlimit erreicht: Beachten Sie das für den Endpunkt dokumentierte Ratenlimit

API-Schlüssel authentifizieren Ihre Integrationen. Organisationsbezogene Schlüssel können die Schlüssel jedes Mandanten innerhalb der Organisation bereitstellen und verwalten.

API-Schlüssel des Mandanten auflisten

Erfordert einen organisationsbezogenen API-Schlüssel. Das Geheimnis wird niemals zurückgegeben.

Endpunkt: GET /v1/tenant/{tenantId}/api-keys

Authentifizierung: Organisationsbezogener API-Schlüssel · read Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid
limit integer query Nein Maximale Anzahl zurückzugebender Elemente
offset integer query Nein Anzahl zu überspringender Elemente

Antwort (200):

API-Schlüsselliste

[
	{
		"id": "00000000-0000-0000-0000-000000000000",
		"tenantId": "00000000-0000-0000-0000-000000000000",
		"organizationId": "00000000-0000-0000-0000-000000000000",
		"displayName": "string",
		"partialKey": "string",
		"enabled": true,
		"createdAt": "2024-03-15T16:30:00Z",
		"lastUsedAt": "2024-03-15T16:30:00Z",
		"expiresAt": "2024-03-15T16:30:00Z",
		"scope": {
			"read": true,
			"write": true,
			"uploadData": true,
			"sessions": true
		}
	}
]

Fehler:

  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 403 Dem API-Schlüssel fehlt der erforderliche Bereich oder der Organisationszugriff, der Mandant ist inaktiv oder der Tarif blockiert den Dateityp

Mandantenbezogenen API-Schlüssel erstellen

Erfordert einen organisationsbezogenen API-Schlüssel mit Schreibberechtigung. Das Geheimnis wird serverseitig generiert und in der Antwort genau einmal zurückgegeben. Speichern Sie es sicher. Nur der Hash wird gespeichert.

Endpunkt: POST /v1/tenant/{tenantId}/api-keys

Authentifizierung: Organisationsbezogener API-Schlüssel · write Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid

Anfragetext:

{
	"displayName": "string",
	"scope": {
		"read": true,
		"write": true,
		"uploadData": true,
		"sessions": true
	},
	"enabled": true,
	"expiresAt": "2024-03-15T16:30:00Z"
}
Feld Typ Erforderlich Beschreibung
displayName string Ja Maximale Länge: 128
scope object Nein
enabled boolean Nein
expiresAt string Nein Format: date-time

Antwort (201):

API-Schlüssel erstellt, einschließlich des einmalig angezeigten Geheimnisses

{
	"id": "00000000-0000-0000-0000-000000000000",
	"tenantId": "00000000-0000-0000-0000-000000000000",
	"organizationId": "00000000-0000-0000-0000-000000000000",
	"displayName": "string",
	"partialKey": "string",
	"enabled": true,
	"createdAt": "2024-03-15T16:30:00Z",
	"lastUsedAt": "2024-03-15T16:30:00Z",
	"expiresAt": "2024-03-15T16:30:00Z",
	"scope": {
		"read": true,
		"write": true,
		"uploadData": true,
		"sessions": true
	},
	"secret": "string"
}
Feld Typ Erforderlich Beschreibung
id string Ja Format: uuid
tenantId string Ja Format: uuid
organizationId string Ja Format: uuid
displayName string Ja Maximale Länge: 128
partialKey string Ja Maximale Länge: 128
enabled boolean Ja Standard: true
createdAt string Ja Format: date-time
lastUsedAt string Ja Format: date-time
expiresAt string Ja Format: date-time
scope object Ja
secret string Ja Maximale Länge: 128

Fehler:

  • 400 Ungültige Anfrage, z. B. ein ungültiger Filterausdruck, ein Prozess ohne Modell, ein nicht unterstützter Upload-Typ oder ein fehlendes Pflichtfeld
  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 403 Dem API-Schlüssel fehlt der erforderliche Bereich oder der Organisationszugriff, der Mandant ist inaktiv oder der Tarif blockiert den Dateityp

Mandantenbezogenen API-Schlüssel aktualisieren

Erfordert einen organisationsbezogenen API-Schlüssel mit Schreibberechtigung. Die Bereichsfelder werden mit dem gespeicherten Bereich zusammengeführt.

Endpunkt: PUT /v1/tenant/{tenantId}/api-keys/{keyId}

Authentifizierung: Organisationsbezogener API-Schlüssel · write Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid
keyId string path Ja Format: uuid

Anfragetext:

{
	"displayName": "string",
	"scope": {
		"read": true,
		"write": true,
		"uploadData": true,
		"sessions": true
	},
	"enabled": true,
	"expiresAt": "2024-03-15T16:30:00Z"
}
Feld Typ Erforderlich Beschreibung
displayName string Nein Maximale Länge: 128
scope object Nein
enabled boolean Nein
expiresAt string Nein Format: date-time

Antwort (200):

API-Schlüssel aktualisiert

{
	"id": "00000000-0000-0000-0000-000000000000",
	"tenantId": "00000000-0000-0000-0000-000000000000",
	"organizationId": "00000000-0000-0000-0000-000000000000",
	"displayName": "string",
	"partialKey": "string",
	"enabled": true,
	"createdAt": "2024-03-15T16:30:00Z",
	"lastUsedAt": "2024-03-15T16:30:00Z",
	"expiresAt": "2024-03-15T16:30:00Z",
	"scope": {
		"read": true,
		"write": true,
		"uploadData": true,
		"sessions": true
	}
}
Feld Typ Erforderlich Beschreibung
id string Ja Format: uuid
tenantId string Ja Format: uuid
organizationId string Ja Format: uuid
displayName string Ja Maximale Länge: 128
partialKey string Ja Maximale Länge: 128
enabled boolean Ja Standard: true
createdAt string Ja Format: date-time
lastUsedAt string Ja Format: date-time
expiresAt string Ja Format: date-time
scope object Ja

Fehler:

  • 400 Ungültige Anfrage, z. B. ein ungültiger Filterausdruck, ein Prozess ohne Modell, ein nicht unterstützter Upload-Typ oder ein fehlendes Pflichtfeld
  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 403 Dem API-Schlüssel fehlt der erforderliche Bereich oder der Organisationszugriff, der Mandant ist inaktiv oder der Tarif blockiert den Dateityp
  • 404 Ressource nicht gefunden

Mandantenbezogenen API-Schlüssel löschen

Erfordert einen organisationsbezogenen API-Schlüssel mit Schreibberechtigung. Der Schlüssel wird logisch gelöscht und authentifiziert ab diesem Zeitpunkt nicht mehr.

Endpunkt: DELETE /v1/tenant/{tenantId}/api-keys/{keyId}

Authentifizierung: Organisationsbezogener API-Schlüssel · write Bereich

Parameter:

Name Typ Ort Erforderlich Beschreibung
tenantId string path Ja Format: uuid
keyId string path Ja Format: uuid

Antwort (200):

API-Schlüssel gelöscht

{
	"message": "string"
}
Feld Typ Erforderlich Beschreibung
message string Ja

Fehler:

  • 401 Fehlender, ungültiger, deaktivierter oder abgelaufener API-Schlüssel
  • 403 Dem API-Schlüssel fehlt der erforderliche Bereich oder der Organisationszugriff, der Mandant ist inaktiv oder der Tarif blockiert den Dateityp
  • 404 Ressource nicht gefunden