- Schema – Defines the content type: its name, API identifiers, fields, groups, and settings (e.g. entry title, searchable/filter fields, allowed states, access control, custom URL rule (Coming soon)).
- Entry – A single record for that content type, with values for each field defined in the schema.
- Published entry – The version of an entry that is exposed via APIs for consumption by apps and websites.
How Custom Entities Can Be Used
- Structured content types – e.g. “Product”, “Event”, “Recipe”, “Team Member” with a fixed set of fields and validation.
- Multi-channel content – Same content type used by web, app, or other clients via APIs (e.g. JSON, HTML, XML, or plain text).
- Relations – Link entries to Categories, Tags, Members, Forms, or other custom content types via Related fields.
- Rich layouts – Use Components and Dynamic Zones to build modular blocks (hero, CTA, FAQ, etc.) inside an entry.
- Filtered lists – Use Dynamic List fields to show lists of related content filtered by relations (e.g. “Posts in this Category” or “Products in this Collection”).
- Single-page vs collection – Schemas can represent a collection (many entries) or a single content type (e.g. one “About Us” page); some schemas are used as reusable building blocks (e.g. shared with posts).
Example Scenarios
- Product catalog – A “Product” content type with name, SKU, price, category, image, and description. Entries are products; APIs return them for storefront or app.
- Landing page builder – A “Landing Page” content type with a Dynamic Zone where each section can be a different block type (Hero, Features, Testimonials, CTA). Each entry is a page; order and mix of blocks are flexible.
- Event listing – An “Event” content type with title, start/end date and time, venue (related entity), and a Dynamic List for “Related events” filtered by category or tag.
Core Concepts
Schema
- The schema is the definition of a content type: name, API slugs, response format, fields, groups, and settings.
- Fields – Each field has a name, a type (e.g. short text, number, relation, component, dynamic zone, dynamic list), optional metadata (e.g. label, default), and validation rules.
- Groups – Logical grouping of fields (e.g. “Content”, “SEO”) for organisation and UI.
- Settings – Include which field is used as the entry title, which fields are searchable, which can be used as filters, allowed states, access control, custom URL patterns (Coming soon), and optional component preview.
Entries and Field Values
- An entry belongs to one schema and holds one value per field.
- Values are typed according to the field type (text, number, date, media, relation, component(s), or dynamic list configuration).
Relations and Taxonomies
- Related fields link to other content: Categories, Tags, Members, Forms, or other custom content types (and posts).
- Dynamic List – Lets you define a list by content type and filters (e.g. by category or tag). The list is resolved when the entry is delivered via the API. System taxonomies (Category, Tag, Member, Form) cannot be used as the main content type for a dynamic list; the list is based on custom content types (or posts).
Field Types
| Type | Description | Example use | Limitations / notes |
|---|---|---|---|
| Short text | Short string | Title, name, slug | Maximum length applies. |
| Long text | Long string | Summary, description | |
| Rich text | Formatted long text (e.g. HTML) | Body content | |
| Integer | Whole number | Count, year | |
| Decimal | Decimal number | Price, rating | |
| Date | Date only | Event date | |
| Date and time | Date and time | Publish time | Optional display format. |
| Boolean | Yes/no | Featured, active | |
| Email address | Contact email | ||
| URL | Web address | Link | |
| Phone number | Phone number | Contact number | |
| Publive media | Image or file from Publive media library | Image, attachment | References a single media item (id, url, type, filename in API). |
| JSON | Arbitrary JSON | Config, metadata | |
| Related | Link to another content item or taxonomy | Author, category, related post | Single or multiple relations depending on configuration. |
| Embed | Embedded content (e.g. oEmbed / iframe) | Video, social embed | |
| Component | One reusable block (single or repeatable) | Author card, feature list | See Components section. Can be limited to one instance or allow multiple instances of the same block. |
| Dynamic zone | Ordered list of blocks; each block can be a different type | Page sections (hero, CTA, FAQ) | See Dynamic Zone section. |
| Dynamic list | List of related content defined by type and filters | Related posts, products in collection | See Dynamic List section. Cannot use system taxonomies as the list’s content type. |