Asset Diff API
Asset Diff API
GET
http://{kubecost-addresss}/model/assets/diff
The Asset Diff API provides a diff of two windows that returns all the added, removed, or cost changed assets from the later window (before parameter) to the earlier window (after parameter). This endpoint does a comparison of two asset sets in the given windows and accumulates the results.
Path Parameters
before*
String
Duration in time of the past. Supports hours or days before the current time in the following format: 2h
or 3d
. before
must be further in the past than after
(e.g. after=1d
, before=1d offset 1d
)
after*
String
Duration in time closest to now. Supports hours or days before the current time in the following format: 2h
or 3d
. after
must be closer to now than before
(e.g. before=1d offset 7d
, after=1d offset 3d
)
costChangeRatio
float64
Changes the ratio of cost changes when displaying 'Changed' types. e.g. costChangeRatio=0.1
will display all assets that had a cost change of 0.1 (10%) or more. Defaults to 0.05 (5%).
aggregate
String
Used to consolidate cost model data. Passing an empty value for this parameter, or not passing one at all, returns data by an individual asset.
filterClusters
String
Comma-separated list of clusters to match; e.g. cluster-one,cluster-two
will return results from only those two clusters.
filterNodes
String
Comma-separated list of nodes to match; e.g. node-one,node-two
will return results from only those two nodes.
filterNamespaces
String
Comma-separated list of namespaces to match; e.g. namespace-one,namespace-two
will return results from only those two namespaces.
filterLabels
String
Comma-separated list of annotations to match; e.g. app:cost-analyzer, app:prometheus
will return results with either of those two label key-value-pairs.
filterServices
String
Comma-separated list of services to match; e.g. frontend-one,frontend-two
will return results from only those two services.
filterControllerKinds
String
Comma-separated list of controller kinds to match; e.g. deployment,job
will return results with only those two controller kinds.
filterControllers
String
Comma-separated list of controllers to match; e.g. deployment-one,statefulset-two
will return results from only those two controllers.
filterPods
String
Comma-separated list of pods to match; e.g. pod-one,pod-two
will return results from only those two pods.
filterAnnotations
String
Comma-separated list of annotations to match; e.g. name:annotation-one,name:annotation-two
will return results with either of those two annotation key-value-pairs.
filterContainers
String
Comma-separated list of containers to match; e.g. container-one,container-two
will return results from only those containers.
API Examples
Compare yesterday's assets to today's assets:
http://localhost:9090/model/assets/diff?before=yesterday&after=today
Compare assets from 5 days ago to assets from the last day:
http://localhost:9090/model/assets/diff?before=1d offset 5d&after=1d
Compare assets from last month to assets from this month:
http://localhost:9090/model/assets/diff?before=lastmonth&after=month
Compare assets on 07/01/2022 to assets on 07/06/2022:
http://localhost:9090/model/assets/diff?before=2022-07-01T00:00:00Z,2022-07-02T00:00:00Z&after=2022-07-06T00:00:00Z,2022-07-07T00:00:00Z
Compare yesterday's assets to today's assets, displaying all assets that have a total cost change of 10% or more:
http://localhost:9090/model/assets/diff?before=yesterday&after=today&costChangeRatio=0.1
Last updated