Sample code for 30+ languages & platforms
Visual FoxPro

Akeneo: Get List of Products

See more HTTP Misc Examples

Using a previously obtained request token, demonstrates how to get a list of products.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL loHttp
LOCAL lcJsonResponse
LOCAL loJson
LOCAL lcV_linksSelfHref
LOCAL lcV_linksFirstHref
LOCAL lnCurrent_page
LOCAL i
LOCAL lnCount_i
LOCAL lcIdentifier
LOCAL lcFamily
LOCAL lcParent
LOCAL lnEnabled
LOCAL lcCreated
LOCAL lcUpdated
LOCAL j
LOCAL lnCount_j
LOCAL lcStrVal
LOCAL lcLocale
LOCAL lcScope
LOCAL lnData
LOCAL lcData_str
LOCAL lcV_linksDownloadHref
LOCAL lnData_int
LOCAL lcDataAmount
LOCAL lcDataUnit

* This example requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.

loHttp = CreateObject('Chilkat.Http')

* Use your previously obtained access token.
* See Get Akeneo Access Token
loHttp.AuthToken = "access_token"

lcJsonResponse = loHttp.QuickGetStr("http://pim.my-akeneo-site.com/api/rest/v1/products")
IF (loHttp.LastMethodSuccess <> 1) THEN
    ? loHttp.LastHeader
    ? loHttp.LastErrorText
    RELEASE loHttp
    CANCEL
ENDIF

? lcJsonResponse

* A sample response looks like this.
* See below for sample code to parse the JSON response..

* {
*   "_links": {
*     "self": {
*       "href": "https://demo.akeneo.com/api/rest/v1/products?page=3&limit=3"
*     },
*     "first": {
*       "href": "https://demo.akeneo.com/api/rest/v1/products?page=1&limit=3"
*     },
*     "previous": {
*       "href": "https://demo.akeneo.com/api/rest/v1/products?page=2&limit=3"
*     },
*     "next": {
*       "href": "https://demo.akeneo.com/api/rest/v1/products?page=4&limit=3"
*     }
*   },
*   "current_page": 3,
*   "_embedded": {
*     "_items": [
*       {
*         "_links": {
*           "self": {
*             "href": "https://demo.akeneo.com/api/rest/v1/product/top"
*           }
*         },
*         "identifier": "top",
*         "family": "tshirt",
*         "groups": [],
*         "parent": null,
*         "categories": [
*           "summer_collection"
*         ],
*         "enabled": true,
*         "values": {
*           "name": [
*             {
*               "data": "Top",
*               "locale": "en_US",
*               "scope": null
*             },
*             {
*               "data": "D�bardeur",
*               "locale": "fr_FR",
*               "scope": null
*             }
*           ],
*           "description": [
*             {
*               "data": "Summer top",
*               "locale": "en_US",
*               "scope": "ecommerce"
*             },
*             {
*               "data": "Top",
*               "locale": "en_US",
*               "scope": "tablet"
*             },
*             {
*               "data": "D�bardeur pour l'�t�",
*               "locale": "fr_FR",
*               "scope": "ecommerce"
*             },
*             {
*               "data": "D�bardeur",
*               "locale": "fr_FR",
*               "scope": "tablet"
*             }
*           ],
*           "price": [
*             {
*               "locale": null,
*               "scope": null,
*               "data": [
*                 {
*                   "amount": "15.5",
*                   "currency": "EUR"
*                 },
*                 {
*                   "amount": "15",
*                   "currency": "USD"
*                 }
*               ]
*             }
*           ],
*           "color": [
*             {
*               "locale": null,
*               "scope": null,
*               "data": "black"
*             }
*           ],
*           "size": [
*             {
*               "locale": null,
*               "scope": null,
*               "data": "m"
*             }
*           ]
*         },
*         "created": "2016-06-23T18:24:44+02:00",
*         "updated": "2016-06-25T17:56:12+02:00",
*         "associations": {
*           "PACK": {
*             "products": [
*               "sunglasses"
*             ],
*             "groups": []
*           }
*         }
*       },
*       {
*         "_links": {
*           "self": {
*             "href": "https://demo.akeneo.com/api/rest/v1/product/cap"
*           }
*         },
*         "identifier": "cap",
*         "family": "caps",
*         "groups": [],
*         "parent": null,
*         "categories": [
*           "summer_collection"
*         ],
*         "enabled": true,
*         "values": {
*           "name": [
*             {
*               "data": "Cap",
*               "locale": "en_US",
*               "scope": null
*             },
*             {
*               "data": "Casquette",
*               "locale": "fr_FR",
*               "scope": null
*             }
*           ],
*           "description": [
*             {
*               "data": "Cap unisex",
*               "locale": "en_US",
*               "scope": "ecommerce"
*             },
*             {
*               "data": "Cap unisex",
*               "locale": "en_US",
*               "scope": "tablet"
*             },
*             {
*               "data": "Casquette unisexe",
*               "locale": "fr_FR",
*               "scope": "ecommerce"
*             },
*             {
*               "data": "Casquette unisexe",
*               "locale": "fr_FR",
*               "scope": "tablet"
*             }
*           ],
*           "price": [
*             {
*               "locale": null,
*               "scope": null,
*               "data": [
*                 {
*                   "amount": "20",
*                   "currency": "EUR"
*                 },
*                 {
*                   "amount": "20",
*                   "currency": "USD"
*                 }
*               ]
*             }
*           ],
*           "color": [
*             {
*               "locale": null,
*               "scope": null,
*               "data": "black"
*             }
*           ]
*         },
*         "created": "2016-06-23T18:24:44+02:00",
*         "updated": "2016-06-25T17:56:12+02:00",
*         "associations": {
*           "PACK": {
*             "products": [
*               "sunglasses"
*             ],
*             "groups": []
*           }
*         }
*       },
*       {
*         "_links": {
*           "self": {
*             "href": "https://demo.akeneo.com/api/rest/v1/product/sweat"
*           }
*         },
*         "identifier": "sweat",
*         "family": null,
*         "groups": [],
*         "parent": null,
*         "categories": [
*           "winter_collection"
*         ],
*         "enabled": true,
*         "values": {},
*         "created": "2016-06-23T11:24:44+02:00",
*         "updated": "2016-06-23T11:24:44+02:00",
*         "associations": {}
*       }
*     ]
*   }
* }
* 

loJson = CreateObject('Chilkat.JsonObject')
loJson.Load(lcJsonResponse)

lcV_linksSelfHref = loJson.StringOf("_links.self.href")
lcV_linksFirstHref = loJson.StringOf("_links.first.href")
lnCurrent_page = loJson.IntOf("current_page")
i = 0
lnCount_i = loJson.SizeOfArray("_embedded.items")
DO WHILE i < lnCount_i
    loJson.I = i
    lcV_linksSelfHref = loJson.StringOf("_embedded.items[i]._links.self.href")
    lcIdentifier = loJson.StringOf("_embedded.items[i].identifier")
    lcFamily = loJson.StringOf("_embedded.items[i].family")
    lcParent = loJson.StringOf("_embedded.items[i].parent")
    lnEnabled = loJson.BoolOf("_embedded.items[i].enabled")
    lcCreated = loJson.StringOf("_embedded.items[i].created")
    lcUpdated = loJson.StringOf("_embedded.items[i].updated")
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].groups")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcStrVal = loJson.StringOf("_embedded.items[i].groups[j]")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].categories")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcStrVal = loJson.StringOf("_embedded.items[i].categories[j]")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.blocked")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.blocked[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.blocked[j].scope")
        lnData = loJson.BoolOf("_embedded.items[i].values.blocked[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.can_cut")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.can_cut[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.can_cut[j].scope")
        lnData = loJson.BoolOf("_embedded.items[i].values.can_cut[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.not_used")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.not_used[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.not_used[j].scope")
        lnData = loJson.BoolOf("_embedded.items[i].values.not_used[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.deny_delivery")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.deny_delivery[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.deny_delivery[j].scope")
        lnData = loJson.BoolOf("_embedded.items[i].values.deny_delivery[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.can_split_package")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.can_split_package[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.can_split_package[j].scope")
        lnData = loJson.BoolOf("_embedded.items[i].values.can_split_package[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.transfer_to_warehouse")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.transfer_to_warehouse[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.transfer_to_warehouse[j].scope")
        lnData = loJson.BoolOf("_embedded.items[i].values.transfer_to_warehouse[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.product_code")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.product_code[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.product_code[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.product_code[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.nuotrauka")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.nuotrauka[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.nuotrauka[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.nuotrauka[j].data")
        lcV_linksDownloadHref = loJson.StringOf("_embedded.items[i].values.nuotrauka[j]._links.download.href")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.minimum_quantity")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.minimum_quantity[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.minimum_quantity[j].scope")
        lnData_int = loJson.IntOf("_embedded.items[i].values.minimum_quantity[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.code")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.code[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.code[j].scope")
        lnData_int = loJson.IntOf("_embedded.items[i].values.code[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.name")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.name[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.name[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.name[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.fsc_code")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.fsc_code[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.fsc_code[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.fsc_code[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.warehouse")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.warehouse[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.warehouse[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.warehouse[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.item_volume")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.item_volume[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.item_volume[j].scope")
        lcDataAmount = loJson.StringOf("_embedded.items[i].values.item_volume[j].data.amount")
        lcDataUnit = loJson.StringOf("_embedded.items[i].values.item_volume[j].data.unit")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.customs_code")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.customs_code[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.customs_code[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.customs_code[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.product_type")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.product_type[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.product_type[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.product_type[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.weight_netto")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.weight_netto[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.weight_netto[j].scope")
        lcDataAmount = loJson.StringOf("_embedded.items[i].values.weight_netto[j].data.amount")
        lcDataUnit = loJson.StringOf("_embedded.items[i].values.weight_netto[j].data.unit")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.supplier_code")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.supplier_code[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.supplier_code[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.supplier_code[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.tariff_number")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.tariff_number[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.tariff_number[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.tariff_number[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.weight_brutto")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.weight_brutto[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.weight_brutto[j].scope")
        lcDataAmount = loJson.StringOf("_embedded.items[i].values.weight_brutto[j].data.amount")
        lcDataUnit = loJson.StringOf("_embedded.items[i].values.weight_brutto[j].data.unit")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.package_code_1")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.package_code_1[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.package_code_1[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.package_code_1[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.package_code_2")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.package_code_2[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.package_code_2[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.package_code_2[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.package_code_3")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.package_code_3[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.package_code_3[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.package_code_3[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.supplier_number")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.supplier_number[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.supplier_number[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.supplier_number[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.package_volume_1")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.package_volume_1[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.package_volume_1[j].scope")
        lcDataAmount = loJson.StringOf("_embedded.items[i].values.package_volume_1[j].data.amount")
        lcDataUnit = loJson.StringOf("_embedded.items[i].values.package_volume_1[j].data.unit")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.package_volume_2")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.package_volume_2[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.package_volume_2[j].scope")
        lcDataAmount = loJson.StringOf("_embedded.items[i].values.package_volume_2[j].data.amount")
        lcDataUnit = loJson.StringOf("_embedded.items[i].values.package_volume_2[j].data.unit")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.package_volume_3")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.package_volume_3[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.package_volume_3[j].scope")
        lcDataAmount = loJson.StringOf("_embedded.items[i].values.package_volume_3[j].data.amount")
        lcDataUnit = loJson.StringOf("_embedded.items[i].values.package_volume_3[j].data.unit")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.package_weight_1")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.package_weight_1[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.package_weight_1[j].scope")
        lcDataAmount = loJson.StringOf("_embedded.items[i].values.package_weight_1[j].data.amount")
        lcDataUnit = loJson.StringOf("_embedded.items[i].values.package_weight_1[j].data.unit")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.package_weight_2")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.package_weight_2[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.package_weight_2[j].scope")
        lcDataAmount = loJson.StringOf("_embedded.items[i].values.package_weight_2[j].data.amount")
        lcDataUnit = loJson.StringOf("_embedded.items[i].values.package_weight_2[j].data.unit")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.package_weight_3")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.package_weight_3[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.package_weight_3[j].scope")
        lcDataAmount = loJson.StringOf("_embedded.items[i].values.package_weight_3[j].data.amount")
        lcDataUnit = loJson.StringOf("_embedded.items[i].values.package_weight_3[j].data.unit")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.country_of_origin")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.country_of_origin[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.country_of_origin[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.country_of_origin[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.product_group_code")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.product_group_code[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.product_group_code[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.product_group_code[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.base_measurement_unit")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.base_measurement_unit[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.base_measurement_unit[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.base_measurement_unit[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.measurement_unit_code")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.measurement_unit_code[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.measurement_unit_code[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.measurement_unit_code[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.product_category_code")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.product_category_code[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.product_category_code[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.product_category_code[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.sale_measurement_unit")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.sale_measurement_unit[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.sale_measurement_unit[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.sale_measurement_unit[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.country_of_origin_code")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.country_of_origin_code[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.country_of_origin_code[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.country_of_origin_code[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.vat_registration_group")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.vat_registration_group[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.vat_registration_group[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.vat_registration_group[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.critical_amount_of_stock")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.critical_amount_of_stock[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.critical_amount_of_stock[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.critical_amount_of_stock[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.stock_registration_group")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.stock_registration_group[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.stock_registration_group[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.stock_registration_group[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.purchase_measurement_unit")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.purchase_measurement_unit[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.purchase_measurement_unit[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.purchase_measurement_unit[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.product_registration_group")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.product_registration_group[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.product_registration_group[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.product_registration_group[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.base_measurement_unit_quantity")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.base_measurement_unit_quantity[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.base_measurement_unit_quantity[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.base_measurement_unit_quantity[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.comment")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.comment[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.comment[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.comment[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.units_in_pallet")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.units_in_pallet[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.units_in_pallet[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.units_in_pallet[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.first_description")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.first_description[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.first_description[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.first_description[j].data")
        j = j + 1
    ENDDO
    j = 0
    lnCount_j = loJson.SizeOfArray("_embedded.items[i].values.second_description")
    DO WHILE j < lnCount_j
        loJson.J = j
        lcLocale = loJson.StringOf("_embedded.items[i].values.second_description[j].locale")
        lcScope = loJson.StringOf("_embedded.items[i].values.second_description[j].scope")
        lcData_str = loJson.StringOf("_embedded.items[i].values.second_description[j].data")
        j = j + 1
    ENDDO
    i = i + 1
ENDDO

RELEASE loHttp
RELEASE loJson