Конвертер YAML в JSON
Переведите конфигурацию YAML, спецификации OpenAPI и файлы CI в JSON, который прочитает любой парсер, API или валидатор схем. Загрузите файлы .yaml или .yml и скачайте JSON с отступами.
Конвертер данных
или перетащите сюда файлы CSV, TSV, TXT … ·
Макс. 95 MB на файл· До 20 файлов· Удаляются через 30 минут
Файлы обрабатываются на наших серверах и удаляются через 30 минут.
Символ, разделяющий столбцы в CSV и текстовых файлах, — при чтении и при записи. «Автоопределение» распознаёт его во входном файле, а при записи ставит запятые.
UTF-8 подходит для любого языка. Выберите «UTF-8 с BOM», если Excel в Windows искажает при открытии CSV буквы с диакритикой, кириллицу или азиатские символы.
Для файлов Excel, ODS и Numbers: преобразовать только первый лист или все листы (по одному CSV на лист в ZIP или по одному ключу JSON на лист).
Название вкладки листа в новой таблице, до 31 символа.
«Массив объектов» использует имена столбцов как ключи в каждой строке; «Массив массивов» компактнее и хранит заголовок первым массивом.
Имя внешнего элемента, который содержит все строки; каждая строка становится элементом <row> внутри него.
Используется в операторах CREATE TABLE и INSERT. Только латинские буквы, цифры и подчёркивания.
Кавычки и типы столбцов немного различаются в разных СУБД; выберите ту, в которую будете импортировать.
Приводит ячейки с датами к одному формату. ISO (2026-10-18) надёжнее всего для баз данных и кода; «Оставить как есть» сохраняет даты в исходном виде.
Как пользоваться инструментом
- 1
Загрузите файлы YAML
Добавьте файлы .yaml или .yml: до 20 за раз, не больше 95 MB каждый. Имена сохраняются: JSON-файлы получат те же имена с новым расширением.
- 2
Выберите формат: с отступами или компактный
Параметр Форматирование с отступами включен: JSON выводится с отступами, так его удобно читать и проверять в код-ревью. Чтобы получить файл в одну строку для вставки в тело запроса, отключите его в разделе Расширенные настройки.
- 3
Конвертируйте и используйте
Нажмите Преобразовать в JSON, скачайте результат и передайте файл в API, валидатор или скрипт, для которого он был нужен.
Зачем разработчики переводят YAML в JSON
YAML написан для людей: отступы вместо фигурных скобок, комментарии, большинство строк без кавычек. Поэтому в нем пишут манифесты Kubernetes, workflow GitHub Actions, файлы Docker Compose и спецификации OpenAPI, которые команды правят вручную. JSON написан для программ. В стандартной библиотеке каждого языка есть JSON-парсер, браузеры разбирают его нативно, а большинство HTTP API принимают только его.
Поэтому конвертация происходит на границе систем. Инженер платформы пропускает манифест через jq, который читает только JSON. Бэкенд-разработчик отправляет спецификацию OpenAPI в генератор кода, которому нужен JSON. Тестировщик загружает тестовые данные из YAML в набор тестов на JavaScript. Во всех случаях YAML остается источником истины, а JSON — артефактом сборки. Если вместо конфигов у вас целый каталог выгрузок или фидов, XML в JSON обработает более старый формат разметки точно так же.
Как развивались YAML и JSON
- Клэрк Эванс впервые предложил YAML
- 2001
- В YAML 1.2 JSON стал подмножеством YAML
- 2009
- RFC 8259, действующий стандарт JSON
- 2017
- Опубликована редакция YAML 1.2.2
- 2021
Что происходит в JSON с возможностями, которые есть только в YAML
Якорь (&defaults) и его алиасы (*defaults) позволяют повторно использовать блок в YAML. В JSON ссылок нет, поэтому каждый алиас заменяется полной копией блока с якорем.
- JSON может оказаться заметно длиннее YAML
- Ключи слияния (
<<: *defaults) раскрываются так же
Строки, начинающиеся с #, — это пояснения для людей. В JSON для них нет места, и они удаляются.
- Храните YAML в системе контроля версий как источник с комментариями
Значение 2026-10-18 без кавычек во многих YAML-парсерах считается временной меткой. В JSON нет типа даты, поэтому оно записывается как строка "2026-10-18".
Поток YAML может содержать несколько документов, разделенных ---. В файле JSON хранится одно значение, поэтому, если принимающему инструменту нужен один объект, поместите каждый документ в отдельный файл.
{
"service": "billing",
"replicas": 3,
"ports": [8080, 9090],
"env": {
"LOG_LEVEL": "info",
"REGION": "NO"
}
}Факты о форматах YAML и JSON
YAML
YAML
YAML («YAML Ain't Markup Language») — удобный для человека формат данных, впервые выпущенный в 2001 году. Он использует отступы вместо скобок, поддерживает комментарии и является надмножеством JSON. Его широко применяют для конфигурации в Docker Compose, Kubernetes, GitHub Actions и многих приложениях. Из-за зависимости от пробелов его легко сломать одним лишним пробелом, а некоторые значения, например «no» или даты, могут интерпретироваться неожиданно.
- Сжатие
- –
- Прозрачность
- –
- Анимация
- –
- Год появления
- 2001 · Clark Evans, Ingy döt Net, Oren Ben-Kiki
JSON
Формат JSON (JavaScript Object Notation)
JSON — лёгкий текстовый формат для структурированных данных, который популяризировал Дуглас Крокфорд в начале 2000-х; он стандартизован как RFC 8259 и ECMA-404. Он описывает объекты, массивы, строки, числа, логические значения и null с помощью простого и читаемого синтаксиса. Это формат по умолчанию для веб-API, файлов конфигурации и обмена данными между приложениями практически на любом языке программирования. В нём нет встроенных комментариев, дат и схем, а большие вложенные файлы трудно читать без просмотрщика.
- Сжатие
- –
- Прозрачность
- –
- Анимация
- –
- Год появления
- 2001 · Douglas Crockford
YAML переводят в JSON, когда конфигурацию или спецификацию, написанную для людей, нужно передать машине: в запрос к API, валидатор схем или инструмент без YAML-парсера.
Вопросы о конвертации YAML в JSON
Зачем конвертировать YAML в JSON, если в них одни и те же данные?
Многие инструменты умеют разбирать только один из этих форматов. Средства чтения JSON есть в каждом языке программирования и в каждом браузере, а для YAML нужна дополнительная библиотека. Тела запросов к REST API, валидаторы JSON Schema, jq и такие файлы, как package.json или manifest.json расширения браузера, ожидают именно JSON.
Что происходит с комментариями в YAML?
Они удаляются. В RFC 8259 для JSON не предусмотрен синтаксис комментариев, поэтому строкам, начинающимся с #, в нем нет места. Храните YAML-файл как документированный источник, а JSON считайте сгенерированной копией, которую можно в любой момент получить заново.
Почему NO или off превратились в false?
Парсеры, следующие YAML 1.1, читают yes, no, on и off как булевы значения, поэтому код страны вроде NO (Норвегия) может превратиться в false. В YAML 1.2 булевы значения ограничены true и false, но не все инструменты ему следуют. Заключите такие значения в кавычки в YAML, например "NO", и в JSON они останутся строками.
Можно ли конвертировать шаблон CloudFormation, написанный на YAML?
AWS CloudFormation принимает оба формата, но короткие теги вроде !Ref и !GetAtt существуют только в YAML. В JSON-шаблонах они записываются как полные функции: {"Ref": "MyBucket"} или {"Fn::GetAtt": [...]}. Перед конвертацией перепишите короткие теги в полной форме, чтобы JSON-шаблон остался корректным.
Как выполнить обратное преобразование?
Воспользуйтесь JSON в YAML. Это обычное направление, когда ответ API или сгенерированный файл нужно превратить в читаемый конфигурационный файл в репозитории.