List Cloud Cost Management tag key metadata, including row counts, cost covered, cardinality, and a sample of top tag values per cloud account. Use filter[daily]=true to return daily rows instead of the default monthly roll-up.
This endpoint requires the cloud_cost_management_read permission.
OAuth apps require the cloud_cost_management_read authorization scope to access this endpoint.
Arguments
Query Strings
Name
Type
Description
filter[month] [required]
string
The month to scope the query to, in YYYY-MM format.
filter[provider]
string
Filter results to a specific provider. Common cloud values are aws, azure, gcp, Oracle (OCI), and custom. SaaS billing integrations (for example, Snowflake, MongoDB, Databricks) are also accepted using their display-name string. Values are case-sensitive.
filter[metric]
string
Filter results to a specific Cloud Cost Management metric (for example, aws.cost.net.amortized). When omitted, every available metric for the requested period is returned.
filter[tag_key]
string
Restrict results to a single tag key.
filter[daily]
enum
When true, return one row per day with the day in the date attribute. Defaults to the monthly roll-up when omitted. Allowed enum values: true, false
# Required query arguments exportfilter[month]="2026-02" # Use a Personal Access Token or Service Access Token exportDD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"python3"example.py"
# List Cloud Cost Management tag key metadata returns "OK" responserequire"datadog_api_client"DatadogAPIClient.configuredo|config|config.access_token=ENV["DD_BEARER_TOKEN"]config.unstable_operations["v2.list_cost_tag_metadata".to_sym]=trueendapi_instance=DatadogAPIClient::V2::CloudCostManagementAPI.newpapi_instance.list_cost_tag_metadata("filter[month]")
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"rb"example.rb"
// List Cloud Cost Management tag key metadata returns "OK" responsepackagemainimport("context""encoding/json""fmt""os""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())ctx=context.WithValue(ctx,datadog.ContextAccessToken,os.Getenv("DD_BEARER_TOKEN"))configuration:=datadog.NewConfiguration()configuration.SetUnstableOperationEnabled("v2.ListCostTagMetadata",true)apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewCloudCostManagementApi(apiClient)resp,r,err:=api.ListCostTagMetadata(ctx,"filter[month]",*datadogV2.NewListCostTagMetadataOptionalParameters())iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `CloudCostManagementApi.ListCostTagMetadata`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `CloudCostManagementApi.ListCostTagMetadata`:\n%s\n",responseContent)}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"go run"main.go"
// List Cloud Cost Management tag key metadata returns "OK" responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.CloudCostManagementApi;importcom.datadog.api.client.v2.model.CostTagKeyMetadataResponse;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));defaultClient.setUnstableOperationEnabled("v2.listCostTagMetadata",true);CloudCostManagementApiapiInstance=newCloudCostManagementApi(defaultClient);try{CostTagKeyMetadataResponseresult=apiInstance.listCostTagMetadata("2026-02");System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling CloudCostManagementApi#listCostTagMetadata");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"java"Example.java"
// List Cloud Cost Management tag key metadata returns "OK" response
usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_cloud_cost_management::CloudCostManagementAPI;usedatadog_api_client::datadogV2::api_cloud_cost_management::ListCostTagMetadataOptionalParams;#[tokio::main]asyncfnmain(){letmutconfiguration=datadog::Configuration::new();configuration.set_unstable_operation_enabled("v2.ListCostTagMetadata",true);letapi=CloudCostManagementAPI::with_config(configuration);letresp=api.list_cost_tag_metadata("filter[month]".to_string(),ListCostTagMetadataOptionalParams::default(),).await;ifletOk(value)=resp{println!("{:#?}",value);}else{println!("{:#?}",resp.unwrap_err());}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_API_KEY="<DD_API_KEY>"DD_APP_KEY="<DD_APP_KEY>"cargo run
/**
* List Cloud Cost Management tag key metadata returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration({authMethods:{AuthZ:{accessToken: process.env.DD_BEARER_TOKENasstring,},},});configuration.unstableOperations["v2.listCostTagMetadata"]=true;constapiInstance=newv2.CloudCostManagementApi(configuration);constparams: v2.CloudCostManagementApiListCostTagMetadataRequest={filterMonth:"filter[month]",};apiInstance.listCostTagMetadata(params).then((data: v2.CostTagKeyMetadataResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"tsc"example.ts"
Request a personalized demo
Get Started with Datadog
Ask AI
AI-generated responses may be inaccurate. Verify important info.