Content Definitions Overview

Understand content definitions — the schemas that structure your data in Nomad Media.

Content Definitions Overview

A content definition is a schema that defines the structure of a type of content in Nomad Media — similar to a table in a relational database. Each content definition has a name, a unique system-assigned UUID, and a set of typed fields.

Examples of content definitions: Committee, Session, Meeting, Chamber, Speaker.

Content definitions are created and managed in the Admin UI under Site Manager. No engineering involvement is required to add or modify them — administrators can make changes directly.


Fields

Each field in a content definition has a name, a property name (used as the key in API calls), and a type.

Field Types

Field TypeDescriptionAPI Value
Short TextSingle-line stringString
Long TextMulti-line stringString
NumberNumeric valueNumber
DateDate or date/timeISO 8601 string
CheckboxTrue/false flagBoolean
Lookup DropdownSingle-select from a managed listString
Lookup Multi-SelectMulti-select from a managed listArray of strings
Related Content DefinitionReference to a single record in another content definitionUUID string
Multi-Select (Related)References to multiple records in another content definitionArray of UUID strings
Asset SelectorReference to an asset (file) in object storageUUID string
Image SelectorReference to an image assetUUID string

Under the hood, only a handful of true storage types exist — string, numeric, date, and UUID. Relationship fields (Related Content Definition, Multi-Select, Asset Selector, Image Selector) all resolve to UUID references in storage, regardless of how they appear in the UI.

Property Names

The property name is the key used when reading or writing field values via the API. It is set when the field is created in the Site Manager. Property names are also the exact field names used in search filters — what you name a field in the designer is what you query in the search index.

Tip: Choose property names carefully. They become part of your API contract and cannot be changed without affecting existing integrations.


The Display Field

Each content definition has a designated display field — the field whose value appears as the label when that content definition is referenced in a dropdown from another record.

For example, if a Meeting record has a field referencing a Committee, the committee's display field value (e.g., "Finance Committee") is what appears in the meeting's dropdown selector in the Admin UI.


Relationships and UUIDs

All relationship fields store UUID references, not string values. This has two important implications:

  1. API calls must pass UUIDs, not display names. When creating or updating a record with a relationship field, the value must be the UUID of the related record — not the display name or any other field value.

  2. Relationships are stable. Because references are stored as UUIDs — and every record's UUID never changes — renaming a record, moving an asset to a different folder, or migrating content between storage providers does not break any existing relationships.


Concatenated Fields

Nomad Media does not automatically concatenate multiple fields into a single display value. If a combined value is needed — for example, a label that shows both a committee code and a committee title — it must be stored as a separate, manually populated field on the content definition.


Important Warnings

⚠️

Do not change a field's type after data has been entered. Changing a field type after records have been created will cause data integrity problems for existing data. Set field types correctly before ingesting any content.

⚠️

Coordinate schema changes with Nomad. While content definitions can be modified without engineering involvement, changes to live schemas — especially adding indexed fields or modifying relationship structures — can have downstream effects on the search index, API integrations, and existing data. Discuss planned changes with Nomad before applying them to a production environment.


Naming Restrictions

Content definition names and field names cannot use certain reserved system words. Validation is case-insensitive. For the full list of reserved names and the error messages returned on violation, see Content Definition Naming Restrictions.