Update a RUM retention filter

PATCH https://api.ap1.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filters/{rf_id}https://api.ap2.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filters/{rf_id}https://api.datadoghq.eu/api/v2/rum/applications/{app_id}/retention_filters/{rf_id}https://api.ddog-gov.com/api/v2/rum/applications/{app_id}/retention_filters/{rf_id}https://api.us2.ddog-gov.com/api/v2/rum/applications/{app_id}/retention_filters/{rf_id}https://api.uk1.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filters/{rf_id}https://api.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filters/{rf_id}https://api.us3.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filters/{rf_id}https://api.us5.datadoghq.com/api/v2/rum/applications/{app_id}/retention_filters/{rf_id}

Présentation

Mettre à jour un filtre de rétention RUM pour une application RUM. Renvoie les objets de filtres de rétention RUM du corps de la requête lorsque la requête est réussie.

Arguments

Paramètres du chemin

Nom

Type

Description

app_id [required]

string

RUM application ID.

rf_id [required]

string

Retention filter ID.

Requête

Body Data (required)

Nouvelle définition du filtre de rétention RUM.

Expand All

Champ

Type

Description

data [required]

object

The new RUM retention filter properties to update.

attributes [required]

object

The object describing attributes of a RUM retention filter to update.

cross_product_sampling

object

The configuration for cross-product retention filters. All fields are optional for partial updates.

trace_enabled

boolean

Whether the cross-product retention filter for APM traces is enabled.

trace_sample_rate

double

The sample rate for the APM cross-product retention filter, between 0 and 100.

enabled

boolean

Whether the retention filter is enabled.

event_type

enum

The type of RUM events to filter on. Allowed enum values: session,view,action,error,resource,long_task,vital

name

string

The name of a RUM retention filter.

query

string

The query string for a RUM retention filter.

sample_rate

double

The sample rate for a RUM retention filter, between 0.1 and 100.

id [required]

string

ID of retention filter in UUID.

type [required]

enum

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

default: retention_filters

{
  "data": {
    "id": "4b95d361-f65d-4515-9824-c9aaeba5ac2a",
    "type": "retention_filters",
    "attributes": {
      "name": "Test updating retention filter",
      "event_type": "view",
      "query": "view_query",
      "sample_rate": 100,
      "enabled": true
    }
  }
}

Réponse

Updated

The RUM retention filter object.

Expand All

Champ

Type

Description

data

object

The RUM retention filter.

attributes

object

The object describing attributes of a RUM retention filter.

cross_product_sampling

object

The configuration for cross-product retention filters.

trace_enabled

boolean

Whether the cross-product retention filter for APM traces is enabled.

trace_sample_rate

double

The sample rate for the APM cross-product retention filter, between 0 and 100.

enabled

boolean

Whether the retention filter is enabled.

event_type

enum

The type of RUM events to filter on. Allowed enum values: session,view,action,error,resource,long_task,vital

name

string

The name of a RUM retention filter.

query

string

The query string for a RUM retention filter.

sample_rate

double

The sample rate for a RUM retention filter, between 0.1 and 100.

id

string

ID of retention filter in UUID.

type

enum

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

default: retention_filters

{
  "data": {
    "attributes": {
      "cross_product_sampling": {
        "trace_enabled": true,
        "trace_sample_rate": 25
      },
      "enabled": true,
      "event_type": "session",
      "name": "Retention filter for session",
      "query": "@session.has_replay:true",
      "sample_rate": 50.5
    },
    "id": "051601eb-54a0-abc0-03f9-cc02efa18892",
    "type": "retention_filters"
  }
}

Bad Request

API error response.

Expand All

Champ

Type

Description

errors [required]

[string]

A list of errors.

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

Not Authorized

API error response.

Expand All

Champ

Type

Description

errors [required]

[string]

A list of errors.

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

Not Found

API error response.

Expand All

Champ

Type

Description

errors [required]

[string]

A list of errors.

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

Too many requests

API error response.

Expand All

Champ

Type

Description

errors [required]

[string]

A list of errors.

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

Exemple de code

                          ## default
# 

# Path parameters
export app_id="CHANGE_ME"
export rf_id="CHANGE_ME"
# Curl command
curl -X PATCH "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/applications/${app_id}/retention_filters/${rf_id}" \ -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": { "cross_product_sampling": { "trace_enabled": true, "trace_sample_rate": 25 }, "enabled": true, "event_type": "session", "name": "Retention filter for session", "query": "@session.has_replay:true", "sample_rate": 50.5 }, "id": "051601eb-54a0-abc0-03f9-cc02efa18892", "type": "retention_filters" } } EOF
// Update a RUM retention filter returns "Updated" 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.RumRetentionFilterUpdateRequest{
		Data: datadogV2.RumRetentionFilterUpdateData{
			Id:   "4b95d361-f65d-4515-9824-c9aaeba5ac2a",
			Type: datadogV2.RUMRETENTIONFILTERTYPE_RETENTION_FILTERS,
			Attributes: datadogV2.RumRetentionFilterUpdateAttributes{
				Name:       datadog.PtrString("Test updating retention filter"),
				EventType:  datadogV2.RUMRETENTIONFILTEREVENTTYPE_VIEW.Ptr(),
				Query:      datadog.PtrString("view_query"),
				SampleRate: datadog.PtrFloat64(100),
				Enabled:    datadog.PtrBool(true),
			},
		},
	}
	ctx := datadog.NewDefaultContext(context.Background())
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV2.NewRumRetentionFiltersApi(apiClient)
	resp, r, err := api.UpdateRetentionFilter(ctx, "a33671aa-24fd-4dcd-ba4b-5bbdbafe7690", "4b95d361-f65d-4515-9824-c9aaeba5ac2a", body)

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

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `RumRetentionFiltersApi.UpdateRetentionFilter`:\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"
// Update a RUM retention filter returns "Updated" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.RumRetentionFiltersApi;
import com.datadog.api.client.v2.model.RumRetentionFilterEventType;
import com.datadog.api.client.v2.model.RumRetentionFilterResponse;
import com.datadog.api.client.v2.model.RumRetentionFilterType;
import com.datadog.api.client.v2.model.RumRetentionFilterUpdateAttributes;
import com.datadog.api.client.v2.model.RumRetentionFilterUpdateData;
import com.datadog.api.client.v2.model.RumRetentionFilterUpdateRequest;

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

    RumRetentionFilterUpdateRequest body =
        new RumRetentionFilterUpdateRequest()
            .data(
                new RumRetentionFilterUpdateData()
                    .id("4b95d361-f65d-4515-9824-c9aaeba5ac2a")
                    .type(RumRetentionFilterType.RETENTION_FILTERS)
                    .attributes(
                        new RumRetentionFilterUpdateAttributes()
                            .name("Test updating retention filter")
                            .eventType(RumRetentionFilterEventType.VIEW)
                            .query("view_query")
                            .sampleRate(100.0)
                            .enabled(true)));

    try {
      RumRetentionFilterResponse result =
          apiInstance.updateRetentionFilter(
              "a33671aa-24fd-4dcd-ba4b-5bbdbafe7690", "4b95d361-f65d-4515-9824-c9aaeba5ac2a", body);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling RumRetentionFiltersApi#updateRetentionFilter");
      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"
"""
Update a RUM retention filter returns "Updated" response
"""

from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.rum_retention_filters_api import RumRetentionFiltersApi
from datadog_api_client.v2.model.rum_retention_filter_event_type import RumRetentionFilterEventType
from datadog_api_client.v2.model.rum_retention_filter_type import RumRetentionFilterType
from datadog_api_client.v2.model.rum_retention_filter_update_attributes import RumRetentionFilterUpdateAttributes
from datadog_api_client.v2.model.rum_retention_filter_update_data import RumRetentionFilterUpdateData
from datadog_api_client.v2.model.rum_retention_filter_update_request import RumRetentionFilterUpdateRequest

body = RumRetentionFilterUpdateRequest(
    data=RumRetentionFilterUpdateData(
        id="4b95d361-f65d-4515-9824-c9aaeba5ac2a",
        type=RumRetentionFilterType.RETENTION_FILTERS,
        attributes=RumRetentionFilterUpdateAttributes(
            name="Test updating retention filter",
            event_type=RumRetentionFilterEventType.VIEW,
            query="view_query",
            sample_rate=100.0,
            enabled=True,
        ),
    ),
)

configuration = Configuration()
with ApiClient(configuration) as api_client:
    api_instance = RumRetentionFiltersApi(api_client)
    response = api_instance.update_retention_filter(
        app_id="a33671aa-24fd-4dcd-ba4b-5bbdbafe7690", rf_id="4b95d361-f65d-4515-9824-c9aaeba5ac2a", 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"
# Update a RUM retention filter returns "Updated" response

require "datadog_api_client"
api_instance = DatadogAPIClient::V2::RumRetentionFiltersAPI.new

body = DatadogAPIClient::V2::RumRetentionFilterUpdateRequest.new({
  data: DatadogAPIClient::V2::RumRetentionFilterUpdateData.new({
    id: "4b95d361-f65d-4515-9824-c9aaeba5ac2a",
    type: DatadogAPIClient::V2::RumRetentionFilterType::RETENTION_FILTERS,
    attributes: DatadogAPIClient::V2::RumRetentionFilterUpdateAttributes.new({
      name: "Test updating retention filter",
      event_type: DatadogAPIClient::V2::RumRetentionFilterEventType::VIEW,
      query: "view_query",
      sample_rate: 100,
      enabled: true,
    }),
  }),
})
p api_instance.update_retention_filter("a33671aa-24fd-4dcd-ba4b-5bbdbafe7690", "4b95d361-f65d-4515-9824-c9aaeba5ac2a", 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"
// Update a RUM retention filter returns "Updated" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_rum_retention_filters::RumRetentionFiltersAPI;
use datadog_api_client::datadogV2::model::RumRetentionFilterEventType;
use datadog_api_client::datadogV2::model::RumRetentionFilterType;
use datadog_api_client::datadogV2::model::RumRetentionFilterUpdateAttributes;
use datadog_api_client::datadogV2::model::RumRetentionFilterUpdateData;
use datadog_api_client::datadogV2::model::RumRetentionFilterUpdateRequest;

#[tokio::main]
async fn main() {
    let body = RumRetentionFilterUpdateRequest::new(RumRetentionFilterUpdateData::new(
        RumRetentionFilterUpdateAttributes::new()
            .enabled(true)
            .event_type(RumRetentionFilterEventType::VIEW)
            .name("Test updating retention filter".to_string())
            .query("view_query".to_string())
            .sample_rate(100.0 as f64),
        "4b95d361-f65d-4515-9824-c9aaeba5ac2a".to_string(),
        RumRetentionFilterType::RETENTION_FILTERS,
    ));
    let configuration = datadog::Configuration::new();
    let api = RumRetentionFiltersAPI::with_config(configuration);
    let resp = api
        .update_retention_filter(
            "a33671aa-24fd-4dcd-ba4b-5bbdbafe7690".to_string(),
            "4b95d361-f65d-4515-9824-c9aaeba5ac2a".to_string(),
            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
/**
 * Update a RUM retention filter returns "Updated" response
 */

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

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

const params: v2.RumRetentionFiltersApiUpdateRetentionFilterRequest = {
  body: {
    data: {
      id: "4b95d361-f65d-4515-9824-c9aaeba5ac2a",
      type: "retention_filters",
      attributes: {
        name: "Test updating retention filter",
        eventType: "view",
        query: "view_query",
        sampleRate: 100,
        enabled: true,
      },
    },
  },
  appId: "a33671aa-24fd-4dcd-ba4b-5bbdbafe7690",
  rfId: "4b95d361-f65d-4515-9824-c9aaeba5ac2a",
};

apiInstance
  .updateRetentionFilter(params)
  .then((data: v2.RumRetentionFilterResponse) => {
    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"