x-session übergeben wird. Alle Endpunkte setzen deshalb eine gültige Session voraus.
Unterstützte Methoden
Angabe aller unterstützten Methoden.Grundkonzept
Zuordnung zu den Shopaktionen
Die schreibenden Endpunkte führen intern dieselben Shop-Aktionen aus wie die Formulare im Template. Die Fehlercodes stammen daher aus diesen Aktionen. Ihre Fehlertexte pflegen Sie in der Konfiguration unter actions - Testmodus.Antwort bei Erfolg
Alle vier Endpunkte antworten bei Erfolg mit dem Status 200 und dem aktuellen Zustand des Testmodus. Der Aufbau entspricht dem Modul $wsTestMode.Schalter searchTestApi
Der Schalter searchTestApi verändert den Shop selbst nicht. Er ist lediglich ein Signal an Ihre Storefront. Anhand seines Werts entscheidet die Storefront, ob sie die Test-API oder die produktive API der WEBSALE Suche anspricht.
Der Shop ruft die WEBSALE-Suche nicht selbst auf. Stattdessen speichert er den Schalter nur in der Session und gibt ihn in der Antwort weiter, damit Ihre Storefront darauf reagieren kann. Die Umschaltung auf die Test-API setzen Sie in Ihrer Storefront um.
Allgemeine Antworten
Methoden für den Testmodus
GET testMode/status
Folgender Aufruf liefert den aktuellen Zustand des Testmodus für die Session.Parameterübersicht
Header-Parameter
Beispiel-Response
POST testMode/activate
Mit dem folgenden Aufruf aktivieren Sie den Testmodus für die Session. Dabei können Sie optional das erweiterte Debugging, die Simulation fehlgeschlagener Zahlungen sowie das Signal für die Test-API der WEBSALE-Suche einschalten. Der Aufruf legt den Startzustand des Testmodus fest. Schalter, die Sie nicht mitsenden, sind anschließend aus. Wenn der Testmodus für die Sitzung bereits aktiv ist, behalten nicht mitgesendete Schalter ihren bisherigen Wert.Beispiel-Request
Parameterübersicht
Header-Parameter
Body-Parameter
Beispiel-Response
Fehlercodes
Die Sperre gilt für die IP-Adresse, nicht für die Session. Eine neue Session hebt sie deshalb nicht auf. Während der Sperre lehnt der Shop auch ein richtiges Passwort mit
tooManyAttempts ab.POST testMode/deactivate
Folgender Aufruf deaktiviert den Testmodus für die Session. Dabei setzt der Shop die Werteactive, debug, makePaymentFail und searchTestApi auf false zurück. Ein Request-Body ist nicht erforderlich.
Parameterübersicht
Header-Parameter
Beispiel-Response
POST testMode/update
Folgender Aufruf ändert die Schalterdebug, makePaymentFail und searchTestApi, ohne den Testmodus zu verlassen. Voraussetzung ist, dass der Testmodus für die jeweilige Session zuvor mit dem Passwort aktiviert wurde.
Der Aufruf ändert ausschließlich die Schalter, die Sie im Request mitsenden. Nicht genannte Schalter behalten ihren bisherigen Wert. Somit sind alle Schalter optional.
Beispiel-Request
Dieser Request schaltetdebug aus und lässt makePaymentFail und searchTestApi unverändert.
Parameterübersicht
Header-Parameter
Body-Parameter
Mit
testMode/update werden nur die Schalter geändert, die Sie mitsenden. Um einen Schalter auszuschalten, senden Sie ihn ausdrücklich mit dem Wert false. Ihn wegzulassen bedeutet „nicht ändern”. Dadurch bleiben bestehende Integrationen auch dann unverändert lauffähig, wenn später weitere Schalter hinzugefügt werden.Für das Formular auf der Testmodus-Seite des Shops gilt das nicht. Die dort verwendete Aktion TestModeChange setzt beim Speichern immer alle Schalter. Der Grund ist, dass der Browser eine nicht angehakte Checkbox gar nicht erst mit schickt. Ein Schalter, der im Formular nicht angehakt ist, ist nach dem Speichern also aus.
Beispiel-Response
Die Antwort zeigt den Zustand nach dem Beispiel-Request. Nurdebug hat sich geändert.
Fehlercodes
Übergang in den Bestellablauf
Wenn Sie aus der Storefront über session/prepareRedirect in einen Bestellablauf des Template-Themes weiterleiten, bleibt der Testmodus erhalten, weil der Shop die Session übernimmt. Für den weiteren Ablauf gilt:- Bestellungen erhalten den Verifizierungsstatus „Test“. Sie erkennen sie in der Bestellübersicht im Admin Interface und können über die Admin-Interface-API nach dem Feld
verificationStatusfiltern. - Ist
makePaymentFaileingeschaltet, laufen Zahlungen auch im Bestellablauf in den Fehlerfall.
Weiterführende Links
- $wsTestMode: Zustand des Testmodus im Template abfragen.
- TestMode-Aktionen: Testmodus über Formulare im Template steuern.
- actions - Testmodus: Fehlertexte der Testmodus-Aktionen.
- general.testMode: Passwort, Template und Sperre bei fehlgeschlagenen Passworteingaben.
- Storefront API Session-Handling: Session erstellen und an das Template-Theme übergeben.
- Search API: Schnittstelle der WEBSALE Suche.
