PHP ActiveX
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
$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;
}
?>