Skip to content

Templates

A Template is the schema definition in Omnismith. It combines a set of Attributes into a reusable blueprint that shapes how Entities (data records) are created, validated, searched, and visualized.

Think of a Template as a digital form design: once designed, you can create dozens, thousands, or millions of matching records from it.


A Template consists of two main configuration areas:

  1. Basic Info:
    • Name: Clear, descriptive template title (e.g., Support Ticket, Server Node, Customer Account).
    • Description: Optional operational notes explaining what data this template holds.
    • Visual Styling: Icon and color customization for easy identification across the UI.
  2. Attribute Composition:
    • The list of attached Attributes (Dimensions, Metrics, Lists, References) that define the fields of records created under this template.
    • Reordering fields to customize the entity form presentation.

  1. Navigate to Data Modeling → Templates in the navigation launcher.
  2. Click + Create Template.
  3. Basic Details Tab:
    • Enter a Name (e.g. Server Node).
    • Set an optional description and visual icon.
  4. Attributes Tab:
    • Click + Attach Attribute.
    • Select existing attributes from your project library (e.g. Hostname, Environment, Status, CPU Usage, Latency).
    • Drag to reorder fields as desired.
  5. Click Save Changes.

Template details screen with Basic and Attributes tabs


3. Dynamic Schema Evolution (Zero-Downtime Updates)

Section titled “3. Dynamic Schema Evolution (Zero-Downtime Updates)”

One of Omnismith’s greatest strengths is runtime schema flexibility:

  • Adding Fields: Attach a new attribute to an existing template at any time. All existing entities under that template instantly gain access to the new field without database migrations.
  • Removing Fields: Detach an attribute from a template to hide it from entity forms and search tables without destroying historical metric logs.
  • No Downtime: Changes take effect immediately across the web UI, API endpoints, and dashboard views.

[!NOTE] Runtime Schemas & Entity Partitioning: In traditional databases, adding columns requires ALTER TABLE locks. In Omnismith’s EAV engine:

  • Templates define virtual field maps stored in JSON metadata.
  • Dynamic OpenAPI endpoints /api/v1/entity/template/{templateId} automatically adapt input validation and response payloads based on the template’s active attribute schema.

[!TIP]