JSON (JavaScript Object Notation) je lahka, besedilna podatkovna oblika, zgrajena iz ugnezdenih parov ključ-vrednost in polj, zasnovana za predstavitev strukturiranih podatkov na način, ki ga stroji enostavno razčlenijo in ga oseba lahko relativno enostavno bere neposredno. Izvira iz JavaScripta, vendar je zdaj neodvisen od jezika in je postal privzeta oblika za večino sodobnih spletnih API-jev, ki je nadomestila starejše, bolj obsežne alternative za številne primere uporabe integracije. Pri upravljanju virov se JSON manj pojavlja kot oblika samega končnega nakupovalnega vira in bolj kot oblika, v kateri vse bolj deluje vse okoli tega vira.

Zakaj je JSON pomemben za integracije virov

Večina virov izdelkov, poslanih neposredno v nakupovalni kanal, je še vedno v obliki XML ali CSV, vendar sistemi, ki gradijo in upravljajo te vire – PIM-i, ERP-ji, platforme za upravljanje virov in API-ji, ki jih vse povezujejo – med seboj večinoma komunicirajo v obliki JSON. Ko orodje za upravljanje virov pridobi zaloge v živo iz API-ja , preveri zaloge prek koristnega tovora webhook ali izmenja podatke s PIM-om, so ti podatki skoraj vedno v obliki JSON, tudi če se pred pošiljanjem Googlu ali Meta pretvorijo v XML. Razumevanje JSON-a je pomembno za vsakogar, ki odpravlja težave z integracijo virov, saj se JSON dejansko nahaja v večini povezav med sistemi – ne v sami končni datoteki z viri.

Kako deluje JSON

Dokument JSON je zgrajen iz majhnega nabora primitivov: objektov, ki so pari ključ-vrednost, zaviti v zavite oklepaje, polj, ki so urejeni seznami, zaviti v oglat oklepaj, in skalarnih vrednosti, kot so nizi, števila in logične vrednosti. Sam format ne vsiljuje fiksne sheme – razčlenjevalnik JSON ne zahteva vnaprej določene vrste dokumenta, kar je eden od razlogov, zakaj se tako pogosto uporablja za odgovore API-ja, ki se morajo razvijati, ne da bi pri tem motili starejše odjemalce. Ko platforma za vire podatkov prejme koristni tovor JSON iz API-ja za vire podatkov ali spletnega kavlja, običajno razčleni to strukturo in preslika njena polja v tisto, kar ciljni format vira – pogosto XML – dejansko zahteva.

Primer: Podatki JSON za elementom vira XML

<!--
  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>

Komentiran blok prikazuje isti izdelek, kot obstaja v JSON, formatu, ki ga večina orodij za upravljanje virov dejansko potegne iz API-ja, preden se splošči v oznake XML, ki jih pričakuje nakupovalni kanal.

Sorodni koncepti

JSON je povezovalni format, na katerem temelji večina avtomatizacije, od katere so zdaj odvisni viri podatkov, pa naj gre za API, ki vrača podatke o zalogah v živo, ali za spletni kavelj, ki sproži spremembo cene v trenutku, ko se ta zgodi v izvornem sistemu. Vse pogosteje se pojavlja tudi kot alternativni format za oddajo samih virov podatkov, saj vse več platform poleg tradicionalne podpore za XML in CSV dodaja tudi možnosti nalaganja na podlagi JSON.