Lua
Lua
Shopify Get particular fields of a single product
See more Shopify Examples
Get particular fields of a single productChilkat Lua Downloads
local chilkat = require("chilkat")
local rest = chilkat.Rest.new()
rest:set_auth_basic("SHOPIFY_PRIVATE_API_KEY", "SHOPIFY_PRIVATE_API_KEY")
local success = rest:connect("chilkat.myshopify.com", 443, true, true)
if not success then
print(rest.last_error_text)
return
end
local sbJson = chilkat.StringBuilder.new()
success = rest:full_request_no_body_sb("GET", "/admin/products/#{id}.json?fields=id,images,title", sbJson)
if not success then
print(rest.last_error_text)
return
end
if rest.response_status_code ~= 200 then
print("Received error response code: " .. rest.response_status_code)
print("Response body:")
print(sbJson:get_as_string())
return
end
local json = chilkat.JsonObject.new()
json:load_sb(sbJson)
-- The following code parses the JSON response.
-- A sample JSON response is shown below the sample code.
local id = 0
local product_id = 0
local position = 0
local created_at = ""
local updated_at = ""
local width = 0
local height = 0
local src = ""
local j = 0
local count_j = 0
local intVal = 0
local productId = json:int_of("product.id")
local productTitle = json:string_of("product.title")
local i = 0
local count_i = json:size_of_array("product.images")
while i < count_i do
json.i = i
id = json:int_of("product.images[i].id")
product_id = json:int_of("product.images[i].product_id")
position = json:int_of("product.images[i].position")
created_at = json:string_of("product.images[i].created_at")
updated_at = json:string_of("product.images[i].updated_at")
width = json:int_of("product.images[i].width")
height = json:int_of("product.images[i].height")
src = json:string_of("product.images[i].src")
j = 0
count_j = json:size_of_array("product.images[i].variant_ids")
while j < count_j do
json.j = j
intVal = json:int_of("product.images[i].variant_ids[j]")
j = j + 1
end
i = i + 1
end
-- A sample JSON response body that is parsed by the above code:
-- {
-- "product": {
-- "id": 632910392,
-- "title": "IPod Nano - 8GB",
-- "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
-- ]
-- }
-- ]
-- }
-- }
print("Example Completed.")