Skip to content

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.

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.

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.

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.

Use Boolean for true or false values, such as whether something is featured, enabled, or visible.

This is useful for simple toggles and flags.

Use Option when an editor should choose from a fixed list of values.

This helps standardize content and avoid inconsistent manual input.

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.

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.

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.

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.

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

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.