Adding a field
Open a persistent entity in Content and Add field. Choose type, configure it and Finish. Open an existing field by clicking its Fields row.
| Category | Options and uses |
|---|---|
| Identifier | UUID or int64 primary key with database generation |
| Text | string, text; Multiline, Markdown, Password, Email, URL |
| Number | int, int64, float |
| Boolean | bool, for example isVisible |
| UUID value | UUID without automatic primary-key assignment |
| Date / time | date or datetime |
| Choice | enum with defined options |
| Structured data | json |
| Image / Gallery | One image or a collection |
| Relation | Reference to another entity |
You cannot add a second Identifier after defining a primary key. UUID value creates a regular UUID field, not a configured identifier.
Basic settings
Field name starts lowercase, for example publishedAt or published_at. Presentation chooses the admin input. Markdown is stored as text; Email/URL select corresponding presentation. Password hides characters but does not hash or encrypt values.
For enum, enter unique comma-separated options: draft, published, archived. UI retains their order. Required requires input; Nullable permits NULL. Image/relation requirements use dedicated settings.
You can add an ordinary Required field or enable Required on an existing field without filling old records first. After Generate and migration, historical values may remain empty, but creating or saving a record requires the field. Keys, uniqueness and type changes have separate restrictions. See migrations.
Localized: values by language
Enable Localized for an ordinary string/text field after configuring the entity languages. This includes text with a Markdown editor. You can make the same choice for all fields in Entity settings → Languages → Localized fields; the Localized tooltip points there. Translated fields have a badge in Fields.
Identifiers, relationships, enums, numbers, images, hidden, password and generated fields stay shared. Required is checked in the default language, or every selected language with Require all languages. See languages and translations.
Advanced settings
| Parameter | Purpose |
|---|---|
| Title / Description | Admin label/help without API-key renaming |
| Default value | Compatible-type default |
| Primary key / Unique / Indexed | Key, uniqueness and index |
| ID autogeneration | UUID/PostgreSQL identity for compatible primary keys |
| Readonly | Disable manual form editing |
| Hidden | Hide in generated UI; not a substitute for server permissions |
| Width (px) | Fixed column width; empty means automatic |
Use appropriate formats: date 2026-09-28; RFC3339 datetime such as 2026-09-28T09:00:00Z. JSON default needs a supported object. Bool requires a boolean, not string "false".
Search, filters and sorting
Enable required List behavior operations:
| Switch | Behavior |
|---|---|
| Searchable | Server string/text search |
| Filterable | Typed field conditions |
| Sortable | Whole-result ordering before pagination |
For unavailable settings, open question-mark help. JSON, media, hidden and password presentation cannot be ordinary search/sort columns. Virtual capabilities are selected independently of source.
For Product, enable Searchable/Sortable on title, Filterable on status, Sortable on position. Users can search search-enabled columns, Apply filters and click headers to sort. The server combines conditions; changing them returns the list to page one.
Rename and type changes
Save/discard other edits before Rename. Enter the name and Preview rename; inspect API, database-column and model-reference changes. Confirm rename saves the manifest name; Generate updates files and migrations update the database. Update custom code and external clients yourself. Primary keys and physical relationship keys cannot be renamed currently.
Regular-field Type can change before first successful generation; afterwards it is locked. Replacement can use delete → Generate → create replacement → Generate, but applying migrations deletes old values. This is unavailable for protected identifiers.
Deletion
Inspect Delete impact before confirmation. Generated regular columns require confirming migration-time value loss. Cancel does not save drafts. Always Preview changes after deletion.
See CLI fields, renaming.