Catch up on the latest product updates, best practices, and expert insights from the Checkmk Conference #12 – Watch the livestream recordings now

Werk #22454: Status of the Checkmk services: all states are mandatory

Component Setup
Title Status of the Checkmk services: all states are mandatory
Date Oct 26, 2026
Level Trivial Change
Class New Feature
Compatibility Incompatible - Manual interaction might be required
Checkmk versions & editions
3.0.0b1
Not yet released
Checkmk Community, Checkmk Pro, Checkmk Ultimate, Checkmk Cloud, Checkmk Ultimate MT

The rule Status of the Checkmk services now requires every state to be set, both under Overall status and in each entry of Individual states per data source.

This is incompatible for users that configure this rule via REST API.

Previously, states you didn't set fell back to built-in defaults: WARN for warnings reported by the data source, CRIT for connection problems and timeouts, UNKNOWN for unhandled exceptions, and WARN for missing sections. Individual data source entries never inherit from the overall setting, so the effective configuration was often not what the rule showed. The GUI now shows every state explicitly.

Existing rules are migrated during the update: the former defaults are filled in, so their behavior does not change.

REST API

If you create or edit rules of this ruleset via the REST API, value_raw must now contain all states. Every entry, overall or individual, needs warnings, connection, timeout and exception, and the overall entry also needs missing_sections. Values with missing states are rejected with HTTP 400 ("Outdated value format", see Werk #22104). For example, {"overall": {"connection": 0}} is now rejected. Use {"overall": {"warnings": 1, "connection": 0, "timeout": 2, "exception": 3, "missing_sections": 1}} instead.

Reading a rule, modifying it and writing it back keeps working, because existing rules already contain all states after the update.

To the list of all Werks