Sample code for 30+ languages & platforms
Go

Shopware List Articles

See more Shopware Examples

This example shows you how to obtain information about a Shopware product list. With the optional limit parameter, it's possible to specify how many products you wish the API call to return.

Chilkat Go Downloads

Go
    success := false

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    http := chilkat.NewHttp()

    http.SetLogin("api_username")
    http.SetPassword("api_key")
    http.SetBasicAuth(true)

    sbResponseBody := chilkat.NewStringBuilder()
    success = http.QuickGetSb("https://my-shopware-shop.com/api/articles?limit=2",sbResponseBody)
    if success == false {
        fmt.Println(http.LastErrorText())
        http.DisposeHttp()
        sbResponseBody.DisposeStringBuilder()
        return
    }

    jResp := chilkat.NewJsonObject()
    jResp.LoadSb(sbResponseBody)
    jResp.SetEmitCompact(false)

    fmt.Println("Response Body:")
    fmt.Println(*jResp.Emit())

    // Sample JSON response:
    // (Sample code for parsing the JSON response is shown below)

    // {
    //   "data": [
    //     {
    //       "id": 8283,
    //       "mainDetailId": 11398,
    //       "supplierId": 28,
    //       "taxId": 1,
    //       "priceGroupId": 1,
    //       "filterGroupId": null,
    //       "configuratorSetId": null,
    //       "name": "TERRA PC-GAMER 8000 iQ9650 VU - \u00e5\u00a0  \u00c7  Produktmer",
    //       "description": "TERRA PC-GAMER 8000 iQ9650 VU - \u00e5\u00a0  \u00c7  Produktmer",
    //       "descriptionLong": "...",
    //       "added": "2000-01-01T00:00:00+0100",
    //       "active": true,
    //       "pseudoSales": 0,
    //       "highlight": false,
    //       "keywords": null,
    //       "metaTitle": "TERRA PC-GAMER 8000 iQ9650 VU - \u00e5\u00a0  \u00c7  Produktmer",
    //       "changed": "2021-02-21T18:20:39+0100",
    //       "priceGroupActive": false,
    //       "lastStock": false,
    //       "crossBundleLook": 0,
    //       "notification": true,
    //       "template": "",
    //       "mode": 0,
    //       "availableFrom": null,
    //       "availableTo": null,
    //       "mainDetail": {
    //         "id": 11398,
    //         "articleId": 8283,
    //         "unitId": 9,
    //         "number": "WT-1000104",
    //         "supplierNumber": "",
    //         "kind": 1,
    //         "additionalText": "",
    //         "active": true,
    //         "inStock": 28,
    //         "stockMin": null,
    //         "lastStock": false,
    //         "weight": "0.000",
    //         "width": null,
    //         "len": null,
    //         "height": null,
    //         "ean": "4039407005390",
    //         "purchasePrice": "0",
    //         "position": 1,
    //         "minPurchase": 1,
    //         "purchaseSteps": 0,
    //         "maxPurchase": 0,
    //         "purchaseUnit": "0.0000",
    //         "referenceUnit": "1.000",
    //         "packUnit": "Stk",
    //         "shippingFree": false,
    //         "releaseDate": null,
    //         "shippingTime": "20",
    //         "attribute": {
    //           "id": 11271,
    //           "articleDetailId": 11398,
    //           "attr1": null,
    //           "attr2": null,
    //           "attr3": null,
    //           "attr4": null,
    //           "attr5": null,
    //           "attr6": null,
    //           "attr7": null,
    //           "attr8": null,
    //           "attr9": null,
    //           "attr10": null,
    //           "attr11": "Attributfeld 11 deutsch",
    //           "attr12": null,
    //           "attr13": null,
    //           "attr14": "Wortmann - 80061",
    //           "attr15": null,
    //           "attr16": null,
    //           "attr17": "21.02.2021 18:36:46",
    //           "attr18": null,
    //           "attr19": "21.02.2021 18:36:46",
    //           "attr20": "0,00",
    //           "apostroph": ""
    //         }
    //       }
    //     },
    //     {
    //       "id": 8284,
    //       "mainDetailId": 11399,
    //       "supplierId": 28,
    //       "taxId": 1,
    //       "priceGroupId": 1,
    //       "filterGroupId": null,
    //       "configuratorSetId": null,
    //       "name": "TERRA PC-GAMER 9000 iE5420 VU\rProduktmer",
    //       "description": "TERRA PC-GAMER 9000 iE5420 VU\rProduktmer",
    //       "descriptionLong": "...",
    //       "added": "2000-01-01T00:00:00+0100",
    //       "active": true,
    //       "pseudoSales": 0,
    //       "highlight": false,
    //       "keywords": null,
    //       "metaTitle": "TERRA PC-GAMER 9000 iE5420 VU\rProduktmer",
    //       "changed": "2021-02-21T18:20:35+0100",
    //       "priceGroupActive": false,
    //       "lastStock": true,
    //       "crossBundleLook": 0,
    //       "notification": true,
    //       "template": "",
    //       "mode": 0,
    //       "availableFrom": null,
    //       "availableTo": null,
    //       "mainDetail": {
    //         "id": 11399,
    //         "articleId": 8284,
    //         "unitId": 9,
    //         "number": "WT-1000105",
    //         "supplierNumber": "",
    //         "kind": 1,
    //         "additionalText": "",
    //         "active": true,
    //         "inStock": 0,
    //         "stockMin": null,
    //         "lastStock": true,
    //         "weight": "0.000",
    //         "width": null,
    //         "len": null,
    //         "height": null,
    //         "ean": "4039407006137",
    //         "purchasePrice": "0",
    //         "position": 1,
    //         "minPurchase": 1,
    //         "purchaseSteps": 0,
    //         "maxPurchase": 0,
    //         "purchaseUnit": "0.0000",
    //         "referenceUnit": "1.000",
    //         "packUnit": "Stk",
    //         "shippingFree": false,
    //         "releaseDate": null,
    //         "shippingTime": "20",
    //         "attribute": {
    //           "id": 11272,
    //           "articleDetailId": 11399,
    //           "attr1": null,
    //           "attr2": null,
    //           "attr3": null,
    //           "attr4": null,
    //           "attr5": null,
    //           "attr6": null,
    //           "attr7": null,
    //           "attr8": null,
    //           "attr9": null,
    //           "attr10": null,
    //           "attr11": "Attributfeld 11 deutsch",
    //           "attr12": null,
    //           "attr13": null,
    //           "attr14": "Wortmann - 80061",
    //           "attr15": null,
    //           "attr16": null,
    //           "attr17": "21.02.2021 18:36:50",
    //           "attr18": null,
    //           "attr19": "21.02.2021 18:36:50",
    //           "attr20": "0,00",
    //           "apostroph": ""
    //         }
    //       }
    //     }
    //   ],
    //   "total": 9,
    //   "success": true
    // }

    // Sample code for parsing the JSON response...
    // Use the following online tool to generate parsing code from sample JSON:
    // Generate Parsing Code from JSON

    var id int
    var mainDetailId int
    var supplierId int
    var taxId int
    var priceGroupId int
    var filterGroupId *string = new(string)
    var configuratorSetId *string = new(string)
    var name *string = new(string)
    var description *string = new(string)
    var descriptionLong *string = new(string)
    var added *string = new(string)
    var active bool
    var pseudoSales int
    var highlight bool
    var keywords *string = new(string)
    var metaTitle *string = new(string)
    var changed *string = new(string)
    var priceGroupActive bool
    var lastStock bool
    var crossBundleLook int
    var notification bool
    var template *string = new(string)
    var mode int
    var availableFrom *string = new(string)
    var availableTo *string = new(string)
    var mainDetailArticleId int
    var mainDetailUnitId int
    var mainDetailNumber *string = new(string)
    var mainDetailSupplierNumber *string = new(string)
    var mainDetailKind int
    var mainDetailAdditionalText *string = new(string)
    var mainDetailActive bool
    var mainDetailInStock int
    var mainDetailStockMin *string = new(string)
    var mainDetailLastStock bool
    var mainDetailWeight *string = new(string)
    var mainDetailWidth *string = new(string)
    var mainDetailLen *string = new(string)
    var mainDetailHeight *string = new(string)
    var mainDetailEan *string = new(string)
    var mainDetailPurchasePrice *string = new(string)
    var mainDetailPosition int
    var mainDetailMinPurchase int
    var mainDetailPurchaseSteps int
    var mainDetailMaxPurchase int
    var mainDetailPurchaseUnit *string = new(string)
    var mainDetailReferenceUnit *string = new(string)
    var mainDetailPackUnit *string = new(string)
    var mainDetailShippingFree bool
    var mainDetailReleaseDate *string = new(string)
    var mainDetailShippingTime *string = new(string)
    var mainDetailAttributeId int
    var mainDetailAttributeArticleDetailId int
    var mainDetailAttributeAttr1 *string = new(string)
    var mainDetailAttributeAttr2 *string = new(string)
    var mainDetailAttributeAttr3 *string = new(string)
    var mainDetailAttributeAttr4 *string = new(string)
    var mainDetailAttributeAttr5 *string = new(string)
    var mainDetailAttributeAttr6 *string = new(string)
    var mainDetailAttributeAttr7 *string = new(string)
    var mainDetailAttributeAttr8 *string = new(string)
    var mainDetailAttributeAttr9 *string = new(string)
    var mainDetailAttributeAttr10 *string = new(string)
    var mainDetailAttributeAttr11 *string = new(string)
    var mainDetailAttributeAttr12 *string = new(string)
    var mainDetailAttributeAttr13 *string = new(string)
    var mainDetailAttributeAttr14 *string = new(string)
    var mainDetailAttributeAttr15 *string = new(string)
    var mainDetailAttributeAttr16 *string = new(string)
    var mainDetailAttributeAttr17 *string = new(string)
    var mainDetailAttributeAttr18 *string = new(string)
    var mainDetailAttributeAttr19 *string = new(string)
    var mainDetailAttributeAttr20 *string = new(string)
    var mainDetailAttributeApostroph *string = new(string)

    total := jResp.IntOf("total")
    success = jResp.BoolOf("success")
    i := 0
    count_i := jResp.SizeOfArray("data")
    for i < count_i {
        jResp.SetI(i)
        id = jResp.IntOf("data[i].id")
        mainDetailId = jResp.IntOf("data[i].mainDetailId")
        supplierId = jResp.IntOf("data[i].supplierId")
        taxId = jResp.IntOf("data[i].taxId")
        priceGroupId = jResp.IntOf("data[i].priceGroupId")
        filterGroupId = jResp.StringOf("data[i].filterGroupId")
        configuratorSetId = jResp.StringOf("data[i].configuratorSetId")
        name = jResp.StringOf("data[i].name")
        description = jResp.StringOf("data[i].description")
        descriptionLong = jResp.StringOf("data[i].descriptionLong")
        added = jResp.StringOf("data[i].added")
        active = jResp.BoolOf("data[i].active")
        pseudoSales = jResp.IntOf("data[i].pseudoSales")
        highlight = jResp.BoolOf("data[i].highlight")
        keywords = jResp.StringOf("data[i].keywords")
        metaTitle = jResp.StringOf("data[i].metaTitle")
        changed = jResp.StringOf("data[i].changed")
        priceGroupActive = jResp.BoolOf("data[i].priceGroupActive")
        lastStock = jResp.BoolOf("data[i].lastStock")
        crossBundleLook = jResp.IntOf("data[i].crossBundleLook")
        notification = jResp.BoolOf("data[i].notification")
        template = jResp.StringOf("data[i].template")
        mode = jResp.IntOf("data[i].mode")
        availableFrom = jResp.StringOf("data[i].availableFrom")
        availableTo = jResp.StringOf("data[i].availableTo")
        mainDetailId = jResp.IntOf("data[i].mainDetail.id")
        mainDetailArticleId = jResp.IntOf("data[i].mainDetail.articleId")
        mainDetailUnitId = jResp.IntOf("data[i].mainDetail.unitId")
        mainDetailNumber = jResp.StringOf("data[i].mainDetail.number")
        mainDetailSupplierNumber = jResp.StringOf("data[i].mainDetail.supplierNumber")
        mainDetailKind = jResp.IntOf("data[i].mainDetail.kind")
        mainDetailAdditionalText = jResp.StringOf("data[i].mainDetail.additionalText")
        mainDetailActive = jResp.BoolOf("data[i].mainDetail.active")
        mainDetailInStock = jResp.IntOf("data[i].mainDetail.inStock")
        mainDetailStockMin = jResp.StringOf("data[i].mainDetail.stockMin")
        mainDetailLastStock = jResp.BoolOf("data[i].mainDetail.lastStock")
        mainDetailWeight = jResp.StringOf("data[i].mainDetail.weight")
        mainDetailWidth = jResp.StringOf("data[i].mainDetail.width")
        mainDetailLen = jResp.StringOf("data[i].mainDetail.len")
        mainDetailHeight = jResp.StringOf("data[i].mainDetail.height")
        mainDetailEan = jResp.StringOf("data[i].mainDetail.ean")
        mainDetailPurchasePrice = jResp.StringOf("data[i].mainDetail.purchasePrice")
        mainDetailPosition = jResp.IntOf("data[i].mainDetail.position")
        mainDetailMinPurchase = jResp.IntOf("data[i].mainDetail.minPurchase")
        mainDetailPurchaseSteps = jResp.IntOf("data[i].mainDetail.purchaseSteps")
        mainDetailMaxPurchase = jResp.IntOf("data[i].mainDetail.maxPurchase")
        mainDetailPurchaseUnit = jResp.StringOf("data[i].mainDetail.purchaseUnit")
        mainDetailReferenceUnit = jResp.StringOf("data[i].mainDetail.referenceUnit")
        mainDetailPackUnit = jResp.StringOf("data[i].mainDetail.packUnit")
        mainDetailShippingFree = jResp.BoolOf("data[i].mainDetail.shippingFree")
        mainDetailReleaseDate = jResp.StringOf("data[i].mainDetail.releaseDate")
        mainDetailShippingTime = jResp.StringOf("data[i].mainDetail.shippingTime")
        mainDetailAttributeId = jResp.IntOf("data[i].mainDetail.attribute.id")
        mainDetailAttributeArticleDetailId = jResp.IntOf("data[i].mainDetail.attribute.articleDetailId")
        mainDetailAttributeAttr1 = jResp.StringOf("data[i].mainDetail.attribute.attr1")
        mainDetailAttributeAttr2 = jResp.StringOf("data[i].mainDetail.attribute.attr2")
        mainDetailAttributeAttr3 = jResp.StringOf("data[i].mainDetail.attribute.attr3")
        mainDetailAttributeAttr4 = jResp.StringOf("data[i].mainDetail.attribute.attr4")
        mainDetailAttributeAttr5 = jResp.StringOf("data[i].mainDetail.attribute.attr5")
        mainDetailAttributeAttr6 = jResp.StringOf("data[i].mainDetail.attribute.attr6")
        mainDetailAttributeAttr7 = jResp.StringOf("data[i].mainDetail.attribute.attr7")
        mainDetailAttributeAttr8 = jResp.StringOf("data[i].mainDetail.attribute.attr8")
        mainDetailAttributeAttr9 = jResp.StringOf("data[i].mainDetail.attribute.attr9")
        mainDetailAttributeAttr10 = jResp.StringOf("data[i].mainDetail.attribute.attr10")
        mainDetailAttributeAttr11 = jResp.StringOf("data[i].mainDetail.attribute.attr11")
        mainDetailAttributeAttr12 = jResp.StringOf("data[i].mainDetail.attribute.attr12")
        mainDetailAttributeAttr13 = jResp.StringOf("data[i].mainDetail.attribute.attr13")
        mainDetailAttributeAttr14 = jResp.StringOf("data[i].mainDetail.attribute.attr14")
        mainDetailAttributeAttr15 = jResp.StringOf("data[i].mainDetail.attribute.attr15")
        mainDetailAttributeAttr16 = jResp.StringOf("data[i].mainDetail.attribute.attr16")
        mainDetailAttributeAttr17 = jResp.StringOf("data[i].mainDetail.attribute.attr17")
        mainDetailAttributeAttr18 = jResp.StringOf("data[i].mainDetail.attribute.attr18")
        mainDetailAttributeAttr19 = jResp.StringOf("data[i].mainDetail.attribute.attr19")
        mainDetailAttributeAttr20 = jResp.StringOf("data[i].mainDetail.attribute.attr20")
        mainDetailAttributeApostroph = jResp.StringOf("data[i].mainDetail.attribute.apostroph")
        i = i + 1
    }


    http.DisposeHttp()
    sbResponseBody.DisposeStringBuilder()
    jResp.DisposeJsonObject()