Skip to content

Commit 1c7b210

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit 0e9a488 of spec repo
1 parent 1b6bd64 commit 1c7b210

15 files changed

+610
-8
lines changed

.generated-info

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{
2-
"spec_repo_commit": "8001cbb",
3-
"generated": "2025-08-13 20:27:07.288"
2+
"spec_repo_commit": "0e9a488",
3+
"generated": "2025-08-15 17:29:26.342"
44
}

.generator/schemas/v2/openapi.yaml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32161,6 +32161,8 @@ components:
3216132161
format: int32
3216232162
maximum: 2147483647
3216332163
type: integer
32164+
product_scales:
32165+
$ref: '#/components/schemas/RUMProductScales'
3216432166
type:
3216532167
description: Type of the RUM application. Supported values are `browser`,
3216632168
`ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`,
@@ -32205,6 +32207,10 @@ components:
3220532207
description: Name of the RUM application.
3220632208
example: my_new_rum_application
3220732209
type: string
32210+
rum_event_processing_state:
32211+
$ref: '#/components/schemas/RUMEventProcessingState'
32212+
rum_product_analytics_retention_state:
32213+
$ref: '#/components/schemas/RUMProductAnalyticsRetentionState'
3220832214
type:
3220932215
description: Type of the RUM application. Supported values are `browser`,
3221032216
`ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`,
@@ -32279,6 +32285,8 @@ components:
3227932285
format: int32
3228032286
maximum: 2147483647
3228132287
type: integer
32288+
product_scales:
32289+
$ref: '#/components/schemas/RUMProductScales'
3228232290
type:
3228332291
description: Type of the RUM application. Supported values are `browser`,
3228432292
`ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`,
@@ -32350,6 +32358,10 @@ components:
3235032358
description: Name of the RUM application.
3235132359
example: updated_name_for_my_existing_rum_application
3235232360
type: string
32361+
rum_event_processing_state:
32362+
$ref: '#/components/schemas/RUMEventProcessingState'
32363+
rum_product_analytics_retention_state:
32364+
$ref: '#/components/schemas/RUMProductAnalyticsRetentionState'
3235332365
type:
3235432366
description: Type of the RUM application. Supported values are `browser`,
3235532367
`ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`,
@@ -32478,6 +32490,33 @@ components:
3247832490
format: date-time
3247932491
type: string
3248032492
type: object
32493+
RUMEventProcessingScale:
32494+
description: RUM event processing scale configuration.
32495+
properties:
32496+
last_modified_at:
32497+
description: Timestamp in milliseconds when this scale was last modified.
32498+
example: 1721897494108
32499+
format: int64
32500+
type: integer
32501+
state:
32502+
$ref: '#/components/schemas/RUMEventProcessingState'
32503+
type: object
32504+
RUMEventProcessingState:
32505+
description: Configures which RUM events are processed and stored for the application.
32506+
enum:
32507+
- ALL
32508+
- ERROR_FOCUSED_MODE
32509+
- NONE
32510+
example: ALL
32511+
type: string
32512+
x-enum-descriptions:
32513+
- Process and store all RUM events (sessions, views, actions, resources, errors)
32514+
- Process and store only error events and related critical events
32515+
- Disable RUM event processing - no events will be stored
32516+
x-enum-varnames:
32517+
- ALL
32518+
- ERROR_FOCUSED_MODE
32519+
- NONE
3248132520
RUMEventType:
3248232521
default: rum
3248332522
description: Type of the event.
@@ -32584,6 +32623,39 @@ components:
3258432623
RUMGroupByTotalString:
3258532624
description: A string to use as the key value for the total bucket.
3258632625
type: string
32626+
RUMProductAnalyticsRetentionScale:
32627+
description: Product analytics retention scale configuration.
32628+
properties:
32629+
last_modified_at:
32630+
description: Timestamp in milliseconds when this scale was last modified.
32631+
example: 1747922145974
32632+
format: int64
32633+
type: integer
32634+
state:
32635+
$ref: '#/components/schemas/RUMProductAnalyticsRetentionState'
32636+
type: object
32637+
RUMProductAnalyticsRetentionState:
32638+
description: Controls the retention policy for product analytics data derived
32639+
from RUM events.
32640+
enum:
32641+
- MAX
32642+
- NONE
32643+
example: MAX
32644+
type: string
32645+
x-enum-descriptions:
32646+
- Store product analytics data for the maximum available retention period
32647+
- Do not store product analytics data
32648+
x-enum-varnames:
32649+
- MAX
32650+
- NONE
32651+
RUMProductScales:
32652+
description: Product Scales configuration for the RUM application.
32653+
properties:
32654+
product_analytics_retention_scale:
32655+
$ref: '#/components/schemas/RUMProductAnalyticsRetentionScale'
32656+
rum_event_processing_scale:
32657+
$ref: '#/components/schemas/RUMEventProcessingScale'
32658+
type: object
3258732659
RUMQueryFilter:
3258832660
description: The search and filter query settings.
3258932661
properties:
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Create a new RUM application with Product Scales returns "OK" response
2+
3+
require "datadog_api_client"
4+
api_instance = DatadogAPIClient::V2::RUMAPI.new
5+
6+
body = DatadogAPIClient::V2::RUMApplicationCreateRequest.new({
7+
data: DatadogAPIClient::V2::RUMApplicationCreate.new({
8+
attributes: DatadogAPIClient::V2::RUMApplicationCreateAttributes.new({
9+
name: "test-rum-with-product-scales-5c67ebb32077e1d9",
10+
type: "browser",
11+
rum_event_processing_state: DatadogAPIClient::V2::RUMEventProcessingState::ERROR_FOCUSED_MODE,
12+
rum_product_analytics_retention_state: DatadogAPIClient::V2::RUMProductAnalyticsRetentionState::NONE,
13+
}),
14+
type: DatadogAPIClient::V2::RUMApplicationCreateType::RUM_APPLICATION_CREATE,
15+
}),
16+
})
17+
p api_instance.create_rum_application(body)
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Update a RUM application with Product Scales returns "OK" response
2+
3+
require "datadog_api_client"
4+
api_instance = DatadogAPIClient::V2::RUMAPI.new
5+
6+
# there is a valid "rum_application" in the system
7+
RUM_APPLICATION_DATA_ID = ENV["RUM_APPLICATION_DATA_ID"]
8+
9+
body = DatadogAPIClient::V2::RUMApplicationUpdateRequest.new({
10+
data: DatadogAPIClient::V2::RUMApplicationUpdate.new({
11+
attributes: DatadogAPIClient::V2::RUMApplicationUpdateAttributes.new({
12+
name: "updated_rum_with_product_scales",
13+
rum_event_processing_state: DatadogAPIClient::V2::RUMEventProcessingState::ALL,
14+
rum_product_analytics_retention_state: DatadogAPIClient::V2::RUMProductAnalyticsRetentionState::MAX,
15+
}),
16+
id: RUM_APPLICATION_DATA_ID,
17+
type: DatadogAPIClient::V2::RUMApplicationUpdateType::RUM_APPLICATION_UPDATE,
18+
}),
19+
})
20+
p api_instance.update_rum_application(RUM_APPLICATION_DATA_ID, body)

features/v2/rum.feature

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,19 @@ Feature: RUM
4343
And the response "data.attributes.type" is equal to "ios"
4444
And the response "data.attributes.name" is equal to "test-rum-{{ unique_hash }}"
4545

46+
@skip-validation @team:DataDog/rum-backend
47+
Scenario: Create a new RUM application with Product Scales returns "OK" response
48+
Given new "CreateRUMApplication" request
49+
And body with value {"data": {"attributes": {"name": "test-rum-with-product-scales-{{ unique_hash }}", "type": "browser", "rum_event_processing_state": "ERROR_FOCUSED_MODE", "rum_product_analytics_retention_state": "NONE"}, "type": "rum_application_create"}}
50+
When the request is sent
51+
Then the response status is 200 OK
52+
And the response "data.type" is equal to "rum_application"
53+
And the response "data.attributes.name" is equal to "test-rum-with-product-scales-{{ unique_hash }}"
54+
And the response "data.attributes.product_scales.rum_event_processing_scale.state" is equal to "ERROR_FOCUSED_MODE"
55+
And the response "data.attributes.product_scales.product_analytics_retention_scale.state" is equal to "NONE"
56+
And the response "data.attributes.product_scales.rum_event_processing_scale" has field "last_modified_at"
57+
And the response "data.attributes.product_scales.product_analytics_retention_scale" has field "last_modified_at"
58+
4659
@skip-validation @team:DataDog/rum-backend
4760
Scenario: Delete a RUM application returns "No Content" response
4861
Given there is a valid "rum_application" in the system
@@ -136,15 +149,15 @@ Feature: RUM
136149
Scenario: Update a RUM application returns "Bad Request" response
137150
Given new "UpdateRUMApplication" request
138151
And request contains "id" parameter from "REPLACE.ME"
139-
And body with value {"data": {"attributes": {"name": "updated_name_for_my_existing_rum_application", "type": "browser"}, "id": "abcd1234-0000-0000-abcd-1234abcd5678", "type": "rum_application_update"}}
152+
And body with value {"data": {"attributes": {"name": "updated_name_for_my_existing_rum_application", "rum_event_processing_state": "ALL", "rum_product_analytics_retention_state": "MAX", "type": "browser"}, "id": "abcd1234-0000-0000-abcd-1234abcd5678", "type": "rum_application_update"}}
140153
When the request is sent
141154
Then the response status is 400 Bad Request
142155

143156
@generated @skip @team:DataDog/rum-backend
144157
Scenario: Update a RUM application returns "Not Found" response
145158
Given new "UpdateRUMApplication" request
146159
And request contains "id" parameter from "REPLACE.ME"
147-
And body with value {"data": {"attributes": {"name": "updated_name_for_my_existing_rum_application", "type": "browser"}, "id": "abcd1234-0000-0000-abcd-1234abcd5678", "type": "rum_application_update"}}
160+
And body with value {"data": {"attributes": {"name": "updated_name_for_my_existing_rum_application", "rum_event_processing_state": "ALL", "rum_product_analytics_retention_state": "MAX", "type": "browser"}, "id": "abcd1234-0000-0000-abcd-1234abcd5678", "type": "rum_application_update"}}
148161
When the request is sent
149162
Then the response status is 404 Not Found
150163

@@ -169,3 +182,18 @@ Feature: RUM
169182
And body with value {"data": {"id": "this_id_will_not_match", "type": "rum_application_update"}}
170183
When the request is sent
171184
Then the response status is 422 Unprocessable Entity.
185+
186+
@skip-validation @team:DataDog/rum-backend
187+
Scenario: Update a RUM application with Product Scales returns "OK" response
188+
Given there is a valid "rum_application" in the system
189+
And new "UpdateRUMApplication" request
190+
And request contains "id" parameter from "rum_application.data.id"
191+
And body with value {"data": {"attributes": {"name": "updated_rum_with_product_scales", "rum_event_processing_state": "ALL", "rum_product_analytics_retention_state": "MAX"}, "id": "{{ rum_application.data.id }}", "type": "rum_application_update"}}
192+
When the request is sent
193+
Then the response status is 200 OK
194+
And the response "data.type" is equal to "rum_application"
195+
And the response "data.attributes.name" is equal to "updated_rum_with_product_scales"
196+
And the response "data.attributes.product_scales.rum_event_processing_scale.state" is equal to "ALL"
197+
And the response "data.attributes.product_scales.product_analytics_retention_scale.state" is equal to "MAX"
198+
And the response "data.attributes.product_scales.rum_event_processing_scale" has field "last_modified_at"
199+
And the response "data.attributes.product_scales.product_analytics_retention_scale" has field "last_modified_at"

lib/datadog_api_client/inflector.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3101,6 +3101,8 @@ def overrides
31013101
"v2.rum_compute_type" => "RUMComputeType",
31023102
"v2.rum_event" => "RUMEvent",
31033103
"v2.rum_event_attributes" => "RUMEventAttributes",
3104+
"v2.rum_event_processing_scale" => "RUMEventProcessingScale",
3105+
"v2.rum_event_processing_state" => "RUMEventProcessingState",
31043106
"v2.rum_events_response" => "RUMEventsResponse",
31053107
"v2.rum_event_type" => "RUMEventType",
31063108
"v2.rum_group_by" => "RUMGroupBy",
@@ -3130,6 +3132,9 @@ def overrides
31303132
"v2.rum_metric_update_compute" => "RumMetricUpdateCompute",
31313133
"v2.rum_metric_update_data" => "RumMetricUpdateData",
31323134
"v2.rum_metric_update_request" => "RumMetricUpdateRequest",
3135+
"v2.rum_product_analytics_retention_scale" => "RUMProductAnalyticsRetentionScale",
3136+
"v2.rum_product_analytics_retention_state" => "RUMProductAnalyticsRetentionState",
3137+
"v2.rum_product_scales" => "RUMProductScales",
31333138
"v2.rum_query_filter" => "RUMQueryFilter",
31343139
"v2.rum_query_options" => "RUMQueryOptions",
31353140
"v2.rum_query_page_options" => "RUMQueryPageOptions",

lib/datadog_api_client/v2/models/rum_application_attributes.rb

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,9 @@ class RUMApplicationAttributes
4545
# Org ID of the RUM application.
4646
attr_reader :org_id
4747

48+
# Product Scales configuration for the RUM application.
49+
attr_accessor :product_scales
50+
4851
# Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`.
4952
attr_reader :type
5053

@@ -68,6 +71,7 @@ def self.attribute_map
6871
:'is_active' => :'is_active',
6972
:'name' => :'name',
7073
:'org_id' => :'org_id',
74+
:'product_scales' => :'product_scales',
7175
:'type' => :'type',
7276
:'updated_at' => :'updated_at',
7377
:'updated_by_handle' => :'updated_by_handle'
@@ -86,6 +90,7 @@ def self.openapi_types
8690
:'is_active' => :'Boolean',
8791
:'name' => :'String',
8892
:'org_id' => :'Integer',
93+
:'product_scales' => :'RUMProductScales',
8994
:'type' => :'String',
9095
:'updated_at' => :'Integer',
9196
:'updated_by_handle' => :'String'
@@ -142,6 +147,10 @@ def initialize(attributes = {})
142147
self.org_id = attributes[:'org_id']
143148
end
144149

150+
if attributes.key?(:'product_scales')
151+
self.product_scales = attributes[:'product_scales']
152+
end
153+
145154
if attributes.key?(:'type')
146155
self.type = attributes[:'type']
147156
end
@@ -299,6 +308,7 @@ def ==(o)
299308
is_active == o.is_active &&
300309
name == o.name &&
301310
org_id == o.org_id &&
311+
product_scales == o.product_scales &&
302312
type == o.type &&
303313
updated_at == o.updated_at &&
304314
updated_by_handle == o.updated_by_handle &&
@@ -309,7 +319,7 @@ def ==(o)
309319
# @return [Integer] Hash code
310320
# @!visibility private
311321
def hash
312-
[application_id, client_token, created_at, created_by_handle, _hash, is_active, name, org_id, type, updated_at, updated_by_handle, additional_properties].hash
322+
[application_id, client_token, created_at, created_by_handle, _hash, is_active, name, org_id, product_scales, type, updated_at, updated_by_handle, additional_properties].hash
313323
end
314324
end
315325
end

lib/datadog_api_client/v2/models/rum_application_create_attributes.rb

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,12 @@ class RUMApplicationCreateAttributes
2424
# Name of the RUM application.
2525
attr_reader :name
2626

27+
# Configures which RUM events are processed and stored for the application.
28+
attr_accessor :rum_event_processing_state
29+
30+
# Controls the retention policy for product analytics data derived from RUM events.
31+
attr_accessor :rum_product_analytics_retention_state
32+
2733
# Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`.
2834
attr_accessor :type
2935

@@ -34,6 +40,8 @@ class RUMApplicationCreateAttributes
3440
def self.attribute_map
3541
{
3642
:'name' => :'name',
43+
:'rum_event_processing_state' => :'rum_event_processing_state',
44+
:'rum_product_analytics_retention_state' => :'rum_product_analytics_retention_state',
3745
:'type' => :'type'
3846
}
3947
end
@@ -43,6 +51,8 @@ def self.attribute_map
4351
def self.openapi_types
4452
{
4553
:'name' => :'String',
54+
:'rum_event_processing_state' => :'RUMEventProcessingState',
55+
:'rum_product_analytics_retention_state' => :'RUMProductAnalyticsRetentionState',
4656
:'type' => :'String'
4757
}
4858
end
@@ -69,6 +79,14 @@ def initialize(attributes = {})
6979
self.name = attributes[:'name']
7080
end
7181

82+
if attributes.key?(:'rum_event_processing_state')
83+
self.rum_event_processing_state = attributes[:'rum_event_processing_state']
84+
end
85+
86+
if attributes.key?(:'rum_product_analytics_retention_state')
87+
self.rum_product_analytics_retention_state = attributes[:'rum_product_analytics_retention_state']
88+
end
89+
7290
if attributes.key?(:'type')
7391
self.type = attributes[:'type']
7492
end
@@ -119,6 +137,8 @@ def ==(o)
119137
return true if self.equal?(o)
120138
self.class == o.class &&
121139
name == o.name &&
140+
rum_event_processing_state == o.rum_event_processing_state &&
141+
rum_product_analytics_retention_state == o.rum_product_analytics_retention_state &&
122142
type == o.type &&
123143
additional_properties == o.additional_properties
124144
end
@@ -127,7 +147,7 @@ def ==(o)
127147
# @return [Integer] Hash code
128148
# @!visibility private
129149
def hash
130-
[name, type, additional_properties].hash
150+
[name, rum_event_processing_state, rum_product_analytics_retention_state, type, additional_properties].hash
131151
end
132152
end
133153
end

0 commit comments

Comments
 (0)