

Von Alexander Luft · JTL-Wawi / API · April 2026
Auf einen Blick
- ✓Ein `401 Unauthorized` bei `Authorization: Wawi
` heißt fast immer: falsche Key-Quelle, fehlende App-Benutzer-Zuweisung oder der REST-API-Dienst im JTL-Administrator läuft gar nicht. Vlarom sieht das Muster regelmäßig bei API-Einrichtungen. - ✓Nach dem Update auf JTL-Wawi 2.0 liefern v2-Endpunkte mit `/v2/` im Pfad `400 UnsupportedApiVersion`. Der saubere Weg ist der `api-version`-Header oder weiter `/v1/`, bis v2 vollständig stabil ist.
- ✓Vlarom-Tipp als JTL Service Partner Gold: Erst den Info-Endpunkt `GET /api/eazybusiness/info` testen. Kommen korrekte Daten zurück, läuft der Dienst und der Fehler liegt in der Auth-Kette.
Die REST API von JTL-Wawi ist technisch solide. Der Einrichtungsprozess hat allerdings mehrere Sicherheitsstufen, die in der Dokumentation nicht immer klar beschrieben sind. Wenn Kunden mit „der API-Key ist doch korrekt, warum geht es nicht?“ zu uns kommen, liegt der Fehler in 90% der Fälle im Registrierungsablauf oder in einem Dienst, der nicht läuft. Das ist in wenigen Minuten behoben, wenn man weiß wo man sucht.
Wie verbreitet ist das Problem — was zeigen Forum-Daten?
Aus der Auswertung mehrerer JTL-Forum-Threads und eigener Projektdaten liegen uns aktive Threads allein zu `401 Unauthorized` und `Authorization: Wawi
Quelle Vlarom-Projektdaten: In den Forum-Threads zu `REST API 401` zeigen sich drei Hauptmuster: (1) App-Benutzer-Zuweisung fehlt beim Registrierungsabschluss, (2) REST-API-Dienst im JTL-Administrator ist angelegt, aber nicht gestartet, (3) nach Wawi 2.0-Update werden v2-Pfade genutzt, die der Server noch nicht kennt. Alle drei Muster lassen sich ohne Neuinstallation lösen.
Diese Faktoren machen aus einem kurzen Einrichtungsprozess eine stundenlange Fehlersuche:
- →Registrierungsablauf hat mehrere Schritte: Die App-Registrierung über POST /api/eazybusiness/v1/authentication liefert Status 201. Das ist aber erst Schritt eins. Ohne Genehmigung in der Wawi-Benutzerverwaltung und Benutzer-Zuweisung bleibt der API-Key wirkungslos.
- →Zwei verschiedene Keys im Umlauf: JTL gibt beim Registrierungsablauf einen App-Registration-Key zurück. Der eigentliche User-API-Key kommt erst beim ersten GET auf /authentication/ im Feld Token.ApiKey. Wer den falschen Key nimmt, bekommt immer 401.
- →v1 und v2 verhalten sich unterschiedlich: Mit /v2/ im URL-Pfad liefert der Server 400 UnsupportedApiVersion, sobald die Wawi-Version v2 noch nicht vollständig unterstützt. Mit dem Header api-version: 2 funktioniert v2-Lesen dagegen auf vielen Installationen. Schreib-Endpunkte in v2 sind noch nicht überall stabil.
- →Dienst-Konfiguration überlebt Windows-Updates nicht immer: Ein Windows-Server-Update stoppt manchmal den REST-API-Dienst im JTL-Administrator. Dann hilft ein manueller Neustart oder die Konfiguration als automatisch startender Windows-Dienst.
Das zentrale Muster: Ein `401 Unauthorized` ist fast nie ein Fehler im API-Key selbst. Er ist ein Signal, dass ein Schritt im Einrichtungsprozess übersprungen wurde oder nach einem Update zurückgesetzt ist.
Die 5 häufigsten Ursachen für 401 Unauthorized
Aus Forum-Threads und Kundenprojekten kristallisieren sich fünf Muster heraus, die den Großteil aller 401-Fehler erklären. Wir gehen sie der Häufigkeit nach durch.
Was du gewinnst, wenn die API sauber läuft
Die Lektion
Vlarom-Erkenntnis aus API-Projekten: Die JTL REST API hat bewusst mehrere Sicherheitsstufen beim Einrichten. Damit bekommt nicht jede beliebige App Zugriff. Wer den Ablauf einmal verstanden hat (Registrierung, Genehmigung, Benutzer-Zuweisung, Key abrufen), hat danach keine Probleme mehr.
Dein 5-Schritte-Plan gegen den 401-Fehler
Der Plan geht von außen nach innen vor: erst prüfen, ob der Dienst läuft, dann die Netzwerkkonfiguration, dann den Auth-Ablauf. So sparst du dir die häufigste Zeitfalle: stundenlang am API-Key schrauben, während der Dienst gar nicht läuft.
Info-Endpunkt testen (5 Minuten)
„Ruf GET /api/eazybusiness/info ohne Authentication-Header auf. Antwortet der Endpunkt und liefert Version sowie Tenant-Name zurück, läuft der Dienst und das Problem liegt in der Auth-Kette. Kommt keine Antwort, ist Schritt 2 zuerst dran. Die JTL-Guide-Seite zur API-Einrichtung beschreibt den Info-Endpunkt als öffentlich erreichbar.“
Dienst-Status im JTL-Administrator prüfen (5 Minuten)
„Öffne den JTL-Administrator, wähle die REST-API-Instanz und prüfe den Status im Tab Dienste. Steht dort nicht Läuft, muss der Dienst manuell gestartet werden. Für dauerhaft stabilen Betrieb: die Instanz mit der Option Als Dienst anlegen konfigurieren, damit Windows-Updates den Dienst nicht stoppen. Standardport ist 5883.“
App-Registrierung und Benutzer-Zuweisung prüfen (10 Minuten)
„Öffne in JTL-Wawi die Benutzerverwaltung und prüfe, ob deine registrierte App einem Benutzer zugewiesen ist. Der Registrierungsstatus muss auf 2 stehen (genehmigt und zugewiesen), nicht auf 1 (genehmigt, aber kein Benutzer). Das ist der häufigste Fehler: App genehmigt, Benutzer-Zuweisung fehlt. Das gibt immer 401, unabhängig vom Key.“
Den richtigen API-Key verwenden (5 Minuten)
„Nach abgeschlossener Registrierung einmalig GET /api/eazybusiness/v1/authentication/ aufrufen. Im Feld Token.ApiKey steht der finale Key für den Authorization-Header als Authorization: Wawi
v1 vs. v2: die richtige Version wählen (5 Minuten)
„Wenn du v2-Endpunkte nutzen willst, verwende den Header api-version: 2 statt /v2/ im URL-Pfad. /v2/ im Pfad liefert auf vielen Installationen noch 400 UnsupportedApiVersion. Für produktive Systeme gilt aktuell: v1-Endpunkte sind stabil und vollständig unterstützt. v2-Lesen funktioniert über den Header, v2-Schreib-Endpunkte sind noch nicht auf allen Wawi-Versionen vollständig stabil.“

