Hallo,
es gibt zwar die API Doku für Developer https://docs.shopware.com/en/shopware-platform-dev-en aber die ist irgendwie nicht vollständig.
Was genau ist nochmal der Unterschied zwischen Admin-API, Store-API und Sales-Channel-API?
Ich sehe dort leider auch kein Beispiel, wie ich einen kompletten Call aufbauen muss, um beispielsweise Produkte abzurufen oder ein Produkt anzulegen.
Wo sehe ich, welche Felder ein “get products” zurückliefert und wo sehe ich, welche Felder ich beim “post product” liefern muss/kann um ein Produkt anzulegen?
hat die Doku nicht mal anders ausgesehen?
EDIT : habe nun dieses Beispiel ausprobiert https://docs.shopware.com/en/shopware-platform-dev-en/how-to/working-with-the-api-and-an-http-client?category=shopware-platform-dev-en/how-to
Im Beispiel werden die Auth-Daten ja in der Plugin-Config angegeben… ich habe dort also die Logindaten eines Admin-Users eingegeben. Ist das korrekt? Wieso wird hier nicht der API-Key aus dem Headless-Sales-Channel genutzt?
Das Beispiel ist wohl nur für die Admin-API ausgelegt… aber wie bekomm ich das für die Sales-Channel-API hin?
mit dem Response kann ich ohnehin nix anfangen …
<u><strong>$service->request("GET", "product");</strong></u>
object(GuzzleHttp\Psr7\Response)#3149 (6) {
["reasonPhrase":"GuzzleHttp\Psr7\Response":private]=>
string(2) "OK"
["statusCode":"GuzzleHttp\Psr7\Response":private]=>
int(200)
["headers":"GuzzleHttp\Psr7\Response":private]=>
array(17) {
["Date"]=>
array(1) {
[0]=>
string(29) "Wed, 27 May 2020 16:25:39 GMT"
}
["Server"]=>
array(1) {
[0]=>
string(6) "Apache"
}
["Cache-Control"]=>
array(1) {
[0]=>
string(7) "private"
}
["Access-Control-Allow-Origin"]=>
array(1) {
[0]=>
string(1) "*"
}
["Access-Control-Allow-Methods"]=>
array(1) {
[0]=>
string(25) "GET,POST,PUT,PATCH,DELETE"
}
["Access-Control-Allow-Headers"]=>
array(1) {
[0]=>
string(86) "Content-Type,Authorization,sw-context-token,sw-access-key,sw-language-id,sw-version-id"
}
["sw-version-id"]=>
array(1) {
[0]=>
string(0) ""
}
["sw-language-id"]=>
array(1) {
[0]=>
string(0) ""
}
["sw-context-token"]=>
array(1) {
[0]=>
string(0) ""
}
["x-frame-options"]=>
array(1) {
[0]=>
string(4) "deny"
}
["X-Debug-Token"]=>
array(1) {
[0]=>
string(6) "8fa1eb"
}
["X-Debug-Token-Link"]=>
array(1) {
[0]=>
string(38) "http://myshop.de/_profiler/8fa1eb"
}
["X-Robots-Tag"]=>
array(1) {
[0]=>
string(7) "noindex"
}
["X-Symfony-Cache"]=>
array(1) {
[0]=>
string(25) "GET /api/v1/product: miss"
}
["Vary"]=>
array(1) {
[0]=>
string(13) "Authorization"
}
["Transfer-Encoding"]=>
array(1) {
[0]=>
string(7) "chunked"
}
["Content-Type"]=>
array(1) {
[0]=>
string(24) "application/vnd.api+json"
}
}
["headerNames":"GuzzleHttp\Psr7\Response":private]=>
array(17) {
["date"]=>
string(4) "Date"
["server"]=>
string(6) "Server"
["cache-control"]=>
string(13) "Cache-Control"
["access-control-allow-origin"]=>
string(27) "Access-Control-Allow-Origin"
["access-control-allow-methods"]=>
string(28) "Access-Control-Allow-Methods"
["access-control-allow-headers"]=>
string(28) "Access-Control-Allow-Headers"
["sw-version-id"]=>
string(13) "sw-version-id"
["sw-language-id"]=>
string(14) "sw-language-id"
["sw-context-token"]=>
string(16) "sw-context-token"
["x-frame-options"]=>
string(15) "x-frame-options"
["x-debug-token"]=>
string(13) "X-Debug-Token"
["x-debug-token-link"]=>
string(18) "X-Debug-Token-Link"
["x-robots-tag"]=>
string(12) "X-Robots-Tag"
["x-symfony-cache"]=>
string(15) "X-Symfony-Cache"
["vary"]=>
string(4) "Vary"
["transfer-encoding"]=>
string(17) "Transfer-Encoding"
["content-type"]=>
string(12) "Content-Type"
}
["protocol":"GuzzleHttp\Psr7\Response":private]=>
string(3) "1.1"
["stream":"GuzzleHttp\Psr7\Response":private]=>
object(GuzzleHttp\Psr7\Stream)#3401 (7) {
["stream":"GuzzleHttp\Psr7\Stream":private]=>
resource(121) of type (stream)
["size":"GuzzleHttp\Psr7\Stream":private]=>
NULL
["seekable":"GuzzleHttp\Psr7\Stream":private]=>
bool(true)
["readable":"GuzzleHttp\Psr7\Stream":private]=>
bool(true)
["writable":"GuzzleHttp\Psr7\Stream":private]=>
bool(true)
["uri":"GuzzleHttp\Psr7\Stream":private]=>
string(10) "php://temp"
["customMetadata":"GuzzleHttp\Psr7\Stream":private]=>
array(0) {
}
}
}
wo sind meine Produkdaten?