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
(AutoIt) Shopify Create a new unpublished productCreate a new unpublished product
$oRest = ObjCreate("Chilkat.Rest") Local $bSuccess $oRest.SetAuthBasic("SHOPIFY_PRIVATE_API_KEY","SHOPIFY_PRIVATE_API_KEY") $bSuccess = $oRest.Connect("chilkat.myshopify.com",443,True,True) If ($bSuccess <> True) Then ConsoleWrite($oRest.LastErrorText & @CRLF) Exit EndIf ; The following code creates the JSON request body. ; The JSON created by this code is shown below. $oJsonReq = ObjCreate("Chilkat.JsonObject") $oJsonReq.UpdateString("product.title","Burton Custom Freestyle 151") $oJsonReq.UpdateString("product.body_html","<strong>Good snowboard!</strong>") $oJsonReq.UpdateString("product.vendor","Burton") $oJsonReq.UpdateString("product.product_type","Snowboard") $oJsonReq.UpdateBool("product.published",False) ; The JSON request body created by the above code: ; { ; "product": { ; "title": "Burton Custom Freestyle 151", ; "body_html": "<strong>Good snowboard!<\/strong>", ; "vendor": "Burton", ; "product_type": "Snowboard", ; "published": false ; } ; } $oSbReq = ObjCreate("Chilkat.StringBuilder") $oJsonReq.EmitSb($oSbReq) $oRest.AddHeader("Content-Type","application/json") $oSbJson = ObjCreate("Chilkat.StringBuilder") $bSuccess = $oRest.FullRequestSb("POST","/admin/products.json ",$oSbReq,$oSbJson) If ($bSuccess <> True) Then ConsoleWrite($oRest.LastErrorText & @CRLF) Exit EndIf If ($oRest.ResponseStatusCode <> 201) Then ConsoleWrite("Received error response code: " & $oRest.ResponseStatusCode & @CRLF) ConsoleWrite("Response body:" & @CRLF) ConsoleWrite($oSbJson.GetAsString() & @CRLF) Exit EndIf $oJson = ObjCreate("Chilkat.JsonObject") $oJson.LoadSb($oSbJson) ; The following code parses the JSON response. ; A sample JSON response is shown below the sample code. Local $iProductId Local $sProductTitle Local $sProductBody_html Local $sProductVendor Local $sProductProduct_type Local $sProductCreated_at Local $sProductHandle Local $sProductUpdated_at Local $bProductPublished_at Local $bProductTemplate_suffix Local $sProductPublished_scope Local $sProductTags Local $bProductImage Local $i Local $iCount_i Local $id Local $iProduct_id Local $sTitle Local $sPrice Local $sku Local $iPosition Local $iGrams Local $sInventory_policy Local $bCompare_at_price Local $sFulfillment_service Local $bInventory_management Local $sOption1 Local $bOption2 Local $bOption3 Local $sCreated_at Local $sUpdated_at Local $bTaxable Local $barcode Local $bImage_id Local $inventory_quantity Local $iWeight Local $sWeight_unit Local $iOld_inventory_quantity Local $bRequires_shipping Local $sName Local $iJ Local $iCount_j Local $strVal $iProductId = $oJson.IntOf("product.id") $sProductTitle = $oJson.StringOf("product.title") $sProductBody_html = $oJson.StringOf("product.body_html") $sProductVendor = $oJson.StringOf("product.vendor") $sProductProduct_type = $oJson.StringOf("product.product_type") $sProductCreated_at = $oJson.StringOf("product.created_at") $sProductHandle = $oJson.StringOf("product.handle") $sProductUpdated_at = $oJson.StringOf("product.updated_at") $bProductPublished_at = $oJson.IsNullOf("product.published_at") $bProductTemplate_suffix = $oJson.IsNullOf("product.template_suffix") $sProductPublished_scope = $oJson.StringOf("product.published_scope") $sProductTags = $oJson.StringOf("product.tags") $bProductImage = $oJson.IsNullOf("product.image") $i = 0 $iCount_i = $oJson.SizeOfArray("product.variants") While $i < $iCount_i $oJson.I = $i $id = $oJson.IntOf("product.variants[i].id") $iProduct_id = $oJson.IntOf("product.variants[i].product_id") $sTitle = $oJson.StringOf("product.variants[i].title") $sPrice = $oJson.StringOf("product.variants[i].price") $sku = $oJson.StringOf("product.variants[i].sku") $iPosition = $oJson.IntOf("product.variants[i].position") $iGrams = $oJson.IntOf("product.variants[i].grams") $sInventory_policy = $oJson.StringOf("product.variants[i].inventory_policy") $bCompare_at_price = $oJson.IsNullOf("product.variants[i].compare_at_price") $sFulfillment_service = $oJson.StringOf("product.variants[i].fulfillment_service") $bInventory_management = $oJson.IsNullOf("product.variants[i].inventory_management") $sOption1 = $oJson.StringOf("product.variants[i].option1") $bOption2 = $oJson.IsNullOf("product.variants[i].option2") $bOption3 = $oJson.IsNullOf("product.variants[i].option3") $sCreated_at = $oJson.StringOf("product.variants[i].created_at") $sUpdated_at = $oJson.StringOf("product.variants[i].updated_at") $bTaxable = $oJson.BoolOf("product.variants[i].taxable") $barcode = $oJson.IsNullOf("product.variants[i].barcode") $bImage_id = $oJson.IsNullOf("product.variants[i].image_id") $inventory_quantity = $oJson.IntOf("product.variants[i].inventory_quantity") $iWeight = $oJson.IntOf("product.variants[i].weight") $sWeight_unit = $oJson.StringOf("product.variants[i].weight_unit") $iOld_inventory_quantity = $oJson.IntOf("product.variants[i].old_inventory_quantity") $bRequires_shipping = $oJson.BoolOf("product.variants[i].requires_shipping") $i = $i + 1 Wend $i = 0 $iCount_i = $oJson.SizeOfArray("product.options") While $i < $iCount_i $oJson.I = $i $id = $oJson.IntOf("product.options[i].id") $iProduct_id = $oJson.IntOf("product.options[i].product_id") $sName = $oJson.StringOf("product.options[i].name") $iPosition = $oJson.IntOf("product.options[i].position") $iJ = 0 $iCount_j = $oJson.SizeOfArray("product.options[i].values") While $iJ < $iCount_j $oJson.J = $iJ $strVal = $oJson.StringOf("product.options[i].values[j]") $iJ = $iJ + 1 Wend $i = $i + 1 Wend $i = 0 $iCount_i = $oJson.SizeOfArray("product.images") While $i < $iCount_i $oJson.I = $i $i = $i + 1 Wend ; A sample JSON response body that is parsed by the above code: ; { ; "product": { ; "id": 1071559753, ; "title": "Burton Custom Freestyle 151", ; "body_html": "<strong>Good snowboard!<\/strong>", ; "vendor": "Burton", ; "product_type": "Snowboard", ; "created_at": "2017-09-22T14:48:52-04:00", ; "handle": "burton-custom-freestyle-151", ; "updated_at": "2017-09-22T14:48:52-04:00", ; "published_at": null, ; "template_suffix": null, ; "published_scope": "global", ; "tags": "", ; "variants": [ ; { ; "id": 1070325224, ; "product_id": 1071559753, ; "title": "Default Title", ; "price": "0.00", ; "sku": "", ; "position": 1, ; "grams": 0, ; "inventory_policy": "deny", ; "compare_at_price": null, ; "fulfillment_service": "manual", ; "inventory_management": null, ; "option1": "Default Title", ; "option2": null, ; "option3": null, ; "created_at": "2017-09-22T14:48:52-04:00", ; "updated_at": "2017-09-22T14:48:52-04:00", ; "taxable": true, ; "barcode": null, ; "image_id": null, ; "inventory_quantity": 1, ; "weight": 0.0, ; "weight_unit": "lb", ; "old_inventory_quantity": 1, ; "requires_shipping": true ; } ; ], ; "options": [ ; { ; "id": 1022828912, ; "product_id": 1071559753, ; "name": "Title", ; "position": 1, ; "values": [ ; "Default Title" ; ] ; } ; ], ; "images": [ ; ], ; "image": null ; } ; } ConsoleWrite("Example Completed." & @CRLF) |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.