Skip to content

Commit 49b8ab4

Browse files
api-clients-generation-pipeline[bot]ci.datadog-api-spec
andauthored
Add OpenAPI spec for RUM Remote Config endpoints (#1766)
Co-authored-by: ci.datadog-api-spec <packages@datadoghq.com>
1 parent fbbfc34 commit 49b8ab4

36 files changed

Lines changed: 3679 additions & 0 deletions

.generator/schemas/v2/openapi.yaml

Lines changed: 514 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
// Get a RUM SDK configuration returns "OK" response
2+
use datadog_api_client::datadog;
3+
use datadog_api_client::datadogV2::api_rum_remote_config::RUMRemoteConfigAPI;
4+
5+
#[tokio::main]
6+
async fn main() {
7+
let mut configuration = datadog::Configuration::new();
8+
configuration.set_unstable_operation_enabled("v2.GetRumSdkConfig", true);
9+
let api = RUMRemoteConfigAPI::with_config(configuration);
10+
let resp = api.get_rum_sdk_config("config_id".to_string()).await;
11+
if let Ok(value) = resp {
12+
println!("{:#?}", value);
13+
} else {
14+
println!("{:#?}", resp.unwrap_err());
15+
}
16+
}
Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
// Update a RUM SDK configuration returns "OK" response
2+
use datadog_api_client::datadog;
3+
use datadog_api_client::datadogV2::api_rum_remote_config::RUMRemoteConfigAPI;
4+
use datadog_api_client::datadogV2::model::RumSdkConfigDynamicOption;
5+
use datadog_api_client::datadogV2::model::RumSdkConfigDynamicOptionPair;
6+
use datadog_api_client::datadogV2::model::RumSdkConfigDynamicOptionSerializedType;
7+
use datadog_api_client::datadogV2::model::RumSdkConfigDynamicOptionStrategy;
8+
use datadog_api_client::datadogV2::model::RumSdkConfigMatchOption;
9+
use datadog_api_client::datadogV2::model::RumSdkConfigMatchOptionSerializedType;
10+
use datadog_api_client::datadogV2::model::RumSdkConfigRumUpdateAttributes;
11+
use datadog_api_client::datadogV2::model::RumSdkConfigSerializedRegex;
12+
use datadog_api_client::datadogV2::model::RumSdkConfigSerializedRegexType;
13+
use datadog_api_client::datadogV2::model::RumSdkConfigTracingUrlConfig;
14+
use datadog_api_client::datadogV2::model::RumSdkConfigTracingUrlPropagatorType;
15+
use datadog_api_client::datadogV2::model::RumSdkConfigType;
16+
use datadog_api_client::datadogV2::model::RumSdkConfigUpdateAttributes;
17+
use datadog_api_client::datadogV2::model::RumSdkConfigUpdateData;
18+
use datadog_api_client::datadogV2::model::RumSdkConfigUpdateRequest;
19+
20+
#[tokio::main]
21+
async fn main() {
22+
let body = RumSdkConfigUpdateRequest::new(RumSdkConfigUpdateData::new(
23+
RumSdkConfigUpdateAttributes::new(
24+
RumSdkConfigRumUpdateAttributes::new("mask".to_string(), true, 20, 75)
25+
.allowed_tracing_urls(vec![RumSdkConfigTracingUrlConfig::new(
26+
RumSdkConfigMatchOption::new(
27+
RumSdkConfigMatchOptionSerializedType::STRING,
28+
"https://app.datadoghq.com".to_string(),
29+
),
30+
vec![
31+
RumSdkConfigTracingUrlPropagatorType::DATADOG,
32+
RumSdkConfigTracingUrlPropagatorType::TRACECONTEXT,
33+
],
34+
)])
35+
.allowed_tracking_origins(vec![RumSdkConfigMatchOption::new(
36+
RumSdkConfigMatchOptionSerializedType::STRING,
37+
"https://app.datadoghq.com".to_string(),
38+
)])
39+
.context(vec![RumSdkConfigDynamicOptionPair::new(
40+
"id".to_string(),
41+
RumSdkConfigDynamicOption::new(
42+
RumSdkConfigDynamicOptionSerializedType::DYNAMIC,
43+
RumSdkConfigDynamicOptionStrategy::JS,
44+
)
45+
.attribute("data-version".to_string())
46+
.extractor(RumSdkConfigSerializedRegex::new(
47+
RumSdkConfigSerializedRegexType::REGEX,
48+
"^https://app-.*.datadoghq.com".to_string(),
49+
))
50+
.key("app.version".to_string())
51+
.name("app_version".to_string())
52+
.path("application.version".to_string())
53+
.selector("#app-version".to_string()),
54+
)])
55+
.env("production".to_string())
56+
.service("my-service".to_string())
57+
.trace_sample_rate(100)
58+
.track_session_across_subdomains(false)
59+
.user(vec![RumSdkConfigDynamicOptionPair::new(
60+
"id".to_string(),
61+
RumSdkConfigDynamicOption::new(
62+
RumSdkConfigDynamicOptionSerializedType::DYNAMIC,
63+
RumSdkConfigDynamicOptionStrategy::JS,
64+
)
65+
.attribute("data-version".to_string())
66+
.extractor(RumSdkConfigSerializedRegex::new(
67+
RumSdkConfigSerializedRegexType::REGEX,
68+
"^https://app-.*.datadoghq.com".to_string(),
69+
))
70+
.key("app.version".to_string())
71+
.name("app_version".to_string())
72+
.path("application.version".to_string())
73+
.selector("#app-version".to_string()),
74+
)])
75+
.version(
76+
RumSdkConfigDynamicOption::new(
77+
RumSdkConfigDynamicOptionSerializedType::DYNAMIC,
78+
RumSdkConfigDynamicOptionStrategy::JS,
79+
)
80+
.attribute("data-version".to_string())
81+
.extractor(RumSdkConfigSerializedRegex::new(
82+
RumSdkConfigSerializedRegexType::REGEX,
83+
"^https://app-.*.datadoghq.com".to_string(),
84+
))
85+
.key("app.version".to_string())
86+
.name("app_version".to_string())
87+
.path("application.version".to_string())
88+
.selector("#app-version".to_string()),
89+
),
90+
),
91+
"abc12345-1234-5678-abcd-ef1234567890".to_string(),
92+
RumSdkConfigType::RUM_SDK_CONFIG,
93+
));
94+
let mut configuration = datadog::Configuration::new();
95+
configuration.set_unstable_operation_enabled("v2.UpdateRumSdkConfig", true);
96+
let api = RUMRemoteConfigAPI::with_config(configuration);
97+
let resp = api
98+
.update_rum_sdk_config("config_id".to_string(), body)
99+
.await;
100+
if let Ok(value) = resp {
101+
println!("{:#?}", value);
102+
} else {
103+
println!("{:#?}", resp.unwrap_err());
104+
}
105+
}

src/datadog/configuration.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -720,6 +720,8 @@ impl Default for Configuration {
720720
("v2.get_pruned_trace_by_id".to_owned(), false),
721721
("v2.get_trace_by_id".to_owned(), false),
722722
("v2.get_asm_service_by_name".to_owned(), false),
723+
("v2.get_rum_sdk_config".to_owned(), false),
724+
("v2.update_rum_sdk_config".to_owned(), false),
723725
("v2.create_report_schedule".to_owned(), false),
724726
("v2.patch_report_schedule".to_owned(), false),
725727
("v2.delete_sourcemaps".to_owned(), false),

0 commit comments

Comments
 (0)