JSON (JavaScript Object Notation) to lekki, tekstowy format danych zbudowany z zagnieżdżonych par klucz-wartość i tablic, zaprojektowany do reprezentowania ustrukturyzowanych danych w sposób zarówno łatwy do analizy przez maszyny, jak i stosunkowo łatwy do odczytania przez użytkownika. Wywodzi się z JavaScriptu, ale obecnie jest niezależny od języka i stał się domyślnym formatem większości nowoczesnych interfejsów API, zastępując starsze, bardziej rozbudowane alternatywy w wielu przypadkach integracji. W zarządzaniu kanałami informacyjnymi JSON pojawia się mniej jako format samego kanału zakupowego, a bardziej jako format, na którym coraz częściej opiera się wszystko wokół niego.
Dlaczego JSON ma znaczenie w przypadku integracji kanałów
Większość plików produktowych przesyłanych bezpośrednio do kanału zakupowego jest nadal w formacie XML lub CSV, ale systemy, które tworzą i zarządzają tymi plikami — PIM-y, ERP-y, platformy zarządzania plikami i interfejsy API łączące je wszystkie — komunikują się ze sobą w przeważającej mierze w formacie JSON. Gdy narzędzie do zarządzania plikami pobiera bieżący stan magazynowy z interfejsu API , sprawdza stan magazynowy za pomocą ładunku webhooka lub wymienia dane z PIM-em, dane te prawie zawsze są w formacie JSON, nawet jeśli zostaną przekonwertowane na format XML przed przesłaniem do Google lub Meta. Zrozumienie formatu JSON jest ważne dla każdego, kto rozwiązuje problemy z integracją plików produktowych, ponieważ JSON znajduje się w większości połączeń między systemami — a nie w samym pliku końcowym.
Jak działa JSON
Dokument JSON jest budowany z niewielkiego zestawu elementów podstawowych: obiektów, czyli par klucz-wartość ujętych w nawiasy klamrowe, tablic, czyli uporządkowanych list ujętych w nawiasy kwadratowe, oraz wartości skalarnych, takich jak ciągi znaków, liczby i wartości logiczne. Sam format nie narzuca sztywnego schematu — parser JSON nie wymaga predefiniowanego typu dokumentu, co częściowo wyjaśnia jego szerokie zastosowanie w przypadku odpowiedzi API, które muszą ewoluować bez zakłócania pracy starszych klientów. Gdy platforma kanału otrzymuje ładunek JSON z interfejsu API kanału danych lub webhooka, zazwyczaj analizuje tę strukturę i mapuje jej pola na dane wymagane przez format kanału docelowego — często XML.
Przykład: dane JSON za elementem kanału 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>
Zakomentowany blok pokazuje ten sam produkt w formacie JSON, czyli takim, jaki większość narzędzi do zarządzania kanałami danych faktycznie pobiera z interfejsu API, zanim zostanie on spłaszczony do tagów XML, jakich oczekuje kanał zakupowy.
Powiązane pojęcia
JSON to format łącznikowy, na którym opiera się większość automatyzacji, od której zależą obecnie źródła danych, niezależnie od tego, czy jest to API zwracające dane giełdowe w czasie rzeczywistym, czy webhook przesyłający zmianę ceny w momencie jej wystąpienia w systemie źródłowym. Coraz częściej pojawia się również jako alternatywny format przesyłania danych dla samego źródła danych, ponieważ coraz więcej platform dodaje opcje przesyłania danych oparte na JSON oprócz tradycyjnej obsługi formatów XML i CSV.