Changes in Icecat JSON File Structure (Pull-API)

By

From the 2th of June, the structure of the Icecat JSON files in our Pull-API (API-out) will be changed slightly. The impact of this update is very low.

Currently, we may have for the same tag sometimes an object and sometimes an array depending on if there is data for the object or not. An empty array is used when there is no data in the object, but when there is data it’s represented by an object. You can see an example below regarding ProductFamily tag:

Empty object: 
"GeneralInfo": {       
            "ProductFamily": [],       
            "ProductSeries": {         
           "SeriesID": "1"       
       }    
   }
Populated object:
"GeneralInfo": {     
        "ProductFamily": {         
                "ProductFamilyID": "67439",         
                "Value": "OMEN",         
                "Language": "EN"    
           },    
        "ProductSeries": {         
                "SeriesID": "5821",         
               "Value": "880",         
              "Language": "EN"    
          } 
    }

In the new structure, we will always publish an object’s array, even when it is an empty one without data. The situation with data populated objects will stay as it is right now:

 "GeneralInfo": {       
            "ProductFamily": {},       
            "ProductSeries": {         
           "SeriesID": "1"       
       }    
   }
 "GeneralInfo": {     
        "ProductFamily": {         
                "ProductFamilyID": "67439",         
                "Value": "OMEN",         
                "Language": "EN"    
           },    
        "ProductSeries": {         
                "SeriesID": "5821",         
               "Value": "880",         
              "Language": "EN"    
          } 
    } 

For some entities which are scalar, we are using an array. We will still use an array there even with an empty data set. Example: GTIN.

"GeneralInfo": {     
       "GTIN": [         
                    "08710103824428",         
                    "8710103824428"    
            ] 
     } 

Or:

"GeneralInfo": {     
      "GTIN": [] 
 }

  • commented on May 24, 2020 by Koen

    imho, a simple `null` value would seem more logical instead of an empty object.

    • Would be an approach. Our dev team: “I think we tried to make that consistent across all methods/calls we have, that’s why we had to stick to empty object afair “

  • commented on May 27, 2020 by Egil Hansen

    About time :P

    Getting tired of this:
    [JsonConverter(typeof(SingleOrArrayConverter))]
    public List BulletPoints { get; set; }

  • commented on January 21, 2025 by Jos de Callafon

    I need contact information (Economic operators) for brands as mentioned in: https://icecat.com/blog/icecat-now-supports-the-general-product-safety-regulation-gpsr-what-you-need-to-know-and-how-to-prepare/ .

    I checked several products via the JSON API, however I can not find any kind of information at the response payloads.

    Can you help me how to find this GPSR / contact information?

    • Dear Jos

      We are busy to add this information to the product JSON and XML files. Also we are busy to create separate file OrganizationList.xml for bulk downloads. The development will be finalized in the middle of February. Meanwhile as the temporary solution you can use SupplierList.xml from the reference files. We put “Brand Owner” and “Representative” in the SupplierList.xml under the tag “CustomerService”

      Kind regards

      Vazha Abramishvili

Leave a Reply

Your email address will not be published. Required fields are marked *

Icecat xml

Open Catalog Interface (OCI): Manual for Open Icecat XML and Full Icecat XML

This document describes the Icecat XML method of Icecat's Open Catalog Inte...
 November 3, 2019
manual thumbnail3

Manual for Icecat Live: Real-Time Product Data in Your App

Icecat Live is a (free) service that enables you to insert real-time produc...
 June 10, 2022
Icecat CSV Interface

Manual for Icecat CSV Interface

This document describes the manual for Icecat CSV interface (Comma-Separate...
 September 28, 2016
 October 4, 2018
manual thumbnail

Manual for Open Icecat JSON Product Requests

JSON (JavaScript Object Notation) is an increasingly popular means of trans...
 September 17, 2018
Addons plugins

Icecat Add-Ons Overview. NEW: Red Technology

Icecat has a huge list of integration partners, making it easy for clients ...
 October 27, 2023
LIVE JS

How to Create a Button that Opens Video in a Modal Window

Recently, our Icecat Live JavaScript interface was updated with two new fun...
 November 3, 2021
 January 20, 2020
New Standard video thumbnail

Autheos video acquisition completed

July 21, Icecat and Autheos jointly a...
 September 7, 2021
Personalized Interface File and Catalog from Icecat

Manual Personalized Interface File and Catalog from Icecat

With Icecat, you can generate personalized or customized CSV or Excel files...
 May 3, 2022