Usage Metering

The usage metering API allows you to get hourly, daily, and monthly usage across multiple facets of Datadog. This API is available to all Pro and Enterprise customers.

Note: Usage data is delayed by up to 72 hours from when it was incurred. It is retained for 15 months.

You can retrieve up to 24 hours of hourly usage data for multiple organizations, and up to two months of hourly usage data for a single organization in one request. Learn more on the usage details documentation.

GET https://api.ap1.datadoghq.com/api/v2/usage/billing_dimension_mappinghttps://api.ap2.datadoghq.com/api/v2/usage/billing_dimension_mappinghttps://api.datadoghq.eu/api/v2/usage/billing_dimension_mappinghttps://api.ddog-gov.com/api/v2/usage/billing_dimension_mappinghttps://api.datadoghq.com/api/v2/usage/billing_dimension_mappinghttps://api.us3.datadoghq.com/api/v2/usage/billing_dimension_mappinghttps://api.us5.datadoghq.com/api/v2/usage/billing_dimension_mapping

Overview

Get a mapping of billing dimensions to the corresponding keys for the supported usage metering public API endpoints. Mapping data is updated on a monthly cadence.

This endpoint is only accessible to parent-level organizations.

This endpoint requires the usage_read permission.

OAuth apps require the usage_read authorization scope to access this endpoint.

Arguments

Query Strings

Name

Type

Description

filter[month]

string

Datetime in ISO-8601 format, UTC, and for mappings beginning this month. Defaults to the current month.

filter[view]

string

String to specify whether to retrieve active billing dimension mappings for the contract or for all available mappings. Allowed views have the string active or all. Defaults to active.

Response

OK

Billing dimensions mapping response.

Expand All

Field

Type

Description

data

[object]

Billing dimensions mapping data.

attributes

object

Mapping of billing dimensions to endpoint keys.

endpoints

[object]

List of supported endpoints with their keys mapped to the billing_dimension.

id

string

The URL for the endpoint.

keys

[string]

The billing dimension.

status

enum

Denotes whether mapping keys were available for this endpoint. Allowed enum values: OK,NOT_FOUND

in_app_label

string

Label used for the billing dimension in the Plan & Usage charts.

timestamp

date-time

Month in ISO-8601 format, UTC, and precise to the second: [YYYY-MM-DDThh:mm:ss].

id

string

ID of the billing dimension.

type

enum

Type of active billing dimensions data. Allowed enum values: billing_dimensions

default: billing_dimensions

{
  "data": [
    {
      "attributes": {
        "endpoints": [
          {
            "id": "api/v1/usage/billable-summary",
            "keys": [
              "apm_host_top99p",
              "apm_host_sum"
            ],
            "status": "string"
          }
        ],
        "in_app_label": "APM Hosts",
        "timestamp": "2019-09-19T10:00:00.000Z"
      },
      "id": "string",
      "type": "string"
    }
  ]
}

Bad Request

API error response.

Expand All

Field

Type

Description

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Forbidden - User is not authorized

API error response.

Expand All

Field

Type

Description

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Too many requests

API error response.

Expand All

Field

Type

Description

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Code Example

                  # Curl command
curl -X GET "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/usage/billing_dimension_mapping" \ -H "Accept: application/json" \ -H "DD-API-KEY: ${DD_API_KEY}" \ -H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
"""
Get billing dimension mapping for usage endpoints returns "OK" response
"""

from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.usage_metering_api import UsageMeteringApi

configuration = Configuration()
with ApiClient(configuration) as api_client:
    api_instance = UsageMeteringApi(api_client)
    response = api_instance.get_billing_dimension_mapping()

    print(response)

Instructions

First install the library and its dependencies and then save the example to example.py and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" python3 "example.py"
# Get billing dimension mapping for usage endpoints returns "OK" response

require "datadog_api_client"
api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
p api_instance.get_billing_dimension_mapping()

Instructions

First install the library and its dependencies and then save the example to example.rb and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" rb "example.rb"
// Get billing dimension mapping for usage endpoints returns "OK" response

package main

import (
	"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"
)

func main() {
	ctx := datadog.NewDefaultContext(context.Background())
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV2.NewUsageMeteringApi(apiClient)
	resp, r, err := api.GetBillingDimensionMapping(ctx, *datadogV2.NewGetBillingDimensionMappingOptionalParameters())

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `UsageMeteringApi.GetBillingDimensionMapping`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `UsageMeteringApi.GetBillingDimensionMapping`:\n%s\n", responseContent)
}

Instructions

First install the library and its dependencies and then save the example to main.go and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" go run "main.go"
// Get billing dimension mapping for usage endpoints returns "OK" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.UsageMeteringApi;
import com.datadog.api.client.v2.model.BillingDimensionsMappingResponse;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    UsageMeteringApi apiInstance = new UsageMeteringApi(defaultClient);

    try {
      BillingDimensionsMappingResponse result = apiInstance.getBillingDimensionMapping();
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling UsageMeteringApi#getBillingDimensionMapping");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Instructions

First install the library and its dependencies and then save the example to Example.java and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" java "Example.java"
// Get billing dimension mapping for usage endpoints returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_usage_metering::GetBillingDimensionMappingOptionalParams;
use datadog_api_client::datadogV2::api_usage_metering::UsageMeteringAPI;

#[tokio::main]
async fn main() {
    let configuration = datadog::Configuration::new();
    let api = UsageMeteringAPI::with_config(configuration);
    let resp = api
        .get_billing_dimension_mapping(GetBillingDimensionMappingOptionalParams::default())
        .await;
    if let Ok(value) = resp {
        println!("{:#?}", value);
    } else {
        println!("{:#?}", resp.unwrap_err());
    }
}

Instructions

First install the library and its dependencies and then save the example to src/main.rs and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run
/**
 * Get billing dimension mapping for usage endpoints returns "OK" response
 */

import { client, v2 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration();
const apiInstance = new v2.UsageMeteringApi(configuration);

apiInstance
  .getBillingDimensionMapping()
  .then((data: v2.BillingDimensionsMappingResponse) => {
    console.log(
      "API called successfully. Returned data: " + JSON.stringify(data)
    );
  })
  .catch((error: any) => console.error(error));

Instructions

First install the library and its dependencies and then save the example to example.ts and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" tsc "example.ts"

GET https://api.ap1.datadoghq.com/api/v2/usage/hourly_usagehttps://api.ap2.datadoghq.com/api/v2/usage/hourly_usagehttps://api.datadoghq.eu/api/v2/usage/hourly_usagehttps://api.ddog-gov.com/api/v2/usage/hourly_usagehttps://api.datadoghq.com/api/v2/usage/hourly_usagehttps://api.us3.datadoghq.com/api/v2/usage/hourly_usagehttps://api.us5.datadoghq.com/api/v2/usage/hourly_usage

Overview

Get hourly usage by product family. This endpoint requires the usage_read permission.

OAuth apps require the usage_read authorization scope to access this endpoint.

Arguments

Query Strings

Name

Type

Description

filter[timestamp][start] [required]

string

Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.

filter[timestamp][end]

string

Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending before this hour.

filter[product_families] [required]

string

Comma separated list of product families to retrieve. Available families are all, analyzed_logs, application_security, audit_trail, serverless, ci_app, cloud_cost_management, cloud_siem, csm_container_enterprise, csm_host_enterprise, cspm, custom_events, cws, dbm, error_tracking, fargate, infra_hosts, incident_management, indexed_logs, indexed_spans, ingested_spans, iot, lambda_traced_invocations, llm_observability, logs, network_flows, network_hosts, network_monitoring, observability_pipelines, online_archive, profiling, product_analytics, rum, rum_browser_sessions, rum_mobile_sessions, sds, snmp, software_delivery, synthetics_api, synthetics_browser, synthetics_mobile, synthetics_parallel_testing, timeseries, vuln_management and workflow_executions. The following product family has been deprecated: audit_logs.

filter[include_descendants]

boolean

Include child org usage in the response. Defaults to false.

filter[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.

filter[include_breakdown]

boolean

Include breakdown of usage by subcategories where applicable (for product family logs only). Defaults to false.

filter[versions]

string

Comma separated list of product family versions to use in the format product_family:version. For example, infra_hosts:1.0.0. If this parameter is not used, the API will use the latest version of each requested product family. Currently all families have one version 1.0.0.

page[limit]

integer

Maximum number of results to return (between 1 and 500) - defaults to 500 if limit not specified.

page[next_record_id]

string

List following results with a next_record_id provided in the previous query.

Response

OK

Hourly usage response.

Expand All

Field

Type

Description

data

[object]

Response containing hourly usage.

attributes

object

Attributes of hourly usage for a product family for an org for a time period.

account_name

string

The account name.

account_public_id

string

The account public ID.

measurements

[object]

List of the measured usage values for the product family for the org for the time period.

usage_type

string

Type of usage.

value

int64

Contains the number measured for the given usage_type during the hour.

org_name

string

The organization name.

product_family

string

The product for which usage is being reported.

public_id

string

The organization public ID.

region

string

The region of the Datadog instance that the organization belongs to.

timestamp

date-time

Datetime in ISO-8601 format, UTC. The hour for the usage.

id

string

Unique ID of the response.

type

enum

Type of usage data. Allowed enum values: usage_timeseries

default: usage_timeseries

meta

object

The object containing document metadata.

pagination

object

The metadata for the current pagination.

next_record_id

string

The cursor to get the next results (if any). To make the next request, use the same parameters and add next_record_id.

{
  "data": [
    {
      "attributes": {
        "account_name": "string",
        "account_public_id": "string",
        "measurements": [
          {
            "usage_type": "string",
            "value": "integer"
          }
        ],
        "org_name": "string",
        "product_family": "string",
        "public_id": "string",
        "region": "string",
        "timestamp": "2019-09-19T10:00:00.000Z"
      },
      "id": "string",
      "type": "usage_timeseries"
    }
  ],
  "meta": {
    "pagination": {
      "next_record_id": "string"
    }
  }
}

Bad Request

API error response.

Expand All

Field

Type

Description

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Forbidden - User is not authorized

API error response.

Expand All

Field

Type

Description

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Too many requests

API error response.

Expand All

Field

Type

Description

errors [required]

[string]

A list of errors.

{
  "errors": [
    "Bad Request"
  ]
}

Code Example

                  # Required query arguments
export filter[timestamp][start]="CHANGE_ME"
export filter[product_families]="CHANGE_ME"
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/usage/hourly_usage?filter[timestamp][start]=${filter[timestamp][start]}&filter[product_families]=${filter[product_families]}" \ -H "Accept: application/json" \ -H "DD-API-KEY: ${DD_API_KEY}" \ -H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
"""
Get hourly usage by product family returns "OK" response
"""

from datetime import datetime
from dateutil.relativedelta import relativedelta
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.usage_metering_api import UsageMeteringApi

configuration = Configuration()
with ApiClient(configuration) as api_client:
    api_instance = UsageMeteringApi(api_client)
    response = api_instance.get_hourly_usage(
        filter_timestamp_start=(datetime.now() + relativedelta(days=-3)),
        filter_product_families="infra_hosts",
    )

    print(response)

Instructions

First install the library and its dependencies and then save the example to example.py and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" python3 "example.py"
# Get hourly usage by product family returns "OK" response

require "datadog_api_client"
api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
p api_instance.get_hourly_usage((Time.now + -3 * 86400), "infra_hosts")

Instructions

First install the library and its dependencies and then save the example to example.rb and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" rb "example.rb"
// Get hourly usage by product family returns "OK" response

package main

import (
	"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"
)

func main() {
	ctx := datadog.NewDefaultContext(context.Background())
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV2.NewUsageMeteringApi(apiClient)
	resp, r, err := api.GetHourlyUsage(ctx, time.Now().AddDate(0, 0, -3), "infra_hosts", *datadogV2.NewGetHourlyUsageOptionalParameters())

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `UsageMeteringApi.GetHourlyUsage`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `UsageMeteringApi.GetHourlyUsage`:\n%s\n", responseContent)
}

Instructions

First install the library and its dependencies and then save the example to main.go and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" go run "main.go"
// Get hourly usage by product family returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.UsageMeteringApi;
import com.datadog.api.client.v2.model.HourlyUsageResponse;
import java.time.OffsetDateTime;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    UsageMeteringApi apiInstance = new UsageMeteringApi(defaultClient);

    try {
      HourlyUsageResponse result =
          apiInstance.getHourlyUsage(OffsetDateTime.now().plusDays(-3), "infra_hosts");
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling UsageMeteringApi#getHourlyUsage");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Instructions

First install the library and its dependencies and then save the example to Example.java and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" java "Example.java"
// Get hourly usage by product family returns "OK" response
use chrono::{DateTime, Utc};
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_usage_metering::GetHourlyUsageOptionalParams;
use datadog_api_client::datadogV2::api_usage_metering::UsageMeteringAPI;

#[tokio::main]
async fn main() {
    let configuration = datadog::Configuration::new();
    let api = UsageMeteringAPI::with_config(configuration);
    let resp = api
        .get_hourly_usage(
            DateTime::parse_from_rfc3339("2021-11-08T11:11:11+00:00")
                .expect("Failed to parse datetime")
                .with_timezone(&Utc),
            "infra_hosts".to_string(),
            GetHourlyUsageOptionalParams::default(),
        )
        .await;
    if let Ok(value) = resp {
        println!("{:#?}", value);
    } else {
        println!("{:#?}", resp.unwrap_err());
    }
}

Instructions

First install the library and its dependencies and then save the example to src/main.rs and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run
/**
 * Get hourly usage by product family returns "OK" response
 */

import { client, v2 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration();
const apiInstance = new v2.UsageMeteringApi(configuration);

const params: v2.UsageMeteringApiGetHourlyUsageRequest = {
  filterTimestampStart: new Date(new Date().getTime() + -3 * 86400 * 1000),
  filterProductFamilies: "infra_hosts",
};

apiInstance
  .getHourlyUsage(params)
  .then((data: v2.HourlyUsageResponse) => {
    console.log(
      "API called successfully. Returned data: " + JSON.stringify(data)
    );
  })
  .catch((error: any) => console.error(error));

Instructions

First install the library and its dependencies and then save the example to example.ts and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" tsc "example.ts"

GET https://api.ap1.datadoghq.com/api/v1/usage/hourly-attributionhttps://api.ap2.datadoghq.com/api/v1/usage/hourly-attributionhttps://api.datadoghq.eu/api/v1/usage/hourly-attributionhttps://api.ddog-gov.com/api/v1/usage/hourly-attributionhttps://api.datadoghq.com/api/v1/usage/hourly-attributionhttps://api.us3.datadoghq.com/api/v1/usage/hourly-attributionhttps://api.us5.datadoghq.com/api/v1/usage/hourly-attribution

Overview

Get hourly usage attribution. Multi-region data is available starting March 1, 2023.

This API endpoint is paginated. To make sure you receive all records, check if the value of next_record_id is set in the response. If it is, make another request and pass next_record_id as a parameter. Pseudo code example:

response := GetHourlyUsageAttribution(start_month)
cursor := response.metadata.pagination.next_record_id
WHILE cursor != null BEGIN
  sleep(5 seconds)  # Avoid running into rate limit
  response := GetHourlyUsageAttribution(start_month, next_record_id=cursor)
  cursor := response.metadata.pagination.next_record_id
END
This endpoint requires the usage_read permission.

OAuth apps require the usage_read authorization scope to access this endpoint.

Arguments

Query Strings

Name

Type

Description

start_hr [required]

string

Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.

end_hr

string

Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending before this hour.

usage_type [required]

enum

Usage type to retrieve. The following values have been deprecated: estimated_indexed_spans_usage, estimated_ingested_spans_usage.
Allowed enum values: api_usage, apm_fargate_usage, apm_host_usage, apm_usm_usage, appsec_fargate_usage, appsec_usage, asm_serverless_traced_invocations_usage, asm_serverless_traced_invocations_percentage, browser_usage, ci_pipeline_indexed_spans_usage, ci_test_indexed_spans_usage, ci_visibility_itr_usage, cloud_siem_usage, code_security_host_usage, container_excl_agent_usage, container_usage, cspm_containers_usage, cspm_hosts_usage, custom_event_usage, custom_ingested_timeseries_usage, custom_timeseries_usage, cws_containers_usage, cws_fargate_task_usage, cws_hosts_usage, data_jobs_monitoring_usage, data_stream_monitoring_usage, dbm_hosts_usage, dbm_queries_usage, error_tracking_usage, error_tracking_percentage, estimated_indexed_spans_usage, estimated_ingested_spans_usage, fargate_usage, functions_usage, incident_management_monthly_active_users_usage, indexed_spans_usage, infra_host_usage, ingested_logs_bytes_usage, ingested_spans_bytes_usage, invocations_usage, lambda_traced_invocations_usage, llm_observability_usage, logs_indexed_15day_usage, logs_indexed_180day_usage, logs_indexed_1day_usage, logs_indexed_30day_usage, logs_indexed_360day_usage, logs_indexed_3day_usage, logs_indexed_45day_usage, logs_indexed_60day_usage, logs_indexed_7day_usage, logs_indexed_90day_usage, logs_indexed_custom_retention_usage, mobile_app_testing_usage, ndm_netflow_usage, npm_host_usage, network_device_wireless_usage, obs_pipeline_bytes_usage, obs_pipelines_vcpu_usage, online_archive_usage, product_analytics_session_usage, profiled_container_usage, profiled_fargate_usage, profiled_host_usage, published_app, rum_browser_mobile_sessions_usage, rum_ingested_usage, rum_investigate_usage, rum_replay_sessions_usage, rum_session_replay_add_on_usage, sca_fargate_usage, sds_scanned_bytes_usage, serverless_apps_usage, siem_analyzed_logs_add_on_usage, siem_ingested_bytes_usage, snmp_usage, universal_service_monitoring_usage, vuln_management_hosts_usage, workflow_executions_usage

next_record_id

string

List following results with a next_record_id provided in the previous query.

tag_breakdown_keys

string

Comma separated list of tags used to group usage. If no value is provided the usage will not be broken down by tags.

To see which tags are available, look for the value of tag_config_source in the API response.

include_descendants

boolean

Include child org usage in the response. Defaults to true.

Response

OK

Response containing the hourly usage attribution by tag(s).

Expand All

Field

Type

Description

metadata

object

The object containing document metadata.

pagination

object

The metadata for the current pagination.

next_record_id

string

The cursor to get the next results (if any). To make the next request, use the same parameters and add next_record_id.

usage

[object]

Get the hourly usage attribution by tag(s).

hour

date-time

The hour for the usage.

org_name

string

The name of the organization.

public_id

string

The organization public ID.

region

string

The region of the Datadog instance that the organization belongs to.

tag_config_source

string

The source of the usage attribution tag configuration and the selected tags in the format of <source_org_name>:::<selected tag 1>///<selected tag 2>///<selected tag 3>.

tags

object

Tag keys and values.

A null value here means that the requested tag breakdown cannot be applied because it does not match the tags configured for usage attribution. In this scenario the API returns the total usage, not broken down by tags.

<any-key>

[string]

A list of values that are associated with each tag key.

  • An empty list means the resource use wasn't tagged with the respective tag.
  • Multiple values means the respective tag was applied multiple times on the resource.
  • An <empty> value means the resource was tagged with the respective tag but did not have a value.

total_usage_sum

double

Total product usage for the given tags within the hour.

updated_at

string

Shows the most recent hour in the current month for all organizations where usages are calculated.

usage_type

enum

Supported products for hourly usage attribution requests. The following values have been deprecated: estimated_indexed_spans_usage, estimated_ingested_spans_usage. Allowed enum values: api_usage,apm_fargate_usage,apm_host_usage,apm_usm_usage,appsec_fargate_usage,appsec_usage,asm_serverless_traced_invocations_usage,asm_serverless_traced_invocations_percentage,browser_usage,ci_pipeline_indexed_spans_usage,ci_test_indexed_spans_usage,ci_visibility_itr_usage,cloud_siem_usage,code_security_host_usage,container_excl_agent_usage,container_usage,cspm_containers_usage,cspm_hosts_usage,custom_event_usage,custom_ingested_timeseries_usage,custom_timeseries_usage,cws_containers_usage,cws_fargate_task_usage,cws_hosts_usage,data_jobs_monitoring_usage,data_stream_monitoring_usage,dbm_hosts_usage,dbm_queries_usage,error_tracking_usage,error_tracking_percentage,estimated_indexed_spans_usage,estimated_ingested_spans_usage,fargate_usage,functions_usage,incident_management_monthly_active_users_usage,indexed_spans_usage,infra_host_usage,ingested_logs_bytes_usage,ingested_spans_bytes_usage,invocations_usage,lambda_traced_invocations_usage,llm_observability_usage,logs_indexed_15day_usage,logs_indexed_180day_usage,logs_indexed_1day_usage,logs_indexed_30day_usage,logs_indexed_360day_usage,logs_indexed_3day_usage,logs_indexed_45day_usage,logs_indexed_60day_usage,logs_indexed_7day_usage,logs_indexed_90day_usage,logs_indexed_custom_retention_usage,mobile_app_testing_usage,ndm_netflow_usage,npm_host_usage,network_device_wireless_usage,obs_pipeline_bytes_usage,obs_pipelines_vcpu_usage,online_archive_usage,product_analytics_session_usage,profiled_container_usage,profiled_fargate_usage,profiled_host_usage,published_app,rum_browser_mobile_sessions_usage,rum_ingested_usage,rum_investigate_usage,rum_replay_sessions_usage,rum_session_replay_add_on_usage,sca_fargate_usage,sds_scanned_bytes_usage,serverless_apps_usage,siem_analyzed_logs_add_on_usage,siem_ingested_bytes_usage,snmp_usage,universal_service_monitoring_usage,vuln_management_hosts_usage,workflow_executions_usage

{
  "metadata": {
    "pagination": {
      "next_record_id": "string"
    }
  },
  "usage": [
    {
      "hour": "2019-09-19T10:00:00.000Z",
      "org_name": "string",
      "public_id": "string",
      "region": "string",
      "tag_config_source": "string",
      "tags": {
        "<any-key>": [
          "datadog-integrations-lab"
        ]
      },
      "total_usage_sum": "number",
      "updated_at": "string",
      "usage_type": "string"
    }
  ]
}

Forbidden - User is not authorized

Error response object.

Expand All

Field

Type

Description

errors [required]

[string]

Array of errors returned by the API.

{
  "errors": [
    "Bad Request"
  ]
}

Too many requests

Error response object.

Expand All

Field

Type

Description

errors [required]

[string]

Array of errors returned by the API.

{
  "errors": [
    "Bad Request"
  ]
}

Code Example

                  # Required query arguments
export start_hr="CHANGE_ME"
export usage_type="CHANGE_ME"
# Curl command
curl -X GET "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v1/usage/hourly-attribution?start_hr=${start_hr}&usage_type=${usage_type}" \ -H "Accept: application/json" \ -H "DD-API-KEY: ${DD_API_KEY}" \ -H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
"""
Get hourly usage attribution returns "OK" response
"""

from datetime import datetime
from dateutil.relativedelta import relativedelta
from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v1.api.usage_metering_api import UsageMeteringApi
from datadog_api_client.v1.model.hourly_usage_attribution_usage_type import HourlyUsageAttributionUsageType

configuration = Configuration()
with ApiClient(configuration) as api_client:
    api_instance = UsageMeteringApi(api_client)
    response = api_instance.get_hourly_usage_attribution(
        start_hr=(datetime.now() + relativedelta(days=-3)),
        usage_type=HourlyUsageAttributionUsageType.INFRA_HOST_USAGE,
    )

    print(response)

Instructions

First install the library and its dependencies and then save the example to example.py and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" python3 "example.py"
# Get hourly usage attribution returns "OK" response

require "datadog_api_client"
api_instance = DatadogAPIClient::V1::UsageMeteringAPI.new
p api_instance.get_hourly_usage_attribution((Time.now + -3 * 86400), HourlyUsageAttributionUsageType::INFRA_HOST_USAGE)

Instructions

First install the library and its dependencies and then save the example to example.rb and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" rb "example.rb"
// Get hourly usage attribution returns "OK" response

package main

import (
	"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/datadogV1"
)

func main() {
	ctx := datadog.NewDefaultContext(context.Background())
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV1.NewUsageMeteringApi(apiClient)
	resp, r, err := api.GetHourlyUsageAttribution(ctx, time.Now().AddDate(0, 0, -3), datadogV1.HOURLYUSAGEATTRIBUTIONUSAGETYPE_INFRA_HOST_USAGE, *datadogV1.NewGetHourlyUsageAttributionOptionalParameters())

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `UsageMeteringApi.GetHourlyUsageAttribution`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `UsageMeteringApi.GetHourlyUsageAttribution`:\n%s\n", responseContent)
}

Instructions

First install the library and its dependencies and then save the example to main.go and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" go run "main.go"
// Get hourly usage attribution returns "OK" response
import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v1.api.UsageMeteringApi;
import com.datadog.api.client.v1.model.HourlyUsageAttributionResponse;
import com.datadog.api.client.v1.model.HourlyUsageAttributionUsageType;
import java.time.OffsetDateTime;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    UsageMeteringApi apiInstance = new UsageMeteringApi(defaultClient);

    try {
      HourlyUsageAttributionResponse result =
          apiInstance.getHourlyUsageAttribution(
              OffsetDateTime.now().plusDays(-3), HourlyUsageAttributionUsageType.INFRA_HOST_USAGE);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling UsageMeteringApi#getHourlyUsageAttribution");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}

Instructions

First install the library and its dependencies and then save the example to Example.java and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" java "Example.java"
// Get hourly usage attribution returns "OK" response
use chrono::{DateTime, Utc};
use datadog_api_client::datadog;
use datadog_api_client::datadogV1::api_usage_metering::GetHourlyUsageAttributionOptionalParams;
use datadog_api_client::datadogV1::api_usage_metering::UsageMeteringAPI;
use datadog_api_client::datadogV1::model::HourlyUsageAttributionUsageType;

#[tokio::main]
async fn main() {
    let configuration = datadog::Configuration::new();
    let api = UsageMeteringAPI::with_config(configuration);
    let resp = api
        .get_hourly_usage_attribution(
            DateTime::parse_from_rfc3339("2021-11-08T11:11:11+00:00")
                .expect("Failed to parse datetime")
                .with_timezone(&Utc),
            HourlyUsageAttributionUsageType::INFRA_HOST_USAGE,
            GetHourlyUsageAttributionOptionalParams::default(),
        )
        .await;
    if let Ok(value) = resp {
        println!("{:#?}", value);
    } else {
        println!("{:#?}", resp.unwrap_err());
    }
}

Instructions

First install the library and its dependencies and then save the example to src/main.rs and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run
/**
 * Get hourly usage attribution returns "OK" response
 */

import { client, v1 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration();
const apiInstance = new v1.UsageMeteringApi(configuration);

const params: v1.UsageMeteringApiGetHourlyUsageAttributionRequest = {
  startHr: new Date(new Date().getTime() + -3 * 86400 * 1000),
  usageType: "infra_host_usage",
};

apiInstance
  .getHourlyUsageAttribution(params)
  .then((data: v1.HourlyUsageAttributionResponse) => {
    console.log(
      "API called successfully. Returned data: " + JSON.stringify(data)
    );
  })
  .catch((error: any) => console.error(error));

Instructions

First install the library and its dependencies and then save the example to example.ts and run following commands:

    
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" tsc "example.ts"

GET https://api.ap1.datadoghq.com/api/v1/usage/monthly-attributionhttps://api.ap2.datadoghq.com/api/v1/usage/monthly-attributionhttps://api.datadoghq.eu/api/v1/usage/monthly-attributionhttps://api.ddog-gov.com/api/v1/usage/monthly-attributionhttps://api.datadoghq.com/api/v1/usage/monthly-attributionhttps://api.us3.datadoghq.com/api/v1/usage/monthly-attributionhttps://api.us5.datadoghq.com/api/v1/usage/monthly-attribution

Overview

Get monthly usage attribution. Multi-region data is available starting March 1, 2023.

This API endpoint is paginated. To make sure you receive all records, check if the value of next_record_id is set in the response. If it is, make another request and pass next_record_id as a parameter. Pseudo code example:

response := GetMonthlyUsageAttribution(start_month)
cursor := response.metadata.pagination.next_record_id
WHILE cursor != null BEGIN
  sleep(5 seconds)  # Avoid running into rate limit
  response := GetMonthlyUsageAttribution(start_month, next_record_id=cursor)
  cursor := response.metadata.pagination.next_record_id
END
This endpoint requires the usage_read permission.

OAuth apps require the usage_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 usage beginning in this month. Maximum of 15 months ago.

end_month

string

Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM] for usage ending this month.

fields [required]

enum

Comma-separated list of usage types to return, or * for all usage types. The following values have been deprecated: estimated_indexed_spans_usage, estimated_indexed_spans_percentage, estimated_ingested_spans_usage, estimated_ingested_spans_percentage.
Allowed enum values: api_usage, api_percentage, apm_fargate_usage, apm_fargate_percentage, appsec_fargate_usage, appsec_fargate_percentage, apm_host_usage, apm_host_percentage, apm_usm_usage, apm_usm_percentage, appsec_usage, appsec_percentage, asm_serverless_traced_invocations_usage, asm_serverless_traced_invocations_percentage, browser_usage, browser_percentage, ci_visibility_itr_usage, ci_visibility_itr_percentage, cloud_siem_usage, cloud_siem_percentage, code_security_host_usage, code_security_host_percentage, container_excl_agent_usage, container_excl_agent_percentage, container_usage, container_percentage, cspm_containers_percentage, cspm_containers_usage, cspm_hosts_percentage, cspm_hosts_usage, custom_timeseries_usage, custom_timeseries_percentage, custom_ingested_timeseries_usage, custom_ingested_timeseries_percentage, cws_containers_percentage, cws_containers_usage, cws_fargate_task_percentage, cws_fargate_task_usage, cws_hosts_percentage, cws_hosts_usage, data_jobs_monitoring_usage, data_jobs_monitoring_percentage, data_stream_monitoring_usage, data_stream_monitoring_percentage, dbm_hosts_percentage, dbm_hosts_usage, dbm_queries_percentage, dbm_queries_usage, error_tracking_usage, error_tracking_percentage, estimated_indexed_spans_usage, estimated_indexed_spans_percentage, estimated_ingested_spans_usage, estimated_ingested_spans_percentage, fargate_usage, fargate_percentage, functions_usage, functions_percentage, incident_management_monthly_active_users_usage, incident_management_monthly_active_users_percentage, infra_host_usage, infra_host_percentage, invocations_usage, invocations_percentage, lambda_traced_invocations_usage, lambda_traced_invocations_percentage, llm_observability_usage, llm_observability_percentage, mobile_app_testing_percentage, mobile_app_testing_usage, ndm_netflow_usage, ndm_netflow_percentage, network_device_wireless_usage, network_device_wireless_percentage, npm_host_usage, npm_host_percentage, obs_pipeline_bytes_usage, obs_pipeline_bytes_percentage, obs_pipelines_vcpu_usage, obs_pipelines_vcpu_percentage, online_archive_usage, online_archive_percentage, product_analytics_session_usage, product_analytics_session_percentage, profiled_container_usage, profiled_container_percentage, profiled_fargate_usage, profiled_fargate_percentage, profiled_host_usage, profiled_host_percentage, published_app_usage, published_app_percentage, serverless_apps_usage, serverless_apps_percentage, snmp_usage, snmp_percentage, universal_service_monitoring_usage, universal_service_monitoring_percentage, vuln_management_hosts_usage, vuln_management_hosts_percentage, sds_scanned_bytes_usage, sds_scanned_bytes_percentage, ci_test_indexed_spans_usage, ci_test_indexed_spans_percentage, ingested_logs_bytes_usage, ingested_logs_bytes_percentage, ci_pipeline_indexed_spans_usage, ci_pipeline_indexed_spans_percentage, indexed_spans_usage, indexed_spans_percentage, custom_event_usage, custom_event_percentage, logs_indexed_custom_retention_usage, logs_indexed_custom_retention_percentage, logs_indexed_360day_usage, logs_indexed_360day_percentage, logs_indexed_180day_usage, logs_indexed_180day_percentage, logs_indexed_90day_usage, logs_indexed_90day_percentage, logs_indexed_60day_usage, logs_indexed_60day_percentage, logs_indexed_45day_usage, logs_indexed_45day_percentage, logs_indexed_30day_usage, logs_indexed_30day_percentage, logs_indexed_15day_usage, logs_indexed_15day_percentage, logs_indexed_7day_usage, logs_indexed_7day_percentage, logs_indexed_3day_usage, logs_indexed_3day_percentage, logs_indexed_1day_usage, logs_indexed_1day_percentage, rum_ingested_usage, rum_ingested_percentage, rum_investigate_usage, rum_investigate_percentage, rum_replay_sessions_usage, rum_replay_sessions_percentage, rum_session_replay_add_on_usage, rum_session_replay_add_on_percentage, rum_browser_mobile_sessions_usage, rum_browser_mobile_sessions_percentage, ingested_spans_bytes_usage, ingested_spans_bytes_percentage, siem_analyzed_logs_add_on_usage, siem_analyzed_logs_add_on_percentage, siem_ingested_bytes_usage, siem_ingested_bytes_percentage, workflow_executions_usage, workflow_executions_percentage, sca_fargate_usage, sca_fargate_percentage, *

sort_direction

enum

The direction to sort by: [desc, asc].
Allowed enum values: desc, asc

sort_name

enum

The field to sort by. The following values have been deprecated: estimated_indexed_spans_usage, estimated_indexed_spans_percentage, estimated_ingested_spans_usage, estimated_ingested_spans_percentage.
Allowed enum values: api_usage, api_percentage, apm_fargate_usage, apm_fargate_percentage, appsec_fargate_usage, appsec_fargate_percentage, apm_host_usage, apm_host_percentage, apm_usm_usage, apm_usm_percentage, appsec_usage, appsec_percentage, asm_serverless_traced_invocations_usage, asm_serverless_traced_invocations_percentage, browser_usage, browser_percentage, ci_visibility_itr_usage, ci_visibility_itr_percentage, cloud_siem_usage, cloud_siem_percentage, code_security_host_usage, code_security_host_percentage, container_excl_agent_usage, container_excl_agent_percentage, container_usage, container_percentage, cspm_containers_percentage, cspm_containers_usage, cspm_hosts_percentage, cspm_hosts_usage, custom_timeseries_usage, custom_timeseries_percentage, custom_ingested_timeseries_usage, custom_ingested_timeseries_percentage, cws_containers_percentage, cws_containers_usage, cws_fargate_task_percentage, cws_fargate_task_usage, cws_hosts_percentage, cws_hosts_usage, data_jobs_monitoring_usage, data_jobs_monitoring_percentage, data_stream_monitoring_usage, data_stream_monitoring_percentage, dbm_hosts_percentage, dbm_hosts_usage, dbm_queries_percentage, dbm_queries_usage, error_tracking_usage, error_tracking_percentage, estimated_indexed_spans_usage, estimated_indexed_spans_percentage, estimated_ingested_spans_usage, estimated_ingested_spans_percentage, fargate_usage, fargate_percentage, functions_usage, functions_percentage, incident_management_monthly_active_users_usage, incident_management_monthly_active_users_percentage, infra_host_usage, infra_host_percentage, invocations_usage, invocations_percentage, lambda_traced_invocations_usage, lambda_traced_invocations_percentage, llm_observability_usage, llm_observability_percentage, mobile_app_testing_percentage, mobile_app_testing_usage, ndm_netflow_usage, ndm_netflow_percentage, network_device_wireless_usage, network_device_wireless_percentage, npm_host_usage, npm_host_percentage, obs_pipeline_bytes_usage, obs_pipeline_bytes_percentage, obs_pipelines_vcpu_usage, obs_pipelines_vcpu_percentage, online_archive_usage, online_archive_percentage, product_analytics_session_usage, product_analytics_session_percentage, profiled_container_usage, profiled_container_percentage, profiled_fargate_usage, profiled_fargate_percentage, profiled_host_usage, profiled_host_percentage, published_app_usage, published_app_percentage, serverless_apps_usage, serverless_apps_percentage, snmp_usage, snmp_percentage, universal_service_monitoring_usage, universal_service_monitoring_percentage, vuln_management_hosts_usage, vuln_management_hosts_percentage, sds_scanned_bytes_usage, sds_scanned_bytes_percentage, ci_test_indexed_spans_usage, ci_test_indexed_spans_percentage, ingested_logs_bytes_usage, ingested_logs_bytes_percentage, ci_pipeline_indexed_spans_usage, ci_pipeline_indexed_spans_percentage, indexed_spans_usage, indexed_spans_percentage, custom_event_usage, custom_event_percentage, logs_indexed_custom_retention_usage, logs_indexed_custom_retention_percentage, logs_indexed_360day_usage, logs_indexed_360day_percentage, logs_indexed_180day_usage, logs_indexed_180day_percentage, logs_indexed_90day_usage, logs_indexed_90day_percentage, logs_indexed_60day_usage, logs_indexed_60day_percentage, logs_indexed_45day_usage, logs_indexed_45day_percentage, logs_indexed_30day_usage, logs_indexed_30day_percentage, logs_indexed_15day_usage, logs_indexed_15day_percentage, logs_indexed_7day_usage, logs_indexed_7day_percentage, logs_indexed_3day_usage, logs_indexed_3day_percentage, logs_indexed_1day_usage, logs_indexed_1day_percentage, rum_ingested_usage, rum_ingested_percentage, rum_investigate_usage, rum_investigate_percentage, rum_replay_sessions_usage, rum_replay_sessions_percentage, rum_session_replay_add_on_usage, rum_session_replay_add_on_percentage, rum_browser_mobile_sessions_usage, rum_browser_mobile_sessions_percentage, ingested_spans_bytes_usage, ingested_spans_bytes_percentage, siem_analyzed_logs_add_on_usage, siem_analyzed_logs_add_on_percentage, siem_ingested_bytes_usage, siem_ingested_bytes_percentage, workflow_executions_usage, workflow_executions_percentage, sca_fargate_usage, sca_fargate_percentage, *

tag_breakdown_keys

string

Comma separated list of tag keys used to group usage. If no value is provided the usage will not be broken down by tags.

To see which tags are available, look for the value of tag_config_source in the API response.

next_record_id

string

List following results with a next_record_id provided in the previous query.

include_descendants

boolean

Include child org usage in the response. Defaults to true.

Response

OK

Response containing the monthly Usage Summary by tag(s).

Expand All

Field

Type

Description

metadata

object

The object containing document metadata.

aggregates

[object]

An array of available aggregates.

agg_type

string

The aggregate type.

field

string

The field.

value

double

The value for a given field.

pagination

object

The metadata for the current pagination.

next_record_id

string

The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of the next_record_id.

usage

[object]

Get usage summary by tag(s).

month

date-time

Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM].

org_name

string

The name of the organization.

public_id

string

The organization public ID.

region

string

The region of the Datadog instance that the organization belongs to.

tag_config_source

string

The source of the usage attribution tag configuration and the selected tags in the format <source_org_name>:::<selected tag 1>///<selected tag 2>///<selected tag 3>.

tags

object

Tag keys and values.

A null value here means that the requested tag breakdown cannot be applied because it does not match the tags configured for usage attribution. In this scenario the API returns the total usage, not broken down by tags.

<any-key>

[string]

A list of values that are associated with each tag key.

  • An empty list means the resource use wasn't tagged with the respective tag.
  • Multiple values means the respective tag was applied multiple times on the resource.
  • An <empty> value means the resource was tagged with the respective tag but did not have a value.

updated_at

date-time

Datetime of the most recent update to the usage values.

values

object

Fields in Usage Summary by tag(s). The following values have been deprecated: estimated_indexed_spans_usage, estimated_indexed_spans_percentage, estimated_ingested_spans_usage, estimated_ingested_spans_percentage.

api_percentage

double

The percentage of synthetic API test usage by tag(s).

api_usage

double

The synthetic API test usage by tag(s).

apm_fargate_percentage

double

The percentage of APM ECS Fargate task usage by tag(s).

apm_fargate_usage

double

The APM ECS Fargate task usage by tag(s).

apm_host_percentage

double

The percentage of APM host usage by tag(s).

apm_host_usage

double

The APM host usage by tag(s).

apm_usm_percentage

double

The percentage of APM and Universal Service Monitoring host usage by tag(s).

apm_usm_usage

double

The APM and Universal Service Monitoring host usage by tag(s).

appsec_fargate_percentage

double

The percentage of Application Security Monitoring ECS Fargate task usage by tag(s).

appsec_fargate_usage

double

The Application Security Monitoring ECS Fargate task usage by tag(s).

appsec_percentage

double

The percentage of Application Security Monitoring host usage by tag(s).

appsec_usage

double

The Application Security Monitoring host usage by tag(s).

asm_serverless_traced_invocations_percentage

double

The percentage of Application Security Monitoring Serverless traced invocations usage by tag(s).

asm_serverless_traced_invocations_usage

double

The Application Security Monitoring Serverless traced invocations usage by tag(s).

browser_percentage

double

The percentage of synthetic browser test usage by tag(s).

browser_usage

double

The synthetic browser test usage by tag(s).

ci_pipeline_indexed_spans_percentage

double

The percentage of CI Pipeline Indexed Spans usage by tag(s).

ci_pipeline_indexed_spans_usage

double

The total CI Pipeline Indexed Spans usage by tag(s).

ci_test_indexed_spans_percentage

double

The percentage of CI Test Indexed Spans usage by tag(s).

ci_test_indexed_spans_usage

double

The total CI Test Indexed Spans usage by tag(s).

ci_visibility_itr_percentage

double

The percentage of Git committers for Intelligent Test Runner usage by tag(s).

ci_visibility_itr_usage

double

The Git committers for Intelligent Test Runner usage by tag(s).

cloud_siem_percentage

double

The percentage of Cloud Security Information and Event Management usage by tag(s).

cloud_siem_usage

double

The Cloud Security Information and Event Management usage by tag(s).

code_security_host_percentage

double

The percentage of Code Security host usage by tags.

code_security_host_usage

double

The Code Security host usage by tags.

container_excl_agent_percentage

double

The percentage of container usage without the Datadog Agent by tag(s).

container_excl_agent_usage

double

The container usage without the Datadog Agent by tag(s).

container_percentage

double

The percentage of container usage by tag(s).

container_usage

double

The container usage by tag(s).

cspm_containers_percentage

double

The percentage of Cloud Security Management Pro container usage by tag(s).

cspm_containers_usage

double

The Cloud Security Management Pro container usage by tag(s).

cspm_hosts_percentage

double

The percentage of Cloud Security Management Pro host usage by tag(s).

cspm_hosts_usage

double

The Cloud Security Management Pro host usage by tag(s).

custom_event_percentage

double

The percentage of Custom Events usage by tag(s).

custom_event_usage

double

The total Custom Events usage by tag(s).

custom_ingested_timeseries_percentage

double

The percentage of ingested custom metrics usage by tag(s).

custom_ingested_timeseries_usage

double

The ingested custom metrics usage by tag(s).

custom_timeseries_percentage

double

The percentage of indexed custom metrics usage by tag(s).

custom_timeseries_usage

double

The indexed custom metrics usage by tag(s).

cws_containers_percentage

double

The percentage of Cloud Workload Security container usage by tag(s).

cws_containers_usage

double

The Cloud Workload Security container usage by tag(s).

cws_fargate_task_percentage

double

The percentage of Cloud Workload Security Fargate task usage by tag(s).

cws_fargate_task_usage

double

The Cloud Workload Security Fargate task usage by tag(s).

cws_hosts_percentage

double

The percentage of Cloud Workload Security host usage by tag(s).

cws_hosts_usage

double

The Cloud Workload Security host usage by tag(s).

data_jobs_monitoring_usage

double

The Data Jobs Monitoring usage by tag(s).

data_stream_monitoring_usage

double

The Data Stream Monitoring usage by tag(s).

dbm_hosts_percentage

double

The percentage of Database Monitoring host usage by tag(s).

dbm_hosts_usage

double

The Database Monitoring host usage by tag(s).

dbm_queries_percentage

double

The percentage of Database Monitoring queries usage by tag(s).

dbm_queries_usage

double

The Database Monitoring queries usage by tag(s).

error_tracking_percentage

double

The percentage of error tracking events usage by tag(s).

error_tracking_usage

double

The error tracking events usage by tag(s).

estimated_indexed_spans_percentage

double

The percentage of estimated indexed spans usage by tag(s).

estimated_indexed_spans_usage

double

The estimated indexed spans usage by tag(s).

estimated_ingested_spans_percentage

double

The percentage of estimated ingested spans usage by tag(s).

estimated_ingested_spans_usage

double

The estimated ingested spans usage by tag(s).

fargate_percentage

double

The percentage of Fargate usage by tags.

fargate_usage

double

The Fargate usage by tags.

functions_percentage

double

The percentage of Lambda function usage by tag(s).

functions_usage

double

The Lambda function usage by tag(s).

incident_management_monthly_active_users_percentage

double

The percentage of Incident Management monthly active users usage by tag(s).

incident_management_monthly_active_users_usage

double

The Incident Management monthly active users usage by tag(s).

indexed_spans_percentage

double

The percentage of APM Indexed Spans usage by tag(s).

indexed_spans_usage

double

The total APM Indexed Spans usage by tag(s).

infra_host_percentage

double

The percentage of infrastructure host usage by tag(s).

infra_host_usage

double

The infrastructure host usage by tag(s).

ingested_logs_bytes_percentage

double

The percentage of Ingested Logs usage by tag(s).

ingested_logs_bytes_usage

double

The total Ingested Logs usage by tag(s).

ingested_spans_bytes_percentage

double

The percentage of APM Ingested Spans usage by tag(s).

ingested_spans_bytes_usage

double

The total APM Ingested Spans usage by tag(s).

invocations_percentage

double

The percentage of Lambda invocation usage by tag(s).

invocations_usage

double

The Lambda invocation usage by tag(s).

lambda_traced_invocations_percentage

double

The percentage of Serverless APM usage by tag(s).

lambda_traced_invocations_usage

double

The Serverless APM usage by tag(s).

llm_observability_percentage

double

The percentage of LLM Observability usage by tag(s).

llm_observability_usage

double

The LLM Observability usage by tag(s).

logs_indexed_15day_percentage

double

The percentage of Indexed Logs (15-day Retention) usage by tag(s).

logs_indexed_15day_usage

double

The total Indexed Logs (15-day Retention) usage by tag(s).

logs_indexed_180day_percentage

double

The percentage of Indexed Logs (180-day Retention) usage by tag(s).

logs_indexed_180day_usage

double

The total Indexed Logs (180-day Retention) usage by tag(s).

logs_indexed_1day_percentage

double

The percentage of Indexed Logs (1-day Retention) usage by tag(s).

logs_indexed_1day_usage

double

The total Indexed Logs (1-day Retention) usage by tag(s).

logs_indexed_30day_percentage

double

The percentage of Indexed Logs (30-day Retention) usage by tag(s).

logs_indexed_30day_usage

double

The total Indexed Logs (30-day Retention) usage by tag(s).

logs_indexed_360day_percentage

double

The percentage of Indexed Logs (360-day Retention) usage by tag(s).

logs_indexed_360day_usage

double

The total Indexed Logs (360-day Retention) usage by tag(s).

logs_indexed_3day_percentage

double

The percentage of Indexed Logs (3-day Retention) usage by tag(s).

logs_indexed_3day_usage

double

The total Indexed Logs (3-day Retention) usage by tag(s).

logs_indexed_45day_percentage

double

The percentage of Indexed Logs (45-day Retention) usage by tag(s).

logs_indexed_45day_usage

double

The total Indexed Logs (45-day Retention) usage by tag(s).

logs_indexed_60day_percentage

double

The percentage of Indexed Logs (60-day Retention) usage by tag(s).

logs_indexed_60day_usage

double

The total Indexed Logs (60-day Retention) usage by tag(s).

logs_indexed_7day_percentage

double

The percentage of Indexed Logs (7-day Retention) usage by tag(s).

logs_indexed_7day_usage

double

The total Indexed Logs (7-day Retention) usage by tag(s).

logs_indexed_90day_percentage

double

The percentage of Indexed Logs (90-day Retention) usage by tag(s).

logs_indexed_90day_usage

double

The total Indexed Logs (90-day Retention) usage by tag(s).

logs_indexed_custom_retention_percentage

double

The percentage of Indexed Logs (Custom Retention) usage by tag(s).

logs_indexed_custom_retention_usage

double

The total Indexed Logs (Custom Retention) usage by tag(s).

mobile_app_testing_percentage

double

The percentage of Synthetic mobile application test usage by tag(s).

mobile_app_testing_usage

double

The Synthetic mobile application test usage by tag(s).

ndm_netflow_percentage

double

The percentage of Network Device Monitoring NetFlow usage by tag(s).

ndm_netflow_usage

double

The Network Device Monitoring NetFlow usage by tag(s).

network_device_wireless_percentage

double

The percentage of network device wireless usage by tag(s).

network_device_wireless_usage

double

The network device wireless usage by tag(s).

npm_host_percentage

double

The percentage of network host usage by tag(s).

npm_host_usage

double

The network host usage by tag(s).

obs_pipeline_bytes_percentage

double

The percentage of observability pipeline bytes usage by tag(s).

obs_pipeline_bytes_usage

double

The observability pipeline bytes usage by tag(s).

obs_pipelines_vcpu_percentage

double

The percentage of observability pipeline per core usage by tag(s).

obs_pipelines_vcpu_usage

double

The observability pipeline per core usage by tag(s).

online_archive_percentage

double

The percentage of online archive usage by tag(s).

online_archive_usage

double

The online archive usage by tag(s).

product_analytics_session_percentage

double

The percentage of Product Analytics session usage by tag(s).

product_analytics_session_usage

double

The Product Analytics session usage by tag(s).

profiled_container_percentage

double

The percentage of profiled container usage by tag(s).

profiled_container_usage

double

The profiled container usage by tag(s).

profiled_fargate_percentage

double

The percentage of profiled Fargate task usage by tag(s).

profiled_fargate_usage

double

The profiled Fargate task usage by tag(s).

profiled_host_percentage

double

The percentage of profiled hosts usage by tag(s).

profiled_host_usage

double

The profiled hosts usage by tag(s).

published_app_percentage

double

The percentage of published application usage by tag(s).

published_app_usage

double

The published application usage by tag(s).

rum_browser_mobile_sessions_percentage

double

The percentage of RUM Browser and Mobile usage by tag(s).

rum_browser_mobile_sessions_usage

double

The total RUM Browser and Mobile usage by tag(s).

rum_ingested_percentage

double

The percentage of RUM Ingested usage by tag(s).

rum_ingested_usage

double

The total RUM Ingested usage by tag(s).

rum_investigate_percentage

double

The percentage of RUM Investigate usage by tag(s).

rum_investigate_usage

double

The total RUM Investigate usage by tag(s).

rum_replay_sessions_percentage

double

The percentage of RUM Session Replay usage by tag(s).

rum_replay_sessions_usage

double

The total RUM Session Replay usage by tag(s).

rum_session_replay_add_on_percentage

double

The percentage of RUM Session Replay Add-On usage by tag(s).

rum_session_replay_add_on_usage

double

The total RUM Session Replay Add-On usage by tag(s).

sca_fargate_percentage

double

The percentage of Software Composition Analysis Fargate task usage by tag(s).

sca_fargate_usage

double

The total Software Composition Analysis Fargate task usage by tag(s).

sds_scanned_bytes_percentage

double

The percentage of Sensitive Data Scanner usage by tag(s).

sds_scanned_bytes_usage

double

The total Sensitive Data Scanner usage by tag(s).

serverless_apps_percentage

double

The percentage of Serverless Apps usage by tag(s).

serverless_apps_usage

double

The total Serverless Apps usage by tag(s).

siem_analyzed_logs_add_on_percentage

double

The percentage of log events analyzed by Cloud SIEM usage by tag(s).

siem_analyzed_logs_add_on_usage

double

The log events analyzed by Cloud SIEM usage by tag(s).

siem_ingested_bytes_percentage

double

The percentage of SIEM usage by tag(s).

siem_ingested_bytes_usage

double

The total SIEM usage by tag(s).

snmp_percentage

double

The percentage of network device usage by tag(s).

snmp_usage

double

The network device usage by tag(s).

universal_service_monitoring_percentage

double

The percentage of universal service monitoring usage by tag(s).

universal_service_monitoring_usage

double

The universal service monitoring usage by tag(s).

vuln_management_hosts_percentage

double

The percentage of Application Vulnerability Management usage by tag(s).

vuln_management_hosts_usage

double

The Application Vulnerability Management usage by tag(s).

workflow_executions_percentage

double

The percentage of workflow executions usage by tag(s).

workflow_executions_usage

double

The total workflow executions usage by tag(s).

{
  "metadata": {
    "aggregates": [
      {
        "agg_type": "sum",
        "field": "custom_timeseries_usage",
        "value": "number"
      }
    ],
    "pagination": {
      "next_record_id": "string"
    }
  },
  "usage": [
    {
      "month": "2019-09-19T10:00:00.000Z",
      "org_name": "string",
      "public_id": "string",
      "region": "string",
      "tag_config_source": "string",
      "tags": {
        "<any-key>": [
          "datadog-integrations-lab"
        ]
      },
      "updated_at": "2019-09-19T10:00:00.000Z",
      "values": {
        "api_percentage": "number",
        "api_usage": "number",
        "apm_fargate_percentage": "number",
        "apm_fargate_usage": "number",
        "apm_host_percentage": "number",
        "apm_host_usage": "number",
        "apm_usm_percentage": "number",
        "apm_usm_usage": "number",
        "appsec_fargate_percentage": "number",
        "appsec_fargate_usage": "number",
        "appsec_percentage": "number",
        "appsec_usage": "number",
        "asm_serverless_traced_invocations_percentage": "number",
        "asm_serverless_traced_invocations_usage": "number",
        "browser_percentage": "number",
        "browser_usage": "number",
        "ci_pipeline_indexed_spans_percentage": "number",
        "ci_pipeline_indexed_spans_usage": "number",
        "ci_test_indexed_spans_percentage": "number",
        "ci_test_indexed_spans_usage": "number",
        "ci_visibility_itr_percentage": "number",
        "ci_visibility_itr_usage": "number",
        "cloud_siem_percentage": "number",
        "cloud_siem_usage": "number",
        "code_security_host_percentage": "number",
        "code_security_host_usage": "number",
        "container_excl_agent_percentage": "number",
        "container_excl_agent_usage": "number",
        "container_percentage": "number",
        "container_usage": "number",
        "cspm_containers_percentage": "number",
        "cspm_containers_usage": "number",
        "cspm_hosts_percentage": "number",
        "cspm_hosts_usage": "number",
        "custom_event_percentage": "number",
        "custom_event_usage": "number",
        "custom_ingested_timeseries_percentage": "number",
        "custom_ingested_timeseries_usage": "number",
        "custom_timeseries_percentage": "number",
        "custom_timeseries_usage": "number",
        "cws_containers_percentage": "number",
        "cws_containers_usage": "number",
        "cws_fargate_task_percentage": "number",
        "cws_fargate_task_usage": "number",
        "cws_hosts_percentage": "number",
        "cws_hosts_usage": "number",
        "data_jobs_monitoring_usage": "number",
        "data_stream_monitoring_usage": "number",
        "dbm_hosts_percentage": "number",
        "dbm_hosts_usage": "number",
        "dbm_queries_percentage": "number",
        "dbm_queries_usage": "number",
        "error_tracking_percentage": "number",
        "error_tracking_usage": "number",
        "estimated_indexed_spans_percentage": "number",
        "estimated_indexed_spans_usage": "number",
        "estimated_ingested_spans_percentage": "number",
        "estimated_ingested_spans_usage": "number",
        "fargate_percentage": "number",
        "fargate_usage": "number",
        "functions_percentage": "number",
        "functions_usage": "number",
        "incident_management_monthly_active_users_percentage": "number",
        "incident_management_monthly_active_users_usage": "number",
        "indexed_spans_percentage": "number",
        "indexed_spans_usage": "number",
        "infra_host_percentage": "number",
        "infra_host_usage": "number",
        "ingested_logs_bytes_percentage": "number",
        "ingested_logs_bytes_usage": "number",
        "ingested_spans_bytes_percentage": "number",
        "ingested_spans_bytes_usage": "number",
        "invocations_percentage": "number",
        "invocations_usage": "number",
        "lambda_traced_invocations_percentage": "number",
        "lambda_traced_invocations_usage": "number",
        "llm_observability_percentage": "number",
        "llm_observability_usage": "number",
        "logs_indexed_15day_percentage": "number",
        "logs_indexed_15day_usage": "number",
        "logs_indexed_180day_percentage": "number",
        "logs_indexed_180day_usage": "number",
        "logs_indexed_1day_percentage": "number",
        "logs_indexed_1day_usage": "number",
        "logs_indexed_30day_percentage": "number",
        "logs_indexed_30day_usage": "number",
        "logs_indexed_360day_percentage": "number",
        "logs_indexed_360day_usage": "number",
        "logs_indexed_3day_percentage": "number",
        "logs_indexed_3day_usage": "number",
        "logs_indexed_45day_percentage": "number",
        "logs_indexed_45day_usage": "number",
        "logs_indexed_60day_percentage": "number",
        "logs_indexed_60day_usage": "number",
        "logs_indexed_7day_percentage": "number",
        "logs_indexed_7day_usage": "number",
        "logs_indexed_90day_percentage": "number",
        "logs_indexed_90day_usage": "number",
        "logs_indexed_custom_retention_percentage": "number",
        "logs_indexed_custom_retention_usage": "number",
        "mobile_app_testing_percentage": "number",
        "mobile_app_testing_usage": "number",
        "ndm_netflow_percentage": "number",
        "ndm_netflow_usage": "number",
        "network_device_wireless_percentage": "number",
        "network_device_wireless_usage": "number",
        "npm_host_percentage": "number",
        "npm_host_usage": "number",
        "obs_pipeline_bytes_percentage": "number",
        "obs_pipeline_bytes_usage": "number",
        "obs_pipelines_vcpu_percentage": "number",
        "obs_pipelines_vcpu_usage": "number",
        "online_archive_percentage": "number",
        "online_archive_usage": "number",
        "product_analytics_session_percentage": "number",
        "product_analytics_session_usage": "number",
        "profiled_container_percentage": "number",
        "profiled_container_usage": "number",
        "profiled_fargate_percentage": "number",
        "profiled_fargate_usage": "number",
        "profiled_host_percentage": "number",
        "profiled_host_usage": "number",
        "published_app_percentage": "number",
        "published_app_usage": "number",
        "rum_browser_mobile_sessions_percentage": "number",
        "rum_browser_mobile_sessions_usage": "number",
        "rum_ingested_percentage": "number",
        "rum_ingested_usage": "number",
        "rum_investigate_percentage": "number",
        "rum_investigate_usage": "number",
        "rum_replay_sessions_percentage": "number",
        "rum_replay_sessions_usage": "number",
        "rum_session_replay_add_on_percentage": "number",
        "rum_session_replay_add_on_usage": "number",
        "sca_fargate_percentage": "number",
        "sca_fargate_usage": "number",
        "sds_scanned_bytes_percentage": "number",
        "sds_scanned_bytes_usage": "number",
        "serverless_apps_percentage": "number",
        "serverless_apps_usage": "number",
        "siem_analyzed_logs_add_on_percentage": "number",
        "siem_analyzed_logs_add_on_usage": "number",
        "siem_ingested_bytes_percentage": "number",
        "siem_ingested_bytes_usage": "number",
        "snmp_percentage": "number",
        "snmp_usage": "number",
        "universal_service_monitoring_percentage": "number",
        "universal_service_monitoring_usage": "number",
        "vuln_management_hosts_percentage": "number",
        "vuln_management_hosts_usage": "number",
        "workflow_executions_percentage": "number",
        "workflow_executions_usage": "number"
      }
    }
  ]
}

Forbidden - User is not authorized