Artikel anlegen mittels API (benötigte Einträge)

Hallo Forum! Als Neuling mit Shopware bin ich gleich über ein Problem gestolpert: Wir arbeiten mit PureBasic als universelle Programmiersprache. Dafür habe ich alle API Strukturen abgebildet. Auch das Anmelden via Digest funktioniert problemlos. Genauso das Auslesen eines Artikels oder der Artikelliste. Das Problem kommt beim Anlegen eines Artikels. Fülle ich in der (maximalen) Struktur nur die benötigten Felder aus: Shopware\Data\name = "Ein neuer Artikel" Shopware\Data\taxId = 1 Shopware\Data\mainDetail\number = "1235" kommt zurück: [quote]A configurator set has to be defined[/quote] Es wird ein leeres configuratorOptions mit übertragen und anscheinend muss dann etwas drinstehen."configuratorOptions": [], Dies ist aber sehr unangenehm, da man ja dann für jedes hinzufügen mit unterschiedlichen Dingen unterschiedliche Strukturen benötigt. Es funktioniert nämlich, wenn ich wirklich nur die Teile der Struktur anlege, welche ich auch gerade ausfüllen kann. Gibt es da eine Lösung? Z.B. ignoriere leere Anweisungen oder so?

[quote=“ednt”][…] Fülle ich in der (maximalen) Struktur nur die benötigten Felder aus: Shopware\Data\name = "Ein neuer Artikel" Shopware\Data\taxId = 1 Shopware\Data\mainDetail\number = "1235" kommt zurück: [quote]A configurator set has to be defined[/quote] […][/quote] Moin, vielleicht erst einmal die Frage um dein Vorgehen nachvollziehen zu können: Wenn du von “maximaler Struktur” sprichst, meinst du dann, dass du der API sämtliche Felder also auch die welche du garnicht befüllst übergibst? Das ist nämlich nicht nötig. Du musst nur die benötigten Felder sowie die Felder welche du befüllen willst übergeben. In deinem Beispiel also genau diese drei Data\name Data\taxId Data\mainDetail\number

Hi, da muss ich etwas ausholen: In PureBasic kann man eine Funktion aufrufen, welche einen JSON String direkt in eine Struktur kopiert, soweit die Schlüsselwörter den Strukturnamen entsprechen. Genauso umgekehrt kann man aus der Struktur einfach den JSON String generieren. Ich habe nun, gemäß den API Vorgaben eine Struktur anfgelegt, in welche ich z.B. jeden Artikel mit GET direkt einlesen kann und sofort mit den Werten weiterarbeiten kann. Umgekehrt will ich natürlich auch damit alle möglichen Artikel anlegen können. Auch einen nur mit den Mindestangaben. Also übergebe ich auch ‚unbefüllte‘ Felder. Aber wie geschrieben erwartet Shopware 4 anscheinend, das wenn ein Feld übertragen wird, dieses auch gefüllt sein muss. Wenn man nun aber unterschiedliche Artikel oder Shops hat, dann musss man ja die ‚Artikel hinzufüge Struktur‘ immer ändern, d.h. man kann nicht allgemein bleiben. Ziel ist es ein oder mehrere Shops automatisch mit Artikeln zu füllen, welche aus einer Produktdatenbank kommen. Mit dieser Produktdatenbank wird auch mit anderen Programmen automatisch der Katalog und das ERP System erzeugt bzw. gefüllt. Also alles auf einen Knopfdruck.