List the field names returned by GET /api/v1/usage/summary at each of its
three response levels. Each list contains every key the data endpoint
emits—both typed fields declared in the OpenAPI spec and untyped keys
exposed through additionalProperties (the latter used for billing
dimensions and usage types added after the v1 schema freeze).
fields,_,err:=api.GetUsageSummaryAvailableFields(ctx)attr:=fields.Data.GetAttributes()// resp is the *UsageSummaryResponse returned by api.GetUsageSummary(ctx, ...)// Layer 1: UsageSummaryResponsefor_,key:=rangeattr.GetResponseFields(){ifval,ok:=resp.AdditionalProperties[key];ok{fmt.Println(key,val.(json.Number))}}// Layer 2: UsageSummaryDate (per month)for_,date:=rangeresp.GetUsage(){for_,key:=rangeattr.GetDateFields(){ifval,ok:=date.AdditionalProperties[key];ok{fmt.Println(key,val.(json.Number))}}// Layer 3: UsageSummaryDateOrg (per org per month)for_,org:=rangedate.GetOrgs(){for_,key:=rangeattr.GetDateOrgFields(){ifval,ok:=org.AdditionalProperties[key];ok{fmt.Println(key,val.(json.Number))}}}}
This endpoint requires the usage_read permission.
OAuth apps require the usage_read authorization scope to access this endpoint.
Response listing every field name returned by GET /api/v1/usage/summary
at each of its three response levels. Includes both typed fields and untyped
additionalProperties keys.
Expand All
Campo
Tipo
Descripción
data
object
Available-fields data.
attributes
object
The lists of field names returned by GET /api/v1/usage/summary at each
of its three response levels. Each list contains every key the data endpoint
emits—both typed fields declared in the OpenAPI spec and untyped keys
exposed through additionalProperties.
date_fields
[string]
Sorted list of every key returned inside each UsageSummaryDate
entry of usage[] (typed fields and additionalProperties keys
combined).
date_org_fields
[string]
Sorted list of every key returned inside each UsageSummaryDateOrg
entry of usage[].orgs[] (typed fields and additionalProperties
keys combined).
response_fields
[string]
Sorted list of every key returned as a direct property of
UsageSummaryResponse (typed fields and additionalProperties
keys combined).
id
string
The identifier for the discovery scope. Always "all".
type
enum
Type of available-fields data.
Allowed enum values: usage_summary_available_fields
"""
Get available fields for usage summary returns "OK." response
"""fromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.usage_metering_apiimportUsageMeteringApiconfiguration=Configuration()withApiClient(configuration)asapi_client:api_instance=UsageMeteringApi(api_client)response=api_instance.get_usage_summary_available_fields()print(response)
# Get available fields for usage summary returns "OK." responserequire"datadog_api_client"api_instance=DatadogAPIClient::V2::UsageMeteringAPI.newpapi_instance.get_usage_summary_available_fields()
// Get available fields for usage summary 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())configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewUsageMeteringApi(apiClient)resp,r,err:=api.GetUsageSummaryAvailableFields(ctx)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `UsageMeteringApi.GetUsageSummaryAvailableFields`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `UsageMeteringApi.GetUsageSummaryAvailableFields`:\n%s\n",responseContent)}
// Get available fields for usage summary returns "OK." responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.UsageMeteringApi;importcom.datadog.api.client.v2.model.UsageSummaryAvailableFieldsResponse;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();UsageMeteringApiapiInstance=newUsageMeteringApi(defaultClient);try{UsageSummaryAvailableFieldsResponseresult=apiInstance.getUsageSummaryAvailableFields();System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling UsageMeteringApi#getUsageSummaryAvailableFields");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
// Get available fields for usage summary returns "OK." response
usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_usage_metering::UsageMeteringAPI;#[tokio::main]asyncfnmain(){letconfiguration=datadog::Configuration::new();letapi=UsageMeteringAPI::with_config(configuration);letresp=api.get_usage_summary_available_fields().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
/**
* Get available fields for usage summary returns "OK." response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.UsageMeteringApi(configuration);apiInstance.getUsageSummaryAvailableFields().then((data: v2.UsageSummaryAvailableFieldsResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));