Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PHP ActiveX) WiX Create ProductCreates a new product. Note: If you get a 403 error response, try refreshing the access token. For more information, see https://dev.wix.com/api/rest/wix-stores/catalog/product/create-product
<?php // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.Http') $http = new COM("Chilkat.Http"); // Implements the following CURL command: // curl -X POST \ // 'https://www.wixapis.com/stores/v1/products' \ // --data-binary '{ // "product": { // "name": "T-shirt", // "productType": "physical", // "priceData": { // "price": 10.5 // }, // "description": "nice summer t-shirt", // "sku": "123df", // "visible": false, // "weight": 0.2, // "discount": { // "type": "AMOUNT", // "value": 1 // }, // "manageVariants": true, // "productOptions": [ // { // "name": "Size", // "choices": [ // { // "value": "S", // "description": "S" // }, // { // "value": "L", // "description": "L" // } // ] // } // ] // } // }' \ // -H 'Content-Type: application/json' \ // -H 'Authorization: <AUTH>' // Use the following online tool to generate HTTP code from a CURL command // Convert a cURL Command to HTTP Source Code // Use this online tool to generate code from sample JSON: // Generate Code to Create JSON // The following JSON is sent in the request body. // { // "product": { // "name": "T-shirt", // "productType": "physical", // "priceData": { // "price": 10.5 // }, // "description": "nice summer t-shirt", // "sku": "123df", // "visible": false, // "weight": 0.2, // "discount": { // "type": "AMOUNT", // "value": 1 // }, // "manageVariants": true, // "productOptions": [ // { // "name": "Size", // "choices": [ // { // "value": "S", // "description": "S" // }, // { // "value": "L", // "description": "L" // } // ] // } // ] // } // } // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.JsonObject') $json = new COM("Chilkat.JsonObject"); $json->UpdateString('product.name','T-shirt'); $json->UpdateString('product.productType','physical'); $json->UpdateNumber('product.priceData.price','10.5'); $json->UpdateString('product.description','nice summer t-shirt'); $json->UpdateString('product.sku','123df'); $json->UpdateBool('product.visible',0); $json->UpdateNumber('product.weight','0.2'); $json->UpdateString('product.discount.type','AMOUNT'); $json->UpdateInt('product.discount.value',1); $json->UpdateBool('product.manageVariants',1); $json->UpdateString('product.productOptions[0].name','Size'); $json->UpdateString('product.productOptions[0].choices[0].value','S'); $json->UpdateString('product.productOptions[0].choices[0].description','S'); $json->UpdateString('product.productOptions[0].choices[1].value','L'); $json->UpdateString('product.productOptions[0].choices[1].description','L'); $http->AuthToken = 'ACCESS_TOKEN'; $http->SetRequestHeader('Content-Type','application/json'); // resp is a Chilkat.HttpResponse $resp = $http->PostJson3('https://www.wixapis.com/stores/v1/products','application/json',$json); if ($http->LastMethodSuccess == 0) { print $http->LastErrorText . "\n"; exit; } // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.StringBuilder') $sbResponseBody = new COM("Chilkat.StringBuilder"); $resp->GetBodySb($sbResponseBody); // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.JsonObject') $jResp = new COM("Chilkat.JsonObject"); $jResp->LoadSb($sbResponseBody); $jResp->EmitCompact = 0; print 'Response Body:' . "\n"; print $jResp->emit() . "\n"; $respStatusCode = $resp->StatusCode; print 'Response Status Code = ' . $respStatusCode . "\n"; if ($respStatusCode >= 400) { print 'Response Header:' . "\n"; print $resp->Header . "\n"; print 'Failed.' . "\n"; exit; } // Sample JSON response: // (Sample code for parsing the JSON response is shown below) // { // "product": { // "id": "e28e4ddd-6ed0-4098-a5e5-cf4bd9c4f7b5", // "name": "T-shirt", // "slug": "t-shirt-1", // "visible": false, // "productType": "physical", // "description": "nice summer t-shirt", // "stock": { // "trackInventory": false, // "inStock": true // }, // "price": { // "currency": "ILS", // "price": 10.5, // "discountedPrice": 9.5, // "formatted": { // "price": "10.50", // "discountedPrice": "9.50" // } // }, // "priceData": { // "currency": "ILS", // "price": 10.5, // "discountedPrice": 9.5, // "formatted": { // "price": "10.50", // "discountedPrice": "9.50" // } // }, // "additionalInfoSections": [ // ], // "ribbons": [ // ], // "media": { // "items": [ // ] // }, // "customTextFields": [ // ], // "manageVariants": true, // "productOptions": [ // { // "optionType": "drop_down", // "name": "Size", // "choices": [ // { // "value": "S", // "description": "S", // "inStock": true, // "visible": true // }, // { // "value": "L", // "description": "L", // "inStock": true, // "visible": true // } // ] // } // ], // "productPageUrl": { // "base": "https://www.itsjusttooeasy123.com/", // "path": "/product-page/t-shirt-1" // }, // "numericId": "1567588455405000", // "inventoryItemId": "1d71b222-912f-bf67-5a1a-30b4263b084a", // "discount": { // "type": "AMOUNT", // "value": 1 // }, // "collectionIds": [ // ], // "variants": [ // { // "id": "00000000-0000-0001-0005-93fc95e0514a", // "choices": { // "Size": "S" // }, // "variant": { // "priceData": { // "currency": "ILS", // "price": 10.5, // "discountedPrice": 9.5, // "formatted": { // "price": "10.50", // "discountedPrice": "9.50" // } // }, // "weight": 10, // "visible": true // } // }, // { // "id": "00000000-0000-0002-0005-93fc95e0514a", // "choices": { // "Size": "L" // }, // "variant": { // "priceData": { // "currency": "ILS", // "price": 10.5, // "discountedPrice": 9.5, // "formatted": { // "price": "10.50", // "discountedPrice": "9.50" // } // }, // "visible": 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 $productId = $jResp->stringOf('product.id'); $productName = $jResp->stringOf('product.name'); $productSlug = $jResp->stringOf('product.slug'); $productVisible = $jResp->BoolOf('product.visible'); $productProductType = $jResp->stringOf('product.productType'); $productDescription = $jResp->stringOf('product.description'); $productStockTrackInventory = $jResp->BoolOf('product.stock.trackInventory'); $productStockInStock = $jResp->BoolOf('product.stock.inStock'); $productPriceCurrency = $jResp->stringOf('product.price.currency'); $productPricePrice = $jResp->stringOf('product.price.price'); $productPriceDiscountedPrice = $jResp->stringOf('product.price.discountedPrice'); $productPriceFormattedPrice = $jResp->stringOf('product.price.formatted.price'); $productPriceFormattedDiscountedPrice = $jResp->stringOf('product.price.formatted.discountedPrice'); $productPriceDataCurrency = $jResp->stringOf('product.priceData.currency'); $productPriceDataPrice = $jResp->stringOf('product.priceData.price'); $productPriceDataDiscountedPrice = $jResp->stringOf('product.priceData.discountedPrice'); $productPriceDataFormattedPrice = $jResp->stringOf('product.priceData.formatted.price'); $productPriceDataFormattedDiscountedPrice = $jResp->stringOf('product.priceData.formatted.discountedPrice'); $productManageVariants = $jResp->BoolOf('product.manageVariants'); $productProductPageUrlBase = $jResp->stringOf('product.productPageUrl.base'); $productProductPageUrlPath = $jResp->stringOf('product.productPageUrl.path'); $productNumericId = $jResp->stringOf('product.numericId'); $productInventoryItemId = $jResp->stringOf('product.inventoryItemId'); $productDiscountType = $jResp->stringOf('product.discount.type'); $productDiscountValue = $jResp->IntOf('product.discount.value'); $i = 0; $count_i = $jResp->SizeOfArray('product.additionalInfoSections'); while ($i < $count_i) { $jResp->I = $i; $i = $i + 1; } $i = 0; $count_i = $jResp->SizeOfArray('product.ribbons'); while ($i < $count_i) { $jResp->I = $i; $i = $i + 1; } $i = 0; $count_i = $jResp->SizeOfArray('product.media.items'); while ($i < $count_i) { $jResp->I = $i; $i = $i + 1; } $i = 0; $count_i = $jResp->SizeOfArray('product.customTextFields'); while ($i < $count_i) { $jResp->I = $i; $i = $i + 1; } $i = 0; $count_i = $jResp->SizeOfArray('product.productOptions'); while ($i < $count_i) { $jResp->I = $i; $optionType = $jResp->stringOf('product.productOptions[i].optionType'); $name = $jResp->stringOf('product.productOptions[i].name'); $j = 0; $count_j = $jResp->SizeOfArray('product.productOptions[i].choices'); while ($j < $count_j) { $jResp->J = $j; $value = $jResp->stringOf('product.productOptions[i].choices[j].value'); $description = $jResp->stringOf('product.productOptions[i].choices[j].description'); $inStock = $jResp->BoolOf('product.productOptions[i].choices[j].inStock'); $visible = $jResp->BoolOf('product.productOptions[i].choices[j].visible'); $j = $j + 1; } $i = $i + 1; } $i = 0; $count_i = $jResp->SizeOfArray('product.collectionIds'); while ($i < $count_i) { $jResp->I = $i; $i = $i + 1; } $i = 0; $count_i = $jResp->SizeOfArray('product.variants'); while ($i < $count_i) { $jResp->I = $i; $id = $jResp->stringOf('product.variants[i].id'); $choicesSize = $jResp->stringOf('product.variants[i].choices.Size'); $variantPriceDataCurrency = $jResp->stringOf('product.variants[i].variant.priceData.currency'); $variantPriceDataPrice = $jResp->stringOf('product.variants[i].variant.priceData.price'); $variantPriceDataDiscountedPrice = $jResp->stringOf('product.variants[i].variant.priceData.discountedPrice'); $variantPriceDataFormattedPrice = $jResp->stringOf('product.variants[i].variant.priceData.formatted.price'); $variantPriceDataFormattedDiscountedPrice = $jResp->stringOf('product.variants[i].variant.priceData.formatted.discountedPrice'); $variantWeight = $jResp->IntOf('product.variants[i].variant.weight'); $variantVisible = $jResp->BoolOf('product.variants[i].variant.visible'); $i = $i + 1; } ?> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.