Документация / JSON Schema
Перечисления и константы
Эти ключевые слова работают для значений любого типа.
Перечисление
enum — список допустимых значений. Значение документа должно совпасть с одним из них полностью — включая тип:
строка "1" не равна числу 1.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"description": "Статус заказа",
"enum": ["new", "paid", "shipped", "delivered", "cancelled"]
}
"paid"
"Paid"
В enum можно смешивать типы и использовать null: "enum": ["red", "green", null, 42].
Константа
const — ровно одно допустимое значение. Удобно в сочетании с oneOf, когда по значению поля определяется вид
объекта.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"country": { "const": "RU" },
"inn": { "type": "string", "pattern": "^(\\d{10}|\\d{12})$" }
},
"required": ["country", "inn"]
}
{ "country": "RU", "inn": "7707083893" }
{ "country": "KZ", "inn": "7707083893" }
Перечисление с описаниями
У enum нельзя подписать отдельные значения. Если нужны подписи, используйте oneOf с const и title:
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"oneOf": [
{ "const": "card", "title": "Банковская карта" },
{ "const": "sbp", "title": "Система быстрых платежей" },
{ "const": "cash", "title": "Наличными курьеру" }
]
}
Похожие инструменты
Обновлено: 30 сентября 2026 г.
