JSON (JavaScript Object Notation) er et lett, tekstbasert dataformat bygget av nestede nøkkelverdipar og arrayer, designet for å representere strukturerte data på en måte som både er enkel for maskiner å analysere og rimelig enkel for en person å lese direkte. Det oppsto fra JavaScript, men er nå språkuavhengig, og det har blitt standardformatet for de fleste moderne web-API-er, og erstatter eldre, mer detaljerte alternativer for mange integrasjonsbrukstilfeller. I feedadministrasjon vises JSON mindre som formatet for selve den endelige shoppingfeeden og mer som formatet alt rundt den feeden i økende grad kjører på.
Hvorfor JSON er viktig for feedintegrasjoner
De fleste produktfeeder som sendes direkte til en shoppingkanal er fortsatt XML eller CSV, men systemene som bygger og administrerer disse feedene – PIM-er, ERP-er, feedadministrasjonsplattformer og API-ene som kobler dem sammen – kommuniserer i overveldende grad med hverandre i JSON. Når et feedadministrasjonsverktøy henter live lagerbeholdning fra et API , sjekker lagerbeholdning gjennom en webhook- nyttelast eller utveksler data med et PIM, er disse dataene nesten alltid JSON under, selv om de konverteres til XML før de sendes til Google eller Meta. Å forstå JSON er viktig for alle som feilsøker en feedintegrasjon, fordi det meste av rørleggerarbeidet mellom systemene – ikke selve den endelige feedfilen – er der JSON faktisk befinner seg.
Hvordan JSON fungerer
Et JSON-dokument er bygget fra et lite sett med primitiver: objekter, som er nøkkelverdipar pakket inn i krøllparenteser, matriser, som er ordnede lister pakket inn i hakeparenteser, og skalære verdier som strenger, tall og boolske verdier. Det finnes ikke noe fast skjema som håndheves av selve formatet – en JSON-parser krever ikke en forhåndsdefinert dokumenttype, noe som er en del av grunnen til at den er så mye brukt for API-svar som må utvikles uten å ødelegge eldre klienter. Når en feedplattform mottar en JSON-nyttelast fra et datafeed- API eller en webhook, analyserer den vanligvis den strukturen og tilordner feltene til det destinasjonsfeedformatet – ofte XML – faktisk krever.
Eksempel: JSON-data bak et XML-feedelement
<!--
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>
Den kommenterte blokken viser det samme produktet slik det finnes i JSON, formatet de fleste feedadministrasjonsverktøy faktisk henter fra et API, før det flates ut i XML-taggene en shoppingkanal forventer.
Relaterte begreper
JSON er det koblingsbaserte formatet bak mesteparten av automatiseringen som feeder nå er avhengige av, enten det er et API som returnerer data om levende bestander eller en webhook som sender en prisendring i det øyeblikket den skjer i et kildesystem. Det dukker også i økende grad opp som et alternativt innsendingsformat for selve en datafeed, ettersom flere plattformer legger til JSON-baserte opplastingsalternativer i tillegg til sin tradisjonelle XML- og CSV-støtte.