Skip to main content
Use enum to restrict a field to a list of allowed values.

Basic usage

{
  "type": "object",
  "properties": {
    "priority": { "enum": ["low", "medium", "high"] },
    "status": { "enum": ["open", "in_progress", "closed"] }
  },
  "required": ["priority", "status"],
  "additionalProperties": false
}
Use enums for categories and statuses so outputs stay predictable.

Mixed-type enums

enum values are not restricted to strings:
{
  "type": "object",
  "properties": {
    "score": { "enum": [1, 2, 3, "unknown", null] }
  },
  "required": ["score"],
  "additionalProperties": false
}
For single-value enums, use const instead.