Kubecost · Schema
Kubecost Asset
An individual Kubernetes infrastructure asset such as a node, disk, or load balancer, with associated cost data over a given time window.
Cloud CostCost MonitoringKubernetesOptimizationSpending
Properties
| Name | Type | Description |
|---|---|---|
| type | string | Type of asset (e.g. Node, Disk, LoadBalancer, ClusterManagement, Network, Attached). |
| properties | object | Metadata properties associated with this asset. |
| window | object | The time window for this asset cost record. |
| start | string | Start time of the asset record. |
| end | string | End time of the asset record. |
| minutes | number | Duration in minutes for the asset record. |
| adjustment | number | Cost adjustment applied to the asset. |
| totalCost | number | Total cost of the asset over the window. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://github.com/api-evangelist/kubecost/blob/main/json-schema/asset.json",
"title": "Kubecost Asset",
"description": "An individual Kubernetes infrastructure asset such as a node, disk, or load balancer, with associated cost data over a given time window.",
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Type of asset (e.g. Node, Disk, LoadBalancer, ClusterManagement, Network, Attached)."
},
"properties": {
"type": "object",
"description": "Metadata properties associated with this asset.",
"properties": {
"cluster": {
"type": "string",
"description": "Cluster name."
},
"name": {
"type": "string",
"description": "Asset name."
},
"providerID": {
"type": "string",
"description": "Cloud provider resource identifier."
},
"provider": {
"type": "string",
"description": "Cloud provider name (e.g. AWS, Azure, GCP)."
},
"account": {
"type": "string",
"description": "Cloud provider account identifier."
},
"project": {
"type": "string",
"description": "Cloud provider project identifier."
},
"service": {
"type": "string",
"description": "Cloud provider service name."
},
"category": {
"type": "string",
"description": "Asset category."
},
"labels": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "Labels applied to the asset."
}
}
},
"window": {
"type": "object",
"description": "The time window for this asset cost record.",
"properties": {
"start": {
"type": "string",
"format": "date-time",
"description": "Start of the window."
},
"end": {
"type": "string",
"format": "date-time",
"description": "End of the window."
}
}
},
"start": {
"type": "string",
"format": "date-time",
"description": "Start time of the asset record."
},
"end": {
"type": "string",
"format": "date-time",
"description": "End time of the asset record."
},
"minutes": {
"type": "number",
"description": "Duration in minutes for the asset record."
},
"adjustment": {
"type": "number",
"description": "Cost adjustment applied to the asset."
},
"totalCost": {
"type": "number",
"description": "Total cost of the asset over the window."
}
}
}