Create the RUM configuration

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

POST https://api.ap1.datadoghq.com/api/v2/rum/confighttps://api.ap2.datadoghq.com/api/v2/rum/confighttps://api.datadoghq.eu/api/v2/rum/confighttps://api.ddog-gov.com/api/v2/rum/confighttps://api.us2.ddog-gov.com/api/v2/rum/confighttps://api.uk1.datadoghq.com/api/v2/rum/confighttps://api.datadoghq.com/api/v2/rum/confighttps://api.us3.datadoghq.com/api/v2/rum/confighttps://api.us5.datadoghq.com/api/v2/rum/config

Overview

Create the RUM configuration for your organization. Returns the RUM configuration object from the request body when the request is successful.

Request

Body Data (required)

The definition of the RUM configuration to create.

Expand All

Field

Type

Description

data [required]

object

Object describing the RUM configuration to create.

attributes [required]

object

Attributes of the RUM configuration to create.

enforced_application_tags [required]

boolean

Whether application tags are enforced for the RUM applications in the organization.

type [required]

enum

The type of the resource. The value should always be rum_config. Allowed enum values: rum_config

default: rum_config

{
  "data": {
    "attributes": {
      "enforced_application_tags": true
    },
    "type": "rum_config"
  }
}

Response

Created

The RUM configuration object.

Expand All

Field

Type

Description

data [required]

object

The RUM configuration data.

attributes [required]

object

Attributes of the RUM configuration.

disabled

boolean

Whether the RUM configuration is disabled for the organization.

enforced_application_tags [required]

boolean

Whether application tags are enforced for the RUM applications in the organization.

enforced_application_tags_updated_at

date-time

Timestamp of when the enforced application tags setting was last updated.

enforced_application_tags_updated_by

string

Handle of the user who last updated the enforced application tags setting.

ootb_metrics_version

int64

Version of the out-of-the-box metrics installed for the organization.

ootb_metrics_version_installed_at

date-time

Timestamp of when the out-of-the-box metrics version was installed.

retention_filters_enabled [required]

boolean

Whether retention filters are enabled for the organization.

retention_filters_enabled_updated_at

date-time

Timestamp of when the retention filters setting was last updated.

retention_filters_enabled_updated_by

string

Handle of the user or job who last updated the retention filters setting.

id [required]

string

The organization ID associated with the RUM configuration.

type [required]

enum

The type of the resource. The value should always be rum_config. Allowed enum values: rum_config

default: rum_config

{
  "data": {
    "attributes": {
      "disabled": false,
      "enforced_application_tags": true,
      "enforced_application_tags_updated_at": "2024-01-15T09:30:00.000Z",
      "enforced_application_tags_updated_by": "user@example.com",
      "ootb_metrics_version": 5,
      "ootb_metrics_version_installed_at": "2024-01-15T09:30:00.000Z",
      "retention_filters_enabled": true,
      "retention_filters_enabled_updated_at": "2024-01-15T09:30:00.000Z",
      "retention_filters_enabled_updated_by": "contract-update-job"
    },
    "id": "1234",
    "type": "rum_config"
  }
}

Bad Request

API error response.

Expand All

Field

Type

Description

errors [required]

[string]

A list of errors.

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

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

                  ## default
# 

# Curl command
curl -X POST "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/rum/config" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -H "DD-API-KEY: ${DD_API_KEY}" \ -H "DD-APPLICATION-KEY: ${DD_APP_KEY}" \ -d @- << EOF { "data": { "attributes": { "enforced_application_tags": true }, "type": "rum_config" } } EOF
"""
Create the RUM configuration returns "Created" response
"""

from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.rum_config_api import RUMConfigApi
from datadog_api_client.v2.model.rum_config_create_attributes import RumConfigCreateAttributes
from datadog_api_client.v2.model.rum_config_create_data import RumConfigCreateData
from datadog_api_client.v2.model.rum_config_create_request import RumConfigCreateRequest
from datadog_api_client.v2.model.rum_config_type import RumConfigType

body = RumConfigCreateRequest(
    data=RumConfigCreateData(
        attributes=RumConfigCreateAttributes(
            enforced_application_tags=True,
        ),
        type=RumConfigType.RUM_CONFIG,
    ),
)

configuration = Configuration()
configuration.unstable_operations["create_rum_config"] = True
with ApiClient(configuration) as api_client:
    api_instance = RUMConfigApi(api_client)
    response = api_instance.create_rum_config(body=body)

    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.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
# Create the RUM configuration returns "Created" response

require "datadog_api_client"
DatadogAPIClient.configure do |config|
  config.unstable_operations["v2.create_rum_config".to_sym] = true
end
api_instance = DatadogAPIClient::V2::RUMConfigAPI.new

body = DatadogAPIClient::V2::RumConfigCreateRequest.new({
  data: DatadogAPIClient::V2::RumConfigCreateData.new({
    attributes: DatadogAPIClient::V2::RumConfigCreateAttributes.new({
      enforced_application_tags: true,
    }),
    type: DatadogAPIClient::V2::RumConfigType::RUM_CONFIG,
  }),
})
p api_instance.create_rum_config(body)

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="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
// Create the RUM configuration returns "Created" 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() {
	body := datadogV2.RumConfigCreateRequest{
		Data: datadogV2.RumConfigCreateData{
			Attributes: datadogV2.RumConfigCreateAttributes{
				EnforcedApplicationTags: true,
			},
			Type: datadogV2.RUMCONFIGTYPE_RUM_CONFIG,
		},
	}
	ctx := datadog.NewDefaultContext(context.Background())
	configuration := datadog.NewConfiguration()
	configuration.SetUnstableOperationEnabled("v2.CreateRumConfig", true)
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV2.NewRUMConfigApi(apiClient)
	resp, r, err := api.CreateRumConfig(ctx, body)

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

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `RUMConfigApi.CreateRumConfig`:\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.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
// Create the RUM configuration returns "Created" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.RumConfigApi;
import com.datadog.api.client.v2.model.RumConfigCreateAttributes;
import com.datadog.api.client.v2.model.RumConfigCreateData;
import com.datadog.api.client.v2.model.RumConfigCreateRequest;
import com.datadog.api.client.v2.model.RumConfigResponse;
import com.datadog.api.client.v2.model.RumConfigType;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    defaultClient.setUnstableOperationEnabled("v2.createRumConfig", true);
    RumConfigApi apiInstance = new RumConfigApi(defaultClient);

    RumConfigCreateRequest body =
        new RumConfigCreateRequest()
            .data(
                new RumConfigCreateData()
                    .attributes(new RumConfigCreateAttributes().enforcedApplicationTags(true))
                    .type(RumConfigType.RUM_CONFIG));

    try {
      RumConfigResponse result = apiInstance.createRumConfig(body);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling RumConfigApi#createRumConfig");
      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="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
// Create the RUM configuration returns "Created" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_rum_config::RUMConfigAPI;
use datadog_api_client::datadogV2::model::RumConfigCreateAttributes;
use datadog_api_client::datadogV2::model::RumConfigCreateData;
use datadog_api_client::datadogV2::model::RumConfigCreateRequest;
use datadog_api_client::datadogV2::model::RumConfigType;

#[tokio::main]
async fn main() {
    let body = RumConfigCreateRequest::new(RumConfigCreateData::new(
        RumConfigCreateAttributes::new(true),
        RumConfigType::RUM_CONFIG,
    ));
    let mut configuration = datadog::Configuration::new();
    configuration.set_unstable_operation_enabled("v2.CreateRumConfig", true);
    let api = RUMConfigAPI::with_config(configuration);
    let resp = api.create_rum_config(body).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="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
/**
 * Create the RUM configuration returns "Created" response
 */

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

const configuration = client.createConfiguration();
configuration.unstableOperations["v2.createRumConfig"] = true;
const apiInstance = new v2.RUMConfigApi(configuration);

const params: v2.RUMConfigApiCreateRumConfigRequest = {
  body: {
    data: {
      attributes: {
        enforcedApplicationTags: true,
      },
      type: "rum_config",
    },
  },
};

apiInstance
  .createRumConfig(params)
  .then((data: v2.RumConfigResponse) => {
    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="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"