Sample code for 30+ languages & platforms
PHP ActiveX

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 PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

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

$http = new COM("Chilkat.Http");

$http->Login = 'api_username';
$http->Password = 'api_key';
$http->BasicAuth = 1;

$sbResponseBody = new COM("Chilkat.StringBuilder");
$success = $http->QuickGetSb('https://my-shopware-shop.com/api/articles?limit=2',$sbResponseBody);
if ($success == 0) {
    print $http->LastErrorText . "\n";
    exit;
}

$jResp = new COM("Chilkat.JsonObject");
$jResp->LoadSb($sbResponseBody);
$jResp->EmitCompact = 0;

print 'Response Body:' . "\n";
print $jResp->emit() . "\n";

// 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;
}


?>