für viele Endpoints (z.B. product) gibt es einen GET-Parameter “query”, dort steht “Encoded SwagQL in JSON”, ich denke dass man hier angeben kann welche Daten man gerne in der Response hätte, aber ich finde nichts drüber wie das auszusehen hat, hat da jemand ein Beispiel?
ich habe nochmal nachgeforscht (bzw. einen Kollegen gefragt). Hier kann wie beim POST das Ergebnis filtern. Zum Beispiel:
Als ganzer String: ?query[0][query][type]=equals&query[0][query][field]=productNumber&query[0][query][value]=SW10216.1
Auseinander gebaut, somit ein EqualsFilter auf productNumber mit dem Value “SW10216.1”.
ich habe nochmal nachgeforscht (bzw. einen Kollegen gefragt). Hier kann wie beim POST das Ergebnis filtern. Zum Beispiel:
Als ganzer String: ?query[0][query][type]=equals&query[0][query][field]=productNumber&query[0][query][value]=SW10216.1
Auseinander gebaut, somit ein EqualsFilter auf productNumber mit dem Value „SW10216.1“.
Ich hoffe das hilft dir soweit weiter.
Gruß
Krispin
Hallo Krispin,
ich frage mich dann was das ganze mit „SwagQL“ zutun hat?
Ich bin davon ausgegangen, dass man hier eine Art GraphQL-Query übergeben kann (dass SwagQL eine Anlehnung an GraphQL ist) und dann nur die Infos zurück bekommt die im Query stecken, bei deinem Beispiel würde ich ja alle Attribute für das Produkt „SW10216.1“ zurück bekommen.
In etwa so habe ich mir das vorgestellt:
Request: POST /product?query={ product(productNumber: „SW10216.1“) { price.net, price.gross } }
Und zwar versuche ich aktuell via API die Crossseller zu definieren. Bevor er einen neuen anlegt soll quasi geprüft werden ob nicht evtl. schon diese Zuweisung existiert.
Da es hier ja nun 2 Parameter sind nach denen gefiltern werden soll (ProductId und CrossSellerId) bin ich mir nicht sicher ob die Zusammenstellung des Request für den GET-Parameter so stimmt.
Hier findet er nun in den Assigned CrossSellings folgende Id: 324f37752ecf4fecab9b94f5a7cbf947
Leider findet er mit folgendem Request und einer anderen ProductId die gleiche Id für die Assigned CrossSellings. Hier müsste er ja keine finden da dieser Eintrag für dieses Produkt nicht existiert.
Die Frage hier ist nun - ist mein Vorgehen mit query[1] für den zweiten Parameter richtig oder wie müsste dies dann aussehen? Habe auch schon andere Schreibweisen getestet inkl. eines Request nach folgendem Schema (dieser ist allerdings falsch, da hier überhaupt keine Id gefunden wird).