--- title: "Event List" slug: "event-list-widget" updated: 2026-09-18T07:27:30Z published: 2026-09-18T07:27:30Z canonical: "learn.servitly.com/event-list-widget" --- > ## Documentation Index > Fetch the complete documentation index at: https://learn.servitly.com/llms.txt > Use this file to discover all available pages before exploring further. # Event List Displays a list of all noteworthy [events](https://help.servitly.com/hc/en-us/categories/10512905191325-Events) that have occurred or that are still active. ![Event List](https://components-manager.servitly.com/components/EventList_1/IMAGES/_screenshot?owner=AG_Servitly) When placed in a page, you must choose whether to show events that are finished and therefore historical or show events that are still active. The widget requires the `READ_EVENT` user’s [permission](https://learn.servitly.com/v1/docs/user-permissions), and it is aware of the page context and so can load events over multiple customers, locations, and machines. ## Active or Historical Events By setting the “*Event Status”* widget property, you can select whether active or historical events must be displayed. If the “*Event Status”* property is left blank, the widget will allow DPS users to switch between active and historical events. ![](https://help.servitly.com/hc/article_attachments/15658104993692) ## Details Navigation Clicking on a row opens the event details pop-up. Optionally, the event details can be opened in a full page (see *Details Mode* option). The header of the event details popup contains the event name, description, and a breadcrumb that provides the context of the event, and whose tokens can be clicked to quickly jump to related objects (e.g. Customer, Location, Thing). The event details body is generated through a template, which by default reports the event's main information (e.g. [timeline](/docs/alert-timeline-widget), [technical description](/docs/event-details-widget)), but in the alternative, you can redefine the template within the event definition page. On the event list rows, you can also click directly on specific information to jump to the event-related objects: - Customer Name / Code → Customer details page - Location name → Location details page - Thing Name / Serial Number → Thing details page In all other cases, the event details pop-up/page is opened. ## **Search for Events** On the top right part of the widget, a search control bar allows filtering events by a text key. ![](https://cdn.document360.io/6759e9c9-3ce3-49df-965a-7231d2d9a10a/Images/Documentation/image(900).png) Optionally, by pressing the *Advanced Search* icon, a dedicated panel allows the DPS user to specify multiple conditions based on properties. ![](https://cdn.document360.io/6759e9c9-3ce3-49df-965a-7231d2d9a10a/Images/Documentation/image(907).png) The provided inputs are preserved during navigation, also across pages in case the same widget “*Id*” is used. Optionally, by using the “*Query*“ property, a set of conditions for pre-filtering events can be defined in the template (e.g. failures only). In the template, you can specify the “*Search Fields*“ used to filter events by text key. In case the “*Query Variable*“ property has been defined (the list is filtered from a [Search Field](/v1/docs/search-field) placed in the page), the search control bar is automatically hidden and thus not visible to the user. The advanced search allows filtering events by: - *Text Key*: text that is searched in the name, title, and description of each event. - *Customer*: a customer can be selected, in the case of a user belonging to an organization or partner. - *Severity*: the severity of the event, one of *Failure, Major Anomaly, Minor Anomaly,* and *Operation.* - *Period*: the time period used to filter events by start timestamp. - *Thing Definition or Product Model*: one or more thing definitions or product models. - *Type*: type of event, choosing one or more definitions. By clicking the *Export* button, all events that meet the search criteria can be downloaded as a CSV file. ## User Reported Events DPS users can manually report events by clicking on the 3-dots icon and the “*Report Event*” action. ![](https://help.servitly.com/hc/article_attachments/15738144184860) A pop-up requests the user to select the event to register, and optionally provide some additional notes for technicians. ![](https://help.servitly.com/hc/article_attachments/15738042208028) ## Template Syntax Below you can find some examples of how to use the component within a template. ```xml                                                                                     ``` ## Component Reference Here is a comprehensive list of all the elements and properties that can be used to configure the component. #### Event List `<event-list-widget>` | *Controls Enabled* | The boolean flag indicating whether controls (e.g. Search, Export) are enabled on the widget. **Name**: controlsEnabled **Type**: BOOLEAN \| Optional **Default Value**: *true* `[controlsEnabled]="false"` | | --- | --- | | *Empty Message* | The blank message to be displayed in the widget in case no item was found. To manage translations, you can define a label and use the key as the value of the property. **Name**: emptyMessage **Type**: STRING \| Optional `emptyMessage="No customer found"` | | *Event Status* | The status of the event to display. **Name**: status **Type**: ENUM \| Optional **Values**: *ACTIVE*, *CLOSED* `status="ACTIVE"` | | *Export Enabled* | The boolean flag indicating whether the data export is enabled. **Name**: exportEnabled **Type**: BOOLEAN \| Optional **Default Value**: *true* `[exportEnabled]="false"` | | *Include Sub Things Events* | The flag indicating whether sub-things events must be included when this widget is placed in a thing context. **Name**: includeSubThingsEvents **Type**: BOOLEAN \| Optional **Default Value**: *false* `[includeSubThingsEvents]="true"` | | *Title* | The title displayed on the top part of the widget box. **Name**: title **Type**: STRING \| Optional `[title]="'Events'"` | | **Data** | | *Initial Sorting* | The array of property names and criteria to use for sorting (e.g. ['name','asc','serialNumber','desc']). **Name**: sort **Type**: SORT_PROPERTIES \| Optional `[sort]="['prop1','asc','prop2','desc']"` | | *Page Size* | The number of items to load on each page. **Name**: pageSize **Type**: INTEGER \| Optional **Default Value**: *50* `pageSize="123"` | | *Period Variable* | The id of the page's variable providing the date range filtering period, for instance the id of a . **Name**: periodRef **Type**: STRING \| Optional `periodRef="abc"` | | *Query* | The array of conditions filtering out items. For instance: [query]='[{'property': 'connectionStatus', 'predicate': 'eq', 'value': '1'}]' Predicates: eq, beginsWith, like, notLike, isEmpty, isNotEmpty, gt, gte, lt, lte. **Name**: query **Type**: QUERY \| Optional **Predicates**: *beginsWith*, *eq*, *neq*, *gt*, *gte*, *isEmpty*, *isNotEmpty*, *lt*, *lte*, *like*, *notLike* `[query]="[{property:'prop1', predicate: 'eq', value: 'foo'}, {property:'prop2', predicate: 'in', value: ['bar', 'baz']}]"` | | *Query Variable* | The id of the page's used to filter events. **Name**: queryFieldRef **Type**: STRING \| Optional `queryFieldRef="abc"` | | **Advanced** | | *~~Click On Row Behaviour~~* | The expected behaviour when a row is clicked. **Name**: clickOnRowBehaviour **Type**: ENUM \| Optional **Values**: *OPEN_DETAILS*, *OPEN_CONTEXT_OBJECT* > [!CAUTION] > DEPRECATED > > Use the Details Mode isntead. `clickOnRowBehaviour="OPEN_DETAILS"` | | *Details Mode* | The way the alert details is opened if in a POPUP, in a dedicated PAGE or NONE to disable details. **Name**: detailsMode **Type**: ENUM \| Optional **Values**: *POPUP*, *PAGE*, *NONE* **Default Value**: *POPUP* `detailsMode="POPUP"` | | *Id* | The id of the widget. **Name**: id **Type**: STRING \| Optional `id="abc"` | | **Rendering** | | *Availability* | Configure availability based on active features on Digital Plan on Add-ons **Name**: hasFeature **Type**: FEATURE (multiple) \| Optional `[hasFeature]="['feature_a', 'feature_b']"` | | *CSS Class* | The name(s) of the CSS class used to customize the widget layout. **Name**: class **Type**: STRING \| Optional `class="my-custom-class"` | | *Visibility Condition* | The expression that allows you to reduce the visibility of the element. **Name**: *ngIf **Type**: STRING \| Optional `*ngIf="getUser().organizationId != null"` | | **Sub Elements** | | [*Property*](/docs/event-list-widget/#property) | The property whose value must be displayed for each event row. | | [*Composite Part*](/docs/event-list-widget/#composite-part) | The composite part whose value must be displayed within the event row. | #### Property `<property>` | *Description* | The property description. **Name**: description **Type**: STRING \| Optional `description="abc"` | | --- | --- | | *~~Export Only~~* | The boolean flag indicating whether the property value should be included only in the export and not visible within the page. **Name**: exportOnly **Type**: BOOLEAN \| Optional **Default Value**: *false* > [!CAUTION] > DEPRECATED > > Use Include in Export. `[exportOnly]="true"` | | *Filter* | The name of the filter used to transform and display values. **Name**: filter **Type**: FILTER \| Optional `filter="fooBarFilter"` | | *Label* | The property alternative label. **Name**: label **Type**: STRING \| Optional `label="Temperature"` | | *Name* | The property whose value must be loaded by the widget. **Name**: name **Type**: PROPERTY \| Required `name="serialNumber"` | | **Advanced** | | *Column CSS Class* | The name(s) of the column CSS class used to customize the table column. **Name**: columnClass **Type**: COLUMN_CSS \| Optional `columnClass="my-column-custom-class"` | | *Details Page Path* | The optional path that identifies the details page to be opened when a column value is clicked. **Name**: detailsPath **Type**: STRING \| Optional `detailsPath="abc"` | | *Display Mode* | The way the column is displayed. **Name**: displayMode **Type**: ENUM \| Optional **Values**: *VISIBLE*, *INITIALLY_HIDDEN*, *ALWAYS_HIDDEN* **Default Value**: *VISIBLE* `displayMode="VISIBLE"` | | *Include in Export* | The boolean flag indicating whether the property value should be included in the export even when not visible within the page. **Name**: includeInExport **Type**: BOOLEAN \| Optional **Default Value**: *false* `[includeInExport]="true"` | | *Show Header* | The flag indicated whether the header is visible. **Name**: showHeader **Type**: BOOLEAN \| Optional **Default Value**: *true* `[showHeader]="false"` | | *Visibility Condition* | The expression that allows you to reduce the visibility of the element. **Name**: *ngIf **Type**: STRING \| Optional `*ngIf="getUser().organizationId != null"` | #### Composite Part `<composite-part>` | *Description* | The composite-part description. **Name**: description **Type**: STRING \| Optional `description="abc"` | | --- | --- | | *Filter* | The filter applied on the composite-part to transform or display its value. **Name**: filter **Type**: FILTER \| Optional `filter="fooBarFilter"` | | *Label* | The label displayed by the widget. **Name**: label **Type**: STRING \| Optional `label="abc"` | | *Name* | The composite-part name. **Name**: name **Type**: STRING \| Optional `name="abc"` | | **Advanced** | | *Column CSS Class* | The name(s) of the column CSS class used to customize the table column. **Name**: columnClass **Type**: COLUMN_CSS \| Optional `columnClass="my-column-custom-class"` | | *Display Mode* | The way the column is displayed. **Name**: displayMode **Type**: ENUM \| Optional **Values**: *VISIBLE*, *INITIALLY_HIDDEN*, *ALWAYS_HIDDEN* **Default Value**: *VISIBLE* `displayMode="VISIBLE"` | | *Show Header* | The flag indicated whether the header is visible. **Name**: showHeader **Type**: BOOLEAN \| Optional **Default Value**: *true* `[showHeader]="false"` | | *Visibility Condition* | The expression that allows you to reduce the visibility of the element. **Name**: *ngIf **Type**: STRING \| Optional `*ngIf="getUser().organizationId != null"` | | **Sub Elements** | | [*Property*](/docs/event-list-widget/#property) | The property whose value must be loaded within the composite-part. | #### Property `<property>` | *Name* | The property whose value must be loaded by the widget. **Name**: name **Type**: PROPERTY \| Required `name="serialNumber"` | | --- | --- | ## Full Syntax Example ```xml                         ```