{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/chronosphere/main/json-schema/chronosphere-configv1-list-mapping-rules-response-schema.json", "title": "configv1ListMappingRulesResponse", "x-generated": "2026-10-03", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/chronosphere-mappingrule-api-openapi.yml#/components/schemas/configv1ListMappingRulesResponse", "properties": { "mapping_rules": { "items": { "$ref": "#/$defs/configv1MappingRule" }, "type": "array" }, "page": { "$ref": "#/$defs/configv1PageResult" } }, "type": "object", "$defs": { "MappingRuleAggregationPolicy": { "properties": { "aggregation": { "allOf": [ { "$ref": "#/$defs/configv1AggregationType" } ], "description": "Defines the method by which metrics are aggregated." }, "drop_timestamp": { "description": "Deprecated: This parameter is no longer supported.", "type": "boolean" }, "interval": { "description": "The interval between aggregated data points.", "type": "string" }, "storage_policy": { "allOf": [ { "$ref": "#/$defs/configv1MappingRuleStoragePolicy" } ], "description": "Deprecated: Use `interval` instead." } }, "type": "object" }, "configv1AggregationType": { "enum": [ "LAST", "MIN", "MAX", "MEAN", "MEDIAN", "COUNT", "SUM", "SUMSQ", "STDEV", "P10", "P20", "P30", "P40", "P50", "P60", "P70", "P80", "P90", "P95", "P99", "P999", "P9999", "P25", "P75", "COUNT_SAMPLES", "HISTOGRAM" ], "type": "string" }, "configv1LabelFilter": { "properties": { "name": { "description": "The name of the label to match.", "type": "string" }, "value_glob": { "description": "The glob value of the label to match.", "type": "string" } }, "type": "object" }, "configv1MappingRule": { "properties": { "aggregation_policy": { "allOf": [ { "$ref": "#/$defs/MappingRuleAggregationPolicy" } ], "description": "Specifies how to aggregate the metric. Cannot be set if the `drop`\nparameter is set." }, "bucket_slug": { "description": "The slug of the bucket the MappingRule belongs to.", "type": "string" }, "created_at": { "description": "Timestamp of when the MappingRule was created. Cannot be set by clients.", "format": "date-time", "readOnly": true, "type": "string" }, "drop": { "description": "Specifies whether to drop the given set of metrics. Cannot be set if the\n`aggregation_policy` object is set.", "type": "boolean" }, "filters": { "description": "The filters that determine which metrics should have rules applied to them.\nTo be considered a match, a metric must meet the criteria for all of the\nfilters specified in this array.", "items": { "$ref": "#/$defs/configv1LabelFilter" }, "type": "array" }, "mode": { "allOf": [ { "$ref": "#/$defs/configv1MappingRuleMode" } ], "description": "The operational mode for this mapping rule. If set to `enabled`, the rule\nis applied. If set to `preview`, the rule is not applied, but shaping\nimpact statistics for the rule are recorded. Default: `enabled`." }, "name": { "description": "The name of the MappingRule. You can modify this value after the MappingRule is created.", "type": "string" }, "slug": { "description": "The unique identifier of the MappingRule. If a `slug` isn't provided, one is generated based on the `name` field. You can't modify this field after the MappingRule is created.", "type": "string" }, "updated_at": { "description": "Timestamp of when the MappingRule was last updated. Cannot be set by clients.", "format": "date-time", "readOnly": true, "type": "string" } }, "required": [ "filters", "name" ], "type": "object" }, "configv1MappingRuleMode": { "description": " - ENABLED: ENABLED rules are applied. Rules default to ENABLED.\n - PREVIEW: PREVIEW rules are not applied, but shaping impact stats\nfor them rule are recorded.", "enum": [ "ENABLED", "PREVIEW" ], "type": "string" }, "configv1MappingRuleStoragePolicy": { "properties": { "resolution": { "description": "Deprecated: This parameter is no longer supported.", "type": "string" }, "retention": { "description": "Deprecated: This parameter is no longer supported.", "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" } } }