JSON (JavaScript Object Notation), verileri temsil etmek için anahtar-değer çiftleri ve diziler kullanan hafif bir veri değişim biçimidir. Basitliği, okunabilirliği ve diller arası yapısı nedeniyle Web API'leri, yapılandırma dosyaları, günlükler ve ön uç-arka uç veri iletimi için fiili standart haline gelmiştir. JSON'un yalnızca altı temel değer türü vardır: dize, sayı, boolean, null, nesne ve dizi. Sözdizimi kuralları RFC 8259 ve ECMA-404 standartları tarafından birlikte tanımlanır.
JSON biçimlendirme (JSON güzelleştirme olarak da adlandırılır), veri içeriğini değiştirmeden sıkıştırılmış JSON'a uygun girinti ve satır sonları ekleyerek, insanların okuması için kolay hiyerarşik bir yapıya dönüştürme işlemidir. API yanıtlarındaki, günlüklerdeki ve depolama alanındaki JSON genellikle tek satıra sıkıştırılmıştır, bu da doğrudan okumayı çok zorlaştırır. Biçimlendirmeden sonra nesne iç içe geçmelerini, dizi öğelerini ve her alanın değerini net bir şekilde görebilirsiniz.
Biçimlendirmenin ters işlemi, tüm gerekli olmayan boşluk karakterlerini kaldırarak JSON'u iletim boyutunu azaltmak için en kompakt tek satırlık biçimine geri döndüren JSON sıkıştırmasıdır (Minify). Biçimlendirme ve sıkıştırma bir çift tersinir işlemdir; hiçbiri JSON anlamını değiştirmez, yalnızca okunabilirliği ve boyutu etkiler.
JSON doğrulama, bir metin parçasının JSON sözdizimi kurallarına uyup uymadığını kontrol etmektir. Yaygın geçersiz desenler şunlardır: çift tırnak yerine tek tırnak kullanma, anahtarların tırnak işareti olmaması, son öğeden sonra sondaki virgül bulunması, // veya /* */ yorumları içermesi ve parantezlerin veya tırnak işaretlerinin yanlış kapanması. Bunların hiçbiri geçerli JSON değildir ve biçimlendirme hataları bildirecektir — bu durumda, önce JSON Onarma aracını kullanmalı, ardından biçimlendirmelisiniz.
Biçimlendirmenin yanı sıra, bu araç ayrıca Ağaç Görünümü, Zihin Haritası Görünümü ve 13 programlama diline kod dönüşümü sağlar: JSON'u derin yapıları gezinmek için görsel bir hiyerarşik ağaca daraltabilir veya API yanıtı JSON'unu tek tıklamayla TypeScript arayüzlerine, Java sınıflarına, Python sözlüklerine veya veritabanı tablo oluşturma deyimlerine dönüştürerek geliştirmede doğrudan kullanabilirsiniz. Tüm işleme tarayıcıda yerel olarak yapılır; veriler hiçbir sunucuya yüklenmez.