Документация / JSON Schema
Типы данных
Ключевое слово type задаёт тип значения. Возможные типы соответствуют типам JSON: string, number,
integer, object, array, boolean и null. Можно указать список типов — тогда подходит любой из них.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": ["string", "null"]
}
null
42
Строки
| Ключевое слово | Значение |
|---|---|
minLength, maxLength | Минимальная и максимальная длина в символах (Unicode, а не байтах) |
pattern | Регулярное выражение (ECMA-262), которому должна соответствовать строка |
format | Семантический формат: email, date, uuid и т. д. — см. «Форматы» |
Шаблон pattern не привязан к началу и концу строки: "\\d+" найдёт цифры в «abc123». Чтобы проверить строку
целиком, используйте ^ и $.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"description": "Российский номер телефона в формате +7XXXXXXXXXX",
"type": "string",
"pattern": "^\\+7\\d{10}$"
}
"+79161234567"
"8 (916) 123-45-67"
Числа
Тип number — любое число, integer — целое (значение 1.0 тоже считается целым).
| Ключевое слово | Значение |
|---|---|
minimum, maximum | Нижняя и верхняя граница включительно |
exclusiveMinimum, exclusiveMaximum | Границы, которые само значение не может принимать |
multipleOf | Значение должно делиться на это число без остатка |
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"description": "Скидка в процентах с шагом 5",
"type": "integer",
"minimum": 0,
"maximum": 100,
"multipleOf": 5
}
15
17
В draft-04
exclusiveMinimumиexclusiveMaximumбыли логическими флагами приminimum/maximum; начиная с draft-06 это самостоятельные числа.
Логические значения и null
Тип boolean допускает только true и false — не строки "true" и не числа 0/1. Тип null допускает только
значение null: его часто объединяют с другим типом, чтобы разрешить «пустое» значение.
Похожие инструменты
Обновлено: 30 сентября 2026 г.
