Kong Dashboards API

The Dashboards API from Kong — 2 operation(s) for dashboards.

Operations 5

GET /v2/dashboards List dashboards #
POST /v2/dashboards Create a new dashboard #
GET /v2/dashboards/{dashboardId} Get a single dashboard #
PUT /v2/dashboards/{dashboardId} Update an existing dashboard #
DELETE /v2/dashboards/{dashboardId} Delete an existing dashboard #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/kong-dashboards-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

kong-dashboards-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Konnect API - Go SDK Dashboards API
  version: 3.14.0
  description: The Konnect platform API
  contact:
    name: Kong Inc
    url: https://konghq.com
    email: support@konghq.com
  x-extensions-note: "This API uses the `x-expression` vendor extension to indicate that a string property is a DSL expression.\nSupported types:\n\n\n  - `boolean`: An expression evaluates to boolean. For example, `context.topic.name == 'my-topic'`\n  - `string`: A template string expression that evaluates to a string or a literal string value. For example,\n    `${context.topic.name.substring(0, context.topic.name.length-4)}` or `my-literal-value`\n\nAdditionally, `x-sensitive` flag indicates that a field contains sensitive information. When the value\nof the field is provided in plain text, it's encrypted at rest and it's never returned in API responses.\nWhen the value is an expression, the expression itself is stored and returned in API responses.\n\n`x-min-runtime-version` indicates the minimum Event Gateway runtime version required to use a certain policy or\npolicy feature. The runtime version can be configured at the Event Gateway entity level. It must be a string\ncontaining a semantic version in the `MAJOR.MINOR` format, e.g., `\"1.1\"`.\n"
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  x-oas-source: kong/platform-api@
  x-oas-source-link: https://github.com/Kong/platform-api/commit/
servers:
- url: https://global.api.konghq.com
- url: https://us.api.konghq.com
- url: https://eu.api.konghq.com
- url: https://au.api.konghq.com
security:
- personalAccessToken: []
- systemAccountAccessToken: []
- konnectAccessToken: []
- serviceAccessToken: []
tags:
- name: Dashboards
paths:
  /v2/dashboards:
    get:
      operationId: dashboards-list
      summary: List dashboards
      description: Get a paginated list of dashboards that your account has access to.
      parameters:
      - $ref: '#/components/parameters/PageSize'
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/DashboardListFilters'
      - $ref: '#/components/parameters/DashboardSort'
      responses:
        '200':
          description: List of dashboards
          content:
            application/json:
              schema:
                type: object
                properties:
                  meta:
                    $ref: '#/components/schemas/PaginatedMeta'
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/DashboardResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Dashboards
    post:
      x-speakeasy-entity-operation:
        terraform-resource: Dashboard#create
        terraform-datasource: null
      operationId: dashboards-create
      summary: Create a new dashboard
      description: Creates a new dashboard from the provided definition.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DashboardUpdateRequest'
      responses:
        '201':
          description: The created dashboard, including generated fields.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardResponse'
        '400':
          description: Bad request; returned when the request payload was not valid.
          content:
            application/problem+json: {}
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Dashboards
  /v2/dashboards/{dashboardId}:
    parameters:
    - name: dashboardId
      in: path
      description: The dashboard's ID.
      required: true
      schema:
        type: string
        format: uuid
        example: d32d905a-ed33-46a3-a093-d8f536af9a8a
      x-speakeasy-match: id
    get:
      x-speakeasy-entity-operation:
        terraform-resource: Dashboard#read
        terraform-datasource: null
      operationId: dashboards-get
      summary: Get a single dashboard
      description: Get a dashboard that your account has access to.
      responses:
        '200':
          description: The dashboard with the given ID.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Dashboards
    put:
      x-speakeasy-entity-operation:
        terraform-resource: Dashboard#update
        terraform-datasource: null
      operationId: dashboards-update
      summary: Update an existing dashboard
      description: Update an existing dashboard, replacing its definition with the provided one.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DashboardUpdateRequest'
      responses:
        '200':
          description: The created dashboard, including generated fields.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardResponse'
        '400':
          description: Bad request; returned when the request payload was not valid.
          content:
            application/problem+json: {}
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Dashboards
    delete:
      x-speakeasy-entity-operation:
        terraform-resource: Dashboard#delete
        terraform-datasource: null
      operationId: dashboards-delete
      summary: Delete an existing dashboard
      description: Delete an existing dashboard.
      responses:
        '204':
          description: No Content
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Dashboards
components:
  schemas:
    BaseError:
      description: standard error
      type: object
      properties:
        status:
          description: 'The HTTP status code of the error. Useful when passing the response

            body to child properties in a frontend UI. Must be returned as an integer.

            '
          type: integer
          readOnly: true
        title:
          description: 'A short, human-readable summary of the problem. It should not

            change between occurences of a problem, except for localization.

            Should be provided as "Sentence case" for direct use in the UI.

            '
          type: string
          readOnly: true
        type:
          description: The error type.
          type: string
          readOnly: true
        instance:
          description: 'Used to return the correlation ID back to the user, in the format

            kong:trace:<correlation_id>. This helps us find the relevant logs

            when a customer reports an issue.

            '
          type: string
          readOnly: true
        detail:
          description: 'A human readable explanation specific to this occurence of the problem.

            This field may contain request/entity data to help the user understand

            what went wrong. Enclose variable values in square brackets. Should be

            provided as "Sentence case" for direct use in the UI.

            '
          type: string
          readOnly: true
      required:
      - status
      - title
      - instance
      - detail
      title: Error
    UpdatedAt:
      description: An ISO-8601 timestamp representation of entity update date.
      type: string
      format: date-time
      example: '2022-11-04T20:10:06.927Z'
      readOnly: true
      x-speakeasy-param-suppress-computed-diff: true
    StringFieldFilter:
      description: 'Filter using **one** of the following operators: `eq`, `oeq`, `neq`, `contains`, `ocontains`'
      type: object
      properties:
        eq:
          description: The field exactly matches the provided value.
          type: string
        contains:
          description: The field contains the provided value.
          type: string
        ocontains:
          description: The field contains any of the provided values.
          type: string
        oeq:
          description: The field matches any of the provided values.
          type: string
        neq:
          description: The field does not match the provided value.
          type: string
      additionalProperties: false
    CreatedAt:
      description: An ISO-8601 timestamp representation of entity creation date.
      type: string
      format: date-time
      example: '2022-11-04T20:10:06.927Z'
      readOnly: true
      x-speakeasy-param-suppress-computed-diff: true
    ChartTile:
      description: A tile that queries data and renders a chart.
      type: object
      properties:
        layout:
          description: 'Information about how the tile is placed on the dashboard.


            Examples:

            - a tile occupying the first half of the top row: `{ "position": { "col": 0, "row": 0 }, size: { "cols": 3, "rows": 1 } }`

            - a tile occupying the second half of the top row: `{ "position": { "col": 3, "row": 0 }, size: { "cols": 3, "rows": 1 } }`

            '
          type: object
          example:
            position:
              col: 3
              row: 0
            size:
              cols: 3
              rows: 1
          additionalProperties: false
          properties:
            position:
              description: 'Position of the tile in the dashboard''s grid.  Numbering starts at 0, so a tile in the upper left of the dashboard will be at column 0, row 0.

                '
              type: object
              additionalProperties: false
              properties:
                col:
                  type: integer
                  maximum: 5
                  minimum: 0
                row:
                  type: integer
                  minimum: 0
              required:
              - col
              - row
            size:
              description: 'Number of columns and rows the tile occupies.  A dashboard always has 6 columns, but has as many rows as needed to accommodate the given tiles.

                '
              type: object
              additionalProperties: false
              properties:
                cols:
                  type: integer
                  maximum: 6
                  minimum: 1
                rows:
                  type: integer
                  minimum: 1
              required:
              - cols
              - rows
          required:
          - position
          - size
        type:
          description: The type of tile.  Chart tiles must have type 'chart'.
          type: string
          enum:
          - chart
        definition:
          description: 'The tile''s definition, which consists of a query to fetch data and a chart to render the data.

            Note that some charts expect certain types of queries to render properly.  The documentation for the individual chart types has more information.

            '
          type: object
          additionalProperties: false
          properties:
            query:
              discriminator:
                propertyName: datasource
                mapping:
                  api_usage: '#/components/schemas/AdvancedQuery'
                  llm_usage: '#/components/schemas/LLMQuery'
                  agentic_usage: '#/components/schemas/AgenticQuery'
              oneOf:
              - $ref: '#/components/schemas/AdvancedQuery'
              - $ref: '#/components/schemas/LLMQuery'
              - $ref: '#/components/schemas/AgenticQuery'
            chart:
              $ref: '#/components/schemas/Chart'
          required:
          - query
          - chart
      additionalProperties: false
      required:
      - layout
      - type
      - definition
    LLMQuery:
      description: A query targeting the LLM usage analytics datasource.
      type: object
      properties:
        datasource:
          type: string
          enum:
          - llm_usage
        metrics:
          $ref: '#/components/schemas/LLMMetrics'
        dimensions:
          description: List of attributes or entity types to group by.
          type: array
          items:
            type: string
            enum:
            - control_plane
            - control_plane_group
            - gateway_service
            - consumer
            - application
            - route
            - ai_provider
            - ai_response_model
            - ai_request_model
            - llm_cache_status
            - llm_embeddings_provider
            - llm_embeddings_model
            - time
            - realm
            - status_code
            - status_code_grouped
            - ai_plugin
            x-speakeasy-unknown-values: allow
          maxItems: 2
        filters:
          $ref: '#/components/schemas/LLMFilters'
        granularity:
          $ref: '#/components/schemas/Granularity'
        time_range:
          $ref: '#/components/schemas/TimeRange'
      example:
        datasource: llm_usage
        time_range:
          type: relative
          time_range: 24h
          tz: EST
        dimensions:
        - time
        - ai_plugin
        filters:
        - operator: in
          field: control_plane
          value:
          - d5ac5d88-efed-4e10-9dfe-0b0a6646c219
        granularity: hourly
        metrics:
        - total_tokens
      additionalProperties: false
      required:
      - datasource
    PaginatedMeta:
      description: returns the pagination information
      type: object
      properties:
        page:
          $ref: '#/components/schemas/PageMeta'
      required:
      - page
      title: PaginatedMeta
      x-speakeasy-terraform-ignore: true
    UUID:
      description: Contains a unique identifier used for this resource.
      type: string
      format: uuid
      example: 5f9fd312-a987-4628-b4c5-bb4f4fddd5f7
      readOnly: true
    AdvancedQuery:
      description: A query targeting the API usage analytics datasource.
      type: object
      properties:
        datasource:
          type: string
          enum:
          - api_usage
        metrics:
          $ref: '#/components/schemas/AdvancedMetrics'
        dimensions:
          description: List of attributes or entity types to group by.
          type: array
          items:
            type: string
            enum:
            - api
            - api_package
            - api_product
            - api_product_version
            - application
            - consumer
            - control_plane
            - control_plane_group
            - country_code
            - data_plane_node
            - data_plane_node_version
            - gateway_service
            - portal
            - response_source
            - realm
            - route
            - status_code
            - status_code_grouped
            - time
            - upstream_status_code
            - upstream_status_code_grouped
            x-speakeasy-unknown-values: allow
          example:
          - status_code_grouped
          maxItems: 2
        filters:
          $ref: '#/components/schemas/AdvancedFilters'
        granularity:
          $ref: '#/components/schemas/Granularity'
        time_range:
          $ref: '#/components/schemas/TimeRange'
      example:
        datasource: api_usage
        time_range:
          type: relative
          time_range: 24h
          tz: EST
        dimensions:
        - time
        - gateway_service
        filters:
        - operator: in
          field: control_plane
          value:
          - d5ac5d88-efed-4e10-9dfe-0b0a6646c219
        granularity: hourly
        metrics:
        - request_count
        - response_latency_p99
      additionalProperties: false
      required:
      - datasource
    UnauthorizedError:
      allOf:
      - $ref: '#/components/schemas/BaseError'
      - type: object
        properties:
          status:
            example: 401
          title:
            example: Unauthorized
          type:
            example: https://httpstatuses.com/401
          instance:
            example: kong:trace:1234567890
          detail:
            example: Invalid credentials
    NotFoundError:
      allOf:
      - $ref: '#/components/schemas/BaseError'
      - type: object
        properties:
          status:
            example: 404
          title:
            example: Not Found
          type:
            example: https://httpstatuses.com/404
          instance:
            example: kong:trace:1234567890
          detail:
            example: Not found
    LLMMetrics:
      description: List of aggregated metrics to collect across the requested time span.
      type: array
      items:
        type: string
        enum:
        - total_tokens
        - prompt_tokens
        - completion_tokens
        - ai_request_count
        - cost
        - llm_cache_embeddings_latency_average
        - llm_cache_fetch_latency_average
        - llm_latency_average
        - llm_embeddings_tokens
        - llm_embeddings_cost
        x-speakeasy-unknown-values: allow
      default:
      - ai_request_count
    DonutChart:
      description: 'A chart that can display one-dimensional data in a hollow, segmented circle.  To use this chart, ensure that

        the query includes only one dimension (not `time`).

        '
      type: object
      properties:
        chart_title:
          description: The title of the chart, which is displayed in the tile's header.
          type: string
          nullable: false
        type:
          type: string
          enum:
          - donut
      additionalProperties: false
      required:
      - type
      title: Donut chart
    LabelsFieldFilter:
      allOf:
      - title: LabelsFieldFilter
        description: "Filters on the resource's `labels` field. Filters must use dot-notation to identify\nthe label key that will be used to filter the results. For example:\n\n\n  - `filter[labels.owner]`\n  - `filter[labels.owner][neq]=kong`\n  - `filter[labels.env]=dev`\n  - `filter[labels.env][ocontains]=dev,test`\n"
      - $ref: '#/components/schemas/StringFieldFilter'
    UuidFieldFilter:
      description: 'Filter using **one** of the following operators: `eq`, `oeq`, `neq`'
      type: object
      properties:
        eq:
          description: The field exactly matches the provided value.
          type: string
        oeq:
          description: The field matches any of the provided values.
          type: string
        neq:
          description: The field does not match the provided value.
          type: string
      additionalProperties: false
    AgenticQuery:
      description: A query targeting the agentic usage analytics datasource.
      type: object
      properties:
        datasource:
          type: string
          enum:
          - agentic_usage
        metrics:
          $ref: '#/components/schemas/AgenticMetrics'
        dimensions:
          description: List of attributes or entity types to group by.
          type: array
          items:
            type: string
            enum:
            - a2a_context_id
            - a2a_error
            - a2a_method
            - a2a_task_id
            - api
            - api_package
            - api_product
            - api_product_version
            - application
            - consumer
            - control_plane
            - control_plane_group
            - country_code
            - data_plane_node
            - data_plane_node_version
            - gateway_service
            - mcp_error
            - mcp_method
            - mcp_session_id
            - mcp_tool_name
            - portal
            - realm
            - response_source
            - route
            - status_code
            - status_code_grouped
            - time
            - upstream_status_code
            - upstream_status_code_grouped
            x-speakeasy-unknown-values: allow
          maxItems: 2
        filters:
          $ref: '#/components/schemas/AgenticFilters'
        granularity:
          $ref: '#/components/schemas/Granularity'
        time_range:
          $ref: '#/components/schemas/TimeRange'
      example:
        datasource: agentic_usage
        time_range:
          type: relative
          time_range: 24h
          tz: EST
        dimensions:
        - time
        - mcp_tool_name
        filters:
        - operator: in
          field: control_plane
          value:
          - d5ac5d88-efed-4e10-9dfe-0b0a6646c219
        granularity: hourly
        metrics:
        - request_count
      additionalProperties: false
      required:
      - datasource
    Tile:
      discriminator:
        propertyName: type
        mapping:
          chart: '#/components/schemas/ChartTile'
      oneOf:
      - $ref: '#/components/schemas/ChartTile'
    BarChart:
      description: 'A chart that can display non-timeseries data as bars.  This type of chart supports up to 2 dimensions (not `time`).

        To render a bar chart of timeseries data, use a `timeseries_bar` chart instead.

        '
      type: object
      properties:
        chart_title:
          description: The title of the chart, which is displayed in the tile's header.
          type: string
          nullable: false
        type:
          type: string
          enum:
          - horizontal_bar
          - vertical_bar
          x-speakeasy-unknown-values: allow
        stacked:
          description: 'Whether to stack the bars (implicitly adding them together to form a total), or leave them independent from each other.

            '
          type: boolean
          nullable: false
      additionalProperties: false
      required:
      - type
      title: Bar chart
    Dashboard:
      description: 'A JSON object describing a dashboard.


        A dashboard is an array of tiles.  All tiles are of type ''chart'', which query data and render a chart displaying that data.


        Dashboards have 6 columns and as many rows as necessary to display their tiles.

        '
      type: object
      properties:
        tiles:
          description: The array of tiles.  We currently support up to 102 tiles, which is 17 rows of 6x1 tiles.
          type: array
          items:
            $ref: '#/components/schemas/Tile'
          maxLength: 102
          minLength: 0
        preset_filters:
          description: 'An optional array of filters that are applied globally to all relevant tiles in the dashboard.


            Whether or not a preset filter applies to a tile depends on the filter''s dimension.  Some dimensions, like `control_plane`, are common to all datasources; other dimensions may only apply to one datasource.

            '
          type: array
          items:
            $ref: '#/components/schemas/AllFilterItems'
          example:
          - operator: in
            field: control_plane
            value:
            - 00000000-0000-0000-0000-000000000000
          - operator: in
            field: ai_request_model
            value:
            - request_model1
          nullable: false
      additionalProperties: false
      required:
      - tiles
    AgenticMetrics:
      description: List of aggregated metrics to collect across the requested time span.
      type: array
      items:
        type: string
        enum:
        - a2a_latency_average
        - a2a_response_size_sum
        - error_rate
        - kong_latency_average
        - kong_latency_p50
        - kong_latency_p95
        - kong_latency_p99
        - mcp_response_size_sum
        - request_count
        - request_per_minute
        - request_size_average
        - request_size_p50
        - request_size_p95
        - request_size_p99
        - request_size_sum
        - response_latency_average
        - response_latency_p50
        - response_latency_p95
        - response_latency_p99
        - response_size_average
        - response_size_p50
        - response_size_p95
        - response_size_p99
        - response_size_sum
        - upstream_latency_average
        - upstream_latency_p50
        - upstream_latency_p95
        - upstream_latency_p99
        x-speakeasy-unknown-values: allow
      default:
      - request_count
    TimeRange:
      description: The time range to query.
      default:
        type: relative
        time_range: 1h
      discriminator:
        propertyName: type
        mapping:
          relative: '#/components/schemas/MetricsRelativeTimeRangeDtoV2'
          absolute: '#/components/schemas/MetricsAbsoluteTimeRangeDtoV2'
      oneOf:
      - $ref: '#/components/schemas/MetricsRelativeTimeRangeDtoV2'
      - $ref: '#/components/schemas/MetricsAbsoluteTimeRangeDtoV2'
    DashboardResponse:
      type: object
      properties:
        name:
          description: 'The dashboard name, which is displayed at the top of the dashboard and in lists.

            It does not need to be unique.

            '
          type: string
          maxLength: 255
          minLength: 1
        definition:
          $ref: '#/components/schemas/Dashboard'
        labels:
          $ref: '#/components/schemas/Labels'
        id:
          $ref: '#/components/schemas/UUID'
        created_by:
          $ref: '#/components/schemas/UUID'
        created_at:
          $ref: '#/components/schemas/CreatedAt'
        updated_at:
          $ref: '#/components/schemas/UpdatedAt'
      required:
      - name
      - definition
      title: Dashboard Request
    DashboardUpdateRequest:
      type: object
      properties:
        name:
          description: 'The dashboard name, which is displayed at the top of the dashboard and in lists.

            It does not need to be unique.

            '
          type: string
          maxLength: 255
          minLength: 1
        definition:
          $ref: '#/components/schemas/Dashboard'
        labels:
          $ref: '#/components/schemas/Labels'
      required:
      - name
      - definition
      title: Dashboard Request
    AdvancedMetrics:
      description: List of aggregated metrics to collect across the requested time span. If no metrics are specified, request_count will be computed by default.
      type: array
      items:
        type: string
        enum:
        - kong_latency_average
        - kong_latency_p50
        - kong_latency_p95
        - kong_latency_p99
        - request_count
        - request_per_minute
        - request_size_average
        - request_size_p50
        - request_size_p95
        - request_size_p99
        - request_size_sum
        - response_latency_average
        - response_latency_p50
        - response_latency_p95
        - response_latency_p99
        - response_size_average
        - response_size_p50
        - response_size_p95
        - response_size_p99
        - response_size_sum
        - upstream_latency_average
        - upstream_latency_p50
        - upstream_latency_p95
        - upstream_latency_p99
        x-speakeasy-unknown-values: allow
      default:
      - request_count
    PageMeta:
      description: Contains pagination query parameters and the total number of objects returned.
      type: object
      properties:
        number:
          type: number
          example: 1
          x-speakeasy-terraform-ignore: true
        size:
          type: number
          example: 10
          x-speakeasy-terraform-ignore: true
        total:
          type: number
          example: 100
          x-speakeasy-terraform-ignore: true
      required:
      - number
      - size
      - total
    Chart:
      description: The type of chart to render.
      discriminator:
        propertyName: type
        mapping:
          donut: '#/components/schemas/DonutChart'
          timeseries_line: '#/components/schemas/TimeseriesChart'
          timeseries_bar: '#/components/schemas/TimeseriesChart'
          horizontal_bar: '#/components/schemas/BarChart'
          vertical_bar: '#/components/schemas/BarChart'
          single_value: '#/components/schemas/SingleValueChart'
          choropleth_map: '#/components/schemas/ChoroplethMapChart'
      oneOf:
      - $ref: '#/components/schemas/DonutChart'
      - $ref: '#/components/schemas/TimeseriesChart'
      - $ref: '#/components/schemas/BarChart'
      - $ref: '#/components/schemas/SingleValueChart'
      - $ref: '#/components/schemas/ChoroplethMapChart'
    AllFilterItems:
      type: object
      properties:
        field:
          type: string
          enum:
          - a2a_context_id
          - a2a_error
          - a2a_method
          - a2a_task_id
          - ai_plugin
          - ai_provider
          - ai_request_model
          - ai_response_model
          - api
          - api_package
          - api_product
          - api_product_version
          - application
          - consumer
          - control_plane
          - control_plane_group
          - country_code
          - data_plane_node
          - data_plane_node_version
          - gateway_service
          - llm_cache_status
          - llm_embeddings_model
          - llm_embeddings_provider
          - mcp_error
          - mcp_method
          - mcp_session_id
          - mcp_tool_name
          - portal
          - realm
          - response_source
          - route
          - status_code
          - status_code_grouped
          - upstream_status_code
          - upstream_status_code_grouped
          x-speakeasy-unknown-values: allow
        operator:
          type: string
          enum:
          - in
          - not_in
          - empty
          - not_empty
          x-speakeasy-unknown-values: allow
        value:
          x-speakeasy-type-override: any
      required:
      - field
      - operator
    DateTimeFieldFilter:
      description: Filters on the given datetime (RFC-3339) field value.
      oneOf:
      - type: object
        title: DateTimeFieldEqualsFilter
        additionalProperties: false
        properties:
          eq:
            description: Value strictly equals given RFC-3339 formatted timestamp in UTC
            type: string
            format: date-time
            example: '2022-03-30T07:20:50Z'
        required:
        - eq
      - type: object
        title: DateTimeFieldLTFilter
        additionalProperties: false
        properties:
          lt:
            description: Value is less than the given RFC-3339 formatted timestamp in UTC
            type: string
            format: date-time
            example: '2022-03-30T07:20:50Z'
        required:
        - lt
      - type: object
        title: DateTimeFieldLTEFilter
        additionalProperties: false
        properties:
          lte:
            description: Value is less than or equal to the given RFC-3339 formatted timestamp in UTC
            type: string
            format: date-time
            example: '2022-03-30T07:20:50Z'
        required:
        - lte
      - type: object
        title: DateTimeFieldGTFilter
        additionalProperties: false
        properties:
          gt:
            description: Value is greater than the given RFC-3339 formatted timestamp in UTC
            type: string
            format: date-time
            example: '2022-03-30T07:20:50Z'
        required:
        - gt
      - type: object
        title: DateTimeFieldGTEFilter
        additionalProperties: false
        properties:
          gte:
            description: Value is greater than or equal to the given RFC-3339 formatted timestamp in UTC
            type: string
            format: date-time
            example: '2022-03-30T07:20:50Z'
        required:
        - gte
      title: DateTimeFieldFilter
    ChoroplethMapChart:
      description: 'A chart that displays data on a world map. Each region on the map is colored based on the metric value.

        This chart works only with the `api_usage` datasource and requires a single metric and a single dimension of `country_code`.

        No additional dimensions are supported.

        '
      type: object


# --- truncated at 32 KB (46 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/kong/refs/heads/main/openapi/kong-dashboards-api-openapi.yml