Sample code for 30+ languages & platforms
Lianja

Shopify Get particular fields of a single product

See more Shopify Examples

Get particular fields of a single product

Chilkat Lianja Downloads

Lianja
llSuccess = .F.

loRest = createobject("CkRest")

loRest.SetAuthBasic("SHOPIFY_PRIVATE_API_KEY","SHOPIFY_PRIVATE_API_KEY")

llSuccess = loRest.Connect("chilkat.myshopify.com",443,.T.,.T.)
if (llSuccess <> .T.) then
    ? loRest.LastErrorText
    release loRest
    return
endif

loSbJson = createobject("CkStringBuilder")
llSuccess = loRest.FullRequestNoBodySb("GET","/admin/products/#{id}.json?fields=id,images,title",loSbJson)
if (llSuccess <> .T.) then
    ? loRest.LastErrorText
    release loRest
    release loSbJson
    return
endif

if (loRest.ResponseStatusCode <> 200) then
    ? "Received error response code: " + str(loRest.ResponseStatusCode)
    ? "Response body:"
    ? loSbJson.GetAsString()
    release loRest
    release loSbJson
    return
endif

loJson = createobject("CkJsonObject")
loJson.LoadSb(loSbJson)

// The following code parses the JSON response.
// A sample JSON response is shown below the sample code.

lnProductId = loJson.IntOf("product.id")
lcProductTitle = loJson.StringOf("product.title")
i = 0
lnCount_i = loJson.SizeOfArray("product.images")
do while i < lnCount_i
    loJson.I = i
    lnId = loJson.IntOf("product.images[i].id")
    lnProduct_id = loJson.IntOf("product.images[i].product_id")
    lnPosition = loJson.IntOf("product.images[i].position")
    lcCreated_at = loJson.StringOf("product.images[i].created_at")
    lcUpdated_at = loJson.StringOf("product.images[i].updated_at")
    lnWidth = loJson.IntOf("product.images[i].width")
    lnHeight = loJson.IntOf("product.images[i].height")
    lcSrc = loJson.StringOf("product.images[i].src")
    j = 0
    lnCount_j = loJson.SizeOfArray("product.images[i].variant_ids")
    do while j < lnCount_j
        loJson.J = j
        lnIntVal = loJson.IntOf("product.images[i].variant_ids[j]")
        j = j + 1
    enddo
    i = i + 1
enddo

// 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
//         ]
//       }
//     ]
//   }
// }

? "Example Completed."


release loRest
release loSbJson
release loJson