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": []
}
This brand editor manual is a quick guide for a Brand Owner’s product manager or…
Icecat is happy to announce its participation in the upcoming Distoy London 2024 edition. The…
Rood met Witte Stippen, a social media channel that plays, tests, reviews games, and creates…
The revenues of Icecat N.V. (ISIN: NL0012751226) have increased by 11% over the first three…
Specialty coffee company Wakuli has raised EUR 5.2 million in a Series A round. The…
During the March and April sprints, our primary emphasis was on advancing our ongoing project:…
View Comments
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 "
About time :P
Getting tired of this:
[JsonConverter(typeof(SingleOrArrayConverter))]
public List BulletPoints { get; set; }
And, any suggestions for further improvement to make your life easier are welcome.