---
type: api
title: Search visualizations
description: Returns a paginated list of Lens visualizations matching the optional `query` text.
url: https://www.elastic.co/docs/api/doc/kibana/v9/operation/operation-search-visualizations
resource: https://www.elastic.co/docs/api/doc/kibana/v9/operation/operation-search-visualizations
products:
  - Kibana
---

# Search visualizations

Authentication: required

Availability: Generally available since 9.5

- Server: `https://{kibana_url}`

## Paths

- `GET` `/api/visualizations`
- `GET` `/s/{space_id}/api/visualizations`

#### Path parameters

- `space_id` (string) — optional
  An identifier for the space. If `space_id` is not provided in the URL, the default space is used. Refer to [Spaces](https://www.elastic.co/docs/deploy-manage/manage-spaces) for more information.

## Description

Returns a paginated list of Lens visualizations matching the optional `query` text.

## Query string parameters

- `fields` (string[] · max items: 100) — optional
  The saved object fields to include in each result. When omitted, all fields are returned.
- `search_fields` (string[] · max items: 100) — optional
  The fields to match the `query` text against. Defaults to `title` when omitted.
- `query` (string) — optional
  Text to match against `search_fields`.
- `page` (number · min: 1 · default: 1) — optional
  The page of results to return.
- `per_page` (number · min: 1 · max: 1000 · default: 20) — optional
  The number of results to return per page.

## Responses

#### `200`

Ok

`application/json`

- `data` (object[] · max items: 1000)
  - `data` (union anyOf)
    - **Metric Chart (library)**
      - `type` (enum)
        Values: `metric`
      - `breakdown_by` (union anyOf)
        - **Date Histogram Operation**
          - `operation` (enum)
            Values: `date_histogram`
          - `collapse_by` (union anyOf)
            Aggregation function used to collapse a breakdown dimension into a single value.
            Values: `avg`, `sum`, `max`, `min`
          - `columns` (number · default: 3)
            Number of columns.
          - `drop_partial_intervals` (boolean · default: false)
            When `true`, drops partial intervals from the results.
          - `field` (string)
            Field to be used for the date histogram.
          - `include_empty_rows` (boolean · default: true)
            When `true`, includes empty rows in the results.
          - `label` (string)
            Label for the operation
          - `suggested_interval` (string · default: auto)
            Suggested time interval.
          - `use_original_time_range` (boolean · default: false)
            When `true`, uses the original time range instead of the current query time range.
        - **Terms Operation**
          - `operation` (enum)
            Values: `terms`
          - `collapse_by` (union anyOf)
            Aggregation function used to collapse a breakdown dimension into a single value.
            Values: `avg`, `sum`, `max`, `min`
          - `columns` (number · default: 3)
            Number of columns.
          - `excludes` (object)
            - `as_regex` (boolean)
              When `true`, treats the values as regular expressions.
            - `values` (union string[] | number[])
              Values to exclude.
          - `fields` (string[] · min items: 1 · max items: 4)
          - `format` (union anyOf)
            Number display format for the dimension value.
            - **Numeric Format**
              Number or percentage format with optional decimal places, suffix, and compact notation.
              - `compact` (boolean · default: false)
                When `true`, uses compact notation (for example, 1.2k instead of 1,200). Defaults to `false`.
              - `decimals` (number · default: 2)
                Number of decimal places to display.
              - `suffix` (string)
                Suffix appended to the formatted value.
              - `type` (enum)
                Value format type: `number` for plain numbers, `percent` for percentages.
                Values: `number`, `percent`
            - **Byte Format**
              Data size format in bits or bytes, with optional decimal places and suffix.
              - `decimals` (number · default: 2)
                Number of decimal places to display.
              - `suffix` (string)
                Suffix appended to the formatted value.
              - `type` (enum)
                Data size unit: `bits` or `bytes`.
                Values: `bits`, `bytes`
            - **Duration Format**
              Duration format between time units.
              - `compact` (boolean)
                When `true`, uses short unit suffixes (for example, `ms` instead of `Milliseconds`). Defaults to `true`. Ignored for `auto-approximate`.
              - `decimals` (number)
                Number of decimal places to display. Defaults to `0`. Ignored for `auto-approximate`.
              - `from` (enum)
                Source time unit of the raw field value, including fine-grained units (`ps`, `ns`, `us`) in addition to standard units. This describes how the stored data is encoded, not a query duration literal.
                Values: `ps`, `ns`, `us`, `ms`, `s`, `min`, `h`, `d`, `w`, `mo`, `y`
              - `suffix` (string)
                Suffix appended to the formatted value.
              - `to` (enum)
                Display time unit: `auto` (precise), `auto-approximate`, or a fixed conversion unit.
                Values: `auto`, `auto-approximate`, `ms`, `s`, `min`, `h`, `d`, `w`, `mo`, `y`
              - `type` (enum)
                Values: `duration`
            - **Custom Format**
              Custom format using a Kibana field format pattern string.
              - `pattern` (string)
                Kibana field format pattern string.
              - `type` (enum)
                Values: `custom`
          - `includes` (object)
            - `as_regex` (boolean)
              When `true`, treats the values as regular expressions.
            - `values` (union string[] | number[])
              Values to include.
          - `increase_accuracy` (boolean)
            When `true`, increases accuracy at the cost of performance.
          - `label` (string)
            Label for the operation
          - `limit` (number · default: 5)
            Number of terms to return.
          - `other_bucket` (object)
            - `include_documents_without_field` (boolean)
              When `true`, includes documents that do not have the specified field.
          - `rank_by` (union anyOf)
            - **Terms Rank By Alphabetical**
              Terms ranked alphabetically.
              - `direction` (enum)
                Direction
                Values: `asc`, `desc`
              - `type` (enum)
                Values: `alphabetical`
            - **Terms Rank By Rarity**
              Terms ranked by rarity.
              - `max` (number)
                Maximum number of rare terms to include.
              - `type` (enum)
                Values: `rare`
            - **Terms Rank By Significance**
              Terms ranked by significance.
              - `type` (enum)
                Values: `significant`
            - **Terms Rank By Metric**
              Terms ranked by a linked metric.
              - `direction` (enum)
                Direction
                Values: `asc`, `desc`
              - `metric_index` (number · min: 0 · default: 0)
                Zero-based index into the metrics array identifying which metric to rank by.
              - `type` (enum)
                Values: `metric`
            - **Terms Rank By Custom Operation**
              Terms ranked by custom operation.
              - `direction` (enum)
                Direction
                Values: `asc`, `desc`
              - `field` (string)
                Numeric field to be used for the custom operation.
              - `operation` (enum)
                Values: `min`, `max`, `average`, `median`, `standard_deviation`, `unique_count`, `sum`
              - `type` (enum)
                Values: `custom`
            - **Terms Rank By Custom Last Value Operation**
              Terms ranked by the last value of a field.
              - `direction` (enum)
                Direction
                Values: `asc`, `desc`
              - `field` (string)
                Numeric field to be used for the custom operation.
              - `operation` (enum)
                Values: `last_value`
              - `time_field` (string · min length: 1)
                Time field used to determine document recency for the last-value ranking.
              - `type` (enum)
                Values: `custom`
            - **Terms Rank By Custom Count Operation**
              Terms ranked by count, either of all documents or of a specific field.
              - `direction` (enum)
                Direction
                Values: `asc`, `desc`
              - `field` (string)
                Numeric field to be used for the custom operation.
              - `operation` (enum)
                Values: `count`
              - `type` (enum)
                Values: `custom`
            - **Terms Rank By Percentile Operation**
              Terms ranked by a percentile of a numeric field, for example the 95th percentile of response time.
              - `direction` (enum)
                Direction
                Values: `asc`, `desc`
              - `field` (string)
                Numeric field to be used for the custom operation.
              - `operation` (enum)
                Values: `percentile`
              - `percentile` (number · default: 95)
                The percentile threshold (0–100) at which to compute the field value used for ranking terms.
              - `type` (enum)
                Values: `custom`
            - **Terms Rank By Percentile Rank Operation**
              Terms ranked by the percentile rank of a single value: the proportion of field values at or below that value.
              - `direction` (enum)
                Direction
                Values: `asc`, `desc`
              - `field` (string)
                Numeric field to be used for the custom operation.
              - `operation` (enum)
                Values: `percentile_rank`
              - `rank` (number · default: 0)
                The numeric value for which to compute the percentile rank (the percentage of field values at or below this value).
              - `type` (enum)
                Values: `custom`
        - **Histogram Operation**
          - `operation` (enum)
            Values: `histogram`
          - `collapse_by` (union anyOf)
            Aggregation function used to collapse a breakdown dimension into a single value.
            Values: `avg`, `sum`, `max`, `min`
          - `columns` (number · default: 3)
            Number of columns.
          - `field` (string)
            Field to be used for the histogram.
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `granularity` (union number | enum · default: auto)
            Values: `auto`
          - `include_empty_rows` (boolean · default: true)
            When `true`, includes empty rows in the results.
          - `label` (string)
            Label for the operation
        - **Ranges Operation**
          - `operation` (enum)
            Values: `range`
          - `collapse_by` (union anyOf)
            Aggregation function used to collapse a breakdown dimension into a single value.
            Values: `avg`, `sum`, `max`, `min`
          - `columns` (number · default: 3)
            Number of columns.
          - `field` (string)
            Field to be used for the range.
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `ranges` (object[] · max items: 100)
            - `gt` (number)
              Greater than.
            - `label` (string)
              Label.
            - `lte` (number)
              Less than or equal to.
        - **Filters Operation**
          - `operation` (enum)
            Values: `filters`
          - `collapse_by` (union anyOf)
            Aggregation function used to collapse a breakdown dimension into a single value.
            Values: `avg`, `sum`, `max`, `min`
          - `columns` (number · default: 3)
            Number of columns.
          - `filters` (object[] · max items: 100)
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `label` (string)
              Label for the filter
          - `label` (string)
            Label for the operation
      - `data_source` (union oneOf)
        - **Data view reference** (`type: data_view_reference`)
          - `type` (enum)
            Values: `data_view_reference`
          - `ref_id` (string)
            The id of the Kibana data view to use as the data source. Example: "my-data-view".
        - **Data view inline spec** (`type: data_view_spec`)
          - `type` (enum)
            Values: `data_view_spec`
          - `allow_hidden_indices` (boolean)
            When `true`, allows the data view to match hidden indices.
          - `field_filters` (string[] · max items: 10000)
            Field filters can be used to exclude one or more fields when fetching a document. They may contain wildcards, such as `user*` which filters fields starting with 'user'.
          - `field_settings` (map string to anyOf)
            Settings for individual fields, keyed by field name. To change how Kibana displays a field from the backing indices, set its label, description, or format. To define a runtime field, use the runtime field name and set `type`.
            Map values (union anyOf)
            Any of:
            - **Composite runtime field**
              - `fields` (map string to object)
                Map values (object)
                - `custom_description` (string · min length: 1)
                  Add a description to the field. It's displayed next to the field on the Discover, Lens, and Data View Management pages.
                - `custom_label` (string · min length: 1)
                  Create a label to display in place of the field name in Discover, Maps, Lens, Visualize, and TSVB. Useful for shortening a long field name. Queries and filters use the original field name.
                - `format` (union anyOf)
                  Set your preferred format for displaying the value. Changing the format can affect the value and prevent highlighting in Discover.
                  - **Boolean field format**
                    Formats a field into a true/false value.
                    - `type` (enum)
                      Values: `boolean`
                  - **Bytes field format**
                    Formats a field into a bytes value following the numeral.js format pattern. The default pattern is defined by the format:bytes:defaultPattern advanced setting.
                    - `params` (object)
                      - `pattern` (string)
                        Numeral.js format pattern. See https://www.elastic.co/docs/explore-analyze/numeral-formatting to learn more.
                    - `type` (enum)
                      Values: `bytes`
                  - **Color field format**
                    Formats a field into a color value.
                    - `params` (union oneOf)
                      - **field_type: string** (`field_type: string`)
                        - `field_type` (enum)
                          Values: `string`
                        - `colors` (object[])
                          - `background` (string)
                            The background color to use for the field.
                          - `regex` (string)
                            When the field type is a string, this regex is used to determine the color.
                          - `text` (string)
                            The text color to use for the field.
                      - **field_type: number** (`field_type: number`)
                        - `field_type` (enum)
                          Values: `number`
                        - `colors` (object[])
                          - `background` (string)
                            The background color to use for the field.
                          - `range` (string)
                            When the field type is a number, this range is used to determine the color.
                          - `text` (string)
                            The text color to use for the field.
                        - `pattern` (string)
                          Numeral.js format pattern. See https://www.elastic.co/docs/explore-analyze/numeral-formatting to learn more.
                      - **field_type: boolean** (`field_type: boolean`)
                        - `field_type` (enum)
                          Values: `boolean`
                        - `colors` (object[])
                          - `background` (string)
                            The background color to use for the field.
                          - `boolean` (boolean)
                            When the field type is a boolean, this boolean is used to determine the color.
                          - `text` (string)
                            The text color to use for the field.
                    - `type` (enum)
                      Values: `color`
                  - **Currency field format**
                    Formats a field into a currency value. The format is determined by the pattern of the format:currency:defaultPattern advanced setting.
                    - `type` (enum)
                      Values: `currency`
                  - **Date nanos field format**
                    Formats a field into a date nanos value following the defined pattern.
                    - `params` (object)
                      - `pattern` (string · default: MMM D, YYYY @ HH:mm:ss.SSSSSSSSS)
                        Moment.js format pattern. See https://momentjs.com/ to learn more.
                    - `type` (enum)
                      Values: `date_nanos`
                  - **Date field format**
                    Formats a field into a date value following the defined pattern.
                    - `params` (object)
                      - `pattern` (string · default: MMM D, YYYY @ HH:mm:ss.SSS)
                        Moment.js format pattern. See https://momentjs.com/ to learn more.
                    - `type` (enum)
                      Values: `date`
                  - **Duration field format**
                    Formats a field into a duration value.
                    - `params` (object)
                      - `include_space_with_suffix` (boolean · default: true)
                        When true or not provided, the formatted duration includes a space between the value and suffix. When false, no space is included.
                      - `input_format` (enum)
                        The unit of the field value before formatting.
                        Values: `picoseconds`, `nanoseconds`, `microseconds`, `milliseconds`, `seconds`, `minutes`, `hours`, `days`, `weeks`, `months`, `years`
                      - `output_format` (enum)
                        The unit to convert the field value into for display.
                        Values: `humanize`, `humanize_precise`, `as_milliseconds`, `as_seconds`, `as_minutes`, `as_hours`, `as_days`, `as_weeks`, `as_months`, `as_years`
                      - `output_precision` (number · default: 2)
                        The number of decimal places to display in the duration value.
                      - `show_suffix` (boolean)
                        When true, the formatted duration includes a suffix (such as "seconds", "milliseconds", or "years"). When false or not provided, no suffix is shown.
                      - `use_short_suffix` (boolean · default: false)
                        When true, the formatted duration uses short suffixes (such as "s", "ms", or "h"). When false or not provided, full suffixes are used.
                    - `type` (enum)
                      Values: `duration`
                  - **Geo point field format**
                    Formats a field into a geo point value.
                    - `params` (object)
                      - `transform` (enum)
                        The transform to apply to the geo point value.
                        Values: `lat_lon_string`, `wkt`, `dms`, `mgrs`, `multi`
                    - `type` (enum)
                      Values: `geo_point`
                  - **Histogram field format**
                    Formats a histogram field into a numeric value following the defined pattern. The default pattern is defined by format:bytes:defaultPattern, format:percent:defaultPattern or format:number:defaultPattern advanced settings depending on the selected format.
                    - `params` (object)
                      - `format` (enum)
                        Values: `bytes`, `percent`, `number`
                      - `pattern` (string)
                        Numeral.js format pattern. See https://www.elastic.co/docs/explore-analyze/numeral-formatting to learn more.
                    - `type` (enum)
                      Values: `histogram`
                  - **IP field format**
                    Formats a field into an IP address.
                    - `type` (enum)
                      Values: `ip`
                  - **Number field format**
                    Formats a field into a numeric value following the defined pattern. The default pattern is defined by format:number:defaultPattern advanced setting.
                    - `params` (object)
                      - `pattern` (string)
                        Numeral.js format pattern. See https://www.elastic.co/docs/explore-analyze/numeral-formatting to learn more.
                    - `type` (enum)
                      Values: `number`
                  - **Percent field format**
                    Formats a field into a percentage value following the defined pattern. The default pattern is defined by format:percent:defaultPattern advanced setting.
                    - `params` (object)
                      - `pattern` (string)
                        Numeral.js format pattern. See https://www.elastic.co/docs/explore-analyze/numeral-formatting to learn more.
                    - `type` (enum)
                      Values: `percent`
                  - **Relative date field format**
                    Formats a field into a relative date value. For example: "1 day ago".
                    - `type` (enum)
                      Values: `relative_date`
                  - **Static lookup field format**
                    Formats a field into a static value based on the lookup entries or the unknown key value.
                    - `params` (object)
                      - `lookup_entries` (object[])
                        The lookup entries to use for the static lookup. The key refers to the field value, and the value refers to the new value to display.
                        - `key` (string)
                        - `value` (string)
                      - `unknown_key_value` (string)
                        The value to display for unknown key values. If not provided, the field value will be displayed.
                    - `type` (enum)
                      Values: `static_lookup`
                  - **String field format**
                    Formats a field into a string value.
                    - `params` (object)
                      - `transform` (enum)
                        Values: `lower`, `upper`, `title`, `short`, `base64`, `urlparam`
                    - `type` (enum)
                      Values: `string`
                  - **Truncate field format**
                    Truncates the field value to the specified length. If the field value is longer than the specified length, it will be truncated and the remaining text will be replaced with "...".
                    - `params` (object)
                      - `field_length` (number)
                    - `type` (enum)
                      Values: `truncate`
                  - **URL field format**
                    Formats a field into a link, image or audio.
                    - `params` (union oneOf)
                      - **type: a** (`type: a`)
                        - `type` (enum)
                          Displays the field value as a hyperlink.
                          Values: `a`
                        - `label_template` (string)
                          The template to use for the label. The template is a string that contains the field value. The field value is replaced with the template. The available placeholders are: `{{value}}`, `{{rawValue}}` and `{{url}}`. For example: "`{{value}}`".
                        - `open_link_in_current_tab` (boolean)
                          When true, the URL opens in the current tab. When false or not provided, the URL opens in a new tab.
                        - `url_template` (string)
                          The template to use for the URL. The template is a string that contains the field value. The field value is replaced with the template. The available placeholders are: `{{value}}`, `{{rawValue}}` and `{{risonValue}}`. Use `{{risonValue}}` when embedding the field value inside Kibana app URL rison state (for example: query:'`{{risonValue}}`'). For example: "https://example.com/`{{value}}`".
                      - **type: img** (`type: img`)
                        - `type` (enum)
                          Displays the field value as an image.
                          Values: `img`
                        - `height` (number)
                          The height of the image. If not provided, the image will be displayed at the original height.
                        - `label_template` (string)
                          The template to use for the label. The template is a string that contains the field value. The field value is replaced with the template. The available placeholders are: `{{value}}`, `{{rawValue}}` and `{{url}}`. For example: "`{{value}}`".
                        - `url_template` (string)
                          The template to use for the URL. The template is a string that contains the field value. The field value is replaced with the template. The available placeholders are: `{{value}}`, `{{rawValue}}` and `{{risonValue}}`. Use `{{risonValue}}` when embedding the field value inside Kibana app URL rison state (for example: query:'`{{risonValue}}`'). For example: "https://example.com/`{{value}}`".
                        - `width` (number)
                          The width of the image. If not provided, the image will be displayed at the original width.
                      - **type: audio** (`type: audio`)
                        - `type` (enum)
                          Displays the field value as an audio player.
                          Values: `audio`
                        - `label_template` (string)
                          The template to use for the label. The template is a string that contains the field value. The field value is replaced with the template. The available placeholders are: `{{value}}`, `{{rawValue}}` and `{{url}}`. For example: "`{{value}}`".
                        - `url_template` (string)
                          The template to use for the URL. The template is a string that contains the field value. The field value is replaced with the template. The available placeholders are: `{{value}}`, `{{rawValue}}` and `{{risonValue}}`. Use `{{risonValue}}` when embedding the field value inside Kibana app URL rison state (for example: query:'`{{risonValue}}`'). For example: "https://example.com/`{{value}}`".
                    - `type` (enum)
                      Values: `url`
                  - **Extensible format**
                    Fallback for custom formatter IDs only. Known formatter IDs must match their dedicated schema and are validated at runtime.
                    - `params` (object)
                    - `type` (string)
                - `type` (enum)
                  The type of the runtime field (e.g., "keyword", "long", "date").
                  Values: `keyword`, `long`, `double`, `date`, `ip`, `boolean`, `geo_point`
              - `script` (string · min length: 1)
                The script that defines the runtime field. This should be a painless script that computes the field value at query time. Runtime fields without a script retrieve values from _source. If the field doesn't exist in _source, a search request returns no value.
              - `type` (enum)
                Values: `composite`
            - **Runtime field**
              - `custom_description` (string · min length: 1)
                Add a description to the field. It's displayed next to the field on the Discover, Lens, and Data View Management pages.
              - `custom_label` (string · min length: 1)
                Create a label to display in place of the field name in Discover, Maps, Lens, Visualize, and TSVB. Useful for shortening a long field name. Queries and filters use the original field name.
              - `format` (union anyOf)
                Set your preferred format for displaying the value. Changing the format can affect the value and prevent highlighting in Discover.
                Same options as `format` in `fields`
              - `script` (string · min length: 1)
                The script that defines the runtime field. This should be a painless script that computes the field value at query time. Runtime fields without a script retrieve values from _source. If the field doesn't exist in _source, a search request returns no value.
              - `type` (enum)
                The type of the runtime field (e.g., "keyword", "long", "date").
                Values: `keyword`, `long`, `double`, `date`, `ip`, `boolean`, `geo_point`
            - **Field settings**
              Display overrides for a field. These settings can define a custom label, description, and format.
              - `custom_description` (string · min length: 1)
                Add a description to the field. It's displayed next to the field on the Discover, Lens, and Data View Management pages.
              - `custom_label` (string · min length: 1)
                Create a label to display in place of the field name in Discover, Maps, Lens, Visualize, and TSVB. Useful for shortening a long field name. Queries and filters use the original field name.
              - `format` (union anyOf)
                Set your preferred format for displaying the value. Changing the format can affect the value and prevent highlighting in Discover.
                Same options as `format` in `fields`
          - `index_pattern` (string · min length: 1)
            The index pattern (Elasticsearch index expression) to use as the data source. Example: "my-index-*".
          - `name` (string · min length: 1 · max length: 256)
            The name of the data view. Example: "Sample data view".
          - `time_field` (string)
            The name of the time field in the index. Used for time-based filtering. Example: "@timestamp".
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        - **condition**
          A filter that evaluates a single field condition such as equality, range, or existence.
          - `type` (enum)
            Values: `condition`
          - `condition` (union oneOf)
            A filter condition with strict operator/value type matching.
            - **is** (`operator: is`)
              Matches documents where `field` equals a single specified value.
              - `operator` (enum)
                Values: `is`
              - `field` (string)
                Name of the document field the condition evaluates.
              - `negate` (boolean)
                When `true`, the filter is negated and matches documents that do NOT satisfy the condition. Defaults to `false`.
              - `value` (union string | number | boolean)
                Single value to compare against the field.
            - **is_one_of** (`operator: is_one_of`)
              Matches documents where `field` equals any value in a provided list.
              - `operator` (enum)
                Values: `is_one_of`
              - `field` (string)
                Name of the document field the condition evaluates.
              - `negate` (boolean)
                When `true`, the filter is negated and matches documents that do NOT satisfy the condition. Defaults to `false`.
              - `value` (union string[] | number[] | boolean[])
                Homogeneous array of values to match against the field.
            - **range** (`operator: range`)
              Matches documents where `field` falls within a specified numeric or date range.
              - `operator` (enum)
                Values: `range`
              - `field` (string)
                Name of the document field the condition evaluates.
              - `negate` (boolean)
                When `true`, the filter is negated and matches documents that do NOT satisfy the condition. Defaults to `false`.
              - `value` (object)
                Boundary values for a range comparison.
                - `format` (string)
                  Elasticsearch [date format](https://www.elastic.co/docs/reference/elasticsearch/mapping-reference/mapping-date-format) string applied when parsing date boundary values. For example, `strict_date_optional_time` or `epoch_millis`.
                - `gt` (number | string)
                  Greater than.
                - `gte` (number | string)
                  Greater than or equal to.
                - `lt` (number | string)
                  Less than.
                - `lte` (number | string)
                  Less than or equal to.
            - **exists** (`operator: exists`)
              Matches documents where `field` exists and contains a non-null value.
              - `operator` (enum)
                Values: `exists`
              - `field` (string)
                Name of the document field the condition evaluates.
              - `negate` (boolean)
                When `true`, the filter is negated and matches documents that do NOT satisfy the condition. Defaults to `false`.
          - `controlled_by` (string)
            Identifier of the panel that manages this filter. When set, the filter is treated as owned by that panel.
          - `data_view_id` (string)
            Identifier of the data view used as context for this filter.
          - `disabled` (boolean)
            When `true`, the filter is inactive and does not affect query results. Defaults to `false`.
          - `is_multi_index` (boolean)
            When `true`, the filter can be applied across multiple indices. Defaults to `false`.
          - `label` (string)
            Human-readable label for the filter, used for display purposes.
          - `negate` (boolean)
            When `true`, the filter is negated and matches documents that do NOT satisfy the condition. Defaults to `false`.
        - **group**
          A filter that combines multiple conditions or nested groups using a logical `and` or `or` operator.
          - `type` (enum)
            Values: `group`
          - `controlled_by` (string)
            Identifier of the panel that manages this filter. When set, the filter is treated as owned by that panel.
          - `data_view_id` (string)
            Identifier of the data view used as context for this filter.
          - `disabled` (boolean)
            When `true`, the filter is inactive and does not affect query results. Defaults to `false`.
          - `group` (object)
            Logical group that combines one or more conditions or nested groups.
            - `conditions` (union anyOf[]) — recursive
              Ordered list of conditions or nested groups combined by the group `operator`.
            - `operator` (enum)
              Logical operator applied across all entries in `conditions`. Use `and` to require all conditions, or `or` to require at least one.
              Values: `and`, `or`
          - `is_multi_index` (boolean)
            When `true`, the filter can be applied across multiple indices. Defaults to `false`.
          - `label` (string)
            Human-readable label for the filter, used for display purposes.
          - `negate` (boolean)
            When `true`, the filter is negated and matches documents that do NOT satisfy the condition. Defaults to `false`.
        - **dsl**
          A filter expressed as a raw [Elasticsearch Query DSL](https://www.elastic.co/docs/reference/query-languages/querydsl) object, used for queries that cannot be represented by condition or group filters.
          - `type` (enum)
            Values: `dsl`
          - `controlled_by` (string)
            Identifier of the panel that manages this filter. When set, the filter is treated as owned by that panel.
          - `data_view_id` (string)
            Identifier of the data view used as context for this filter.
          - `disabled` (boolean)
            When `true`, the filter is inactive and does not affect query results. Defaults to `false`.
          - `dsl` (map string to object)
            Elasticsearch Query DSL object passed directly to the query.
          - `field` (string)
            Field name for scripted filters where the field cannot be extracted from the DSL query.
          - `is_multi_index` (boolean)
            When `true`, the filter can be applied across multiple indices. Defaults to `false`.
          - `label` (string)
            Human-readable label for the filter, used for display purposes.
          - `negate` (boolean)
            When `true`, the filter is negated and matches documents that do NOT satisfy the condition. Defaults to `false`.
          - `params` (object)
            Filter parameters metadata. May contain display values, formats, and parameters for scripted filters.
        - **spatial**
          A filter that applies an Elasticsearch geo query, used for geographic boundary and shape matching.
          - `type` (enum)
            Values: `spatial`
          - `controlled_by` (string)
            Identifier of the panel that manages this filter. When set, the filter is treated as owned by that panel.
          - `data_view_id` (string)
            Identifier of the data view used as context for this filter.
          - `disabled` (boolean)
            When `true`, the filter is inactive and does not affect query results. Defaults to `false`.
          - `dsl` (map string to object)
            Elasticsearch geo query DSL object.
          - `is_multi_index` (boolean)
            When `true`, the filter can be applied across multiple indices. Defaults to `false`.
          - `label` (string)
            Human-readable label for the filter, used for display purposes.
          - `negate` (boolean)
            When `true`, the filter is negated and matches documents that do NOT satisfy the condition. Defaults to `false`.
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `metrics` (union anyOf[] · min items: 1 · max items: 2)
        Metric dimensions to display. The first must be a primary metric; an optional second must be a secondary metric.
        - **type: primary**
          - `type` (enum)
            Values: `primary`
          - `apply_color_to` (enum)
            Color target: `value` colors the metric text, `background` colors the cell or panel background.
            Values: `value`, `background`
          - `background_chart` (union anyOf)
            Secondary visualization displayed behind the primary metric value, either a bar chart (with optional max value) or a trend line.
            - **type: bar**
              - `type` (enum)
                Values: `bar`
              - `max_value` (union anyOf)
                Metric dimension configuration, supporting field-based aggregations (count, sum, average, median, standard deviation, unique count, last value), percentile operations, time-series operations (differences, moving average, cumulative sum, counter rate), and mathematical formulas.
                - **Formula Operation**
                  - `operation` (enum)
                    Values: `formula`
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `formula` (string)
                    Formula
                  - `label` (string)
                    Label for the operation
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_scale` (enum)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                - **Static Operation Definition**
                  - `operation` (enum)
                    Values: `static_value`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `value` (number · default: 100)
                    Static value
                - **Field Metric Operations**
                  Any of:
                  - **Count Metric Operation**
                    - `empty_as_null` (boolean · default: false)
                      When `true`, treats empty buckets as null instead of zero.
                    - `field` (string)
                      Field to be used for the metric
                    - `filter` (object)
                      A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                      - `expression` (string)
                        A query expression in KQL or Lucene syntax
                      - `language` (enum · default: kql)
                        Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                        Values: `kql`, `lucene`
                    - `format` (union anyOf)
                      Number display format for the dimension value.
                      Same options as `format` in `Terms Operation`
                    - `label` (string)
                      Label for the operation
                    - `operation` (enum)
                      Values: `count`
                    - `reduced_time_range` (string)
                      Reduced time range
                    - `time_scale` (union anyOf)
                      Time scale
                      Values: `s`, `m`, `h`, `d`
                    - `time_shift` (string)
                      Time shift
                  - **Unique Count Metric Operation**
                    - `empty_as_null` (boolean · default: false)
                      When `true`, treats empty buckets as null instead of zero.
                    - `field` (string)
                      Field to be used for the metric
                    - `filter` (object)
                      A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                      - `expression` (string)
                        A query expression in KQL or Lucene syntax
                      - `language` (enum · default: kql)
                        Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                        Values: `kql`, `lucene`
                    - `format` (union anyOf)
                      Number display format for the dimension value.
                      Same options as `format` in `Terms Operation`
                    - `label` (string)
                      Label for the operation
                    - `operation` (enum)
                      Values: `unique_count`
                    - `reduced_time_range` (string)
                      Reduced time range
                    - `time_scale` (union anyOf)
                      Time scale
                      Values: `s`, `m`, `h`, `d`
                    - `time_shift` (string)
                      Time shift
                  - **Stats Metric Operation**
                    - `field` (string)
                      Field to be used for the metric
                    - `filter` (object)
                      A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                      - `expression` (string)
                        A query expression in KQL or Lucene syntax
                      - `language` (enum · default: kql)
                        Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                        Values: `kql`, `lucene`
                    - `format` (union anyOf)
                      Number display format for the dimension value.
                      Same options as `format` in `Terms Operation`
                    - `label` (string)
                      Label for the operation
                    - `operation` (enum)
                      Values: `min`, `max`, `average`, `median`, `standard_deviation`
                    - `reduced_time_range` (string)
                      Reduced time range
                    - `time_scale` (union anyOf)
                      Time scale
                      Values: `s`, `m`, `h`, `d`
                    - `time_shift` (string)
                      Time shift
                  - **Sum Metric Operation**
                    - `empty_as_null` (boolean · default: false)
                      When `true`, treats empty buckets as null instead of zero.
                    - `field` (string)
                      Field to be used for the metric
                    - `filter` (object)
                      A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                      - `expression` (string)
                        A query expression in KQL or Lucene syntax
                      - `language` (enum · default: kql)
                        Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                        Values: `kql`, `lucene`
                    - `format` (union anyOf)
                      Number display format for the dimension value.
                      Same options as `format` in `Terms Operation`
                    - `label` (string)
                      Label for the operation
                    - `operation` (enum)
                      Values: `sum`
                    - `reduced_time_range` (string)
                      Reduced time range
                    - `time_scale` (union anyOf)
                      Time scale
                      Values: `s`, `m`, `h`, `d`
                    - `time_shift` (string)
                      Time shift
                  - **Last Value Operation**
                    - `field` (string)
                      Field to be used for the metric
                    - `filter` (object)
                      A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                      - `expression` (string)
                        A query expression in KQL or Lucene syntax
                      - `language` (enum · default: kql)
                        Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                        Values: `kql`, `lucene`
                    - `format` (union anyOf)
                      Number display format for the dimension value.
                      Same options as `format` in `Terms Operation`
                    - `label` (string)
                      Label for the operation
                    - `multi_value` (boolean · default: false)
                      Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
                    - `operation` (enum)
                      Values: `last_value`
                    - `reduced_time_range` (string)
                      Reduced time range
                    - `time_field` (string)
                      Time field used to determine document recency
                    - `time_scale` (union anyOf)
                      Time scale
                      Values: `s`, `m`, `h`, `d`
                    - `time_shift` (string)
                      Time shift
                  - **Percentile Operation**
                    - `field` (string)
                      Field to be used for the metric
                    - `filter` (object)
                      A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                      - `expression` (string)
                        A query expression in KQL or Lucene syntax
                      - `language` (enum · default: kql)
                        Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                        Values: `kql`, `lucene`
                    - `format` (union anyOf)
                      Number display format for the dimension value.
                      Same options as `format` in `Terms Operation`
                    - `label` (string)
                      Label for the operation
                    - `operation` (enum)
                      Values: `percentile`
                    - `percentile` (number · default: 95)
                      Percentile
                    - `reduced_time_range` (string)
                      Reduced time range
                    - `time_scale` (union anyOf)
                      Time scale
                      Values: `s`, `m`, `h`, `d`
                    - `time_shift` (string)
                      Time shift
                  - **Percentile Ranks Operation**
                    - `field` (string)
                      Field to be used for the metric
                    - `filter` (object)
                      A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                      - `expression` (string)
                        A query expression in KQL or Lucene syntax
                      - `language` (enum · default: kql)
                        Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                        Values: `kql`, `lucene`
                    - `format` (union anyOf)
                      Number display format for the dimension value.
                      Same options as `format` in `Terms Operation`
                    - `label` (string)
                      Label for the operation
                    - `operation` (enum)
                      Values: `percentile_rank`
                    - `rank` (number · default: 0)
                      Percentile Rank
                    - `reduced_time_range` (string)
                      Reduced time range
                    - `time_scale` (union anyOf)
                      Time scale
                      Values: `s`, `m`, `h`, `d`
                    - `time_shift` (string)
                      Time shift
                - **Differences Operation**
                  - `operation` (enum)
                    Values: `differences`
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `of` (union anyOf)
                    - **Count Metric Operation**
                      - `empty_as_null` (boolean · default: false)
                        When `true`, treats empty buckets as null instead of zero.
                      - `field` (string)
                        Field to be used for the metric
                      - `filter` (object)
                        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                        - `expression` (string)
                          A query expression in KQL or Lucene syntax
                        - `language` (enum · default: kql)
                          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                          Values: `kql`, `lucene`
                      - `format` (union anyOf)
                        Number display format for the dimension value.
                        Same options as `format` in `Terms Operation`
                      - `label` (string)
                        Label for the operation
                      - `operation` (enum)
                        Values: `count`
                      - `reduced_time_range` (string)
                        Reduced time range
                      - `time_scale` (union anyOf)
                        Time scale
                        Values: `s`, `m`, `h`, `d`
                      - `time_shift` (string)
                        Time shift
                    - **Unique Count Metric Operation**
                      - `empty_as_null` (boolean · default: false)
                        When `true`, treats empty buckets as null instead of zero.
                      - `field` (string)
                        Field to be used for the metric
                      - `filter` (object)
                        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                        - `expression` (string)
                          A query expression in KQL or Lucene syntax
                        - `language` (enum · default: kql)
                          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                          Values: `kql`, `lucene`
                      - `format` (union anyOf)
                        Number display format for the dimension value.
                        Same options as `format` in `Terms Operation`
                      - `label` (string)
                        Label for the operation
                      - `operation` (enum)
                        Values: `unique_count`
                      - `reduced_time_range` (string)
                        Reduced time range
                      - `time_scale` (union anyOf)
                        Time scale
                        Values: `s`, `m`, `h`, `d`
                      - `time_shift` (string)
                        Time shift
                    - **Stats Metric Operation**
                      - `field` (string)
                        Field to be used for the metric
                      - `filter` (object)
                        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                        - `expression` (string)
                          A query expression in KQL or Lucene syntax
                        - `language` (enum · default: kql)
                          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                          Values: `kql`, `lucene`
                      - `format` (union anyOf)
                        Number display format for the dimension value.
                        Same options as `format` in `Terms Operation`
                      - `label` (string)
                        Label for the operation
                      - `operation` (enum)
                        Values: `min`, `max`, `average`, `median`, `standard_deviation`
                      - `reduced_time_range` (string)
                        Reduced time range
                      - `time_scale` (union anyOf)
                        Time scale
                        Values: `s`, `m`, `h`, `d`
                      - `time_shift` (string)
                        Time shift
                    - **Sum Metric Operation**
                      - `empty_as_null` (boolean · default: false)
                        When `true`, treats empty buckets as null instead of zero.
                      - `field` (string)
                        Field to be used for the metric
                      - `filter` (object)
                        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                        - `expression` (string)
                          A query expression in KQL or Lucene syntax
                        - `language` (enum · default: kql)
                          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                          Values: `kql`, `lucene`
                      - `format` (union anyOf)
                        Number display format for the dimension value.
                        Same options as `format` in `Terms Operation`
                      - `label` (string)
                        Label for the operation
                      - `operation` (enum)
                        Values: `sum`
                      - `reduced_time_range` (string)
                        Reduced time range
                      - `time_scale` (union anyOf)
                        Time scale
                        Values: `s`, `m`, `h`, `d`
                      - `time_shift` (string)
                        Time shift
                    - **Last Value Operation**
                      - `field` (string)
                        Field to be used for the metric
                      - `filter` (object)
                        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                        - `expression` (string)
                          A query expression in KQL or Lucene syntax
                        - `language` (enum · default: kql)
                          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                          Values: `kql`, `lucene`
                      - `format` (union anyOf)
                        Number display format for the dimension value.
                        Same options as `format` in `Terms Operation`
                      - `label` (string)
                        Label for the operation
                      - `multi_value` (boolean · default: false)
                        Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
                      - `operation` (enum)
                        Values: `last_value`
                      - `reduced_time_range` (string)
                        Reduced time range
                      - `time_field` (string)
                        Time field used to determine document recency
                      - `time_scale` (union anyOf)
                        Time scale
                        Values: `s`, `m`, `h`, `d`
                      - `time_shift` (string)
                        Time shift
                    - **Percentile Operation**
                      - `field` (string)
                        Field to be used for the metric
                      - `filter` (object)
                        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                        - `expression` (string)
                          A query expression in KQL or Lucene syntax
                        - `language` (enum · default: kql)
                          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                          Values: `kql`, `lucene`
                      - `format` (union anyOf)
                        Number display format for the dimension value.
                        Same options as `format` in `Terms Operation`
                      - `label` (string)
                        Label for the operation
                      - `operation` (enum)
                        Values: `percentile`
                      - `percentile` (number · default: 95)
                        Percentile
                      - `reduced_time_range` (string)
                        Reduced time range
                      - `time_scale` (union anyOf)
                        Time scale
                        Values: `s`, `m`, `h`, `d`
                      - `time_shift` (string)
                        Time shift
                    - **Percentile Ranks Operation**
                      - `field` (string)
                        Field to be used for the metric
                      - `filter` (object)
                        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                        - `expression` (string)
                          A query expression in KQL or Lucene syntax
                        - `language` (enum · default: kql)
                          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                          Values: `kql`, `lucene`
                      - `format` (union anyOf)
                        Number display format for the dimension value.
                        Same options as `format` in `Terms Operation`
                      - `label` (string)
                        Label for the operation
                      - `operation` (enum)
                        Values: `percentile_rank`
                      - `rank` (number · default: 0)
                        Percentile Rank
                      - `reduced_time_range` (string)
                        Reduced time range
                      - `time_scale` (union anyOf)
                        Time scale
                        Values: `s`, `m`, `h`, `d`
                      - `time_shift` (string)
                        Time shift
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_scale` (union anyOf)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                  - `time_shift` (string)
                    Time shift
                - **Moving Average Operation**
                  - `operation` (enum)
                    Values: `moving_average`
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `of` (union anyOf)
                    Same options as `of` in `Differences Operation`
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_scale` (union anyOf)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                  - `time_shift` (string)
                    Time shift
                  - `window` (number · default: 5)
                    Window
                - **Cumulative Sum Operation**
                  - `operation` (enum)
                    Values: `cumulative_sum`
                  - `field` (string)
                    Field to cumulatively sum. When omitted, cumulative sum is applied to the count of records.
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_scale` (union anyOf)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                  - `time_shift` (string)
                    Time shift
                - **Counter Rate Operation**
                  - `operation` (enum)
                    Values: `counter_rate`
                  - `field` (string)
                    Field to be used for the metric
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_scale` (union anyOf)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                  - `time_shift` (string)
                    Time shift
                - **Count Metric Operation**
                  - `operation` (enum)
                    Values: `count`
                  - `empty_as_null` (boolean · default: false)
                    When `true`, treats empty buckets as null instead of zero.
                  - `field` (string)
                    Field to be used for the metric
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_scale` (union anyOf)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                  - `time_shift` (string)
                    Time shift
                - **Unique Count Metric Operation**
                  - `operation` (enum)
                    Values: `unique_count`
                  - `empty_as_null` (boolean · default: false)
                    When `true`, treats empty buckets as null instead of zero.
                  - `field` (string)
                    Field to be used for the metric
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_scale` (union anyOf)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                  - `time_shift` (string)
                    Time shift
                - **Last Value Operation**
                  - `operation` (enum)
                    Values: `last_value`
                  - `field` (string)
                    Field to be used for the metric
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `multi_value` (boolean · default: false)
                    Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_field` (string)
                    Time field used to determine document recency
                  - `time_scale` (union anyOf)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                  - `time_shift` (string)
                    Time shift
                - **Percentile Operation**
                  - `operation` (enum)
                    Values: `percentile`
                  - `field` (string)
                    Field to be used for the metric
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `percentile` (number · default: 95)
                    Percentile
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_scale` (union anyOf)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                  - `time_shift` (string)
                    Time shift
                - **Percentile Ranks Operation**
                  - `operation` (enum)
                    Values: `percentile_rank`
                  - `field` (string)
                    Field to be used for the metric
                  - `filter` (object)
                    A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                    - `expression` (string)
                      A query expression in KQL or Lucene syntax
                    - `language` (enum · default: kql)
                      Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                      Values: `kql`, `lucene`
                  - `format` (union anyOf)
                    Number display format for the dimension value.
                    Same options as `format` in `Terms Operation`
                  - `label` (string)
                    Label for the operation
                  - `rank` (number · default: 0)
                    Percentile Rank
                  - `reduced_time_range` (string)
                    Reduced time range
                  - `time_scale` (union anyOf)
                    Time scale
                    Values: `s`, `m`, `h`, `d`
                  - `time_shift` (string)
                    Time shift
              - `orientation` (enum)
                Orientation
                Values: `horizontal`, `vertical`
            - **type: trend**
              - `type` (enum)
                Values: `trend`
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration for the primary metric value or background.
            - **Color By Value**
              Dynamic color mapping by numeric range, with support for absolute and percentage-based ranges and for named palettes.
              Any of:
              - **Color By Value (Absolute)**
                Color by absolute value configuration
                - `range` (enum)
                  Values: `absolute`
                - `steps` (object[] · min items: 1 · max items: 100)
                  Array of ordered color steps defining the range each color is applied.
                  - `color` (string)
                    The color to use for this step.
                  - `gte` (number) — nullable
                    The lower bound of range from which this color applies (inclusive).
                  - `lt` (number) — nullable
                    The upper bound of range to which this color applies (exclusive).
                  - `lte` (number) — nullable
                    The upper bound of range to which this color applies (inclusive).
                - `type` (enum)
                  Values: `dynamic`
              - **Color By Value (Percentage)**
                Color by percentage value configuration
                - `range` (enum)
                  Values: `percentage`
                - `steps` (object[] · min items: 1 · max items: 100)
                  Array of ordered color steps defining the range each color is applied.
                  - `color` (string)
                    The color to use for this step.
                  - `gte` (number) — nullable
                    The lower bound of range from which this color applies (inclusive).
                  - `lt` (number) — nullable
                    The upper bound of range to which this color applies (exclusive).
                  - `lte` (number) — nullable
                    The upper bound of range to which this color applies (inclusive).
                - `type` (enum)
                  Values: `dynamic`
              - **Color By Value (Palette)**
                Color by value using a palette, with colors distributed across the range of values.
                - `palette` (enum)
                  The name of the palette to apply across the value range.
                  Values: `status`, `temperature`, `complementary`, `negative`, `positive`, `cool`, `warm`, `gray`
                - `type` (enum)
                  Values: `distributed_palette`
              - **Legacy color by value**
                Legacy color by value configuration
                - `palette` (string)
                  The legacy palette name.
                - `range` (enum)
                  Determines whether the range is interpreted as absolute or as a percentage of the data.
                  Values: `absolute`, `percentage`
                - `shift` (boolean)
                  When `true`, shifts the palette colors so they start from a different offset. Defaults to `false`.
                - `steps` (object[] · min items: 1 · max items: 100)
                  Array of ordered color steps defining the range each color is applied.
                  - `color` (string)
                    The color to use for this step.
                  - `gte` (number) — nullable
                    The lower bound of range from which this color applies (inclusive).
                  - `lt` (number) — nullable
                    The upper bound of range to which this color applies (exclusive).
                  - `lte` (number) — nullable
                    The upper bound of range to which this color applies (inclusive).
                - `type` (enum)
                  Values: `legacy_dynamic`
            - **Static Color**
              Fixed color for all values in the dimension.
              - `type` (enum)
                Values: `static`
              - `color` (string)
                The static color to be used for all values.
            - **Auto Color**
              Coloring determined at runtime based on chart defaults
              - `type` (enum)
                Values: `auto`
          - `subtitle` (string)
            Subtitle below the primary metric value.
          Any of:
          - **Count Metric Operation**
            - `empty_as_null` (boolean · default: false)
              When `true`, treats empty buckets as null instead of zero.
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `count`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Unique Count Metric Operation**
            - `empty_as_null` (boolean · default: false)
              When `true`, treats empty buckets as null instead of zero.
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `unique_count`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Stats Metric Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `min`, `max`, `average`, `median`, `standard_deviation`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Sum Metric Operation**
            - `empty_as_null` (boolean · default: false)
              When `true`, treats empty buckets as null instead of zero.
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `sum`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Last Value Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `multi_value` (boolean · default: false)
              Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
            - `operation` (enum)
              Values: `last_value`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_field` (string)
              Time field used to determine document recency
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Percentile Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `percentile`
            - `percentile` (number · default: 95)
              Percentile
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Percentile Ranks Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `percentile_rank`
            - `rank` (number · default: 0)
              Percentile Rank
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Differences Operation**
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `of` (union anyOf)
              Same options as `of` in `Differences Operation`
            - `operation` (enum)
              Values: `differences`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Moving Average Operation**
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `of` (union anyOf)
              Same options as `of` in `Differences Operation`
            - `operation` (enum)
              Values: `moving_average`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
            - `window` (number · default: 5)
              Window
          - **Cumulative Sum Operation**
            - `field` (string)
              Field to cumulatively sum. When omitted, cumulative sum is applied to the count of records.
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `cumulative_sum`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Counter Rate Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `counter_rate`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Formula Operation**
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `formula` (string)
              Formula
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `formula`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (enum)
              Time scale
              Values: `s`, `m`, `h`, `d`
        - **type: secondary**
          - `type` (enum)
            Values: `secondary`
          - `color` (union anyOf · default: {"type":"none"})
            - **Static Color**
              Fixed color for all values in the dimension.
              - `type` (enum)
                Values: `static`
              - `color` (string)
                The static color to be used for all values.
            - **No Color**
              Explicitly disables coloring
              - `type` (enum)
                Values: `none`
          - `compare` (union anyOf)
            Compare the secondary metric to a baseline value or to the primary metric.
            - **Compare To Baseline**
              - `to` (enum)
                Values: `baseline`
              - `baseline` (number · default: 0)
                Baseline value.
              - `icon` (boolean · default: true)
                When `true`, displays the icon for the secondary value.
              - `palette` (string · default: compare_to)
                Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
              - `value` (boolean · default: true)
                When `true`, displays the secondary value.
            - **Compare To Primary**
              - `to` (enum)
                Values: `primary`
              - `icon` (boolean · default: true)
                When `true`, displays the icon for the secondary value.
              - `palette` (string · default: compare_to)
                Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
              - `value` (boolean · default: true)
                When `true`, displays the secondary value.
          Any of:
          - **Count Metric Operation**
            - `empty_as_null` (boolean · default: false)
              When `true`, treats empty buckets as null instead of zero.
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `count`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Unique Count Metric Operation**
            - `empty_as_null` (boolean · default: false)
              When `true`, treats empty buckets as null instead of zero.
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `unique_count`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Stats Metric Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `min`, `max`, `average`, `median`, `standard_deviation`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Sum Metric Operation**
            - `empty_as_null` (boolean · default: false)
              When `true`, treats empty buckets as null instead of zero.
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `sum`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Last Value Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `multi_value` (boolean · default: false)
              Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
            - `operation` (enum)
              Values: `last_value`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_field` (string)
              Time field used to determine document recency
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Percentile Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `percentile`
            - `percentile` (number · default: 95)
              Percentile
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Percentile Ranks Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `percentile_rank`
            - `rank` (number · default: 0)
              Percentile Rank
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Differences Operation**
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `of` (union anyOf)
              Same options as `of` in `Differences Operation`
            - `operation` (enum)
              Values: `differences`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Moving Average Operation**
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `of` (union anyOf)
              Same options as `of` in `Differences Operation`
            - `operation` (enum)
              Values: `moving_average`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
            - `window` (number · default: 5)
              Window
          - **Cumulative Sum Operation**
            - `field` (string)
              Field to cumulatively sum. When omitted, cumulative sum is applied to the count of records.
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `cumulative_sum`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Counter Rate Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `counter_rate`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Formula Operation**
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `formula` (string)
              Formula
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `formula`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (enum)
              Time scale
              Values: `s`, `m`, `h`, `d`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `styling` (object)
        Visual chart styling options
        - `density` (enum · default: default)
          Density preset for the metric chart layout. Use `compact` for a compact layout, or `default` for increased padding, element spacing, and font size.
          Values: `compact`, `default`
        - `icon` (object)
          Icon configuration for the metric chart
          - `alignment` (enum · default: right)
            Icon alignment. Accepted values: `left`, `right`. Defaults to `right`.
            Values: `left`, `right`
          - `name` (enum)
            Icon name
            Values: `alert`, `asterisk`, `bell`, `bolt`, `bug`, `compute`, `editor_comment`, `flag`, `globe`, `heart`, `map_marker`, `pin`, `popout`, `sort_down`, `sort_up`, `star_empty`, `tag`, `temperature`
        - `primary` (object)
          - `labels` (object)
            Labels (title and subtitle) configuration
            - `alignment` (enum · default: left)
              Horizontal alignment for the title and subtitle text. Accepted values: `left`, `center`, `right`. Defaults to `left`.
              Values: `left`, `center`, `right`
          - `position` (enum · default: bottom)
            Position of the primary metric value (top, middle, or bottom).
            Values: `top`, `middle`, `bottom`
          - `value` (object)
            Primary metric value configuration
            - `alignment` (enum · default: right)
              Alignment for the primary metric value. Accepted values: `left`, `center`, `right`. Defaults to `right`.
              Values: `left`, `center`, `right`
            - `sizing` (enum · default: auto)
              Controls how the primary value text is sized within the panel. 'auto' selects a font size from predefined breakpoints based on panel height, then shrinks if the text overflows horizontally. 'fill' scales the text to be as large as possible, filling all available space.
              Values: `auto`, `fill`
        - `secondary` (object)
          - `label` (object)
            - `placement` (enum · default: before)
              How the secondary metric name is shown: before the value, after the value, or in a tooltip. Ignored when the label is not visible.
              Values: `before`, `after`, `tooltip`
            - `visible` (boolean · default: false)
              When `true`, displays the secondary metric name as its label.
          - `value` (object)
            Secondary metric value configuration
            - `alignment` (enum · default: right)
              Alignment for secondary values. Accepted values: `left`, `center`, `right`. Defaults to `right`.
              Values: `left`, `center`, `right`
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **Legacy Metric Chart (library)**
      - `type` (enum)
        Values: `legacy_metric`
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `metric` (union anyOf)
        - **Count Metric Operation**
          - `apply_color_to` (enum)
            Color target: `value` colors the metric text, `background` colors the cell or panel background.
            Values: `value`, `background`
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration based on the metric value.
            - **Color By Value (Absolute)**
              Color by absolute value configuration
              - `type` (enum)
                Values: `dynamic`
              - `range` (enum)
                Values: `absolute`
              - `steps` (object[] · min items: 1 · max items: 100)
                Array of ordered color steps defining the range each color is applied.
                - `color` (string)
                  The color to use for this step.
                - `gte` (number) — nullable
                  The lower bound of range from which this color applies (inclusive).
                - `lt` (number) — nullable
                  The upper bound of range to which this color applies (exclusive).
                - `lte` (number) — nullable
                  The upper bound of range to which this color applies (inclusive).
            - **Color By Value (Palette)**
              Color by value using a palette, with colors distributed across the range of values.
              - `type` (enum)
                Values: `distributed_palette`
              - `palette` (enum)
                The name of the palette to apply across the value range.
                Values: `status`, `temperature`, `complementary`, `negative`, `positive`, `cool`, `warm`, `gray`
            - **Legacy color by value (absolute)**
              Legacy color by absolute value configuration
              - `type` (enum)
                Values: `legacy_dynamic`
              - `palette` (string)
                The legacy palette name.
              - `range` (enum)
                Values: `absolute`
              - `shift` (boolean)
                When `true`, shifts the palette colors so they start from a different offset. Defaults to `false`.
              - `steps` (object[] · min items: 1 · max items: 100)
                Array of ordered color steps defining the range each color is applied.
                - `color` (string)
                  The color to use for this step.
                - `gte` (number) — nullable
                  The lower bound of range from which this color applies (inclusive).
                - `lt` (number) — nullable
                  The upper bound of range to which this color applies (exclusive).
                - `lte` (number) — nullable
                  The upper bound of range to which this color applies (inclusive).
            - **Auto Color**
              Coloring determined at runtime based on chart defaults
              - `type` (enum)
                Values: `auto`
          - `labels` (object)
            Labels configuration
            - `alignment` (enum · default: top)
              Label alignment
              Values: `top`, `bottom`
          - `size` (enum · default: m)
            Font size for the label and value
            Values: `xs`, `s`, `m`, `l`, `xl`, `xxl`
          - `values` (object)
            Values configuration
            - `alignment` (enum · default: left)
              Value alignment
              Values: `left`, `center`, `right`
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `count`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Unique Count Metric Operation**
          - `apply_color_to` (enum)
            Color target: `value` colors the metric text, `background` colors the cell or panel background.
            Values: `value`, `background`
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration based on the metric value.
            Same options as `color` in `Count Metric Operation`
          - `labels` (object)
            Labels configuration
            - `alignment` (enum · default: top)
              Label alignment
              Values: `top`, `bottom`
          - `size` (enum · default: m)
            Font size for the label and value
            Values: `xs`, `s`, `m`, `l`, `xl`, `xxl`
          - `values` (object)
            Values configuration
            - `alignment` (enum · default: left)
              Value alignment
              Values: `left`, `center`, `right`
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `unique_count`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Stats Metric Operation**
          - `apply_color_to` (enum)
            Color target: `value` colors the metric text, `background` colors the cell or panel background.
            Values: `value`, `background`
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration based on the metric value.
            Same options as `color` in `Count Metric Operation`
          - `labels` (object)
            Labels configuration
            - `alignment` (enum · default: top)
              Label alignment
              Values: `top`, `bottom`
          - `size` (enum · default: m)
            Font size for the label and value
            Values: `xs`, `s`, `m`, `l`, `xl`, `xxl`
          - `values` (object)
            Values configuration
            - `alignment` (enum · default: left)
              Value alignment
              Values: `left`, `center`, `right`
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `min`, `max`, `average`, `median`, `standard_deviation`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Sum Metric Operation**
          - `apply_color_to` (enum)
            Color target: `value` colors the metric text, `background` colors the cell or panel background.
            Values: `value`, `background`
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration based on the metric value.
            Same options as `color` in `Count Metric Operation`
          - `labels` (object)
            Labels configuration
            - `alignment` (enum · default: top)
              Label alignment
              Values: `top`, `bottom`
          - `size` (enum · default: m)
            Font size for the label and value
            Values: `xs`, `s`, `m`, `l`, `xl`, `xxl`
          - `values` (object)
            Values configuration
            - `alignment` (enum · default: left)
              Value alignment
              Values: `left`, `center`, `right`
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `sum`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Last Value Operation**
          - `apply_color_to` (enum)
            Color target: `value` colors the metric text, `background` colors the cell or panel background.
            Values: `value`, `background`
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration based on the metric value.
            Same options as `color` in `Count Metric Operation`
          - `labels` (object)
            Labels configuration
            - `alignment` (enum · default: top)
              Label alignment
              Values: `top`, `bottom`
          - `size` (enum · default: m)
            Font size for the label and value
            Values: `xs`, `s`, `m`, `l`, `xl`, `xxl`
          - `values` (object)
            Values configuration
            - `alignment` (enum · default: left)
              Value alignment
              Values: `left`, `center`, `right`
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `multi_value` (boolean · default: false)
            Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
          - `operation` (enum)
            Values: `last_value`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_field` (string)
            Time field used to determine document recency
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Percentile Operation**
          - `apply_color_to` (enum)
            Color target: `value` colors the metric text, `background` colors the cell or panel background.
            Values: `value`, `background`
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration based on the metric value.
            Same options as `color` in `Count Metric Operation`
          - `labels` (object)
            Labels configuration
            - `alignment` (enum · default: top)
              Label alignment
              Values: `top`, `bottom`
          - `size` (enum · default: m)
            Font size for the label and value
            Values: `xs`, `s`, `m`, `l`, `xl`, `xxl`
          - `values` (object)
            Values configuration
            - `alignment` (enum · default: left)
              Value alignment
              Values: `left`, `center`, `right`
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `percentile`
          - `percentile` (number · default: 95)
            Percentile
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Percentile Ranks Operation**
          - `apply_color_to` (enum)
            Color target: `value` colors the metric text, `background` colors the cell or panel background.
            Values: `value`, `background`
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration based on the metric value.
            Same options as `color` in `Count Metric Operation`
          - `labels` (object)
            Labels configuration
            - `alignment` (enum · default: top)
              Label alignment
              Values: `top`, `bottom`
          - `size` (enum · default: m)
            Font size for the label and value
            Values: `xs`, `s`, `m`, `l`, `xl`, `xxl`
          - `values` (object)
            Values configuration
            - `alignment` (enum · default: left)
              Value alignment
              Values: `left`, `center`, `right`
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `percentile_rank`
          - `rank` (number · default: 0)
            Percentile Rank
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Formula Operation**
          - `apply_color_to` (enum)
            Color target: `value` colors the metric text, `background` colors the cell or panel background.
            Values: `value`, `background`
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration based on the metric value.
            Same options as `color` in `Count Metric Operation`
          - `labels` (object)
            Labels configuration
            - `alignment` (enum · default: top)
              Label alignment
              Values: `top`, `bottom`
          - `size` (enum · default: m)
            Font size for the label and value
            Values: `xs`, `s`, `m`, `l`, `xl`, `xxl`
          - `values` (object)
            Values configuration
            - `alignment` (enum · default: left)
              Value alignment
              Values: `left`, `center`, `right`
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `formula` (string)
            Formula
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `formula`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (enum)
            Time scale
            Values: `s`, `m`, `h`, `d`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **XY Chart (library)**
      - `type` (enum)
        Values: `xy`
      - `axis` (object)
        Axis configuration for X, Y, and Y2 axes. The Y axis is on the start (leading) side, the Y2 axis is on the end (trailing) side.
        - `x` (object)
          X-axis configuration
          - `domain` (union anyOf)
            X-axis domain configuration
            - **type: fit**
              Uses tight domain bounds from the observed data minimum to maximum, without baseline expansion.
              - `type` (enum)
                Values: `fit`
              - `rounding` (boolean · default: true)
                Whether to round axis domain bounds outward to readable “nice” values (for example 1, 5, 10, 100) instead of exact data min/max.
            - **type: custom**
              Uses explicitly provided domain bounds (min and max).
              - `type` (enum)
                Values: `custom`
              - `max` (number)
                Max domain value
              - `min` (number)
                Min domain value
              - `rounding` (boolean · default: true)
                Whether to round axis domain bounds outward to readable “nice” values (for example 1, 5, 10, 100) instead of exact data min/max.
          - `grid` (object)
            Axis grid lines configuration
            - `visible` (boolean)
              Show grid lines for this axis
          - `labels` (object)
            Label configuration
            - `orientation` (enum)
              Orientation
              Values: `horizontal`, `vertical`, `angled`
          - `scale` (enum)
            X-axis scale type. Use 'temporal' for timestamp/date fields (for example, @timestamp or DATE_TRUNC results). Use 'ordinal' for categorical/text fields. Use 'linear' for numeric fields.
            Values: `ordinal`, `temporal`, `linear`
          - `ticks` (object)
            Axis tick marks configuration
            - `visible` (boolean)
              Show tick marks on the axis
          - `title` (object)
            Axis title configuration
            - `text` (string)
              Axis title text.
            - `visible` (boolean)
              When `true`, displays the title.
        - `y` (object)
          Y-axis configuration with scale and bounds. The axis position is determined by the key: y renders on the start side (left in vertical charts), y2 on the end side (right in vertical charts).
          - `domain` (union oneOf · default: {"rounding":true,"type":"full"})
            Y-axis domain configuration
            - **type: full** (`type: full`)
              Uses the full chart domain, including baseline expansion when applicable (for example, includes zero for bar-like series).
              - `type` (enum)
                Values: `full`
              - `rounding` (boolean · default: true)
                Whether to round axis domain bounds outward to readable “nice” values (for example 1, 5, 10, 100) instead of exact data min/max.
            - **type: fit** (`type: fit`)
              Uses tight domain bounds from the observed data minimum to maximum, without baseline expansion.
              - `type` (enum)
                Values: `fit`
              - `rounding` (boolean · default: true)
                Whether to round axis domain bounds outward to readable “nice” values (for example 1, 5, 10, 100) instead of exact data min/max.
            - **type: custom** (`type: custom`)
              Uses explicitly provided domain bounds (min and max).
              - `type` (enum)
                Values: `custom`
              - `max` (number)
                Max domain value
              - `min` (number)
                Min domain value
              - `rounding` (boolean · default: true)
                Whether to round axis domain bounds outward to readable “nice” values (for example 1, 5, 10, 100) instead of exact data min/max.
          - `grid` (object)
            Axis grid lines configuration
            - `visible` (boolean)
              Show grid lines for this axis
          - `labels` (object)
            Label configuration
            - `orientation` (enum)
              Orientation
              Values: `horizontal`, `vertical`, `angled`
          - `scale` (enum)
            Y-axis scale type for data transformation
            Values: `linear`, `log`, `sqrt`
          - `ticks` (object)
            Axis tick marks configuration
            - `visible` (boolean)
              Show tick marks on the axis
          - `title` (object)
            Axis title configuration
            - `text` (string)
              Axis title text.
            - `visible` (boolean)
              When `true`, displays the title.
        - `y2` (object)
          Y-axis configuration with scale and bounds. The axis position is determined by the key: y renders on the start side (left in vertical charts), y2 on the end side (right in vertical charts).
          - `domain` (union oneOf · default: {"rounding":true,"type":"full"})
            Y-axis domain configuration
            - **type: full** (`type: full`)
              Uses the full chart domain, including baseline expansion when applicable (for example, includes zero for bar-like series).
              - `type` (enum)
                Values: `full`
              - `rounding` (boolean · default: true)
                Whether to round axis domain bounds outward to readable “nice” values (for example 1, 5, 10, 100) instead of exact data min/max.
            - **type: fit** (`type: fit`)
              Uses tight domain bounds from the observed data minimum to maximum, without baseline expansion.
              - `type` (enum)
                Values: `fit`
              - `rounding` (boolean · default: true)
                Whether to round axis domain bounds outward to readable “nice” values (for example 1, 5, 10, 100) instead of exact data min/max.
            - **type: custom** (`type: custom`)
              Uses explicitly provided domain bounds (min and max).
              - `type` (enum)
                Values: `custom`
              - `max` (number)
                Max domain value
              - `min` (number)
                Min domain value
              - `rounding` (boolean · default: true)
                Whether to round axis domain bounds outward to readable “nice” values (for example 1, 5, 10, 100) instead of exact data min/max.
          - `grid` (object)
            Axis grid lines configuration
            - `visible` (boolean)
              Show grid lines for this axis
          - `labels` (object)
            Label configuration
            - `orientation` (enum)
              Orientation
              Values: `horizontal`, `vertical`, `angled`
          - `scale` (enum)
            Y-axis scale type for data transformation
            Values: `linear`, `log`, `sqrt`
          - `ticks` (object)
            Axis tick marks configuration
            - `visible` (boolean)
              Show tick marks on the axis
          - `title` (object)
            Axis title configuration
            - `text` (string)
              Axis title text.
            - `visible` (boolean)
              When `true`, displays the title.
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `layers` (union anyOf[] · min items: 1 · max items: 100)
        Chart layers
        - **Layer (DSL)**
          Data layer for standard queries with metrics and buckets
          - `breakdown_by` (union anyOf)
            - **Date Histogram Operation**
              - `operation` (enum)
                Values: `date_histogram`
              - `aggregate_first` (boolean)
                When `true`, aggregates data before splitting into series. Defaults to `false`.
              - `collapse_by` (union anyOf)
                Aggregation function used to collapse a breakdown dimension into a single value.
                Values: `avg`, `sum`, `max`, `min`
              - `color` (union anyOf)
                Color mapping for dimension values, either categorical (for specific values) or as a gradient.
                Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
                - **Categorical Color Mapping**
                  Palette color assignment for specific categorical values. Unmapped values receive the unassigned color.
                  - `mode` (enum)
                    Values: `categorical`
                  - `mapping` (object[] · max items: 1000)
                    - `color` (union anyOf)
                      - **Color From Palette**
                        Color at a fixed index position in a named palette.
                        - `type` (enum)
                          Values: `from_palette`
                        - `index` (number)
                          The index of the color in the palette.
                        - `palette` (string)
                          Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                      - **Color Code**
                        A color specified as a hex or CSS color code string.
                        - `type` (enum)
                          Values: `color_code`
                        - `value` (string)
                          The static color value to use.
                    - `values` (union anyOf[] · max items: 1000)
                      - **string**
                      - **number**
                      - **boolean**
                      - **Multi Value Cell**
                        Values of a multi-value cell.
                      - **Range Key**
                        Identifies a range bucket. Omit either bound for an open end.
                        - `type` (enum)
                          Values: `range_key`
                        - `from` (number | string)
                        - `ranges` (object[] · max items: 100)
                          - `from` (number | string)
                          - `label` (string)
                          - `to` (number | string)
                        - `to` (number | string)
                      - **Multi Field Key**
                        Composite key from a multi-terms bucket.
                        - `type` (enum)
                          Values: `multi_field_key`
                        - `keys` (string[] · max items: 100)
                  - `palette` (string)
                    Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                  - `unassigned` (union anyOf)
                    The color to use for unassigned values.
                    - **Color From Palette**
                      Color at a fixed index position in a named palette.
                      - `type` (enum)
                        Values: `from_palette`
                      - `index` (number)
                        The index of the color in the palette.
                      - `palette` (string)
                        Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                    - **Color Code**
                      A color specified as a hex or CSS color code string.
                      - `type` (enum)
                        Values: `color_code`
                      - `value` (string)
                        The static color value to use.
                - **Gradient Color Mapping**
                  Gradient color mapping across categorical values.
                  - `mode` (enum)
                    Values: `gradient`
                  - `gradient` (union anyOf[] · max items: 3)
                    - **Color From Palette**
                      Color at a fixed index position in a named palette.
                      - `type` (enum)
                        Values: `from_palette`
                      - `index` (number)
                        The index of the color in the palette.
                      - `palette` (string)
                        Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                    - **Color Code**
                      A color specified as a hex or CSS color code string.
                      - `type` (enum)
                        Values: `color_code`
                      - `value` (string)
                        The static color value to use.
                  - `mapping` (object[] · max items: 100)
                    - `values` (union anyOf[] · max items: 100)
                      - **string**
                      - **number**
                      - **boolean**
                      - **Multi Value Cell**
                        Values of a multi-value cell.
                      - **Range Key**
                        Identifies a range bucket. Omit either bound for an open end.
                        - `type` (enum)
                          Values: `range_key`
                        - `from` (number | string)
                        - `ranges` (object[] · max items: 100)
                          - `from` (number | string)
                          - `label` (string)
                          - `to` (number | string)
                        - `to` (number | string)
                      - **Multi Field Key**
                        Composite key from a multi-terms bucket.
                        - `type` (enum)
                          Values: `multi_field_key`
                        - `keys` (string[] · max items: 100)
                  - `palette` (string)
                    Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                  - `sort` (enum)
                    Sort direction
                    Values: `asc`, `desc`
                  - `unassigned` (union anyOf)
                    The color to use for unassigned values.
                    - **Color From Palette**
                      Color at a fixed index position in a named palette.
                      - `type` (enum)
                        Values: `from_palette`
                      - `index` (number)
                        The index of the color in the palette.
                      - `palette` (string)
                        Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                    - **Color Code**
                      A color specified as a hex or CSS color code string.
                      - `type` (enum)
                        Values: `color_code`
                      - `value` (string)
                        The static color value to use.
              - `drop_partial_intervals` (boolean · default: false)
                When `true`, drops partial intervals from the results.
              - `field` (string)
                Field to be used for the date histogram.
              - `include_empty_rows` (boolean · default: true)
                When `true`, includes empty rows in the results.
              - `label` (string)
                Label for the operation
              - `suggested_interval` (string · default: auto)
                Suggested time interval.
              - `use_original_time_range` (boolean · default: false)
                When `true`, uses the original time range instead of the current query time range.
            - **Terms Operation**
              - `operation` (enum)
                Values: `terms`
              - `aggregate_first` (boolean)
                When `true`, aggregates data before splitting into series. Defaults to `false`.
              - `collapse_by` (union anyOf)
                Aggregation function used to collapse a breakdown dimension into a single value.
                Values: `avg`, `sum`, `max`, `min`
              - `color` (union anyOf)
                Color mapping for dimension values, either categorical (for specific values) or as a gradient.
                Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
                Same options as `color` in `Date Histogram Operation`
              - `excludes` (object)
                - `as_regex` (boolean)
                  When `true`, treats the values as regular expressions.
                - `values` (union string[] | number[])
                  Values to exclude.
              - `fields` (string[] · min items: 1 · max items: 4)
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `includes` (object)
                - `as_regex` (boolean)
                  When `true`, treats the values as regular expressions.
                - `values` (union string[] | number[])
                  Values to include.
              - `increase_accuracy` (boolean)
                When `true`, increases accuracy at the cost of performance.
              - `label` (string)
                Label for the operation
              - `limit` (number · default: 5)
                Number of terms to return.
              - `other_bucket` (object)
                - `include_documents_without_field` (boolean)
                  When `true`, includes documents that do not have the specified field.
              - `rank_by` (union anyOf)
                Same options as `rank_by` in `Terms Operation`
            - **Histogram Operation**
              - `operation` (enum)
                Values: `histogram`
              - `aggregate_first` (boolean)
                When `true`, aggregates data before splitting into series. Defaults to `false`.
              - `collapse_by` (union anyOf)
                Aggregation function used to collapse a breakdown dimension into a single value.
                Values: `avg`, `sum`, `max`, `min`
              - `color` (union anyOf)
                Color mapping for dimension values, either categorical (for specific values) or as a gradient.
                Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
                Same options as `color` in `Date Histogram Operation`
              - `field` (string)
                Field to be used for the histogram.
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `granularity` (union number | enum · default: auto)
                Values: `auto`
              - `include_empty_rows` (boolean · default: true)
                When `true`, includes empty rows in the results.
              - `label` (string)
                Label for the operation
            - **Ranges Operation**
              - `operation` (enum)
                Values: `range`
              - `aggregate_first` (boolean)
                When `true`, aggregates data before splitting into series. Defaults to `false`.
              - `collapse_by` (union anyOf)
                Aggregation function used to collapse a breakdown dimension into a single value.
                Values: `avg`, `sum`, `max`, `min`
              - `color` (union anyOf)
                Color mapping for dimension values, either categorical (for specific values) or as a gradient.
                Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
                Same options as `color` in `Date Histogram Operation`
              - `field` (string)
                Field to be used for the range.
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `label` (string)
                Label for the operation
              - `ranges` (object[] · max items: 100)
                - `gt` (number)
                  Greater than.
                - `label` (string)
                  Label.
                - `lte` (number)
                  Less than or equal to.
            - **Filters Operation**
              - `operation` (enum)
                Values: `filters`
              - `aggregate_first` (boolean)
                When `true`, aggregates data before splitting into series. Defaults to `false`.
              - `collapse_by` (union anyOf)
                Aggregation function used to collapse a breakdown dimension into a single value.
                Values: `avg`, `sum`, `max`, `min`
              - `color` (union anyOf)
                Color mapping for dimension values, either categorical (for specific values) or as a gradient.
                Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
                Same options as `color` in `Date Histogram Operation`
              - `filters` (object[] · max items: 100)
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `label` (string)
                  Label for the filter
              - `label` (string)
                Label for the operation
          - `data_source` (union oneOf)
            Same options as `data_source` in `Metric Chart (library)`
          - `ignore_global_filters` (boolean · default: false)
            When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
          - `sampling` (number · min: 0 · max: 1 · default: 1)
            Sampling factor between 0 (no sampling) and 1 (full sampling).
          - `type` (enum)
            Chart type for the data layer
            Values: `area`, `area_percentage`, `area_stacked`, `bar`, `bar_horizontal`, `bar_horizontal_stacked`, `bar_horizontal_percentage`, `bar_percentage`, `bar_stacked`, `line`
          - `x` (union anyOf)
            - **Date Histogram Operation**
              - `operation` (enum)
                Values: `date_histogram`
              - `drop_partial_intervals` (boolean · default: false)
                When `true`, drops partial intervals from the results.
              - `field` (string)
                Field to be used for the date histogram.
              - `include_empty_rows` (boolean · default: true)
                When `true`, includes empty rows in the results.
              - `label` (string)
                Label for the operation
              - `suggested_interval` (string · default: auto)
                Suggested time interval.
              - `use_original_time_range` (boolean · default: false)
                When `true`, uses the original time range instead of the current query time range.
            - **Terms Operation**
              - `operation` (enum)
                Values: `terms`
              - `excludes` (object)
                - `as_regex` (boolean)
                  When `true`, treats the values as regular expressions.
                - `values` (union string[] | number[])
                  Values to exclude.
              - `fields` (string[] · min items: 1 · max items: 4)
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `includes` (object)
                - `as_regex` (boolean)
                  When `true`, treats the values as regular expressions.
                - `values` (union string[] | number[])
                  Values to include.
              - `increase_accuracy` (boolean)
                When `true`, increases accuracy at the cost of performance.
              - `label` (string)
                Label for the operation
              - `limit` (number · default: 5)
                Number of terms to return.
              - `other_bucket` (object)
                - `include_documents_without_field` (boolean)
                  When `true`, includes documents that do not have the specified field.
              - `rank_by` (union anyOf)
                Same options as `rank_by` in `Terms Operation`
            - **Histogram Operation**
              - `operation` (enum)
                Values: `histogram`
              - `field` (string)
                Field to be used for the histogram.
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `granularity` (union number | enum · default: auto)
                Values: `auto`
              - `include_empty_rows` (boolean · default: true)
                When `true`, includes empty rows in the results.
              - `label` (string)
                Label for the operation
            - **Ranges Operation**
              - `operation` (enum)
                Values: `range`
              - `field` (string)
                Field to be used for the range.
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `label` (string)
                Label for the operation
              - `ranges` (object[] · max items: 100)
                - `gt` (number)
                  Greater than.
                - `label` (string)
                  Label.
                - `lte` (number)
                  Less than or equal to.
            - **Filters Operation**
              - `operation` (enum)
                Values: `filters`
              - `filters` (object[] · max items: 100)
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `label` (string)
                  Label for the filter
              - `label` (string)
                Label for the operation
          - `y` (union anyOf[] · max items: 100)
            Array of metrics to display on Y-axis
            - `axis` (enum · default: y)
              The Y axis this metric is plotted on. Values match the root axis configuration keys (axis.y, axis.y2). If omitted, defaults to the Y axis start (leading) side.
              Values: `y`, `y2`
            - `color` (union anyOf · default: {"type":"auto"})
              - **Static Color**
                Fixed color for all values in the dimension.
                - `type` (enum)
                  Values: `static`
                - `color` (string)
                  The static color to be used for all values.
              - **Auto Color**
                Coloring determined at runtime based on chart defaults
                - `type` (enum)
                  Values: `auto`
        - **Reference Line Layer (DSL)**
          Reference line layer for standard queries
          - `data_source` (union oneOf)
            Same options as `data_source` in `Metric Chart (library)`
          - `ignore_global_filters` (boolean · default: false)
            When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
          - `sampling` (number · min: 0 · max: 1 · default: 1)
            Sampling factor between 0 (no sampling) and 1 (full sampling).
          - `thresholds` (union anyOf[] · min items: 1 · max items: 100)
            Array of reference line thresholds
            - `axis` (enum · default: y)
              The axis this reference line is drawn on. Values match the root axis configuration keys. If omitted, defaults to the primary Y axis.
              Values: `x`, `y`, `y2`
            - `color` (union anyOf · default: {"type":"auto"})
              - **Static Color**
                Fixed color for all values in the dimension.
                - `type` (enum)
                  Values: `static`
                - `color` (string)
                  The static color to be used for all values.
              - **Auto Color**
                Coloring determined at runtime based on chart defaults
                - `type` (enum)
                  Values: `auto`
            - `fill` (enum)
              Fill direction for reference line
              Values: `above`, `below`
            - `icon` (enum)
              Icon to display on the reference line
              Values: `asterisk`, `alert`, `bell`, `bolt`, `bug`, `circle`, `editor_comment`, `flag`, `heart`, `map_marker`, `pin_filled`, `star_empty`, `star_filled`, `tag`, `triangle`
            - `position` (enum)
              Position of the icon and label relative to the reference line
              Values: `auto`, `left`, `right`
            - `stroke_dash` (enum)
              Line style
              Values: `solid`, `dashed`, `dotted`
            - `stroke_width` (number · min: 1 · max: 10)
              Line width in pixels
            - `text` (object)
              Reference line text label configuration
              - `visible` (boolean)
                Show text label on the reference line
          - `type` (enum)
            Values: `reference_lines`
        - **Annotation Layer (DSL)**
          Layer containing annotations (query-based, points, and ranges)
          - `data_source` (union oneOf)
            Same options as `data_source` in `Metric Chart (library)`
          - `events` (union anyOf[] · min items: 1 · max items: 100)
            Array of annotation configurations
            - **type: query**
              Annotation from query results matching a filter
              - `type` (enum)
                Values: `query`
              - `color` (union anyOf · default: {"type":"auto"})
                - **Static Color**
                  Fixed color for all values in the dimension.
                  - `type` (enum)
                    Values: `static`
                  - `color` (string)
                    The static color to be used for all values.
                - **Auto Color**
                  Coloring determined at runtime based on chart defaults
                  - `type` (enum)
                    Values: `auto`
              - `extra_fields` (string[] · max items: 100)
                Additional fields for annotation tooltip
              - `icon` (enum)
                Icon to display at the annotation point
                Values: `asterisk`, `alert`, `bell`, `bolt`, `bug`, `circle`, `editor_comment`, `flag`, `heart`, `map_marker`, `pin_filled`, `star_empty`, `star_filled`, `tag`, `triangle`
              - `label` (string)
                Label text for the annotation
              - `line` (object)
                Vertical line configuration for point annotation
                - `stroke_dash` (enum)
                  Vertical line style
                  Values: `solid`, `dashed`, `dotted`
                - `stroke_width` (number · min: 1 · max: 10)
                  Vertical line width in pixels
              - `query` (object)
                A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                - `expression` (string)
                  A query expression in KQL or Lucene syntax
                - `language` (enum · default: kql)
                  Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                  Values: `kql`, `lucene`
              - `text` (object)
                Annotation text label configuration
                - `field` (string)
                  Field name for text label source
                - `visible` (boolean)
                  Show text label on the annotation
              - `time_field` (string)
                Field containing the timestamp
              - `visible` (boolean)
                Show the annotation
            - **type: point**
              Manual point annotation at specific timestamp
              - `type` (enum)
                Values: `point`
              - `color` (union anyOf · default: {"type":"auto"})
                - **Static Color**
                  Fixed color for all values in the dimension.
                  - `type` (enum)
                    Values: `static`
                  - `color` (string)
                    The static color to be used for all values.
                - **Auto Color**
                  Coloring determined at runtime based on chart defaults
                  - `type` (enum)
                    Values: `auto`
              - `icon` (enum)
                Icon to display at the annotation point
                Values: `asterisk`, `alert`, `bell`, `bolt`, `bug`, `circle`, `editor_comment`, `flag`, `heart`, `map_marker`, `pin_filled`, `star_empty`, `star_filled`, `tag`, `triangle`
              - `label` (string)
                Label text for the annotation
              - `line` (object)
                Vertical line configuration for point annotation
                - `stroke_dash` (enum)
                  Vertical line style
                  Values: `solid`, `dashed`, `dotted`
                - `stroke_width` (number · min: 1 · max: 10)
                  Vertical line width in pixels
              - `text` (object)
                Annotation text label visibility
                - `visible` (boolean)
                  Show text label on the annotation
              - `timestamp` (union number | string)
              - `visible` (boolean)
                Show the annotation
            - **type: range**
              Manual range annotation spanning time interval
              - `type` (enum)
                Values: `range`
              - `color` (union anyOf · default: {"type":"auto"})
                - **Static Color**
                  Fixed color for all values in the dimension.
                  - `type` (enum)
                    Values: `static`
                  - `color` (string)
                    The static color to be used for all values.
                - **Auto Color**
                  Coloring determined at runtime based on chart defaults
                  - `type` (enum)
                    Values: `auto`
              - `fill` (enum · default: inside)
                Fill direction for range
                Values: `inside`, `outside`
              - `interval` (object)
                Time range for annotation
                - `from` (union number | string)
                - `to` (union number | string)
              - `label` (string)
                Label text for the annotation
              - `visible` (boolean)
                Show the annotation
          - `ignore_global_filters` (boolean · default: false)
            When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
          - `type` (enum)
            Values: `annotations`
        - **Annotation Layer (By Reference)**
          Reference to a library annotation group
          - `group_id` (string)
            ID of the linked annotation group from the library
          - `type` (enum)
            Values: `annotation_group`
      - `legend` (union anyOf)
        Legend configuration for XY chart
        - **Outside horizontal**
          Outside legend positioned horizontal (top/bottom) of the chart
          - `layout` (union anyOf)
            - **type: grid**
              - `type` (enum)
                Values: `grid`
              - `truncate` (object)
                - `enabled` (boolean)
                  Enable truncation of legend items
                - `max_lines` (number · min: 1 · max: 10 · default: 1)
                  Number of lines before legend items are truncated.
            - **type: list**
              - `type` (enum)
                Values: `list`
          - `placement` (enum)
            Values: `outside`
          - `position` (enum)
            Values: `top`, `bottom`
          - `series_header` (object)
            Legend table series header configuration.
            - `text` (string)
              Legend table series header text.
            - `visible` (boolean)
              When true, shows the legend table series header.
          - `statistics` (enum[] · max items: 17)
            Statistics to display in legend
            Values: `min`, `max`, `avg`, `median`, `range`, `last_value`, `last_non_null_value`, `first_value`, `first_non_null_value`, `difference`, `difference_percentage`, `count`, `total`, `standard_deviation`, `variance`, `distinct_count`, `current_and_last_value`
          - `visibility` (enum)
            Legend visibility.
            Values: `auto`, `visible`, `hidden`
        - **Outside vertical**
          Outside legend positioned vertical (left/right) of the chart
          - `layout` (object)
            - `truncate` (object)
              - `enabled` (boolean)
                Enable truncation of legend items
              - `max_lines` (number · min: 1 · max: 10 · default: 1)
                Number of lines before legend items are truncated.
            - `type` (enum)
              Values: `grid`
          - `placement` (enum)
            Values: `outside`
          - `position` (enum)
            Values: `left`, `right`
          - `series_header` (object)
            Legend table series header configuration.
            - `text` (string)
              Legend table series header text.
            - `visible` (boolean)
              When true, shows the legend table series header.
          - `size` (union anyOf)
            Legend size.
            Values: `auto`, `s`, `m`, `l`, `xl`
          - `statistics` (enum[] · max items: 17)
            Statistics to display in legend
            Values: `min`, `max`, `avg`, `median`, `range`, `last_value`, `last_non_null_value`, `first_value`, `first_non_null_value`, `difference`, `difference_percentage`, `count`, `total`, `standard_deviation`, `variance`, `distinct_count`, `current_and_last_value`
          - `visibility` (enum)
            Legend visibility.
            Values: `auto`, `visible`, `hidden`
        - **Inside**
          Inside legend
          - `columns` (number · min: 1 · max: 5)
            Number of legend columns
          - `layout` (object)
            - `truncate` (object)
              - `enabled` (boolean)
                Enable truncation of legend items
              - `max_lines` (number · min: 1 · max: 10 · default: 1)
                Number of lines before legend items are truncated.
            - `type` (enum)
              Values: `grid`
          - `placement` (enum)
            Values: `inside`
          - `position` (enum)
            Legend position inside the chart
            Values: `top_left`, `top_right`, `bottom_left`, `bottom_right`
          - `series_header` (object)
            Legend table series header configuration.
            - `text` (string)
              Legend table series header text.
            - `visible` (boolean)
              When true, shows the legend table series header.
          - `statistics` (enum[] · max items: 17)
            Statistics to display in legend
            Values: `min`, `max`, `avg`, `median`, `range`, `last_value`, `last_non_null_value`, `first_value`, `first_non_null_value`, `difference`, `difference_percentage`, `count`, `total`, `standard_deviation`, `variance`, `distinct_count`, `current_and_last_value`
          - `visibility` (enum)
            Legend visibility.
            Values: `auto`, `visible`, `hidden`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `styling` (object)
        Visual styling options for the chart
        - `areas` (object)
          Area-specific rendering settings
          - `fill` (enum · default: gradient)
            Area fill type: solid or gradient.
            Values: `solid`, `gradient`
          - `fill_opacity` (number · min: 0 · max: 2 · default: 0.3)
            Area fill opacity (0-1 typical, max 2 for legacy)
        - `bars` (object)
          Bar-specific rendering settings
          - `data_labels` (object)
            Data label configuration for bar series
            - `visible` (boolean · default: false)
              Display value labels on bar data points
          - `minimum_height` (number · min: 0 · default: 1)
            Minimum bar height in pixels
        - `fitting` (object)
          Missing data interpolation configuration for line and area series
          - `emphasize` (boolean)
            Visually distinguish fitted segments with a dashed line style and reduced area opacity
          - `extend` (enum)
            How to render line and area edges when data does not cover the full X domain
            Values: `none`, `zero`, `nearest`
          - `type` (enum)
            Fitting function type for missing data
            Values: `none`, `zero`, `linear`, `carry`, `lookahead`, `average`, `nearest`
        - `interpolation` (enum)
          Curve interpolation method for line and area series. Defaults to linear.
          Values: `linear`, `smooth`, `stepped`
        - `overlays` (object)
          Visual overlays drawn on top of the chart canvas
          - `current_time_marker` (object)
            Current time marker configuration
            - `visible` (boolean · default: false)
              Show current time marker line
          - `partial_buckets` (object)
            Partial (incomplete) bucket indicator configuration
            - `visible` (boolean · default: false)
              Show partial bucket indicators at time range edges
        - `points` (object)
          Data point marker settings for line and area series
          - `visibility` (enum · default: auto)
            Data point marker visibility on line and area series
            Values: `auto`, `visible`, `hidden`
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **Gauge Chart (library)**
      - `type` (enum)
        Values: `gauge`
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `metric` (union anyOf)
        - **Count Metric Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration for the gauge fill.
            - **Color By Value**
              Dynamic color mapping by numeric range, with support for absolute and percentage-based ranges and for named palettes.
              Any of:
              - **Color By Value (Absolute)**
                Color by absolute value configuration
                - `range` (enum)
                  Values: `absolute`
                - `steps` (object[] · min items: 1 · max items: 100)
                  Array of ordered color steps defining the range each color is applied.
                  - `color` (string)
                    The color to use for this step.
                  - `gte` (number) — nullable
                    The lower bound of range from which this color applies (inclusive).
                  - `lt` (number) — nullable
                    The upper bound of range to which this color applies (exclusive).
                  - `lte` (number) — nullable
                    The upper bound of range to which this color applies (inclusive).
                - `type` (enum)
                  Values: `dynamic`
              - **Color By Value (Percentage)**
                Color by percentage value configuration
                - `range` (enum)
                  Values: `percentage`
                - `steps` (object[] · min items: 1 · max items: 100)
                  Array of ordered color steps defining the range each color is applied.
                  - `color` (string)
                    The color to use for this step.
                  - `gte` (number) — nullable
                    The lower bound of range from which this color applies (inclusive).
                  - `lt` (number) — nullable
                    The upper bound of range to which this color applies (exclusive).
                  - `lte` (number) — nullable
                    The upper bound of range to which this color applies (inclusive).
                - `type` (enum)
                  Values: `dynamic`
              - **Color By Value (Palette)**
                Color by value using a palette, with colors distributed across the range of values.
                - `palette` (enum)
                  The name of the palette to apply across the value range.
                  Values: `status`, `temperature`, `complementary`, `negative`, `positive`, `cool`, `warm`, `gray`
                - `type` (enum)
                  Values: `distributed_palette`
              - **Legacy color by value**
                Legacy color by value configuration
                - `palette` (string)
                  The legacy palette name.
                - `range` (enum)
                  Determines whether the range is interpreted as absolute or as a percentage of the data.
                  Values: `absolute`, `percentage`
                - `shift` (boolean)
                  When `true`, shifts the palette colors so they start from a different offset. Defaults to `false`.
                - `steps` (object[] · min items: 1 · max items: 100)
                  Array of ordered color steps defining the range each color is applied.
                  - `color` (string)
                    The color to use for this step.
                  - `gte` (number) — nullable
                    The lower bound of range from which this color applies (inclusive).
                  - `lt` (number) — nullable
                    The upper bound of range to which this color applies (exclusive).
                  - `lte` (number) — nullable
                    The upper bound of range to which this color applies (inclusive).
                - `type` (enum)
                  Values: `legacy_dynamic`
            - **No Color**
              Explicitly disables coloring
              - `type` (enum)
                Values: `none`
            - **Auto Color**
              Coloring determined at runtime based on chart defaults
              - `type` (enum)
                Values: `auto`
          - `goal` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            - **Field Metric Operations**
              Any of:
              - **Unique Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `unique_count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Stats Metric Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `min`, `max`, `average`, `median`, `standard_deviation`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Sum Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `sum`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Last Value Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `multi_value` (boolean · default: false)
                  Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
                - `operation` (enum)
                  Values: `last_value`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_field` (string)
                  Time field used to determine document recency
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile`
                - `percentile` (number · default: 95)
                  Percentile
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Ranks Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile_rank`
                - `rank` (number · default: 0)
                  Percentile Rank
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
            - **Static Operation Definition**
              - `operation` (enum)
                Values: `static_value`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `label` (string)
                Label for the operation
              - `value` (number · default: 100)
                Static value
            - **Formula Operation**
              - `operation` (enum)
                Values: `formula`
              - `filter` (object)
                A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                - `expression` (string)
                  A query expression in KQL or Lucene syntax
                - `language` (enum · default: kql)
                  Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                  Values: `kql`, `lucene`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `formula` (string)
                Formula
              - `label` (string)
                Label for the operation
              - `reduced_time_range` (string)
                Reduced time range
              - `time_scale` (enum)
                Time scale
                Values: `s`, `m`, `h`, `d`
          - `max` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Count Metric Operation`
          - `min` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Count Metric Operation`
          - `subtitle` (string)
            Subtitle below the gauge value.
          - `ticks` (object)
            Ticks configuration
            - `mode` (enum · default: bands)
              Tick placement mode.
              Values: `auto`, `bands`
            - `visible` (boolean · default: true)
              When `true`, displays tick marks on the gauge.
          - `title` (object)
            Title configuration
            - `text` (string)
              Title text.
            - `visible` (boolean · default: true)
              When `true`, displays the title.
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `count`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Unique Count Metric Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration for the gauge fill.
            Same options as `color` in `Count Metric Operation`
          - `goal` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            - **Field Metric Operations**
              Any of:
              - **Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Stats Metric Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `min`, `max`, `average`, `median`, `standard_deviation`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Sum Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `sum`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Last Value Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `multi_value` (boolean · default: false)
                  Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
                - `operation` (enum)
                  Values: `last_value`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_field` (string)
                  Time field used to determine document recency
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile`
                - `percentile` (number · default: 95)
                  Percentile
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Ranks Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile_rank`
                - `rank` (number · default: 0)
                  Percentile Rank
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
            - **Static Operation Definition**
              - `operation` (enum)
                Values: `static_value`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `label` (string)
                Label for the operation
              - `value` (number · default: 100)
                Static value
            - **Formula Operation**
              - `operation` (enum)
                Values: `formula`
              - `filter` (object)
                A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                - `expression` (string)
                  A query expression in KQL or Lucene syntax
                - `language` (enum · default: kql)
                  Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                  Values: `kql`, `lucene`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `formula` (string)
                Formula
              - `label` (string)
                Label for the operation
              - `reduced_time_range` (string)
                Reduced time range
              - `time_scale` (enum)
                Time scale
                Values: `s`, `m`, `h`, `d`
          - `max` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Unique Count Metric Operation`
          - `min` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Unique Count Metric Operation`
          - `subtitle` (string)
            Subtitle below the gauge value.
          - `ticks` (object)
            Ticks configuration
            - `mode` (enum · default: bands)
              Tick placement mode.
              Values: `auto`, `bands`
            - `visible` (boolean · default: true)
              When `true`, displays tick marks on the gauge.
          - `title` (object)
            Title configuration
            - `text` (string)
              Title text.
            - `visible` (boolean · default: true)
              When `true`, displays the title.
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `unique_count`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Stats Metric Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration for the gauge fill.
            Same options as `color` in `Count Metric Operation`
          - `goal` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            - **Field Metric Operations**
              Any of:
              - **Count Metric Operation**
                - `operation` (enum)
                  Values: `count`
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Unique Count Metric Operation**
                - `operation` (enum)
                  Values: `unique_count`
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Sum Metric Operation**
                - `operation` (enum)
                  Values: `sum`
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Last Value Operation**
                - `operation` (enum)
                  Values: `last_value`
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `multi_value` (boolean · default: false)
                  Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_field` (string)
                  Time field used to determine document recency
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Operation**
                - `operation` (enum)
                  Values: `percentile`
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `percentile` (number · default: 95)
                  Percentile
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Ranks Operation**
                - `operation` (enum)
                  Values: `percentile_rank`
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `rank` (number · default: 0)
                  Percentile Rank
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
            - **Static Operation Definition**
              - `operation` (enum)
                Values: `static_value`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `label` (string)
                Label for the operation
              - `value` (number · default: 100)
                Static value
            - **Formula Operation**
              - `operation` (enum)
                Values: `formula`
              - `filter` (object)
                A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                - `expression` (string)
                  A query expression in KQL or Lucene syntax
                - `language` (enum · default: kql)
                  Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                  Values: `kql`, `lucene`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `formula` (string)
                Formula
              - `label` (string)
                Label for the operation
              - `reduced_time_range` (string)
                Reduced time range
              - `time_scale` (enum)
                Time scale
                Values: `s`, `m`, `h`, `d`
          - `max` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Stats Metric Operation`
          - `min` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Stats Metric Operation`
          - `subtitle` (string)
            Subtitle below the gauge value.
          - `ticks` (object)
            Ticks configuration
            - `mode` (enum · default: bands)
              Tick placement mode.
              Values: `auto`, `bands`
            - `visible` (boolean · default: true)
              When `true`, displays tick marks on the gauge.
          - `title` (object)
            Title configuration
            - `text` (string)
              Title text.
            - `visible` (boolean · default: true)
              When `true`, displays the title.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `min`, `max`, `average`, `median`, `standard_deviation`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Sum Metric Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration for the gauge fill.
            Same options as `color` in `Count Metric Operation`
          - `goal` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            - **Field Metric Operations**
              Any of:
              - **Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Unique Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `unique_count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Stats Metric Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `min`, `max`, `average`, `median`, `standard_deviation`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Last Value Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `multi_value` (boolean · default: false)
                  Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
                - `operation` (enum)
                  Values: `last_value`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_field` (string)
                  Time field used to determine document recency
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile`
                - `percentile` (number · default: 95)
                  Percentile
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Ranks Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile_rank`
                - `rank` (number · default: 0)
                  Percentile Rank
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
            - **Static Operation Definition**
              - `operation` (enum)
                Values: `static_value`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `label` (string)
                Label for the operation
              - `value` (number · default: 100)
                Static value
            - **Formula Operation**
              - `operation` (enum)
                Values: `formula`
              - `filter` (object)
                A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                - `expression` (string)
                  A query expression in KQL or Lucene syntax
                - `language` (enum · default: kql)
                  Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                  Values: `kql`, `lucene`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `formula` (string)
                Formula
              - `label` (string)
                Label for the operation
              - `reduced_time_range` (string)
                Reduced time range
              - `time_scale` (enum)
                Time scale
                Values: `s`, `m`, `h`, `d`
          - `max` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Sum Metric Operation`
          - `min` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Sum Metric Operation`
          - `subtitle` (string)
            Subtitle below the gauge value.
          - `ticks` (object)
            Ticks configuration
            - `mode` (enum · default: bands)
              Tick placement mode.
              Values: `auto`, `bands`
            - `visible` (boolean · default: true)
              When `true`, displays tick marks on the gauge.
          - `title` (object)
            Title configuration
            - `text` (string)
              Title text.
            - `visible` (boolean · default: true)
              When `true`, displays the title.
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `sum`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Last Value Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration for the gauge fill.
            Same options as `color` in `Count Metric Operation`
          - `goal` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            - **Field Metric Operations**
              Any of:
              - **Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Unique Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `unique_count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Stats Metric Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `min`, `max`, `average`, `median`, `standard_deviation`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Sum Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `sum`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile`
                - `percentile` (number · default: 95)
                  Percentile
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Ranks Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile_rank`
                - `rank` (number · default: 0)
                  Percentile Rank
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
            - **Static Operation Definition**
              - `operation` (enum)
                Values: `static_value`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `label` (string)
                Label for the operation
              - `value` (number · default: 100)
                Static value
            - **Formula Operation**
              - `operation` (enum)
                Values: `formula`
              - `filter` (object)
                A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                - `expression` (string)
                  A query expression in KQL or Lucene syntax
                - `language` (enum · default: kql)
                  Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                  Values: `kql`, `lucene`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `formula` (string)
                Formula
              - `label` (string)
                Label for the operation
              - `reduced_time_range` (string)
                Reduced time range
              - `time_scale` (enum)
                Time scale
                Values: `s`, `m`, `h`, `d`
          - `max` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Last Value Operation`
          - `min` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Last Value Operation`
          - `subtitle` (string)
            Subtitle below the gauge value.
          - `ticks` (object)
            Ticks configuration
            - `mode` (enum · default: bands)
              Tick placement mode.
              Values: `auto`, `bands`
            - `visible` (boolean · default: true)
              When `true`, displays tick marks on the gauge.
          - `title` (object)
            Title configuration
            - `text` (string)
              Title text.
            - `visible` (boolean · default: true)
              When `true`, displays the title.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `multi_value` (boolean · default: false)
            Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
          - `operation` (enum)
            Values: `last_value`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_field` (string)
            Time field used to determine document recency
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Percentile Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration for the gauge fill.
            Same options as `color` in `Count Metric Operation`
          - `goal` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            - **Field Metric Operations**
              Any of:
              - **Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Unique Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `unique_count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Stats Metric Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `min`, `max`, `average`, `median`, `standard_deviation`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Sum Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `sum`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Last Value Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `multi_value` (boolean · default: false)
                  Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
                - `operation` (enum)
                  Values: `last_value`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_field` (string)
                  Time field used to determine document recency
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Ranks Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile_rank`
                - `rank` (number · default: 0)
                  Percentile Rank
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
            - **Static Operation Definition**
              - `operation` (enum)
                Values: `static_value`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `label` (string)
                Label for the operation
              - `value` (number · default: 100)
                Static value
            - **Formula Operation**
              - `operation` (enum)
                Values: `formula`
              - `filter` (object)
                A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                - `expression` (string)
                  A query expression in KQL or Lucene syntax
                - `language` (enum · default: kql)
                  Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                  Values: `kql`, `lucene`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `formula` (string)
                Formula
              - `label` (string)
                Label for the operation
              - `reduced_time_range` (string)
                Reduced time range
              - `time_scale` (enum)
                Time scale
                Values: `s`, `m`, `h`, `d`
          - `max` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Percentile Operation`
          - `min` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Percentile Operation`
          - `subtitle` (string)
            Subtitle below the gauge value.
          - `ticks` (object)
            Ticks configuration
            - `mode` (enum · default: bands)
              Tick placement mode.
              Values: `auto`, `bands`
            - `visible` (boolean · default: true)
              When `true`, displays tick marks on the gauge.
          - `title` (object)
            Title configuration
            - `text` (string)
              Title text.
            - `visible` (boolean · default: true)
              When `true`, displays the title.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `percentile`
          - `percentile` (number · default: 95)
            Percentile
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Percentile Ranks Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration for the gauge fill.
            Same options as `color` in `Count Metric Operation`
          - `goal` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            - **Field Metric Operations**
              Any of:
              - **Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Unique Count Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `unique_count`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Stats Metric Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `min`, `max`, `average`, `median`, `standard_deviation`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Sum Metric Operation**
                - `empty_as_null` (boolean · default: false)
                  When `true`, treats empty buckets as null instead of zero.
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `sum`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Last Value Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `multi_value` (boolean · default: false)
                  Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
                - `operation` (enum)
                  Values: `last_value`
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_field` (string)
                  Time field used to determine document recency
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
              - **Percentile Operation**
                - `field` (string)
                  Field to be used for the metric
                - `filter` (object)
                  A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                  - `expression` (string)
                    A query expression in KQL or Lucene syntax
                  - `language` (enum · default: kql)
                    Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                    Values: `kql`, `lucene`
                - `format` (union anyOf)
                  Number display format for the dimension value.
                  Same options as `format` in `Terms Operation`
                - `label` (string)
                  Label for the operation
                - `operation` (enum)
                  Values: `percentile`
                - `percentile` (number · default: 95)
                  Percentile
                - `reduced_time_range` (string)
                  Reduced time range
                - `time_scale` (union anyOf)
                  Time scale
                  Values: `s`, `m`, `h`, `d`
                - `time_shift` (string)
                  Time shift
            - **Static Operation Definition**
              - `operation` (enum)
                Values: `static_value`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `label` (string)
                Label for the operation
              - `value` (number · default: 100)
                Static value
            - **Formula Operation**
              - `operation` (enum)
                Values: `formula`
              - `filter` (object)
                A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
                - `expression` (string)
                  A query expression in KQL or Lucene syntax
                - `language` (enum · default: kql)
                  Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                  Values: `kql`, `lucene`
              - `format` (union anyOf)
                Number display format for the dimension value.
                Same options as `format` in `Terms Operation`
              - `formula` (string)
                Formula
              - `label` (string)
                Label for the operation
              - `reduced_time_range` (string)
                Reduced time range
              - `time_scale` (enum)
                Time scale
                Values: `s`, `m`, `h`, `d`
          - `max` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Percentile Ranks Operation`
          - `min` (union anyOf)
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
            Same options as `goal` in `Percentile Ranks Operation`
          - `subtitle` (string)
            Subtitle below the gauge value.
          - `ticks` (object)
            Ticks configuration
            - `mode` (enum · default: bands)
              Tick placement mode.
              Values: `auto`, `bands`
            - `visible` (boolean · default: true)
              When `true`, displays tick marks on the gauge.
          - `title` (object)
            Title configuration
            - `text` (string)
              Title text.
            - `visible` (boolean · default: true)
              When `true`, displays the title.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `percentile_rank`
          - `rank` (number · default: 0)
            Percentile Rank
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Formula Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color configuration for the gauge fill.
            Same options as `color` in `Count Metric Operation`
          - `goal` (union anyOf) — recursive
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
          - `max` (union anyOf) — recursive
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
          - `min` (union anyOf) — recursive
            Metric dimension using a field-based aggregation, a static value, or a mathematical formula.
          - `subtitle` (string)
            Subtitle below the gauge value.
          - `ticks` (object)
            Ticks configuration
            - `mode` (enum · default: bands)
              Tick placement mode.
              Values: `auto`, `bands`
            - `visible` (boolean · default: true)
              When `true`, displays tick marks on the gauge.
          - `title` (object)
            Title configuration
            - `text` (string)
              Title text.
            - `visible` (boolean · default: true)
              When `true`, displays the title.
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `formula` (string)
            Formula
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `formula`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (enum)
            Time scale
            Values: `s`, `m`, `h`, `d`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `styling` (object)
        Visual chart styling options
        - `shape` (union anyOf)
          Default: `{"orientation":"horizontal","type":"bullet"}`
          - **Shape (Bullet)**
            Bullet gauge shape.
            - `orientation` (enum)
              Orientation
              Values: `horizontal`, `vertical`
            - `type` (enum)
              Values: `bullet`
          - **Shape (Circular)**
            Circular gauge shape.
            - `type` (enum)
              Values: `circle`, `semi_circle`, `arc`
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **Heatmap Chart (library)**
      - `type` (enum)
        Values: `heatmap`
      - `axis` (object)
        Axis configuration for X and Y axes
        - `x` (object)
          X axis configuration
          - `labels` (object)
            - `orientation` (enum)
              Orientation
              Values: `horizontal`, `vertical`, `angled`
            - `visible` (boolean · default: true)
              Show axis labels
          - `scale` (enum)
            X-axis scale type. Use 'temporal' for timestamp/date fields (for example, @timestamp or DATE_TRUNC results). Use 'ordinal' for categorical/text fields. Use 'linear' for numeric fields.
            Values: `ordinal`, `temporal`, `linear`
          - `sort` (enum)
            Axis sort order; omit or use undefined for no sorting
            Values: `asc`, `desc`
          - `title` (object)
            - `text` (string)
              Axis title text.
            - `visible` (boolean)
              When `true`, displays the title.
        - `y` (object)
          Y axis configuration
          - `labels` (object)
            - `visible` (boolean · default: true)
              Show axis labels
          - `sort` (enum)
            Axis sort order; omit or use undefined for no sorting
            Values: `asc`, `desc`
          - `title` (object)
            - `text` (string)
              Axis title text.
            - `visible` (boolean)
              When `true`, displays the title.
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `legend` (object)
        Legend configuration
        - `position` (enum)
          Values: `top`, `bottom`, `left`, `right`
        - `size` (union anyOf)
          Legend size.
          Values: `auto`, `s`, `m`, `l`, `xl`
        - `truncate_after_lines` (number · min: 1 · max: 10 · default: 1)
          Number of lines before legend items are truncated.
        - `visibility` (enum)
          Legend visibility.
          Values: `visible`, `hidden`
      - `metric` (union anyOf)
        - **Count Metric Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            - **Color By Value**
              Dynamic color mapping by numeric range, with support for absolute and percentage-based ranges and for named palettes.
              Any of:
              - **Color By Value (Absolute)**
                Color by absolute value configuration
                - `range` (enum)
                  Values: `absolute`
                - `steps` (object[] · min items: 1 · max items: 100)
                  Array of ordered color steps defining the range each color is applied.
                  - `color` (string)
                    The color to use for this step.
                  - `gte` (number) — nullable
                    The lower bound of range from which this color applies (inclusive).
                  - `lt` (number) — nullable
                    The upper bound of range to which this color applies (exclusive).
                  - `lte` (number) — nullable
                    The upper bound of range to which this color applies (inclusive).
                - `type` (enum)
                  Values: `dynamic`
              - **Color By Value (Percentage)**
                Color by percentage value configuration
                - `range` (enum)
                  Values: `percentage`
                - `steps` (object[] · min items: 1 · max items: 100)
                  Array of ordered color steps defining the range each color is applied.
                  - `color` (string)
                    The color to use for this step.
                  - `gte` (number) — nullable
                    The lower bound of range from which this color applies (inclusive).
                  - `lt` (number) — nullable
                    The upper bound of range to which this color applies (exclusive).
                  - `lte` (number) — nullable
                    The upper bound of range to which this color applies (inclusive).
                - `type` (enum)
                  Values: `dynamic`
              - **Color By Value (Palette)**
                Color by value using a palette, with colors distributed across the range of values.
                - `palette` (enum)
                  The name of the palette to apply across the value range.
                  Values: `status`, `temperature`, `complementary`, `negative`, `positive`, `cool`, `warm`, `gray`
                - `type` (enum)
                  Values: `distributed_palette`
              - **Legacy color by value**
                Legacy color by value configuration
                - `palette` (string)
                  The legacy palette name.
                - `range` (enum)
                  Determines whether the range is interpreted as absolute or as a percentage of the data.
                  Values: `absolute`, `percentage`
                - `shift` (boolean)
                  When `true`, shifts the palette colors so they start from a different offset. Defaults to `false`.
                - `steps` (object[] · min items: 1 · max items: 100)
                  Array of ordered color steps defining the range each color is applied.
                  - `color` (string)
                    The color to use for this step.
                  - `gte` (number) — nullable
                    The lower bound of range from which this color applies (inclusive).
                  - `lt` (number) — nullable
                    The upper bound of range to which this color applies (exclusive).
                  - `lte` (number) — nullable
                    The upper bound of range to which this color applies (inclusive).
                - `type` (enum)
                  Values: `legacy_dynamic`
            - **Auto Color**
              Coloring determined at runtime based on chart defaults
              - `type` (enum)
                Values: `auto`
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `count`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Unique Count Metric Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `unique_count`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Stats Metric Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `min`, `max`, `average`, `median`, `standard_deviation`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Sum Metric Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `sum`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Last Value Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `multi_value` (boolean · default: false)
            Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
          - `operation` (enum)
            Values: `last_value`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_field` (string)
            Time field used to determine document recency
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Percentile Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `percentile`
          - `percentile` (number · default: 95)
            Percentile
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Percentile Ranks Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `percentile_rank`
          - `rank` (number · default: 0)
            Percentile Rank
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Differences Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `of` (union anyOf)
            Same options as `of` in `Differences Operation`
          - `operation` (enum)
            Values: `differences`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Moving Average Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `of` (union anyOf)
            Same options as `of` in `Differences Operation`
          - `operation` (enum)
            Values: `moving_average`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
          - `window` (number · default: 5)
            Window
        - **Cumulative Sum Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `field` (string)
            Field to cumulatively sum. When omitted, cumulative sum is applied to the count of records.
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `cumulative_sum`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Counter Rate Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `counter_rate`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Formula Operation**
          - `color` (union anyOf · default: {"type":"auto"})
            Color scale configuration for the heatmap cells.
            Same options as `color` in `Count Metric Operation`
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `formula` (string)
            Formula
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `formula`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (enum)
            Time scale
            Values: `s`, `m`, `h`, `d`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `styling` (object)
        Visual chart styling options
        - `cells` (object)
          Cells configuration
          - `labels` (object)
            - `visible` (boolean · default: false)
              Show cell labels
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
      - `x` (union anyOf)
        Breakdown dimension configuration using date histogram, terms, numeric histogram, value ranges, or custom filters.
        Same options as `x` in `Layer (DSL)`
      - `y` (union anyOf)
        Breakdown dimension configuration using date histogram, terms, numeric histogram, value ranges, or custom filters.
        Same options as `x` in `Layer (DSL)`
    - **Tag Cloud Chart (library)**
      - `type` (enum)
        Values: `tag_cloud`
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `metric` (union anyOf)
        - **Count Metric Operation**
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `count`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Unique Count Metric Operation**
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `unique_count`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Stats Metric Operation**
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `min`, `max`, `average`, `median`, `standard_deviation`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Sum Metric Operation**
          - `empty_as_null` (boolean · default: false)
            When `true`, treats empty buckets as null instead of zero.
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `sum`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Last Value Operation**
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `multi_value` (boolean · default: false)
            Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
          - `operation` (enum)
            Values: `last_value`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_field` (string)
            Time field used to determine document recency
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Percentile Operation**
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `percentile`
          - `percentile` (number · default: 95)
            Percentile
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Percentile Ranks Operation**
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `percentile_rank`
          - `rank` (number · default: 0)
            Percentile Rank
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Differences Operation**
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `of` (union anyOf)
            Same options as `of` in `Differences Operation`
          - `operation` (enum)
            Values: `differences`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Moving Average Operation**
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `of` (union anyOf)
            Same options as `of` in `Differences Operation`
          - `operation` (enum)
            Values: `moving_average`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
          - `window` (number · default: 5)
            Window
        - **Cumulative Sum Operation**
          - `field` (string)
            Field to cumulatively sum. When omitted, cumulative sum is applied to the count of records.
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `cumulative_sum`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Counter Rate Operation**
          - `field` (string)
            Field to be used for the metric
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `counter_rate`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (union anyOf)
            Time scale
            Values: `s`, `m`, `h`, `d`
          - `time_shift` (string)
            Time shift
        - **Formula Operation**
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `formula` (string)
            Formula
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `formula`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (enum)
            Time scale
            Values: `s`, `m`, `h`, `d`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `styling` (object)
        Visual chart styling options
        - `caption` (object)
          Caption configuration representing the metric and the tag_by operations labels
          - `visible` (boolean · default: true)
            When `true`, displays the caption.
        - `font_size` (object)
          Font size range for tags.
          - `max` (number · max: 120 · default: 72)
            Maximum font size.
          - `min` (number · min: 1 · default: 18)
            Minimum font size.
        - `orientation` (enum)
          Orientation
          Values: `horizontal`, `vertical`, `angled`
      - `tag_by` (union anyOf)
        - **Date Histogram Operation**
          - `operation` (enum)
            Values: `date_histogram`
          - `color` (union anyOf)
            Color mapping for dimension values, either categorical (for specific values) or as a gradient.
            Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
            Same options as `color` in `Date Histogram Operation`
          - `drop_partial_intervals` (boolean · default: false)
            When `true`, drops partial intervals from the results.
          - `field` (string)
            Field to be used for the date histogram.
          - `include_empty_rows` (boolean · default: true)
            When `true`, includes empty rows in the results.
          - `label` (string)
            Label for the operation
          - `suggested_interval` (string · default: auto)
            Suggested time interval.
          - `use_original_time_range` (boolean · default: false)
            When `true`, uses the original time range instead of the current query time range.
        - **Terms Operation**
          - `operation` (enum)
            Values: `terms`
          - `color` (union anyOf)
            Color mapping for dimension values, either categorical (for specific values) or as a gradient.
            Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
            Same options as `color` in `Date Histogram Operation`
          - `excludes` (object)
            - `as_regex` (boolean)
              When `true`, treats the values as regular expressions.
            - `values` (union string[] | number[])
              Values to exclude.
          - `fields` (string[] · min items: 1 · max items: 4)
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `includes` (object)
            - `as_regex` (boolean)
              When `true`, treats the values as regular expressions.
            - `values` (union string[] | number[])
              Values to include.
          - `increase_accuracy` (boolean)
            When `true`, increases accuracy at the cost of performance.
          - `label` (string)
            Label for the operation
          - `limit` (number · default: 5)
            Number of terms to return.
          - `other_bucket` (object)
            - `include_documents_without_field` (boolean)
              When `true`, includes documents that do not have the specified field.
          - `rank_by` (union anyOf)
            Same options as `rank_by` in `Terms Operation`
        - **Histogram Operation**
          - `operation` (enum)
            Values: `histogram`
          - `color` (union anyOf)
            Color mapping for dimension values, either categorical (for specific values) or as a gradient.
            Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
            Same options as `color` in `Date Histogram Operation`
          - `field` (string)
            Field to be used for the histogram.
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `granularity` (union number | enum · default: auto)
            Values: `auto`
          - `include_empty_rows` (boolean · default: true)
            When `true`, includes empty rows in the results.
          - `label` (string)
            Label for the operation
        - **Ranges Operation**
          - `operation` (enum)
            Values: `range`
          - `color` (union anyOf)
            Color mapping for dimension values, either categorical (for specific values) or as a gradient.
            Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
            Same options as `color` in `Date Histogram Operation`
          - `field` (string)
            Field to be used for the range.
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `ranges` (object[] · max items: 100)
            - `gt` (number)
              Greater than.
            - `label` (string)
              Label.
            - `lte` (number)
              Less than or equal to.
        - **Filters Operation**
          - `operation` (enum)
            Values: `filters`
          - `color` (union anyOf)
            Color mapping for dimension values, either categorical (for specific values) or as a gradient.
            Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
            Same options as `color` in `Date Histogram Operation`
          - `filters` (object[] · max items: 100)
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `label` (string)
              Label for the filter
          - `label` (string)
            Label for the operation
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **Region Map Chart (library)**
      - `type` (enum)
        Values: `region_map`
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `metric` (union anyOf)
        Metric dimension using a field-based aggregation or a mathematical formula.
        - **Field Metric Operations**
          Any of:
          - **Count Metric Operation**
            - `empty_as_null` (boolean · default: false)
              When `true`, treats empty buckets as null instead of zero.
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `count`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Unique Count Metric Operation**
            - `empty_as_null` (boolean · default: false)
              When `true`, treats empty buckets as null instead of zero.
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `unique_count`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Stats Metric Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `min`, `max`, `average`, `median`, `standard_deviation`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Sum Metric Operation**
            - `empty_as_null` (boolean · default: false)
              When `true`, treats empty buckets as null instead of zero.
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `sum`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Last Value Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `multi_value` (boolean · default: false)
              Whether to return all values for multi-value fields. Only affects data table and metric charts; other charts use the last value from the array.
            - `operation` (enum)
              Values: `last_value`
            - `reduced_time_range` (string)
              Reduced time range
            - `time_field` (string)
              Time field used to determine document recency
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Percentile Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `percentile`
            - `percentile` (number · default: 95)
              Percentile
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
          - **Percentile Ranks Operation**
            - `field` (string)
              Field to be used for the metric
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `format` (union anyOf)
              Number display format for the dimension value.
              Same options as `format` in `Terms Operation`
            - `label` (string)
              Label for the operation
            - `operation` (enum)
              Values: `percentile_rank`
            - `rank` (number · default: 0)
              Percentile Rank
            - `reduced_time_range` (string)
              Reduced time range
            - `time_scale` (union anyOf)
              Time scale
              Values: `s`, `m`, `h`, `d`
            - `time_shift` (string)
              Time shift
        - **Formula Operation**
          - `filter` (object)
            A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
            - `expression` (string)
              A query expression in KQL or Lucene syntax
            - `language` (enum · default: kql)
              Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
              Values: `kql`, `lucene`
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `formula` (string)
            Formula
          - `label` (string)
            Label for the operation
          - `operation` (enum)
            Values: `formula`
          - `reduced_time_range` (string)
            Reduced time range
          - `time_scale` (enum)
            Time scale
            Values: `s`, `m`, `h`, `d`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `region` (union anyOf)
        - **Date Histogram Operation**
          - `operation` (enum)
            Values: `date_histogram`
          - `ems` (object)
            - `boundaries` (string)
              EMS boundaries
            - `join` (string)
              EMS join field
          - `drop_partial_intervals` (boolean · default: false)
            When `true`, drops partial intervals from the results.
          - `field` (string)
            Field to be used for the date histogram.
          - `include_empty_rows` (boolean · default: true)
            When `true`, includes empty rows in the results.
          - `label` (string)
            Label for the operation
          - `suggested_interval` (string · default: auto)
            Suggested time interval.
          - `use_original_time_range` (boolean · default: false)
            When `true`, uses the original time range instead of the current query time range.
        - **Terms Operation**
          - `operation` (enum)
            Values: `terms`
          - `ems` (object)
            - `boundaries` (string)
              EMS boundaries
            - `join` (string)
              EMS join field
          - `excludes` (object)
            - `as_regex` (boolean)
              When `true`, treats the values as regular expressions.
            - `values` (union string[] | number[])
              Values to exclude.
          - `fields` (string[] · min items: 1 · max items: 4)
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `includes` (object)
            - `as_regex` (boolean)
              When `true`, treats the values as regular expressions.
            - `values` (union string[] | number[])
              Values to include.
          - `increase_accuracy` (boolean)
            When `true`, increases accuracy at the cost of performance.
          - `label` (string)
            Label for the operation
          - `limit` (number · default: 5)
            Number of terms to return.
          - `other_bucket` (object)
            - `include_documents_without_field` (boolean)
              When `true`, includes documents that do not have the specified field.
          - `rank_by` (union anyOf)
            Same options as `rank_by` in `Terms Operation`
        - **Histogram Operation**
          - `operation` (enum)
            Values: `histogram`
          - `ems` (object)
            - `boundaries` (string)
              EMS boundaries
            - `join` (string)
              EMS join field
          - `field` (string)
            Field to be used for the histogram.
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `granularity` (union number | enum · default: auto)
            Values: `auto`
          - `include_empty_rows` (boolean · default: true)
            When `true`, includes empty rows in the results.
          - `label` (string)
            Label for the operation
        - **Ranges Operation**
          - `operation` (enum)
            Values: `range`
          - `ems` (object)
            - `boundaries` (string)
              EMS boundaries
            - `join` (string)
              EMS join field
          - `field` (string)
            Field to be used for the range.
          - `format` (union anyOf)
            Number display format for the dimension value.
            Same options as `format` in `Terms Operation`
          - `label` (string)
            Label for the operation
          - `ranges` (object[] · max items: 100)
            - `gt` (number)
              Greater than.
            - `label` (string)
              Label.
            - `lte` (number)
              Less than or equal to.
        - **Filters Operation**
          - `operation` (enum)
            Values: `filters`
          - `ems` (object)
            - `boundaries` (string)
              EMS boundaries
            - `join` (string)
              EMS join field
          - `filters` (object[] · max items: 100)
            - `filter` (object)
              A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
              - `expression` (string)
                A query expression in KQL or Lucene syntax
              - `language` (enum · default: kql)
                Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
                Values: `kql`, `lucene`
            - `label` (string)
              Label for the filter
          - `label` (string)
            Label for the operation
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **Datatable Chart (library)**
      - `type` (enum)
        Values: `data_table`
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `metrics` (union anyOf[] · min items: 1 · max items: 1000)
        Array of metrics to display as columns in the datatable
        - `alignment` (enum · default: right)
          Alignment of the columns.
          Values: `left`, `center`, `right`
        - `apply_color_to` (enum)
          Column color target: `value` for cell text, `background` for cell background, or `badge` for a badge overlay.
          Values: `value`, `background`, `badge`
        - `color` (union anyOf · default: {"type":"auto"})
          Color configuration for datatable metrics. Use dynamic coloring for numeric data and categorical/gradient mode for categorical data.
          - **Color By Value**
            Dynamic color mapping by numeric range, with support for absolute and percentage-based ranges and for named palettes.
            Any of:
            - **Color By Value (Absolute)**
              Color by absolute value configuration
              - `range` (enum)
                Values: `absolute`
              - `steps` (object[] · min items: 1 · max items: 100)
                Array of ordered color steps defining the range each color is applied.
                - `color` (string)
                  The color to use for this step.
                - `gte` (number) — nullable
                  The lower bound of range from which this color applies (inclusive).
                - `lt` (number) — nullable
                  The upper bound of range to which this color applies (exclusive).
                - `lte` (number) — nullable
                  The upper bound of range to which this color applies (inclusive).
              - `type` (enum)
                Values: `dynamic`
            - **Color By Value (Percentage)**
              Color by percentage value configuration
              - `range` (enum)
                Values: `percentage`
              - `steps` (object[] · min items: 1 · max items: 100)
                Array of ordered color steps defining the range each color is applied.
                - `color` (string)
                  The color to use for this step.
                - `gte` (number) — nullable
                  The lower bound of range from which this color applies (inclusive).
                - `lt` (number) — nullable
                  The upper bound of range to which this color applies (exclusive).
                - `lte` (number) — nullable
                  The upper bound of range to which this color applies (inclusive).
              - `type` (enum)
                Values: `dynamic`
            - **Color By Value (Palette)**
              Color by value using a palette, with colors distributed across the range of values.
              - `palette` (enum)
                The name of the palette to apply across the value range.
                Values: `status`, `temperature`, `complementary`, `negative`, `positive`, `cool`, `warm`, `gray`
              - `type` (enum)
                Values: `distributed_palette`
            - **Legacy color by value**
              Legacy color by value configuration
              - `palette` (string)
                The legacy palette name.
              - `range` (enum)
                Determines whether the range is interpreted as absolute or as a percentage of the data.
                Values: `absolute`, `percentage`
              - `shift` (boolean)
                When `true`, shifts the palette colors so they start from a different offset. Defaults to `false`.
              - `steps` (object[] · min items: 1 · max items: 100)
                Array of ordered color steps defining the range each color is applied.
                - `color` (string)
                  The color to use for this step.
                - `gte` (number) — nullable
                  The lower bound of range from which this color applies (inclusive).
                - `lt` (number) — nullable
                  The upper bound of range to which this color applies (exclusive).
                - `lte` (number) — nullable
                  The upper bound of range to which this color applies (inclusive).
              - `type` (enum)
                Values: `legacy_dynamic`
          - **Color Mapping**
            Color mapping for dimension values, either categorical (for specific values) or as a gradient.
            Any of:
            - **Categorical Color Mapping**
              Palette color assignment for specific categorical values. Unmapped values receive the unassigned color.
              - `mode` (enum)
                Values: `categorical`
              - `mapping` (object[] · max items: 1000)
                - `color` (union anyOf)
                  - **Color From Palette**
                    Color at a fixed index position in a named palette.
                    - `type` (enum)
                      Values: `from_palette`
                    - `index` (number)
                      The index of the color in the palette.
                    - `palette` (string)
                      Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                  - **Color Code**
                    A color specified as a hex or CSS color code string.
                    - `type` (enum)
                      Values: `color_code`
                    - `value` (string)
                      The static color value to use.
                - `values` (union anyOf[] · max items: 1000)
                  - **string**
                  - **number**
                  - **boolean**
                  - **Multi Value Cell**
                    Values of a multi-value cell.
                  - **Range Key**
                    Identifies a range bucket. Omit either bound for an open end.
                    - `type` (enum)
                      Values: `range_key`
                    - `from` (number | string)
                    - `ranges` (object[] · max items: 100)
                      - `from` (number | string)
                      - `label` (string)
                      - `to` (number | string)
                    - `to` (number | string)
                  - **Multi Field Key**
                    Composite key from a multi-terms bucket.
                    - `type` (enum)
                      Values: `multi_field_key`
                    - `keys` (string[] · max items: 100)
              - `palette` (string)
                Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
              - `unassigned` (union anyOf)
                The color to use for unassigned values.
                - **Color From Palette**
                  Color at a fixed index position in a named palette.
                  - `type` (enum)
                    Values: `from_palette`
                  - `index` (number)
                    The index of the color in the palette.
                  - `palette` (string)
                    Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                - **Color Code**
                  A color specified as a hex or CSS color code string.
                  - `type` (enum)
                    Values: `color_code`
                  - `value` (string)
                    The static color value to use.
            - **Gradient Color Mapping**
              Gradient color mapping across categorical values.
              - `mode` (enum)
                Values: `gradient`
              - `gradient` (union anyOf[] · max items: 3)
                - **Color From Palette**
                  Color at a fixed index position in a named palette.
                  - `type` (enum)
                    Values: `from_palette`
                  - `index` (number)
                    The index of the color in the palette.
                  - `palette` (string)
                    Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                - **Color Code**
                  A color specified as a hex or CSS color code string.
                  - `type` (enum)
                    Values: `color_code`
                  - `value` (string)
                    The static color value to use.
              - `mapping` (object[] · max items: 100)
                - `values` (union anyOf[] · max items: 100)
                  - **string**
                  - **number**
                  - **boolean**
                  - **Multi Value Cell**
                    Values of a multi-value cell.
                  - **Range Key**
                    Identifies a range bucket. Omit either bound for an open end.
                    - `type` (enum)
                      Values: `range_key`
                    - `from` (number | string)
                    - `ranges` (object[] · max items: 100)
                      - `from` (number | string)
                      - `label` (string)
                      - `to` (number | string)
                    - `to` (number | string)
                  - **Multi Field Key**
                    Composite key from a multi-terms bucket.
                    - `type` (enum)
                      Values: `multi_field_key`
                    - `keys` (string[] · max items: 100)
              - `palette` (string)
                Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
              - `sort` (enum)
                Sort direction
                Values: `asc`, `desc`
              - `unassigned` (union anyOf)
                The color to use for unassigned values.
                - **Color From Palette**
                  Color at a fixed index position in a named palette.
                  - `type` (enum)
                    Values: `from_palette`
                  - `index` (number)
                    The index of the color in the palette.
                  - `palette` (string)
                    Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                - **Color Code**
                  A color specified as a hex or CSS color code string.
                  - `type` (enum)
                    Values: `color_code`
                  - `value` (string)
                    The static color value to use.
          - **Auto Color**
            Coloring determined at runtime based on chart defaults
            - `type` (enum)
              Values: `auto`
        - `summary` (object)
          Summary row configuration
          - `label` (string)
            Summary row label.
          - `type` (enum)
            Type of summary function to apply to the column.
            Values: `sum`, `avg`, `count`, `min`, `max`
        - `visible` (boolean · default: true)
          When `false`, hides the column from the datatable.
        - `width` (number · min: 0)
          Column width in pixels.
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `rows` (union anyOf[] · min items: 1 · max items: 50)
        Array of operations to split the datatable rows by
        - `alignment` (enum · default: left)
          Alignment of the rows.
          Values: `left`, `center`, `right`
        - `apply_color_to` (enum)
          Column color target: `value` for cell text, `background` for cell background, or `badge` for a badge overlay.
          Values: `value`, `background`, `badge`
        - `click_filter` (boolean · default: false)
          When `true`, enables one-click filtering on cell values.
        - `collapse_by` (union anyOf)
          Aggregation function used to collapse a breakdown dimension into a single value.
          Values: `avg`, `sum`, `max`, `min`
        - `color` (union anyOf · default: {"type":"auto"})
          - **Color Mapping**
            Color mapping for dimension values, either categorical (for specific values) or as a gradient.
            Any of:
            - **Categorical Color Mapping**
              Palette color assignment for specific categorical values. Unmapped values receive the unassigned color.
              - `mode` (enum)
                Values: `categorical`
              - `mapping` (object[] · max items: 1000)
                - `color` (union anyOf)
                  - **Color From Palette**
                    Color at a fixed index position in a named palette.
                    - `type` (enum)
                      Values: `from_palette`
                    - `index` (number)
                      The index of the color in the palette.
                    - `palette` (string)
                      Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                  - **Color Code**
                    A color specified as a hex or CSS color code string.
                    - `type` (enum)
                      Values: `color_code`
                    - `value` (string)
                      The static color value to use.
                - `values` (union anyOf[] · max items: 1000)
                  - **string**
                  - **number**
                  - **boolean**
                  - **Multi Value Cell**
                    Values of a multi-value cell.
                  - **Range Key**
                    Identifies a range bucket. Omit either bound for an open end.
                    - `type` (enum)
                      Values: `range_key`
                    - `from` (number | string)
                    - `ranges` (object[] · max items: 100)
                      - `from` (number | string)
                      - `label` (string)
                      - `to` (number | string)
                    - `to` (number | string)
                  - **Multi Field Key**
                    Composite key from a multi-terms bucket.
                    - `type` (enum)
                      Values: `multi_field_key`
                    - `keys` (string[] · max items: 100)
              - `palette` (string)
                Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
              - `unassigned` (union anyOf)
                The color to use for unassigned values.
                - **Color From Palette**
                  Color at a fixed index position in a named palette.
                  - `type` (enum)
                    Values: `from_palette`
                  - `index` (number)
                    The index of the color in the palette.
                  - `palette` (string)
                    Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                - **Color Code**
                  A color specified as a hex or CSS color code string.
                  - `type` (enum)
                    Values: `color_code`
                  - `value` (string)
                    The static color value to use.
            - **Gradient Color Mapping**
              Gradient color mapping across categorical values.
              - `mode` (enum)
                Values: `gradient`
              - `gradient` (union anyOf[] · max items: 3)
                - **Color From Palette**
                  Color at a fixed index position in a named palette.
                  - `type` (enum)
                    Values: `from_palette`
                  - `index` (number)
                    The index of the color in the palette.
                  - `palette` (string)
                    Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                - **Color Code**
                  A color specified as a hex or CSS color code string.
                  - `type` (enum)
                    Values: `color_code`
                  - `value` (string)
                    The static color value to use.
              - `mapping` (object[] · max items: 100)
                - `values` (union anyOf[] · max items: 100)
                  - **string**
                  - **number**
                  - **boolean**
                  - **Multi Value Cell**
                    Values of a multi-value cell.
                  - **Range Key**
                    Identifies a range bucket. Omit either bound for an open end.
                    - `type` (enum)
                      Values: `range_key`
                    - `from` (number | string)
                    - `ranges` (object[] · max items: 100)
                      - `from` (number | string)
                      - `label` (string)
                      - `to` (number | string)
                    - `to` (number | string)
                  - **Multi Field Key**
                    Composite key from a multi-terms bucket.
                    - `type` (enum)
                      Values: `multi_field_key`
                    - `keys` (string[] · max items: 100)
              - `palette` (string)
                Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
              - `sort` (enum)
                Sort direction
                Values: `asc`, `desc`
              - `unassigned` (union anyOf)
                The color to use for unassigned values.
                - **Color From Palette**
                  Color at a fixed index position in a named palette.
                  - `type` (enum)
                    Values: `from_palette`
                  - `index` (number)
                    The index of the color in the palette.
                  - `palette` (string)
                    Color palette name. Accepted values: 'default', 'elastic_line_optimized', 'severity', 'eui_amsterdam', 'kibana_v7_legacy', 'elastic_brand_2023'. Defaults to `default`.
                - **Color Code**
                  A color specified as a hex or CSS color code string.
                  - `type` (enum)
                    Values: `color_code`
                  - `value` (string)
                    The static color value to use.
          - **Auto Color**
            Coloring determined at runtime based on chart defaults
            - `type` (enum)
              Values: `auto`
        - `visible` (boolean · default: true)
          When `false`, hides the column from the datatable.
        - `width` (number · min: 0)
          Column width in pixels.
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `split_metrics_by` (union anyOf[] · min items: 1 · max items: 20)
        Array of operations to split the metric columns by
        Same options as `x` in `Layer (DSL)`
      - `styling` (object)
        Visual chart styling options
        - `density` (object)
          Density configuration for the datatable.
          - `height` (object)
            - `header` (union anyOf)
              Number of lines before the header is truncated.
              - **type: auto**
                - `type` (enum)
                  Values: `auto`
              - **type: custom**
                - `type` (enum)
                  Values: `custom`
                - `max_lines` (number · min: 1 · max: 5 · default: 3)
            - `value` (union anyOf)
              Number of lines to display per table body cell.
              - **type: auto**
                - `type` (enum)
                  Values: `auto`
              - **type: custom**
                - `type` (enum)
                  Values: `custom`
                - `lines` (number · min: 1 · max: 20 · default: 1)
          - `mode` (enum · default: default)
            Display density mode.
            Values: `compact`, `default`, `expanded`
        - `paging` (enum)
          Rows per page. When set, pagination is enabled with the specified number of rows.
          Values: `10`, `20`, `30`, `50`, `100`
        - `row_numbers` (object)
          Configuration for row numbers
          - `visible` (boolean)
            When `true`, displays row numbers.
        - `sort_by` (union anyOf)
          Sorting configuration. Only one column can be sorted at a time. Use "column_type" to specify the column type.
          - **object**
            Sort by a metric or row column
            - `column_type` (enum)
              Type of column to sort by.
              Values: `metric`, `row`
            - `direction` (enum)
              Direction
              Values: `asc`, `desc`
            - `index` (number · min: 0)
              Index of the column or row to sort by (0-based).
          - **column_type: pivoted_metric**
            Sort by a pivoted metric column (created when metrics are pivoted by split_metrics_by)
            - `column_type` (enum)
              Values: `pivoted_metric`
            - `direction` (enum)
              Direction
              Values: `asc`, `desc`
            - `index` (number · min: 0)
              0-based index into the "metrics" array for the metric to sort; use "values" to identify the pivoted column
            - `values` (string[] · min items: 1 · max items: 20)
              Array of pivot values, one for each split_metrics_by column in order
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **Pie Chart (library)**
      - `type` (enum)
        Values: `pie`
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `group_by` (union anyOf[] · min items: 1 · max items: 100)
        Array of breakdown dimensions (minimum 1)
        - `collapse_by` (union anyOf)
          Aggregation function used to collapse a breakdown dimension into a single value.
          Values: `avg`, `sum`, `max`, `min`
        - `color` (union anyOf)
          Color mapping for dimension values, either categorical (for specific values) or as a gradient.
          Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
          Same options as `color` in `Date Histogram Operation`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `legend` (object)
        Legend configuration for pie chart
        - `nested` (boolean · default: false)
          Show nested legend with hierarchical breakdown levels
        - `position` (enum · default: right)
          Legend Position.
          Values: `top`, `bottom`, `left`, `right`
        - `size` (union anyOf)
          Legend size.
          Values: `auto`, `s`, `m`, `l`, `xl`
        - `truncate_after_lines` (number · min: 1 · max: 10 · default: 1)
          Number of lines before legend items are truncated.
        - `visibility` (enum)
          Legend visibility.
          Values: `auto`, `visible`, `hidden`
      - `metrics` (union anyOf[] · min items: 1 · max items: 100)
        Array of metric configurations (minimum 1)
        - `color` (union anyOf · default: {"type":"auto"})
          - **Static Color**
            Fixed color for all values in the dimension.
            - `type` (enum)
              Values: `static`
            - `color` (string)
              The static color to be used for all values.
          - **Auto Color**
            Coloring determined at runtime based on chart defaults
            - `type` (enum)
              Values: `auto`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `styling` (object)
        Visual chart styling options
        - `donut_hole` (enum)
          Donut hole size. Accepted values: `none` (full pie), `s`, `m`, `l`.
          Values: `none`, `s`, `m`, `l`
        - `labels` (object)
          Label configuration for pie chart slice labels inside or outside the pie
          - `position` (enum)
            Slice label position: `inside` or `outside`.
            Values: `inside`, `outside`
          - `visible` (boolean)
            When `true`, displays slice labels.
        - `values` (object)
          Configure the visibility and the format of the values rendered on each chart partition section
          - `mode` (enum)
            How to format values when visible.
            Values: `absolute`, `percentage`
          - `percent_decimals` (number · min: 0 · max: 10 · default: 2)
            Decimal places for percentage display (0-10)
          - `visible` (boolean)
            Show metric values on the chart
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **Mosaic Chart (library)**
      - `type` (enum)
        Values: `mosaic`
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `group_breakdown_by` (union anyOf[] · min items: 1 · max items: 100)
        Array of group breakdown dimensions (minimum 1)
        - `collapse_by` (union anyOf)
          Aggregation function used to collapse a breakdown dimension into a single value.
          Values: `avg`, `sum`, `max`, `min`
      - `group_by` (union anyOf[] · min items: 1 · max items: 100)
        Array of breakdown dimensions (minimum 1)
        - `collapse_by` (union anyOf)
          Aggregation function used to collapse a breakdown dimension into a single value.
          Values: `avg`, `sum`, `max`, `min`
        - `color` (union anyOf)
          Color mapping for dimension values, either categorical (for specific values) or as a gradient.
          Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
          Same options as `color` in `Date Histogram Operation`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `legend` (object)
        Legend configuration for mosaic chart appearance and behavior
        - `nested` (boolean · default: false)
          Show nested legend with hierarchical breakdown levels
        - `position` (enum · default: right)
          Legend Position.
          Values: `top`, `bottom`, `left`, `right`
        - `size` (union anyOf)
          Legend size.
          Values: `auto`, `s`, `m`, `l`, `xl`
        - `truncate_after_lines` (number · min: 1 · max: 10 · default: 1)
          Number of lines before legend items are truncated.
        - `visibility` (enum)
          Legend visibility.
          Values: `auto`, `visible`, `hidden`
      - `metric` (union anyOf)
        Same options as `metric` in `Tag Cloud Chart (library)`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `styling` (object)
        Visual chart styling options
        - `values` (object)
          Configure the visibility and the format of the values rendered on each chart partition section
          - `mode` (enum)
            How to format values when visible.
            Values: `absolute`, `percentage`
          - `percent_decimals` (number · min: 0 · max: 10 · default: 2)
            Decimal places for percentage display (0-10)
          - `visible` (boolean)
            Show metric values on the chart
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **Treemap Chart (library)**
      - `type` (enum)
        Values: `treemap`
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `group_by` (union anyOf[] · min items: 1 · max items: 100)
        Array of breakdown dimensions (minimum 1)
        - `collapse_by` (union anyOf)
          Aggregation function used to collapse a breakdown dimension into a single value.
          Values: `avg`, `sum`, `max`, `min`
        - `color` (union anyOf)
          Color mapping for dimension values, either categorical (for specific values) or as a gradient.
          Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
          Same options as `color` in `Date Histogram Operation`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `legend` (object)
        Configuration for the treemap chart legend appearance and behavior
        - `nested` (boolean · default: false)
          Show nested legend with hierarchical breakdown levels
        - `position` (enum · default: right)
          Legend Position.
          Values: `top`, `bottom`, `left`, `right`
        - `size` (union anyOf)
          Legend size.
          Values: `auto`, `s`, `m`, `l`, `xl`
        - `truncate_after_lines` (number · min: 1 · max: 10 · default: 1)
          Number of lines before legend items are truncated.
        - `visibility` (enum)
          Legend visibility.
          Values: `auto`, `visible`, `hidden`
      - `metrics` (union anyOf[] · min items: 1 · max items: 100)
        Array of metric configurations (minimum 1)
        - `color` (union anyOf · default: {"type":"auto"})
          - **Static Color**
            Fixed color for all values in the dimension.
            - `type` (enum)
              Values: `static`
            - `color` (string)
              The static color to be used for all values.
          - **Auto Color**
            Coloring determined at runtime based on chart defaults
            - `type` (enum)
              Values: `auto`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `styling` (object)
        Visual chart styling options
        - `labels` (object)
          Labels configuration
          - `visible` (boolean)
            Show category labels
        - `values` (object)
          Configure the visibility and the format of the values rendered on each chart partition section
          - `mode` (enum)
            How to format values when visible.
            Values: `absolute`, `percentage`
          - `percent_decimals` (number · min: 0 · max: 10 · default: 2)
            Decimal places for percentage display (0-10)
          - `visible` (boolean)
            Show metric values on the chart
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
    - **Waffle Chart (library)**
      - `type` (enum)
        Values: `waffle`
      - `data_source` (union oneOf)
        Same options as `data_source` in `Metric Chart (library)`
      - `description` (string)
        The description of the chart. Optional. Any string value or undefined.
      - `filters` (union oneOf[] · max items: 100)
        Filters applied to the panel
        Same options as `filters` in `Metric Chart (library)`
      - `group_by` (union anyOf[] · min items: 1 · max items: 100)
        Array of breakdown dimensions (minimum 1)
        - `collapse_by` (union anyOf)
          Aggregation function used to collapse a breakdown dimension into a single value.
          Values: `avg`, `sum`, `max`, `min`
        - `color` (union anyOf)
          Color mapping for dimension values, either categorical (for specific values) or as a gradient.
          Default: `{"mapping":[],"mode":"categorical","palette":"default"}`
          Same options as `color` in `Date Histogram Operation`
      - `ignore_global_filters` (boolean · default: false)
        When `true`, ignores global filters when fetching data for this layer. Defaults to `false`.
      - `legend` (object)
        Legend configuration for waffle chart
        - `position` (enum · default: right)
          Legend Position.
          Values: `top`, `bottom`, `left`, `right`
        - `size` (union anyOf)
          Legend size.
          Values: `auto`, `s`, `m`, `l`, `xl`
        - `truncate_after_lines` (number · min: 1 · max: 10 · default: 1)
          Number of lines before legend items are truncated.
        - `values` (enum[] · min items: 1 · max items: 1)
          Values: `absolute`
        - `visibility` (enum)
          Legend visibility.
          Values: `auto`, `visible`, `hidden`
      - `metrics` (union anyOf[] · min items: 1 · max items: 100)
        Array of metric configurations (minimum 1)
        - `color` (union anyOf · default: {"type":"auto"})
          - **Static Color**
            Fixed color for all values in the dimension.
            - `type` (enum)
              Values: `static`
            - `color` (string)
              The static color to be used for all values.
          - **Auto Color**
            Coloring determined at runtime based on chart defaults
            - `type` (enum)
              Values: `auto`
      - `query` (object)
        A KQL or Lucene query that filters panel data. Applied on top of any dashboard-level filters.
        - `expression` (string)
          A query expression in KQL or Lucene syntax
        - `language` (enum · default: kql)
          Query language: `kql` (Kibana Query Language) or `lucene`. Defaults to `kql`.
          Values: `kql`, `lucene`
      - `sampling` (number · min: 0 · max: 1 · default: 1)
        Sampling factor between 0 (no sampling) and 1 (full sampling).
      - `styling` (object)
        Visual chart styling options
        - `values` (object)
          Configure the visibility and the format of the values rendered on each chart partition section
          - `mode` (enum)
            How to format values when visible.
            Values: `absolute`, `percentage`
          - `percent_decimals` (number · min: 0 · max: 10 · default: 2)
            Decimal places for percentage display (0-10)
          - `visible` (boolean)
            Show metric values on the chart
      - `tags` (string[] · max items: 1000 · default: [])
        Tag IDs to associate with this visualization.
      - `title` (string)
        The title of the chart displayed in the panel. Optional. Any string value or undefined.
  - `id` (string)
  - `meta` (object)
    - `created_at` (string)
      Timestamp when the object was created (ISO 8601).
    - `created_by` (string)
      User profile ID of the user who created the object.
    - `managed` (boolean)
      When `true`, the object is managed by Kibana and cannot be edited by users.
    - `owner` (string)
      Identifier of the plugin or team that owns this object.
    - `updated_at` (string)
      Timestamp when the object was last updated (ISO 8601).
    - `updated_by` (string)
      User profile ID of the user who last updated the object.
    - `version` (string)
      Internal version identifier for optimistic concurrency control.
- `meta` (object)
  - `page` (number · min: 1 · default: 1)
    The returned page of results.
  - `per_page` (number · min: 1 · max: 1000 · default: 20)
    The number of results returned per page.
  - `total` (number)
    The total number of results matching the query.
#### `400`

Malformed request

#### `401`

Unauthorized

#### `403`

Forbidden

#### `500`

Internal Server Error

## Code examples

#### Console

```console
GET kbn:/api/visualizations?query=requests&per_page=10
```

#### curl

```curl
curl -X GET "${KIBANA_URL}/api/visualizations?query=requests&per_page=10" \
  -H "Authorization: ApiKey ${API_KEY}"
```

## Response examples

#### Search visualizations response

`application/json`

Paginated list of visualizations matching the query. Each item includes the ID, full chart configuration, and metadata. Use the GET endpoint to retrieve a single visualization by ID.

```json
{
  "data": [
    {
      "data": {
        "data_source": {
          "index_pattern": "kibana_sample_data_logs",
          "time_field": "timestamp",
          "type": "data_view_spec"
        },
        "ignore_global_filters": false,
        "metrics": [
          {
            "empty_as_null": false,
            "operation": "count",
            "type": "primary"
          }
        ],
        "sampling": 1,
        "styling": {
          "primary": {
            "labels": {
              "alignment": "left"
            },
            "position": "bottom",
            "value": {
              "alignment": "right",
              "sizing": "auto"
            }
          }
        },
        "tags": [],
        "title": "Total requests",
        "type": "metric"
      },
      "id": "1e4f0a30-b3c5-11ef-bd7a-2b6b1a8c0f3d",
      "meta": {
        "created_at": "2026-04-13T10:00:00.000Z",
        "managed": false,
        "updated_at": "2026-04-13T10:00:00.000Z",
        "version": "WzU5LDFd"
      }
    },
    {
      "data": {
        "axis": {
          "x": {
            "domain": {
              "rounding": false,
              "type": "fit"
            },
            "grid": {
              "visible": true
            },
            "labels": {
              "orientation": "horizontal"
            },
            "ticks": {
              "visible": true
            },
            "title": {
              "visible": true
            }
          },
          "y": {
            "domain": {
              "rounding": true,
              "type": "full"
            },
            "grid": {
              "visible": true
            },
            "labels": {
              "orientation": "horizontal"
            },
            "scale": "linear",
            "ticks": {
              "visible": true
            },
            "title": {
              "visible": true
            }
          }
        },
        "layers": [
          {
            "data_source": {
              "index_pattern": "kibana_sample_data_logs",
              "time_field": "timestamp",
              "type": "data_view_spec"
            },
            "ignore_global_filters": false,
            "sampling": 1,
            "type": "line",
            "x": {
              "drop_partial_intervals": false,
              "field": "timestamp",
              "include_empty_rows": true,
              "operation": "date_histogram",
              "suggested_interval": "auto",
              "use_original_time_range": false
            },
            "y": [
              {
                "axis": "y",
                "empty_as_null": false,
                "operation": "count"
              }
            ]
          }
        ],
        "legend": {
          "layout": {
            "truncate": {
              "max_lines": 1
            },
            "type": "grid"
          },
          "placement": "outside",
          "position": "right",
          "visibility": "hidden"
        },
        "styling": {
          "interpolation": "linear",
          "overlays": {
            "current_time_marker": {
              "visible": false
            },
            "partial_buckets": {
              "visible": false
            }
          },
          "points": {
            "visibility": "auto"
          }
        },
        "tags": [],
        "title": "Log entries over time",
        "type": "xy"
      },
      "id": "3a7c2e10-b3c5-11ef-bd7a-2b6b1a8c0f3d",
      "meta": {
        "created_at": "2026-04-13T10:05:00.000Z",
        "managed": false,
        "updated_at": "2026-04-13T10:05:00.000Z",
        "version": "WzYwLDFd"
      }
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 20,
    "total": 2
  }
}
```

