A single mergeable data field that can be looked up by id, such as firstName or ageYears, and evaluated against a profile to produce a value for kcode templates and funnel rule queries. Fields are contributed by apps that implement FieldProviderApplication and are aggregated by FieldsService. The admin UI reads getLabel, getType, getInput, getValues and getOperators to build rule and template pickers, while evaluate() supplies the actual value at render or query time.


Properties

PropertyReturnsDescription
idStringUnique internal identifier for this field, used as the lookup key when resolving a field by id and as the name that appears inside kcode template placeholders and funnel rule expressions.
inputStringName of the input control the admin UI should use to edit this field's value, for example select or radio, or null when no special input control is required.
labelStringHuman readable label for this field, shown to admins when building rule and template pickers.
operatorsList<String>Names of the comparison operators this field supports, such as equal or in, used to populate the rule builder when constructing funnel and query rules against this field.
parentTypesList<String>Names of the parent entity types this field applies to as a child property, for example Profile or Organisation. Returns null when the field is not restricted to particular parent types.
typeStringData type of this field's value, for example string or integer, used to decide which operators and input controls apply.
valuesList<String>Allowed selectable values for this field, when it is restricted to a fixed set of options. Null or empty when the field accepts free-form values.
versionintVersion of the field system this field belongs to, used by FieldsService to filter fields by version. Defaults to 1 for fields that do not override it.

Methods

getId()

Returns: String

Unique internal identifier for this field, used as the lookup key when resolving a field by id and as the name that appears inside kcode template placeholders and funnel rule expressions.

getLabel()

Returns: String

Human readable label for this field, shown to admins when building rule and template pickers.

getType()

Returns: String

Data type of this field's value, for example string or integer, used to decide which operators and input controls apply.

getParentTypes()

Returns: List<String>

Names of the parent entity types this field applies to as a child property, for example Profile or Organisation. Returns null when the field is not restricted to particular parent types.

getInput()

Returns: String

Name of the input control the admin UI should use to edit this field's value, for example select or radio, or null when no special input control is required.

getValues()

Returns: List<String>

Allowed selectable values for this field, when it is restricted to a fixed set of options. Null or empty when the field accepts free-form values.

getOperators()

Returns: List<String>

Names of the comparison operators this field supports, such as equal or in, used to populate the rule builder when constructing funnel and query rules against this field.

getVersion()

Returns: int

Version of the field system this field belongs to, used by FieldsService to filter fields by version. Defaults to 1 for fields that do not override it.

To get full access to the Kademi Hub existing customers can login here, or new customers can register here.