Profile view components (Facets)
Learn how to configure the profile view components in the Profile page.
Profile views are individual panels displayed within a profile tab (usually Profile or NestedProfile). Each view is defined using a component type and placed on the screen using the layout[] grid.
You can show attributes, relationships, interactions, or custom elements — either in read-only, editable, or interactive formats.
Each view must include:
- A unique id
- A valid component type
- Optional access control (canRead, canUpdate, canCreate, canDelete)
Field | Description |
---|---|
id | Unique identifier used in layout[] |
component | Type of view to render |
canRead | Roles allowed to see the view |
canUpdate | Roles allowed to update values (if editable) |
canCreate | Roles allowed to add values |
canDelete | Roles allowed to remove values |
Attributes and AttributeTable
Use Attributes to display multiple attributes in a panel, or AttributeTable to show a repeating table of rows.
{
"id": "main-attr",
"component": "Attributes",
"includeUris": [
"configuration/entityTypes/HCP/attributes/Name",
"configuration/entityTypes/HCP/attributes/Address"
],
"caption": "Basic Info"
}
Field | Description |
---|---|
component | Defines the type of view component to render. Use "Attributes" or "AttributeTable" . |
id | Unique identifier for the view. Must match the id used in the layout. |
includeUris | Optional list of attribute URIs to include in this view. Recommended for controlling which fields are shown. |
Result
Attributes appear as editable fields or rows in a structured view.
Validation
Open the profile and confirm that attributes appear correctly and match expected behavior for edit, view, or validation.
Relations and RelationsTable
Use Relations for a visual or nested relationship view, and RelationsTable for a sortable table layout.
{
"id": "relation-view",
"component": "Relations",
"content": {
"inRelations": ["configuration/relationTypes/HasAddress"],
"outRelations": ["configuration/relationTypes/HasPhone"]
}
}
Field | Description |
---|---|
component | Defines the type of relationship component to render. Use "Relations" or "RelationsTable" . |
id | Unique identifier for the view. Must match the id used in the layout. |
content | List of relationship type URIs to include in this view. |
Result
Relations appear as connections or table rows depending on the component type.
Validation
Navigate to the profile tab and confirm that relationships are correctly displayed, sorted, and editable if permitted.
SingleAttribute
Use this to focus on one attribute with multi-value editing and table-style display.
{
"id": "single-attr",
"component": "SingleAttribute",
"attributeUri": "configuration/entityTypes/HCP/attributes/Address",
"caption": "Primary Address",
"max": 5
}
Field | Description |
---|---|
component | Must be "SingleAttribute" |
attributeUri | URI of the attribute to display |
Result
The view displays one attribute, with support for add, edit, or remove.
Validation
Add or remove values and confirm that updates are saved correctly.
HierarchyTree and HierarchyPaths
These components display entity relationships in path or tree format.
{
"canRead": ["USER_ROLE"],
"caption": "Hierarchy paths",
"component": "HierarchyPaths",
"graph": {
"type": "configuration/graphTypes/CompanyHierarchy"
},
"id": "main-hierarchy-paths-view"
}
Field | Description |
---|---|
component | Must be "HierarchyPaths" |
graph | Object with type = graph type URI |
-
caption
— title of the view as shown in the header -
canRead
— array of roles allowed to see this view -
id
— unique identifier for the view
Result
The view shows entity relationships as a linear path.
Validation
Open the view and confirm that the path renders correctly based on the configured relations.
{
"component": "HierarchyTree",
"id": "main-hierarchy-tree-view",
"canRead": ["USER_ROLE"],
"graph": {
"type": "configuration/graphTypes/CompanyHierarchy",
"options": { "reverseRelations": true }
},
"showPath": true,
"sortBy": "relationTypeLabel",
"sortOrder": "asc",
"caption": "Hierarchy tree"
}
Field | Description |
---|---|
component | Must be "HierarchyTree" |
graph | Object with type = graph type URI |
sortBy | Sort by 'relationTypeLabel' or 'entityLabel' |
sortOrder | Sort order: 'asc' or 'desc' |
Optional fields include:
-
caption
— title shown on the view's header -
canRead
— array of roles allowed to access this view -
id
— unique identifier for the view -
showPath
— boolean; shows node path in toolbar whentrue
-
max
— number of values requested from_typeAheadSearch
endpoint -
attributes
— list of attribute URIs; includesecondaryLabel
to enable secondary labels -
includeUris
— list of attributes to display in the info popup -
graph.options.reverseRelations
— boolean; shows reverse relations whentrue
Result
The view shows entity relationships as a nested tree, with expandable nodes.
Validation
Open the view and confirm that the tree structure renders correctly and responds to sorting, filtering, and path display options.
Interactions views (InteractionsList and InteractionsTable)
These components list interactions tied to the current profile.
Field | Description |
---|---|
component | Must be "InteractionsList" |
id | View ID |
-
caption
— title of the view shown in the header -
interactionType
— URI of a specific interaction type to display; if omitted, all interaction types are shown -
max
— maximum number of interactions to display -
canRead
— array of roles allowed to see this view
Here's a sample configuration:
{
"id": "interaction-list",
"component": "InteractionsList",
"interactionType": "configuration/interactionTypes/Call",
"caption": "Call History"
}
Result
Shows a list of related interactions, optionally filtered by type and limited in number.
Validation
Verify that the correct interaction types appear, and that filtering, role access, and max limits work as expected.
Field | Description |
---|---|
component | Must be "InteractionsTable" |
id | Unique view ID |
caption
— title of the view shown in the headerinteractionType
— URI of a specific interaction type to display; if omitted, all interaction types are showncanRead
— array of roles allowed to see this view
Here's an example configuration:
{
"component": "InteractionsTable",
"id": "interactions-view",
"canRead": ["USER_ROLE"],
"caption": "Meeting interactions table",
"interactionType": "configuration/interactionTypes/Meeting"
}
Results
Shows a table of related interactions, optionally filtered by type.
Validation
Verify that the correct interaction types appear in table format, and that filtering and role access work as expected.
PotentialMatches
Use this view to display potential matches inside a profile tab.
{
"id": "potential-matches",
"component": "PotentialMatches",
"caption": "Suggested Matches"
}
Field | Description |
---|---|
component | Must be "PotentialMatches" |
id | View ID |
Result
The tab shows potential duplicates for the current entity.
Validation
Open the profile and verify that suggestions match your match rules.
Gauge, Custom, and Map
These components allow you to show numeric gauges, embed custom scripts, or gather user feedback.
The Gauge component displays a simple gauge or speedometer, as shown in the image below:
Here's a sample configuration:
{
"component": "Gauge",
"id": "gauge-view",
"canRead": ["USER_ROLE"],
"caption": "Gauge view",
"attributeUri": "configuration/entityTypes/HCP/attributes/Int",
"label": "Gauge label",
"ranges": [
{color: "rgb(255, 132, 76)", value: 80},
{color: "#ff0000", value: 50}
]
}
Field | Description |
---|---|
component | Must be "Gauge" |
attributeUri | (For Gauge) URI of numeric attribute |
ranges | An array describing color segments. |
Optional fields are:
-
caption
- this denotes the title on the gauge panel. For example,"caption": "Completeness Score"
. -
label - this denotes the label that is displayed under the numeric value in the gauge. For example,
"label":"Percent Full
".
{
"component": "Custom",
"id": "main-custom-view",
"canRead": ["USER_ROLE"],
"action": {
"processApiRequest": [
"https://[^.]+.reltio.com/reltio/api/[^/]+/entities/[^/?_]+/?($|\\?.)"
],
"files": ["https://reltio-ui-files.s3.amazonaws.com/custom-scripts/hideAttr.js"],
"permissions": [
"https://[^.]+.reltio.com/reltio/api/[^/]+/entities/[^/?_]+/?($|\\?.)"
]
},
"tooltip": "Hide attribute",
"width": 300,
"height": 200
}
Field | Description |
---|---|
component | Must be "Custom" |
action | The custom script definition, which can be:
|
Optional fields are:
-
embedded - A boolean value, determines whether the script must be displayed directly in the panel or as an external UI.
-
width - The width of the container for the embedded script.
-
height - The height of the container for the embedded script.
-
tooltip - The default tooltip for the custom view. For example,
"tooltip":"Hide attribute script"
.
* {
* "component": "Map",
* "id": "main-map-view"
* }
Here's how it looks on your profile view: