Prog Academy
RU UA
API та інтеграції

Що таке JSON?

JSON (JavaScript Object Notation) — текстовий формат обміну даними, у якому інформація записується парами «ключ — значення». Його розуміють усі мови програмування, і саме ним найчастіше відповідають сучасні API.

Структура проста: обʼєкти у фігурних дужках, списки у квадратних, значення — рядки, числа, логічні величини або вкладені обʼєкти. Формат одночасно читається людиною й розбирається програмою без додаткових схем.

JSON витіснив XML як основний формат вебAPI: він компактніший, простіший і природно лягає на структури даних у коді. В AI-розробці ним же модель повертає виклики інструментів при function calling.

Де застосовується

JSON трапляється далеко за межами API. У ньому зберігаються налаштування проєктів — package.json у Node.js, tsconfig.json, composer.json, — пишуться структуровані логи, описуються інфраструктурні конфігурації та передаються дані між мікросервісами.

Бази даних давно приймають його як повноцінний тип: PostgreSQL і MySQL уміють зберігати JSON у колонці та шукати за окремими полями всередині нього. У роботі з мовними моделями JSON — основний спосіб отримати від моделі машиночитану відповідь: саме ним приходять аргументи виклику інструмента при function calling.

Приклад

Відповідь API може виглядати так: {"id": 42, "name": "Анна", "active": true} — три поля з різними типами значень.

{
  "order_id": "A-10427",
  "paid": true,
  "total": 4900,
  "customer": {
    "name": "Анна",
    "city": "Київ"
  },
  "items": [
    { "sku": "JV-01", "qty": 1 },
    { "sku": "PY-07", "qty": 2 }
  ]
}
Обʼєкт із вкладеним обʼєктом і списком: так виглядає типова відповідь API на запит одного замовлення.

Часті запитання

Чим JSON відрізняється від XML?

XML описує дані тегами й допускає атрибути, схеми та простори імен — він потужніший, але багатослівніший. JSON компактніший і читається простіше, а його структура напряму лягає на обʼєкти та масиви в коді. Тому вебAPI майже повністю перейшли на JSON.

Чи можна писати коментарі в JSON?

У стандартному JSON коментарів немає, і суворий розбирач на них лається. Обходять це по-різному: додають поле на кшталт _comment, переносять налаштування в YAML, який коментарі підтримує, або використовують діалект JSONC — його розуміють редактори, але не API.

Чим JSON відрізняється від обʼєкта JavaScript?

JSON — це текст, обʼєкт JavaScript — структура в памʼяті. У JSON ключі завжди в подвійних лапках, не можна зберігати функції, дати чи undefined. Переведення між ними роблять функції JSON.parse і JSON.stringify.

Що таке JSON Schema?

Це опис того, яким має бути документ: які поля обовʼязкові, якого вони типу, в яких межах лежать значення. За схемою автоматично перевіряють вхідні дані й генерують документацію. Той самий механізм описує інструменти, які викликає мовна модель.

Повʼязані терміни