[JTL-WAWI API] MandatoryApiScopes / OptionalApiScopes

kelvin.

Sehr aktives Mitglied
15. Februar 2023
166
65
Frankfurt
Hallo zusammen, ich bin gerade am Testen der Rest API und habe paar Fragen zu den Scopes.

Gibt es eine Auflistung von alle Scopes?
Gibt es ein Scope wie read.all für das Schreiben und Löschen?
Kann mir jemand erklären, wann ich OptionalApiScopes nutzen soll?
Gibt es derzeit eine Möglichkeit Scopes im Nachhinein einer Anwendung freizugeben?
 

juergenl

Aktives Mitglied
26. Februar 2020
11
3
Hallo,

die Scopes werden in der Dokumentation jeweils bei den endpoints aufgelistet. Welche Scopes man nutzt hängt letztlich davon ab was man mit der API bewerkstelligen will. Wenn ich zum Beispiel mit salesorders arbeiten möchte schaue ich welche der in der Dokumentation aufgelisteten Funktionen ich nutzen möchte. Dann schaue ich welche Scopes dort unter Authorizations aufgelistet sind. Dann muss ich auch noch entsprechende scopes für customer raussuchen, weil man ohne Kunden eigentlich auch nichts mit Aufträgen anfangen kann.

Die benötigten Scopes werden dann bei der App Registrierung angegeben. Wenn man später zusätzliche Scopes braucht, muss dieser Prozess der App Registrierung noch einmal durchlaufen werden um diese anzumelden.
 
  • Gefällt mir
Reaktionen: kelvin.

kelvin.

Sehr aktives Mitglied
15. Februar 2023
166
65
Frankfurt
Danke @juergenl für die Antwort. Das die Scopes in der Doku bei den Endpoints steht, habe ich auch gesehen.
Ich brauche für mein Projekt sozusagen alle Scopes, da ich alle Enpoints einmal testen möchte.

Falls jemand einmal alle Scopes rausgeschrieben hat oder ein Script um alle Scopes aus der Doku zu extrahieren hat, wäre ich sehr dankbar.

EDIT: Hat sich geklärt. Ich konnte alle Scopes aus der Datei swagger.json extrahieren.
 
Zuletzt bearbeitet:

no80

Sehr aktives Mitglied
28. Juni 2023
697
82
Danke @juergenl für die Antwort. Das die Scopes in der Doku bei den Endpoints steht, habe ich auch gesehen.
Ich brauche für mein Projekt sozusagen alle Scopes, da ich alle Enpoints einmal testen möchte.

Falls jemand einmal alle Scopes rausgeschrieben hat oder ein Script um alle Scopes aus der Doku zu extrahieren hat, wäre ich sehr dankbar.

EDIT: Hat sich geklärt. Ich konnte alle Scopes aus der Datei swagger.json extrahieren.
Du kannst die direkt in Postman importieren.
 

Mumuso

Mitglied
30. Januar 2025
9
2
'availability.queryavailabilities', 'all.read', 'cancellationreason.querycancellationreasons', 'all.read', 'category.querycategories', 'all.read', 'category.createcategory', 'category.getcategory', 'all.read', 'category.updatecategory', 'category.querycategorydescriptions', 'category.createcategorydescription', 'category.deletecategorydescription', 'category.updatecategorydescription', 'category.addcategoryitems', 'colorcode.querycolorcodes', 'all.read', 'company.querycompanies', 'all.read', 'condition.queryconditions', 'all.read', 'CustomerCategory.QueryCustomerCategories', 'all.read', 'CustomerCategory.createCustomerCategory', 'CustomerCategory.getCustomerCategory', 'all.read', 'CustomerCategory.deleteCustomerCatory', 'CustomerCategory.UpdateCusterCatory', CustomerGroup Ergroup ',' customergroup.getCustomerGroup ',' all.read ',' customergroup.deleteCustomerGroup ',' customergroup.updateCustomerGroup ',' customer.querycustomers ',' all.read ',' customer.createcustomer ',' customer.getcustomer ',' all.read 'customer.querycustomerbankaccounts', 'customer.createcustomerbankaccount', 'customer.getcustomerbankaccount', 'customer.deletecustomerbankaccount', 'customer.updatecustomerbankaccount', 'customer.querycustomercontacts', 'customer.createcustomercontact', 'customer.getcustomercontact', 'customer.deletecustomercontact', 'customer.updatecustomercontact', 'customer.querycustomercustomfieldvalues', 'customer.deletecustomercustomfield', 'customer.updatecustomercustomfield', 'customer.querycustomernotes', 'customer.createcustomernote', 'customer.getcustomernote', 'customer.deletecustomernote', 'customer.updatecustomernote', 'customer.triggercustomerworkflowevent', 'Customer.QueryCustomerCustomFields', 'customer.QueryCustomerworkflowevents', 'item.queryitem Emcustomerprice ',' item.deleteitemcustomerprice ',' item.updateitemcustomerprice ',' item.queryitemcustomfieldvalues ',' all.read ',' item.deleteatemcustomfield ',' item.updateemcustomfiel ’item.deleteitemdescription', 'item.updateitemdescription', 'item.queryitemimages', 'all.read', 'item.createitemimage', 'item.deleteitemimage', 'item.updateitemimage', 'item.queryitemproperties', 'all.read', 'item.createitemproperty', 'item.deleteitemporty', 'item.queryitemsaleschannelprice', 'all.read', 'item.createitemsaleschannelprice', 'item.deleteitemsaleschannelprice', 'item.updateitemsaleschannelprice', 'item.queryitemspecialprice', 'all.read', 'item.updateitemspecialprice', 'item.queryitemsuppliers', 'all.read', 'item.createitemsupplier', 'item.deleteitemsupplier', 'item.updateitemsupplier', 'item.queryitemvariations', 'all.read', 'item.createitemvariation', 'item.deleteitemvariation', 'item.updateitemvariation', 'item.queryitemvariationvalues', 'all.read', 'item.createitemvariationvalue', 'item.deleteitemvariationvalue', 'item.updateitemvariationvalue', 'item.triggeritemworkflowevent', 'item.queryitemcustomfields', 'all.read', 'item.queryitemimagedata', 'all.read', 'item.queryitemworkflowevents', 'all.read', 'manufacturer.querymanufacturers', 'all.read', 'onholdreason.queryonholdreasons', 'all.read', 'paymentmethod.querypaymentmethods', 'all.read', 'productgroup.queryproductgroups', 'all.read', 'property.queryproperties', 'all.read', 'property.createproperty', 'property.querypropertyvalues', 'all.read', 'property.createpropertyvalue', 'property.deletepropertyvalue', 'property.updatepropertyvalue', 'property.querypropertyvaluedescriptions', 'all.read', 'property.createpropertyvaluedescription', 'property.deletepropertyvaluedescription', 'property.updatepropertyvaluedescription', 'property.querypropertygroups', 'all.read', 'property.createpropertygroup', 'saleschannel.getsaleschannels', 'all.read', 'salesorder.querysalesorders', 'all.read', 'salesorder.createsalesorder', 'salesorder.getsalesorder', 'all.read', 'salesorder.updatesalesorder', 'salesorder.cancelsalesorder', 'salesorder.querysalesordercustomfieldvalues', 'all.read', 'salesorder.deletesalesordercustomfield', 'salesorder.updatesalesordercustomfield', 'salesorder.querysalesorderfiles', 'all.read', 'salesorder.createsalesorderfile', 'salesorder.querysalesorderfiledata', 'all.read', 'salesorder.deletesalesorderfile', 'salesorder.querysalesorderlineitems', 'all.read', 'salesorder.createsalesorderlineitem','salesorder.deletesalesorderlineitem', 'salesorder.updatesalesorderlineitem', 'salesorder.querysalesordernotes', 'all.read', 'salesorder.createsalesordernote', 'salesorder.deletesalesordernote', 'salesorder.updatesalesordernote', 'salesorder.triggersalesorderworkflowevent', 'salesorder.querysalesordercustomfields', 'all.read', 'salesorder.querysalesorderworkflowevents', 'all.read', 'shippingclass.queryshippingclasses', 'all.read', 'shippingmethod.queryshippingmethods', 'all.read', 'stock.querystocksperitem', 'all.read', 'stock.stockadjustment', 'stock.querystockchanges', 'all.read', 'stock.queryserialnumberperwarehouse', 'all.read', 'supplier.querysuppliers', 'all.read', 'taxclass.querytaxclasses', 'all.read', 'transactionstatus.querytransactionstatus', 'all.read', 'warehouse.querywarehouses', 'all.read', 'warehouse.querystoragelocations', 'all.read', 'warehouse.querystoragelocationtype', 'warehouse.querywarehousetypes', 'all.read', 'wms.querypicklist', 'all.read', 'wms.createpicklist', 'wms.querypicklistposition', 'all.read', 'wms.querypicklisttemplate', 'all.read'
 
  • Gefällt mir
Reaktionen: Morimus
1. Februar 2025
4
3
Danke @juergenl für die Antwort. Das die Scopes in der Doku bei den Endpoints steht, habe ich auch gesehen.
Ich brauche für mein Projekt sozusagen alle Scopes, da ich alle Enpoints einmal testen möchte.

Falls jemand einmal alle Scopes rausgeschrieben hat oder ein Script um alle Scopes aus der Doku zu extrahieren hat, wäre ich sehr dankbar.

EDIT: Hat sich geklärt. Ich konnte alle Scopes aus der Datei swagger.json extrahieren.
Super danke für die Idee.

Hier für alle:


[
"accountingdata.queryaccountingdata",
"all.read",
"availability.queryavailabilities",
"cancellationreason.querycancellationreasons",
"category.addcategoryitems",
"category.createcategory",
"category.createcategorydescription",
"category.deletecategorydescription",
"category.getcategory",
"category.querycategories",
"category.querycategorydescriptions",
"category.updatecategory",
"category.updatecategorydescription",
"colorcode.querycolorcodes",
"company.querycompanies",
"condition.queryconditions",
"customer.createcustomer",
"customer.createcustomerbankaccount",
"customer.createcustomercontact",
"customer.createcustomernote",
"customer.deletecustomer",
"customer.deletecustomerbankaccount",
"customer.deletecustomercontact",
"customer.deletecustomercustomfield",
"customer.deletecustomernote",
"customer.getcustomer",
"customer.getcustomerbankaccount",
"customer.getcustomercontact",
"customer.getcustomernote",
"customer.querycustomerbankaccounts",
"customer.querycustomercontacts",
"customer.querycustomercustomfields",
"customer.querycustomercustomfieldvalues",
"customer.querycustomernotes",
"customer.querycustomers",
"customer.querycustomerworkflowevents",
"customer.triggercustomerworkflowevent",
"customer.updatecustomer",
"customer.updatecustomerbankaccount",
"customer.updatecustomercontact",
"customer.updatecustomercustomfield",
"customer.updatecustomernote",
"customercategory.createcustomercategory",
"customercategory.deletecustomercategory",
"customercategory.getcustomercategory",
"customercategory.querycustomercategories",
"customercategory.updatecustomercategory",
"customergroup.createcustomergroup",
"customergroup.deletecustomergroup",
"customergroup.getcustomergroup",
"customergroup.querycustomergroups",
"customergroup.updatecustomergroup",
"deliverynote.getdeliverynote",
"deliverynote.querydeliverynotes",
"invoice.getinvoice",
"invoice.queryinvoicecancellationreasons",
"invoice.queryinvoicelineitems",
"invoice.queryinvoices",
"invoice.queryinvoiceworkflowevents",
"invoice.triggerinvoiceworkflowevent",
"item.assignchilditemtoparent",
"item.createitem",
"item.createitemcustomerprice",
"item.createitemdescription",
"item.createitemimage",
"item.createitemproperty",
"item.createitemsaleschannelprice",
"item.createitemsupplier",
"item.createitemvariation",
"item.createitemvariationvalue",
"item.deleteitemcustomerprice",
"item.deleteitemcustomfield",
"item.deleteitemdescription",
"item.deleteitemimage",
"item.deleteitemproperty",
"item.deleteitemsaleschannelprice",
"item.deleteitemsupplier",
"item.deleteitemvariation",
"item.deleteitemvariationvalue",
"item.getitem",
"item.queryitemcustomerprices",
"item.queryitemcustomfields",
"item.queryitemcustomfieldvalues",
"item.queryitemdescriptions",
"item.queryitemimagedata",
"item.queryitemimages",
"item.queryitemproperties",
"item.queryitems",
"item.queryitemsaleschannelprice",
"item.queryitemspecialprice",
"item.queryitemsuppliers",
"item.queryitemvariations",
"item.queryitemvariationvalues",
"item.queryitemworkflowevents",
"item.triggeritemworkflowevent",
"item.updateitem",
"item.updateitemcustomerprice",
"item.updateitemcustomfield",
"item.updateitemdescription",
"item.updateitemimage",
"item.updateitemsaleschannelprice",
"item.updateitemspecialprice",
"item.updateitemsupplier",
"item.updateitemvariation",
"item.updateitemvariationvalue",
"manufacturer.querymanufacturers",
"onholdreason.queryonholdreasons",
"paymentmethod.querypaymentmethods",
"productgroup.queryproductgroups",
"property.createproperty",
"property.createpropertygroup",
"property.createpropertyvalue",
"property.createpropertyvaluedescription",
"property.deletepropertyvalue",
"property.deletepropertyvaluedescription",
"property.queryproperties",
"property.querypropertygroups",
"property.querypropertyvaluedescriptions",
"property.querypropertyvalues",
"property.updatepropertyvalue",
"property.updatepropertyvaluedescription",
"refund.queryrefundcancellationreasons",
"return.getreturn",
"return.queryreturnlineitems",
"return.queryreturns",
"returnreason.queryreturnreasons",
"returnstate.queryreturnstates",
"saleschannel.getsaleschannels",
"salesorder.cancelsalesorder",
"salesorder.createsalesorder",
"salesorder.createsalesorderfile",
"salesorder.createsalesorderlineitem",
"salesorder.createsalesorderlineitemfile",
"salesorder.createsalesordernote",
"salesorder.deletesalesordercustomfield",
"salesorder.deletesalesorderfile",
"salesorder.deletesalesorderlineitem",
"salesorder.deletesalesorderlineitemfile",
"salesorder.deletesalesordernote",
"salesorder.getsalesorder",
"salesorder.querysalesordercancellationreasons",
"salesorder.querysalesordercustomfields",
"salesorder.querysalesordercustomfieldvalues",
"salesorder.querysalesorderfiledata",
"salesorder.querysalesorderfiles",
"salesorder.querysalesorderlineitemfiledata",
"salesorder.querysalesorderlineitemfiles",
"salesorder.querysalesorderlineitems",
"salesorder.querysalesordernotes",
"salesorder.querysalesorders",
"salesorder.querysalesorderworkflowevents",
"salesorder.triggersalesorderworkflowevent",
"salesorder.updatesalesorder",
"salesorder.updatesalesordercustomfield",
"salesorder.updatesalesorderfile",
"salesorder.updatesalesorderlineitem",
"salesorder.updatesalesorderlineitemfile",
"salesorder.updatesalesordernote",
"shippingclass.queryshippingclasses",
"shippingmethod.queryshippingmethods",
"stock.queryserialnumberperwarehouse",
"stock.querystockchanges",
"stock.querystocksperitem",
"stock.stockadjustment",
"supplier.querysuppliers",
"taxclass.querytaxclasses",
"transactionstatus.querytransactionstatus",
"warehouse.querystoragelocations",
"warehouse.querystoragelocationtype",
"warehouse.querywarehouses",
"warehouse.querywarehousetypes",
"wms.createpicklist",
"wms.querypicklist",
"wms.querypicklistposition",
"wms.querypicklisttemplate"
]
 

Mumuso

Mitglied
30. Januar 2025
9
2
Eigentlich ist die API von JTL eine sehr unbequeme Sache, was das Abrufen von Daten betrifft. Was das Einpflegen angeht – dazu kann ich nichts sagen.


Ich empfehle, eigene API-Handler zu schreiben, so wird es flexibler und bequemer.
Python und FastAPI können dabei helfen.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu JTL-Wawi REST-API – Performance & Monitoring JTL-Ameise - Ideen, Lob und Kritik 3
Neu ❓JTL Wawi Update von 1.8 auf ??? User helfen Usern - Fragen zu JTL-Wawi 1
Using short screen recordings for JTL-Wawi workflow documentation – anyone doing this? JTL-Wawi 2.0 3
JTL-Wawi 1.11.7 Sporadischer Fehler - Zugriff verweigert. JTL-Wawi 1.11 0
Neu JTL Wawi Einloggen geht nicht!! User helfen Usern - Fragen zu JTL-Wawi 4
Neu Gutscheincodes aus Shopware 6 in JTL Wawi als Anmerkung zeigen? Shopware-Connector 0
Neu Database connection timeouts and interface lag in JTL-Wawi with background script managers User helfen Usern 0
Neu product_visibility bei JTL-Wawi und Shopware 6 Shopware-Connector 1
Neu Probleme mit Import Datenbank vom Server auf lokal JTL-Wawi 2.0 User helfen Usern - Fragen zu JTL-Wawi 4
Neu Plattformkosten auf Auftragspositionsebene in die JTL WaWi schreiben Arbeitsabläufe in JTL-Wawi 4
Neu JTL-Wawi in einem EU-Land einsetzen – rechtliche & technische Fragen Installation von JTL-Wawi 2
Neu Versandart von Shopify zu JTL Wawi & Sendungsnummern von Wawi zu Shopify!? Shopify-Connector 0
Neu JTL Editionen / JTl Wawi / Shopify / Durchblick verloren Kosten / Was brauche ich wirklich User helfen Usern - Fragen zu JTL-Wawi 3
Dropshipping-Labeldruck beim Lieferanten über JTL-Wawi (Versandstandorte / Workflows) JTL-Wawi 1.10 0
DHL 4.0 mit JTL Wawi 1.7.13.0 JTL-Wawi 1.7 2
Neu DATEV Buchungsdatenservice im Programm JTL Wawi den Serverfehler 500. JTL-Wawi - Ideen, Lob und Kritik 4
Neu Neuentwicklung - Helpdesk für JTL Wawi - Eure Ideen und Wünsche? User helfen Usern - Fragen zu JTL-Wawi 4
Neu JTL-WaWi + ESL Connector — Entwicklung mit Kostenaufteilung gesucht Business Jungle 0
Neu Anbindung JTL Wawi an Speditionen Dienstleistung, Jobs und Ähnliches 0
Direktupdate von JTL Wawi 1.10.11.0 auf 2.0 möglich? JTL-Wawi 2.0 6
Neu JTL-Wawi Update Historie User helfen Usern - Fragen zu JTL-Wawi 2
Fehlermeldung beim Anlegen einer zweiten JTL POS Kasse in JTL-Wawi JTL-Wawi 1.11 1
Neu Update Wawi 1.10.16.0 auf 1.11.7 -> JTL-POS Einrichtung / Updates von JTL-POS 2
Neu Seit Update auf JTL-WaWi 2.0.0.0 keine Abholung der Kundendaten bei MediaSaturn-Bestellungen JTL-Wawi - Fehler und Bugs 7
Neu Best Practices für den Export und die Automatisierung von täglichen Berichten in JTL‑WaWi User helfen Usern - Fragen zu JTL-Wawi 2
Mobile Web-App für JTL-WaWi — Aufträge, Artikel & Lager direkt vom Smartphone JTL-Wawi App 0
JTL-Wawi eBay Fahrzeugverwendung (K-Typen) wird nicht aktiviert trotz Ameise-Import JTL-Wawi 1.10 0
eBay-Vorlagenfenster rechts abgeschnitten (JTL-Wawi 2.0) JTL-Wawi 2.0 11
Neu Bestandsabgleich JTL Wawi mit Amazon JTL-Wawi - Fehler und Bugs 1
Neu Alte Produktbilder erscheinen im JTL-Shop trotz Löschung und neuem Upload immer wieder – JTL-Wawi enthält nur neue Bilder JTL-Wawi - Fehler und Bugs 16
Neu JTL Shop 5 Sync in JTL WAWI 2.0.0 zeigt Verbindungstest Fehlermeldung Onlineshop-Anbindung 4
Neu Die verwendete Version von JTL-Wawi wird nicht mehr unterstützt. Bitte nutzen Sie die Version 2.0.0.0 User helfen Usern - Fragen zu JTL-Wawi 1
Neu JTL-Wawi 2.0.2 Stable Release Releaseforum 2
Neu Installation JTL-Wawi 1.5.55.8 - Startet Grundsätzlich im Report-/Druckmodul Installation von JTL-Wawi 4
Neu [Erledigt] Installationsdatei JTL‑Wawi 1.5.55.8 erhalten! Installation von JTL-Wawi 0
Neu Kategoriestruktur auf JTL-Wawi in WooCommerce Shop darstellen WooCommerce-Connector 2
Neu Zwei eBay-Aufträge (identische Adresse) zusammen versenden, aber getrennte Rechnungen behalten – JTL-Wawi 1.9.6.5 User helfen Usern - Fragen zu JTL-Wawi 1
JTL-WAWI Datenbankprofil für neue Windows Benutzer JTL-Wawi 1.11 2
Neu GPSR Herstellerinformationen JTL Wawi 1.9.6.4 anbinden User helfen Usern - Fragen zu JTL-Wawi 0
Neu DSGVO – Automatisierte Löschung von Kundendaten nach 10 Jahren (JTL-Wawi / JTL-Shop) User helfen Usern - Fragen zu JTL-Wawi 2
Neu Erstabgleich Showpare6 zu JTL-WaWi Shopware-Connector 0
Update von 1.11.6 auf 1.11.7: JTL Worker verbindet nicht mehr mit Datenbank (WaWi schon) JTL-Wawi 1.11 1
JTL-WaWi 11.5 WMS Mobile Server sehr hohe CPU Auslastung JTL-Wawi 1.11 3
Neu welche Sync Benutzer Daten in Shop und WAWI bei neu-Hosting über JTL Allgemeine Fragen zu JTL-Shop 0
welche Sync Benutzer Daten in Shop und WAWI bei neu-Hosting über JTL JTL-Wawi 1.11 0
Neu von JTL-Wawi-Version 1.10.16.0 ist kein Update...möglich Installation von JTL-Wawi 2
Neu WaWi - JTL Shop - Kein Abgleich des Artikelnamen möglich Onlineshop-Anbindung 1
Neu Wawi Synchronisation mit JTL Shop nicht möglich! seit 3 Stunden was kann man machen? Onlineshop-Anbindung 1
JTL POS an WaWi anbinden Hilfe benötigt JTL-Wawi 1.11 4
Neu JTL WAWI V1.11.6.0 Stornorechnung, Stornotext wird nicht gespeichert und ist nicht abrufbar JTL-Wawi - Fehler und Bugs 0

Ähnliche Themen