Entity Types

Define custom data schemas with typed fields, validation, and multiple views.

10 min read

Entity Types

Entity types are the foundation of WISEROWS's data model. Think of them as custom database tables with a built-in UI -- you define the schema, and WISEROWS automatically generates table views, kanban boards, galleries, calendars, forms, and API endpoints.

Whether you're tracking blog posts, leads, products, keywords, or any other data shape, entity types give you a flexible, no-code way to model it all.

Why Entity Types?

Most platforms force you into rigid data models. WISEROWS flips this: you define the shape of your data, and the platform adapts to it.

  • No database migrations -- add, remove, or reorder fields at any time
  • Instant UI -- every entity type gets four views, inline editing, filtering, and sorting out of the box
  • API-first -- every entity type is automatically available via the REST API
  • AI-aware -- fields can be auto-generated by AI using context from other fields
  • Workflow-ready -- connect entity types to workflows for automated content pipelines

Creating an Entity Type

1

Open the Schema Builder

Navigate to Schema Builder in the sidebar. This is your central hub for managing all entity types in your project.

2

Click New Entity Type

Click the New Entity Type button. A configuration panel opens where you define the basics.

3

Configure the basics

Fill in the core properties:

6 of 6
Property
Description
Example
NameSingular display nameBlog Post
Plural NameUsed in navigation and headingsBlog Posts
SlugURL-friendly identifier (auto-generated)blog-post
IconLucide icon for sidebar and headersfile-text
ColorOptional accent color#3b82f6
DescriptionWhat this entity type representsArticles published on the company blog
4

Add fields

Define the data shape by adding fields. Each field has a name, type, and optional validation rules. See Field Types for the full reference.

5

Set the title field

Choose which field acts as the title -- this is the primary display value shown in tables, kanban cards, search results, and references.

Tip
The slug must start with a lowercase letter and contain only lowercase letters, numbers, and hyphens. For example: blog-post, lead, seo-keyword.

Schema Properties

Every entity type has these configurable properties:

namestringrequired
Singular display name (max 100 characters). Used in headings and forms.
slugstringrequired
URL-friendly identifier. Must match the pattern `^[a-z][a-z0-9-]*$`. Used in API routes, URLs, and programmatic references.
pluralNamestringrequired
Plural display name (max 100 characters). Used in navigation, sidebar, and list headings.
descriptionstring
Short description (max 500 characters). Displayed in the Schema Builder and used as context for AI features.
iconstringrequired
Lucide icon name. Displayed in the sidebar, page headers, and entity references.
colorstring
Optional hex color for visual distinction in the sidebar and dashboards.
titleFieldstringrequired
The field slug used as the primary display value for entities of this type.
defaultViewstring
Initial view when navigating to this entity type. One of: `table`, `kanban`, `gallery`, `calendar`.

Fields

Each entity type has an ordered list of field definitions that make up its schema. Fields are the columns in your table, the attributes on your cards, and the inputs in your forms.

Every field has these properties:

7 of 7
Property
Type
Description
NamestringDisplay label shown in the UI
SlugstringProgrammatic identifier used in the API, formulas, and AI prompts
TypeFieldTypeOne of the 18 supported field types
RequiredbooleanWhether the field must have a value
ConfigobjectType-specific configuration (options for select, min/max for numbers, etc.)
Show in TablebooleanWhether this field appears as a column in the table view
Sort OrdernumberDisplay position in the schema

Adding and Reordering Fields

In the Schema Builder, click Add Field on your entity type to add a new field. Select the field type from the dropdown, then configure its properties.

Drag fields to reorder them. The order determines how they appear in table columns, forms, and the API response.

Warning
Changing a field's slug after entities have been created will not automatically migrate existing data. The old slug's values will become orphaned. Plan your slugs carefully before creating entities.

Field Slug Rules

Field slugs must:

  • Start with a lowercase letter
  • Contain only lowercase letters, numbers, and underscores
  • Match the pattern: ^[a-z][a-z0-9_]*$

Examples: title, meta_description, price_usd, publish_date

Control how and where the entity type appears in the application sidebar:

3 of 3
Setting
Description
Show in SidebarToggle visibility on or off
Sidebar SectionGroup under a section (e.g., Data, Content, Marketing, SEO)
Sort OrderPosition within the section (lower numbers appear first)

Tip
Use sidebar sections to organize entity types by domain. For example, group "Blog Posts", "Landing Pages", and "Glossary Terms" under a Content section.

Advanced Configuration

Entity types support several advanced features that integrate with WISEROWS's broader platform capabilities.

Content Generation

Enable AI-powered content generation on an entity type to let users generate field values with a single click. Configure a prompt template that references field slugs, and the AI fills in the blanks.

This connects to WISEROWS's content generation system and is especially powerful when combined with Content Buckets.

Status Workflows

Attach a status workflow to an entity type to define a progression of stages (e.g., Draft, Review, Published, Archived). This powers the kanban view and enables workflow automations.

Data Quality Rules

Configure data quality checks that validate entities against custom rules. This is useful for SEO readiness checks, content completeness scoring, and compliance validation.

Meta Fields

Enable meta fields to automatically add SEO-related fields (meta title, meta description, canonical URL, etc.) to the entity type. These are used by the programmatic SEO system and content publishing workflows.

API Access

Every entity type is automatically available via the Entities API. No additional configuration needed.

You can:

  • List entities with filtering, sorting, and pagination
  • Create entities with validation
  • Update individual fields or entire entities
  • Delete entities (soft delete with optional hard delete)
# List all entities of type "blog-post"
curl -H "Authorization: Bearer YOUR_API_KEY" \
  https://your-project.convex.site/api/v1/entities?entityType=blog-post

# Create a new blog post
curl -X POST \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"entityTypeSlug": "blog-post", "fields": {"title": "Getting Started", "status": "draft"}}' \
  https://your-project.convex.site/api/v1/entities

Real-World Examples

Frequently Asked Questions

Was this helpful?

Command Palette

Search for a command to run...