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.
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.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/chronosphere-state-v1-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.
{
"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"
}
]
}