Get historical cost across multi-org and single root-org accounts.
Cost data for a given month becomes available no later than the 16th of the following month.
This endpoint requires
all
of the following permissions:
usage_read
billing_read
OAuth apps require the usage_read, billing_read authorization scope to access this endpoint.
Arguments
Query Strings
Name
Type
Description
start_month [required]
string
Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM] for cost beginning this month.
view
string
String to specify whether cost is broken down at a parent-org level or at the sub-org level. Available views are summary and sub-org. Defaults to summary.
end_month
string
Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM] for cost ending this month.
include_connected_accounts
boolean
Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to false.
"""
Get historical cost across your account returns "OK" response
"""fromdatetimeimportdatetimefromdateutil.relativedeltaimportrelativedeltafromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.usage_metering_apiimportUsageMeteringApiconfiguration=Configuration()withApiClient(configuration)asapi_client:api_instance=UsageMeteringApi(api_client)response=api_instance.get_historical_cost_by_org(start_month=(datetime.now()+relativedelta(months=-2)),view="sub-org",)print(response)
# Get historical cost across your account returns "OK" responserequire"datadog_api_client"api_instance=DatadogAPIClient::V2::UsageMeteringAPI.newopts={view:"sub-org",}papi_instance.get_historical_cost_by_org((Time.now+-2*86400*30),opts)
// Get historical cost across your account returns "OK" responsepackagemainimport("context""encoding/json""fmt""os""time""github.com/DataDog/datadog-api-client-go/v2/api/datadog""github.com/DataDog/datadog-api-client-go/v2/api/datadogV2")funcmain(){ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewUsageMeteringApi(apiClient)resp,r,err:=api.GetHistoricalCostByOrg(ctx,time.Now().AddDate(0,-2,0),*datadogV2.NewGetHistoricalCostByOrgOptionalParameters().WithView("sub-org"))iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `UsageMeteringApi.GetHistoricalCostByOrg`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `UsageMeteringApi.GetHistoricalCostByOrg`:\n%s\n",responseContent)}
// Get historical cost across your account returns "OK" responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.UsageMeteringApi;importcom.datadog.api.client.v2.api.UsageMeteringApi.GetHistoricalCostByOrgOptionalParameters;importcom.datadog.api.client.v2.model.CostByOrgResponse;importjava.time.OffsetDateTime;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();UsageMeteringApiapiInstance=newUsageMeteringApi(defaultClient);try{CostByOrgResponseresult=apiInstance.getHistoricalCostByOrg(OffsetDateTime.now().plusMonths(-2),newGetHistoricalCostByOrgOptionalParameters().view("sub-org"));System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling UsageMeteringApi#getHistoricalCostByOrg");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
// Get historical cost across your account returns "OK" response
usechrono::{DateTime,Utc};usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_usage_metering::GetHistoricalCostByOrgOptionalParams;usedatadog_api_client::datadogV2::api_usage_metering::UsageMeteringAPI;#[tokio::main]asyncfnmain(){letconfiguration=datadog::Configuration::new();letapi=UsageMeteringAPI::with_config(configuration);letresp=api.get_historical_cost_by_org(DateTime::parse_from_rfc3339("2021-09-11T11:11:11+00:00").expect("Failed to parse datetime").with_timezone(&Utc),GetHistoricalCostByOrgOptionalParams::default().view("sub-org".to_string()),).await;ifletOk(value)=resp{println!("{:#?}",value);}else{println!("{:#?}",resp.unwrap_err());}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_API_KEY="<DD_API_KEY>"DD_APP_KEY="<DD_APP_KEY>"cargo run
/**
* Get historical cost across your account returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.UsageMeteringApi(configuration);constparams: v2.UsageMeteringApiGetHistoricalCostByOrgRequest={startMonth: newDate(newDate().getTime()+-2*86400*30*1000),view:"sub-org",};apiInstance.getHistoricalCostByOrg(params).then((data: v2.CostByOrgResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));