← Все гайды

Конвертер JSON в YAML онлайн

· 3 мин чтения

JSONYAML

Как преобразовать JSON в YAML без установки программ: вставить или открыть файл, проверить результат и скачать .yaml или сохранить его в проект.

YAML удобнее читать и править руками, поэтому в нём часто держат конфигурации, спецификации OpenAPI, манифесты Kubernetes и CI-пайплайны. JSON же выдают API и генераторы. Перевести один формат в другой можно прямо в браузере — в редакторе JSON Помощника SA, без регистрации.

Как преобразовать JSON в YAML

  1. Откройте песочницу JSON.
  2. Вставьте документ в редактор слева или откройте файл: Файл → Открыть файл… (файл .json можно и просто перетащить в окно редактора).
  3. Справа выберите вкладку YAML — там сразу виден тот же документ в YAML. Его можно скопировать кнопкой Копировать.
  4. Чтобы получить файл, выберите Файл → Скачать → YAML (.yaml).
  5. Чтобы продолжить работу с результатом как с отдельным документом, выберите Файл → Преобразовать в YAML: откроется редактор YAML с готовым документом.
Документ JSON в редакторе и его YAML-представление справа
Слева — JSON, справа на вкладке «YAML» — тот же документ в YAML

Что происходит при преобразовании

  • Структура сохраняется полностью: объекты становятся отображениями, массивы — списками с дефисами, вложенность передаётся отступами в два пробела.
  • Типы значений не теряются: числа, true/false и null остаются числами, логическими значениями и null. Строки, которые YAML прочитал бы как другой тип ("true", "123", "0012"), берутся в кавычки.
  • YAML 1.2: значения вроде yes, NO или 2026-01-01 остаются без кавычек — по YAML 1.2 это строки. Но старые парсеры YAML 1.1 (например, PyYAML) прочитают yes/NO как логические значения, а дату — как дату. Если результат будет читать такая система, возьмите эти значения в кавычки.
  • Порядок ключей остаётся таким же, как в исходном JSON.
  • Длинные строки не переносятся, чтобы значение после конвертации совпадало байт в байт.

Если преобразование недоступно

Конвертер работает только с корректным JSON. Если в документе есть ошибка, под редактором появится список «Ошибки в коде» с номерами строк, а пункт «Преобразовать в YAML» сообщит, что сначала нужно исправить ошибки. Чаще всего мешают:

  • запятая после последнего элемента объекта или массива;
  • комментарии // и /* */ — в JSON их нет;
  • одинарные кавычки вместо двойных и ключи без кавычек.

Подробнее о поиске таких ошибок — в гайде «Проверка JSON на ошибки».

В аккаунте и в проекте

В песочнице документ хранится только в вашем браузере. Если войти и сохранить документ в аккаунт, «Преобразовать в YAML» откроет окно сохранения: можно выбрать папку проекта и название нового артефакта — исходный JSON останется на месте, а YAML появится рядом с ним, с собственной историей версий.

Обратное направление

Из YAML в JSON переводит редактор YAML — см. «Конвертер YAML в JSON». Комментарии YAML при этом теряются: в JSON для них нет места.

Пример

Ответ API:

{"service": "orders", "replicas": 3, "ports": [8080, 9090], "env": {"LOG_LEVEL": "info", "FEATURE_X": "true"}}

После преобразования:

service: orders
replicas: 3
ports:
  - 8080
  - 9090
env:
  LOG_LEVEL: info
  FEATURE_X: "true"

Обратите внимание на FEATURE_X: в JSON это строка "true", поэтому в YAML она в кавычках — без них система прочитала бы логическое значение.

Вопросы и ответы

Можно ли получить YAML с отступом 4 пробела? Конвертер всегда использует 2 пробела — это стандарт де-факто для YAML (Kubernetes, GitHub Actions, OpenAPI). Отступ не влияет на смысл документа, пока он одинаков на одном уровне.

Сохранятся ли комментарии? В JSON комментариев нет, поэтому переносить нечего. Добавить их можно уже в YAML — строки, начинающиеся с #.

Подойдёт ли результат для Kubernetes или docker-compose? Да, это обычный YAML 1.2. Если манифест длинный, проверьте его по схеме — см. «Проверка YAML по JSON Schema».

Мои данные куда-то отправляются? Нет: преобразование выполняется в браузере, документ в песочнице хранится только у вас. На сервер он попадает, только если вы сами сохраните его в аккаунт.