[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
662
77
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 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.0 Stable Release Releaseforum 0
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 1
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
Neu Shopify Connector + JTL Wawi Preis Shopify-Connector 4
JTL Wawi App eigene Statistiken erscheinen nicht JTL-Wawi App 0
Neu Newsletter: KI Webinare, JTL Wawi 2.0 und vieles mehr - Freue dich auf JTL Events! User helfen Usern - Fragen zu JTL-Wawi 5
Neu HGB-konforme Stichtagsbewertung inkl. Niederstwertprinzip (JTL-Wawi / MSSQL) Arbeitsabläufe in JTL-Wawi 0
JTL Wawi App Registrierung kann nicht gelöscht werden JTL-Wawi App 11
Neu Feedbackrunde zur Umsetzung der Verpackungsverordnung (PPWR) in JTL-Wawi Umfragen rund um JTL 1
Neu JTL-WAWI und LS-POS Wechseln Starten mit JTL: Projektabwicklung & Migration 1
Neu Steuereinstellungen JTL WAWI 1.11.5 Eigene Übersichten in der JTL-Wawi 0
Erfahrungen mit JTL-Wawi 1.10.15.0 im Produktivbetrieb? JTL-Wawi 1.10 7
Neu Alternative zu https://wawi-db.jtl-software.de/ - Wawi-Diff zur Darstellung von Datenbank-Änderungen User helfen Usern - Fragen zu JTL-Wawi 6
Neu askJan | Neuer KI-Assistent für JTL-Wawi - schnelle, effiziente und transparente KI-Datenanalyse - ohne SQL! Dienstleistung, Jobs und Ähnliches 41
Neu Download JTL Wawi 1.5.54.0 User helfen Usern - Fragen zu JTL-Wawi 5
JTL WAWI 1.11.4 Neues Passwort generieren ist ausgegraut JTL-Wawi 1.11 0
Der ganze Betrieb hat keinen Zugriff auf JTL Wawi 1.11.4 meh JTL-Wawi 1.11 10
Artikelnummern-Konflikt bei JTL-WaWi-Import aus Shopify, SEO-Ranking erhalten JTL-Wawi 1.10 1
Neu JTL-Wawi 1.11.5: Sequenzieller Kundenexport mit Workflow und SQL-Queue Schnittstellen Import / Export 2
Lizenzschlüssel in JTL Wawi hinterlegen JTL-Wawi 1.10 1
JTL-Wawi startet nach Neustart nicht / hängt auf neu eingerichtetem PC (Remote-Datenbank) JTL-Wawi 1.11 22
Seit dem Update auf JTL Wawi 1.11.4 funktioniert der Workflow "Datei Schreiben" nicht JTL-Wawi 1.11 1
JTL Wawi 1.11.4 "Dashboard übernehmen" funktioniert nicht JTL-Wawi 1.11 2
JTL-Wawi App (1.11.x) – Lizenz angeblich belegt nach Löschen aller App-Registrierungen / kein Reset möglich JTL-Wawi App 3
Smart App Control blockiert start von JTL-Wawi JTL-Wawi 1.11 2
Neu JTL Wawi auf Windows Server 2025 mit SQL 2025? Installation von JTL-Wawi 21
Erfahrungen zur JTL Wawi 1.11.5 – Tipps, Bugs und Praxisberichte JTL-Wawi 1.11 19
Neu JTL-Wawi 1.11.4 – Vaterartikel lässt sich nach Entfernen eines Kindartikels nicht mehr speichern JTL-Wawi - Fehler und Bugs 3
Neu Neues E-Commerce Business mit JTL Wawi - Jtl Shop - Lexware Office (online) - Fragen Starten mit JTL: Projektabwicklung & Migration 2
Neu Bestellung aus JTL-Shop wird nicht in die Wawi übernommen Allgemeine Fragen zu JTL-Shop 1
Neu Amazon VCS - JTL Wawi > 1.10 - Lexware: Suche Best Practice Amazon-Anbindung - Ideen, Lob und Kritik 1
JTL-WAWI teilweise extrem lahm JTL-Wawi 1.10 8
Anfrage zur Einrichtung des Dashboards (Gewinnanzeige) in JTL-Wawi – Remote-Support über AnyDesk JTL-Wawi 1.10 7

Ähnliche Themen