Sample code for 30+ languages & platforms
Chilkat2-Python

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 Chilkat2-Python Downloads

Chilkat2-Python
import sys
import chilkat2

success = False

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

http = chilkat2.Http()

http.Login = "api_username"
http.Password = "api_key"
http.BasicAuth = True

sbResponseBody = chilkat2.StringBuilder()
success = http.QuickGetSb("https://my-shopware-shop.com/api/articles?limit=2",sbResponseBody)
if (success == False):
    print(http.LastErrorText)
    sys.exit()

jResp = chilkat2.JsonObject()
jResp.LoadSb(sbResponseBody)
jResp.EmitCompact = False

print("Response Body:")
print(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

total = jResp.IntOf("total")
success = jResp.BoolOf("success")
i = 0
count_i = jResp.SizeOfArray("data")
while i < count_i :
    jResp.I = 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