[comment]: # translation:outdated

[comment]: # ({new-e5d5266e})
# 27 Top items

[comment]: # ({/new-e5d5266e})

[comment]: # ({new-b8507936})
### Description

These parameters and the possible property values for the respective dashboard widget field objects allow to configure
the [*Top items*](/manual/web_interface/frontend_sections/dashboards/widgets/top_items) widget in `dashboard.create` and `dashboard.update` methods.

::: noteimportant
Widget `fields` properties are not validated during the creation or update of a dashboard.
This allows users to modify [built-in widgets](/manual/web_interface/frontend_sections/dashboards/widgets) and create [custom widgets](/devel/modules/tutorials/widget), but also introduces the risk of creating or updating widgets incorrectly.
To ensure the successful creation or update of the *Top items* widget, please refer to the parameter behavior outlined in the tables below.
:::

[comment]: # ({/new-b8507936})

[comment]: # ({new-2a023c70})
### Parameters

The following parameters are supported for the *Top items* widget.

|Parameter|<|[type](/manual/api/reference/dashboard/object#dashboard-widget-field)|name|value|
|-|--------|--|--------|-------------------------------|
|*Refresh interval*|<|0|rf_rate|0 - No refresh;<br>10 - 10 seconds;<br>30 - 30 seconds;<br>60 - *(default)* 1 minute;<br>120 - 2 minutes;<br>600 - 10 minutes;<br>900 - 15 minutes.|
|*Host groups*|<|2|groupids.0|[Host group](/manual/api/reference/hostgroup/get) ID.<br><br>Note: To configure multiple host groups, create a dashboard widget field object for each host group with an incremented number in the property name.<br><br>This parameter is not supported if configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object).|
|<|*Host groups (Widget)*|1|groupids.\_reference|Instead of [Host group](/manual/api/reference/hostgroup/get) ID:<br>`ABCDE._hostgroupids` - set a [compatible widget](/manual/web_interface/frontend_sections/dashboards/widgets#widget-compatibility) (with its *Reference* parameter set to "`ABCDE`") as the data source for host groups.<br><br>This parameter is not supported if configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object).|
|*Hosts*|<|3|hostids.0|[Host](/manual/api/reference/host/get) ID.<br><br>Note: To configure multiple hosts, create a dashboard widget field object for each host with an incremented number in the property name. For multiple hosts, the parameter *Host groups* must either be not configured at all or configured with at least one host group that the configured hosts belong to.<br><br>This parameter is not supported if configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object).|
|<|*Hosts (Widget/Dashboard)*|1|hostids.\_reference|Instead of [Host](/manual/api/reference/host/get) ID:<br>`DASHBOARD.hostids` - set the [*Host* selector](/manual/web_interface/frontend_sections/dashboards/widgets#override-host) as the data source for hosts;<br>`ABCDE._hostids` - set a [compatible widget](/manual/web_interface/frontend_sections/dashboards/widgets#widget-compatibility) (with its *Reference* parameter set to "`ABCDE`") as the data source for hosts.<br><br>This parameter is not supported if configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object).|
|*Host tags*|<|<|<|<|
|<|*Evaluation type*|0|host_tags_evaltype|0 - *(default)* And/Or;<br>2 - Or.<br><br>This parameter is not supported if configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object).|
|^|*Tag name*|1|host_tags.0.tag|Any string value.<br><br>Note: The number in the property name references tag order in the tag evaluation list.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required* if configuring *Host tags*<br><br>This parameter is not supported if configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object).|
|^|*Operator*|0|host_tags.0.operator|0 - Contains;<br>1 - Equals;<br>2 - Does not contain;<br>3 - Does not equal;<br>4 - Exists;<br>5 - Does not exist.<br><br>Note: The number in the property name references tag order in the tag evaluation list.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required* if configuring *Host tags*<br><br>This parameter is not supported if configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object).|
|^|*Tag value*|1|host_tags.0.value|Any string value.<br><br>Note: The number in the property name references tag order in the tag evaluation list.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required* if configuring *Host tags*<br><br>This parameter is not supported if configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object).|
|*Layout*|<|0|layout|0 - *(default)* Horizontal;<br>1 - Vertical.|
|*Show problems*|<|0|show_problems|0 - All;<br>1 - *(default)* Unsuppressed;<br>2 - None.|
|*Items* (see below)|<|<|<|<|

[comment]: # ({/new-2a023c70})

[comment]: # ({new-advanced})
#### Advanced configuration

The following advanced configuration parameters are supported for the *Top items* widget.

|Parameter|<|[type](/manual/api/reference/dashboard/object#dashboard-widget-field)|name|value|
|-|--------|--|--------|-------------------------------|
|***Host ordering***|<|<|<|<|
|*Order by*|<|0|host_ordering_order_by|0 - *(default)* Host name;<br>3 - Item value.|
|<|*Item patterns*|1|host_ordering_item.0|[Item](/manual/api/reference/item/get) name or pattern (e.g., "\*: Number of processed \*values per second").<br><br>Note: To configure multiple item patterns, create a dashboard widget field object for each item pattern with an incremented number in the property name.<br><br>When configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object), only the patterns for items configured on the template should be set.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required* if *Order by* is set to "Item value"|
|*Order*|<|0|host_ordering_order|2 - *(default)* Top N;<br>3 - Bottom N.|
|*Limit*|<|0|host_ordering_limit|Possible values range from 1-100.<br><br>Default: 10.|
|***Item ordering***|<|<|<|<|
|*Order by*|<|0|item_ordering_order_by|1 - Host;<br>2 - Item name;<br>3 - *(default)* Item value.|
|<|*Host patterns*|1|item_ordering_host.0|[Host](/manual/api/reference/host/get) name or pattern.<br><br>Note: To configure multiple host patterns, create a dashboard widget field object for each host pattern with an incremented number in the property name.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required* if *Order by* is set to "Host"|
|*Order*|<|0|item_ordering_order|2 - *(default)* Top N;<br>3 - Bottom N.|
|*Limit*|<|0|item_ordering_limit|Possible values range from 1-100.<br><br>Default: 10.|

[comment]: # ({/new-advanced})

[comment]: # ({new-f35f175e})
### Columns

::: noteclassic
The first number in the property name (e.g. columns.0.items.0, columns.0.item_tags_evaltype) represents the particular column, while the second number, if present, represents the configured entity (e.g. item pattern, tag).
:::

|Parameter|<|[type](/manual/api/reference/dashboard/object#dashboard-widget-field)|name|value|
|-|--------|--|--------|-------------------------------|
|*Item patterns*|<|1|columns.0.items.0|[Item](/manual/api/reference/item/get) name or pattern (e.g., "\*: Number of processed \*values per second").<br><br>Note: To configure multiple item patterns, create a dashboard widget field object for each item pattern with an incremented second number in the property name.<br><br>When configuring the widget on a [template dashboard](/manual/api/reference/templatedashboard/object), only the patterns for items configured on the template should be set.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required*|
|*Item tags*|<|<|<|<|
|<|*Evaluation type*|0|columns.0.item_tags_evaltype|0 - *(default)* And/Or;<br>2 - Or.|
|^|*Tag name*|1|columns.0.item_tags.0.tag|Any string value.<br><br>Note: The second number in the property name references tag order in the tag evaluation list.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required* if configuring *Item tags*|
|^|*Operator*|0|columns.0.item_tags.0.operator|0 - Contains;<br>1 - Equals;<br>2 - Does not contain;<br>3 - Does not equal;<br>4 - Exists;<br>5 - Does not exist.<br><br>Note: The second number in the property name references tag order in the tag evaluation list.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required* if configuring *Item tags*|
|^|*Tag value*|1|columns.0.item_tags.0.value|Any string value.<br><br>Note: The second number in the property name references tag order in the tag evaluation list.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required* if configuring *Item tags*|
|*Base color*|<|1|columns.0.base_color|Hexadecimal color code (e.g. `FF0000`).|
|*Display value as*|<|0|columns.0.display_value_as|1 - *(default)* Numeric;<br>2 - Text.|
|*Display*|<|0|columns.0.display|1 - *(default)* As is;<br>2 - Bar;<br>3 - Indicators;<br>6 - Sparkline.|
|*Min*|<|1|columns.0.min|Any numeric value. [Suffixes](/manual/appendix/suffixes) (e.g. "1d", "2w", "4K", "8G") are supported.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display value as* is set to "Numeric" and *Display* is set to "Bar" or "Indicators"|
|*Max*|<|1|columns.0.max|Any numeric value. [Suffixes](/manual/appendix/suffixes) (e.g. "1d", "2w", "4K", "8G") are supported.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display value as* is set to "Numeric" and *Display* is set to "Bar" or "Indicators"|
|*Sparkline*|<|<|<|<|
|<|*Width*|0|columns.0.sparkline.width|Possible values range from 0-10.<br><br>Default: 1.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display* is set to "Sparkline"|
|^|*Fill*|0|columns.0.sparkline.fill|Possible values range from 0-10.<br><br>Default: 3.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display* is set to "Sparkline"|
|^|*Color*|1|columns.0.sparkline.color|Hexadecimal color code (e.g. `FF0000`).<br><br>Default: `42A5F5`.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display* is set to "Sparkline"|
|^|*Time period*|1|columns.0.sparkline.time_period.\_reference|`DASHBOARD._timeperiod` - set the [*Time period* selector](/manual/web_interface/time_period_selector) as the data source;<br>`ABCDE._timeperiod` - set a [compatible widget](/manual/web_interface/frontend_sections/dashboards/widgets#widget-compatibility) (with its `reference` parameter equal to `ABCDE`) as the data source.<br><br>Default: `DASHBOARD._timeperiod`<br><br>Alternatively, you can set the time period only in the *From* and *To* parameters.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display* is set to "Sparkline"|
|^|*From*|1|columns.0.sparkline.time_period.from|Valid time string in absolute (`YYYY-MM-DD hh:mm:ss`) or [relative](/manual/web_interface/time_period_selector) time syntax (`now`, `now/d`, `now/w-1w`, etc.).<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display* is set to "Sparkline"|
|^|*To*|1|columns.0.sparkline.time_period.to|Valid time string in absolute (`YYYY-MM-DD hh:mm:ss`) or [relative](/manual/web_interface/time_period_selector) time syntax (`now`, `now/d`, `now/w-1w`, etc.).<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display* is set to "Sparkline"|
|^|*History data*|0|columns.0.sparkline.history|0 - *(default)* Auto;<br>1 - History;<br>2 - Trends.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display* is set to "Sparkline"|
|*Thresholds*|<|<|<|<|
|<|*Color*|1|columns.0.thresholds.0.color|Hexadecimal color code (e.g. `FF0000`).<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display value as* is set to "Numeric"|
|^|*Threshold*|1|columns.0.thresholds.0.threshold|Any numeric value. [Suffixes](/manual/appendix/suffixes) (e.g. "1d", "2w", "4K", "8G") are supported.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display value as* is set to "Numeric"|
|*Highlights*|<|<|<|<|
|<|*Highlight*|1|columns.0.highlights.0.color|Hexadecimal color code (e.g. `FF0000`).<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display value as* is set to "Text"|
|^|*Threshold*|1|columns.0.highlights.0.pattern|Any regular expression.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display value as* is set to "Text"|
|*Decimal places*|<|0|columns.0.decimal_places|Possible values range from 0-10.<br><br>Default: 2.|
|***Advanced configuration***|<|<|<|<|
|*Aggregation function*|<|0|columns.0.aggregate_function|If *Display value as* is set to "Numeric":<br>0 - *(default)* not used;<br>1 - min;<br>2 - max;<br>3 - avg;<br>4 - count;<br>5 - sum;<br>6 - first;<br>7 - last.<br><br>If *Display value as* is set to "Text":<br> 0 - *(default)* not used;<br>4 - count;<br>6 - first;<br>7 - last.|
|*Time period*|<|1|columns.0.time_period.\_reference|`DASHBOARD._timeperiod` - set the [*Time period* selector](/manual/web_interface/time_period_selector) as the data source;<br>`ABCDE._timeperiod` - set a [compatible widget](/manual/web_interface/frontend_sections/dashboards/widgets#widget-compatibility) (with its `reference` parameter equal to `ABCDE`) as the data source.<br><br>Default: `DASHBOARD._timeperiod`<br><br>Alternatively, you can set the time period only in the *From* and *To* parameters.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Aggregation function* is set to "min", "max", "avg", "count", "sum", "first", "last"|
|<|*From*|1|columns.0.time_period.from|Valid time string in absolute (`YYYY-MM-DD hh:mm:ss`) or [relative](/manual/web_interface/time_period_selector) time syntax (`now`, `now/d`, `now/w-1w`, etc.).<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Time period* is not set and *Aggregation function* is set to "min", "max", "avg", "count", "sum", "first", "last"|
|^|*To*|1|columns.0.time_period.to|Valid time string in absolute (`YYYY-MM-DD hh:mm:ss`) or [relative](/manual/web_interface/time_period_selector) time syntax (`now`, `now/d`, `now/w-1w`, etc.).<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Time period* is not set and *Aggregation function* is set to "min", "max", "avg", "count", "sum", "first", "last"|
|*History data*|<|0|columns.0.history|0 - *(default)* Auto;<br>1 - History;<br>2 - Trends.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *supported* if *Display value as* is set to "Numeric"|

[comment]: # ({/new-f35f175e})

[comment]: # ({new-0700aebf})
### Examples

The following examples aim to only describe the configuration of the dashboard widget field objects for the *Top items* widget.
For more information on configuring a dashboard, see [`dashboard.create`](/manual/api/reference/dashboard/create).

[comment]: # ({/new-0700aebf})

[comment]: # ({new-03c7c01f})
#### Configuring a *Top items* widget

Configure a *Top items* widget that displays data for host "10084" and only for items for which the tag with the name "component" contains the value "cpu".
In addition, display the data with hosts located at the top and use a colored gauge bar for cell representation.

[Request](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "dashboard.create",
    "params": {
        "name": "My dashboard",
        "display_period": 30,
        "auto_start": 1,
        "pages": [
            {
                "widgets": [
                    {
                        "type": "topitems",
                        "name": "Top items",
                        "x": 0,
                        "y": 0,
                        "width": 36,
                        "height": 5,
                        "view_mode": 0,
                        "fields": [
                            {
                                "type": 3,
                                "name": "hostids.0",
                                "value": 10084
                            },
                            {
                                "type": 1,
                                "name": "columns.0.items.0",
                                "value": "*"
                            },
                            {
                                "type": 1,
                                "name": "columns.0.item_tags.0.tag",
                                "value": "component"
                            },
                            {
                                "type": 0,
                                "name": "columns.0.item_tags.0.operator",
                                "value": 0
                            },
                            {
                                "type": 1,
                                "name": "columns.0.item_tags.0.value",
                                "value": "cpu"
                            },
                            {
                                "type": 0,
                                "name": "columns.0.display",
                                "value": 2
                            },
                            {
                                "type": 0,
                                "name": "layout",
                                "value": 1
                            }
                        ]
                    }
                ]
            }
        ],
        "userGroups": [
            {
                "usrgrpid": 7,
                "permission": 2
            }
        ],
        "users": [
            {
                "userid": 1,
                "permission": 3
            }
        ]
    },
    "id": 1
}
```

Response:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "dashboardids": [
            "3"
        ]
    },
    "id": 1
}
```

[comment]: # ({/new-03c7c01f})

[comment]: # ({new-2b7384bb})
### See also

-   [Dashboard widget field](/manual/api/reference/dashboard/object#dashboard-widget-field)
-   [`dashboard.create`](/manual/api/reference/dashboard/create)
-   [`dashboard.update`](/manual/api/reference/dashboard/update)

[comment]: # ({/new-2b7384bb})
