API 2.1 für OnPrem?

Care21

Sehr aktives Mitglied
1. Februar 2022
140
79
Moin!
Die DevDoc für OnPrem wurde seit 2.0 / 2.1 entfernt. Bedeutet dies, dass es keine OnPrem Version gibt für die REST API 2.0/2.1?
Geht alles nur noch über den JTL Hub?

Bin da tatsächlich etwas verwirrt - auch mangels Kommunikation.
Vielen Dank falls jemand die v2 API nutzt :D

VG
 

Morimus

Sehr aktives Mitglied
16. Mai 2019
607
131
Vielen Dank falls jemand die v2 API nutzt

Moin,
ich hatte kürzlich mit dem JTL-Support telefoniert.
Dabei ging es unter anderem um die neue API.

Mir wurde nahegelegt, mich künftig auf die neue JTL Cloud API zu fokussieren.

Abhängig davon, was du am Ende erreichen möchtest, ist die OnPrem API aber nicht als „deprecated“ zu betrachten.
Sie ist weiterhin nutzbar und für lokale Wawi-nahe Prozesse auch nach wie vor relevant.
Nach meinem Verständnis wird es aber eher keine OnPrem API 2.0 mehr geben.

Wenn du möglichst zukunftssicher entwickeln möchtest, würde ich daher von vornherein die JTL Cloud API nutzen, also über den Hub bzw. das Partner Portal eine App registrieren.
Gerade wenn man sich Themen wie JTL Shipping 2.0 und die künftige API-Strategie anschaut, ergibt es meiner Meinung nach sehr viel Sinn, direkt auf die Cloud API zu setzen.
 

Care21

Sehr aktives Mitglied
1. Februar 2022
140
79
Im großen und ganzen möchte ich eigentlich nur Lieferscheine quittieren / bestätigen per Package Data. Aber der Endpunkt scheint in v1 entweder buggy oder defekt zu sein.
Müsste ich mal in Ruhe austesten. Vielen Dank dir. :)
 

Morimus

Sehr aktives Mitglied
16. Mai 2019
607
131
Im großen und ganzen möchte ich eigentlich nur Lieferscheine quittieren / bestätigen
Ich weiß nicht genau, was du in dem Zusammenhang mit „bestätigen“ meinst.

Wenn du damit meinst, den Auftrag bzw. den Lieferschein wirklich als versendet zu setzen, glaube ich nicht, dass das über die OnPrem API v1 sauber möglich ist.
Zumindest wirkt der Package-Data-Endpunkt dort eher so, als würde man Paketdaten wie Trackingnummer, Versanddatum oder Kommentar übertragen, aber nicht zwingend den kompletten Versandabschluss auslösen.

Die neue JTL Cloud API v2 sieht dafür deutlich passender aus. Dort gibt es den Endpunkt:
POST /v2/package/deliver

Der heißt in der Doku ausdrücklich „Delivers an existing Package“ und nimmt unter anderem packageId, trackingCode und shippingDate entgegen.

Das klingt für mich eher nach dem, was du suchst. Ich würde daher v1 zwar einmal gegenprüfen, aber wenn der Endpunkt dort ohnehin hakelig ist, würde ich mir direkt die Cloud API v2 anschauen.
 
  • Ich liebe es
Reaktionen: Care21

Care21

Sehr aktives Mitglied
1. Februar 2022
140
79
Kurze Frage an dich: Wo finde ich (eindeutig) die Tenant-ID? Meines Wissens nach benötige ich die doch bereits fürs Auth?
 

Morimus

Sehr aktives Mitglied
16. Mai 2019
607
131
Die tenantId erhältst du offiziell aus dem Session Token, das dein Frontend über die AppBridge mit appBridge.method.call('getSessionToken') anfordert.

Dein Backend verifiziert dieses Token mithilfe der öffentlichen Schlüssel von JTL, also JWKS, und liest anschließend die tenantId aus dem Payload aus.
Diese verwendest du dann bei API-Aufrufen im Header X-Tenant-ID.

Wenn du den offiziellen Weg gehst, musst du dafür natürlich entsprechend etwas bauen.

So viel zum offiziellen Weg.

Pragmatisch geht es aber auch einfacher.
JTL sendet die Tenant-ID an mehreren Stellen über die API mit.

Wenn du deine App im Hub installiert hast, kannst du im Browser die Entwicklertools öffnen und im Netzwerk-Tab nach folgendem Request suchen:

GET https://api.jtl-cloud.com/account/tenants

In der Antwort findest du die Tenant-ID.
Für X-Tenant-ID ist dabei das Feld id relevant.

Ob das so als offizieller Weg gedacht ist, weiß ich nicht.
Für einen schnellen Test lässt sich die Tenant-ID darüber aber eindeutig ermitteln.
 

Care21

Sehr aktives Mitglied
1. Februar 2022
140
79
Hallo zusammen,

ich versuche aktuell, unsere Cloud-App (Manifest v1.0.3, 24 Scopes, korrekt installiert + konsentiert) gegen die JTL Cloud REST API zu schreiben — konkret den Endpoint POST
/erp/v2/deliveryNotes/{id}/packages, um Tracking-Codes aus unserem externen Logistik-Dienstleister zurück in die Wawi zu pushen.

Stoße aber konsequent auf folgenden Fehler bei jedem v2-Aufruf, der Versand-Daten zurückgeben würde:

{
"Status": 400,
"Detail": "No seed found for key type JTL.Data.Contracts.Keys.VersandKey.
Please ensure that the key seed data is initialized.",
"Instance": "/api/Mandant_2/v2/deliveryNotes"
}

Egal ob:
- GET /v2/deliveryNotes ohne Filter
- mit ?salesOrderNumber=… (wenn der Auftrag existiert)
- mit ?customerId=…
- mit ?salesOrderNumberId=<UUID>
- mit oder ohne x-appid/x-appversion-Header
- mit oder ohne pageSize

→ immer derselbe Seed-Fehler. Einzige Ausnahme: Wenn die Query ein leeres Resultset zurückgibt (z.B. ?salesOrderNumber=BLABLA-EXISTIERT-NICHT), kommt HTTP 200 mit totalItems: 0. Klingt für mich danach, dass
der Serializer beim Versuch, eine VersandKey-UUID aufzulösen, an einer leeren Mapping-Tabelle scheitert.

Was sonst klappt (zur Eingrenzung):
- ✅ REST V1 — GET /v1/deliveryNotes/<int-id> und …/packages funktionieren komplett (int-IDs, kein UUID-Seed nötig)
- ✅ GraphQL — QuerySalesOrders, QueryItems, QueryCustomers alle ok
- ✅ GraphQL Mutations — Permission ist nach Re-Install jetzt da (kein AppNotAllowed mehr)
- ❌ aber CreateDeliverPackage braucht packageId als UUID, und die UUID kriege ich nur über /v2/deliveryNotes/.../packages — was am Seed-Fehler scheitert. Chicken-and-Egg.

Frage an die Runde:
1. Ist das ein bekannter Init-Bug bei frisch installierten Cloud-Apps?
2. Hat jemand das schon gehabt und kennt einen Trigger, der den Seed-Build serverseitig anstößt? (Erneute Wawi-Lizenz-Refresh? Specific First Call gegen einen anderen Endpoint?)
3. Oder ist das ein klarer JTL-Support-Fall und ich mach mir umsonst Hoffnung auf eine self-service Lösung?

Würde mich freuen, wenn jemand von euch das gleiche Phänomen kennt oder einen Workaround hat.

Danke!
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu Ab welcher JTL Wawi Version ist der OnPremise REST API Endpoint POST /v2/returns oder POST /v1/returns für Create Return verfügbar? Schnittstellen Import / Export 0
REST API (eazybusiness): POST/PATCH /items/{id}/suppliers lehnt jeden Payload mit HTTP 400 ab JTL-Wawi 2.0 0
JTL API 2.0 Verbinden - HILFE GESUCHT JTL-Wawi 2.0 7
Neu DHL 4.0 API Fehler - Could not cast or convert from System.Int64 JTL-ShippingLabels - Fehler und Bugs 7
Neu JTL-Wawi REST API (Beta): HTTP 402 "Zahlung erforderlich" auf allen Endpunkten trotz gebuchter Beta-Lizenz Schnittstellen Import / Export 2
Neu [API] Zahlungen bei salesOrders verbuchen Schnittstellen Import / Export 0
OnPremise API: Keine Daten aus API-Anbindung mittels externer APP JTL-Wawi 1.11 32
API-Endpunkt Rechnungskorrekturen-PDF JTL-Wawi 2.0 1
Neu Anpassung DPD API JTL-ShippingLabels - Ideen, Lob und Kritik 3
Neu JTL REST API (on premise) - welche API Version ab welcher Wawi-Version? Changelog? Schnittstellen Import / Export 0
Bessere Greyhound-Anbindung ab 1.10 - JTL-API-Pflicht? JTL-Wawi 1.10 12
In Wawi 2.0.6 Kommentar 1 und Kommentar 2 für Lagerbestände von Kindartikeln desselben Vaterartikels nicht mehr über Vaterartikel pflegbar JTL-Wawi 2.0 0
Neu Identische Aufträge übernimmt nur für einen Auftrag die Kartonage JTL-WMS / JTL-Packtisch+ - Fehler und Bugs 0
Neu Merkmal oder Attribut für Produktdetailseite und Strukturierte Daten Betrieb / Pflege von JTL-Shop 1
Neu Plugin: Infinite Scroll / „Mehr laden“ für JTL-Shop 5 – einmalige Lizenz, kein Abo Plugins für JTL-Shop 0
Exportvorlage ZUGFeRD für Deutsche Bahn JTL-Wawi 1.11 1
Neu System für Ebay Artikelmerkmale - warum ist das so wichtig? User helfen Usern - Fragen zu JTL-Wawi 0
Neu Kapazitäten für anstehenden Auftragsspitzen Dienstleistung, Jobs und Ähnliches 1
Neu Ebay.com: Mehrfaches Dropdown-Menü für den Artikelzustand eBay-Anbindung - Fehler und Bugs 0
Neu Shipping 2.0 ist ein Grund für kleine Shops JTL zu verlassen bzw. gar nicht erst mit JTL anzufangen JTL-ShippingLabels - Ideen, Lob und Kritik 24
Wawi nur für ebay JTL-Wawi 2.0 2
Neu Exportvorlage für Shopify Schnittstellen Import / Export 1
Versandmail für Kaufland abstellen kaufland.de - Anbindung (SCX) 6
Neu 💚 Plugin: DZM Bonus Plus - das Treueprogramm für deinen JTL-Shop Plugins für JTL-Shop 8
Neu Stücklisten auf Vorlagen für Picklisten formatieren User helfen Usern - Fragen zu JTL-Wawi 0
Neu 🔥 𝐍𝐮𝐫 𝟓× verfügbar 𝟓𝟎% 𝐑𝐚𝐛𝐚𝐭𝐭 auf dein Besucherticket für die kommende JTL-Connect am 02.10.2026 in Köln Dienstleistung, Jobs und Ähnliches 0
Neu 💚 Plugin: DZM Agentic Plus - dein Shop wird für KI-Agenten lesbar und abfragbar Plugins für JTL-Shop 0
Neu Abgleiche für zweiten Mandanten bei Worker-Neustart deaktiviert JTL-Wawi - Fehler und Bugs 0
Neu Eigenen JTL-SCX-Marktplatzkanal für Multi-Vendor-Marktplatz erstellen – Erfahrungen gesucht Einrichtung und Installation von JTL-eazyAuction 3
Neu PPWR für Importeure aus dem Nicht-EU-Ausland Business Jungle 2
Neu 🚨 Sicherheitswarnung für JTL-Shop-Betreiber: Manipulation des Checkout-Prozesses durch externes JavaScript (Magecart- / Payment-Skimmer) Betrieb / Pflege von JTL-Shop 11
Neu Abschaltung Bewertungserinnerung für spezifische Kunden Allgemeine Fragen zu JTL-Shop 0
Neu Suche 10–15 JTL-Shops für kostenlose JTL-Shop-Analyse (verschiedene Branchen) Dienstleistung, Jobs und Ähnliches 0
Neu Wir suchen Mitstreiter für ein gemeinsames Konfigurator-Projekt Dienstleistung, Jobs und Ähnliches 0
Neu Wir suchen Mitstreiter für ein gemeinsames Konfigurator-Projekt User helfen Usern - Fragen zu JTL-Wawi 7
In Diskussion Workflow für Erinnerungen an bevorstehende Lieferungen JTL-Workflows - Ideen, Lob und Kritik 0
Neu Wie stelle ich Retouren in JTL für DPD ein? JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu JTL Shop Plugin - BD Automatisierter Widerruf (Von Händler für Händler - Schluss mit Mail-Chaos & Spam-Sorgen!) Plugins für JTL-Shop 0
Wroker macht keinen abgleich für Kaufland JTL-Wawi 2.0 8
Neu Beta-Tester gesucht: Produktdaten aus Artikelfotos schneller für JTL/CSV vorbereiten Dienstleistung, Jobs und Ähnliches 0
Neu Kundengruppeneinstellungen für Mindestabnahme und Abnahmeintervall löschen User helfen Usern - Fragen zu JTL-Wawi 1
Neu Installationsdatei für JTL‑Wawi 1.9.6.5 Installation von JTL-Wawi 2
Wie lange braucht ihr aktuell für die Anlage eines neuen Artikels? JTL-Wawi App 3
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
In Diskussion Tool für Abrechnung von Fulfillment Dienstleistungen Arbeitsabläufe im Fulfillment Network 0
Neu Widerrufsbutton für JTL-Shop 4 Allgemeine Fragen zu JTL-Shop 17
Neu Keine Labels für Warenpost international über Packtisch JTL-ShippingLabels - Fehler und Bugs 8
Neu Laut Backend Shop Update für Shop 5.71 - Download nicht zu finden? Betrieb / Pflege von JTL-Shop 3
Neu Meta Shop seit September 2025: JTL-Lösung für neue Checkout-URL gesucht Allgemeine Fragen zu JTL-Shop 0
Angebliche externe Aufträge "für Rechnungserstellung freigeben" und Rechnungen erstellen. Gibt es dazu eine akzeptable Erklärung von JTL? JTL-Wawi 1.11 1

Ähnliche Themen