View

A View defines how to display a list of entities, combining column selection, sorting, grouping, and optional filtering into a reusable specification. Views are supported in both the UI and the CLI.

A View specifies:

  • Of: The entity type to view (e.g., Unit, Space). At least one of Of or FilterID must be specified.
  • FilterID: An optional reference to a saved Filter. If specified, its filter is applied when the View is used. If both Of and FilterID are specified, they must agree on the entity type.
  • Columns: An ordered list of columns to display, each with a name, type, and source. Column types include:
    • MetadataAttribute: A field from the entity or related entities (e.g., Unit.Slug, Space.Slug, Unit.Labels.Environment).
    • MetadataExpression: A CEL expression evaluated against the entity (e.g., computing whether changes are unapplied).
    • DataPath: A path into the unit's configuration data to extract a value (Units only).
    • DataExpression: A CEL expression evaluated against the configuration data (Units only).
  • GroupBy: A column name to group by.
  • OrderBy: A column name to sort by, with an optional OrderByDirection (ASC or DESC).

Columns may also specify GroupBy and OrderByDirection at the column level for multi-column sorting. Top-level GroupBy and OrderBy take priority.

Legacy Views with simple column names (no column type) remain supported for backward compatibility.

See the Filters and Views guide for practical examples.