JSON (JavaScript Object Notation) is een lichtgewicht, tekstgebaseerd dataformaat dat is opgebouwd uit geneste sleutel-waardeparen en arrays. Het is ontworpen om gestructureerde data weer te geven op een manier die zowel gemakkelijk door machines te parseren als redelijk gemakkelijk door mensen te lezen is. Het is ontstaan ​​in JavaScript, maar is nu taalonafhankelijk en is het standaardformaat geworden voor de meeste moderne web-API's. Het vervangt oudere, meer omslachtige alternatieven voor veel integratiescenario's. In feedmanagement speelt JSON minder een rol als het formaat van de uiteindelijke winkelfeed zelf, maar meer als het formaat waarop alles rondom die feed steeds vaker draait.

Waarom JSON belangrijk is voor feedintegraties

De meeste productfeeds die rechtstreeks naar een shoppingkanaal worden verzonden, zijn nog steeds XML of CSV, maar de systemen die deze feeds bouwen en beheren – PIM's, ERP's, feedmanagementplatforms en de API's die ze allemaal met elkaar verbinden – communiceren overwegend in JSON. Wanneer een feedmanagementtool live voorraadgegevens ophaalt via een API , de voorraad controleert via een webhook- payload of gegevens uitwisselt met een PIM, zijn die gegevens in feite bijna altijd JSON, zelfs als ze worden geconverteerd naar XML voordat ze naar Google of Meta worden verzonden. Inzicht in JSON is belangrijk voor iedereen die problemen met feedintegratie oplost, omdat de meeste communicatie tussen systemen – en niet het uiteindelijke feedbestand zelf – in feite JSON bevat.

Hoe JSON werkt

Een JSON-document is opgebouwd uit een kleine set basiselementen: objecten, dit zijn sleutel-waardeparen tussen accolades; arrays, dit zijn geordende lijsten tussen vierkante haken; en scalaire waarden zoals strings, getallen en booleans. Er is geen vast schema dat door het formaat zelf wordt afgedwongen — een JSON-parser heeft geen vooraf gedefinieerd documenttype nodig. Dit is een van de redenen waarom het zo veel gebruikt wordt voor API-reacties die moeten meegroeien zonder oudere clients te beschadigen. Wanneer een feedplatform een ​​JSON-payload ontvangt van een datafeed- API of een webhook, parseert het die structuur doorgaans en zet de velden om naar het formaat dat de bestemmingsfeed vereist — vaak XML.

Voorbeeld: JSON-gegevens achter een XML-feeditem

<!--
  Source payload from the merchant's API, before conversion:
  {
    "sku": "SKU-51290",
    "title": "Recycled Denim Tote Bag",
    "price": { "amount": 38.00, "currency": "USD" },
    "availability": "in_stock"
  }
-->
<item>
  <g:id>SKU-51290</g:id>
  <title>Recycled Denim Tote Bag</title>
  <g:price>38.00 USD</g:price>
  <g:availability>in stock</g:availability>
</item>

Het van commentaar voorziene blok toont hetzelfde product zoals het bestaat in JSON-formaat, het formaat dat de meeste feedmanagementtools daadwerkelijk ophalen van een API, voordat het wordt omgezet naar de XML-tags die een shoppingkanaal verwacht.

Verwante concepten

JSON is het verbindende formaat achter de meeste automatisering waarop datafeeds tegenwoordig gebaseerd zijn, of het nu gaat om een ​​API die live aandelenkoersen retourneert of een webhook die een prijswijziging doorgeeft zodra deze plaatsvindt in een bronsysteem. Het wordt ook steeds vaker gebruikt als alternatief indieningsformaat voor de datafeed zelf, omdat steeds meer platforms naast hun traditionele XML- en CSV-ondersteuning ook JSON-gebaseerde uploadopties toevoegen.