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
(Lianja) 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
// This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loHttp = createobject("CkHttp") // 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" // } // ] // } // ] // } // } loJson = createobject("CkJsonObject") loJson.UpdateString("product.name","T-shirt") loJson.UpdateString("product.productType","physical") loJson.UpdateNumber("product.priceData.price","10.5") loJson.UpdateString("product.description","nice summer t-shirt") loJson.UpdateString("product.sku","123df") loJson.UpdateBool("product.visible",.F.) loJson.UpdateNumber("product.weight","0.2") loJson.UpdateString("product.discount.type","AMOUNT") loJson.UpdateInt("product.discount.value",1) loJson.UpdateBool("product.manageVariants",.T.) loJson.UpdateString("product.productOptions[0].name","Size") loJson.UpdateString("product.productOptions[0].choices[0].value","S") loJson.UpdateString("product.productOptions[0].choices[0].description","S") loJson.UpdateString("product.productOptions[0].choices[1].value","L") loJson.UpdateString("product.productOptions[0].choices[1].description","L") loHttp.AuthToken = "ACCESS_TOKEN" loHttp.SetRequestHeader("Content-Type","application/json") loResp = loHttp.PostJson3("https://www.wixapis.com/stores/v1/products","application/json",loJson) if (loHttp.LastMethodSuccess = .F.) then ? loHttp.LastErrorText release loHttp release loJson return endif loSbResponseBody = createobject("CkStringBuilder") loResp.GetBodySb(loSbResponseBody) loJResp = createobject("CkJsonObject") loJResp.LoadSb(loSbResponseBody) loJResp.EmitCompact = .F. ? "Response Body:" ? loJResp.Emit() lnRespStatusCode = loResp.StatusCode ? "Response Status Code = " + str(lnRespStatusCode) if (lnRespStatusCode >= 400) then ? "Response Header:" ? loResp.Header ? "Failed." release loResp release loHttp release loJson release loSbResponseBody release loJResp return endif release loResp // 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 lcProductId = loJResp.StringOf("product.id") lcProductName = loJResp.StringOf("product.name") lcProductSlug = loJResp.StringOf("product.slug") llProductVisible = loJResp.BoolOf("product.visible") lcProductProductType = loJResp.StringOf("product.productType") lcProductDescription = loJResp.StringOf("product.description") llProductStockTrackInventory = loJResp.BoolOf("product.stock.trackInventory") llProductStockInStock = loJResp.BoolOf("product.stock.inStock") lcProductPriceCurrency = loJResp.StringOf("product.price.currency") lcProductPricePrice = loJResp.StringOf("product.price.price") lcProductPriceDiscountedPrice = loJResp.StringOf("product.price.discountedPrice") lcProductPriceFormattedPrice = loJResp.StringOf("product.price.formatted.price") lcProductPriceFormattedDiscountedPrice = loJResp.StringOf("product.price.formatted.discountedPrice") lcProductPriceDataCurrency = loJResp.StringOf("product.priceData.currency") lcProductPriceDataPrice = loJResp.StringOf("product.priceData.price") lcProductPriceDataDiscountedPrice = loJResp.StringOf("product.priceData.discountedPrice") lcProductPriceDataFormattedPrice = loJResp.StringOf("product.priceData.formatted.price") lcProductPriceDataFormattedDiscountedPrice = loJResp.StringOf("product.priceData.formatted.discountedPrice") llProductManageVariants = loJResp.BoolOf("product.manageVariants") lcProductProductPageUrlBase = loJResp.StringOf("product.productPageUrl.base") lcProductProductPageUrlPath = loJResp.StringOf("product.productPageUrl.path") lcProductNumericId = loJResp.StringOf("product.numericId") lcProductInventoryItemId = loJResp.StringOf("product.inventoryItemId") lcProductDiscountType = loJResp.StringOf("product.discount.type") lnProductDiscountValue = loJResp.IntOf("product.discount.value") i = 0 lnCount_i = loJResp.SizeOfArray("product.additionalInfoSections") do while i < lnCount_i loJResp.I = i i = i + 1 enddo i = 0 lnCount_i = loJResp.SizeOfArray("product.ribbons") do while i < lnCount_i loJResp.I = i i = i + 1 enddo i = 0 lnCount_i = loJResp.SizeOfArray("product.media.items") do while i < lnCount_i loJResp.I = i i = i + 1 enddo i = 0 lnCount_i = loJResp.SizeOfArray("product.customTextFields") do while i < lnCount_i loJResp.I = i i = i + 1 enddo i = 0 lnCount_i = loJResp.SizeOfArray("product.productOptions") do while i < lnCount_i loJResp.I = i lcOptionType = loJResp.StringOf("product.productOptions[i].optionType") lcName = loJResp.StringOf("product.productOptions[i].name") j = 0 lnCount_j = loJResp.SizeOfArray("product.productOptions[i].choices") do while j < lnCount_j loJResp.J = j lcValue = loJResp.StringOf("product.productOptions[i].choices[j].value") lcDescription = loJResp.StringOf("product.productOptions[i].choices[j].description") llInStock = loJResp.BoolOf("product.productOptions[i].choices[j].inStock") llVisible = loJResp.BoolOf("product.productOptions[i].choices[j].visible") j = j + 1 enddo i = i + 1 enddo i = 0 lnCount_i = loJResp.SizeOfArray("product.collectionIds") do while i < lnCount_i loJResp.I = i i = i + 1 enddo i = 0 lnCount_i = loJResp.SizeOfArray("product.variants") do while i < lnCount_i loJResp.I = i lcId = loJResp.StringOf("product.variants[i].id") lcChoicesSize = loJResp.StringOf("product.variants[i].choices.Size") lcVariantPriceDataCurrency = loJResp.StringOf("product.variants[i].variant.priceData.currency") lcVariantPriceDataPrice = loJResp.StringOf("product.variants[i].variant.priceData.price") lcVariantPriceDataDiscountedPrice = loJResp.StringOf("product.variants[i].variant.priceData.discountedPrice") lcVariantPriceDataFormattedPrice = loJResp.StringOf("product.variants[i].variant.priceData.formatted.price") lcVariantPriceDataFormattedDiscountedPrice = loJResp.StringOf("product.variants[i].variant.priceData.formatted.discountedPrice") lnVariantWeight = loJResp.IntOf("product.variants[i].variant.weight") llVariantVisible = loJResp.BoolOf("product.variants[i].variant.visible") i = i + 1 enddo release loHttp release loJson release loSbResponseBody release loJResp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.