From 214a09a0934b245b46861f4383c59398b6e88775 Mon Sep 17 00:00:00 2001 From: "ci.datadog-api-spec" Date: Wed, 23 Sep 2026 13:43:58 +0000 Subject: [PATCH] Regenerate client from commit 0b71f4d of spec repo --- .generator/schemas/v2/openapi.yaml | 18 ++++++++++++----- features/v2/cloud_cost_management.feature | 2 +- features/v2/rum_replay_heatmaps.feature | 8 ++++---- features/v2/rum_replay_playlists.feature | 20 +++++++++---------- features/v2/rum_replay_sessions.feature | 2 +- features/v2/rum_replay_viewership.feature | 8 ++++---- .../RecommendationsFilterRequestData.ts | 5 +++-- ...ommendationsFilterRequestDataAttributes.ts | 10 ++++++++++ .../RecommendationsFilterRequestSortItems.ts | 2 +- 9 files changed, 47 insertions(+), 28 deletions(-) diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index fdafbd6b9d51..64b8f6d90d61 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -91967,7 +91967,7 @@ components: attributes: scope: ccm sort: - - expression: potential_daily_savings.amount + - expression: "@potential_daily_savings" order: DESC id: "@resource_table:aws_ec2_instance" type: recommendations_filter @@ -91986,8 +91986,9 @@ components: $ref: "#/components/schemas/RecommendationsFilterRequestDataAttributes" id: description: |- - Filter expression applied to the recommendations. The server treats an omitted ID as `*` - and returns all recommendations. + Filter expression applied to the recommendations when `attributes.filter` is omitted. + When supplied, `attributes.filter` overrides this value, including when empty. If the + resulting filter is empty, it defaults to `*`. Scope, view, and pagination still apply. type: string type: $ref: "#/components/schemas/RecommendationsFilterRequestDataType" @@ -91997,6 +91998,13 @@ components: RecommendationsFilterRequestDataAttributes: description: Attributes used to filter and sort cost recommendations. properties: + filter: + description: |- + Filter expression applied to the recommendations. When supplied, this attribute overrides + `data.id`, including when empty. When omitted, `data.id` is used. If the resulting filter + is empty, it defaults to `*`. Scope, view, and pagination still apply. + example: "@resource_table:aws_ec2_instance" + type: string scope: $ref: "#/components/schemas/RecommendationsFilterRequestScope" sort: @@ -92032,7 +92040,7 @@ components: description: A single sort clause applied to the cost recommendations result set. properties: expression: - description: Field to sort by (for example, `potential_daily_savings.amount`). + description: Field to sort by (for example, `@potential_daily_savings`). type: string order: description: Sort direction, either `ASC` or `DESC`. @@ -146632,7 +146640,7 @@ paths: attributes: scope: ccm sort: - - expression: potential_daily_savings.amount + - expression: "@potential_daily_savings" order: DESC id: "@resource_table:aws_ec2_instance" type: recommendations_filter diff --git a/features/v2/cloud_cost_management.feature b/features/v2/cloud_cost_management.feature index f6298e74f222..be04d5c8e007 100644 --- a/features/v2/cloud_cost_management.feature +++ b/features/v2/cloud_cost_management.feature @@ -974,7 +974,7 @@ Feature: Cloud Cost Management Scenario: Search cost recommendations returns "OK" response Given operation "SearchCostRecommendations" enabled And new "SearchCostRecommendations" request - And body with value {"data": {"attributes": {"scope": "ccm", "sort": [{"expression": "potential_daily_savings.amount", "order": "DESC"}]}, "id": "@resource_table:aws_ec2_instance", "type": "recommendations_filter"}} + And body with value {"data": {"attributes": {"scope": "ccm", "sort": [{"expression": "@potential_daily_savings", "order": "DESC"}]}, "id": "@resource_table:aws_ec2_instance", "type": "recommendations_filter"}} When the request is sent Then the response status is 200 OK diff --git a/features/v2/rum_replay_heatmaps.feature b/features/v2/rum_replay_heatmaps.feature index 86e8b851ae28..69b8076d2a50 100644 --- a/features/v2/rum_replay_heatmaps.feature +++ b/features/v2/rum_replay_heatmaps.feature @@ -8,28 +8,28 @@ Feature: Rum Replay Heatmaps And a valid "appKeyAuth" key in the system And an instance of "RumReplayHeatmaps" API - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Create replay heatmap snapshot returns "Created" response Given new "CreateReplayHeatmapSnapshot" request And body with value {"data": {"attributes": {"application_id": "aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb", "device_type": "desktop", "event_id": "11111111-2222-3333-4444-555555555555", "is_device_type_selected_by_user": false, "snapshot_name": "My Snapshot", "start": 0, "view_name": "/home"}, "type": "snapshots"}} When the request is sent Then the response status is 201 Created - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Delete replay heatmap snapshot returns "No Content" response Given new "DeleteReplayHeatmapSnapshot" request And request contains "snapshot_id" parameter from "REPLACE.ME" When the request is sent Then the response status is 204 No Content - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: List replay heatmap snapshots returns "OK" response Given new "ListReplayHeatmapSnapshots" request And request contains "filter[view_name]" parameter from "REPLACE.ME" When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Update replay heatmap snapshot returns "OK" response Given new "UpdateReplayHeatmapSnapshot" request And request contains "snapshot_id" parameter from "REPLACE.ME" diff --git a/features/v2/rum_replay_playlists.feature b/features/v2/rum_replay_playlists.feature index 2fd317e4df2a..bd1a9f7ae8b9 100644 --- a/features/v2/rum_replay_playlists.feature +++ b/features/v2/rum_replay_playlists.feature @@ -8,7 +8,7 @@ Feature: Rum Replay Playlists And a valid "appKeyAuth" key in the system And an instance of "RumReplayPlaylists" API - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Add RUM replay session to playlist returns "Created" response Given new "AddRumReplaySessionToPlaylist" request And request contains "ts" parameter from "REPLACE.ME" @@ -17,7 +17,7 @@ Feature: Rum Replay Playlists When the request is sent Then the response status is 201 Created - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Add RUM replay session to playlist returns "OK" response Given new "AddRumReplaySessionToPlaylist" request And request contains "ts" parameter from "REPLACE.ME" @@ -26,7 +26,7 @@ Feature: Rum Replay Playlists When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Bulk remove RUM replay playlist sessions returns "No Content" response Given new "BulkRemoveRumReplayPlaylistSessions" request And request contains "playlist_id" parameter from "REPLACE.ME" @@ -34,41 +34,41 @@ Feature: Rum Replay Playlists When the request is sent Then the response status is 204 No Content - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Create RUM replay playlist returns "Created" response Given new "CreateRumReplayPlaylist" request And body with value {"data": {"attributes": {"created_by": {"handle": "john.doe@example.com", "id": "00000000-0000-0000-0000-000000000001", "uuid": "00000000-0000-0000-0000-000000000001"}, "name": "My Playlist"}, "type": "rum_replay_playlist"}} When the request is sent Then the response status is 201 Created - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Delete RUM replay playlist returns "No Content" response Given new "DeleteRumReplayPlaylist" request And request contains "playlist_id" parameter from "REPLACE.ME" When the request is sent Then the response status is 204 No Content - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Get RUM replay playlist returns "OK" response Given new "GetRumReplayPlaylist" request And request contains "playlist_id" parameter from "REPLACE.ME" When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: List RUM replay playlist sessions returns "OK" response Given new "ListRumReplayPlaylistSessions" request And request contains "playlist_id" parameter from "REPLACE.ME" When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: List RUM replay playlists returns "OK" response Given new "ListRumReplayPlaylists" request When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Remove RUM replay session from playlist returns "No Content" response Given new "RemoveRumReplaySessionFromPlaylist" request And request contains "playlist_id" parameter from "REPLACE.ME" @@ -76,7 +76,7 @@ Feature: Rum Replay Playlists When the request is sent Then the response status is 204 No Content - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Update RUM replay playlist returns "OK" response Given new "UpdateRumReplayPlaylist" request And request contains "playlist_id" parameter from "REPLACE.ME" diff --git a/features/v2/rum_replay_sessions.feature b/features/v2/rum_replay_sessions.feature index e5ce759c6b2f..3aab0ffe818a 100644 --- a/features/v2/rum_replay_sessions.feature +++ b/features/v2/rum_replay_sessions.feature @@ -3,7 +3,7 @@ Feature: Rum Replay Sessions Retrieve segments for RUM replay sessions. Access session replay data stored in event platform or blob storage. - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Get segments returns "OK" response Given a valid "apiKeyAuth" key in the system And a valid "appKeyAuth" key in the system diff --git a/features/v2/rum_replay_viewership.feature b/features/v2/rum_replay_viewership.feature index e339e1e5e454..22d5630a38ee 100644 --- a/features/v2/rum_replay_viewership.feature +++ b/features/v2/rum_replay_viewership.feature @@ -8,7 +8,7 @@ Feature: Rum Replay Viewership And a valid "appKeyAuth" key in the system And an instance of "RumReplayViewership" API - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Create RUM replay session watch returns "Created" response Given new "CreateRumReplaySessionWatch" request And request contains "session_id" parameter from "REPLACE.ME" @@ -16,21 +16,21 @@ Feature: Rum Replay Viewership When the request is sent Then the response status is 201 Created - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: Delete RUM replay session watch returns "No Content" response Given new "DeleteRumReplaySessionWatch" request And request contains "session_id" parameter from "REPLACE.ME" When the request is sent Then the response status is 204 No Content - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: List RUM replay session watchers returns "OK" response Given new "ListRumReplaySessionWatchers" request And request contains "session_id" parameter from "REPLACE.ME" When the request is sent Then the response status is 200 OK - @generated @skip @team:DataDog/session-replay-backend + @generated @skip @team:DataDog/session-replay Scenario: List RUM replay viewership history sessions returns "OK" response Given new "ListRumReplayViewershipHistorySessions" request When the request is sent diff --git a/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestData.ts b/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestData.ts index 4e875216beca..40780fe5c03f 100644 --- a/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestData.ts +++ b/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestData.ts @@ -13,8 +13,9 @@ export class RecommendationsFilterRequestData { */ "attributes"?: RecommendationsFilterRequestDataAttributes; /** - * Filter expression applied to the recommendations. The server treats an omitted ID as `*` - * and returns all recommendations. + * Filter expression applied to the recommendations when `attributes.filter` is omitted. + * When supplied, `attributes.filter` overrides this value, including when empty. If the + * resulting filter is empty, it defaults to `*`. Scope, view, and pagination still apply. */ "id"?: string; /** diff --git a/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestDataAttributes.ts b/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestDataAttributes.ts index 7db6c1952001..de6f3c89da76 100644 --- a/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestDataAttributes.ts +++ b/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestDataAttributes.ts @@ -7,6 +7,12 @@ import { RecommendationsFilterRequestSortItems } from "./RecommendationsFilterRe * Attributes used to filter and sort cost recommendations. */ export class RecommendationsFilterRequestDataAttributes { + /** + * Filter expression applied to the recommendations. When supplied, this attribute overrides + * `data.id`, including when empty. When omitted, `data.id` is used. If the resulting filter + * is empty, it defaults to `*`. Scope, view, and pagination still apply. + */ + "filter"?: string; /** * Recommendations scope. Defaults to `ccm`; use `experiment` for experimental recommendations or `*` for both. */ @@ -34,6 +40,10 @@ export class RecommendationsFilterRequestDataAttributes { * @ignore */ static readonly attributeTypeMap: AttributeTypeMap = { + filter: { + baseName: "filter", + type: "string", + }, scope: { baseName: "scope", type: "RecommendationsFilterRequestScope", diff --git a/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestSortItems.ts b/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestSortItems.ts index ac1c120e07f8..2369a84d0184 100644 --- a/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestSortItems.ts +++ b/services/cloud_cost_management/src/v2/models/RecommendationsFilterRequestSortItems.ts @@ -5,7 +5,7 @@ import { AttributeTypeMap } from "@datadog/datadog-api-client"; */ export class RecommendationsFilterRequestSortItems { /** - * Field to sort by (for example, `potential_daily_savings.amount`). + * Field to sort by (for example, `@potential_daily_savings`). */ "expression"?: string; /**