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
(DataFlex) Shopify Update a product and associated variants and imagesUpdate a product and associated variants and images
Use ChilkatAx-win32.pkg Procedure Test Handle hoRest Boolean iSuccess Req Handle hoJsonReq Variant vSbReq Handle hoSbReq Variant vSbJson Handle hoSbJson Handle hoJson Integer iProductId String sProductTitle String sProductBody_html String sProductVendor String sProductProduct_type String sProductCreated_at String sProductHandle String sProductUpdated_at Boolean iProductPublished_at Boolean iProductTemplate_suffix String sProductPublished_scope String sProductTags Integer iProductImageId Integer iProductImageProduct_id Integer iProductImagePosition String sProductImageCreated_at String sProductImageUpdated_at Integer iProductImageWidth Integer iProductImageHeight String sProductImageSrc Integer i Integer iCount_i Integer iId Integer iProduct_id String sTitle String sPrice String sSku Integer iPosition Integer iGrams String sInventory_policy Boolean iCompare_at_price String sFulfillment_service String sInventory_management String sOption1 Boolean iOption2 Boolean iOption3 String sCreated_at String sUpdated_at Boolean iTaxable String sBarcode Integer iImage_id Integer iInventory_quantity Integer iWeight String sWeight_unit Integer iOld_inventory_quantity Boolean iRequires_shipping String sName Integer j Integer iCount_j String sStrVal Integer iWidth Integer iHeight String sSrc Integer iIntVal String sTemp1 Integer iTemp1 Get Create (RefClass(cComChilkatRest)) To hoRest If (Not(IsComObjectCreated(hoRest))) Begin Send CreateComObject of hoRest End Get ComSetAuthBasic Of hoRest "SHOPIFY_PRIVATE_API_KEY" "SHOPIFY_PRIVATE_API_KEY" To iSuccess Get ComConnect Of hoRest "chilkat.myshopify.com" 443 True True To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End // The following code creates the JSON request body. // The JSON created by this code is shown below. Get Create (RefClass(cComChilkatJsonObject)) To hoJsonReq If (Not(IsComObjectCreated(hoJsonReq))) Begin Send CreateComObject of hoJsonReq End Get ComUpdateNumber Of hoJsonReq "product.id" "632910392" To iSuccess Get ComUpdateBool Of hoJsonReq "product.published" False To iSuccess // The JSON request body created by the above code: // { // "product": { // "id": 632910392, // "published": false // } // } Get Create (RefClass(cComChilkatStringBuilder)) To hoSbReq If (Not(IsComObjectCreated(hoSbReq))) Begin Send CreateComObject of hoSbReq End Get pvComObject of hoSbReq to vSbReq Get ComEmitSb Of hoJsonReq vSbReq To iSuccess Get ComAddHeader Of hoRest "Content-Type" "application/json" To iSuccess Get Create (RefClass(cComChilkatStringBuilder)) To hoSbJson If (Not(IsComObjectCreated(hoSbJson))) Begin Send CreateComObject of hoSbJson End Get pvComObject of hoSbReq to vSbReq Get pvComObject of hoSbJson to vSbJson Get ComFullRequestSb Of hoRest "PUT" "/admin/products/#{id}.json" vSbReq vSbJson To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoRest To sTemp1 Showln sTemp1 Procedure_Return End Get ComResponseStatusCode Of hoRest To iTemp1 If (iTemp1 <> 200) Begin Get ComResponseStatusCode Of hoRest To iTemp1 Showln "Received error response code: " iTemp1 Showln "Response body:" Get ComGetAsString Of hoSbJson To sTemp1 Showln sTemp1 Procedure_Return End Get Create (RefClass(cComChilkatJsonObject)) To hoJson If (Not(IsComObjectCreated(hoJson))) Begin Send CreateComObject of hoJson End Get pvComObject of hoSbJson to vSbJson Get ComLoadSb Of hoJson vSbJson To iSuccess // The following code parses the JSON response. // A sample JSON response is shown below the sample code. Get ComIntOf Of hoJson "product.id" To iProductId Get ComStringOf Of hoJson "product.title" To sProductTitle Get ComStringOf Of hoJson "product.body_html" To sProductBody_html Get ComStringOf Of hoJson "product.vendor" To sProductVendor Get ComStringOf Of hoJson "product.product_type" To sProductProduct_type Get ComStringOf Of hoJson "product.created_at" To sProductCreated_at Get ComStringOf Of hoJson "product.handle" To sProductHandle Get ComStringOf Of hoJson "product.updated_at" To sProductUpdated_at Get ComIsNullOf Of hoJson "product.published_at" To iProductPublished_at Get ComIsNullOf Of hoJson "product.template_suffix" To iProductTemplate_suffix Get ComStringOf Of hoJson "product.published_scope" To sProductPublished_scope Get ComStringOf Of hoJson "product.tags" To sProductTags Get ComIntOf Of hoJson "product.image.id" To iProductImageId Get ComIntOf Of hoJson "product.image.product_id" To iProductImageProduct_id Get ComIntOf Of hoJson "product.image.position" To iProductImagePosition Get ComStringOf Of hoJson "product.image.created_at" To sProductImageCreated_at Get ComStringOf Of hoJson "product.image.updated_at" To sProductImageUpdated_at Get ComIntOf Of hoJson "product.image.width" To iProductImageWidth Get ComIntOf Of hoJson "product.image.height" To iProductImageHeight Get ComStringOf Of hoJson "product.image.src" To sProductImageSrc Move 0 To i Get ComSizeOfArray Of hoJson "product.variants" To iCount_i While (i < iCount_i) Set ComI Of hoJson To i Get ComIntOf Of hoJson "product.variants[i].id" To iId Get ComIntOf Of hoJson "product.variants[i].product_id" To iProduct_id Get ComStringOf Of hoJson "product.variants[i].title" To sTitle Get ComStringOf Of hoJson "product.variants[i].price" To sPrice Get ComStringOf Of hoJson "product.variants[i].sku" To sSku Get ComIntOf Of hoJson "product.variants[i].position" To iPosition Get ComIntOf Of hoJson "product.variants[i].grams" To iGrams Get ComStringOf Of hoJson "product.variants[i].inventory_policy" To sInventory_policy Get ComIsNullOf Of hoJson "product.variants[i].compare_at_price" To iCompare_at_price Get ComStringOf Of hoJson "product.variants[i].fulfillment_service" To sFulfillment_service Get ComStringOf Of hoJson "product.variants[i].inventory_management" To sInventory_management Get ComStringOf Of hoJson "product.variants[i].option1" To sOption1 Get ComIsNullOf Of hoJson "product.variants[i].option2" To iOption2 Get ComIsNullOf Of hoJson "product.variants[i].option3" To iOption3 Get ComStringOf Of hoJson "product.variants[i].created_at" To sCreated_at Get ComStringOf Of hoJson "product.variants[i].updated_at" To sUpdated_at Get ComBoolOf Of hoJson "product.variants[i].taxable" To iTaxable Get ComStringOf Of hoJson "product.variants[i].barcode" To sBarcode Get ComIntOf Of hoJson "product.variants[i].image_id" To iImage_id Get ComIntOf Of hoJson "product.variants[i].inventory_quantity" To iInventory_quantity Get ComIntOf Of hoJson "product.variants[i].weight" To iWeight Get ComStringOf Of hoJson "product.variants[i].weight_unit" To sWeight_unit Get ComIntOf Of hoJson "product.variants[i].old_inventory_quantity" To iOld_inventory_quantity Get ComBoolOf Of hoJson "product.variants[i].requires_shipping" To iRequires_shipping Move (i + 1) To i Loop Move 0 To i Get ComSizeOfArray Of hoJson "product.options" To iCount_i While (i < iCount_i) Set ComI Of hoJson To i Get ComIntOf Of hoJson "product.options[i].id" To iId Get ComIntOf Of hoJson "product.options[i].product_id" To iProduct_id Get ComStringOf Of hoJson "product.options[i].name" To sName Get ComIntOf Of hoJson "product.options[i].position" To iPosition Move 0 To j Get ComSizeOfArray Of hoJson "product.options[i].values" To iCount_j While (j < iCount_j) Set ComJ Of hoJson To j Get ComStringOf Of hoJson "product.options[i].values[j]" To sStrVal Move (j + 1) To j Loop Move (i + 1) To i Loop Move 0 To i Get ComSizeOfArray Of hoJson "product.images" To iCount_i While (i < iCount_i) Set ComI Of hoJson To i Get ComIntOf Of hoJson "product.images[i].id" To iId Get ComIntOf Of hoJson "product.images[i].product_id" To iProduct_id Get ComIntOf Of hoJson "product.images[i].position" To iPosition Get ComStringOf Of hoJson "product.images[i].created_at" To sCreated_at Get ComStringOf Of hoJson "product.images[i].updated_at" To sUpdated_at Get ComIntOf Of hoJson "product.images[i].width" To iWidth Get ComIntOf Of hoJson "product.images[i].height" To iHeight Get ComStringOf Of hoJson "product.images[i].src" To sSrc Move 0 To j Get ComSizeOfArray Of hoJson "product.images[i].variant_ids" To iCount_j While (j < iCount_j) Set ComJ Of hoJson To j Get ComIntOf Of hoJson "product.images[i].variant_ids[j]" To iIntVal Move (j + 1) To j Loop Move (i + 1) To i Loop Move 0 To i Get ComSizeOfArray Of hoJson "image.product.variant_ids" To iCount_i While (i < iCount_i) Set ComI Of hoJson To i Move (i + 1) To i Loop // A sample JSON response body that is parsed by the above code: // { // "product": { // "id": 632910392, // "title": "IPod Nano - 8GB", // "body_html": "<p>It's the small iPod with one very big idea: Video. Now the world's most popular music player, available in 4GB and 8GB models, lets you enjoy TV shows, movies, video podcasts, and more. The larger, brighter display means amazing picture quality. In six eye-catching colors, iPod nano is stunning all around. And with models starting at just $149, little speaks volumes.<\/p>", // "vendor": "Apple", // "product_type": "Cult Products", // "created_at": "2017-09-22T14:08:02-04:00", // "handle": "ipod-nano", // "updated_at": "2017-09-22T14:48:36-04:00", // "published_at": null, // "template_suffix": null, // "published_scope": "web", // "tags": "Emotive, Flash Memory, MP3, Music", // "variants": [ // { // "id": 808950810, // "product_id": 632910392, // "title": "Pink", // "price": "199.00", // "sku": "IPOD2008PINK", // "position": 1, // "grams": 567, // "inventory_policy": "continue", // "compare_at_price": null, // "fulfillment_service": "manual", // "inventory_management": "shopify", // "option1": "Pink", // "option2": null, // "option3": null, // "created_at": "2017-09-22T14:08:02-04:00", // "updated_at": "2017-09-22T14:48:37-04:00", // "taxable": true, // "barcode": "1234_pink", // "image_id": 562641783, // "inventory_quantity": 10, // "weight": 1.25, // "weight_unit": "lb", // "old_inventory_quantity": 10, // "requires_shipping": true // }, // { // "id": 49148385, // "product_id": 632910392, // "title": "Red", // "price": "199.00", // "sku": "IPOD2008RED", // "position": 2, // "grams": 567, // "inventory_policy": "continue", // "compare_at_price": null, // "fulfillment_service": "manual", // "inventory_management": "shopify", // "option1": "Red", // "option2": null, // "option3": null, // "created_at": "2017-09-22T14:08:02-04:00", // "updated_at": "2017-09-22T14:08:02-04:00", // "taxable": true, // "barcode": "1234_red", // "image_id": null, // "inventory_quantity": 20, // "weight": 1.25, // "weight_unit": "lb", // "old_inventory_quantity": 20, // "requires_shipping": true // }, // { // "id": 39072856, // "product_id": 632910392, // "title": "Green", // "price": "199.00", // "sku": "IPOD2008GREEN", // "position": 3, // "grams": 567, // "inventory_policy": "continue", // "compare_at_price": null, // "fulfillment_service": "manual", // "inventory_management": "shopify", // "option1": "Green", // "option2": null, // "option3": null, // "created_at": "2017-09-22T14:08:02-04:00", // "updated_at": "2017-09-22T14:08:02-04:00", // "taxable": true, // "barcode": "1234_green", // "image_id": null, // "inventory_quantity": 30, // "weight": 1.25, // "weight_unit": "lb", // "old_inventory_quantity": 30, // "requires_shipping": true // }, // { // "id": 457924702, // "product_id": 632910392, // "title": "Black", // "price": "199.00", // "sku": "IPOD2008BLACK", // "position": 4, // "grams": 567, // "inventory_policy": "continue", // "compare_at_price": null, // "fulfillment_service": "manual", // "inventory_management": "shopify", // "option1": "Black", // "option2": null, // "option3": null, // "created_at": "2017-09-22T14:08:02-04:00", // "updated_at": "2017-09-22T14:08:02-04:00", // "taxable": true, // "barcode": "1234_black", // "image_id": null, // "inventory_quantity": 40, // "weight": 1.25, // "weight_unit": "lb", // "old_inventory_quantity": 40, // "requires_shipping": true // } // ], // "options": [ // { // "id": 594680422, // "product_id": 632910392, // "name": "Color", // "position": 1, // "values": [ // "Pink", // "Red", // "Green", // "Black" // ] // } // ], // "images": [ // { // "id": 850703190, // "product_id": 632910392, // "position": 1, // "created_at": "2017-09-22T14:08:02-04:00", // "updated_at": "2017-09-22T14:08:02-04:00", // "width": 123, // "height": 456, // "src": "https:\/\/cdn.shopify.com\/s\/files\/1\/0006\/9093\/3842\/products\/ipod-nano.png?v=1506103682", // "variant_ids": [ // ] // }, // { // "id": 562641783, // "product_id": 632910392, // "position": 2, // "created_at": "2017-09-22T14:08:02-04:00", // "updated_at": "2017-09-22T14:08:02-04:00", // "width": 123, // "height": 456, // "src": "https:\/\/cdn.shopify.com\/s\/files\/1\/0006\/9093\/3842\/products\/ipod-nano-2.png?v=1506103682", // "variant_ids": [ // 808950810 // ] // } // ], // "image": { // "id": 850703190, // "product_id": 632910392, // "position": 1, // "created_at": "2017-09-22T14:08:02-04:00", // "updated_at": "2017-09-22T14:08:02-04:00", // "width": 123, // "height": 456, // "src": "https:\/\/cdn.shopify.com\/s\/files\/1\/0006\/9093\/3842\/products\/ipod-nano.png?v=1506103682", // "variant_ids": [ // ] // } // } // } Showln "Example Completed." End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.