Chronosphere State V1 API

The State API from Chronosphere - 3 read-only operations exposing derived state: metric usage by metric name, metric usage by label name, and rule evaluation health. The cost and cardinality analysis surface.

Operations 3

GET /api/v1/state/metric-usages-by-label-name #
GET /api/v1/state/metric-usages-by-metric-name #
GET /api/v1/state/rule-evaluations #

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/chronosphere-state-v1-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

chronosphere-state-v1-api-openapi.json Raw ↑
{
  "components": {
    "schemas": {
      "MetricUsageQueryExecutionCountsByType": {
        "properties": {
          "dashboard": {
            "format": "int32",
            "type": "integer"
          },
          "explorer": {
            "format": "int32",
            "type": "integer"
          },
          "external": {
            "format": "int32",
            "type": "integer"
          }
        },
        "type": "object"
      },
      "MetricUsageReferenceCountsByType": {
        "properties": {
          "aggregation_rules": {
            "format": "int32",
            "type": "integer"
          },
          "dashboards": {
            "format": "int32",
            "type": "integer"
          },
          "drop_rules": {
            "format": "int32",
            "type": "integer"
          },
          "monitors": {
            "format": "int32",
            "type": "integer"
          },
          "recording_rules": {
            "format": "int32",
            "type": "integer"
          }
        },
        "type": "object"
      },
      "RuleEvaluationRuleType": {
        "enum": [
          "MONITOR",
          "RECORDING"
        ],
        "type": "string"
      },
      "RuleEvaluationSeverity": {
        "description": "Severity of the rule evaluation issue.\n\n - SEVERITY_ERROR: A hard evaluation failure.\n - SEVERITY_WARNING: A non-fatal warning; the evaluation succeeded but something needs attention.",
        "enum": [
          "SEVERITY_ERROR",
          "SEVERITY_WARNING"
        ],
        "type": "string"
      },
      "apiError": {
        "properties": {
          "message": {
            "description": "An error message describing what went wrong.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "configv1PageResult": {
        "properties": {
          "next_token": {
            "description": "An opaque page token that identifies the next page of items that the\nclient should request. An empty value indicates that there are no\nmore items to return.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "statev1ListMetricUsagesByLabelNameResponse": {
        "properties": {
          "page": {
            "$ref": "#/components/schemas/configv1PageResult"
          },
          "usages": {
            "items": {
              "$ref": "#/components/schemas/statev1MetricUsageByLabelName"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "statev1ListMetricUsagesByMetricNameResponse": {
        "properties": {
          "page": {
            "$ref": "#/components/schemas/configv1PageResult"
          },
          "usages": {
            "items": {
              "$ref": "#/components/schemas/statev1MetricUsageByMetricName"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "statev1ListRuleEvaluationsResponse": {
        "properties": {
          "page": {
            "$ref": "#/components/schemas/configv1PageResult"
          },
          "rule_evaluations": {
            "items": {
              "$ref": "#/components/schemas/statev1RuleEvaluation"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "statev1MetricUsage": {
        "properties": {
          "query_execution_counts_by_type": {
            "$ref": "#/components/schemas/MetricUsageQueryExecutionCountsByType"
          },
          "reference_counts_by_type": {
            "$ref": "#/components/schemas/MetricUsageReferenceCountsByType"
          },
          "total_query_executions": {
            "format": "int32",
            "type": "integer"
          },
          "total_references": {
            "format": "int32",
            "type": "integer"
          },
          "total_unique_users": {
            "format": "int32",
            "type": "integer"
          },
          "utility_score": {
            "format": "double",
            "type": "number"
          }
        },
        "type": "object"
      },
      "statev1MetricUsageByLabelName": {
        "properties": {
          "dpps": {
            "format": "double",
            "type": "number"
          },
          "label_name": {
            "type": "string"
          },
          "percent_of_series_with_label_name": {
            "description": "Percent of persisted series observed to have the label name.\nReturns in format: [0.0, 100.0]",
            "format": "double",
            "type": "number"
          },
          "total_unique_values": {
            "format": "int32",
            "type": "integer"
          },
          "usage": {
            "$ref": "#/components/schemas/statev1MetricUsage"
          }
        },
        "type": "object"
      },
      "statev1MetricUsageByMetricName": {
        "properties": {
          "dpps": {
            "format": "double",
            "type": "number"
          },
          "metric_name": {
            "type": "string"
          },
          "usage": {
            "$ref": "#/components/schemas/statev1MetricUsage"
          }
        },
        "type": "object"
      },
      "statev1RuleEvaluation": {
        "properties": {
          "count": {
            "description": "The number of rule evaluation issues occurred over last 5 minutes.",
            "format": "int32",
            "type": "integer"
          },
          "detected_at": {
            "description": "Timestamp when the rule evaluation issues are detected.\nRule evaluations issues are aggregated over last 5 minute leading up to detected_at.",
            "format": "date-time",
            "type": "string"
          },
          "message": {
            "description": "Detailed message related to rule evaluation issue. See \"Admin \u003e Evaluation failures\" in the Chronosphere documentation for more information.",
            "type": "string"
          },
          "rule_slug": {
            "description": "Unique identifier of the rule.",
            "type": "string"
          },
          "rule_type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RuleEvaluationRuleType"
              }
            ],
            "description": "Type of the rule.",
            "example": "MONITOR"
          },
          "severity": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RuleEvaluationSeverity"
              }
            ],
            "description": "Severity of the rule evaluation issue. WARNING-severity issues are only returned when\ninclude_warnings is set on the request.",
            "example": "SEVERITY_ERROR"
          }
        },
        "type": "object"
      }
    },
    "securitySchemes": {
      "ApiKeyAuth": {
        "description": "Chronosphere API token",
        "in": "header",
        "name": "API-Token",
        "type": "apiKey"
      }
    }
  },
  "info": {
    "description": "\nThe State API provides HTTP/JSON REST endpoints for accessing the runtime state\nof the Chronosphere system.\n\nUse this link to download the raw Swagger specification:\n\u003ca href=\"/api/v1/state/swagger.json\"\u003e/api/v1/state/swagger.json\u003c/a\u003e\n",
    "title": "State V1 API",
    "version": "v1"
  },
  "openapi": "3.0.3",
  "paths": {
    "/api/v1/state/metric-usages-by-label-name": {
      "get": {
        "operationId": "ListMetricUsagesByLabelName",
        "parameters": [
          {
            "description": "Sets the preferred number of items to return per page. If set to `0`, the\nserver will use its default value. Regardless of the value specified, clients\nmust never assume how many items will be returned.",
            "in": "query",
            "name": "page.max_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "description": "An opaque page token that identifies which page the client should request.\nAn empty value indicates the first page.",
            "in": "query",
            "name": "page.token",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "order.ascending",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "order.by",
            "schema": {
              "enum": [
                "VALUABLE",
                "DPPS",
                "UTILITY",
                "REFERENCES",
                "EXECUTIONS",
                "UNIQUE_VALUES",
                "UNIQUE_USERS"
              ],
              "type": "string"
            }
          },
          {
            "description": "Controls the time range over which query executions are included in usages. Defaults to `2592000` (30 days).",
            "in": "query",
            "name": "lookback_secs",
            "schema": {
              "format": "int32",
              "type": "integer"
            }
          },
          {
            "description": "Glob match string for filtering results by label name.",
            "in": "query",
            "name": "label_name_glob",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "If `true`, responses include the fields `reference_counts_by_type` and `query_execution_counts_by_type`. If `false`, these fields are returned empty.",
            "in": "query",
            "name": "include_counts_by_type",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/statev1ListMetricUsagesByLabelNameResponse"
                }
              }
            },
            "description": "A successful response."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/apiError"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "tags": [
          "MetricUsagesByLabelName"
        ]
      }
    },
    "/api/v1/state/metric-usages-by-metric-name": {
      "get": {
        "operationId": "ListMetricUsagesByMetricName",
        "parameters": [
          {
            "description": "Sets the preferred number of items to return per page. If set to `0`, the\nserver will use its default value. Regardless of the value specified, clients\nmust never assume how many items will be returned.",
            "in": "query",
            "name": "page.max_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "description": "An opaque page token that identifies which page the client should request.\nAn empty value indicates the first page.",
            "in": "query",
            "name": "page.token",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "order.ascending",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "in": "query",
            "name": "order.by",
            "schema": {
              "enum": [
                "VALUABLE",
                "DPPS",
                "UTILITY",
                "REFERENCES",
                "EXECUTIONS",
                "UNIQUE_VALUES",
                "UNIQUE_USERS"
              ],
              "type": "string"
            }
          },
          {
            "description": "Controls the time range over which query executions are included in usages. Defaults to `2592000` (30 days).",
            "in": "query",
            "name": "lookback_secs",
            "schema": {
              "format": "int32",
              "type": "integer"
            }
          },
          {
            "description": "Glob match string for filtering results by metric name.",
            "in": "query",
            "name": "metric_name_glob",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "If `true`, responses include the fields `reference_counts_by_type` and `query_execution_counts_by_type`. If `false`, these fields are returned empty.",
            "in": "query",
            "name": "include_counts_by_type",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/statev1ListMetricUsagesByMetricNameResponse"
                }
              }
            },
            "description": "A successful response."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/apiError"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "tags": [
          "MetricUsagesByMetricName"
        ]
      }
    },
    "/api/v1/state/rule-evaluations": {
      "get": {
        "operationId": "ListRuleEvaluations",
        "parameters": [
          {
            "description": "Sets the preferred number of items to return per page. If set to `0`, the\nserver will use its default value. Regardless of the value specified, clients\nmust never assume how many items will be returned.",
            "in": "query",
            "name": "page.max_size",
            "schema": {
              "format": "int64",
              "type": "integer"
            }
          },
          {
            "description": "An opaque page token that identifies which page the client should request.\nAn empty value indicates the first page.",
            "in": "query",
            "name": "page.token",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "When false (default), only failures are returned. Set true to also include non-fatal warnings.",
            "in": "query",
            "name": "include_warnings",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/statev1ListRuleEvaluationsResponse"
                }
              }
            },
            "description": "A successful response."
          },
          "default": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/apiError"
                }
              }
            },
            "description": "An unexpected error response."
          }
        },
        "tags": [
          "RuleEvaluations"
        ]
      }
    }
  },
  "security": [
    {
      "ApiKeyAuth": []
    }
  ],
  "servers": [
    {
      "url": "https://{tenant}.chronosphere.io",
      "variables": {
        "tenant": {
          "default": "tenant",
          "description": "tenant ID assigned by the service provider"
        }
      }
    }
  ],
  "tags": [
    {
      "name": "StateV1"
    }
  ]
}