openapi: 3.0.0
info:
  title: Netdata API
  description: Real-time performance and health monitoring.
  version: 1.33.1
paths:
  /info:
    get:
      summary: Get netdata basic information
      description: |
        The info endpoint returns basic information about netdata. It provides:
        * netdata version
        * netdata unique id
        * list of hosts mirrored (includes itself)
        * Operating System, Virtualization, K8s nodes and Container technology information
        * List of active collector plugins and modules
        * Streaming information
        * number of alarms in the host
          * number of alarms in normal state
          * number of alarms in warning state
          * number of alarms in critical state
      responses:
        "200":
          description: netdata basic information.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/info"
        "503":
          description: netdata daemon not ready (used for health checks).
  /charts:
    get:
      summary: Get a list of all charts available at the server
      description: The charts endpoint returns a summary about all charts stored in the
        netdata server.
      responses:
        "200":
          description: An array of charts.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/chart_summary"
  /chart:
    get:
      summary: Get info about a specific chart
      description: The Chart endpoint returns detailed information about a chart.
      parameters:
        - name: chart
          in: query
          description: The id of the chart as returned by the /charts call.
          required: true
          schema:
            type: string
            format: as returned by /charts
            default: system.cpu
      responses:
        "200":
          description: A javascript object with detailed information about the chart.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/chart"
        "400":
          description: No chart id was supplied in the request.
        "404":
          description: No chart with the given id is found.
  /alarm_variables:
    get:
      summary: List variables available to configure alarms for a chart
      description: Returns the basic information of a chart and all the variables that can
        be used in alarm and template health configurations for the particular
        chart or family.
      parameters:
        - name: chart
          in: query
          description: The id of the chart as returned by the /charts call.
          required: true
          schema:
            type: string
            format: as returned by /charts
            default: system.cpu
      responses:
        "200":
          description: A javascript object with information about the chart and the
            available variables.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/alarm_variables"
        "400":
          description: Bad request - the body will include a message stating what is wrong.
        "404":
          description: No chart with the given id is found.
        "500":
          description: Internal server error. This usually means the server is out of
            memory.
  /data:
    get:
      summary: Get collected data for a specific chart
      description: The data endpoint returns data stored in the round robin database of a
        chart.
      parameters:
        - name: chart
          in: query
          description: The id of the chart as returned by the /charts call. Note chart or context must be specified
          required: false
          allowEmptyValue: false
          schema:
            type: string
            format: as returned by /charts
            default: system.cpu
        - name: context
          in: query
          description: The context of the chart as returned by the /charts call. Note chart or context must be specified
          required: false
          allowEmptyValue: false
          schema:
            type: string
            format: as returned by /charts
        - name: dimension
          in: query
          description: Zero, one or more dimension ids or names, as returned by the /chart
            call, separated with comma or pipe. Netdata simple patterns are
            supported.
          required: false
          allowEmptyValue: false
          schema:
            type: array
            items:
              type: string
              format: as returned by /charts
        - name: after
          in: query
          description: "This parameter can either be an absolute timestamp specifying the
            starting point of the data to be returned, or a relative number of
            seconds (negative, relative to parameter: before). Netdata will
            assume it is a relative number if it is less that 3 years (in seconds).
            If not specified the default is -600 seconds. Netdata will adapt this
            parameter to the boundaries of the round robin database unless the allow_past
            option is specified."
          required: true
          allowEmptyValue: false
          schema:
            type: number
            format: integer
            default: -600
        - name: before
          in: query
          description: This parameter can either be an absolute timestamp specifying the
            ending point of the data to be returned, or a relative number of
            seconds (negative), relative to the last collected timestamp.
            Netdata will assume it is a relative number if it is less than 3
            years (in seconds). Netdata will adapt this parameter to the
            boundaries of the round robin database. The default is zero (i.e.
            the timestamp of the last value collected).
          required: false
          schema:
            type: number
            format: integer
            default: 0
        - name: points
          in: query
          description: The number of points to be returned. If not given, or it is <= 0, or
            it is bigger than the points stored in the round robin database for
            this chart for the given duration, all the available collected
            values for the given duration will be returned.
          required: true
          allowEmptyValue: false
          schema:
            type: number
            format: integer
            default: 20
        - name: chart_label_key
          in: query
          description: Specify the chart label keys that need to match for context queries as comma separated values.
            At least one matching key is needed to match the corresponding chart.
          required: false
          allowEmptyValue: false
          schema:
            type: string
            format: key1,key2,key3
        - name: chart_labels_filter
          in: query
          description: Specify the chart label keys and values to match for context queries. All keys/values need to
            match for the chart to be included in the query. The labels are specified as key1:value1,key2:value2
          required: false
          allowEmptyValue: false
          schema:
            type: string
            format: key1:value1,key2:value2,key3:value3
        - name: group
          in: query
          description: The grouping method. If multiple collected values are to be grouped
            in order to return fewer points, this parameters defines the method
            of grouping. methods supported "min", "max", "average", "sum",
            "incremental-sum". "max" is actually calculated on the absolute
            value collected (so it works for both positive and negative
            dimensions to return the most extreme value in either direction).
          required: true
          allowEmptyValue: false
          schema:
            type: string
            enum:
              - min
              - max
              - average
              - median
              - stddev
              - sum
              - incremental-sum
            default: average
        - name: gtime
          in: query
          description: The grouping number of seconds. This is used in conjunction with
            group=average to change the units of metrics (ie when the data is
            per-second, setting gtime=60 will turn them to per-minute).
          required: false
          allowEmptyValue: false
          schema:
            type: number
            format: integer
            default: 0
        - name: timeout
          in: query
          description: Specify a timeout value in milliseconds after which the agent will
            abort the query and return a 503 error. A value of 0 indicates no timeout.
          required: false
          allowEmptyValue: false
          schema:
            type: number
            format: integer
            default: 0
        - name: format
          in: query
          description: The format of the data to be returned.
          required: true
          allowEmptyValue: false
          schema:
            type: string
            enum:
              - json
              - jsonp
              - csv
              - tsv
              - tsv-excel
              - ssv
              - ssvcomma
              - datatable
              - datasource
              - html
              - markdown
              - array
              - csvjsonarray
            default: json
        - name: options
          in: query
          description: Options that affect data generation.
          required: false
          allowEmptyValue: false
          schema:
            type: array
            items:
              type: string
              enum:
                - nonzero
                - flip
                - jsonwrap
                - min2max
                - seconds
                - milliseconds
                - abs
                - absolute
                - absolute-sum
                - null2zero
                - objectrows
                - google_json
                - percentage
                - unaligned
                - match-ids
                - match-names
                - showcustomvars
                - allow_past
            default:
              - seconds
              - jsonwrap
        - name: callback
          in: query
          description: For JSONP responses, the callback function name.
          required: false
          allowEmptyValue: true
          schema:
            type: string
        - name: filename
          in: query
          description: "Add Content-Disposition: attachment; filename= header to
            the response, that will instruct the browser to save the response
            with the given filename."
          required: false
          allowEmptyValue: true
          schema:
            type: string
        - name: tqx
          in: query
          description: "[Google Visualization
            API](https://developers.google.com/chart/interactive/docs/dev/imple\
            menting_data_source?hl=en) formatted parameter."
          required: false
          allowEmptyValue: true
          schema:
            type: string
      responses:
        "200":
          description: The call was successful. The response includes the data in the
            format requested. Swagger2.0 does not process the discriminator
            field to show polymorphism. The response will be one of the
            sub-types of the data-schema according to the chosen format, e.g.
            json -> data_json.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/data"
        "400":
          description: Bad request - the body will include a message stating what is wrong.
        "404":
          description: Chart or context is not found. The supplied chart or context will be reported.
        "500":
          description: Internal server error. This usually means the server is out of
            memory.
  /badge.svg:
    get:
      summary: Generate a badge in form of SVG image for a chart (or dimension)
      description: Successful responses are SVG images.
      parameters:
        - name: chart
          in: query
          description: The id of the chart as returned by the /charts call.
          required: true
          allowEmptyValue: false
          schema:
            type: string
            format: as returned by /charts
            default: system.cpu
        - name: alarm
          in: query
          description: The name of an alarm linked to the chart.
          required: false
          allowEmptyValue: true
          schema:
            type: string
            format: any text
        - name: dimension
          in: query
          description: Zero, one or more dimension ids, as returned by the /chart call.
          required: false
          allowEmptyValue: false
          schema:
            type: array
            items:
              type: string
              format: as returned by /charts
        - name: after
          in: query
          description: This parameter can either be an absolute timestamp specifying the
            starting point of the data to be returned, or a relative number of
            seconds, to the last collected timestamp. Netdata will assume it is
            a relative number if it is smaller than the duration of the round
            robin database for this chart. So, if the round robin database is
            3600 seconds, any value from -3600 to 3600 will trigger relative
            arithmetics. Netdata will adapt this parameter to the boundaries of
            the round robin database.
          required: true
          allowEmptyValue: false
          schema:
            type: number
            format: integer
            default: -600
        - name: before
          in: query
          description: This parameter can either be an absolute timestamp specifying the
            ending point of the data to be returned, or a relative number of
            seconds, to the last collected timestamp. Netdata will assume it is
            a relative number if it is smaller than the duration of the round
            robin database for this chart. So, if the round robin database is
            3600 seconds, any value from -3600 to 3600 will trigger relative
            arithmetics. Netdata will adapt this parameter to the boundaries of
            the round robin database.
          required: false
          schema:
            type: number
            format: integer
            default: 0
        - name: group
          in: query
          description: The grouping method. If multiple collected values are to be grouped
            in order to return fewer points, this parameters defines the method
            of grouping. methods are supported "min", "max", "average", "sum",
            "incremental-sum". "max" is actually calculated on the absolute
            value collected (so it works for both positive and negative
            dimensions to return the most extreme value in either direction).
          required: true
          allowEmptyValue: false
          schema:
            type: string
            enum:
              - min
              - max
              - average
              - median
              - stddev
              - sum
              - incremental-sum
            default: average
        - name: options
          in: query
          description: Options that affect data generation.
          required: false
          allowEmptyValue: true
          schema:
            type: array
            items:
              type: string
              enum:
                - abs
                - absolute
                - display-absolute
                - absolute-sum
                - null2zero
                - percentage
                - unaligned
            default:
              - absolute
        - name: label
          in: query
          description: A text to be used as the label.
          required: false
          allowEmptyValue: true
          schema:
            type: string
            format: any text
        - name: units
          in: query
          description: A text to be used as the units.
          required: false
          allowEmptyValue: true
          schema:
            type: string
            format: any text
        - name: label_color
          in: query
          description: A color to be used for the background of the label side(left side) of the badge. One of predefined colors or specific color in hex `RGB` or `RRGGBB` format (without preceding `#` character). If value wrong or not given default color will be used.
          required: false
          allowEmptyValue: true
          schema:
            oneOf:
              - type: string
                enum:
                  - green
                  - brightgreen
                  - yellow
                  - yellowgreen
                  - orange
                  - red
                  - blue
                  - grey
                  - gray
                  - lightgrey
                  - lightgray
              - type: string
                format: ^([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$
        - name: value_color
          in: query
          description: "A color to be used for the background of the value *(right)* part of badge. You can set
            multiple using a pipe with a condition each, like this:
            `color<value|color:null` The following operators are
            supported: >, <, >=, <=, =, :null (to check if no value exists). Each color can be specified in same manner as for `label_color` parameter.
            Currently only integers are supported as values."
          required: false
          allowEmptyValue: true
          schema:
            type: string
            format: any text
        - name: text_color_lbl
          in: query
          description: Font color for label *(left)* part of the badge. One of predefined colors or as HTML hexadecimal color without preceding `#` character. Formats allowed `RGB` or `RRGGBB`. If no or wrong value given default color will be used.
          required: false
          allowEmptyValue: true
          schema:
            oneOf:
              - type: string
                enum:
                  - green
                  - brightgreen
                  - yellow
                  - yellowgreen
                  - orange
                  - red
                  - blue
                  - grey
                  - gray
                  - lightgrey
                  - lightgray
              - type: string
                format: ^([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$
        - name: text_color_val
          in: query
          description: Font color for value *(right)* part of the badge. One of predefined colors or as HTML hexadecimal color without preceding `#` character. Formats allowed `RGB` or `RRGGBB`. If no or wrong value given default color will be used.
          required: false
          allowEmptyValue: true
          schema:
            oneOf:
              - type: string
                enum:
                  - green
                  - brightgreen
                  - yellow
                  - yellowgreen
                  - orange
                  - red
                  - blue
                  - grey
                  - gray
                  - lightgrey
                  - lightgray
              - type: string
                format: ^([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$
        - name: multiply
          in: query
          description: Multiply the value with this number for rendering it at the image
            (integer value required).
          required: false
          allowEmptyValue: true
          schema:
            type: number
            format: integer
        - name: divide
          in: query
          description: Divide the value with this number for rendering it at the image
            (integer value required).
          required: false
          allowEmptyValue: true
          schema:
            type: number
            format: integer
        - name: scale
          in: query
          description: Set the scale of the badge (greater or equal to 100).
          required: false
          allowEmptyValue: true
          schema:
            type: number
            format: integer
        - name: fixed_width_lbl
          in: query
          description: This parameter overrides auto-sizing of badge and creates it with fixed width. This parameter determines the size of the label's left side *(label/name)*. You must set this parameter together with `fixed_width_val` otherwise it will be ignored. You should set the label/value widths wide enough to provide space for all the possible values/contents of the badge you're requesting. In case the text cannot fit the space given it will be clipped. The `scale` parameter still applies on the values you give to `fixed_width_lbl` and `fixed_width_val`.
          required: false
          allowEmptyValue: false
          schema:
            type: number
            format: integer
        - name: fixed_width_val
          in: query
          description: This parameter overrides auto-sizing of badge and creates it with fixed width. This parameter determines the size of the label's right side *(value)*. You must set this parameter together with `fixed_width_lbl` otherwise it will be ignored. You should set the label/value widths wide enough to provide space for all the possible values/contents of the badge you're requesting. In case the text cannot fit the space given it will be clipped. The `scale` parameter still applies on the values you give to `fixed_width_lbl` and `fixed_width_val`.
          required: false
          allowEmptyValue: false
          schema:
            type: number
            format: integer
      responses:
        "200":
          description: The call was successful. The response should be an SVG image.
        "400":
          description: Bad request - the body will include a message stating what is wrong.
        "404":
          description: No chart with the given id is found.
        "500":
          description: Internal server error. This usually means the server is out of
            memory.
  /allmetrics:
    get:
      summary: Get a value of all the metrics maintained by netdata
      description: The allmetrics endpoint returns the latest value of all charts and
        dimensions stored in the netdata server.
      parameters:
        - name: format
          in: query
          description: The format of the response to be returned.
          required: true
          schema:
            type: string
            enum:
              - shell
              - prometheus
              - prometheus_all_hosts
              - json
            default: shell
        - name: filter
          in: query
          description: Allows to filter charts out using simple patterns.
          required: false
          schema:
            type: string
            format: any text
        - name: variables
          in: query
          description: When enabled, netdata will expose various system
            configuration metrics.
          required: false
          schema:
            type: string
            enum:
              - yes
              - no
            default: no
        - name: help
          in: query
          description: Enable or disable HELP lines in prometheus output.
          required: false
          schema:
            type: string
            enum:
              - yes
              - no
            default: no
        - name: types
          in: query
          description: Enable or disable TYPE lines in prometheus output.
          required: false
          schema:
            type: string
            enum:
              - yes
              - no
            default: no
        - name: timestamps
          in: query
          description: Enable or disable timestamps in prometheus output.
          required: false
          schema:
            type: string
            enum:
              - yes
              - no
            default: yes
        - name: names
          in: query
          description: When enabled netdata will report dimension names. When disabled
            netdata will report dimension IDs. The default is controlled in
            netdata.conf.
          required: false
          schema:
            type: string
            enum:
              - yes
              - no
            default: yes
        - name: oldunits
          in: query
          description: When enabled, netdata will show metric names for the default
            source=average as they appeared before 1.12, by using the legacy
            unit naming conventions.
          required: false
          schema:
            type: string
            enum:
              - yes
              - no
            default: yes
        - name: hideunits
          in: query
          description: When enabled, netdata will not include the units in the metric
            names, for the default source=average.
          required: false
          schema:
            type: string
            enum:
              - yes
              - no
            default: yes
        - name: server
          in: query
          description: Set a distinct name of the client querying prometheus metrics.
            Netdata will use the client IP if this is not set.
          required: false
          schema:
            type: string
            format: any text
        - name: prefix
          in: query
          description: Prefix all prometheus metrics with this string.
          required: false
          schema:
            type: string
            format: any text
        - name: data
          in: query
          description: Select the prometheus response data source. There is a setting in
            netdata.conf for the default.
          required: false
          schema:
            type: string
            enum:
              - as-collected
              - average
              - sum
            default: average
      responses:
        "200":
          description: All the metrics returned in the format requested.
        "400":
          description: The format requested is not supported.
  /alarms:
    get:
      summary: Get a list of active or raised alarms on the server
      description: The alarms endpoint returns the list of all raised or enabled alarms on
        the netdata server. Called without any parameters, the raised alarms in
        state WARNING or CRITICAL are returned. By passing "?all", all the
        enabled alarms are returned.
      parameters:
        - name: all
          in: query
          description: If passed, all enabled alarms are returned.
          required: false
          allowEmptyValue: true
          schema:
            type: boolean
        - name: active
          in: query
          description: If passed, the raised alarms in state WARNING or CRITICAL are returned.
          required: false
          allowEmptyValue: true
          schema:
            type: boolean
      responses:
        "200":
          description: An object containing general info and a linked list of alarms.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/alarms"
  /alarms_values:
    get:
      summary: Get a list of active or raised alarms on the server
      description: The alarms_values endpoint returns the list of all raised or enabled alarms on
        the netdata server. Called without any parameters, the raised alarms in
        state WARNING or CRITICAL are returned. By passing "?all", all the
        enabled alarms are returned.
        This option output differs from `/alarms` in the number of variables delivered. This endpoint gives
        to user `id`, `value`, `last_updated` time, and alarm `status`.
      parameters:
        - name: all
          in: query
          description: If passed, all enabled alarms are returned.
          required: false
          allowEmptyValue: true
          schema:
            type: boolean
        - name: active
          in: query
          description: If passed, the raised alarms in state WARNING or CRITICAL are returned.
          required: false
          allowEmptyValue: true
          schema:
            type: boolean
      responses:
        "200":
          description: An object containing general info and a linked list of alarms.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/alarms_values"
  /alarm_log:
    get:
      summary: Retrieves the entries of the alarm log
      description: Returns an array of alarm_log entries, with historical information on
        raised and cleared alarms.
      parameters:
        - name: after
          in: query
          description: Passing the parameter after=UNIQUEID returns all the events in the
            alarm log that occurred after UNIQUEID. An automated series of calls
            would call the interface once without after=, store the last
            UNIQUEID of the returned set, and give it back to get incrementally
            the next events.
          required: false
          schema:
            type: integer
      responses:
        "200":
          description: An array of alarm log entries.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: "#/components/schemas/alarm_log_entry"
  /alarm_count:
    get:
      summary: Get an overall status of the chart
      description: Checks multiple charts with the same context and counts number of alarms
        with given status.
      parameters:
        - in: query
          name: context
          description: Specify context which should be checked.
          required: false
          allowEmptyValue: true
          schema:
            type: array
            items:
              type: string
            default:
              - system.cpu
        - in: query
          name: status
          description: Specify alarm status to count.
          required: false
          allowEmptyValue: true
          schema:
            type: string
            enum:
              - REMOVED
              - UNDEFINED
              - UNINITIALIZED
              - CLEAR
              - RAISED
              - WARNING
              - CRITICAL
            default: RAISED
      responses:
        "200":
          description: An object containing a count of alarms with given status for given
            contexts.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: number
        "500":
          description: Internal server error. This usually means the server is out of
            memory.
  /manage/health:
    get:
      summary: Accesses the health management API to control health checks and
        notifications at runtime.
      description: Available from Netdata v1.12 and above, protected via bearer
        authorization. Especially useful for maintenance periods, the API allows
        you to disable health checks completely, silence alarm notifications, or
        Disable/Silence specific alarms that match selectors on alarm/template
        name, chart, context, host and family. For the simple disable/silence
        all scenarios, only the cmd parameter is required. The other parameters
        are used to define alarm selectors. For more information and examples,
        refer to the netdata documentation.
      parameters:
        - name: cmd
          in: query
          description: "DISABLE ALL: No alarm criteria are evaluated, nothing is written in
            the alarm log. SILENCE ALL: No notifications are sent. RESET: Return
            to the default state. DISABLE/SILENCE: Set the mode to be used for
            the alarms matching the criteria of the alarm selectors. LIST: Show
            active configuration."
          required: false
          schema:
            type: string
            enum:
              - DISABLE ALL
              - SILENCE ALL
              - DISABLE
              - SILENCE
              - RESET
              - LIST
        - name: alarm
          in: query
          description: The expression provided will match both `alarm` and `template` names.
          schema:
            type: string
        - name: chart
          in: query
          description: Chart ids/names, as shown on the dashboard. These will match the
            `on` entry of a configured `alarm`.
          schema:
            type: string
        - name: context
          in: query
          description: Chart context, as shown on the dashboard. These will match the `on`
            entry of a configured `template`.
          schema:
            type: string
        - name: hosts
          in: query
          description: The hostnames that will need to match.
          schema:
            type: string
        - name: families
          in: query
          description: The alarm families.
          schema:
            type: string
      responses:
        "200":
          description: A plain text response based on the result of the command.
        "403":
          description: Bearer authentication error.
  /aclk:
    get:
      summary: Get information about current ACLK state
      description: aclk endpoint returns detailed information
        about current state of ACLK (Agent to Cloud communication).
      responses:
        "200":
          description: JSON object with ACLK information.
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/aclk_state"
servers:
  - url: https://registry.my-netdata.io/api/v1
  - url: http://registry.my-netdata.io/api/v1
components:
  schemas:
    info:
      type: object
      properties:
        version:
          type: string
          description: netdata version of the server.
          example: 1.11.1_rolling
        uid:
          type: string
          description: netdata unique id of the server.
          example: 24e9fe3c-f2ac-11e8-bafc-0242ac110002
        mirrored_hosts:
          type: array
          description: List of hosts mirrored of the server (include itself).
          items:
            type: string
          example:
            - host1.example.com
            - host2.example.com
        mirrored_hosts_status:
          type: array
          description: >-
            List of details of hosts mirrored to this served (including self).
            Indexes correspond to indexes in "mirrored_hosts".
          items:
            type: object
            description: Host data
            properties:
              guid:
                type: string
                format: uuid
                nullable: false
                description: Host unique GUID from `netdata.public.unique.id`.
                example: 245e4bff-3b34-47c1-a6e5-5c535a9abfb2
              reachable:
                type: boolean
                nullable: false
                description: Current state of streaming. Always true for localhost/self.
              claim_id:
                type: string
                format: uuid
                nullable: true
                description: >-
                  Cloud GUID/identifier in case the host is claimed.
                  If child status unknown or unclaimed this field is set to `null`
                example: c3b2a66a-3052-498c-ac52-7fe9e8cccb0c
        os_name:
          type: string
          description: Operating System Name.
          example: Manjaro Linux
        os_id:
          type: string
          description: Operating System ID.
          example: manjaro
        os_id_like:
          type: string
          description: Known OS similar to this OS.
          example: arch
        os_version:
          type: string
          description: Operating System Version.
          example: 18.0.4
        os_version_id:
          type: string
          description: Operating System Version ID.
          example: unknown
        os_detection:
          type: string
          description: OS parameters detection method.
          example: Mixed
        kernel_name:
          type: string
          description: Kernel Name.
          example: Linux
        kernel_version:
          type: string
          description: Kernel Version.
          example: 4.19.32-1-MANJARO
        is_k8s_node:
          type: boolean
          description: Netdata is running on a K8s node.
          example: false
        architecture:
          type: string
          description: Kernel architecture.
          example: x86_64
        virtualization:
          type: string
          description: Virtualization Type.
          example: kvm
        virt_detection:
          type: string
          description: Virtualization detection method.
          example: systemd-detect-virt
        container:
          type: string
          description: Container technology.
          example: docker
        container_detection:
          type: string
          description: Container technology detection method.
          example: dockerenv
        stream_compression:
          type: boolean
          description: Stream transmission compression method.
          example: true
        labels:
          type: object
          description: List of host labels.
          properties:
            app:
              type: string
              description: Host label.
              example: netdata
        collectors:
          type: array
          items:
            type: object
            description: Array of collector plugins and modules.
            properties:
              plugin:
                type: string
                description: Collector plugin.
                example: python.d.plugin
              module:
                type: string
                description: Module of the collector plugin.
                example: dockerd
        alarms:
          type: object
          description: Number of alarms in the server.
          properties:
            normal:
              type: integer
              description: Number of alarms in normal state.
            warning:
              type: integer
              description: Number of alarms in warning state.
            critical:
              type: integer
              description: Number of alarms in critical state.
    chart_summary:
      type: object
      properties:
        hostname:
          type: string
          description: The hostname of the netdata server.
        version:
          type: string
          description: netdata version of the server.
        release_channel:
          type: string
          description: The release channel of the build on the server.
          example: nightly
        timezone:
          type: string
          description: The current timezone on the server.
        os:
          type: string
          description: The netdata server host operating system.
          enum:
            - macos
            - linux
            - freebsd
        history:
          type: number
          description: The duration, in seconds, of the round robin database maintained by
            netdata.
        memory_mode:
          type: string
          description: The name of the database memory mode on the server.
        update_every:
          type: number
          description: The default update frequency of the netdata server. All charts have
            an update frequency equal or bigger than this.
        charts:
          type: object
          description: An object containing all the chart objects available at the netdata
            server. This is used as an indexed array. The key of each chart
            object is the id of the chart.
          additionalProperties:
            $ref: "#/components/schemas/chart"
        charts_count:
          type: number
          description: The number of charts.
        dimensions_count:
          type: number
          description: The total number of dimensions.
        alarms_count:
          type: number
          description: The number of alarms.
        rrd_memory_bytes:
          type: number
          description: The size of the round robin database in bytes.
    chart:
      type: object
      properties:
        id:
          type: string
          description: The unique id of the chart.
        name:
          type: string
          description: The name of the chart.
        type:
          type: string
          description: The type of the chart. Types are not handled by netdata. You can use
            this field for anything you like.
        family:
          type: string
          description: The family of the chart. Families are not handled by netdata. You
            can use this field for anything you like.
        title:
          type: string
          description: The title of the chart.
        priority:
          type: number
          description: The relative priority of the chart. Netdata does not care about
            priorities. This is just an indication of importance for the chart
            viewers to sort charts of higher priority (lower number) closer to
            the top. Priority sorting should only be used among charts of the
            same type or family.
        enabled:
          type: boolean
          description: True when the chart is enabled. Disabled charts do not currently
            collect values, but they may have historical values available.
        units:
          type: string
          description: The unit of measurement for the values of all dimensions of the
            chart.
        data_url:
          type: string
          description: The absolute path to get data values for this chart. You are
            expected to use this path as the base when constructing the URL to
            fetch data values for this chart.
        chart_type:
          type: string
          description: The chart type.
          enum:
            - line
            - area
            - stacked
        duration:
          type: number
          description: The duration, in seconds, of the round robin database maintained by
            netdata.
        first_entry:
          type: number
          description: The UNIX timestamp of the first entry (the oldest) in the round
            robin database.
        last_entry:
          type: number
          description: The UNIX timestamp of the latest entry in the round robin database.
        update_every:
          type: number
          description: The update frequency of this chart, in seconds. One value every this
            amount of time is kept in the round robin database.
        dimensions:
          type: object
          description: "An object containing all the chart dimensions available for the
            chart. This is used as an indexed array. For each pair in the
            dictionary: the key is the id of the dimension and the value is a
            dictionary containing the name."
          additionalProperties:
            type: object
            properties:
              name:
                type: string
                description: The name of the dimension
        chart_variables:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/chart_variables"
        green:
          type: number
          nullable: true
          description: Chart health green threshold.
        red:
          type: number
          nullable: true
          description: Chart health red threshold.
    alarm_variables:
      type: object
      properties:
        chart:
          type: string
          description: The unique id of the chart.
        chart_name:
          type: string
          description: The name of the chart.
        cnart_context:
          type: string
          description: The context of the chart. It is shared across multiple monitored
            software or hardware instances and used in alarm templates.
        family:
          type: string
          description: The family of the chart.
        host:
          type: string
          description: The host containing the chart.
        chart_variables:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/chart_variables"
        family_variables:
          type: object
          properties:
            varname1:
              type: number
              format: float
            varname2:
              type: number
              format: float
        host_variables:
          type: object
          properties:
            varname1:
              type: number
              format: float
            varname2:
              type: number
              format: float
    chart_variables:
      type: object
      properties:
        varname1:
          type: number
          format: float
        varname2:
          type: number
          format: float
    data:
      type: object
      discriminator:
        propertyName: format
      description: Response will contain the appropriate subtype, e.g. data_json depending
        on the requested format.
      properties:
        api:
          type: number
          description: The API version this conforms to, currently 1.
        id:
          type: string
          description: The unique id of the chart.
        name:
          type: string
          description: The name of the chart.
        update_every:
          type: number
          description: The update frequency of this chart, in seconds. One value every this
            amount of time is kept in the round robin database (independently of
            the current view).
        view_update_every:
          type: number
          description: The current view appropriate update frequency of this chart, in
            seconds. There is no point to request chart refreshes, using the
            same settings, more frequently than this.
        first_entry:
          type: number
          description: The UNIX timestamp of the first entry (the oldest) in the round
            robin database (independently of the current view).
        last_entry:
          type: number
          description: The UNIX timestamp of the latest entry in the round robin database
            (independently of the current view).
        after:
          type: number
          description: The UNIX timestamp of the first entry (the oldest) returned in this
            response.
        before:
          type: number
          description: The UNIX timestamp of the latest entry returned in this response.
        min:
          type: number
          description: The minimum value returned in the current view. This can be used to
            size the y-series of the chart.
        max:
          type: number
          description: The maximum value returned in the current view. This can be used to
            size the y-series of the chart.
        dimension_names:
          description: The dimension names of the chart as returned in the current view.
          type: array
          items:
            type: string
        dimension_ids:
          description: The dimension IDs of the chart as returned in the current view.
          type: array
          items:
            type: string
        latest_values:
          description: The latest values collected for the chart (independently of the
            current view).
          type: array
          items:
            type: string
        view_latest_values:
          description: The latest values returned with this response.
          type: array
          items:
            type: string
        dimensions:
          type: number
          description: The number of dimensions returned.
        points:
          type: number
          description: The number of rows / points returned.
        format:
          type: string
          description: The format of the result returned.
        chart_variables:
          type: object
          additionalProperties:
            $ref: "#/components/schemas/chart_variables"
    data_json:
      description: Data response in json format.
      allOf:
        - $ref: "#/components/schemas/data"
        - properties:
            result:
              type: object
              properties:
                labels:
                  description: The dimensions retrieved from the chart.
                  type: array
                  items:
                    type: string
                data:
                  description: The data requested, one element per sample with each element
                    containing the values of the dimensions described in the
                    labels value.
                  type: array
                  items:
                    type: number
              description: The result requested, in the format requested.
    data_flat:
      description: Data response in csv / tsv / tsv-excel / ssv / ssv-comma / markdown /
        html formats.
      allOf:
        - $ref: "#/components/schemas/data"
        - properties:
            result:
              type: string
    data_array:
      description: Data response in array format.
      allOf:
        - $ref: "#/components/schemas/data"
        - properties:
            result:
              type: array
              items:
                type: number
    data_csvjsonarray:
      description: Data response in csvjsonarray format.
      allOf:
        - $ref: "#/components/schemas/data"
        - properties:
            result:
              description: The first inner array contains strings showing the labels of
                each column, each subsequent array contains the values for each
                point in time.
              type: array
              items:
                type: array
                items: {}
    data_datatable:
      description: Data response in datatable / datasource formats (suitable for Google
        Charts).
      allOf:
        - $ref: "#/components/schemas/data"
        - properties:
            result:
              type: object
              properties:
                cols:
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        description: Always empty - for future use.
                      label:
                        description: The dimension returned from the chart.
                      pattern:
                        description: Always empty - for future use.
                      type:
                        description: The type of data in the column / chart-dimension.
                      p:
                        description: Contains any annotations for the column.
                    required:
                      - id
                      - label
                      - pattern
                      - type
                rows:
                  type: array
                  items:
                    type: object
                    properties:
                      c:
                        type: array
                        items:
                          properties:
                            v:
                              description: "Each value in the row is represented by an
                                object named `c` with five v fields: data, null,
                                null, 0, the value. This format is fixed by the
                                Google Charts API."
    alarms:
      type: object
      properties:
        hostname:
          type: string
        latest_alarm_log_unique_id:
          type: integer
          format: int32
        status:
          type: boolean
        now:
          type: integer
          format: int32
        alarms:
          type: object
          properties:
            chart-name.alarm-name:
              type: object
              properties:
                id:
                  type: integer
                  format: int32
                name:
                  type: string
                  description: Full alarm name.
                chart:
                  type: string
                family:
                  type: string
                active:
                  type: boolean
                  description: Will be false only if the alarm is disabled in the
                    configuration.
                disabled:
                  type: boolean
                  description: Whether the health check for this alarm has been disabled
                    via a health command API DISABLE command.
                silenced:
                  type: boolean
                  description: Whether notifications for this alarm have been silenced via
                    a health command API SILENCE command.
                exec:
                  type: string
                recipient:
                  type: string
                source:
                  type: string
                units:
                  type: string
                info:
                  type: string
                status:
                  type: string
                last_status_change:
                  type: integer
                  format: int32
                last_updated:
                  type: integer
                  format: int32
                next_update:
                  type: integer
                  format: int32
                update_every:
                  type: integer
                  format: int32
                delay_up_duration:
                  type: integer
                  format: int32
                delay_down_duration:
                  type: integer
                  format: int32
                delay_max_duration:
                  type: integer
                  format: int32
                delay_multiplier:
                  type: integer
                  format: int32
                delay:
                  type: integer
                  format: int32
                delay_up_to_timestamp:
                  type: integer
                  format: int32
                value_string:
                  type: string
                no_clear_notification:
                  type: boolean
                lookup_dimensions:
                  type: string
                db_after:
                  type: integer
                  format: int32
                db_before:
                  type: integer
                  format: int32
                lookup_method:
                  type: string
                lookup_after:
                  type: integer
                  format: int32
                lookup_before:
                  type: integer
                  format: int32
                lookup_options:
                  type: string
                calc:
                  type: string
                calc_parsed:
                  type: string
                warn:
                  type: string
                warn_parsed:
                  type: string
                crit:
                  type: string
                crit_parsed:
                  type: string
                warn_repeat_every:
                  type: integer
                  format: int32
                crit_repeat_every:
                  type: integer
                  format: int32
                green:
                  type: string
                  format: nullable
                red:
                  type: string
                  format: nullable
                value:
                  type: number
    alarm_log_entry:
      type: object
      properties:
        hostname:
          type: string
        unique_id:
          type: integer
          format: int32
        alarm_id:
          type: integer
          format: int32
        alarm_event_id:
          type: integer
          format: int32
        name:
          type: string
        chart:
          type: string
        family:
          type: string
        processed:
          type: boolean
        updated:
          type: boolean
        exec_run:
          type: integer
          format: int32
        exec_failed:
          type: boolean
        exec:
          type: string
        recipient:
          type: string
        exec_code:
          type: integer
          format: int32
        source:
          type: string
        units:
          type: string
        when:
          type: integer
          format: int32
        duration:
          type: integer
          format: int32
        non_clear_duration:
          type: integer
          format: int32
        status:
          type: string
        old_status:
          type: string
        delay:
          type: integer
          format: int32
        delay_up_to_timestamp:
          type: integer
          format: int32
        updated_by_id:
          type: integer
          format: int32
        updates_id:
          type: integer
          format: int32
        value_string:
          type: string
        old_value_string:
          type: string
        silenced:
          type: string
        info:
          type: string
        value:
          type: number
          nullable: true
        old_value:
          type: number
          nullable: true
    alarms_values:
      type: object
      properties:
        hostname:
          type: string
        alarms:
          type: object
          description: HashMap with keys being alarm names
          additionalProperties:
            type: object
            properties:
              id:
                type: integer
              value:
                type: integer
              last_updated:
                type: integer
                format: int32
              status:
                type: string
                enum:
                  - REMOVED
                  - UNDEFINED
                  - UNINITIALIZED
                  - CLEAR
                  - RAISED
                  - WARNING
                  - CRITICAL
                  - UNKNOWN
    aclk_state:
      type: object
      properties:
        aclk-available:
          type: string
          description: Describes whether this agent is capable of connection to the Cloud.
            False means agent has been built without ACLK component either on purpose (user choice) or due to missing dependency.
        aclk-version:
          type: integer
          description: Describes which ACLK version is currently used.
        protocols-supported:
          type: array
          description: List of supported protocols for communication with Cloud.
          items:
            type: string
        agent-claimed:
          type: boolean
          description: Informs whether this agent has been added to a space in the cloud (User has to perform claiming).
            If false (user didn't perform claiming) agent will never attempt any cloud connection.
        claimed_id:
          type: string
          format: uuid
          description: Unique ID this agent uses to identify when connecting to cloud
        online:
          type: boolean
          description: Informs if this agent was connected to the cloud at the time this request has been processed.
        used-cloud-protocol:
          type: string
          description: Informs which protocol is used to communicate with cloud
          enum:
            - Old
            - New
