Swagger
In Swagger sind alle Endpunkte sowie Models beschrieben. Jeder Endpunkt lässt sich testen, indem dieser aufgeklappt und auf "Try it out" gedrückt wird. Anschliessend müssen die notwendigen Parameter ausgefüllt werden.
https://<CMI API>:<Port>/<Mandant>/swagger/index.html
Swagger einer Gruppe ist erreichbar unter:
https://<CMI API>:<Port>/<Mandant>/groups/<Gruppenname>/swagger/index.html
In Swagger sind mehrere Definitionen vorhanden, welche über das Dropdown ausgewählt werden können:
- CMI API Model: Swaggerdefinition für die generische API mit den ausgewählten Typdefinitionen
- CMI API Process: Swaggerdefinition für die Prozess-Layer. Jeder Layer hat dabei seine eigene Definition.
- CMI API Debug: Swaggerdefinition für Debugging-Endpunkte wie zum Beispiel "Info"
Authentifizierung
Damit die API verwendet werden kann, braucht es ein Token. Wenn man ein Bearer Token beim STS bezogen hat, so kann
unter Authorize
dieses Token eingefügt werden.
Achtung! Vor dem Token muss zwingend "Bearer" stehen.
Swagger setzt denn Standart RFC6749 nicht korrekt um daher muss bei der verwendung von oauth2 clientCredentials die client_id und das client_secret url kodiert werden. Dafür kann z.B. urlencoder.org verwendet werden.
OpenAPI Definition
Über Swagger kan man sich auch ein OpenAPI Json-File generieren. Dies erreicht man, indem man das swagger.json öffnet:
Über den Swagger-Editor www.editor.swagger.io kann man sich diverse Clients generieren lassen. hat Kontextmenü
Debug-Endpoint
Jeder Mandant und jede Gruppe stellt Debug-Endpoints zur Verfügung. Um die Swagger-Definition für den Debug-Endpoint einer bestimmten Gruppe zu öffnen, kann die "CMI API Debug" im entsprechenden Swagger nachgeschlagen werden.
Info
GET Info
Dieser Endpoint gibt die aktuelle STS-Konfiguration des Mandanten zurück.
GET Info/version
Dieser Endpoint gibt die Version der CMI API zurück.
State
GET State/monitoring
Hier werden Monitoring-Daten für jede aufgerufene Anfrage bereitgestellt. Pro Anfrage werden die folgenden Informationen angezeigt:
- Request: Die vollständige URL
- Method: Die HTTP-Methode
- Median: Der Median der Anfragezeiten
- Average: Der Durchschnitt der Anfragezeiten
- TotalRequest: Die Anzahl der Anfragen
Die angezeigten Anfragen beziehen sich auf die letzten Minuten, wie in
der Konfiguration unter ClearMonitoringDataAfterXMinutes
festgelegt.
GET State/throttling
Hier werden alle Anfragen aufgeführt, die aufgrund des Throttle-Mechanismus blockiert wurden.
Die angezeigten Anfragen beziehen sich auf die letzten Minuten, wie in
der Konfiguration unter ClearMonitoringDataAfterXMinutes
festgelegt.