REST API Varianten falsch hinzugefügt

Hallo zusammen,

wenn ich in SW 5 einen Artikel mit Variante einfüge (gemäß dem Beispiel unten) wird was angelegt, ok. Wenn ich dann ins Backend gehe und nach der Hauptartikelnummer suche, kommt nichts. In der Artikelübersicht wird mir die erste Variante als Artikel angezeigt.

Wenn ich allerdings einen Artikel im Backend erstelle und dem Varianten gebe kann ich ich den Hauptartikel aufrufen.

Hat jemand ne Idee? Ist die Doku falsch? API Bug?

 

Der folgende JSON String stammt aus der API Doku für das Anlegen eines Artikels mit Varianten
REST API - Examples using the article resource

{
    "name": "ConfiguratorTest",
    "description": "A test article",
    "descriptionLong": "I'm a **test article",
    "active": true,
    "taxId": 1,
    "supplierId": 2,
    
    "mainDetail": {
        "number": "swTEST5d9b1a9cbcc9d",
        "active": true,
        "prices": [
            {
                "customerGroupKey": "EK",
                "price": 999
            }
        ]
    },
    "configuratorSet": {
        "groups": [
            {
                "name": "Size",
                "options": [
                    {
                        "name": "S"
                    },
                    {
                        "name": "M"
                    },
                    {
                        "name": "L"
                    },
                    {
                        "name": "XL"
                    },
                    {
                        "name": "XXL"
                    }
                ]
            },
            {
                "name": "Color",
                "options": [
                    {
                        "name": "White"
                    },
                    {
                        "name": "Yellow"
                    },
                    {
                        "name": "Blue"
                    },
                    {
                        "name": "Black"
                    }
                ]
            }
        ]
    },
    "variants": [
        {
            "isMain": true,
            "number": "swTEST5d9b1a9cbcc9f",
            "inStock": 15,
            "additionaltext": "S \/ Schwarz",
            "configuratorOptions": [
                {
                    "group": "Size",
                    "option": "S"
                },
                {
                    "group": "Color",
                    "option": "Black"
                }
            ],
            "prices": [
                {
                    "customerGroupKey": "EK",
                    "price": 999
                }
            ]
        },
        {
            "number": "swTEST5d9b1a9cbcca0",
            "inStock": 10,
            "additionaltext": "S \/ Wei\u00df",
            "configuratorOptions": [
                {
                    "group": "Size",
                    "option": "S"
                },
                {
                    "group": "Color",
                    "option": "White"
                }
            ],
            "prices": [
                {
                    "customerGroupKey": "EK",
                    "price": 888
                }
            ],
            "attribute": {
                "attr1": "S\/White Attr1",
                "attr2": "SomeText"
            }
        },
        {
            "number": "swTEST5d9b1a9cbcca1",
            "inStock": 5,
            "additionaltext": "XL \/ Blue",
            "configuratorOptions": [
                {
                    "group": "Size",
                    "option": "XL"
                },
                {
                    "group": "Color",
                    "option": "Blue"
                }
            ],
            "prices": [
                {
                    "customerGroupKey": "EK",
                    "price": 555
                }
            ]
        }
    ]
}

 

Glaub ich hab was. wenn ich in der Variante “isMain” true NICHT sende, klappt es! Was hat das für einen Sinn?

Hallo @NicoDeluxe‍,

einfach das Main Variante array von Varianten Array zu mainDetail Verschieben, und dann funktioniert.

VG,

image

Tel.: +49 755 - 183 990 00 | E-Mail: info@enbit.de | Web: http://enbit.de/

Danke, habs hinbekommen. Kannst du mir verraten, welchen Preis man dem Hauptartikel setzen muss? Es sollen ja nur die Preise der Variante gelten

Was hat dieses isMain an der Variante zu tun, weiß das jemand?

Shopware 5 hat ein ganz spezielles Design, wo die Hauptvariante (‚isMain‘) automatisch zum Variantenkopf wird. Das erschwert die Programmierung einer Restschnittstelle in vielerlei Hinsichten. Die Hauptvariante muss zum Variantenkopf übernommen werden.