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
(Swift 2) Shopify Create New ProductCreate a new product
func chilkatTest() { let rest = CkoRest() var success: Bool rest.SetAuthBasic("SHOPIFY_PRIVATE_API_KEY", password: "SHOPIFY_PRIVATE_API_SECRET_KEY") success = rest.Connect("chilkat.myshopify.com", port: 443, tls: true, autoReconnect: true) if success != true { print("\(rest.LastErrorText)") return } // The following code creates the JSON request body. // The JSON created by this code is shown below. let jsonReq = CkoJsonObject() jsonReq.UpdateString("product.title", value: "Burton Custom Freestyle 151") jsonReq.UpdateString("product.body_html", value: "<strong>Good snowboard!</strong>") jsonReq.UpdateString("product.vendor", value: "Burton") jsonReq.UpdateString("product.product_type", value: "Snowboard") jsonReq.UpdateString("product.images[0].attachment", value: "R0lGODlhAQABAIAAAAAAAAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==") // 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", // "images": [ // { // "attachment": "R0lGODlhAQABAIAAAAAAAAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==" // } // ] // } // } let sbReq = CkoStringBuilder() jsonReq.EmitSb(sbReq) rest.AddHeader("Content-Type", value: "application/json") let sbJson = CkoStringBuilder() success = rest.FullRequestSb("POST", uriPath: "/admin/products.json", requestBody: sbReq, responseBody: sbJson) if success != true { print("\(rest.LastErrorText)") return } if rest.ResponseStatusCode.intValue != 201 { print("Received error response code: \(rest.ResponseStatusCode.intValue)") print("Response body:") print("\(sbJson.GetAsString())") return } let json = CkoJsonObject() json.LoadSb(sbJson) // The following code parses the JSON response. // A sample JSON response is shown below the sample code. var productId: Int var productTitle: String? var productBody_html: String? var productVendor: String? var productProduct_type: String? var productCreated_at: String? var productHandle: String? var productUpdated_at: String? var productPublished_at: String? var productTemplate_suffix: Bool var productPublished_scope: String? var productTags: String? var productImageId: Int var productImageProduct_id: Int var productImagePosition: Int var productImageCreated_at: String? var productImageUpdated_at: String? var productImageWidth: Int var productImageHeight: Int var productImageSrc: String? var i: Int var count_i: Int var id: Int var product_id: Int var title: String? var price: String? var sku: String? var position: Int var grams: Int var inventory_policy: String? var compare_at_price: Bool var fulfillment_service: String? var inventory_management: Bool var option1: String? var option2: Bool var option3: Bool var created_at: String? var updated_at: String? var taxable: Bool var barcode: Bool var image_id: Bool var inventory_quantity: Int var weight: Int var weight_unit: String? var old_inventory_quantity: Int var requires_shipping: Bool var name: String? var j: Int var count_j: Int var strVal: String? var width: Int var height: Int var src: String? productId = json.IntOf("product.id").intValue productTitle = json.StringOf("product.title") productBody_html = json.StringOf("product.body_html") productVendor = json.StringOf("product.vendor") productProduct_type = json.StringOf("product.product_type") productCreated_at = json.StringOf("product.created_at") productHandle = json.StringOf("product.handle") productUpdated_at = json.StringOf("product.updated_at") productPublished_at = json.StringOf("product.published_at") productTemplate_suffix = json.IsNullOf("product.template_suffix") productPublished_scope = json.StringOf("product.published_scope") productTags = json.StringOf("product.tags") productImageId = json.IntOf("product.image.id").intValue productImageProduct_id = json.IntOf("product.image.product_id").intValue productImagePosition = json.IntOf("product.image.position").intValue productImageCreated_at = json.StringOf("product.image.created_at") productImageUpdated_at = json.StringOf("product.image.updated_at") productImageWidth = json.IntOf("product.image.width").intValue productImageHeight = json.IntOf("product.image.height").intValue productImageSrc = json.StringOf("product.image.src") i = 0 count_i = json.SizeOfArray("product.variants").intValue while i < count_i { json.I = i id = json.IntOf("product.variants[i].id").intValue product_id = json.IntOf("product.variants[i].product_id").intValue title = json.StringOf("product.variants[i].title") price = json.StringOf("product.variants[i].price") sku = json.StringOf("product.variants[i].sku") position = json.IntOf("product.variants[i].position").intValue grams = json.IntOf("product.variants[i].grams").intValue inventory_policy = json.StringOf("product.variants[i].inventory_policy") compare_at_price = json.IsNullOf("product.variants[i].compare_at_price") fulfillment_service = json.StringOf("product.variants[i].fulfillment_service") inventory_management = json.IsNullOf("product.variants[i].inventory_management") option1 = json.StringOf("product.variants[i].option1") option2 = json.IsNullOf("product.variants[i].option2") option3 = json.IsNullOf("product.variants[i].option3") created_at = json.StringOf("product.variants[i].created_at") updated_at = json.StringOf("product.variants[i].updated_at") taxable = json.BoolOf("product.variants[i].taxable") barcode = json.IsNullOf("product.variants[i].barcode") image_id = json.IsNullOf("product.variants[i].image_id") inventory_quantity = json.IntOf("product.variants[i].inventory_quantity").intValue weight = json.IntOf("product.variants[i].weight").intValue weight_unit = json.StringOf("product.variants[i].weight_unit") old_inventory_quantity = json.IntOf("product.variants[i].old_inventory_quantity").intValue requires_shipping = json.BoolOf("product.variants[i].requires_shipping") i = i + 1 } i = 0 count_i = json.SizeOfArray("product.options").intValue while i < count_i { json.I = i id = json.IntOf("product.options[i].id").intValue product_id = json.IntOf("product.options[i].product_id").intValue name = json.StringOf("product.options[i].name") position = json.IntOf("product.options[i].position").intValue j = 0 count_j = json.SizeOfArray("product.options[i].values").intValue while j < count_j { json.J = j strVal = json.StringOf("product.options[i].values[j]") j = j + 1 } i = i + 1 } i = 0 count_i = json.SizeOfArray("product.images").intValue while i < count_i { json.I = i id = json.IntOf("product.images[i].id").intValue product_id = json.IntOf("product.images[i].product_id").intValue position = json.IntOf("product.images[i].position").intValue created_at = json.StringOf("product.images[i].created_at") updated_at = json.StringOf("product.images[i].updated_at") width = json.IntOf("product.images[i].width").intValue height = json.IntOf("product.images[i].height").intValue src = json.StringOf("product.images[i].src") j = 0 count_j = json.SizeOfArray("product.images[i].variant_ids").intValue while j < count_j { json.J = j j = j + 1 } i = i + 1 } i = 0 count_i = json.SizeOfArray("image.product.variant_ids").intValue while i < count_i { json.I = i i = i + 1 } // A sample JSON response body that is parsed by the above code: // { // "product": { // "id": 1071559747, // "title": "Burton Custom Freestyle 151", // "body_html": "<strong>Good snowboard!<\/strong>", // "vendor": "Burton", // "product_type": "Snowboard", // "created_at": "2017-09-22T14:48:43-04:00", // "handle": "burton-custom-freestyle-151", // "updated_at": "2017-09-22T14:48:44-04:00", // "published_at": "2017-09-22T14:48:43-04:00", // "template_suffix": null, // "published_scope": "global", // "tags": "", // "variants": [ // { // "id": 1070325218, // "product_id": 1071559747, // "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:44-04:00", // "updated_at": "2017-09-22T14:48:44-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": 1022828903, // "product_id": 1071559747, // "name": "Title", // "position": 1, // "values": [ // "Default Title" // ] // } // ], // "images": [ // { // "id": 1001473945, // "product_id": 1071559747, // "position": 1, // "created_at": "2017-09-22T14:48:43-04:00", // "updated_at": "2017-09-22T14:48:43-04:00", // "width": 1, // "height": 1, // "src": "https:\/\/cdn.shopify.com\/s\/files\/1\/0006\/9093\/3842\/products\/df3e567d6f16d040326c7a0ea29a4f41.gif?v=1506106123", // "variant_ids": [ // ] // } // ], // "image": { // "id": 1001473945, // "product_id": 1071559747, // "position": 1, // "created_at": "2017-09-22T14:48:43-04:00", // "updated_at": "2017-09-22T14:48:43-04:00", // "width": 1, // "height": 1, // "src": "https:\/\/cdn.shopify.com\/s\/files\/1\/0006\/9093\/3842\/products\/df3e567d6f16d040326c7a0ea29a4f41.gif?v=1506106123", // "variant_ids": [ // ] // } // } // } print("Example Completed.") } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.