Hallo zusammen,
ich möchte Shopware über die REST-Schnittstelle ansprechen. Dazu habe ich folgenden Call abgesetzt:
curl --request POST \
--url http://myshop.de/store-api/order \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'sw-access-key: SWSCETL1Y23232KJHHESKXPVA' \
--data '{
"checkPromotion": true
}'
Der Access-Key stammt aus den Einstellungen für den entsprechenden User. Der Call liefert folgende Fehlermeldung:
"code":"CHECKOUT__CUSTOMER_NOT_LOGGED_IN","title":"Forbidden","detail":"Customer is not logged in."
Deswegen habe ich es dann mit einem „normalen“ Login-Call probiert:
curl --request POST --url http://myshop.de/store-api/account/login \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'sw-access-key: SWSCETL1Y23232KJHHESKXPVA' \
--data '{
"username": "myAPIuser",
"password": "aPassw0rd"
}'
Dieser Call wiederum liefert ebenfalls eine Fehlermeldung:
,"code":"FRAMEWORK__MISSING_REQUEST_PARAMETER","title":"Bad Request","detail":"Parameter \u0022sw-context-token\u0022 is missing."
Ich dachte, daß ich das Context-Token erst bekomme, wenn ich mich eingeloggt habe? Das kann ich doch noch gar nicht eingeben?!
Wenn ich einen Context-Call absetze, kommt prompt eine valide Antwort. Also hier der Call:
curl --request GET --url http://myshop.de/store-api/context \
--header 'Content-Type: application/json' \
--header 'sw-access-key: SWSCETL1Y23232KJHHESKXPVA'
Das liefert eine Unmenge an Daten und fängt mit
{"token":"i5A9d13z0H23gFsdsdWhW5bgWHg0n7vSC","currentCustomerGroup":{"name":"Standard customer group...
an. Ist es dieses Token, was ich als Context-Token nehmen muß? Bin hier für jeden Hinweis dankbar.
Viele Grüße,
Ralf.