{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://github.com/api-evangelist/kubecost/blob/main/json-schema/savings-recommendation.json", "title": "Kubecost Savings Recommendation", "description": "A savings recommendation for optimizing Kubernetes infrastructure costs, including cluster right-sizing and container request right-sizing suggestions.", "type": "object", "properties": { "clusterName": { "type": "string", "description": "Name of the cluster the recommendation applies to." }, "namespace": { "type": "string", "description": "Namespace of the workload (for container-level recommendations)." }, "controllerKind": { "type": "string", "description": "Kind of controller (e.g. Deployment, StatefulSet)." }, "controllerName": { "type": "string", "description": "Name of the controller." }, "containerName": { "type": "string", "description": "Name of the container (for container-level recommendations)." }, "currentMonthlyRate": { "type": "number", "description": "Current monthly cost rate." }, "recommendedMonthlyRate": { "type": "number", "description": "Recommended monthly cost rate after optimization." }, "monthlySavings": { "type": "number", "description": "Estimated monthly savings from the recommendation." }, "currentNodeCount": { "type": "integer", "description": "Current number of nodes in the cluster (for cluster-level recommendations)." }, "recommendedNodeCount": { "type": "integer", "description": "Recommended number of nodes (for cluster-level recommendations)." }, "currentNodeType": { "type": "string", "description": "Current node instance type (for cluster-level recommendations)." }, "recommendedNodeType": { "type": "string", "description": "Recommended node instance type (for cluster-level recommendations)." }, "currentCPURequest": { "type": "number", "description": "Current CPU request (for container-level recommendations)." }, "recommendedCPURequest": { "type": "number", "description": "Recommended CPU request (for container-level recommendations)." }, "currentRAMBytesRequest": { "type": "number", "description": "Current RAM request in bytes (for container-level recommendations)." }, "recommendedRAMBytesRequest": { "type": "number", "description": "Recommended RAM request in bytes (for container-level recommendations)." } } }