Cost and billing
Get the accumulated cloud cost data
Retrieve accumulated cloud cost V2
GET
/
api
/
cost
/
v2
/
cloudCost
/
accumulated
Get the accumulated cloud cost data
curl --request GET \
--url https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated \
--header 'X-Domino-Api-Key: <api-key>'import requests
url = "https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated"
headers = {"X-Domino-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Domino-Api-Key': '<api-key>'}};
fetch('https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Domino-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Domino-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated")
.header("X-Domino-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Domino-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"amortizedCost": {
"cost": 123,
"kubernetesPercent": 123
},
"amortizedNetCost": {
"cost": 123,
"kubernetesPercent": 123
},
"invoicedCost": {
"cost": 123,
"kubernetesPercent": 123
},
"key": {},
"listCost": {
"cost": 123,
"kubernetesPercent": 123
},
"netCost": {
"cost": 123,
"kubernetesPercent": 123
},
"window": {
"end": "<string>",
"start": "<string>"
}
}
]
}{
"error": "<string>"
}{
"code": "UNAUTHORIZED",
"message": "Authentication is required to access this resource."
}{
"code": "FORBIDDEN",
"message": "You do not have permission to perform this action."
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
DominoApiKeyBearerAuthentication
Query Parameters
Duration of time over which to query. Accepts words like today, week, month, yesterday, lastweek, lastmonth; durations like 30m, 12h, 7d, or time like 2021-03-10T00:00:00Z,2021-03-11T00:00:00Z
Aggregate the cloud costs. Accepts kubecost aggregates like invoiceEntityID, accountID, provider, service, and label:. Supports multi-aggregation.
Interval to accumulate the costs. Accepts hour, day, week
filter the result by any category which you can aggregate by.
Max number of rows to fetch. Defaults to 1000.
How many rows from the start to skip. Defaults to 0.
Response
Success
Show child attributes
Show child attributes
Last modified on September 3, 2026
Was this page helpful?
⌘I
Get the accumulated cloud cost data
curl --request GET \
--url https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated \
--header 'X-Domino-Api-Key: <api-key>'import requests
url = "https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated"
headers = {"X-Domino-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Domino-Api-Key': '<api-key>'}};
fetch('https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Domino-Api-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Domino-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated")
.header("X-Domino-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mycluster.domino.tech/api/cost/v2/cloudCost/accumulated")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Domino-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"amortizedCost": {
"cost": 123,
"kubernetesPercent": 123
},
"amortizedNetCost": {
"cost": 123,
"kubernetesPercent": 123
},
"invoicedCost": {
"cost": 123,
"kubernetesPercent": 123
},
"key": {},
"listCost": {
"cost": 123,
"kubernetesPercent": 123
},
"netCost": {
"cost": 123,
"kubernetesPercent": 123
},
"window": {
"end": "<string>",
"start": "<string>"
}
}
]
}{
"error": "<string>"
}{
"code": "UNAUTHORIZED",
"message": "Authentication is required to access this resource."
}{
"code": "FORBIDDEN",
"message": "You do not have permission to perform this action."
}{
"error": "<string>"
}{
"error": "<string>"
}