Zesty · Schema

Zesty Field

A Zesty.io field defines a single data attribute within a content model, specifying its type, validation rules, and display settings.

CMSComposableContent ManagementGraphQLHeadless CMSMedia

Properties

Name Type Description
ZUID string The Zesty Universal Identifier for the field.
contentModelZUID string The content model ZUID this field belongs to.
name string The programmatic name of the field.
label string The display label for the field.
description string A description of the field.
datatype string The data type of the field (e.g., text, textarea, wysiwyg_basic, images, date, number, link, internal_link, one_to_one, one_to_many).
required boolean Whether the field is required.
sort integer The sort order of the field within the model.
settings object Additional field settings and validation rules.
createdAt string Timestamp when the field was created.
updatedAt string Timestamp when the field was last updated.
View JSON Schema on GitHub

JSON Schema

field.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://github.com/api-evangelist/zesty/blob/main/json-schema/field.json",
  "title": "Zesty Field",
  "description": "A Zesty.io field defines a single data attribute within a content model, specifying its type, validation rules, and display settings.",
  "type": "object",
  "properties": {
    "ZUID": {
      "type": "string",
      "description": "The Zesty Universal Identifier for the field."
    },
    "contentModelZUID": {
      "type": "string",
      "description": "The content model ZUID this field belongs to."
    },
    "name": {
      "type": "string",
      "description": "The programmatic name of the field."
    },
    "label": {
      "type": "string",
      "description": "The display label for the field."
    },
    "description": {
      "type": "string",
      "description": "A description of the field."
    },
    "datatype": {
      "type": "string",
      "description": "The data type of the field (e.g., text, textarea, wysiwyg_basic, images, date, number, link, internal_link, one_to_one, one_to_many)."
    },
    "required": {
      "type": "boolean",
      "description": "Whether the field is required."
    },
    "sort": {
      "type": "integer",
      "description": "The sort order of the field within the model."
    },
    "settings": {
      "type": "object",
      "description": "Additional field settings and validation rules.",
      "additionalProperties": true
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the field was created."
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the field was last updated."
    }
  },
  "required": ["ZUID", "contentModelZUID", "name", "datatype"]
}