Field configuration

SettingsAnchor

Each field must have the following settings configured to be added to a model:

PropertyDescription
Display nameThis is what is shown to content editors throughout the application
API IDThis is what is exposed within the API as a field within your model.
DescriptionDisplays a hint for content editors and API users.

OptionsAnchor

Not all options are available for all field types.

Use as a title fieldAnchor

You can set multiple fields as titles to appear within the relational picker instead of IDs.

You cannot use this when the field visibility is set to hidden, API only or read only.

Allow multiple valuesAnchor

You should select this if you wish to accept multiple values, and return an array to the API for this field.

You cannot use the title field with this option.

Localize fieldAnchor

Enabling this field allows translations per locale configured on your project.

You cannot use "Set initial value" with this option.

Embed optionsAnchor

This setting is only available for Rich text fields.

Rich text embeds need to enabled per field. You can do this from inside the Field Settings when adding a new, or editing a Rich Text field. Click Enable embedding and select the models that should be embeddable in your Rich text field.

Rich Text Options
Rich Text Options

ValidationsAnchor

Not all validation options are available for all field types.

Make field requiredAnchor

Marking this prevents content from being saved if it is left empty. The API will mark this field as non nullable.

You cannot use this when the field visibility is set to hidden, API only or read only.

Set field as uniqueAnchor

Enabling this ensures content cannot be saved if the same value exists within another entry for this field. Uniqueness is checked per Content stage.

Limit character countAnchor

This validation allows you to specify the minimum/maximum character counts. You can set At least, Between, and No more than, with a custom error message.

Match a specific patternAnchor

This validation allows you to only accept a specific regular expression.

Common patternsAnchor

You can use an existing common pattern from the web app, or provide your own.

URL

(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)

Phone

^(?:(?:\(?(?:00|\+)([1-4]\d\d|[1-9]\d?)\)?)?[\-\.\ \\\/]?)?((?:\(?\d{1,}\)?[\-\.\ \\\/]?){0,})(?:[\-\.\ \\\/]?(?:#|ext\.?|extension|x)[\-\.\ \\\/]?(\d+))?$

Email

^([a-z0-9_\.\+-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$

Slug

^[a-z0-9]+(?:-[a-z0-9]+)*$

Unicode charactersAnchor

Hygraph field validations support unicode (non-latin) characters. You can add Unicode character classes - which typically correspond to specific alphabets - to a custom Regular Expression field validation.

You can read about the syntax here.

Restrict a specific patternAnchor

This validation option allows you to not accept specific regular expression.

Both Match and Restricting patterns are defined by standard Regular Expressions (RegExp) and do not need to be wrapped in opening or closing slashes.

You can modify these pattern searches with additional flags such as ignoring case, enabling multi-line search, single-line search or both.

AdvancedAnchor

Not all advanced settings are available for all field types.

Set initial valueAnchor

You can define an initial value for content editors. This doesn't have any effect on the API when performing mutations.

You cannot use this when the field visibility is set to hidden, API only or read only.

Field visibilityAnchor

OptionDescription
Read / WriteThe field will be accessible for read/write operations. Default.
Read OnlyThe field will be shown, but cannot be edited in the UI. You can update via the API if required.
HiddenThe field will not be shown in the UI, but can be referenced by other fields such as Slugs, or UI Extensions.
API OnlyField is not shown in the UI, but can be used via the API using mutations.

Field visibility has no relation with permissions or security.