Visual FoxPro
Visual FoxPro
Shopify Get particular fields of a single product
See more Shopify Examples
Get particular fields of a single productChilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loRest
LOCAL loSbJson
LOCAL loJson
LOCAL lnProductId
LOCAL lcProductTitle
LOCAL i
LOCAL lnCount_i
LOCAL lnId
LOCAL lnProduct_id
LOCAL lnPosition
LOCAL lcCreated_at
LOCAL lcUpdated_at
LOCAL lnWidth
LOCAL lnHeight
LOCAL lcSrc
LOCAL j
LOCAL lnCount_j
LOCAL lnIntVal
lnSuccess = 0
loRest = CreateObject('Chilkat.Rest')
loRest.SetAuthBasic("SHOPIFY_PRIVATE_API_KEY","SHOPIFY_PRIVATE_API_KEY")
lnSuccess = loRest.Connect("chilkat.myshopify.com",443,1,1)
IF (lnSuccess <> 1) THEN
? loRest.LastErrorText
RELEASE loRest
CANCEL
ENDIF
loSbJson = CreateObject('Chilkat.StringBuilder')
lnSuccess = loRest.FullRequestNoBodySb("GET","/admin/products/#{id}.json?fields=id,images,title",loSbJson)
IF (lnSuccess <> 1) THEN
? loRest.LastErrorText
RELEASE loRest
RELEASE loSbJson
CANCEL
ENDIF
IF (loRest.ResponseStatusCode <> 200) THEN
? "Received error response code: " + STR(loRest.ResponseStatusCode)
? "Response body:"
? loSbJson.GetAsString()
RELEASE loRest
RELEASE loSbJson
CANCEL
ENDIF
loJson = CreateObject('Chilkat.JsonObject')
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