Content Field Types
Field types define what kind of data a field stores and how editors interact with it. Choosing the right field type helps keep content consistent, easier to manage, and easier to reuse across your project.
Multiple values
Section titled “Multiple values”Most field types can allow multiple values. In the field settings, set Allow Multiple Values (or Selection Type for options, references, assets, and components) to Multiple.
When Multiple is enabled you can also set:
- Min Values — the fewest items editors must provide
- Max Values — the most items editors may add
In the content editor, scalar fields (text, number, and so on) show an Add … control so editors can append another value. Option, reference, asset, and component fields keep their existing multi-select / add UIs.
Multiple-value fields are exposed in the GraphQL API as lists (for example [String] for a multi text field).
Title fields must remain single-value text fields.
Use Text for short values such as titles, names, labels, and slugs.
This is usually the best choice when the content should fit on a single line and does not need formatting.
Textarea
Section titled “Textarea”Use Textarea for longer plain text such as summaries, notes, excerpts, or internal descriptions.
Choose this when editors need more room to write, but the content does not need rich formatting.
Richtext
Section titled “Richtext”Use Richtext for formatted content such as article bodies, page sections, and longer marketing copy.
This field type is designed for content that includes structure or styling, such as paragraphs, headings, lists, and links.
Boolean
Section titled “Boolean”Use Boolean for true or false values, such as whether something is featured, enabled, or visible.
This is useful for simple toggles and flags.
Option
Section titled “Option”Use Option when an editor should choose from a fixed list of values.
This helps standardize content and avoid inconsistent manual input.
Reference
Section titled “Reference”Use Reference to connect one item to another, such as linking an article to an author, category, or related entry.
Use this when the value should point to managed content rather than storing freeform text.
Use Asset to attach uploaded files such as images, documents, videos, or downloadable resources.
This keeps media managed separately while still making it easy to attach to entries.
Component
Section titled “Component”Use Component when you want to reuse the same group of fields across multiple content models.
For example, you might use a component for SEO fields, call-to-action blocks, or shared contact details.
Remote Data
Section titled “Remote Data”Use Remote Data to pull options or JSON from an external API.
Choose this when values should come from a live external source rather than being typed manually. See Remote Data for setup.
JSON Raw
Section titled “JSON Raw”Use JSON Raw to store arbitrary JSON such as config blobs, structured metadata, or nested objects and arrays.
Editors enter values as JSON in a text area. The GraphQL API exposes the field as the JSON scalar. Prefer this when the data is authored in Contismo; use Remote Data when values should be fetched from an external API.
Quick guide
Section titled “Quick guide”| If you need to store | Use |
|---|---|
| A short single-line value | Text |
| Longer plain text | Textarea |
| Formatted content | Richtext |
| A true or false value | Boolean |
| A choice from a fixed list | Option |
| A link to another managed item | Reference |
| A file or image | Asset |
| A reusable group of fields | Component |
| Data from an external API | Remote Data |
| Arbitrary structured JSON | JSON Raw |
Choosing the right field
Section titled “Choosing the right field”In general, choose the simplest field type that fits the content you need to store. This makes models easier to understand, easier for editors to use, and more reliable when content is delivered through the API.