entities
Entity definitions.
Guide: Entities and fields
The entities block spans these pages: entities · entities · fields · entities · computed & rollups · entities · rules · entities · hooks · entities · indexes.
entities
Section titled “entities”Entity definitions. Key = entity name (snake_case, plural recommended). Each entity auto-generates a CRUD API, validation, and a schema registry record. The name users is reserved (the built-in auth entity).
- Type:
map of object - Required: yes
- Names match
^[a-z][a-z0-9_]{0,62}$. - Reserved name:
usersis not allowed.
entities.<name>.description
Section titled “entities.<name>.description”Human-readable description of the entity (surfaced to agents and in the admin UI).
- Type:
string - Required: no
entities.<name>.renamedFrom
Section titled “entities.<name>.renamedFrom”Previous name of this entity: declares a rename so apply preserves data instead of drop+add. Safe to leave permanently; ignored once the old name no longer exists.
- Type:
string - Required: no
- Pattern:
^[a-z][a-z0-9_-]{0,62}$
entities.<name>.storage
Section titled “entities.<name>.storage”physical = a real table (introspected/migrated); dynamic = the shared metadata-driven store (no DDL, instant apply). Everything above the registry treats both identically.
- Type:
string - Required: no
- Values:
"physical","dynamic" - Default:
"physical"
entities.<name>.tenancy
Section titled “entities.<name>.tenancy”scoped = rows carry tenant_id and are isolated per tenant (default when tenancy.enabled); global = shared reference data (číselník) visible to all tenants.
- Type:
string - Required: no
- Values:
"scoped","global"
entities.<name>.softDelete
Section titled “entities.<name>.softDelete”Framework-managed soft delete: a managed deleted_at column, DELETE becomes a soft delete, and reads/list/get/rollup auto-exclude soft-deleted rows. A restore operation is provided.
- Type:
boolean - Required: no
- Default:
false
entities.<name>.audit
Section titled “entities.<name>.audit”Inject framework-managed audit columns: created_at, created_by, updated_at, updated_by.
- Type:
boolean - Required: no
- Default:
false
entities.<name>.realtime
Section titled “entities.<name>.realtime”Publish changes over the realtime channel (with subject-level authz).
- Type:
boolean - Required: no
- Default:
true