Das REST API-Plugin bietet eine allgemeine HTTP REST-Schnittstelle für die Integration von VTS in externe Anwendungen. Es ist sowohl in WTS Online als auch in WTS Offline verfügbar.
Das REST API-Plugin ist ab WTS-Version 8.30 verfügbar. Die API wird derzeit kostenfrei zur Verfügung gestellt; bitte beachten Sie jedoch, dass sich dieses Preismodell in zukünftigen Versionen ändern kann. Da die API kontinuierlich weiterentwickelt wird, können die Schnittstelle und die Endpunkte in kommenden Versionen angepasst werden, um Funktionalität und Leistung zu optimieren.
Überblick der Funktionalität
Das REST API-Plugin bietet Endpunkte für die Verwaltung von Personendaten, Testergebnissen sowie für die Generierung von Einladungslinks für Online-Testungen (siehe auch: Testdurchführung).
Alle über die REST-API ausgetauschten Daten werden im JSON-Format übertragen, wodurch Kompatibilität und einfache Integration mit modernen Anwendungen gewährleistet sind.
Der Zugriff auf diese Endpunkte erfordert eine Authentifizierung über einen privaten Token, der einem registrierten WTS-Benutzer eindeutig zugewiesen wird. Alle über die REST API durchgeführten Vorgänge werden sicher unter der Identität des zugehörigen Benutzers protokolliert, wodurch Rückverfolgbarkeit und Verantwortlichkeit gewährleistet sind.
Setup und Konfiguration
In WTS online ist die REST-API ohne zusätzliche Konfiguration einsatzbereit. In WTS offline muss das Plugin ordnungsgemäß aktiviert und der Netzwerkzugriff gewährt sein.
Hier finden Sie eine kurze Schritt-für-Schritt-Anleitung zur Konfiguration einer minimalen Arbeitsumgebung. Erweiterte Optionen finden Sie in den folgenden Abschnitten.
1. Passen sie die VIS Konfigurationsdatei an (nur im WTS Offline)
Das REST API-Plugin muss in der VIS Konfigurationsdatei (siehe: Universal-Plugin), aktiviert und konfiguriert werden. Diese befindet sich standardmäßig in C:\Program Files\SCHUHFRIED GmbH\Wiener Testsystem 8\IntegrationService\appsettings.json.
Hinweis: Dies ist der Standard-Installationspfad. Wenn das Wiener Testsystem an einem anderen Ort installiert wurde, kann der tatsächliche Pfad entsprechend abweichen.
Diese Datei enthält die Konfiguration aller verfügbaren VIS-Plugins. Alle für das REST API-Plugin relevanten Einstellungen finden Sie im Abschnitt, der mit "RestApiPlugin" beginnt.
"RestApiPlugin": {
//...
}
1.1. Aktivieren des REST API-Plugins
Um das REST API-Plugin zu aktivieren, setzen Sie Enabled auf true (standardmäßig ist dies bereits aktiviert).
"Enabled": "true",
1.2. (Optional) Einen benutzerdefinierten Port konfigurieren
Wenn ein anderer als der Standardport zum Überwachen eingehender Anfragen verwendet werden soll, muss dies in der Einstellung namens "Url" geändert werden, die sich unter „RestApiPlugin/Kestrel/Endpoints/Http/Url“ und „RestApiPlugin/Kestrel/Endpoints/HttpsInlineCertStore/Url“ befindet, wobei letzteres der https-Endpunkt ist. Bitte beachten Sie, dass der http-Endpunkt immer zum https-Endpunkt weiterleitet.
"RestApiPlugin": {
"Enabled": "true",
"CertificateSearchKind": "FindBySubjectName",
"CertificateSearchValue": "SchuhfriedSelfSignedCertificate",
"Kestrel": {
"EndPoints": {
"Http": {
"Url": "http://localhost:9011"
},
"HttpsInlineCertStore": {
"Url": "https://localhost:9012"
}
}
}
},
1.3. Änderungen anwenden
2. Sicherstellen des Netzwerkzugriffs (nur im WTS Offline)
Der WTS REST API Dienst überwacht standardmäßig den Port 9012. In Umgebungen mit aktiven Firewalls (z. B. Windows Defender) ist dieser Port auf lokalen Datenverkehr beschränkt. Um die Konnektivität für integrierte Anwendungen zu ermöglichen, stellen Sie bitte sicher, dass Ihre Netzwerkregeln den Datenverkehr über Port 9012 zulassen.
Um eine sichere Konfiguration zu gewährleisten, empfehlen wir, den Zugriff auf diesen Port auf bestimmte IP-Adressen zu beschränken, anstatt ihn für das gesamte Netzwerk zu öffnen.
3. Testen des Setups
3.1. Sicherstellen, dass der Dienst läuft
Um sicherzustellen, dass das Plugin funktionsfähig ist, rufen Sie die folgende URL auf: https://{VIS Service host and port}/api:
-
Die URL für WTS online lautet: https://vis.schuhfried.com/api
-
Für WTS offline lautet die URL auf dem Host-Computer: https://localhost:9012/api oder
https://your_fully_qualified_domain_name:9012/api
Wenn die API funktioniert, sollte der Text „Hello from the REST API...“ angezeigt werden.
Als programmatische Schnittstelle ist die REST API für den Zugriff über benutzerdefinierte Client-Anwendungen oder Entwicklungstools wie Postman und cURL ausgelegt. Befolgen Sie die detaillierten Integrationsanleitungen in den folgenden Abschnitten, um Ihre erste Verbindung herzustellen.
2.3. Fehlersuche
Bei allen Problemen können Sie die Protokolldateien auf Hinweise zu möglichen Fehlern überprüfen (siehe: REST API-Plugin | Logging [inlineExtension])
-
Die URL /api kann im Browser nicht aufgerufen werden
-
Eine Firewall blockiert möglicherweise eingehende Verbindungen zum konfigurierten Port. Stellen Sie sicher, dass eingehende Verbindungen auf dem angegebenen Port akzeptiert werden.
-
Überprüfen Sie, ob der konfigurierte Port mit dem in der URL verwendeten Port übereinstimmt
-
Stellen Sie sicher, dass der „WTS Service“ neu gestartet wurde und alle Einstellungen korrekt angewendet wurden
-
-
Nachrichten werden mit den HTTP-Statuscodes 401 oder 403 beendet
-
Stellen Sie sicher, dass die Nachrichten ordnungsgemäß authentifiziert sind (siehe unten)
-
-
Nachrichten werden mit Fehlerstatuscodes beendet
-
Stellen Sie sicher, dass Ihre Daten keine Inkonsistenzen aufweisen, z. B. fehlerhafte Felder oder einen Verweis auf eine nicht vorhandene Testbatterie.
-
Überprüfen Sie die Protokolldateien auf Informationen zu möglichen Problemen.
-
Authentifizierung und Konnektivität
Alle API-Aufrufe müssen mit einem generierten Zugriffstoken (Access Token) authentifiziert werden. Die REST-API unterstützt mehrere Authentifizierungsmethoden und bietet somit Flexibilität für unterschiedliche Integrationsanforderungen:
-
Übergeben Sie das Token im
X-API-KEYHeader -
Verwenden Sie das Token als Bearer-Token im
AuthorizationHeader -
Optional können Sie das Token als Passwortwert in der Basisauthentifizierung verwenden
Wählen Sie die Methode, die den Sicherheits- und Integrationsanforderungen Ihrer Anwendung am besten entspricht.
Der HTTP-Statuscode 401 Unauthorized wird zurückgegeben, wenn ein API-Aufruf ohne gültige Authentifizierung erfolgt. Dies bedeutet, dass das Zugriffstoken fehlt, ungültig ist oder abgelaufen ist.
Erstellen eines Zugriffstokens (access token)
Zugriffstoken für die REST API können direkt im Wiener Testsystem auf der Seite Benutzerdetails generiert werden.
So generieren Sie ein Token:
-
Navigieren Sie zur Seite Benutzerdetails des gewünschten Benutzers.
-
Klicken Sie auf die drei Punkte neben der zugewiesenen Umgebung.
-
Wählen Sie im Menü die Option „API-Zugriffstoken” aus.
-
Es erscheint ein Fenster, in dem ein neues Token generiert werden kann.
-
Klicken Sie auf die Schaltfläche „Zugriffstoken generieren”, um ein neues Token zu erstellen.
Der Token-Wert muss sofort nach der Generierung kopiert werden, da er nicht erneut angezeigt wird.
Es ist nicht möglich, mehrere Tokens für denselben Benutzer zu generieren.
Ablauf und Widerruf von Token
Ein neu generiertes Token ist 12 Monate lang gültig. Nach Ablauf des Tokens kann es nicht mehr zur Authentifizierung verwendet werden und muss durch ein neues ersetzt werden.
WTS bietet keine Token-Rotation mit überlappenden Tokens an.
Ein Token kann in demselben Fenster, in dem es generiert wurde, dauerhaft gelöscht werden. Wenn anschließend ein neues Token erstellt wird, unterscheidet es sich vom vorherigen.
Aufruf / URL der API
Die Basis-URL der REST API lautet: https://{VIS Service host and port}/api:
-
Die URL für WTS online lautet: https://vis.schuhfried.com/api
-
Für WTS offline lautet die URL auf dem Host-Rechner: https://localhost:9012/api oder
https://your_fully_qualified_domain_name:9012/api
OpenAPI Spezifikation (Swagger)
Die verfügbaren Endpunkte und Schemadefinitionen sind in Form einer OpenAPI-Spezifikation (allgemein als Swagger-Datei bezeichnet) dokumentiert. Die tatsächliche Datei für Ihre Konfiguration können Sie über die folgende URL abrufen: https://{VIS Service URL}/swagger/v1/swagger.json
-
Die URL für WTS online lautet: https://vis.schuhfried.com/swagger/v1/swagger.json
-
Für WTS offline lautet die URL auf dem Host-Rechner: https://localhost:9012/swagger/v1/swagger.json oder
https://your_fully_qualified_domain_name:9012/swagger/v1/swagger.json
Während die OpenAPI-Spezifikation alle verfügbaren Endpunkte und deren Datentypen enthält, bieten die folgenden Abschnitte einen Überblick über die Funktionalität und einige zusätzliche Hinweise.
Personenverwaltung
Die Personenverwaltungs-Endpunkte im REST API-Plugin unterstützen die standard HTTP-Methoden: POST, GET, PUT und DELETE, die jeweils bestimmten Vorgängen entsprechen:
-
POST: Erstellt einen neuen Personendatensatz im System unter Verwendung der im Request-Body (im JSON-Format) bereitgestellten Daten. Jede Person wird durch eine eindeutige externe ID identifiziert. Wenn keine externe ID angegeben wird, generiert das System automatisch eine. Die Antwort enthält die vollständigen Daten der neu erstellten Person.
-
GET: Ruft die personenbezogenen Daten einer Person ab, die durch ihre eindeutige externe ID identifiziert wird. Die Antwort enthält den vollständigen Personendatensatz im JSON-Format.
-
PUT: Aktualisiert die Felder einer bestehenden Person, die durch ihre eindeutige externe ID identifiziert wird, basierend auf den im Anfragetext angegebenen Daten. Der aktualisierte Personendatensatz wird in der Antwort zurückgegeben.
-
DELETE: Entfernt die durch die eindeutige externe ID identifizierte Person dauerhaft. Gelöschte Daten können nicht wiederhergestellt werden.
Die Personenverwaltung umfasst zusätzlich einen Endpunkt, der die IDs aller Testsequenzen und abgeschlossenen Ergebnisse zurückgibt, die mit einer bestimmten Person verbunden sind. Auf diese Weise können Kunden effizient feststellen, welche Ergebnisse für den Export oder die weitere Verarbeitung verfügbar sind.
Alle über diese Endpunkte übertragenen Daten sind als JSON formatiert, was Konsistenz und einfache Integration gewährleistet.
Ergebnisverwaltung
Die Ergebnisverwaltungs-Endpunkte unterstützen den Export von Daten in verschiedenen Formaten: PDF, CSV und vorlagenbasierte Word-Reports. Benutzer können Daten für ein einzelnes Ergebnis oder für eine gesamte Testsequenz exportieren. Darüber hinaus können sowohl einzelne Ergebnisse als auch vollständige Testsequenzen über die API gelöscht werden.
Der Exportvorgang ist als zweistufiger asynchroner Vorgang implementiert:
-
Initiierung: Der Client initiiert den Export, indem er das Zielelement und das gewünschte Format angibt. Die API antwortet mit einer eindeutigen Export-ID und beginnt mit der asynchronen Vorbereitung der Daten.
-
Download: Der Client verwendet die Export-ID, um die vorbereitete Datei anzufordern. Wenn die Datei noch nicht bereit ist, gibt die API den HTTP-Statuscode 202 Accepted zurück. Sobald die Datei verfügbar ist, gibt die API den Dateistream zum Herunterladen zurück.
PDF-Exporte von Ergebnisdaten werden unter Verwendung derselben Normen, Sprache und Anzeigeeinstellungen generiert, die für den mit dem Authentifizierungstoken verbundenen Benutzer in der Anwendung oder dem Portal des Wiener Testsystems konfiguriert sind.
Wenn ein PDF mit einer anderen Sprache, Norm oder Anzeigeeinstellung erforderlich ist, kann sich der Benutzer bequem bei der Anwendung anmelden, ein beliebiges Ergebnis desselben Tests öffnen und die Konfiguration anpassen. Das über die API exportierte PDF entspricht vollständig dem, was der Benutzer in der Benutzeroberfläche sieht.
Einladungen zur Testung generieren (Testlink erstellen)
Das REST-API-Plugin enthält einen Endpunkt zum Generieren von Testlinks für die Online Testung. Anhand von Testlinks können Personen eine Testung im WTS im open oder proctored mode durchführen (siehe dazu: Testdurchführung für mehr Informationen). Eine Person, die anhand ihrer externen ID identifiziert wird, kann zu einer bestimmten Testbatterie eingeladen werden.
Zusätzlich kann festgelegt werden, ob das System automatisch eine E-Mail-Einladung an die Person senden soll. Für diese Funktion muss in Offline-Umgebungen ein E-Mail-Server konfiguriert werden (siehe E-Mail-Konfigurationen für Testungen im Open Mode). In WTS online funktioniert sie ohne zusätzliche Konfiguration.
Zugriffskontrolle und Sicherheit
Sicherheitslevel
Die REST-API erzwingt eine Zugriffskontrolle basierend auf der Sicherheitsstufe des authentifizierten Benutzers (siehe: https://schuhfried.atlassian.net/wiki/x/BgBn7w)
-
Benutzer mit der Sicherheitsstufe 0 oder 1 können alle API-Aktionen ausführen, sofern sie nicht durch eine Datentrennung durch die Funktion Abteilungen (siehe: REST API-Plugin | Abteilungen) eingeschränkt sind.
-
Benutzer mit der Sicherheitsstufe 2 können nur neue Personen anlegen und diese zum Testen einladen, einschließlich des Versendens von Einladungs-E-Mails.
-
Benutzer mit der Sicherheitsstufe 3 können neue Personen anlegen und Einladungslinks generieren, aber keine E-Mails versenden.
|
Aktion |
SL0 |
SL1 |
SL2 |
SL3 |
|---|---|---|---|---|
|
Neue Person generieren |
|
|
|
|
|
Testlink erstellen |
|
|
|
|
|
Testlink erstellen und per Email senden |
|
|
|
|
|
Abrufen/Editieren/Löschen von Personen |
|
|
|
|
|
Abrufen/Editieren/Löschen von Ergebnissen |
|
|
|
|
Abteilungen
Die REST-API berücksichtigt die Datentrennung auf Basis der Funktion Abteilungen. Wenn ein Benutzer einer Abteilung zugewiesen ist und die Datentrennung aktiviert ist, kann er nur auf Personen und Ergebnisse innerhalb derselben Abteilung zugreifen. Solche Benutzer können jedoch weiterhin neue Personen in jeder Abteilung anlegen. Siehe auch: Benutzer hinzufügen und Zugriffsrechte beschränken
HTTPS
Die gesamte Kommunikation mit der WTS REST API muss über HTTPS erfolgen. Dadurch wird sichergestellt, dass die Daten während der Übertragung sicher verschlüsselt werden. Alle über HTTP gestellten Anfragen werden aus Sicherheitsgründen automatisch zu HTTPS umgeleitet.
Umgang mit Fehlern
Die WTS REST API verwendet für alle Antworten ein Ergebnis-Muster. Jeder API-Aufruf gibt einen HTTP-Statuscode 200 OK zurück, unabhängig davon, ob der Vorgang erfolgreich war oder nicht.
Die Antwort enthält ein Feld "hasError", das angibt, ob während der Verarbeitung ein Fehler aufgetreten ist. Wenn ein Fehler vorliegt, wird im Feld "message" eine kurze Beschreibung angezeigt. Wenn kein Fehler aufgetreten ist, werden die tatsächlichen Ergebnisdaten im Ergebnisobjekt zurückgegeben.
Beispiel
{
"hasError": true,
"message": "Person not found",
"result": null
}
Beispiele
Dieser Abschnitt enthält Beispiele für API-Aufrufe mit Postman, mit denen Sie die Funktionen der REST-API schnell testen und erkunden können. Verwenden Sie diese Beispiele, um die Authentifizierung zu überprüfen, mit Endpunkten zu interagieren und die Formate für Anfragen und Antworten zu verstehen.
Authentifizierung
Wählen Sie in der Registerkarte „Authentifizierung“ des Postman-Arbeitsbereichs Auth Type --> API Key aus. Fügen Sie das Token in das Wertefeld ein und geben Sie den Schlüssel als X-API-KEY an.
Neue Person anlegen
Führen Sie eine POST Anfrage an {{baseUrl}}/Persons aus.
Anfragetext
{
"firstName": "Max",
"lastName": "Mustermann",
"gender": 3,
"dayOfBirth": "2000-01-01",
"registrationDate": "2025-10-16",
"educationLevel": 0,
"language": "de-DE",
"email": "max.mustermann@schuhfried.com",
"department": null,
"scoringCode": "Custom code 123",
"testBatteryForDirectTesting": null,
"personalId": "123456788",
"externalId": "9004185623"
}
Erwartete Antwort
{
"hasError": false,
"message": null,
"result": {
"firstName": "Max",
"lastName": "Mustermann",
"gender": 3,
"dayOfBirth": "2000-01-01",
"registrationDate": "2025-10-16",
"educationLevel": 0,
"language": "de-DE",
"email": "max.mustermann@schuhfried.com",
"department": null,
"scoringCode": "Custom code 123",
"testBatteryForDirectTesting": null,
"personalId": "123456788",
"externalId": "9004185623"
}
}
Person löschen
Führen Sie eine DELETE Anfrage an {{baseUrl}}/Persons{{externalId}} durch.
Das Löschen einer Person über die REST-API führt auch zum dauerhaften Löschen aller zugehörigen Testergebnisse. Dieser Vorgang ist irreversibel und die Daten können nicht wiederhergestellt werden.
Personen zu einer Onlinetestung einladen
Führen Sie eine POST Anfrage an {{baseUrl}}/Persons/invite durch. Wenn die POST Anfrage erfolgreich ist, wird die E-Mail mit der Einladung zur Testung sofort versendet.
Anfragetext
{
"externalId":"9004185623",
"testBattery":"01_prio_bfsi",
"sendEmail":"true",
"testLanguage":"de-DE"
}
Erwartete Antwort
{
"hasError": false,
"message": null,
"result": {
"externalId": "9004185623",
"invitationLink": "https://vtscloud-test-tp.azurewebsites.net/Player?X4Dtf44H",
"sentEmailTimestamp": "2025-10-17T12:08:20.6746208+00:00",
"email": "max.mustermann@schuhfried.com"
}
}
Ergebnisse einer Person abrufen
Führen Sie eine GET Anfrage an {{baseUrl}}/Persons/{{external id}}/results durch. Die Antwort enthält den Status der Tests in der Testsequenz, die Testsequenz-ID ("testSequenceId") und die Result-IDs ("resultId"). Die Testsequenz-ID und die Result-IDs können verwendet werden, um die Ergebnisse (z. B. als PDF) über den Ergebnisverwaltungs-Endpunkt abzurufen (siehe unten).
Erwartete Antwort
{
"hasError": false,
"message": null,
"result": {
"personResults": [
{
"testSequenceId": "7c76a8ee-3c73-41cb-8e18-365542f3b902",
"dateOfTestAdministration": "2025-10-16T17:07:56.49Z",
"testLabel": "01_prio_bfsi",
"items": [
{
"resultId": "f98e81d7-2157-4bb3-9712-378204f58eae",
"dateOfTestAdministration": "2025-10-16T17:11:34.393Z",
"testLabel": "PRIO/S1",
"status": "Completed"
},
{
"resultId": "7f887557-cf6c-4611-bd92-10c7a46054ff",
"dateOfTestAdministration": "2025-10-16T17:12:01.28Z",
"testLabel": "BFSI/S1",
"status": "Completed"
}
]
}
]
}
}
Einzelnes Ergebnis als PDF exportieren
Der Export von Daten erfolgt in zwei Schritten. Zunächst wird eine Export-ID generiert, die das Backend dazu veranlasst, mit der Erstellung der Datei zu beginnen. Anschließend wird ein zweiter Aufruf zum Herunterladen der Datei durchgeführt. Wenn die Datei zum Zeitpunkt des zweiten Aufrufs noch nicht fertig ist, gibt der Endpunkt den HTTP-Statuscode 202 Accepted zurück, was bedeutet, dass die Anfrage nach einiger Zeit wiederholt werden sollte.
Export initiieren
Führen Sie eine POST Anfrage an {{baseUrl}}/Results/export/pdf durch
Anfragetext
Verwenden Sie dazu die Result-ID eines einzelnen Testergebnisses. Diese erhalten Sie aus der Antwort der Anfrage an den Endpunkt /Persons/{{external id}}/results (siehe oben).
{
"resultId": "f98e81d7-2157-4bb3-9712-378204f58eae"
}
Erwartete Antwort
{
"hasError": false,
"message": null,
"result": {
"resultId": "f98e81d7-2157-4bb3-9712-378204f58eae",
"exportId": "ScoringReport_bfbd70d5-2a20-4481-af9e-39fe7c835598"
}
}
Herunterladen der Datei
Führen Sie eine GET Anfrage an {{baseUrl}}/export/{{exportId}} durch, wo die {exportId} jener Wert ist, den Sie aus der Anfrage zur Initiierung des Exports an den Endpunkt /Results/export/pdferhalten haben.
Wenn die Datei noch nicht vorbereitet ist, gibt der Endpunkt den HTTP-Code 202 Acceptedzurück.
Wenn die Datei fertig vorbereitet ist, überträgt der Endpunkt die PDF-Datei für das Testergebnis. Der Response-Header „Content-Disposition“ definiert den Dateinamen.
Gesamte Testsequenz als PDF exportieren
Der Export von Daten erfolgt in zwei Schritten. Zunächst wird eine Export-ID generiert, die das Backend dazu veranlasst, mit der Erstellung der Datei zu beginnen. Anschließend wird ein zweiter Aufruf zum Herunterladen der Datei durchgeführt. Wenn die Datei zum Zeitpunkt des zweiten Aufrufs noch nicht fertig ist, gibt der Endpunkt den HTTP-Statuscode 202 Accepted zurück, was bedeutet, dass die Anfrage nach einiger Zeit wiederholt werden sollte.
Export Initiieren
Führen Sie eine POST Anfrage an{{baseUrl}}/TestSequence/export/pdf durch.
Anfragetext
Verwenden Sie die Testsequenz-ID ("testSequenceId"), die Sie aus der Antwort der Anfrage an den Endpunkt /Persons/{{external id}}/results erhalten haben.
Für den Wert „scoringMethod“ stehen Ihnen mehrere Optionen zur Verfügung, die je nach den von Ihnen für die Testdurchführung eingesetzten Testbatterien verwendet werden können:
-
Verwenden Sie
"scoringMethod": "Individual Scoring"für Testsequenzen, die mit benutzerdefinierten Testbatterien durchgeführt werden, oder für Testsequenzen, die ohne Testbatterie durchgeführt wurden. -
Verwenden Sie den Namen einer benutzerdefinierten Auswertungsmethode für den Fall, dass Sie Testbatterien verwenden, die eine von SCHUHFRIED erstellte Auswertung verfügen (BATEVA). Den Namen der benutzerdefinierten Auswertungsmethode finde Sie auf der Seite Testergebnisdetails im WTS (siehe Screenshot unten).
-
Verwenden Sie den Namen der Auswertungsmethode einer SFS Test Solution, falls Sie diese verwenden, wie Sie sie auf der Seite Testergebnisdetails im WTS sehen.
Beispiel
{
"testSequenceId": "7c76a8ee-3c73-41cb-8e18-365542f3b902",
"scoringMethod": "Individual Scoring"
}
Erwartete Antwort
{
"hasError": false,
"message": null,
"result": {
"testSequenceId": "7c76a8ee-3c73-41cb-8e18-365542f3b902",
"scoringMethod": "Individual scoring",
"exportId": "ScoringReport_2d323428-3751-4649-a65c-84d875cf9727"
}
}
Herunterladen der Datei
Führen Sie die zweite Anfrage aus, um die exportierte Datei, wie im Abschnitt Einzelnes Ergebnis als PDF exportieren beschrieben, herunterzuladen (sieheREST API-Plugin | Herunterladen der Datei).
Exportieren der Daten im CSV Format
Der Export von Daten erfolgt in zwei Schritten. Zunächst wird eine Export-ID generiert, die das Backend dazu veranlasst, mit der Erstellung der Datei zu beginnen. Anschließend wird ein zweiter Aufruf zum Herunterladen der Datei durchgeführt. Wenn die Datei zum Zeitpunkt des zweiten Aufrufs noch nicht fertig ist, gibt der Endpunkt den HTTP-Statuscode 202 Accepted zurück, was bedeutet, dass die Anfrage nach einiger Zeit wiederholt werden sollte.
Initiieren des Exports
Führen Sie eine POST Anfrage an {{baseUrl}}/Results/export/csv durch.
Anfragetext
Verwenden Sie die Result-ID eines einzelnen Ergebnisses, welche Sie aus der Antwort der Anfrage an /Persons/{{external id}}/results erhalten.
{
"resultId": "f98e81d7-2157-4bb3-9712-378204f58eae"
}
Erwartete Antwort
{
"hasError": false,
"message": null,
"result": {
"resultId": "f98e81d7-2157-4bb3-9712-378204f58eae",
"exportId": "ExportTestResultsCSVWithSystemProfile_92add846-8630-4bf5-af1e-4240e04ed651"
}
}
Herunterladen der Datei
Führen Sie die zweite Anfrage aus, um die exportierte Datei, wie im Abschnitt Einzelnes Ergebnis als PDF exportieren beschrieben, herunterzuladen (sieheREST API-Plugin | Herunterladen der Datei).
Exportieren eines Ergebnisses oder einer Testsequenz mit einem Word Report
Der Export von Daten erfolgt in zwei Schritten. Zunächst wird eine Export-ID generiert, die das Backend dazu veranlasst, mit der Erstellung der Datei zu beginnen. Anschließend wird ein zweiter Aufruf zum Herunterladen der Datei durchgeführt. Wenn die Datei zum Zeitpunkt des zweiten Aufrufs noch nicht fertig ist, gibt der Endpunkt den HTTP-Statuscode 202 Accepted zurück, was bedeutet, dass die Anfrage nach einiger Zeit wiederholt werden sollte.
Initiieren des Exports
Führen Sie eine POST Anfrage an {{baseUrl}}/results/export/word-report durch um ein einzelnes Ergebnis als Word Report zu exportieren, oder an {{baseUrl}}/api/TestSequence/export/word-report um eine gesamte Testsequenz zu exportieren.
Um einen Word-Report über die REST API zu erstellen, müssen Sie entweder eine Result-ID oder eine Testsequenz-ID zusammen mit der Scoringmethode und dem Namen der Word Report Vorlage angeben. Für weitere Informationen zu Word Reports siehe: Erstellen/Importieren/Bearbeiten von Word-Reports.
Sowohl die Scoringmethode als auch den Namen der Vorlage finden Sie im Wiener Testsystem, wenn Sie einen Word-Report über die Benutzeroberfläche erstellen.
Anfragetext bei Export eines einzelnen Ergebnisses
{
"resultId": "7f887557-cf6c-4611-bd92-10c7a46054ff",
"scoringMethod": "Individual Scoring",
"wordReport": "BFSI_en-GB"
}
Anfragetext bei Export einer Testsequenz
{
"testSequenceId": "A136FE48-1CA6-41FB-9DD2-620D9D92B4B8",
"scoringMethod": "Pilots",
"wordReport": "Pilot report template"
}
Erwartete Antwort
{
"hasError": false,
"message": null,
"result": {
"resultId": "7f887557-cf6c-4611-bd92-10c7a46054ff",
"wordReport": "BFSI_en-GB",
"scoringMethod": "Individual scoring",
"exportId": "WordReport_2609fddd-6311-4306-a00d-382faa91d9a1"
}
}
Herunterladen der Datei
Führen Sie die zweite Anfrage aus, um die exportierte Datei, wie im Abschnitt Einzelnes Ergebnis als PDF exportieren beschrieben, herunterzuladen (sieheREST API-Plugin | Herunterladen der Datei).
Löschen eines Testergebnisses
Führen Sie eine DELETE Anfrage an {{baseUrl}}/Results/{{result id}} durch, wo die Result-ID eines einzelnen Testergebnisses angeführt ist, die Sie aus der Antwort der Anfrage /Persons/{{external id}}/results erhalten.
Wenn der letzte Test der Sequenz gelöscht wird, wird die gesamte Sequenz automatisch gelöscht.
Löschen einer Testsequenz
Führen Sie eine DELETE Anfrage an {{baseUrl}}/TestSequence/{{sequence id}} durch, wo die sequence id der Testsequenz-ID entspricht die Sie aus der Antwort der Anfrage /Persons/{{external id}}/results erhalten.
Logging
Das VIS und das REST API-Plugin generieren Protokolldateien (Log-Dateien), die zur Analyse ihrer Funktionalität verwendet werden können. Diese Daten werden in den folgenden Protokolldateien aufgezeichnet:
C:\ProgramData\Schuhfried\Logs\VTS.Integration.Service.log
Bitte beachten Sie: Das Verzeichnis C:\ProgramData ist standardmäßig ausgeblendet. Sie können ausgeblendete Elemente in Ihrem Windows Explorer einblenden oder einfach den Pfad zur Datei in die Adressleiste einfügen.