DemandFlow Support Centre

DEFINITION: Object definition

ReferenceEntity Reference16/04/2026Updated 16/04/2026
The meta-definition entity that defines the structure and editing interface for all other object definitions.

DEFINITION: Object definition

The meta-definition entity that defines the structure and editing interface for all other object definitions.

Default definition. This article describes the default DEFINITION definition shipped with DemandFlow. Administrators can add, remove, rename, or re-type fields, change which ones are required, and alter the layout from the Definitions screen in Settings. Your tenant's current schema may differ from what is shown here. To read the current definition at any time, GET the DEFINITION object whose id matches DEFINITION.

Entity properties

PropertyValue
Entity codeDEFINITION
Display nameObject definition
PluralObject definitions
Level11000

Use cases

Self-referential meta-definition - this is the definition that defines how to edit other definitions within the app. Has isObjectDefinition: true flag which triggers special handling: the 'definition' property is stored as a JSON string and deserialized for editing. Two-column layout: left (20%) has all top-level object properties (name, plural, menuItem, menuGroup, level, icon via iconchooserfw, description, view type, list type, sort fields, feature flags like bulkActions/ai/autoOpen/kanban/import/export/permissions/liveUpdates/massive, crunchproperty, comboFilterAdd, cardTemplate); right (80%) uses the panellist row type to render the definition's panel array as a reorderable drag-drop list, enabling visual editing of the panel/column/row/field hierarchy. The 'remaining' and 'panelData' arrays store documentation about unhandled properties and panel property usage statistics. Central to the definition-driven architecture.

Fields

Basics

FieldTypeRequiredNotes
nametextYesName.
pluraltextYesPlural name of the object.
menuItemtextYesMenu id. Example: Unique ID for the menu and permissions.
menuGrouptextSet this to a Menu Group ID to place this object inside that sidebar group.
levelnumberEntity grouping hierarchy level.
icontext (FA icon class)YesDefault menu icon.
descriptiontext (multi-line)Description.
viewenumYesValid ids: complex (Complex).
listenumDefault entity presentation when you show a list of objects. Valid ids: grid (List grid), kanban (Kanban), dataview (Dataview blocks), projectcontainers (Project container (Portfolio)), calendar (Calendar).
sorttextThe ID of a field to sort the default List by.
datasorttextThe ID of a field to sort the default List by.
kanbanbooleanOpen to Kanban view.
bulkActionsbooleanBulk actions.
hideNewbooleanHides the New menu item on the object list screen.
aibooleanAI function.
autoOpenbooleanAuto open on creation.
csstextAny required CSS classes.
importbooleanImport items.
exportbooleanExport items from list.
permissionsbooleanPermissions required.
liveUpdatesbooleanLive updates to objects.
massivebooleanMassive data collection.
permissionsFunctextName of a permissions check function
loadertextName of an object loader function
loadtextComma separated list of fields to load
crunchpropertytextCrunch property.
comboFilterAddtextDefault comboKey config.
cardTemplatetext (multi-line)Card HTML template.
extendstextEntity code of the base entity this overlays (e.g. COM). Sets this as an overlay entity.
extendedBytextComma-separated entity codes that overlay this entity (e.g. VEN,CLIENT).

Additional panels: panellist.

Relationships

  • No declared relationships in the default definition.

Creating a Object definition via the API

POST /v1/objects
Authorization: Bearer <your-pat>
Content-Type: application/json

{
  "entity":   "DEFINITION",
  "level":    11000,
  "comboKey": "SUB:<your-sub-id>|ENT:",
  "name": "Example name",
  "plural": "Example value",
  "menuItem": "Example value",
  "icon": "Example value"
}

Listing Object definitions records

GET /v1/entities/DEFINITION/SUB:<your-sub-id>

See also

definitionobjectdefinitionsobjectdefinitionsmetaentitythatdefinesstructureeditinginterface

Was this article helpful?

← Back to Knowledge Base