Derived properties are in the beta phase of development and may not be available on your enrollment. Functionality may change during active development.
Derived properties are properties that are calculated at runtime based on values from linked objects. Instead of storing data directly, a derived property pulls information from objects connected through link types, optionally applying aggregations like averaging, counting, or collecting values into lists.
For example:
Department object type could have a derived property for "Average employee salary" that aggregates salary values from all linked Employee objects.Project object type could have a derived property for "Lead engineer name" that retrieves the name from a single linked Engineer object.Order object type could have a derived property for "Product names" that collects all product names from linked Product objects into a list.Derived properties are read-only and cannot be edited by functions or actions. These properties use the security context of all objects involved in the calculation, ensuring users only see information for which they have access authorization.
To configure a derived property on an object type, follow the steps below.
From the Properties tab of your object type, select New property or click on an existing property to edit it. This opens the property configuration side panel.
In the property configuration side panel, select the Source tab to configure where the property gets its values.
In the Source type section, choose the Linked objects option. This enables derived property configuration.
In the Linked objects section, select a link type from the dropdown. This determines which objects the property will derive values from.
If any link in your chain has a "many" cardinality (one object linking to multiple objects), you must select an Aggregation to combine the values:
Available aggregations:
After selecting a link type (and aggregation if needed), choose which property from the linked object type you want to derive:
If you selected Collect list or Collect set as your aggregation, you can optionally set a limit on the number of items collected. The default limit is 10 items.
Derived properties support traversing up to 3 levels of linked objects. This allows you to derive properties from objects that are indirectly connected to your starting object type.
For example:
Department object type could derive "Project names" by traversing through Employee objects to their linked Project objects.
To configure multi-hop:
$select operation to exclude struct properties.