Lesezeichen setzen REST API - Artikel löschen

Hallo kann mir jemand genau schrieben wie ich ein Artikel in SW5 über die REST API  lösche ?

 

Das Beispiel:

DELETEAnchor link for: delete

The product(s) to delete can be defined using the following syntax:

IdentifierParameterDB columnExample callArticle Idids_articles.id/api/articles/2

DELETE (Stack)Anchor link for: delete (stack)

In order to delete more than one product at once, it’s possible to provide an array of objects with ids or product numbers to the REST API. Simply pass the array of objects to the following URL (example)

without providing an id as seen in the single DELETE request.

ExampleAnchor link for: example

  • Deletes product with id 1 and product with number SW00002

    [
    {“id”: 1},
    {“mainDetail”:
    {
    “number”: “SW00002”
    }
    }
    ]

Das Beispiel verstehe ich nicht :frowning:

https://developers.shopware.com/developers-guide/rest-api/api-resource-article/

 

PS. Am liebsten möchte ich auch nur die Ordernummer angeben… Woher soll ich denn die ID wissen  :(

Wenn ich 100 Artikelnummern löschen soll, kann ich doch nicht die ID’s nachsehen, dann kann ich das gleich per Hand löschen…

Hallo niko,

ja, das Problem kenn ich. Über folgenden Weg kannst du es lösen.

  1. Über die API die ID abfragen

    //Funktion zur Korrektur des String zur API Abfrage
    $removeBom = function ($var) {
    return preg_replace(’/\0/’, „“, $var);
    };

    $artikel = $client->get($removeBom(‚articles/‘ . $ordernumber . ‚?useNumberAsId=true‘));

  2. jetzt die ID nutzen um den Artikel zu löschen

    $id = $artikel[‚data‘][‚id‘];

    $client->delete(‚articles/‘.$id);

Wenn du deine Ordernumber in einem Array hast kannst du es über eine Schleife laufen lassen. Prinzipiell ist es auch möglich eine JSON zu nutzen wenn du immer mehrere Artikel löschen musst 

 

Eventuell funktioniert mittlerweile auch folgender Weg. Bei meinen Tests damals war das noch nicht der Fall:

$client->delete('articles/' . $ordernumber . '?useNumberAsId=true');

Beste Grüße

Magnum