{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "additionalProperties": false, "required": ["groups"], "properties": { "$schema": { "type": "string" }, "groups": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": ["key", "label", "fields"], "properties": { "key": { "type": "string", "pattern": "^[a-z][a-z0-9_]*$" }, "label": { "type": "string" }, "fields": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": ["key", "type", "label"], "properties": { "key": { "type": "string", "pattern": "^[a-z][a-z0-9_]*$" }, "type": { "enum": [ "text", "number", "boolean", "date", "datetime", "money", "select", "multiselect", "relation", "email", "phone", "url", "json" ] }, "label": { "type": "string" }, "required": { "type": "boolean" }, "description": { "type": "string" } } } } } } } } }