Delete a usage quota

Note: This endpoint is in Preview and is subject to change. If you have any feedback, contact Datadog support.

DELETE https://api.ap1.datadoghq.com/api/v2/usage/quotas/{quota_namespace}/{id}https://api.ap2.datadoghq.com/api/v2/usage/quotas/{quota_namespace}/{id}https://api.datadoghq.eu/api/v2/usage/quotas/{quota_namespace}/{id}https://api.ddog-gov.com/api/v2/usage/quotas/{quota_namespace}/{id}https://api.us2.ddog-gov.com/api/v2/usage/quotas/{quota_namespace}/{id}https://api.uk1.datadoghq.com/api/v2/usage/quotas/{quota_namespace}/{id}https://api.datadoghq.com/api/v2/usage/quotas/{quota_namespace}/{id}https://api.us3.datadoghq.com/api/v2/usage/quotas/{quota_namespace}/{id}https://api.us5.datadoghq.com/api/v2/usage/quotas/{quota_namespace}/{id}

Overview

Deletes a usage quota by its opaque identifier. The quota must belong to the caller’s organization or one of its descendants, and its opaque identifier must belong to the requested quota namespace. Requires the user_access_manage, billing_edit, and org_management permissions. This endpoint requires all of the following permissions:

  • user_access_manage
  • billing_edit
  • org_management

  • OAuth apps require the user_access_manage, billing_edit, org_management authorization scope to access this endpoint.

    Arguments

    Path Parameters

    Name

    Type

    Description

    quota_namespace [required]

    string

    The product-specific namespace whose usage quotas are being managed.

    id [required]

    string

    The opaque quota identifier returned by a previous list or create request. Clients must pass this value verbatim.

    Response

    No Content

    Forbidden

    API error response.

    Expand All

    Field

    Type

    Description

    errors [required]

    [object]

    A list of errors.

    detail

    string

    A human-readable explanation specific to this occurrence of the error.

    meta

    object

    Non-standard meta-information about the error

    source

    object

    References to the source of the error.

    header

    string

    A string indicating the name of a single request header which caused the error.

    parameter

    string

    A string indicating which URI query parameter caused the error.

    pointer

    string

    A JSON pointer to the value in the request document that caused the error.

    status

    string

    Status code of the response.

    title

    string

    Short human-readable summary of the error.

    {
      "errors": [
        {
          "detail": "Missing required attribute in body",
          "meta": {},
          "source": {
            "header": "Authorization",
            "parameter": "limit",
            "pointer": "/data/attributes/title"
          },
          "status": "400",
          "title": "Bad Request"
        }
      ]
    }

    Not Found

    API error response.

    Expand All

    Field

    Type

    Description

    errors [required]

    [object]

    A list of errors.

    detail

    string

    A human-readable explanation specific to this occurrence of the error.

    meta

    object

    Non-standard meta-information about the error

    source

    object

    References to the source of the error.

    header

    string

    A string indicating the name of a single request header which caused the error.

    parameter

    string

    A string indicating which URI query parameter caused the error.

    pointer

    string

    A JSON pointer to the value in the request document that caused the error.

    status

    string

    Status code of the response.

    title

    string

    Short human-readable summary of the error.

    {
      "errors": [
        {
          "detail": "Missing required attribute in body",
          "meta": {},
          "source": {
            "header": "Authorization",
            "parameter": "limit",
            "pointer": "/data/attributes/title"
          },
          "status": "400",
          "title": "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

                      # Path parameters
    export quota_namespace="ai_credits"
    export id="MjAfYWlfY3JlZGl0c1911c2VyX2hhbmRsZTpfX0FMTF9f"
    # Curl command
    curl -X DELETE "https://api.ap1.datadoghq.com"https://api.ap2.datadoghq.com"https://api.datadoghq.eu"https://api.ddog-gov.com"https://api.us2.ddog-gov.com"https://api.uk1.datadoghq.com"https://api.datadoghq.com"https://api.us3.datadoghq.com"https://api.us5.datadoghq.com/api/v2/usage/quotas/${quota_namespace}/${id}" \ -H "DD-API-KEY: ${DD_API_KEY}" \ -H "DD-APPLICATION-KEY: ${DD_APP_KEY}"
    """
    Delete a usage quota returns "No Content" response
    """
    
    from datadog_api_client import ApiClient, Configuration
    from datadog_api_client.v2.api.usage_metering_api import UsageMeteringApi
    
    configuration = Configuration()
    configuration.unstable_operations["delete_quota"] = True
    with ApiClient(configuration) as api_client:
        api_instance = UsageMeteringApi(api_client)
        api_instance.delete_quota(
            quota_namespace="ai_credits",
            id="MjAfYWlfY3JlZGl0c1911c2VyX2hhbmRsZTpfX0FMTF9f",
        )
    

    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.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" python3 "example.py"
    # Delete a usage quota returns "No Content" response
    
    require "datadog_api_client"
    DatadogAPIClient.configure do |config|
      config.unstable_operations["v2.delete_quota".to_sym] = true
    end
    api_instance = DatadogAPIClient::V2::UsageMeteringAPI.new
    api_instance.delete_quota("ai_credits", "MjAfYWlfY3JlZGl0c1911c2VyX2hhbmRsZTpfX0FMTF9f")
    

    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.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" rb "example.rb"
    // Delete a usage quota returns "No Content" response
    
    package main
    
    import (
    	"context"
    	"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()
    	configuration.SetUnstableOperationEnabled("v2.DeleteQuota", true)
    	apiClient := datadog.NewAPIClient(configuration)
    	api := datadogV2.NewUsageMeteringApi(apiClient)
    	r, err := api.DeleteQuota(ctx, "ai_credits", "MjAfYWlfY3JlZGl0c1911c2VyX2hhbmRsZTpfX0FMTF9f")
    
    	if err != nil {
    		fmt.Fprintf(os.Stderr, "Error when calling `UsageMeteringApi.DeleteQuota`: %v\n", err)
    		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
    	}
    }
    

    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.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" go run "main.go"
    // Delete a usage quota returns "No Content" response
    
    import com.datadog.api.client.ApiClient;
    import com.datadog.api.client.ApiException;
    import com.datadog.api.client.v2.api.UsageMeteringApi;
    
    public class Example {
      public static void main(String[] args) {
        ApiClient defaultClient = ApiClient.getDefaultApiClient();
        defaultClient.setUnstableOperationEnabled("v2.deleteQuota", true);
        UsageMeteringApi apiInstance = new UsageMeteringApi(defaultClient);
    
        try {
          apiInstance.deleteQuota("ai_credits", "MjAfYWlfY3JlZGl0c1911c2VyX2hhbmRsZTpfX0FMTF9f");
        } catch (ApiException e) {
          System.err.println("Exception when calling UsageMeteringApi#deleteQuota");
          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.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" java "Example.java"
    // Delete a usage quota returns "No Content" response
    use datadog_api_client::datadog;
    use datadog_api_client::datadogV2::api_usage_metering::UsageMeteringAPI;
    
    #[tokio::main]
    async fn main() {
        let mut configuration = datadog::Configuration::new();
        configuration.set_unstable_operation_enabled("v2.DeleteQuota", true);
        let api = UsageMeteringAPI::with_config(configuration);
        let resp = api
            .delete_quota(
                "ai_credits".to_string(),
                "MjAfYWlfY3JlZGl0c1911c2VyX2hhbmRsZTpfX0FMTF9f".to_string(),
            )
            .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.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run
    /**
     * Delete a usage quota returns "No Content" response
     */
    
    import { client, v2 } from "@datadog/datadog-api-client";
    
    const configuration = client.createConfiguration();
    configuration.unstableOperations["v2.deleteQuota"] = true;
    const apiInstance = new v2.UsageMeteringApi(configuration);
    
    const params: v2.UsageMeteringApiDeleteQuotaRequest = {
      quotaNamespace: "ai_credits",
      id: "MjAfYWlfY3JlZGl0c1911c2VyX2hhbmRsZTpfX0FMTF9f",
    };
    
    apiInstance
      .deleteQuota(params)
      .then((data: any) => {
        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.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" tsc "example.ts"