diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml index 4b6dc560f32..838214385bb 100644 --- a/.generator/schemas/v2/openapi.yaml +++ b/.generator/schemas/v2/openapi.yaml @@ -347,6 +347,14 @@ components: required: true schema: type: string + DashboardIDPathParameter: + description: The ID of the dashboard. + example: "abc-def-ghi" + in: path + name: dashboard_id + required: true + schema: + type: string DatasetID: description: The ID of a defined dataset. example: "0879ce27-29a1-481f-a12e-bc2a48ec9ae1" @@ -1151,6 +1159,14 @@ components: items: $ref: "#/components/schemas/SearchIssuesIncludeQueryParameterItem" type: array + SecureEmbedTokenPathParameter: + description: The share token identifying the secure embed. + example: "s3cur3t0k3n-abcdef123456" + in: path + name: token + required: true + schema: + type: string SecurityFilterID: description: The ID of the security filter. in: path @@ -46179,7 +46195,7 @@ components: $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleMatchRule" type: array source: - description: The value of the source field in log events to be processed by the Grok rules. + description: The name of the field in the log event to apply the Grok rules to. example: "message" type: string support_rules: @@ -57993,6 +58009,469 @@ components: type: string x-enum-varnames: - SECRET_RULE + SecureEmbedCreateRequest: + description: Request to create a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedCreateRequestData" + required: + - data + type: object + SecureEmbedCreateRequestAttributes: + description: Attributes for creating a secure embed shared dashboard. + properties: + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Whether viewers can change the time range. + example: true + type: boolean + selectable_template_vars: + description: Template variables viewers can modify. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Display title for the shared dashboard. + example: "Q1 Metrics Dashboard" + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + required: + - status + - title + - global_time_selectable + - selectable_template_vars + - viewing_preferences + - global_time + type: object + SecureEmbedCreateRequestData: + description: Data object for creating a secure embed. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedCreateRequestAttributes" + type: + $ref: "#/components/schemas/SecureEmbedRequestType" + required: + - type + - attributes + type: object + SecureEmbedCreateResponse: + description: Response for creating a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedCreateResponseData" + required: + - data + type: object + SecureEmbedCreateResponseAttributes: + description: Attributes of a newly created secure embed shared dashboard. + properties: + created_at: + description: Creation timestamp. + example: "2026-03-11T18:30:00.000000" + readOnly: true + type: string + credential: + description: >- + The secret credential used for HMAC signing. Returned only on creation. Store securely — it cannot be retrieved again. + example: "A1b2C3d4E5f6G7h8I9j0K1l2M3n4O5p6Q7r8S9t0U1v2" + readOnly: true + type: string + dashboard_id: + description: The source dashboard ID. + example: "abc-def-ghi" + readOnly: true + type: string + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Whether time range is viewer-selectable. + example: true + type: boolean + id: + description: Internal share ID. + example: "12345" + readOnly: true + type: string + selectable_template_vars: + description: Template variables with their configuration. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + share_type: + $ref: "#/components/schemas/SecureEmbedShareType" + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Display title. + example: "Q1 Metrics Dashboard" + type: string + token: + description: Public share token. + example: "s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + url: + description: CDN URL for the shared dashboard. + example: "https://p.datadoghq.com/sb/secure-embed/s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + type: object + SecureEmbedCreateResponseData: + description: Data object for a secure embed create response. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedCreateResponseAttributes" + id: + description: Internal share ID. + example: "12345" + type: string + type: + $ref: "#/components/schemas/SecureEmbedCreateResponseType" + required: + - type + - id + - attributes + type: object + SecureEmbedCreateResponseType: + description: Resource type for secure embed create responses. + enum: + - secure_embed_create_response + example: "secure_embed_create_response" + type: string + x-enum-varnames: + - SECURE_EMBED_CREATE_RESPONSE + SecureEmbedGetResponse: + description: Response for getting a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedGetResponseData" + required: + - data + type: object + SecureEmbedGetResponseAttributes: + description: Attributes of an existing secure embed shared dashboard. + properties: + created_at: + description: Creation timestamp. + example: "2026-03-11T18:30:00.000000" + readOnly: true + type: string + credential_suffix: + description: Last 4 characters of the credential. Defaults to `0000` if unavailable. + example: "ab3f" + readOnly: true + type: string + dashboard_id: + description: The source dashboard ID. + example: "abc-def-ghi" + readOnly: true + type: string + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Whether time range is viewer-selectable. + example: true + type: boolean + id: + description: Internal share ID. + example: "12345" + readOnly: true + type: string + selectable_template_vars: + description: Template variables with their configuration. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + share_type: + $ref: "#/components/schemas/SecureEmbedShareType" + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Display title. + example: "Q1 Metrics Dashboard" + type: string + token: + description: Public share token. + example: "s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + url: + description: CDN URL for the shared dashboard. + example: "https://p.datadoghq.com/sb/secure-embed/s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + type: object + SecureEmbedGetResponseData: + description: Data object for a secure embed get response. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedGetResponseAttributes" + id: + description: Internal share ID. + example: "12345" + type: string + type: + $ref: "#/components/schemas/SecureEmbedGetResponseType" + required: + - type + - id + - attributes + type: object + SecureEmbedGetResponseType: + description: Resource type for secure embed get responses. + enum: + - secure_embed_get_response + example: "secure_embed_get_response" + type: string + x-enum-varnames: + - SECURE_EMBED_GET_RESPONSE + SecureEmbedGlobalTime: + description: Default time range configuration for the secure embed. + properties: + live_span: + $ref: "#/components/schemas/SecureEmbedGlobalTimeLiveSpan" + type: object + SecureEmbedGlobalTimeLiveSpan: + description: Dashboard global time live_span selection. + enum: + - 15m + - 1h + - 4h + - 1d + - 2d + - 1w + - 1mo + - 3mo + example: "1h" + type: string + x-enum-varnames: + - PAST_FIFTEEN_MINUTES + - PAST_ONE_HOUR + - PAST_FOUR_HOURS + - PAST_ONE_DAY + - PAST_TWO_DAYS + - PAST_ONE_WEEK + - PAST_ONE_MONTH + - PAST_THREE_MONTHS + SecureEmbedRequestType: + description: Resource type for secure embed create requests. + enum: + - secure_embed_request + example: "secure_embed_request" + type: string + x-enum-varnames: + - SECURE_EMBED_REQUEST + SecureEmbedSelectableTemplateVariable: + description: A template variable that viewers can modify on the secure embed shared dashboard. + properties: + default_values: + description: Default selected values for the variable. + example: ["1"] + items: + description: A default value for the template variable. + type: string + type: array + name: + description: Name of the template variable. Usually matches the prefix unless you want a different display name. + example: "org_id" + type: string + prefix: + description: Tag prefix for the variable (e.g., `environment`, `service`). + example: "org_id" + type: string + visible_tags: + description: Restrict which tag values are visible to the viewer. + example: ["1"] + items: + description: A visible tag value for the template variable. + type: string + type: array + type: object + SecureEmbedShareType: + description: The type of share. Always `secure_embed`. + enum: + - secure_embed + example: "secure_embed" + type: string + x-enum-varnames: + - SECURE_EMBED + SecureEmbedStatus: + description: The status of the secure embed share. Active means the shared dashboard is available. Paused means it is not. + enum: + - active + - paused + example: "active" + type: string + x-enum-varnames: + - ACTIVE + - PAUSED + SecureEmbedUpdateRequest: + description: Request to update a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedUpdateRequestData" + required: + - data + type: object + SecureEmbedUpdateRequestAttributes: + description: Attributes for updating a secure embed shared dashboard. All fields are optional. + properties: + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Updated time selectability. + example: true + type: boolean + selectable_template_vars: + description: Updated template variables. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Updated title. + example: "Q1 Metrics Dashboard (Updated)" + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + type: object + SecureEmbedUpdateRequestData: + description: Data object for updating a secure embed. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedUpdateRequestAttributes" + type: + $ref: "#/components/schemas/SecureEmbedUpdateRequestType" + required: + - type + - attributes + type: object + SecureEmbedUpdateRequestType: + description: Resource type for secure embed update requests. + enum: + - secure_embed_update_request + example: "secure_embed_update_request" + type: string + x-enum-varnames: + - SECURE_EMBED_UPDATE_REQUEST + SecureEmbedUpdateResponse: + description: Response for updating a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedUpdateResponseData" + required: + - data + type: object + SecureEmbedUpdateResponseAttributes: + description: Attributes of an updated secure embed shared dashboard. + properties: + created_at: + description: Creation timestamp. + example: "2026-03-11T18:30:00.000000" + readOnly: true + type: string + credential_suffix: + description: Last 4 characters of the credential. Defaults to `0000` if unavailable. + example: "ab3f" + readOnly: true + type: string + dashboard_id: + description: The source dashboard ID. + example: "abc-def-ghi" + readOnly: true + type: string + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Whether time range is viewer-selectable. + example: true + type: boolean + id: + description: Internal share ID. + example: "12345" + readOnly: true + type: string + selectable_template_vars: + description: Template variables with their configuration. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + share_type: + $ref: "#/components/schemas/SecureEmbedShareType" + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Display title. + example: "Q1 Metrics Dashboard (Updated)" + type: string + token: + description: Public share token. + example: "s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + url: + description: CDN URL for the shared dashboard. + example: "https://p.datadoghq.com/sb/secure-embed/s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + type: object + SecureEmbedUpdateResponseData: + description: Data object for a secure embed update response. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedUpdateResponseAttributes" + id: + description: Internal share ID. + example: "12345" + type: string + type: + $ref: "#/components/schemas/SecureEmbedUpdateResponseType" + required: + - type + - id + - attributes + type: object + SecureEmbedUpdateResponseType: + description: Resource type for secure embed update responses. + enum: + - secure_embed_update_response + example: "secure_embed_update_response" + type: string + x-enum-varnames: + - SECURE_EMBED_UPDATE_RESPONSE + SecureEmbedViewingPreferences: + description: Display settings for the secure embed shared dashboard. + properties: + high_density: + description: Whether widgets are displayed in high density mode. + example: false + type: boolean + theme: + $ref: "#/components/schemas/SecureEmbedViewingPreferencesTheme" + type: object + SecureEmbedViewingPreferencesTheme: + description: The theme of the shared dashboard view. `system` follows the viewer's system default. + enum: + - system + - light + - dark + example: "system" + type: string + x-enum-varnames: + - SYSTEM + - LIGHT + - DARK SecurityEntityConfigRisks: description: Configuration risks associated with the entity properties: @@ -84245,6 +84724,218 @@ paths: tags: - Dashboard Lists x-codegen-request-body-name: body + /api/v2/dashboard/{dashboard_id}/shared/secure-embed: + post: + description: >- + Create a secure embed share for a dashboard. The response includes a one-time `credential` used for HMAC-SHA256 signing. Store it securely — it cannot be retrieved again. + operationId: CreateDashboardSecureEmbed + parameters: + - $ref: "#/components/parameters/DashboardIDPathParameter" + requestBody: + content: + application/json: + examples: + json-request-body: + value: + data: + attributes: + global_time: + live_span: "1h" + global_time_selectable: true + selectable_template_vars: + - default_values: ["1"] + name: "org_id" + prefix: "org_id" + visible_tags: ["1"] + status: active + title: "Q1 Metrics Dashboard" + viewing_preferences: + high_density: false + theme: "system" + type: secure_embed_request + schema: + $ref: "#/components/schemas/SecureEmbedCreateRequest" + description: Secure embed creation request body. + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SecureEmbedCreateResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Dashboard Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict — max 1000 share URLs per dashboard exceeded + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_embed_share + summary: Create a secure embed for a dashboard + tags: + - Dashboard Secure Embed + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_embed_share + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token}: + delete: + description: >- + Delete a secure embed share for a dashboard. + operationId: DeleteDashboardSecureEmbed + parameters: + - $ref: "#/components/parameters/DashboardIDPathParameter" + - $ref: "#/components/parameters/SecureEmbedTokenPathParameter" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_embed_share + summary: Delete a secure embed for a dashboard + tags: + - Dashboard Secure Embed + "x-permission": + operator: OR + permissions: + - dashboards_embed_share + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: >- + Retrieve an existing secure embed configuration for a dashboard. + operationId: GetDashboardSecureEmbed + parameters: + - $ref: "#/components/parameters/DashboardIDPathParameter" + - $ref: "#/components/parameters/SecureEmbedTokenPathParameter" + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SecureEmbedGetResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a secure embed for a dashboard + tags: + - Dashboard Secure Embed + "x-permission": + operator: OR + permissions: + - dashboards_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: >- + Partially update a secure embed configuration. All fields are optional (PATCH semantics). + operationId: UpdateDashboardSecureEmbed + parameters: + - $ref: "#/components/parameters/DashboardIDPathParameter" + - $ref: "#/components/parameters/SecureEmbedTokenPathParameter" + requestBody: + content: + application/json: + examples: + json-request-body: + value: + data: + attributes: + status: active + title: "Q1 Metrics Dashboard (Updated)" + type: secure_embed_update_request + schema: + $ref: "#/components/schemas/SecureEmbedUpdateRequest" + description: Secure embed update request body. + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/SecureEmbedUpdateResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_embed_share + summary: Update a secure embed for a dashboard + tags: + - Dashboard Secure Embed + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_embed_share + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/datasets: get: description: Get all datasets that have been configured for an organization. @@ -116463,6 +117154,11 @@ tags: organize, find, and share all of your dashboards with your team and organization. name: Dashboard Lists + - description: >- + Manage securely embedded Datadog dashboards. Secure embeds use HMAC-SHA256 signed sessions for authentication, enabling customers to embed dashboards in their own applications with server-side auth control. Unlike public dashboards (open URL) or invite dashboards (email-based access), secure embeds provide programmatic access control. + + **Requirements:** - Org setting: SharedDashboards > Embed sharing must be enabled. - AuthN: Datadog API key and application key. - Read operations require `dashboards_read` permission. - Write operations require `dashboards_embed_share` permission. + name: Dashboard Secure Embed - description: |- The Data Deletion API allows the user to target and delete data from the allowed products. It's currently enabled for Logs and RUM and depends on `logs_delete_data` and `rum_delete_data` permissions respectively. name: Data Deletion diff --git a/examples/v2/dashboard-secure-embed/CreateDashboardSecureEmbed.java b/examples/v2/dashboard-secure-embed/CreateDashboardSecureEmbed.java new file mode 100644 index 00000000000..50268513458 --- /dev/null +++ b/examples/v2/dashboard-secure-embed/CreateDashboardSecureEmbed.java @@ -0,0 +1,63 @@ +// Create a secure embed for a dashboard returns "OK" response + +import com.datadog.api.client.ApiClient; +import com.datadog.api.client.ApiException; +import com.datadog.api.client.v2.api.DashboardSecureEmbedApi; +import com.datadog.api.client.v2.model.SecureEmbedCreateRequest; +import com.datadog.api.client.v2.model.SecureEmbedCreateRequestAttributes; +import com.datadog.api.client.v2.model.SecureEmbedCreateRequestData; +import com.datadog.api.client.v2.model.SecureEmbedCreateResponse; +import com.datadog.api.client.v2.model.SecureEmbedGlobalTime; +import com.datadog.api.client.v2.model.SecureEmbedGlobalTimeLiveSpan; +import com.datadog.api.client.v2.model.SecureEmbedRequestType; +import com.datadog.api.client.v2.model.SecureEmbedSelectableTemplateVariable; +import com.datadog.api.client.v2.model.SecureEmbedStatus; +import com.datadog.api.client.v2.model.SecureEmbedViewingPreferences; +import com.datadog.api.client.v2.model.SecureEmbedViewingPreferencesTheme; +import java.util.Collections; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = ApiClient.getDefaultApiClient(); + defaultClient.setUnstableOperationEnabled("v2.createDashboardSecureEmbed", true); + DashboardSecureEmbedApi apiInstance = new DashboardSecureEmbedApi(defaultClient); + + SecureEmbedCreateRequest body = + new SecureEmbedCreateRequest() + .data( + new SecureEmbedCreateRequestData() + .attributes( + new SecureEmbedCreateRequestAttributes() + .globalTime( + new SecureEmbedGlobalTime() + .liveSpan(SecureEmbedGlobalTimeLiveSpan.PAST_ONE_HOUR)) + .globalTimeSelectable(true) + .selectableTemplateVars( + Collections.singletonList( + new SecureEmbedSelectableTemplateVariable() + .defaultValues(Collections.singletonList("1")) + .name("org_id") + .prefix("org_id") + .visibleTags(Collections.singletonList("1")))) + .status(SecureEmbedStatus.ACTIVE) + .title("Q1 Metrics Dashboard") + .viewingPreferences( + new SecureEmbedViewingPreferences() + .highDensity(false) + .theme(SecureEmbedViewingPreferencesTheme.SYSTEM))) + .type(SecureEmbedRequestType.SECURE_EMBED_REQUEST)); + + try { + SecureEmbedCreateResponse result = + apiInstance.createDashboardSecureEmbed("abc-def-ghi", body); + System.out.println(result); + } catch (ApiException e) { + System.err.println( + "Exception when calling DashboardSecureEmbedApi#createDashboardSecureEmbed"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} diff --git a/examples/v2/dashboard-secure-embed/DeleteDashboardSecureEmbed.java b/examples/v2/dashboard-secure-embed/DeleteDashboardSecureEmbed.java new file mode 100644 index 00000000000..36854c43b31 --- /dev/null +++ b/examples/v2/dashboard-secure-embed/DeleteDashboardSecureEmbed.java @@ -0,0 +1,24 @@ +// Delete a secure embed for a dashboard returns "No Content" response + +import com.datadog.api.client.ApiClient; +import com.datadog.api.client.ApiException; +import com.datadog.api.client.v2.api.DashboardSecureEmbedApi; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = ApiClient.getDefaultApiClient(); + defaultClient.setUnstableOperationEnabled("v2.deleteDashboardSecureEmbed", true); + DashboardSecureEmbedApi apiInstance = new DashboardSecureEmbedApi(defaultClient); + + try { + apiInstance.deleteDashboardSecureEmbed("abc-def-ghi", "s3cur3t0k3n-abcdef123456"); + } catch (ApiException e) { + System.err.println( + "Exception when calling DashboardSecureEmbedApi#deleteDashboardSecureEmbed"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} diff --git a/examples/v2/dashboard-secure-embed/GetDashboardSecureEmbed.java b/examples/v2/dashboard-secure-embed/GetDashboardSecureEmbed.java new file mode 100644 index 00000000000..3921f7a7b68 --- /dev/null +++ b/examples/v2/dashboard-secure-embed/GetDashboardSecureEmbed.java @@ -0,0 +1,26 @@ +// Get a secure embed for a dashboard returns "OK" response + +import com.datadog.api.client.ApiClient; +import com.datadog.api.client.ApiException; +import com.datadog.api.client.v2.api.DashboardSecureEmbedApi; +import com.datadog.api.client.v2.model.SecureEmbedGetResponse; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = ApiClient.getDefaultApiClient(); + defaultClient.setUnstableOperationEnabled("v2.getDashboardSecureEmbed", true); + DashboardSecureEmbedApi apiInstance = new DashboardSecureEmbedApi(defaultClient); + + try { + SecureEmbedGetResponse result = + apiInstance.getDashboardSecureEmbed("abc-def-ghi", "s3cur3t0k3n-abcdef123456"); + System.out.println(result); + } catch (ApiException e) { + System.err.println("Exception when calling DashboardSecureEmbedApi#getDashboardSecureEmbed"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} diff --git a/examples/v2/dashboard-secure-embed/UpdateDashboardSecureEmbed.java b/examples/v2/dashboard-secure-embed/UpdateDashboardSecureEmbed.java new file mode 100644 index 00000000000..87a80fd1479 --- /dev/null +++ b/examples/v2/dashboard-secure-embed/UpdateDashboardSecureEmbed.java @@ -0,0 +1,63 @@ +// Update a secure embed for a dashboard returns "OK" response + +import com.datadog.api.client.ApiClient; +import com.datadog.api.client.ApiException; +import com.datadog.api.client.v2.api.DashboardSecureEmbedApi; +import com.datadog.api.client.v2.model.SecureEmbedGlobalTime; +import com.datadog.api.client.v2.model.SecureEmbedGlobalTimeLiveSpan; +import com.datadog.api.client.v2.model.SecureEmbedSelectableTemplateVariable; +import com.datadog.api.client.v2.model.SecureEmbedStatus; +import com.datadog.api.client.v2.model.SecureEmbedUpdateRequest; +import com.datadog.api.client.v2.model.SecureEmbedUpdateRequestAttributes; +import com.datadog.api.client.v2.model.SecureEmbedUpdateRequestData; +import com.datadog.api.client.v2.model.SecureEmbedUpdateRequestType; +import com.datadog.api.client.v2.model.SecureEmbedUpdateResponse; +import com.datadog.api.client.v2.model.SecureEmbedViewingPreferences; +import com.datadog.api.client.v2.model.SecureEmbedViewingPreferencesTheme; +import java.util.Collections; + +public class Example { + public static void main(String[] args) { + ApiClient defaultClient = ApiClient.getDefaultApiClient(); + defaultClient.setUnstableOperationEnabled("v2.updateDashboardSecureEmbed", true); + DashboardSecureEmbedApi apiInstance = new DashboardSecureEmbedApi(defaultClient); + + SecureEmbedUpdateRequest body = + new SecureEmbedUpdateRequest() + .data( + new SecureEmbedUpdateRequestData() + .attributes( + new SecureEmbedUpdateRequestAttributes() + .globalTime( + new SecureEmbedGlobalTime() + .liveSpan(SecureEmbedGlobalTimeLiveSpan.PAST_ONE_HOUR)) + .globalTimeSelectable(true) + .selectableTemplateVars( + Collections.singletonList( + new SecureEmbedSelectableTemplateVariable() + .defaultValues(Collections.singletonList("1")) + .name("org_id") + .prefix("org_id") + .visibleTags(Collections.singletonList("1")))) + .status(SecureEmbedStatus.ACTIVE) + .title("Q1 Metrics Dashboard (Updated)") + .viewingPreferences( + new SecureEmbedViewingPreferences() + .highDensity(false) + .theme(SecureEmbedViewingPreferencesTheme.SYSTEM))) + .type(SecureEmbedUpdateRequestType.SECURE_EMBED_UPDATE_REQUEST)); + + try { + SecureEmbedUpdateResponse result = + apiInstance.updateDashboardSecureEmbed("abc-def-ghi", "s3cur3t0k3n-abcdef123456", body); + System.out.println(result); + } catch (ApiException e) { + System.err.println( + "Exception when calling DashboardSecureEmbedApi#updateDashboardSecureEmbed"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Reason: " + e.getResponseBody()); + System.err.println("Response headers: " + e.getResponseHeaders()); + e.printStackTrace(); + } + } +} diff --git a/src/main/java/com/datadog/api/client/ApiClient.java b/src/main/java/com/datadog/api/client/ApiClient.java index 5effe4c2a03..dd88d377355 100644 --- a/src/main/java/com/datadog/api/client/ApiClient.java +++ b/src/main/java/com/datadog/api/client/ApiClient.java @@ -815,6 +815,10 @@ public class ApiClient { put("v2.searchSecurityMonitoringHistsignals", false); put("v2.getCodeCoverageBranchSummary", false); put("v2.getCodeCoverageCommitSummary", false); + put("v2.createDashboardSecureEmbed", false); + put("v2.deleteDashboardSecureEmbed", false); + put("v2.getDashboardSecureEmbed", false); + put("v2.updateDashboardSecureEmbed", false); put("v2.createDataset", false); put("v2.deleteDataset", false); put("v2.getAllDatasets", false); diff --git a/src/main/java/com/datadog/api/client/v2/api/DashboardSecureEmbedApi.java b/src/main/java/com/datadog/api/client/v2/api/DashboardSecureEmbedApi.java new file mode 100644 index 00000000000..d8de44d4efd --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/api/DashboardSecureEmbedApi.java @@ -0,0 +1,788 @@ +package com.datadog.api.client.v2.api; + +import com.datadog.api.client.ApiClient; +import com.datadog.api.client.ApiException; +import com.datadog.api.client.ApiResponse; +import com.datadog.api.client.Pair; +import com.datadog.api.client.v2.model.SecureEmbedCreateRequest; +import com.datadog.api.client.v2.model.SecureEmbedCreateResponse; +import com.datadog.api.client.v2.model.SecureEmbedGetResponse; +import com.datadog.api.client.v2.model.SecureEmbedUpdateRequest; +import com.datadog.api.client.v2.model.SecureEmbedUpdateResponse; +import jakarta.ws.rs.client.Invocation; +import jakarta.ws.rs.core.GenericType; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.CompletableFuture; + +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class DashboardSecureEmbedApi { + private ApiClient apiClient; + + public DashboardSecureEmbedApi() { + this(ApiClient.getDefaultApiClient()); + } + + public DashboardSecureEmbedApi(ApiClient apiClient) { + this.apiClient = apiClient; + } + + /** + * Get the API client. + * + * @return API client + */ + public ApiClient getApiClient() { + return apiClient; + } + + /** + * Set the API client. + * + * @param apiClient an instance of API client + */ + public void setApiClient(ApiClient apiClient) { + this.apiClient = apiClient; + } + + /** + * Create a secure embed for a dashboard. + * + *

See {@link #createDashboardSecureEmbedWithHttpInfo}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param body Secure embed creation request body. (required) + * @return SecureEmbedCreateResponse + * @throws ApiException if fails to make API call + */ + public SecureEmbedCreateResponse createDashboardSecureEmbed( + String dashboardId, SecureEmbedCreateRequest body) throws ApiException { + return createDashboardSecureEmbedWithHttpInfo(dashboardId, body).getData(); + } + + /** + * Create a secure embed for a dashboard. + * + *

See {@link #createDashboardSecureEmbedWithHttpInfoAsync}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param body Secure embed creation request body. (required) + * @return CompletableFuture<SecureEmbedCreateResponse> + */ + public CompletableFuture createDashboardSecureEmbedAsync( + String dashboardId, SecureEmbedCreateRequest body) { + return createDashboardSecureEmbedWithHttpInfoAsync(dashboardId, body) + .thenApply( + response -> { + return response.getData(); + }); + } + + /** + * Create a secure embed share for a dashboard. The response includes a one-time credential + * used for HMAC-SHA256 signing. Store it securely — it cannot be retrieved again. + * + * @param dashboardId The ID of the dashboard. (required) + * @param body Secure embed creation request body. (required) + * @return ApiResponse<SecureEmbedCreateResponse> + * @throws ApiException if fails to make API call + * @http.response.details + * + * + * + * + * + * + * + * + *
Response details
Status Code Description Response Headers
200 OK -
403 Forbidden -
404 Dashboard Not Found -
409 Conflict — max 1000 share URLs per dashboard exceeded -
429 Too many requests -
+ */ + public ApiResponse createDashboardSecureEmbedWithHttpInfo( + String dashboardId, SecureEmbedCreateRequest body) throws ApiException { + // Check if unstable operation is enabled + String operationId = "createDashboardSecureEmbed"; + if (apiClient.isUnstableOperationEnabled("v2." + operationId)) { + apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId)); + } else { + throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)); + } + Object localVarPostBody = body; + + // verify the required parameter 'dashboardId' is set + if (dashboardId == null) { + throw new ApiException( + 400, + "Missing the required parameter 'dashboardId' when calling createDashboardSecureEmbed"); + } + + // verify the required parameter 'body' is set + if (body == null) { + throw new ApiException( + 400, "Missing the required parameter 'body' when calling createDashboardSecureEmbed"); + } + // create path and map variables + String localVarPath = + "/api/v2/dashboard/{dashboard_id}/shared/secure-embed" + .replaceAll( + "\\{" + "dashboard_id" + "\\}", apiClient.escapeString(dashboardId.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder = + apiClient.createBuilder( + "v2.DashboardSecureEmbedApi.createDashboardSecureEmbed", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"application/json"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + return apiClient.invokeAPI( + "POST", + builder, + localVarHeaderParams, + new String[] {"application/json"}, + localVarPostBody, + new HashMap(), + false, + new GenericType() {}); + } + + /** + * Create a secure embed for a dashboard. + * + *

See {@link #createDashboardSecureEmbedWithHttpInfo}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param body Secure embed creation request body. (required) + * @return CompletableFuture<ApiResponse<SecureEmbedCreateResponse>> + */ + public CompletableFuture> + createDashboardSecureEmbedWithHttpInfoAsync( + String dashboardId, SecureEmbedCreateRequest body) { + // Check if unstable operation is enabled + String operationId = "createDashboardSecureEmbed"; + if (apiClient.isUnstableOperationEnabled("v2." + operationId)) { + apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId)); + } else { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId))); + return result; + } + Object localVarPostBody = body; + + // verify the required parameter 'dashboardId' is set + if (dashboardId == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'dashboardId' when calling" + + " createDashboardSecureEmbed")); + return result; + } + + // verify the required parameter 'body' is set + if (body == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'body' when calling createDashboardSecureEmbed")); + return result; + } + // create path and map variables + String localVarPath = + "/api/v2/dashboard/{dashboard_id}/shared/secure-embed" + .replaceAll( + "\\{" + "dashboard_id" + "\\}", apiClient.escapeString(dashboardId.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder; + try { + builder = + apiClient.createBuilder( + "v2.DashboardSecureEmbedApi.createDashboardSecureEmbed", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"application/json"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + } catch (ApiException ex) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally(ex); + return result; + } + return apiClient.invokeAPIAsync( + "POST", + builder, + localVarHeaderParams, + new String[] {"application/json"}, + localVarPostBody, + new HashMap(), + false, + new GenericType() {}); + } + + /** + * Delete a secure embed for a dashboard. + * + *

See {@link #deleteDashboardSecureEmbedWithHttpInfo}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @throws ApiException if fails to make API call + */ + public void deleteDashboardSecureEmbed(String dashboardId, String token) throws ApiException { + deleteDashboardSecureEmbedWithHttpInfo(dashboardId, token); + } + + /** + * Delete a secure embed for a dashboard. + * + *

See {@link #deleteDashboardSecureEmbedWithHttpInfoAsync}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @return CompletableFuture + */ + public CompletableFuture deleteDashboardSecureEmbedAsync(String dashboardId, String token) { + return deleteDashboardSecureEmbedWithHttpInfoAsync(dashboardId, token) + .thenApply( + response -> { + return response.getData(); + }); + } + + /** + * Delete a secure embed share for a dashboard. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @return ApiResponse<Void> + * @throws ApiException if fails to make API call + * @http.response.details + * + * + * + * + * + * + * + *
Response details
Status Code Description Response Headers
204 No Content -
403 Forbidden -
404 Not Found -
429 Too many requests -
+ */ + public ApiResponse deleteDashboardSecureEmbedWithHttpInfo(String dashboardId, String token) + throws ApiException { + // Check if unstable operation is enabled + String operationId = "deleteDashboardSecureEmbed"; + if (apiClient.isUnstableOperationEnabled("v2." + operationId)) { + apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId)); + } else { + throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)); + } + Object localVarPostBody = null; + + // verify the required parameter 'dashboardId' is set + if (dashboardId == null) { + throw new ApiException( + 400, + "Missing the required parameter 'dashboardId' when calling deleteDashboardSecureEmbed"); + } + + // verify the required parameter 'token' is set + if (token == null) { + throw new ApiException( + 400, "Missing the required parameter 'token' when calling deleteDashboardSecureEmbed"); + } + // create path and map variables + String localVarPath = + "/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token}" + .replaceAll( + "\\{" + "dashboard_id" + "\\}", apiClient.escapeString(dashboardId.toString())) + .replaceAll("\\{" + "token" + "\\}", apiClient.escapeString(token.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder = + apiClient.createBuilder( + "v2.DashboardSecureEmbedApi.deleteDashboardSecureEmbed", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"*/*"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + return apiClient.invokeAPI( + "DELETE", + builder, + localVarHeaderParams, + new String[] {}, + localVarPostBody, + new HashMap(), + false, + null); + } + + /** + * Delete a secure embed for a dashboard. + * + *

See {@link #deleteDashboardSecureEmbedWithHttpInfo}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @return CompletableFuture<ApiResponse<Void>> + */ + public CompletableFuture> deleteDashboardSecureEmbedWithHttpInfoAsync( + String dashboardId, String token) { + // Check if unstable operation is enabled + String operationId = "deleteDashboardSecureEmbed"; + if (apiClient.isUnstableOperationEnabled("v2." + operationId)) { + apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId)); + } else { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId))); + return result; + } + Object localVarPostBody = null; + + // verify the required parameter 'dashboardId' is set + if (dashboardId == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'dashboardId' when calling" + + " deleteDashboardSecureEmbed")); + return result; + } + + // verify the required parameter 'token' is set + if (token == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'token' when calling deleteDashboardSecureEmbed")); + return result; + } + // create path and map variables + String localVarPath = + "/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token}" + .replaceAll( + "\\{" + "dashboard_id" + "\\}", apiClient.escapeString(dashboardId.toString())) + .replaceAll("\\{" + "token" + "\\}", apiClient.escapeString(token.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder; + try { + builder = + apiClient.createBuilder( + "v2.DashboardSecureEmbedApi.deleteDashboardSecureEmbed", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"*/*"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + } catch (ApiException ex) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally(ex); + return result; + } + return apiClient.invokeAPIAsync( + "DELETE", + builder, + localVarHeaderParams, + new String[] {}, + localVarPostBody, + new HashMap(), + false, + null); + } + + /** + * Get a secure embed for a dashboard. + * + *

See {@link #getDashboardSecureEmbedWithHttpInfo}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @return SecureEmbedGetResponse + * @throws ApiException if fails to make API call + */ + public SecureEmbedGetResponse getDashboardSecureEmbed(String dashboardId, String token) + throws ApiException { + return getDashboardSecureEmbedWithHttpInfo(dashboardId, token).getData(); + } + + /** + * Get a secure embed for a dashboard. + * + *

See {@link #getDashboardSecureEmbedWithHttpInfoAsync}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @return CompletableFuture<SecureEmbedGetResponse> + */ + public CompletableFuture getDashboardSecureEmbedAsync( + String dashboardId, String token) { + return getDashboardSecureEmbedWithHttpInfoAsync(dashboardId, token) + .thenApply( + response -> { + return response.getData(); + }); + } + + /** + * Retrieve an existing secure embed configuration for a dashboard. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @return ApiResponse<SecureEmbedGetResponse> + * @throws ApiException if fails to make API call + * @http.response.details + * + * + * + * + * + * + *
Response details
Status Code Description Response Headers
200 OK -
404 Not Found -
429 Too many requests -
+ */ + public ApiResponse getDashboardSecureEmbedWithHttpInfo( + String dashboardId, String token) throws ApiException { + // Check if unstable operation is enabled + String operationId = "getDashboardSecureEmbed"; + if (apiClient.isUnstableOperationEnabled("v2." + operationId)) { + apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId)); + } else { + throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)); + } + Object localVarPostBody = null; + + // verify the required parameter 'dashboardId' is set + if (dashboardId == null) { + throw new ApiException( + 400, "Missing the required parameter 'dashboardId' when calling getDashboardSecureEmbed"); + } + + // verify the required parameter 'token' is set + if (token == null) { + throw new ApiException( + 400, "Missing the required parameter 'token' when calling getDashboardSecureEmbed"); + } + // create path and map variables + String localVarPath = + "/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token}" + .replaceAll( + "\\{" + "dashboard_id" + "\\}", apiClient.escapeString(dashboardId.toString())) + .replaceAll("\\{" + "token" + "\\}", apiClient.escapeString(token.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder = + apiClient.createBuilder( + "v2.DashboardSecureEmbedApi.getDashboardSecureEmbed", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"application/json"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + return apiClient.invokeAPI( + "GET", + builder, + localVarHeaderParams, + new String[] {}, + localVarPostBody, + new HashMap(), + false, + new GenericType() {}); + } + + /** + * Get a secure embed for a dashboard. + * + *

See {@link #getDashboardSecureEmbedWithHttpInfo}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @return CompletableFuture<ApiResponse<SecureEmbedGetResponse>> + */ + public CompletableFuture> + getDashboardSecureEmbedWithHttpInfoAsync(String dashboardId, String token) { + // Check if unstable operation is enabled + String operationId = "getDashboardSecureEmbed"; + if (apiClient.isUnstableOperationEnabled("v2." + operationId)) { + apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId)); + } else { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId))); + return result; + } + Object localVarPostBody = null; + + // verify the required parameter 'dashboardId' is set + if (dashboardId == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'dashboardId' when calling getDashboardSecureEmbed")); + return result; + } + + // verify the required parameter 'token' is set + if (token == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, "Missing the required parameter 'token' when calling getDashboardSecureEmbed")); + return result; + } + // create path and map variables + String localVarPath = + "/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token}" + .replaceAll( + "\\{" + "dashboard_id" + "\\}", apiClient.escapeString(dashboardId.toString())) + .replaceAll("\\{" + "token" + "\\}", apiClient.escapeString(token.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder; + try { + builder = + apiClient.createBuilder( + "v2.DashboardSecureEmbedApi.getDashboardSecureEmbed", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"application/json"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + } catch (ApiException ex) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally(ex); + return result; + } + return apiClient.invokeAPIAsync( + "GET", + builder, + localVarHeaderParams, + new String[] {}, + localVarPostBody, + new HashMap(), + false, + new GenericType() {}); + } + + /** + * Update a secure embed for a dashboard. + * + *

See {@link #updateDashboardSecureEmbedWithHttpInfo}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @param body Secure embed update request body. (required) + * @return SecureEmbedUpdateResponse + * @throws ApiException if fails to make API call + */ + public SecureEmbedUpdateResponse updateDashboardSecureEmbed( + String dashboardId, String token, SecureEmbedUpdateRequest body) throws ApiException { + return updateDashboardSecureEmbedWithHttpInfo(dashboardId, token, body).getData(); + } + + /** + * Update a secure embed for a dashboard. + * + *

See {@link #updateDashboardSecureEmbedWithHttpInfoAsync}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @param body Secure embed update request body. (required) + * @return CompletableFuture<SecureEmbedUpdateResponse> + */ + public CompletableFuture updateDashboardSecureEmbedAsync( + String dashboardId, String token, SecureEmbedUpdateRequest body) { + return updateDashboardSecureEmbedWithHttpInfoAsync(dashboardId, token, body) + .thenApply( + response -> { + return response.getData(); + }); + } + + /** + * Partially update a secure embed configuration. All fields are optional (PATCH semantics). + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @param body Secure embed update request body. (required) + * @return ApiResponse<SecureEmbedUpdateResponse> + * @throws ApiException if fails to make API call + * @http.response.details + * + * + * + * + * + * + * + *
Response details
Status Code Description Response Headers
200 OK -
403 Forbidden -
404 Not Found -
429 Too many requests -
+ */ + public ApiResponse updateDashboardSecureEmbedWithHttpInfo( + String dashboardId, String token, SecureEmbedUpdateRequest body) throws ApiException { + // Check if unstable operation is enabled + String operationId = "updateDashboardSecureEmbed"; + if (apiClient.isUnstableOperationEnabled("v2." + operationId)) { + apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId)); + } else { + throw new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId)); + } + Object localVarPostBody = body; + + // verify the required parameter 'dashboardId' is set + if (dashboardId == null) { + throw new ApiException( + 400, + "Missing the required parameter 'dashboardId' when calling updateDashboardSecureEmbed"); + } + + // verify the required parameter 'token' is set + if (token == null) { + throw new ApiException( + 400, "Missing the required parameter 'token' when calling updateDashboardSecureEmbed"); + } + + // verify the required parameter 'body' is set + if (body == null) { + throw new ApiException( + 400, "Missing the required parameter 'body' when calling updateDashboardSecureEmbed"); + } + // create path and map variables + String localVarPath = + "/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token}" + .replaceAll( + "\\{" + "dashboard_id" + "\\}", apiClient.escapeString(dashboardId.toString())) + .replaceAll("\\{" + "token" + "\\}", apiClient.escapeString(token.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder = + apiClient.createBuilder( + "v2.DashboardSecureEmbedApi.updateDashboardSecureEmbed", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"application/json"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + return apiClient.invokeAPI( + "PATCH", + builder, + localVarHeaderParams, + new String[] {"application/json"}, + localVarPostBody, + new HashMap(), + false, + new GenericType() {}); + } + + /** + * Update a secure embed for a dashboard. + * + *

See {@link #updateDashboardSecureEmbedWithHttpInfo}. + * + * @param dashboardId The ID of the dashboard. (required) + * @param token The share token identifying the secure embed. (required) + * @param body Secure embed update request body. (required) + * @return CompletableFuture<ApiResponse<SecureEmbedUpdateResponse>> + */ + public CompletableFuture> + updateDashboardSecureEmbedWithHttpInfoAsync( + String dashboardId, String token, SecureEmbedUpdateRequest body) { + // Check if unstable operation is enabled + String operationId = "updateDashboardSecureEmbed"; + if (apiClient.isUnstableOperationEnabled("v2." + operationId)) { + apiClient.getLogger().warning(String.format("Using unstable operation '%s'", operationId)); + } else { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException(0, String.format("Unstable operation '%s' is disabled", operationId))); + return result; + } + Object localVarPostBody = body; + + // verify the required parameter 'dashboardId' is set + if (dashboardId == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'dashboardId' when calling" + + " updateDashboardSecureEmbed")); + return result; + } + + // verify the required parameter 'token' is set + if (token == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'token' when calling updateDashboardSecureEmbed")); + return result; + } + + // verify the required parameter 'body' is set + if (body == null) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally( + new ApiException( + 400, + "Missing the required parameter 'body' when calling updateDashboardSecureEmbed")); + return result; + } + // create path and map variables + String localVarPath = + "/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token}" + .replaceAll( + "\\{" + "dashboard_id" + "\\}", apiClient.escapeString(dashboardId.toString())) + .replaceAll("\\{" + "token" + "\\}", apiClient.escapeString(token.toString())); + + Map localVarHeaderParams = new HashMap(); + + Invocation.Builder builder; + try { + builder = + apiClient.createBuilder( + "v2.DashboardSecureEmbedApi.updateDashboardSecureEmbed", + localVarPath, + new ArrayList(), + localVarHeaderParams, + new HashMap(), + new String[] {"application/json"}, + new String[] {"apiKeyAuth", "appKeyAuth", "AuthZ"}); + } catch (ApiException ex) { + CompletableFuture> result = new CompletableFuture<>(); + result.completeExceptionally(ex); + return result; + } + return apiClient.invokeAPIAsync( + "PATCH", + builder, + localVarHeaderParams, + new String[] {"application/json"}, + localVarPostBody, + new HashMap(), + false, + new GenericType() {}); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/ObservabilityPipelineParseGrokProcessorRule.java b/src/main/java/com/datadog/api/client/v2/model/ObservabilityPipelineParseGrokProcessorRule.java index f5963416989..b1177e1b191 100644 --- a/src/main/java/com/datadog/api/client/v2/model/ObservabilityPipelineParseGrokProcessorRule.java +++ b/src/main/java/com/datadog/api/client/v2/model/ObservabilityPipelineParseGrokProcessorRule.java @@ -90,7 +90,7 @@ public ObservabilityPipelineParseGrokProcessorRule source(String source) { } /** - * The value of the source field in log events to be processed by the Grok rules. + * The name of the field in the log event to apply the Grok rules to. * * @return source */ diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateRequest.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateRequest.java new file mode 100644 index 00000000000..c914c152061 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateRequest.java @@ -0,0 +1,146 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Request to create a secure embed shared dashboard. */ +@JsonPropertyOrder({SecureEmbedCreateRequest.JSON_PROPERTY_DATA}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedCreateRequest { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DATA = "data"; + private SecureEmbedCreateRequestData data; + + public SecureEmbedCreateRequest() {} + + @JsonCreator + public SecureEmbedCreateRequest( + @JsonProperty(required = true, value = JSON_PROPERTY_DATA) + SecureEmbedCreateRequestData data) { + this.data = data; + this.unparsed |= data.unparsed; + } + + public SecureEmbedCreateRequest data(SecureEmbedCreateRequestData data) { + this.data = data; + this.unparsed |= data.unparsed; + return this; + } + + /** + * Data object for creating a secure embed. + * + * @return data + */ + @JsonProperty(JSON_PROPERTY_DATA) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedCreateRequestData getData() { + return data; + } + + public void setData(SecureEmbedCreateRequestData data) { + this.data = data; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedCreateRequest + */ + @JsonAnySetter + public SecureEmbedCreateRequest putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedCreateRequest object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedCreateRequest secureEmbedCreateRequest = (SecureEmbedCreateRequest) o; + return Objects.equals(this.data, secureEmbedCreateRequest.data) + && Objects.equals(this.additionalProperties, secureEmbedCreateRequest.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedCreateRequest {\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateRequestAttributes.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateRequestAttributes.java new file mode 100644 index 00000000000..4110b755f1e --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateRequestAttributes.java @@ -0,0 +1,330 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +/** Attributes for creating a secure embed shared dashboard. */ +@JsonPropertyOrder({ + SecureEmbedCreateRequestAttributes.JSON_PROPERTY_GLOBAL_TIME, + SecureEmbedCreateRequestAttributes.JSON_PROPERTY_GLOBAL_TIME_SELECTABLE, + SecureEmbedCreateRequestAttributes.JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS, + SecureEmbedCreateRequestAttributes.JSON_PROPERTY_STATUS, + SecureEmbedCreateRequestAttributes.JSON_PROPERTY_TITLE, + SecureEmbedCreateRequestAttributes.JSON_PROPERTY_VIEWING_PREFERENCES +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedCreateRequestAttributes { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_GLOBAL_TIME = "global_time"; + private SecureEmbedGlobalTime globalTime; + + public static final String JSON_PROPERTY_GLOBAL_TIME_SELECTABLE = "global_time_selectable"; + private Boolean globalTimeSelectable; + + public static final String JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS = "selectable_template_vars"; + private List selectableTemplateVars = new ArrayList<>(); + + public static final String JSON_PROPERTY_STATUS = "status"; + private SecureEmbedStatus status; + + public static final String JSON_PROPERTY_TITLE = "title"; + private String title; + + public static final String JSON_PROPERTY_VIEWING_PREFERENCES = "viewing_preferences"; + private SecureEmbedViewingPreferences viewingPreferences; + + public SecureEmbedCreateRequestAttributes() {} + + @JsonCreator + public SecureEmbedCreateRequestAttributes( + @JsonProperty(required = true, value = JSON_PROPERTY_GLOBAL_TIME) + SecureEmbedGlobalTime globalTime, + @JsonProperty(required = true, value = JSON_PROPERTY_GLOBAL_TIME_SELECTABLE) + Boolean globalTimeSelectable, + @JsonProperty(required = true, value = JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS) + List selectableTemplateVars, + @JsonProperty(required = true, value = JSON_PROPERTY_STATUS) SecureEmbedStatus status, + @JsonProperty(required = true, value = JSON_PROPERTY_TITLE) String title, + @JsonProperty(required = true, value = JSON_PROPERTY_VIEWING_PREFERENCES) + SecureEmbedViewingPreferences viewingPreferences) { + this.globalTime = globalTime; + this.unparsed |= globalTime.unparsed; + this.globalTimeSelectable = globalTimeSelectable; + this.selectableTemplateVars = selectableTemplateVars; + this.status = status; + this.unparsed |= !status.isValid(); + this.title = title; + this.viewingPreferences = viewingPreferences; + this.unparsed |= viewingPreferences.unparsed; + } + + public SecureEmbedCreateRequestAttributes globalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + this.unparsed |= globalTime.unparsed; + return this; + } + + /** + * Default time range configuration for the secure embed. + * + * @return globalTime + */ + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedGlobalTime getGlobalTime() { + return globalTime; + } + + public void setGlobalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + } + + public SecureEmbedCreateRequestAttributes globalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + return this; + } + + /** + * Whether viewers can change the time range. + * + * @return globalTimeSelectable + */ + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME_SELECTABLE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public Boolean getGlobalTimeSelectable() { + return globalTimeSelectable; + } + + public void setGlobalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + } + + public SecureEmbedCreateRequestAttributes selectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + for (SecureEmbedSelectableTemplateVariable item : selectableTemplateVars) { + this.unparsed |= item.unparsed; + } + return this; + } + + public SecureEmbedCreateRequestAttributes addSelectableTemplateVarsItem( + SecureEmbedSelectableTemplateVariable selectableTemplateVarsItem) { + this.selectableTemplateVars.add(selectableTemplateVarsItem); + this.unparsed |= selectableTemplateVarsItem.unparsed; + return this; + } + + /** + * Template variables viewers can modify. + * + * @return selectableTemplateVars + */ + @JsonProperty(JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public List getSelectableTemplateVars() { + return selectableTemplateVars; + } + + public void setSelectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + } + + public SecureEmbedCreateRequestAttributes status(SecureEmbedStatus status) { + this.status = status; + this.unparsed |= !status.isValid(); + return this; + } + + /** + * The status of the secure embed share. Active means the shared dashboard is available. Paused + * means it is not. + * + * @return status + */ + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedStatus getStatus() { + return status; + } + + public void setStatus(SecureEmbedStatus status) { + if (!status.isValid()) { + this.unparsed = true; + } + this.status = status; + } + + public SecureEmbedCreateRequestAttributes title(String title) { + this.title = title; + return this; + } + + /** + * Display title for the shared dashboard. + * + * @return title + */ + @JsonProperty(JSON_PROPERTY_TITLE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public SecureEmbedCreateRequestAttributes viewingPreferences( + SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + this.unparsed |= viewingPreferences.unparsed; + return this; + } + + /** + * Display settings for the secure embed shared dashboard. + * + * @return viewingPreferences + */ + @JsonProperty(JSON_PROPERTY_VIEWING_PREFERENCES) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedViewingPreferences getViewingPreferences() { + return viewingPreferences; + } + + public void setViewingPreferences(SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedCreateRequestAttributes + */ + @JsonAnySetter + public SecureEmbedCreateRequestAttributes putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedCreateRequestAttributes object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedCreateRequestAttributes secureEmbedCreateRequestAttributes = + (SecureEmbedCreateRequestAttributes) o; + return Objects.equals(this.globalTime, secureEmbedCreateRequestAttributes.globalTime) + && Objects.equals( + this.globalTimeSelectable, secureEmbedCreateRequestAttributes.globalTimeSelectable) + && Objects.equals( + this.selectableTemplateVars, secureEmbedCreateRequestAttributes.selectableTemplateVars) + && Objects.equals(this.status, secureEmbedCreateRequestAttributes.status) + && Objects.equals(this.title, secureEmbedCreateRequestAttributes.title) + && Objects.equals( + this.viewingPreferences, secureEmbedCreateRequestAttributes.viewingPreferences) + && Objects.equals( + this.additionalProperties, secureEmbedCreateRequestAttributes.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash( + globalTime, + globalTimeSelectable, + selectableTemplateVars, + status, + title, + viewingPreferences, + additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedCreateRequestAttributes {\n"); + sb.append(" globalTime: ").append(toIndentedString(globalTime)).append("\n"); + sb.append(" globalTimeSelectable: ") + .append(toIndentedString(globalTimeSelectable)) + .append("\n"); + sb.append(" selectableTemplateVars: ") + .append(toIndentedString(selectableTemplateVars)) + .append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" viewingPreferences: ").append(toIndentedString(viewingPreferences)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateRequestData.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateRequestData.java new file mode 100644 index 00000000000..e27b4a8adea --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateRequestData.java @@ -0,0 +1,182 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Data object for creating a secure embed. */ +@JsonPropertyOrder({ + SecureEmbedCreateRequestData.JSON_PROPERTY_ATTRIBUTES, + SecureEmbedCreateRequestData.JSON_PROPERTY_TYPE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedCreateRequestData { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_ATTRIBUTES = "attributes"; + private SecureEmbedCreateRequestAttributes attributes; + + public static final String JSON_PROPERTY_TYPE = "type"; + private SecureEmbedRequestType type; + + public SecureEmbedCreateRequestData() {} + + @JsonCreator + public SecureEmbedCreateRequestData( + @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES) + SecureEmbedCreateRequestAttributes attributes, + @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) SecureEmbedRequestType type) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + this.type = type; + this.unparsed |= !type.isValid(); + } + + public SecureEmbedCreateRequestData attributes(SecureEmbedCreateRequestAttributes attributes) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + return this; + } + + /** + * Attributes for creating a secure embed shared dashboard. + * + * @return attributes + */ + @JsonProperty(JSON_PROPERTY_ATTRIBUTES) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedCreateRequestAttributes getAttributes() { + return attributes; + } + + public void setAttributes(SecureEmbedCreateRequestAttributes attributes) { + this.attributes = attributes; + } + + public SecureEmbedCreateRequestData type(SecureEmbedRequestType type) { + this.type = type; + this.unparsed |= !type.isValid(); + return this; + } + + /** + * Resource type for secure embed create requests. + * + * @return type + */ + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedRequestType getType() { + return type; + } + + public void setType(SecureEmbedRequestType type) { + if (!type.isValid()) { + this.unparsed = true; + } + this.type = type; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedCreateRequestData + */ + @JsonAnySetter + public SecureEmbedCreateRequestData putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedCreateRequestData object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedCreateRequestData secureEmbedCreateRequestData = (SecureEmbedCreateRequestData) o; + return Objects.equals(this.attributes, secureEmbedCreateRequestData.attributes) + && Objects.equals(this.type, secureEmbedCreateRequestData.type) + && Objects.equals( + this.additionalProperties, secureEmbedCreateRequestData.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(attributes, type, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedCreateRequestData {\n"); + sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponse.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponse.java new file mode 100644 index 00000000000..333a37b5c6c --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponse.java @@ -0,0 +1,147 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Response for creating a secure embed shared dashboard. */ +@JsonPropertyOrder({SecureEmbedCreateResponse.JSON_PROPERTY_DATA}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedCreateResponse { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DATA = "data"; + private SecureEmbedCreateResponseData data; + + public SecureEmbedCreateResponse() {} + + @JsonCreator + public SecureEmbedCreateResponse( + @JsonProperty(required = true, value = JSON_PROPERTY_DATA) + SecureEmbedCreateResponseData data) { + this.data = data; + this.unparsed |= data.unparsed; + } + + public SecureEmbedCreateResponse data(SecureEmbedCreateResponseData data) { + this.data = data; + this.unparsed |= data.unparsed; + return this; + } + + /** + * Data object for a secure embed create response. + * + * @return data + */ + @JsonProperty(JSON_PROPERTY_DATA) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedCreateResponseData getData() { + return data; + } + + public void setData(SecureEmbedCreateResponseData data) { + this.data = data; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedCreateResponse + */ + @JsonAnySetter + public SecureEmbedCreateResponse putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedCreateResponse object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedCreateResponse secureEmbedCreateResponse = (SecureEmbedCreateResponse) o; + return Objects.equals(this.data, secureEmbedCreateResponse.data) + && Objects.equals( + this.additionalProperties, secureEmbedCreateResponse.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedCreateResponse {\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponseAttributes.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponseAttributes.java new file mode 100644 index 00000000000..5c251d82059 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponseAttributes.java @@ -0,0 +1,460 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +/** Attributes of a newly created secure embed shared dashboard. */ +@JsonPropertyOrder({ + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_CREATED_AT, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_CREDENTIAL, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_DASHBOARD_ID, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_GLOBAL_TIME, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_GLOBAL_TIME_SELECTABLE, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_ID, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_SHARE_TYPE, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_STATUS, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_TITLE, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_TOKEN, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_URL, + SecureEmbedCreateResponseAttributes.JSON_PROPERTY_VIEWING_PREFERENCES +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedCreateResponseAttributes { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_CREATED_AT = "created_at"; + private String createdAt; + + public static final String JSON_PROPERTY_CREDENTIAL = "credential"; + private String credential; + + public static final String JSON_PROPERTY_DASHBOARD_ID = "dashboard_id"; + private String dashboardId; + + public static final String JSON_PROPERTY_GLOBAL_TIME = "global_time"; + private SecureEmbedGlobalTime globalTime; + + public static final String JSON_PROPERTY_GLOBAL_TIME_SELECTABLE = "global_time_selectable"; + private Boolean globalTimeSelectable; + + public static final String JSON_PROPERTY_ID = "id"; + private String id; + + public static final String JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS = "selectable_template_vars"; + private List selectableTemplateVars = null; + + public static final String JSON_PROPERTY_SHARE_TYPE = "share_type"; + private SecureEmbedShareType shareType; + + public static final String JSON_PROPERTY_STATUS = "status"; + private SecureEmbedStatus status; + + public static final String JSON_PROPERTY_TITLE = "title"; + private String title; + + public static final String JSON_PROPERTY_TOKEN = "token"; + private String token; + + public static final String JSON_PROPERTY_URL = "url"; + private String url; + + public static final String JSON_PROPERTY_VIEWING_PREFERENCES = "viewing_preferences"; + private SecureEmbedViewingPreferences viewingPreferences; + + /** + * Creation timestamp. + * + * @return createdAt + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CREATED_AT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCreatedAt() { + return createdAt; + } + + /** + * The secret credential used for HMAC signing. Returned only on creation. Store securely — it + * cannot be retrieved again. + * + * @return credential + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CREDENTIAL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCredential() { + return credential; + } + + /** + * The source dashboard ID. + * + * @return dashboardId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DASHBOARD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDashboardId() { + return dashboardId; + } + + public SecureEmbedCreateResponseAttributes globalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + this.unparsed |= globalTime.unparsed; + return this; + } + + /** + * Default time range configuration for the secure embed. + * + * @return globalTime + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedGlobalTime getGlobalTime() { + return globalTime; + } + + public void setGlobalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + } + + public SecureEmbedCreateResponseAttributes globalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + return this; + } + + /** + * Whether time range is viewer-selectable. + * + * @return globalTimeSelectable + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME_SELECTABLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getGlobalTimeSelectable() { + return globalTimeSelectable; + } + + public void setGlobalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + } + + /** + * Internal share ID. + * + * @return id + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getId() { + return id; + } + + public SecureEmbedCreateResponseAttributes selectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + for (SecureEmbedSelectableTemplateVariable item : selectableTemplateVars) { + this.unparsed |= item.unparsed; + } + return this; + } + + public SecureEmbedCreateResponseAttributes addSelectableTemplateVarsItem( + SecureEmbedSelectableTemplateVariable selectableTemplateVarsItem) { + if (this.selectableTemplateVars == null) { + this.selectableTemplateVars = new ArrayList<>(); + } + this.selectableTemplateVars.add(selectableTemplateVarsItem); + this.unparsed |= selectableTemplateVarsItem.unparsed; + return this; + } + + /** + * Template variables with their configuration. + * + * @return selectableTemplateVars + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getSelectableTemplateVars() { + return selectableTemplateVars; + } + + public void setSelectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + } + + public SecureEmbedCreateResponseAttributes shareType(SecureEmbedShareType shareType) { + this.shareType = shareType; + this.unparsed |= !shareType.isValid(); + return this; + } + + /** + * The type of share. Always secure_embed. + * + * @return shareType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SHARE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedShareType getShareType() { + return shareType; + } + + public void setShareType(SecureEmbedShareType shareType) { + if (!shareType.isValid()) { + this.unparsed = true; + } + this.shareType = shareType; + } + + public SecureEmbedCreateResponseAttributes status(SecureEmbedStatus status) { + this.status = status; + this.unparsed |= !status.isValid(); + return this; + } + + /** + * The status of the secure embed share. Active means the shared dashboard is available. Paused + * means it is not. + * + * @return status + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedStatus getStatus() { + return status; + } + + public void setStatus(SecureEmbedStatus status) { + if (!status.isValid()) { + this.unparsed = true; + } + this.status = status; + } + + public SecureEmbedCreateResponseAttributes title(String title) { + this.title = title; + return this; + } + + /** + * Display title. + * + * @return title + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TITLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + /** + * Public share token. + * + * @return token + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TOKEN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getToken() { + return token; + } + + /** + * CDN URL for the shared dashboard. + * + * @return url + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_URL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getUrl() { + return url; + } + + public SecureEmbedCreateResponseAttributes viewingPreferences( + SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + this.unparsed |= viewingPreferences.unparsed; + return this; + } + + /** + * Display settings for the secure embed shared dashboard. + * + * @return viewingPreferences + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VIEWING_PREFERENCES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedViewingPreferences getViewingPreferences() { + return viewingPreferences; + } + + public void setViewingPreferences(SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedCreateResponseAttributes + */ + @JsonAnySetter + public SecureEmbedCreateResponseAttributes putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedCreateResponseAttributes object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedCreateResponseAttributes secureEmbedCreateResponseAttributes = + (SecureEmbedCreateResponseAttributes) o; + return Objects.equals(this.createdAt, secureEmbedCreateResponseAttributes.createdAt) + && Objects.equals(this.credential, secureEmbedCreateResponseAttributes.credential) + && Objects.equals(this.dashboardId, secureEmbedCreateResponseAttributes.dashboardId) + && Objects.equals(this.globalTime, secureEmbedCreateResponseAttributes.globalTime) + && Objects.equals( + this.globalTimeSelectable, secureEmbedCreateResponseAttributes.globalTimeSelectable) + && Objects.equals(this.id, secureEmbedCreateResponseAttributes.id) + && Objects.equals( + this.selectableTemplateVars, secureEmbedCreateResponseAttributes.selectableTemplateVars) + && Objects.equals(this.shareType, secureEmbedCreateResponseAttributes.shareType) + && Objects.equals(this.status, secureEmbedCreateResponseAttributes.status) + && Objects.equals(this.title, secureEmbedCreateResponseAttributes.title) + && Objects.equals(this.token, secureEmbedCreateResponseAttributes.token) + && Objects.equals(this.url, secureEmbedCreateResponseAttributes.url) + && Objects.equals( + this.viewingPreferences, secureEmbedCreateResponseAttributes.viewingPreferences) + && Objects.equals( + this.additionalProperties, secureEmbedCreateResponseAttributes.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash( + createdAt, + credential, + dashboardId, + globalTime, + globalTimeSelectable, + id, + selectableTemplateVars, + shareType, + status, + title, + token, + url, + viewingPreferences, + additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedCreateResponseAttributes {\n"); + sb.append(" createdAt: ").append(toIndentedString(createdAt)).append("\n"); + sb.append(" credential: ").append(toIndentedString(credential)).append("\n"); + sb.append(" dashboardId: ").append(toIndentedString(dashboardId)).append("\n"); + sb.append(" globalTime: ").append(toIndentedString(globalTime)).append("\n"); + sb.append(" globalTimeSelectable: ") + .append(toIndentedString(globalTimeSelectable)) + .append("\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" selectableTemplateVars: ") + .append(toIndentedString(selectableTemplateVars)) + .append("\n"); + sb.append(" shareType: ").append(toIndentedString(shareType)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" token: ").append(toIndentedString(token)).append("\n"); + sb.append(" url: ").append(toIndentedString(url)).append("\n"); + sb.append(" viewingPreferences: ").append(toIndentedString(viewingPreferences)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponseData.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponseData.java new file mode 100644 index 00000000000..30c65039078 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponseData.java @@ -0,0 +1,211 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Data object for a secure embed create response. */ +@JsonPropertyOrder({ + SecureEmbedCreateResponseData.JSON_PROPERTY_ATTRIBUTES, + SecureEmbedCreateResponseData.JSON_PROPERTY_ID, + SecureEmbedCreateResponseData.JSON_PROPERTY_TYPE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedCreateResponseData { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_ATTRIBUTES = "attributes"; + private SecureEmbedCreateResponseAttributes attributes; + + public static final String JSON_PROPERTY_ID = "id"; + private String id; + + public static final String JSON_PROPERTY_TYPE = "type"; + private SecureEmbedCreateResponseType type; + + public SecureEmbedCreateResponseData() {} + + @JsonCreator + public SecureEmbedCreateResponseData( + @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES) + SecureEmbedCreateResponseAttributes attributes, + @JsonProperty(required = true, value = JSON_PROPERTY_ID) String id, + @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) + SecureEmbedCreateResponseType type) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + this.id = id; + this.type = type; + this.unparsed |= !type.isValid(); + } + + public SecureEmbedCreateResponseData attributes(SecureEmbedCreateResponseAttributes attributes) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + return this; + } + + /** + * Attributes of a newly created secure embed shared dashboard. + * + * @return attributes + */ + @JsonProperty(JSON_PROPERTY_ATTRIBUTES) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedCreateResponseAttributes getAttributes() { + return attributes; + } + + public void setAttributes(SecureEmbedCreateResponseAttributes attributes) { + this.attributes = attributes; + } + + public SecureEmbedCreateResponseData id(String id) { + this.id = id; + return this; + } + + /** + * Internal share ID. + * + * @return id + */ + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public SecureEmbedCreateResponseData type(SecureEmbedCreateResponseType type) { + this.type = type; + this.unparsed |= !type.isValid(); + return this; + } + + /** + * Resource type for secure embed create responses. + * + * @return type + */ + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedCreateResponseType getType() { + return type; + } + + public void setType(SecureEmbedCreateResponseType type) { + if (!type.isValid()) { + this.unparsed = true; + } + this.type = type; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedCreateResponseData + */ + @JsonAnySetter + public SecureEmbedCreateResponseData putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedCreateResponseData object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedCreateResponseData secureEmbedCreateResponseData = (SecureEmbedCreateResponseData) o; + return Objects.equals(this.attributes, secureEmbedCreateResponseData.attributes) + && Objects.equals(this.id, secureEmbedCreateResponseData.id) + && Objects.equals(this.type, secureEmbedCreateResponseData.type) + && Objects.equals( + this.additionalProperties, secureEmbedCreateResponseData.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(attributes, id, type, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedCreateResponseData {\n"); + sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponseType.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponseType.java new file mode 100644 index 00000000000..25433d8d7d4 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedCreateResponseType.java @@ -0,0 +1,57 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** Resource type for secure embed create responses. */ +@JsonSerialize(using = SecureEmbedCreateResponseType.SecureEmbedCreateResponseTypeSerializer.class) +public class SecureEmbedCreateResponseType extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("secure_embed_create_response")); + + public static final SecureEmbedCreateResponseType SECURE_EMBED_CREATE_RESPONSE = + new SecureEmbedCreateResponseType("secure_embed_create_response"); + + SecureEmbedCreateResponseType(String value) { + super(value, allowedValues); + } + + public static class SecureEmbedCreateResponseTypeSerializer + extends StdSerializer { + public SecureEmbedCreateResponseTypeSerializer(Class t) { + super(t); + } + + public SecureEmbedCreateResponseTypeSerializer() { + this(null); + } + + @Override + public void serialize( + SecureEmbedCreateResponseType value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecureEmbedCreateResponseType fromValue(String value) { + return new SecureEmbedCreateResponseType(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponse.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponse.java new file mode 100644 index 00000000000..5fc21d58287 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponse.java @@ -0,0 +1,145 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Response for getting a secure embed shared dashboard. */ +@JsonPropertyOrder({SecureEmbedGetResponse.JSON_PROPERTY_DATA}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedGetResponse { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DATA = "data"; + private SecureEmbedGetResponseData data; + + public SecureEmbedGetResponse() {} + + @JsonCreator + public SecureEmbedGetResponse( + @JsonProperty(required = true, value = JSON_PROPERTY_DATA) SecureEmbedGetResponseData data) { + this.data = data; + this.unparsed |= data.unparsed; + } + + public SecureEmbedGetResponse data(SecureEmbedGetResponseData data) { + this.data = data; + this.unparsed |= data.unparsed; + return this; + } + + /** + * Data object for a secure embed get response. + * + * @return data + */ + @JsonProperty(JSON_PROPERTY_DATA) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedGetResponseData getData() { + return data; + } + + public void setData(SecureEmbedGetResponseData data) { + this.data = data; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedGetResponse + */ + @JsonAnySetter + public SecureEmbedGetResponse putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedGetResponse object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedGetResponse secureEmbedGetResponse = (SecureEmbedGetResponse) o; + return Objects.equals(this.data, secureEmbedGetResponse.data) + && Objects.equals(this.additionalProperties, secureEmbedGetResponse.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedGetResponse {\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponseAttributes.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponseAttributes.java new file mode 100644 index 00000000000..9e40f863c64 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponseAttributes.java @@ -0,0 +1,459 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +/** Attributes of an existing secure embed shared dashboard. */ +@JsonPropertyOrder({ + SecureEmbedGetResponseAttributes.JSON_PROPERTY_CREATED_AT, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_CREDENTIAL_SUFFIX, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_DASHBOARD_ID, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_GLOBAL_TIME, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_GLOBAL_TIME_SELECTABLE, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_ID, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_SHARE_TYPE, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_STATUS, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_TITLE, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_TOKEN, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_URL, + SecureEmbedGetResponseAttributes.JSON_PROPERTY_VIEWING_PREFERENCES +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedGetResponseAttributes { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_CREATED_AT = "created_at"; + private String createdAt; + + public static final String JSON_PROPERTY_CREDENTIAL_SUFFIX = "credential_suffix"; + private String credentialSuffix; + + public static final String JSON_PROPERTY_DASHBOARD_ID = "dashboard_id"; + private String dashboardId; + + public static final String JSON_PROPERTY_GLOBAL_TIME = "global_time"; + private SecureEmbedGlobalTime globalTime; + + public static final String JSON_PROPERTY_GLOBAL_TIME_SELECTABLE = "global_time_selectable"; + private Boolean globalTimeSelectable; + + public static final String JSON_PROPERTY_ID = "id"; + private String id; + + public static final String JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS = "selectable_template_vars"; + private List selectableTemplateVars = null; + + public static final String JSON_PROPERTY_SHARE_TYPE = "share_type"; + private SecureEmbedShareType shareType; + + public static final String JSON_PROPERTY_STATUS = "status"; + private SecureEmbedStatus status; + + public static final String JSON_PROPERTY_TITLE = "title"; + private String title; + + public static final String JSON_PROPERTY_TOKEN = "token"; + private String token; + + public static final String JSON_PROPERTY_URL = "url"; + private String url; + + public static final String JSON_PROPERTY_VIEWING_PREFERENCES = "viewing_preferences"; + private SecureEmbedViewingPreferences viewingPreferences; + + /** + * Creation timestamp. + * + * @return createdAt + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CREATED_AT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCreatedAt() { + return createdAt; + } + + /** + * Last 4 characters of the credential. Defaults to 0000 if unavailable. + * + * @return credentialSuffix + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CREDENTIAL_SUFFIX) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCredentialSuffix() { + return credentialSuffix; + } + + /** + * The source dashboard ID. + * + * @return dashboardId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DASHBOARD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDashboardId() { + return dashboardId; + } + + public SecureEmbedGetResponseAttributes globalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + this.unparsed |= globalTime.unparsed; + return this; + } + + /** + * Default time range configuration for the secure embed. + * + * @return globalTime + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedGlobalTime getGlobalTime() { + return globalTime; + } + + public void setGlobalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + } + + public SecureEmbedGetResponseAttributes globalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + return this; + } + + /** + * Whether time range is viewer-selectable. + * + * @return globalTimeSelectable + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME_SELECTABLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getGlobalTimeSelectable() { + return globalTimeSelectable; + } + + public void setGlobalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + } + + /** + * Internal share ID. + * + * @return id + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getId() { + return id; + } + + public SecureEmbedGetResponseAttributes selectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + for (SecureEmbedSelectableTemplateVariable item : selectableTemplateVars) { + this.unparsed |= item.unparsed; + } + return this; + } + + public SecureEmbedGetResponseAttributes addSelectableTemplateVarsItem( + SecureEmbedSelectableTemplateVariable selectableTemplateVarsItem) { + if (this.selectableTemplateVars == null) { + this.selectableTemplateVars = new ArrayList<>(); + } + this.selectableTemplateVars.add(selectableTemplateVarsItem); + this.unparsed |= selectableTemplateVarsItem.unparsed; + return this; + } + + /** + * Template variables with their configuration. + * + * @return selectableTemplateVars + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getSelectableTemplateVars() { + return selectableTemplateVars; + } + + public void setSelectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + } + + public SecureEmbedGetResponseAttributes shareType(SecureEmbedShareType shareType) { + this.shareType = shareType; + this.unparsed |= !shareType.isValid(); + return this; + } + + /** + * The type of share. Always secure_embed. + * + * @return shareType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SHARE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedShareType getShareType() { + return shareType; + } + + public void setShareType(SecureEmbedShareType shareType) { + if (!shareType.isValid()) { + this.unparsed = true; + } + this.shareType = shareType; + } + + public SecureEmbedGetResponseAttributes status(SecureEmbedStatus status) { + this.status = status; + this.unparsed |= !status.isValid(); + return this; + } + + /** + * The status of the secure embed share. Active means the shared dashboard is available. Paused + * means it is not. + * + * @return status + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedStatus getStatus() { + return status; + } + + public void setStatus(SecureEmbedStatus status) { + if (!status.isValid()) { + this.unparsed = true; + } + this.status = status; + } + + public SecureEmbedGetResponseAttributes title(String title) { + this.title = title; + return this; + } + + /** + * Display title. + * + * @return title + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TITLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + /** + * Public share token. + * + * @return token + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TOKEN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getToken() { + return token; + } + + /** + * CDN URL for the shared dashboard. + * + * @return url + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_URL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getUrl() { + return url; + } + + public SecureEmbedGetResponseAttributes viewingPreferences( + SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + this.unparsed |= viewingPreferences.unparsed; + return this; + } + + /** + * Display settings for the secure embed shared dashboard. + * + * @return viewingPreferences + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VIEWING_PREFERENCES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedViewingPreferences getViewingPreferences() { + return viewingPreferences; + } + + public void setViewingPreferences(SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedGetResponseAttributes + */ + @JsonAnySetter + public SecureEmbedGetResponseAttributes putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedGetResponseAttributes object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedGetResponseAttributes secureEmbedGetResponseAttributes = + (SecureEmbedGetResponseAttributes) o; + return Objects.equals(this.createdAt, secureEmbedGetResponseAttributes.createdAt) + && Objects.equals(this.credentialSuffix, secureEmbedGetResponseAttributes.credentialSuffix) + && Objects.equals(this.dashboardId, secureEmbedGetResponseAttributes.dashboardId) + && Objects.equals(this.globalTime, secureEmbedGetResponseAttributes.globalTime) + && Objects.equals( + this.globalTimeSelectable, secureEmbedGetResponseAttributes.globalTimeSelectable) + && Objects.equals(this.id, secureEmbedGetResponseAttributes.id) + && Objects.equals( + this.selectableTemplateVars, secureEmbedGetResponseAttributes.selectableTemplateVars) + && Objects.equals(this.shareType, secureEmbedGetResponseAttributes.shareType) + && Objects.equals(this.status, secureEmbedGetResponseAttributes.status) + && Objects.equals(this.title, secureEmbedGetResponseAttributes.title) + && Objects.equals(this.token, secureEmbedGetResponseAttributes.token) + && Objects.equals(this.url, secureEmbedGetResponseAttributes.url) + && Objects.equals( + this.viewingPreferences, secureEmbedGetResponseAttributes.viewingPreferences) + && Objects.equals( + this.additionalProperties, secureEmbedGetResponseAttributes.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash( + createdAt, + credentialSuffix, + dashboardId, + globalTime, + globalTimeSelectable, + id, + selectableTemplateVars, + shareType, + status, + title, + token, + url, + viewingPreferences, + additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedGetResponseAttributes {\n"); + sb.append(" createdAt: ").append(toIndentedString(createdAt)).append("\n"); + sb.append(" credentialSuffix: ").append(toIndentedString(credentialSuffix)).append("\n"); + sb.append(" dashboardId: ").append(toIndentedString(dashboardId)).append("\n"); + sb.append(" globalTime: ").append(toIndentedString(globalTime)).append("\n"); + sb.append(" globalTimeSelectable: ") + .append(toIndentedString(globalTimeSelectable)) + .append("\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" selectableTemplateVars: ") + .append(toIndentedString(selectableTemplateVars)) + .append("\n"); + sb.append(" shareType: ").append(toIndentedString(shareType)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" token: ").append(toIndentedString(token)).append("\n"); + sb.append(" url: ").append(toIndentedString(url)).append("\n"); + sb.append(" viewingPreferences: ").append(toIndentedString(viewingPreferences)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponseData.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponseData.java new file mode 100644 index 00000000000..8100892cdb8 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponseData.java @@ -0,0 +1,210 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Data object for a secure embed get response. */ +@JsonPropertyOrder({ + SecureEmbedGetResponseData.JSON_PROPERTY_ATTRIBUTES, + SecureEmbedGetResponseData.JSON_PROPERTY_ID, + SecureEmbedGetResponseData.JSON_PROPERTY_TYPE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedGetResponseData { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_ATTRIBUTES = "attributes"; + private SecureEmbedGetResponseAttributes attributes; + + public static final String JSON_PROPERTY_ID = "id"; + private String id; + + public static final String JSON_PROPERTY_TYPE = "type"; + private SecureEmbedGetResponseType type; + + public SecureEmbedGetResponseData() {} + + @JsonCreator + public SecureEmbedGetResponseData( + @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES) + SecureEmbedGetResponseAttributes attributes, + @JsonProperty(required = true, value = JSON_PROPERTY_ID) String id, + @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) SecureEmbedGetResponseType type) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + this.id = id; + this.type = type; + this.unparsed |= !type.isValid(); + } + + public SecureEmbedGetResponseData attributes(SecureEmbedGetResponseAttributes attributes) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + return this; + } + + /** + * Attributes of an existing secure embed shared dashboard. + * + * @return attributes + */ + @JsonProperty(JSON_PROPERTY_ATTRIBUTES) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedGetResponseAttributes getAttributes() { + return attributes; + } + + public void setAttributes(SecureEmbedGetResponseAttributes attributes) { + this.attributes = attributes; + } + + public SecureEmbedGetResponseData id(String id) { + this.id = id; + return this; + } + + /** + * Internal share ID. + * + * @return id + */ + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public SecureEmbedGetResponseData type(SecureEmbedGetResponseType type) { + this.type = type; + this.unparsed |= !type.isValid(); + return this; + } + + /** + * Resource type for secure embed get responses. + * + * @return type + */ + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedGetResponseType getType() { + return type; + } + + public void setType(SecureEmbedGetResponseType type) { + if (!type.isValid()) { + this.unparsed = true; + } + this.type = type; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedGetResponseData + */ + @JsonAnySetter + public SecureEmbedGetResponseData putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedGetResponseData object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedGetResponseData secureEmbedGetResponseData = (SecureEmbedGetResponseData) o; + return Objects.equals(this.attributes, secureEmbedGetResponseData.attributes) + && Objects.equals(this.id, secureEmbedGetResponseData.id) + && Objects.equals(this.type, secureEmbedGetResponseData.type) + && Objects.equals( + this.additionalProperties, secureEmbedGetResponseData.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(attributes, id, type, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedGetResponseData {\n"); + sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponseType.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponseType.java new file mode 100644 index 00000000000..e1f6f069543 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGetResponseType.java @@ -0,0 +1,57 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** Resource type for secure embed get responses. */ +@JsonSerialize(using = SecureEmbedGetResponseType.SecureEmbedGetResponseTypeSerializer.class) +public class SecureEmbedGetResponseType extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("secure_embed_get_response")); + + public static final SecureEmbedGetResponseType SECURE_EMBED_GET_RESPONSE = + new SecureEmbedGetResponseType("secure_embed_get_response"); + + SecureEmbedGetResponseType(String value) { + super(value, allowedValues); + } + + public static class SecureEmbedGetResponseTypeSerializer + extends StdSerializer { + public SecureEmbedGetResponseTypeSerializer(Class t) { + super(t); + } + + public SecureEmbedGetResponseTypeSerializer() { + this(null); + } + + @Override + public void serialize( + SecureEmbedGetResponseType value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecureEmbedGetResponseType fromValue(String value) { + return new SecureEmbedGetResponseType(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGlobalTime.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGlobalTime.java new file mode 100644 index 00000000000..2d06e1c4270 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGlobalTime.java @@ -0,0 +1,139 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Default time range configuration for the secure embed. */ +@JsonPropertyOrder({SecureEmbedGlobalTime.JSON_PROPERTY_LIVE_SPAN}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedGlobalTime { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_LIVE_SPAN = "live_span"; + private SecureEmbedGlobalTimeLiveSpan liveSpan; + + public SecureEmbedGlobalTime liveSpan(SecureEmbedGlobalTimeLiveSpan liveSpan) { + this.liveSpan = liveSpan; + this.unparsed |= !liveSpan.isValid(); + return this; + } + + /** + * Dashboard global time live_span selection. + * + * @return liveSpan + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_LIVE_SPAN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedGlobalTimeLiveSpan getLiveSpan() { + return liveSpan; + } + + public void setLiveSpan(SecureEmbedGlobalTimeLiveSpan liveSpan) { + if (!liveSpan.isValid()) { + this.unparsed = true; + } + this.liveSpan = liveSpan; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedGlobalTime + */ + @JsonAnySetter + public SecureEmbedGlobalTime putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedGlobalTime object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedGlobalTime secureEmbedGlobalTime = (SecureEmbedGlobalTime) o; + return Objects.equals(this.liveSpan, secureEmbedGlobalTime.liveSpan) + && Objects.equals(this.additionalProperties, secureEmbedGlobalTime.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(liveSpan, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedGlobalTime {\n"); + sb.append(" liveSpan: ").append(toIndentedString(liveSpan)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGlobalTimeLiveSpan.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGlobalTimeLiveSpan.java new file mode 100644 index 00000000000..815a4916044 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedGlobalTimeLiveSpan.java @@ -0,0 +1,71 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** Dashboard global time live_span selection. */ +@JsonSerialize(using = SecureEmbedGlobalTimeLiveSpan.SecureEmbedGlobalTimeLiveSpanSerializer.class) +public class SecureEmbedGlobalTimeLiveSpan extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("15m", "1h", "4h", "1d", "2d", "1w", "1mo", "3mo")); + + public static final SecureEmbedGlobalTimeLiveSpan PAST_FIFTEEN_MINUTES = + new SecureEmbedGlobalTimeLiveSpan("15m"); + public static final SecureEmbedGlobalTimeLiveSpan PAST_ONE_HOUR = + new SecureEmbedGlobalTimeLiveSpan("1h"); + public static final SecureEmbedGlobalTimeLiveSpan PAST_FOUR_HOURS = + new SecureEmbedGlobalTimeLiveSpan("4h"); + public static final SecureEmbedGlobalTimeLiveSpan PAST_ONE_DAY = + new SecureEmbedGlobalTimeLiveSpan("1d"); + public static final SecureEmbedGlobalTimeLiveSpan PAST_TWO_DAYS = + new SecureEmbedGlobalTimeLiveSpan("2d"); + public static final SecureEmbedGlobalTimeLiveSpan PAST_ONE_WEEK = + new SecureEmbedGlobalTimeLiveSpan("1w"); + public static final SecureEmbedGlobalTimeLiveSpan PAST_ONE_MONTH = + new SecureEmbedGlobalTimeLiveSpan("1mo"); + public static final SecureEmbedGlobalTimeLiveSpan PAST_THREE_MONTHS = + new SecureEmbedGlobalTimeLiveSpan("3mo"); + + SecureEmbedGlobalTimeLiveSpan(String value) { + super(value, allowedValues); + } + + public static class SecureEmbedGlobalTimeLiveSpanSerializer + extends StdSerializer { + public SecureEmbedGlobalTimeLiveSpanSerializer(Class t) { + super(t); + } + + public SecureEmbedGlobalTimeLiveSpanSerializer() { + this(null); + } + + @Override + public void serialize( + SecureEmbedGlobalTimeLiveSpan value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecureEmbedGlobalTimeLiveSpan fromValue(String value) { + return new SecureEmbedGlobalTimeLiveSpan(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedRequestType.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedRequestType.java new file mode 100644 index 00000000000..679e7d03e01 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedRequestType.java @@ -0,0 +1,57 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** Resource type for secure embed create requests. */ +@JsonSerialize(using = SecureEmbedRequestType.SecureEmbedRequestTypeSerializer.class) +public class SecureEmbedRequestType extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("secure_embed_request")); + + public static final SecureEmbedRequestType SECURE_EMBED_REQUEST = + new SecureEmbedRequestType("secure_embed_request"); + + SecureEmbedRequestType(String value) { + super(value, allowedValues); + } + + public static class SecureEmbedRequestTypeSerializer + extends StdSerializer { + public SecureEmbedRequestTypeSerializer(Class t) { + super(t); + } + + public SecureEmbedRequestTypeSerializer() { + this(null); + } + + @Override + public void serialize( + SecureEmbedRequestType value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecureEmbedRequestType fromValue(String value) { + return new SecureEmbedRequestType(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedSelectableTemplateVariable.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedSelectableTemplateVariable.java new file mode 100644 index 00000000000..9fba75a9f3e --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedSelectableTemplateVariable.java @@ -0,0 +1,239 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +/** A template variable that viewers can modify on the secure embed shared dashboard. */ +@JsonPropertyOrder({ + SecureEmbedSelectableTemplateVariable.JSON_PROPERTY_DEFAULT_VALUES, + SecureEmbedSelectableTemplateVariable.JSON_PROPERTY_NAME, + SecureEmbedSelectableTemplateVariable.JSON_PROPERTY_PREFIX, + SecureEmbedSelectableTemplateVariable.JSON_PROPERTY_VISIBLE_TAGS +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedSelectableTemplateVariable { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DEFAULT_VALUES = "default_values"; + private List defaultValues = null; + + public static final String JSON_PROPERTY_NAME = "name"; + private String name; + + public static final String JSON_PROPERTY_PREFIX = "prefix"; + private String prefix; + + public static final String JSON_PROPERTY_VISIBLE_TAGS = "visible_tags"; + private List visibleTags = null; + + public SecureEmbedSelectableTemplateVariable defaultValues(List defaultValues) { + this.defaultValues = defaultValues; + return this; + } + + public SecureEmbedSelectableTemplateVariable addDefaultValuesItem(String defaultValuesItem) { + if (this.defaultValues == null) { + this.defaultValues = new ArrayList<>(); + } + this.defaultValues.add(defaultValuesItem); + return this; + } + + /** + * Default selected values for the variable. + * + * @return defaultValues + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEFAULT_VALUES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getDefaultValues() { + return defaultValues; + } + + public void setDefaultValues(List defaultValues) { + this.defaultValues = defaultValues; + } + + public SecureEmbedSelectableTemplateVariable name(String name) { + this.name = name; + return this; + } + + /** + * Name of the template variable. Usually matches the prefix unless you want a different display + * name. + * + * @return name + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public SecureEmbedSelectableTemplateVariable prefix(String prefix) { + this.prefix = prefix; + return this; + } + + /** + * Tag prefix for the variable (e.g., environment, service). + * + * @return prefix + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PREFIX) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getPrefix() { + return prefix; + } + + public void setPrefix(String prefix) { + this.prefix = prefix; + } + + public SecureEmbedSelectableTemplateVariable visibleTags(List visibleTags) { + this.visibleTags = visibleTags; + return this; + } + + public SecureEmbedSelectableTemplateVariable addVisibleTagsItem(String visibleTagsItem) { + if (this.visibleTags == null) { + this.visibleTags = new ArrayList<>(); + } + this.visibleTags.add(visibleTagsItem); + return this; + } + + /** + * Restrict which tag values are visible to the viewer. + * + * @return visibleTags + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VISIBLE_TAGS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getVisibleTags() { + return visibleTags; + } + + public void setVisibleTags(List visibleTags) { + this.visibleTags = visibleTags; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedSelectableTemplateVariable + */ + @JsonAnySetter + public SecureEmbedSelectableTemplateVariable putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedSelectableTemplateVariable object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedSelectableTemplateVariable secureEmbedSelectableTemplateVariable = + (SecureEmbedSelectableTemplateVariable) o; + return Objects.equals(this.defaultValues, secureEmbedSelectableTemplateVariable.defaultValues) + && Objects.equals(this.name, secureEmbedSelectableTemplateVariable.name) + && Objects.equals(this.prefix, secureEmbedSelectableTemplateVariable.prefix) + && Objects.equals(this.visibleTags, secureEmbedSelectableTemplateVariable.visibleTags) + && Objects.equals( + this.additionalProperties, secureEmbedSelectableTemplateVariable.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(defaultValues, name, prefix, visibleTags, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedSelectableTemplateVariable {\n"); + sb.append(" defaultValues: ").append(toIndentedString(defaultValues)).append("\n"); + sb.append(" name: ").append(toIndentedString(name)).append("\n"); + sb.append(" prefix: ").append(toIndentedString(prefix)).append("\n"); + sb.append(" visibleTags: ").append(toIndentedString(visibleTags)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedShareType.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedShareType.java new file mode 100644 index 00000000000..6e98a1bb04d --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedShareType.java @@ -0,0 +1,55 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** The type of share. Always secure_embed. */ +@JsonSerialize(using = SecureEmbedShareType.SecureEmbedShareTypeSerializer.class) +public class SecureEmbedShareType extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("secure_embed")); + + public static final SecureEmbedShareType SECURE_EMBED = new SecureEmbedShareType("secure_embed"); + + SecureEmbedShareType(String value) { + super(value, allowedValues); + } + + public static class SecureEmbedShareTypeSerializer extends StdSerializer { + public SecureEmbedShareTypeSerializer(Class t) { + super(t); + } + + public SecureEmbedShareTypeSerializer() { + this(null); + } + + @Override + public void serialize( + SecureEmbedShareType value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecureEmbedShareType fromValue(String value) { + return new SecureEmbedShareType(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedStatus.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedStatus.java new file mode 100644 index 00000000000..9631f1f5c78 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedStatus.java @@ -0,0 +1,58 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** + * The status of the secure embed share. Active means the shared dashboard is available. Paused + * means it is not. + */ +@JsonSerialize(using = SecureEmbedStatus.SecureEmbedStatusSerializer.class) +public class SecureEmbedStatus extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("active", "paused")); + + public static final SecureEmbedStatus ACTIVE = new SecureEmbedStatus("active"); + public static final SecureEmbedStatus PAUSED = new SecureEmbedStatus("paused"); + + SecureEmbedStatus(String value) { + super(value, allowedValues); + } + + public static class SecureEmbedStatusSerializer extends StdSerializer { + public SecureEmbedStatusSerializer(Class t) { + super(t); + } + + public SecureEmbedStatusSerializer() { + this(null); + } + + @Override + public void serialize(SecureEmbedStatus value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecureEmbedStatus fromValue(String value) { + return new SecureEmbedStatus(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequest.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequest.java new file mode 100644 index 00000000000..655e33f0dcf --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequest.java @@ -0,0 +1,146 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Request to update a secure embed shared dashboard. */ +@JsonPropertyOrder({SecureEmbedUpdateRequest.JSON_PROPERTY_DATA}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedUpdateRequest { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DATA = "data"; + private SecureEmbedUpdateRequestData data; + + public SecureEmbedUpdateRequest() {} + + @JsonCreator + public SecureEmbedUpdateRequest( + @JsonProperty(required = true, value = JSON_PROPERTY_DATA) + SecureEmbedUpdateRequestData data) { + this.data = data; + this.unparsed |= data.unparsed; + } + + public SecureEmbedUpdateRequest data(SecureEmbedUpdateRequestData data) { + this.data = data; + this.unparsed |= data.unparsed; + return this; + } + + /** + * Data object for updating a secure embed. + * + * @return data + */ + @JsonProperty(JSON_PROPERTY_DATA) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedUpdateRequestData getData() { + return data; + } + + public void setData(SecureEmbedUpdateRequestData data) { + this.data = data; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedUpdateRequest + */ + @JsonAnySetter + public SecureEmbedUpdateRequest putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedUpdateRequest object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedUpdateRequest secureEmbedUpdateRequest = (SecureEmbedUpdateRequest) o; + return Objects.equals(this.data, secureEmbedUpdateRequest.data) + && Objects.equals(this.additionalProperties, secureEmbedUpdateRequest.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedUpdateRequest {\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequestAttributes.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequestAttributes.java new file mode 100644 index 00000000000..4bc81a06d8f --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequestAttributes.java @@ -0,0 +1,313 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +/** Attributes for updating a secure embed shared dashboard. All fields are optional. */ +@JsonPropertyOrder({ + SecureEmbedUpdateRequestAttributes.JSON_PROPERTY_GLOBAL_TIME, + SecureEmbedUpdateRequestAttributes.JSON_PROPERTY_GLOBAL_TIME_SELECTABLE, + SecureEmbedUpdateRequestAttributes.JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS, + SecureEmbedUpdateRequestAttributes.JSON_PROPERTY_STATUS, + SecureEmbedUpdateRequestAttributes.JSON_PROPERTY_TITLE, + SecureEmbedUpdateRequestAttributes.JSON_PROPERTY_VIEWING_PREFERENCES +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedUpdateRequestAttributes { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_GLOBAL_TIME = "global_time"; + private SecureEmbedGlobalTime globalTime; + + public static final String JSON_PROPERTY_GLOBAL_TIME_SELECTABLE = "global_time_selectable"; + private Boolean globalTimeSelectable; + + public static final String JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS = "selectable_template_vars"; + private List selectableTemplateVars = null; + + public static final String JSON_PROPERTY_STATUS = "status"; + private SecureEmbedStatus status; + + public static final String JSON_PROPERTY_TITLE = "title"; + private String title; + + public static final String JSON_PROPERTY_VIEWING_PREFERENCES = "viewing_preferences"; + private SecureEmbedViewingPreferences viewingPreferences; + + public SecureEmbedUpdateRequestAttributes globalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + this.unparsed |= globalTime.unparsed; + return this; + } + + /** + * Default time range configuration for the secure embed. + * + * @return globalTime + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedGlobalTime getGlobalTime() { + return globalTime; + } + + public void setGlobalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + } + + public SecureEmbedUpdateRequestAttributes globalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + return this; + } + + /** + * Updated time selectability. + * + * @return globalTimeSelectable + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME_SELECTABLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getGlobalTimeSelectable() { + return globalTimeSelectable; + } + + public void setGlobalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + } + + public SecureEmbedUpdateRequestAttributes selectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + for (SecureEmbedSelectableTemplateVariable item : selectableTemplateVars) { + this.unparsed |= item.unparsed; + } + return this; + } + + public SecureEmbedUpdateRequestAttributes addSelectableTemplateVarsItem( + SecureEmbedSelectableTemplateVariable selectableTemplateVarsItem) { + if (this.selectableTemplateVars == null) { + this.selectableTemplateVars = new ArrayList<>(); + } + this.selectableTemplateVars.add(selectableTemplateVarsItem); + this.unparsed |= selectableTemplateVarsItem.unparsed; + return this; + } + + /** + * Updated template variables. + * + * @return selectableTemplateVars + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getSelectableTemplateVars() { + return selectableTemplateVars; + } + + public void setSelectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + } + + public SecureEmbedUpdateRequestAttributes status(SecureEmbedStatus status) { + this.status = status; + this.unparsed |= !status.isValid(); + return this; + } + + /** + * The status of the secure embed share. Active means the shared dashboard is available. Paused + * means it is not. + * + * @return status + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedStatus getStatus() { + return status; + } + + public void setStatus(SecureEmbedStatus status) { + if (!status.isValid()) { + this.unparsed = true; + } + this.status = status; + } + + public SecureEmbedUpdateRequestAttributes title(String title) { + this.title = title; + return this; + } + + /** + * Updated title. + * + * @return title + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TITLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public SecureEmbedUpdateRequestAttributes viewingPreferences( + SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + this.unparsed |= viewingPreferences.unparsed; + return this; + } + + /** + * Display settings for the secure embed shared dashboard. + * + * @return viewingPreferences + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VIEWING_PREFERENCES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedViewingPreferences getViewingPreferences() { + return viewingPreferences; + } + + public void setViewingPreferences(SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedUpdateRequestAttributes + */ + @JsonAnySetter + public SecureEmbedUpdateRequestAttributes putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedUpdateRequestAttributes object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedUpdateRequestAttributes secureEmbedUpdateRequestAttributes = + (SecureEmbedUpdateRequestAttributes) o; + return Objects.equals(this.globalTime, secureEmbedUpdateRequestAttributes.globalTime) + && Objects.equals( + this.globalTimeSelectable, secureEmbedUpdateRequestAttributes.globalTimeSelectable) + && Objects.equals( + this.selectableTemplateVars, secureEmbedUpdateRequestAttributes.selectableTemplateVars) + && Objects.equals(this.status, secureEmbedUpdateRequestAttributes.status) + && Objects.equals(this.title, secureEmbedUpdateRequestAttributes.title) + && Objects.equals( + this.viewingPreferences, secureEmbedUpdateRequestAttributes.viewingPreferences) + && Objects.equals( + this.additionalProperties, secureEmbedUpdateRequestAttributes.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash( + globalTime, + globalTimeSelectable, + selectableTemplateVars, + status, + title, + viewingPreferences, + additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedUpdateRequestAttributes {\n"); + sb.append(" globalTime: ").append(toIndentedString(globalTime)).append("\n"); + sb.append(" globalTimeSelectable: ") + .append(toIndentedString(globalTimeSelectable)) + .append("\n"); + sb.append(" selectableTemplateVars: ") + .append(toIndentedString(selectableTemplateVars)) + .append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" viewingPreferences: ").append(toIndentedString(viewingPreferences)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequestData.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequestData.java new file mode 100644 index 00000000000..8e94f40342e --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequestData.java @@ -0,0 +1,183 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Data object for updating a secure embed. */ +@JsonPropertyOrder({ + SecureEmbedUpdateRequestData.JSON_PROPERTY_ATTRIBUTES, + SecureEmbedUpdateRequestData.JSON_PROPERTY_TYPE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedUpdateRequestData { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_ATTRIBUTES = "attributes"; + private SecureEmbedUpdateRequestAttributes attributes; + + public static final String JSON_PROPERTY_TYPE = "type"; + private SecureEmbedUpdateRequestType type; + + public SecureEmbedUpdateRequestData() {} + + @JsonCreator + public SecureEmbedUpdateRequestData( + @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES) + SecureEmbedUpdateRequestAttributes attributes, + @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) + SecureEmbedUpdateRequestType type) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + this.type = type; + this.unparsed |= !type.isValid(); + } + + public SecureEmbedUpdateRequestData attributes(SecureEmbedUpdateRequestAttributes attributes) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + return this; + } + + /** + * Attributes for updating a secure embed shared dashboard. All fields are optional. + * + * @return attributes + */ + @JsonProperty(JSON_PROPERTY_ATTRIBUTES) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedUpdateRequestAttributes getAttributes() { + return attributes; + } + + public void setAttributes(SecureEmbedUpdateRequestAttributes attributes) { + this.attributes = attributes; + } + + public SecureEmbedUpdateRequestData type(SecureEmbedUpdateRequestType type) { + this.type = type; + this.unparsed |= !type.isValid(); + return this; + } + + /** + * Resource type for secure embed update requests. + * + * @return type + */ + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedUpdateRequestType getType() { + return type; + } + + public void setType(SecureEmbedUpdateRequestType type) { + if (!type.isValid()) { + this.unparsed = true; + } + this.type = type; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedUpdateRequestData + */ + @JsonAnySetter + public SecureEmbedUpdateRequestData putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedUpdateRequestData object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedUpdateRequestData secureEmbedUpdateRequestData = (SecureEmbedUpdateRequestData) o; + return Objects.equals(this.attributes, secureEmbedUpdateRequestData.attributes) + && Objects.equals(this.type, secureEmbedUpdateRequestData.type) + && Objects.equals( + this.additionalProperties, secureEmbedUpdateRequestData.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(attributes, type, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedUpdateRequestData {\n"); + sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequestType.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequestType.java new file mode 100644 index 00000000000..89f83ee60d7 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateRequestType.java @@ -0,0 +1,57 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** Resource type for secure embed update requests. */ +@JsonSerialize(using = SecureEmbedUpdateRequestType.SecureEmbedUpdateRequestTypeSerializer.class) +public class SecureEmbedUpdateRequestType extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("secure_embed_update_request")); + + public static final SecureEmbedUpdateRequestType SECURE_EMBED_UPDATE_REQUEST = + new SecureEmbedUpdateRequestType("secure_embed_update_request"); + + SecureEmbedUpdateRequestType(String value) { + super(value, allowedValues); + } + + public static class SecureEmbedUpdateRequestTypeSerializer + extends StdSerializer { + public SecureEmbedUpdateRequestTypeSerializer(Class t) { + super(t); + } + + public SecureEmbedUpdateRequestTypeSerializer() { + this(null); + } + + @Override + public void serialize( + SecureEmbedUpdateRequestType value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecureEmbedUpdateRequestType fromValue(String value) { + return new SecureEmbedUpdateRequestType(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponse.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponse.java new file mode 100644 index 00000000000..7823061ff4d --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponse.java @@ -0,0 +1,147 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Response for updating a secure embed shared dashboard. */ +@JsonPropertyOrder({SecureEmbedUpdateResponse.JSON_PROPERTY_DATA}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedUpdateResponse { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_DATA = "data"; + private SecureEmbedUpdateResponseData data; + + public SecureEmbedUpdateResponse() {} + + @JsonCreator + public SecureEmbedUpdateResponse( + @JsonProperty(required = true, value = JSON_PROPERTY_DATA) + SecureEmbedUpdateResponseData data) { + this.data = data; + this.unparsed |= data.unparsed; + } + + public SecureEmbedUpdateResponse data(SecureEmbedUpdateResponseData data) { + this.data = data; + this.unparsed |= data.unparsed; + return this; + } + + /** + * Data object for a secure embed update response. + * + * @return data + */ + @JsonProperty(JSON_PROPERTY_DATA) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedUpdateResponseData getData() { + return data; + } + + public void setData(SecureEmbedUpdateResponseData data) { + this.data = data; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedUpdateResponse + */ + @JsonAnySetter + public SecureEmbedUpdateResponse putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedUpdateResponse object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedUpdateResponse secureEmbedUpdateResponse = (SecureEmbedUpdateResponse) o; + return Objects.equals(this.data, secureEmbedUpdateResponse.data) + && Objects.equals( + this.additionalProperties, secureEmbedUpdateResponse.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(data, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedUpdateResponse {\n"); + sb.append(" data: ").append(toIndentedString(data)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponseAttributes.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponseAttributes.java new file mode 100644 index 00000000000..39eac8bb1a8 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponseAttributes.java @@ -0,0 +1,460 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; + +/** Attributes of an updated secure embed shared dashboard. */ +@JsonPropertyOrder({ + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_CREATED_AT, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_CREDENTIAL_SUFFIX, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_DASHBOARD_ID, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_GLOBAL_TIME, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_GLOBAL_TIME_SELECTABLE, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_ID, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_SHARE_TYPE, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_STATUS, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_TITLE, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_TOKEN, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_URL, + SecureEmbedUpdateResponseAttributes.JSON_PROPERTY_VIEWING_PREFERENCES +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedUpdateResponseAttributes { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_CREATED_AT = "created_at"; + private String createdAt; + + public static final String JSON_PROPERTY_CREDENTIAL_SUFFIX = "credential_suffix"; + private String credentialSuffix; + + public static final String JSON_PROPERTY_DASHBOARD_ID = "dashboard_id"; + private String dashboardId; + + public static final String JSON_PROPERTY_GLOBAL_TIME = "global_time"; + private SecureEmbedGlobalTime globalTime; + + public static final String JSON_PROPERTY_GLOBAL_TIME_SELECTABLE = "global_time_selectable"; + private Boolean globalTimeSelectable; + + public static final String JSON_PROPERTY_ID = "id"; + private String id; + + public static final String JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS = "selectable_template_vars"; + private List selectableTemplateVars = null; + + public static final String JSON_PROPERTY_SHARE_TYPE = "share_type"; + private SecureEmbedShareType shareType; + + public static final String JSON_PROPERTY_STATUS = "status"; + private SecureEmbedStatus status; + + public static final String JSON_PROPERTY_TITLE = "title"; + private String title; + + public static final String JSON_PROPERTY_TOKEN = "token"; + private String token; + + public static final String JSON_PROPERTY_URL = "url"; + private String url; + + public static final String JSON_PROPERTY_VIEWING_PREFERENCES = "viewing_preferences"; + private SecureEmbedViewingPreferences viewingPreferences; + + /** + * Creation timestamp. + * + * @return createdAt + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CREATED_AT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCreatedAt() { + return createdAt; + } + + /** + * Last 4 characters of the credential. Defaults to 0000 if unavailable. + * + * @return credentialSuffix + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CREDENTIAL_SUFFIX) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCredentialSuffix() { + return credentialSuffix; + } + + /** + * The source dashboard ID. + * + * @return dashboardId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DASHBOARD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDashboardId() { + return dashboardId; + } + + public SecureEmbedUpdateResponseAttributes globalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + this.unparsed |= globalTime.unparsed; + return this; + } + + /** + * Default time range configuration for the secure embed. + * + * @return globalTime + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedGlobalTime getGlobalTime() { + return globalTime; + } + + public void setGlobalTime(SecureEmbedGlobalTime globalTime) { + this.globalTime = globalTime; + } + + public SecureEmbedUpdateResponseAttributes globalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + return this; + } + + /** + * Whether time range is viewer-selectable. + * + * @return globalTimeSelectable + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GLOBAL_TIME_SELECTABLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getGlobalTimeSelectable() { + return globalTimeSelectable; + } + + public void setGlobalTimeSelectable(Boolean globalTimeSelectable) { + this.globalTimeSelectable = globalTimeSelectable; + } + + /** + * Internal share ID. + * + * @return id + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getId() { + return id; + } + + public SecureEmbedUpdateResponseAttributes selectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + for (SecureEmbedSelectableTemplateVariable item : selectableTemplateVars) { + this.unparsed |= item.unparsed; + } + return this; + } + + public SecureEmbedUpdateResponseAttributes addSelectableTemplateVarsItem( + SecureEmbedSelectableTemplateVariable selectableTemplateVarsItem) { + if (this.selectableTemplateVars == null) { + this.selectableTemplateVars = new ArrayList<>(); + } + this.selectableTemplateVars.add(selectableTemplateVarsItem); + this.unparsed |= selectableTemplateVarsItem.unparsed; + return this; + } + + /** + * Template variables with their configuration. + * + * @return selectableTemplateVars + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SELECTABLE_TEMPLATE_VARS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getSelectableTemplateVars() { + return selectableTemplateVars; + } + + public void setSelectableTemplateVars( + List selectableTemplateVars) { + this.selectableTemplateVars = selectableTemplateVars; + } + + public SecureEmbedUpdateResponseAttributes shareType(SecureEmbedShareType shareType) { + this.shareType = shareType; + this.unparsed |= !shareType.isValid(); + return this; + } + + /** + * The type of share. Always secure_embed. + * + * @return shareType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SHARE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedShareType getShareType() { + return shareType; + } + + public void setShareType(SecureEmbedShareType shareType) { + if (!shareType.isValid()) { + this.unparsed = true; + } + this.shareType = shareType; + } + + public SecureEmbedUpdateResponseAttributes status(SecureEmbedStatus status) { + this.status = status; + this.unparsed |= !status.isValid(); + return this; + } + + /** + * The status of the secure embed share. Active means the shared dashboard is available. Paused + * means it is not. + * + * @return status + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedStatus getStatus() { + return status; + } + + public void setStatus(SecureEmbedStatus status) { + if (!status.isValid()) { + this.unparsed = true; + } + this.status = status; + } + + public SecureEmbedUpdateResponseAttributes title(String title) { + this.title = title; + return this; + } + + /** + * Display title. + * + * @return title + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TITLE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + /** + * Public share token. + * + * @return token + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TOKEN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getToken() { + return token; + } + + /** + * CDN URL for the shared dashboard. + * + * @return url + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_URL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getUrl() { + return url; + } + + public SecureEmbedUpdateResponseAttributes viewingPreferences( + SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + this.unparsed |= viewingPreferences.unparsed; + return this; + } + + /** + * Display settings for the secure embed shared dashboard. + * + * @return viewingPreferences + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VIEWING_PREFERENCES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedViewingPreferences getViewingPreferences() { + return viewingPreferences; + } + + public void setViewingPreferences(SecureEmbedViewingPreferences viewingPreferences) { + this.viewingPreferences = viewingPreferences; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedUpdateResponseAttributes + */ + @JsonAnySetter + public SecureEmbedUpdateResponseAttributes putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedUpdateResponseAttributes object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedUpdateResponseAttributes secureEmbedUpdateResponseAttributes = + (SecureEmbedUpdateResponseAttributes) o; + return Objects.equals(this.createdAt, secureEmbedUpdateResponseAttributes.createdAt) + && Objects.equals( + this.credentialSuffix, secureEmbedUpdateResponseAttributes.credentialSuffix) + && Objects.equals(this.dashboardId, secureEmbedUpdateResponseAttributes.dashboardId) + && Objects.equals(this.globalTime, secureEmbedUpdateResponseAttributes.globalTime) + && Objects.equals( + this.globalTimeSelectable, secureEmbedUpdateResponseAttributes.globalTimeSelectable) + && Objects.equals(this.id, secureEmbedUpdateResponseAttributes.id) + && Objects.equals( + this.selectableTemplateVars, secureEmbedUpdateResponseAttributes.selectableTemplateVars) + && Objects.equals(this.shareType, secureEmbedUpdateResponseAttributes.shareType) + && Objects.equals(this.status, secureEmbedUpdateResponseAttributes.status) + && Objects.equals(this.title, secureEmbedUpdateResponseAttributes.title) + && Objects.equals(this.token, secureEmbedUpdateResponseAttributes.token) + && Objects.equals(this.url, secureEmbedUpdateResponseAttributes.url) + && Objects.equals( + this.viewingPreferences, secureEmbedUpdateResponseAttributes.viewingPreferences) + && Objects.equals( + this.additionalProperties, secureEmbedUpdateResponseAttributes.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash( + createdAt, + credentialSuffix, + dashboardId, + globalTime, + globalTimeSelectable, + id, + selectableTemplateVars, + shareType, + status, + title, + token, + url, + viewingPreferences, + additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedUpdateResponseAttributes {\n"); + sb.append(" createdAt: ").append(toIndentedString(createdAt)).append("\n"); + sb.append(" credentialSuffix: ").append(toIndentedString(credentialSuffix)).append("\n"); + sb.append(" dashboardId: ").append(toIndentedString(dashboardId)).append("\n"); + sb.append(" globalTime: ").append(toIndentedString(globalTime)).append("\n"); + sb.append(" globalTimeSelectable: ") + .append(toIndentedString(globalTimeSelectable)) + .append("\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" selectableTemplateVars: ") + .append(toIndentedString(selectableTemplateVars)) + .append("\n"); + sb.append(" shareType: ").append(toIndentedString(shareType)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" token: ").append(toIndentedString(token)).append("\n"); + sb.append(" url: ").append(toIndentedString(url)).append("\n"); + sb.append(" viewingPreferences: ").append(toIndentedString(viewingPreferences)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponseData.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponseData.java new file mode 100644 index 00000000000..6dc31cc46e9 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponseData.java @@ -0,0 +1,211 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Data object for a secure embed update response. */ +@JsonPropertyOrder({ + SecureEmbedUpdateResponseData.JSON_PROPERTY_ATTRIBUTES, + SecureEmbedUpdateResponseData.JSON_PROPERTY_ID, + SecureEmbedUpdateResponseData.JSON_PROPERTY_TYPE +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedUpdateResponseData { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_ATTRIBUTES = "attributes"; + private SecureEmbedUpdateResponseAttributes attributes; + + public static final String JSON_PROPERTY_ID = "id"; + private String id; + + public static final String JSON_PROPERTY_TYPE = "type"; + private SecureEmbedUpdateResponseType type; + + public SecureEmbedUpdateResponseData() {} + + @JsonCreator + public SecureEmbedUpdateResponseData( + @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES) + SecureEmbedUpdateResponseAttributes attributes, + @JsonProperty(required = true, value = JSON_PROPERTY_ID) String id, + @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) + SecureEmbedUpdateResponseType type) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + this.id = id; + this.type = type; + this.unparsed |= !type.isValid(); + } + + public SecureEmbedUpdateResponseData attributes(SecureEmbedUpdateResponseAttributes attributes) { + this.attributes = attributes; + this.unparsed |= attributes.unparsed; + return this; + } + + /** + * Attributes of an updated secure embed shared dashboard. + * + * @return attributes + */ + @JsonProperty(JSON_PROPERTY_ATTRIBUTES) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedUpdateResponseAttributes getAttributes() { + return attributes; + } + + public void setAttributes(SecureEmbedUpdateResponseAttributes attributes) { + this.attributes = attributes; + } + + public SecureEmbedUpdateResponseData id(String id) { + this.id = id; + return this; + } + + /** + * Internal share ID. + * + * @return id + */ + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public SecureEmbedUpdateResponseData type(SecureEmbedUpdateResponseType type) { + this.type = type; + this.unparsed |= !type.isValid(); + return this; + } + + /** + * Resource type for secure embed update responses. + * + * @return type + */ + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SecureEmbedUpdateResponseType getType() { + return type; + } + + public void setType(SecureEmbedUpdateResponseType type) { + if (!type.isValid()) { + this.unparsed = true; + } + this.type = type; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedUpdateResponseData + */ + @JsonAnySetter + public SecureEmbedUpdateResponseData putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedUpdateResponseData object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedUpdateResponseData secureEmbedUpdateResponseData = (SecureEmbedUpdateResponseData) o; + return Objects.equals(this.attributes, secureEmbedUpdateResponseData.attributes) + && Objects.equals(this.id, secureEmbedUpdateResponseData.id) + && Objects.equals(this.type, secureEmbedUpdateResponseData.type) + && Objects.equals( + this.additionalProperties, secureEmbedUpdateResponseData.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(attributes, id, type, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedUpdateResponseData {\n"); + sb.append(" attributes: ").append(toIndentedString(attributes)).append("\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponseType.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponseType.java new file mode 100644 index 00000000000..cc32f045e4c --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedUpdateResponseType.java @@ -0,0 +1,57 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** Resource type for secure embed update responses. */ +@JsonSerialize(using = SecureEmbedUpdateResponseType.SecureEmbedUpdateResponseTypeSerializer.class) +public class SecureEmbedUpdateResponseType extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("secure_embed_update_response")); + + public static final SecureEmbedUpdateResponseType SECURE_EMBED_UPDATE_RESPONSE = + new SecureEmbedUpdateResponseType("secure_embed_update_response"); + + SecureEmbedUpdateResponseType(String value) { + super(value, allowedValues); + } + + public static class SecureEmbedUpdateResponseTypeSerializer + extends StdSerializer { + public SecureEmbedUpdateResponseTypeSerializer(Class t) { + super(t); + } + + public SecureEmbedUpdateResponseTypeSerializer() { + this(null); + } + + @Override + public void serialize( + SecureEmbedUpdateResponseType value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecureEmbedUpdateResponseType fromValue(String value) { + return new SecureEmbedUpdateResponseType(value); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedViewingPreferences.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedViewingPreferences.java new file mode 100644 index 00000000000..1034af49dfb --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedViewingPreferences.java @@ -0,0 +1,170 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; + +/** Display settings for the secure embed shared dashboard. */ +@JsonPropertyOrder({ + SecureEmbedViewingPreferences.JSON_PROPERTY_HIGH_DENSITY, + SecureEmbedViewingPreferences.JSON_PROPERTY_THEME +}) +@jakarta.annotation.Generated( + value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator") +public class SecureEmbedViewingPreferences { + @JsonIgnore public boolean unparsed = false; + public static final String JSON_PROPERTY_HIGH_DENSITY = "high_density"; + private Boolean highDensity; + + public static final String JSON_PROPERTY_THEME = "theme"; + private SecureEmbedViewingPreferencesTheme theme; + + public SecureEmbedViewingPreferences highDensity(Boolean highDensity) { + this.highDensity = highDensity; + return this; + } + + /** + * Whether widgets are displayed in high density mode. + * + * @return highDensity + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_HIGH_DENSITY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getHighDensity() { + return highDensity; + } + + public void setHighDensity(Boolean highDensity) { + this.highDensity = highDensity; + } + + public SecureEmbedViewingPreferences theme(SecureEmbedViewingPreferencesTheme theme) { + this.theme = theme; + this.unparsed |= !theme.isValid(); + return this; + } + + /** + * The theme of the shared dashboard view. system follows the viewer's system + * default. + * + * @return theme + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_THEME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public SecureEmbedViewingPreferencesTheme getTheme() { + return theme; + } + + public void setTheme(SecureEmbedViewingPreferencesTheme theme) { + if (!theme.isValid()) { + this.unparsed = true; + } + this.theme = theme; + } + + /** + * A container for additional, undeclared properties. This is a holder for any undeclared + * properties as specified with the 'additionalProperties' keyword in the OAS document. + */ + private Map additionalProperties; + + /** + * Set the additional (undeclared) property with the specified name and value. If the property + * does not already exist, create it otherwise replace it. + * + * @param key The arbitrary key to set + * @param value The associated value + * @return SecureEmbedViewingPreferences + */ + @JsonAnySetter + public SecureEmbedViewingPreferences putAdditionalProperty(String key, Object value) { + if (this.additionalProperties == null) { + this.additionalProperties = new HashMap(); + } + this.additionalProperties.put(key, value); + return this; + } + + /** + * Return the additional (undeclared) property. + * + * @return The additional properties + */ + @JsonAnyGetter + public Map getAdditionalProperties() { + return additionalProperties; + } + + /** + * Return the additional (undeclared) property with the specified name. + * + * @param key The arbitrary key to get + * @return The specific additional property for the given key + */ + public Object getAdditionalProperty(String key) { + if (this.additionalProperties == null) { + return null; + } + return this.additionalProperties.get(key); + } + + /** Return true if this SecureEmbedViewingPreferences object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SecureEmbedViewingPreferences secureEmbedViewingPreferences = (SecureEmbedViewingPreferences) o; + return Objects.equals(this.highDensity, secureEmbedViewingPreferences.highDensity) + && Objects.equals(this.theme, secureEmbedViewingPreferences.theme) + && Objects.equals( + this.additionalProperties, secureEmbedViewingPreferences.additionalProperties); + } + + @Override + public int hashCode() { + return Objects.hash(highDensity, theme, additionalProperties); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SecureEmbedViewingPreferences {\n"); + sb.append(" highDensity: ").append(toIndentedString(highDensity)).append("\n"); + sb.append(" theme: ").append(toIndentedString(theme)).append("\n"); + sb.append(" additionalProperties: ") + .append(toIndentedString(additionalProperties)) + .append("\n"); + sb.append('}'); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } +} diff --git a/src/main/java/com/datadog/api/client/v2/model/SecureEmbedViewingPreferencesTheme.java b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedViewingPreferencesTheme.java new file mode 100644 index 00000000000..68ee0f2c703 --- /dev/null +++ b/src/main/java/com/datadog/api/client/v2/model/SecureEmbedViewingPreferencesTheme.java @@ -0,0 +1,65 @@ +/* + * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License. + * This product includes software developed at Datadog (https://www.datadoghq.com/). + * Copyright 2019-Present Datadog, Inc. + */ + +package com.datadog.api.client.v2.model; + +import com.datadog.api.client.ModelEnum; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import java.io.IOException; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Set; + +/** + * The theme of the shared dashboard view. system follows the viewer's system default. + */ +@JsonSerialize( + using = SecureEmbedViewingPreferencesTheme.SecureEmbedViewingPreferencesThemeSerializer.class) +public class SecureEmbedViewingPreferencesTheme extends ModelEnum { + + private static final Set allowedValues = + new HashSet(Arrays.asList("system", "light", "dark")); + + public static final SecureEmbedViewingPreferencesTheme SYSTEM = + new SecureEmbedViewingPreferencesTheme("system"); + public static final SecureEmbedViewingPreferencesTheme LIGHT = + new SecureEmbedViewingPreferencesTheme("light"); + public static final SecureEmbedViewingPreferencesTheme DARK = + new SecureEmbedViewingPreferencesTheme("dark"); + + SecureEmbedViewingPreferencesTheme(String value) { + super(value, allowedValues); + } + + public static class SecureEmbedViewingPreferencesThemeSerializer + extends StdSerializer { + public SecureEmbedViewingPreferencesThemeSerializer( + Class t) { + super(t); + } + + public SecureEmbedViewingPreferencesThemeSerializer() { + this(null); + } + + @Override + public void serialize( + SecureEmbedViewingPreferencesTheme value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.value); + } + } + + @JsonCreator + public static SecureEmbedViewingPreferencesTheme fromValue(String value) { + return new SecureEmbedViewingPreferencesTheme(value); + } +} diff --git a/src/test/resources/cassettes/features/v1/Create_a_user_returns_User_created_response_test.json b/src/test/resources/cassettes/features/v1/Create_a_user_returns_User_created_response_test.json index b676df880e6..42def371a51 100644 --- a/src/test/resources/cassettes/features/v1/Create_a_user_returns_User_created_response_test.json +++ b/src/test/resources/cassettes/features/v1/Create_a_user_returns_User_created_response_test.json @@ -53,6 +53,6 @@ "timeToLive": { "unlimited": true }, - "id": "af617072-2860-ba27-e045-b00c8baf0188" + "id": "af617072-2860-ba27-e045-b00c8baf0187" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v1/Create_a_user_returns_null_access_role.json b/src/test/resources/cassettes/features/v1/Create_a_user_returns_null_access_role.json index e5b3fe6bcf6..5a17eb5f03a 100644 --- a/src/test/resources/cassettes/features/v1/Create_a_user_returns_null_access_role.json +++ b/src/test/resources/cassettes/features/v1/Create_a_user_returns_null_access_role.json @@ -53,6 +53,6 @@ "timeToLive": { "unlimited": true }, - "id": "af617072-2860-ba27-e045-b00c8baf0187" + "id": "af617072-2860-ba27-e045-b00c8baf0188" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v1/Get_all_hosts_with_metadata_deserializes_successfully.json b/src/test/resources/cassettes/features/v1/Get_all_hosts_with_metadata_deserializes_successfully.json index dbf89c929d7..0b1cdf6a6a8 100644 --- a/src/test/resources/cassettes/features/v1/Get_all_hosts_with_metadata_deserializes_successfully.json +++ b/src/test/resources/cassettes/features/v1/Get_all_hosts_with_metadata_deserializes_successfully.json @@ -28,6 +28,6 @@ "timeToLive": { "unlimited": true }, - "id": "d5bade64-6ebb-4f4d-903d-8069b52bb31d" + "id": "d5bade64-6ebb-4f4d-903d-8069b52bb31e" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v1/Get_all_hosts_with_metadata_for_your_organization_returns_OK_response.json b/src/test/resources/cassettes/features/v1/Get_all_hosts_with_metadata_for_your_organization_returns_OK_response.json index e94edfb7099..91c8275f382 100644 --- a/src/test/resources/cassettes/features/v1/Get_all_hosts_with_metadata_for_your_organization_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v1/Get_all_hosts_with_metadata_for_your_organization_returns_OK_response.json @@ -28,6 +28,6 @@ "timeToLive": { "unlimited": true }, - "id": "d5bade64-6ebb-4f4d-903d-8069b52bb31e" + "id": "d5bade64-6ebb-4f4d-903d-8069b52bb31d" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Create_account_config_returns_Conflict_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Create_account_config_returns_Conflict_response.json index bb3f69aef75..d603e22c7bf 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Create_account_config_returns_Conflict_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Create_account_config_returns_Conflict_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9ee9" + "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eeb" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_Bad_Request_response.json index c82b6c27f29..a42ef29bfae 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_Bad_Request_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "73fd406e-d686-10bd-50ee-83f2c499e8a9" + "id": "73fd406e-d686-10bd-50ee-83f2c499e8a8" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_No_Content_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_No_Content_response.json index 0d38d7d0a6a..20187b03f7f 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_No_Content_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_No_Content_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eeb" + "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eea" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_Not_Found_response.json index 7c4ece93315..490992cbf88 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Delete_account_config_returns_Not_Found_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eed" + "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eee" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Generate_new_external_ID_returns_AWS_External_ID_object_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Generate_new_external_ID_returns_AWS_External_ID_object_response.json index efb480e06b4..a0731b5ad4a 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Generate_new_external_ID_returns_AWS_External_ID_object_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Generate_new_external_ID_returns_AWS_External_ID_object_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "a3ebb722-60eb-fa89-589a-ff3630e3a2cc" + "id": "a3ebb722-60eb-fa89-589a-ff3630e3a2cd" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_AWS_Account_object_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_AWS_Account_object_response.json index f2248371931..70fc4d3589b 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_AWS_Account_object_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_AWS_Account_object_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eee" + "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eec" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_Bad_Request_response.json index 6352d5f0102..87cb96a7640 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_Bad_Request_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "3d4d0603-9fed-1cc5-8004-086b9b6ef691" + "id": "3d4d0603-9fed-1cc5-8004-086b9b6ef690" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_Not_Found_response.json index 55368f4ae1c..7e5c7b1234d 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Get_account_config_returns_Not_Found_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "9b33b83c-c8bb-714f-cf71-33ab2f3af9d4" + "id": "9b33b83c-c8bb-714f-cf71-33ab2f3af9d3" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_List_available_namespaces_returns_AWS_Namespaces_List_object_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_List_available_namespaces_returns_AWS_Namespaces_List_object_response.json index 7711ea26b7b..994e56ed9eb 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_List_available_namespaces_returns_AWS_Namespaces_List_object_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_List_available_namespaces_returns_AWS_Namespaces_List_object_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "d0ec7736-ef6c-d071-3390-4a5c3a301d0e" + "id": "d0ec7736-ef6c-d071-3390-4a5c3a301d11" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_List_log_services_returns_AWS_Logs_Services_List_object_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_List_log_services_returns_AWS_Logs_Services_List_object_response.json index e05cab1201f..266b281e690 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_List_log_services_returns_AWS_Logs_Services_List_object_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_List_log_services_returns_AWS_Logs_Services_List_object_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "03c3c0d9-a62f-5ac6-398b-e22a05d14d7b" + "id": "03c3c0d9-a62f-5ac6-398b-e22a05d14d7a" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_List_namespaces_returns_AWS_Namespaces_List_object_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_List_namespaces_returns_AWS_Namespaces_List_object_response.json index 994e56ed9eb..7711ea26b7b 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_List_namespaces_returns_AWS_Namespaces_List_object_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_List_namespaces_returns_AWS_Namespaces_List_object_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "d0ec7736-ef6c-d071-3390-4a5c3a301d11" + "id": "d0ec7736-ef6c-d071-3390-4a5c3a301d0e" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Patch_account_config_returns_AWS_Account_object_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Patch_account_config_returns_AWS_Account_object_response.json index 1080a831ec7..0b391d3aa3a 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Patch_account_config_returns_AWS_Account_object_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Patch_account_config_returns_AWS_Account_object_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eea" + "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eed" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/AWS_Integration_Patch_account_config_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/AWS_Integration_Patch_account_config_returns_Bad_Request_response.json index a1e750ca5ae..77aa5204b9c 100644 --- a/src/test/resources/cassettes/features/v2/AWS_Integration_Patch_account_config_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/AWS_Integration_Patch_account_config_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9eec" + "id": "194b15fb-fcae-9b9a-e1a7-0daa19dc9ee9" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Archive_case_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Archive_case_returns_Bad_Request_response.json index 47cc972674a..2be18c73072 100644 --- a/src/test/resources/cassettes/features/v2/Archive_case_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Archive_case_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f0" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f1" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Archive_case_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Archive_case_returns_OK_response.json index 772f35c2d34..adda0ec49d5 100644 --- a/src/test/resources/cassettes/features/v2/Archive_case_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Archive_case_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f7" + "id": "79babc38-7a70-5347-c8a6-73b0e70145ed" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Assign_case_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Assign_case_returns_Bad_Request_response.json index 7b688758eac..4323550909c 100644 --- a/src/test/resources/cassettes/features/v2/Assign_case_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Assign_case_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145fe" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f6" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Assign_case_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Assign_case_returns_OK_response.json index 2831c66a09c..c791186e6fd 100644 --- a/src/test/resources/cassettes/features/v2/Assign_case_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Assign_case_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e7014600" + "id": "79babc38-7a70-5347-c8a6-73b0e70145fd" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Bulk_delete_datastore_items_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Bulk_delete_datastore_items_returns_OK_response.json index b8c9cddb379..d39fee8a337 100644 --- a/src/test/resources/cassettes/features/v2/Bulk_delete_datastore_items_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Bulk_delete_datastore_items_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d2e" + "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d2d" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Bulk_write_datastore_items_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Bulk_write_datastore_items_returns_Bad_Request_response.json index 95cd953a629..834de428629 100644 --- a/src/test/resources/cassettes/features/v2/Bulk_write_datastore_items_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Bulk_write_datastore_items_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d2c" + "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d34" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Bulk_write_datastore_items_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Bulk_write_datastore_items_returns_OK_response.json index 05a3826cfbf..b7e39e620cf 100644 --- a/src/test/resources/cassettes/features/v2/Bulk_write_datastore_items_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Bulk_write_datastore_items_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d34" + "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d2e" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Cancels_a_data_deletion_request_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Cancels_a_data_deletion_request_returns_OK_response.json index 0b99dd1bd72..94ffd01c024 100644 --- a/src/test/resources/cassettes/features/v2/Cancels_a_data_deletion_request_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Cancels_a_data_deletion_request_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "516e2b97-25f6-b08c-4d4a-1da22948b32e" + "id": "516e2b97-25f6-b08c-4d4a-1da22948b330" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Comment_case_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Comment_case_returns_Bad_Request_response.json index 1eaa8cc3077..9b1a448d846 100644 --- a/src/test/resources/cassettes/features/v2/Comment_case_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Comment_case_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145ee" + "id": "79babc38-7a70-5347-c8a6-73b0e70145fe" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Comment_case_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Comment_case_returns_OK_response.json index 58c1764cc21..43ce65998fe 100644 --- a/src/test/resources/cassettes/features/v2/Comment_case_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Comment_case_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f3" + "id": "79babc38-7a70-5347-c8a6-73b0e70145ee" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_AWS_CCM_config_returns_AWS_CCM_Config_object_response.json b/src/test/resources/cassettes/features/v2/Create_AWS_CCM_config_returns_AWS_CCM_Config_object_response.json index 5ba8e36023e..7e70b6729df 100644 --- a/src/test/resources/cassettes/features/v2/Create_AWS_CCM_config_returns_AWS_CCM_Config_object_response.json +++ b/src/test/resources/cassettes/features/v2/Create_AWS_CCM_config_returns_AWS_CCM_Config_object_response.json @@ -18,7 +18,7 @@ "timeToLive": { "unlimited": true }, - "id": "b2bcb392-2d71-be89-5578-460535c541b0" + "id": "b2bcb392-2d71-be89-5578-460535c541af" }, { "httpRequest": { @@ -48,7 +48,7 @@ "timeToLive": { "unlimited": true }, - "id": "58d1c8d5-bb10-59b9-aa85-8871f8479221" + "id": "58d1c8d5-bb10-59b9-aa85-8871f847921f" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_AWS_CCM_config_returns_Conflict_response.json b/src/test/resources/cassettes/features/v2/Create_AWS_CCM_config_returns_Conflict_response.json index a885ab105be..563401356dc 100644 --- a/src/test/resources/cassettes/features/v2/Create_AWS_CCM_config_returns_Conflict_response.json +++ b/src/test/resources/cassettes/features/v2/Create_AWS_CCM_config_returns_Conflict_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "58d1c8d5-bb10-59b9-aa85-8871f847921f" + "id": "58d1c8d5-bb10-59b9-aa85-8871f8479220" }, { "httpRequest": { @@ -57,6 +57,6 @@ "timeToLive": { "unlimited": true }, - "id": "58d1c8d5-bb10-59b9-aa85-8871f8479220" + "id": "58d1c8d5-bb10-59b9-aa85-8871f8479221" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Create_AWS_on_demand_task_returns_AWS_on_demand_task_created_successfully_response.json b/src/test/resources/cassettes/features/v2/Create_AWS_on_demand_task_returns_AWS_on_demand_task_created_successfully_response.json index ac76e0bad7e..a4926516be0 100644 --- a/src/test/resources/cassettes/features/v2/Create_AWS_on_demand_task_returns_AWS_on_demand_task_created_successfully_response.json +++ b/src/test/resources/cassettes/features/v2/Create_AWS_on_demand_task_returns_AWS_on_demand_task_created_successfully_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "22e692ec-0118-56ae-6a7b-e829dfef8419" + "id": "22e692ec-0118-56ae-6a7b-e829dfef841a" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Create_AWS_on_demand_task_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Create_AWS_on_demand_task_returns_Bad_Request_response.json index ea94cd9866e..91451dfea49 100644 --- a/src/test/resources/cassettes/features/v2/Create_AWS_on_demand_task_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Create_AWS_on_demand_task_returns_Bad_Request_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "ddc95453-e78c-c1f7-f3a9-441d29765f2e" + "id": "ddc95453-e78c-c1f7-f3a9-441d29765f2f" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Create_AWS_scan_options_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Create_AWS_scan_options_returns_Bad_Request_response.json index fb2bbc86068..76a4e155ad0 100644 --- a/src/test/resources/cassettes/features/v2/Create_AWS_scan_options_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Create_AWS_scan_options_returns_Bad_Request_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "e2891484-5e4d-166a-c2fe-dce7aead5f70" + "id": "e2891484-5e4d-166a-c2fe-dce7aead5f71" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Create_AWS_scan_options_returns_Conflict_response.json b/src/test/resources/cassettes/features/v2/Create_AWS_scan_options_returns_Conflict_response.json index a8a5126d14c..42fd2567c77 100644 --- a/src/test/resources/cassettes/features/v2/Create_AWS_scan_options_returns_Conflict_response.json +++ b/src/test/resources/cassettes/features/v2/Create_AWS_scan_options_returns_Conflict_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "f65bb980-57f2-5b92-482f-54c273127343" + "id": "f65bb980-57f2-5b92-482f-54c273127342" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Create_App_returns_Created_response.json b/src/test/resources/cassettes/features/v2/Create_App_returns_Created_response.json index d78d4e863c8..ef26cd89a47 100644 --- a/src/test/resources/cassettes/features/v2/Create_App_returns_Created_response.json +++ b/src/test/resources/cassettes/features/v2/Create_App_returns_Created_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "c782b1f3-1b03-d50f-8fcd-12e51226c512" + "id": "c782b1f3-1b03-d50f-8fcd-12e51226c511" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_GCP_scan_options_returns_Conflict_response.json b/src/test/resources/cassettes/features/v2/Create_GCP_scan_options_returns_Conflict_response.json index 82770941cf9..cd295ed246c 100644 --- a/src/test/resources/cassettes/features/v2/Create_GCP_scan_options_returns_Conflict_response.json +++ b/src/test/resources/cassettes/features/v2/Create_GCP_scan_options_returns_Conflict_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "e60f404e-4f1f-e719-af9d-8d61a2bd95bf" + "id": "e60f404e-4f1f-e719-af9d-8d61a2bd95be" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Create_Org_Connection_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Create_Org_Connection_returns_OK_response.json index c6e2a2c6b52..09c3eea3a79 100644 --- a/src/test/resources/cassettes/features/v2/Create_Org_Connection_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Create_Org_Connection_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "76efebf6-d204-c8e8-5a8c-bd11c0a4ae45" + "id": "76efebf6-d204-c8e8-5a8c-bd11c0a4ae46" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_returns_Bad_Request_response.json index 5f01c6d4bb3..d6ef2b55a53 100644 --- a/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_returns_Bad_Request_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e82" + "id": "01611a93-5e74-0630-3c51-f707c3b51e79" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa4" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238a9e" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_returns_OK_response.json index 0b345fdd95d..02cf1734a56 100644 --- a/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_returns_OK_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e79" + "id": "01611a93-5e74-0630-3c51-f707c3b51e7e" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238a9e" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa2" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_with_should_save_match_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_with_should_save_match_returns_OK_response.json index 542b97bd388..1fec75541c7 100644 --- a/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_with_should_save_match_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Create_Scanning_Rule_with_should_save_match_returns_OK_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e80" + "id": "01611a93-5e74-0630-3c51-f707c3b51e7f" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa2" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa3" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_a_custom_framework_returns_Conflict_response.json b/src/test/resources/cassettes/features/v2/Create_a_custom_framework_returns_Conflict_response.json index 3af6b797aec..33f84691420 100644 --- a/src/test/resources/cassettes/features/v2/Create_a_custom_framework_returns_Conflict_response.json +++ b/src/test/resources/cassettes/features/v2/Create_a_custom_framework_returns_Conflict_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "13fe9685-b072-5fe0-c841-4499a9e71c75" + "id": "13fe9685-b072-5fe0-c841-4499a9e71c72" }, { "httpRequest": { @@ -57,7 +57,7 @@ "timeToLive": { "unlimited": true }, - "id": "13fe9685-b072-5fe0-c841-4499a9e71c76" + "id": "13fe9685-b072-5fe0-c841-4499a9e71c73" }, { "httpRequest": { @@ -83,6 +83,6 @@ "timeToLive": { "unlimited": true }, - "id": "e535722a-99e3-30cf-49f7-2d093bd78b3f" + "id": "e535722a-99e3-30cf-49f7-2d093bd78b3b" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Create_a_custom_framework_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Create_a_custom_framework_returns_OK_response.json index 09067379e94..5b2bdee0951 100644 --- a/src/test/resources/cassettes/features/v2/Create_a_custom_framework_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Create_a_custom_framework_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "13fe9685-b072-5fe0-c841-4499a9e71c71" + "id": "13fe9685-b072-5fe0-c841-4499a9e71c76" }, { "httpRequest": { @@ -53,6 +53,6 @@ "timeToLive": { "unlimited": true }, - "id": "e535722a-99e3-30cf-49f7-2d093bd78b3a" + "id": "e535722a-99e3-30cf-49f7-2d093bd78b3f" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Create_a_dataset_returns_Conflict_response.json b/src/test/resources/cassettes/features/v2/Create_a_dataset_returns_Conflict_response.json index 75586923584..f98e1c3550d 100644 --- a/src/test/resources/cassettes/features/v2/Create_a_dataset_returns_Conflict_response.json +++ b/src/test/resources/cassettes/features/v2/Create_a_dataset_returns_Conflict_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "32c558cf-4a2e-f914-f443-ab94000addcb" + "id": "32c558cf-4a2e-f914-f443-ab94000addcc" }, { "httpRequest": { @@ -57,7 +57,7 @@ "timeToLive": { "unlimited": true }, - "id": "32c558cf-4a2e-f914-f443-ab94000addcc" + "id": "32c558cf-4a2e-f914-f443-ab94000addcd" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_a_restriction_query_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Create_a_restriction_query_returns_OK_response.json index 992baa6ee80..2cb19c254b0 100644 --- a/src/test/resources/cassettes/features/v2/Create_a_restriction_query_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Create_a_restriction_query_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "eb3b308b-3d56-9ef8-4096-dd7718f51862" + "id": "eb3b308b-3d56-9ef8-4096-dd7718f51861" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_an_AWS_account_returns_AWS_Account_object_response.json b/src/test/resources/cassettes/features/v2/Create_an_AWS_account_returns_AWS_Account_object_response.json index 83646ddb287..4e7150c70a8 100644 --- a/src/test/resources/cassettes/features/v2/Create_an_AWS_account_returns_AWS_Account_object_response.json +++ b/src/test/resources/cassettes/features/v2/Create_an_AWS_account_returns_AWS_Account_object_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "bf073e02-7e0b-dc8b-b075-82932236e50a" + "id": "bf073e02-7e0b-dc8b-b075-82932236e50b" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_an_AWS_integration_returns_Conflict_response.json b/src/test/resources/cassettes/features/v2/Create_an_AWS_integration_returns_Conflict_response.json index c7a019ef829..18ed773dab0 100644 --- a/src/test/resources/cassettes/features/v2/Create_an_AWS_integration_returns_Conflict_response.json +++ b/src/test/resources/cassettes/features/v2/Create_an_AWS_integration_returns_Conflict_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "479ab602-1a6a-ff9c-cfae-4a71849b3ce5" + "id": "479ab602-1a6a-ff9c-cfae-4a71849b3ce1" }, { "httpRequest": { @@ -57,7 +57,7 @@ "timeToLive": { "unlimited": true }, - "id": "bf073e02-7e0b-dc8b-b075-82932236e50b" + "id": "bf073e02-7e0b-dc8b-b075-82932236e50a" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_an_incident_type_returns_CREATED_response.json b/src/test/resources/cassettes/features/v2/Create_an_incident_type_returns_CREATED_response.json index 8cc48703039..5fdb5139b99 100644 --- a/src/test/resources/cassettes/features/v2/Create_an_incident_type_returns_CREATED_response.json +++ b/src/test/resources/cassettes/features/v2/Create_an_incident_type_returns_CREATED_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd2" + "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd3" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_custom_attribute_config_for_a_case_type_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Create_custom_attribute_config_for_a_case_type_returns_Bad_Request_response.json index e7858392bb2..2afada8e889 100644 --- a/src/test/resources/cassettes/features/v2/Create_custom_attribute_config_for_a_case_type_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Create_custom_attribute_config_for_a_case_type_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "dc45fc73-0f09-c12d-941b-eaf799af6464" + "id": "dc45fc73-0f09-c12d-941b-eaf799af6465" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_incident_notification_template_returns_Created_response.json b/src/test/resources/cassettes/features/v2/Create_incident_notification_template_returns_Created_response.json index 210fa549f1e..91af4088c4a 100644 --- a/src/test/resources/cassettes/features/v2/Create_incident_notification_template_returns_Created_response.json +++ b/src/test/resources/cassettes/features/v2/Create_incident_notification_template_returns_Created_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "7bcfec66-5300-9891-51e5-e4d7e0833bdc" + "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd2" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Create_role_with_a_permission_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Create_role_with_a_permission_returns_OK_response.json index 226202c4126..cf1765920e9 100644 --- a/src/test/resources/cassettes/features/v2/Create_role_with_a_permission_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Create_role_with_a_permission_returns_OK_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "ab2c08c1-60c7-9278-3246-d650bb892173" + "id": "ab2c08c1-60c7-9278-3246-d650bb89216d" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Creates_a_data_deletion_request_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Creates_a_data_deletion_request_returns_OK_response.json index 626d104be82..8155c3aeded 100644 --- a/src/test/resources/cassettes/features/v2/Creates_a_data_deletion_request_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Creates_a_data_deletion_request_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "516e2b97-25f6-b08c-4d4a-1da22948b32f" + "id": "516e2b97-25f6-b08c-4d4a-1da22948b32e" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_AWS_CCM_config_returns_No_Content_response.json b/src/test/resources/cassettes/features/v2/Delete_AWS_CCM_config_returns_No_Content_response.json index c32805bcdb2..efa9967a0e4 100644 --- a/src/test/resources/cassettes/features/v2/Delete_AWS_CCM_config_returns_No_Content_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_AWS_CCM_config_returns_No_Content_response.json @@ -18,6 +18,6 @@ "timeToLive": { "unlimited": true }, - "id": "b2bcb392-2d71-be89-5578-460535c541af" + "id": "b2bcb392-2d71-be89-5578-460535c541b0" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Delete_App_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_App_returns_OK_response.json index ac61cefff94..0c91755cb44 100644 --- a/src/test/resources/cassettes/features/v2/Delete_App_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_App_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "c782b1f3-1b03-d50f-8fcd-12e51226c514" + "id": "c782b1f3-1b03-d50f-8fcd-12e51226c50f" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_Multiple_Apps_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_Multiple_Apps_returns_OK_response.json index d25a5b61b2c..17f6987468c 100644 --- a/src/test/resources/cassettes/features/v2/Delete_Multiple_Apps_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_Multiple_Apps_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "c782b1f3-1b03-d50f-8fcd-12e51226c50c" + "id": "c782b1f3-1b03-d50f-8fcd-12e51226c513" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_Org_Connection_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_Org_Connection_returns_OK_response.json index 6a1865e363e..bb02652c1ea 100644 --- a/src/test/resources/cassettes/features/v2/Delete_Org_Connection_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_Org_Connection_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "76efebf6-d204-c8e8-5a8c-bd11c0a4ae47" + "id": "76efebf6-d204-c8e8-5a8c-bd11c0a4ae43" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_Scanning_Group_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_Scanning_Group_returns_OK_response.json index 66fdaada60b..bc7e7c252fa 100644 --- a/src/test/resources/cassettes/features/v2/Delete_Scanning_Group_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_Scanning_Group_returns_OK_response.json @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa0" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa1" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_Scanning_Rule_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_Scanning_Rule_returns_OK_response.json index e14419e8d86..0a4283ae5ae 100644 --- a/src/test/resources/cassettes/features/v2/Delete_Scanning_Rule_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_Scanning_Rule_returns_OK_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e83" + "id": "01611a93-5e74-0630-3c51-f707c3b51e85" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa5" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa7" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_a_WAF_exclusion_filter_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_a_WAF_exclusion_filter_returns_OK_response.json index d14b87aa29b..e17e659929e 100644 --- a/src/test/resources/cassettes/features/v2/Delete_a_WAF_exclusion_filter_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_a_WAF_exclusion_filter_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "f87651cf-cb9d-db71-c4de-1be9e301b3ea" + "id": "f87651cf-cb9d-db71-c4de-1be9e301b3e9" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_a_case_type_returns_NotContent_response.json b/src/test/resources/cassettes/features/v2/Delete_a_case_type_returns_NotContent_response.json index 423beb9380f..1511b4f762f 100644 --- a/src/test/resources/cassettes/features/v2/Delete_a_case_type_returns_NotContent_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_a_case_type_returns_NotContent_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "dc45fc73-0f09-c12d-941b-eaf799af6461" + "id": "dc45fc73-0f09-c12d-941b-eaf799af6462" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_a_case_type_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_a_case_type_returns_OK_response.json index d44f28ca671..7919b99b4ff 100644 --- a/src/test/resources/cassettes/features/v2/Delete_a_case_type_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_a_case_type_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "dc45fc73-0f09-c12d-941b-eaf799af6462" + "id": "dc45fc73-0f09-c12d-941b-eaf799af6461" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_a_custom_framework_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_a_custom_framework_returns_OK_response.json index ab18e4a92c4..0f7523c96c6 100644 --- a/src/test/resources/cassettes/features/v2/Delete_a_custom_framework_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_a_custom_framework_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "13fe9685-b072-5fe0-c841-4499a9e71c73" + "id": "13fe9685-b072-5fe0-c841-4499a9e71c74" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_a_dataset_returns_No_Content_response.json b/src/test/resources/cassettes/features/v2/Delete_a_dataset_returns_No_Content_response.json index 76d59841326..92c10c6b507 100644 --- a/src/test/resources/cassettes/features/v2/Delete_a_dataset_returns_No_Content_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_a_dataset_returns_No_Content_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "32c558cf-4a2e-f914-f443-ab94000addcf" + "id": "32c558cf-4a2e-f914-f443-ab94000addc9" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_a_retention_filter_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_a_retention_filter_returns_OK_response.json index 48b483cd7a4..aeb041f1a43 100644 --- a/src/test/resources/cassettes/features/v2/Delete_a_retention_filter_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_a_retention_filter_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069b" + "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069c" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_an_AWS_integration_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Delete_an_AWS_integration_returns_Bad_Request_response.json index a42ef29bfae..c82b6c27f29 100644 --- a/src/test/resources/cassettes/features/v2/Delete_an_AWS_integration_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_an_AWS_integration_returns_Bad_Request_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "73fd406e-d686-10bd-50ee-83f2c499e8a8" + "id": "73fd406e-d686-10bd-50ee-83f2c499e8a9" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Delete_an_incident_type_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_an_incident_type_returns_OK_response.json index e5279316af5..ee9ff41cc5e 100644 --- a/src/test/resources/cassettes/features/v2/Delete_an_incident_type_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_an_incident_type_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "7bcfec66-5300-9891-51e5-e4d7e0833bdb" + "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd1" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_Bad_Request_response.json index a9b1b0a59f2..7808c1e347b 100644 --- a/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145ff" + "id": "79babc38-7a70-5347-c8a6-73b0e70145eb" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_No_Content_response.json b/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_No_Content_response.json index 3c7a22d087a..fcf4a2bf172 100644 --- a/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_No_Content_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_No_Content_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145ea" + "id": "79babc38-7a70-5347-c8a6-73b0e70145fa" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_Not_Found_response.json index f09a21c5347..f1c8d39365e 100644 --- a/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_case_comment_returns_Not_Found_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f8" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f4" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_custom_attribute_from_case_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Delete_custom_attribute_from_case_returns_Not_Found_response.json index 763ae62b2fb..075a7f9db40 100644 --- a/src/test/resources/cassettes/features/v2/Delete_custom_attribute_from_case_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_custom_attribute_from_case_returns_Not_Found_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f4" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f8" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_custom_attribute_from_case_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_custom_attribute_from_case_returns_OK_response.json index c64f841650a..7c90bfe4fab 100644 --- a/src/test/resources/cassettes/features/v2/Delete_custom_attribute_from_case_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_custom_attribute_from_case_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "dc45fc73-0f09-c12d-941b-eaf799af6469" + "id": "dc45fc73-0f09-c12d-941b-eaf799af6468" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_custom_attributes_config_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Delete_custom_attributes_config_returns_Bad_Request_response.json index e6d802099c3..ed84911497c 100644 --- a/src/test/resources/cassettes/features/v2/Delete_custom_attributes_config_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_custom_attributes_config_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "dc45fc73-0f09-c12d-941b-eaf799af6463" + "id": "dc45fc73-0f09-c12d-941b-eaf799af6464" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_custom_attributes_config_returns_No_Content_response.json b/src/test/resources/cassettes/features/v2/Delete_custom_attributes_config_returns_No_Content_response.json index 8d1ac6d8c33..149174ae6d9 100644 --- a/src/test/resources/cassettes/features/v2/Delete_custom_attributes_config_returns_No_Content_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_custom_attributes_config_returns_No_Content_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "dc45fc73-0f09-c12d-941b-eaf799af6466" + "id": "dc45fc73-0f09-c12d-941b-eaf799af6463" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_datastore_item_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_datastore_item_returns_OK_response.json index cbdb9ebea90..a1c5ecbb403 100644 --- a/src/test/resources/cassettes/features/v2/Delete_datastore_item_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_datastore_item_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d31" + "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d33" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_datastore_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Delete_datastore_returns_OK_response.json index ccc4c95513a..3ffceed3185 100644 --- a/src/test/resources/cassettes/features/v2/Delete_datastore_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_datastore_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d33" + "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d2c" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_incident_notification_rule_returns_No_Content_response.json b/src/test/resources/cassettes/features/v2/Delete_incident_notification_rule_returns_No_Content_response.json index edd6a6da9bf..621a6a2a79d 100644 --- a/src/test/resources/cassettes/features/v2/Delete_incident_notification_rule_returns_No_Content_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_incident_notification_rule_returns_No_Content_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd3" + "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd7" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Delete_incident_notification_template_returns_No_Content_response.json b/src/test/resources/cassettes/features/v2/Delete_incident_notification_template_returns_No_Content_response.json index e668325311c..23e7a36d764 100644 --- a/src/test/resources/cassettes/features/v2/Delete_incident_notification_template_returns_No_Content_response.json +++ b/src/test/resources/cassettes/features/v2/Delete_incident_notification_template_returns_No_Content_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd4" + "id": "7bcfec66-5300-9891-51e5-e4d7e0833bdb" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Edit_a_dataset_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Edit_a_dataset_returns_OK_response.json index 75a40d06c1c..f868434d6ac 100644 --- a/src/test/resources/cassettes/features/v2/Edit_a_dataset_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Edit_a_dataset_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "32c558cf-4a2e-f914-f443-ab94000addc9" + "id": "32c558cf-4a2e-f914-f443-ab94000addcf" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Generate_a_new_external_ID_returns_AWS_External_ID_object_response.json b/src/test/resources/cassettes/features/v2/Generate_a_new_external_ID_returns_AWS_External_ID_object_response.json index 75b451b6900..c2491988476 100644 --- a/src/test/resources/cassettes/features/v2/Generate_a_new_external_ID_returns_AWS_External_ID_object_response.json +++ b/src/test/resources/cassettes/features/v2/Generate_a_new_external_ID_returns_AWS_External_ID_object_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "a3ebb722-60eb-fa89-589a-ff3630e3a2cd" + "id": "a3ebb722-60eb-fa89-589a-ff3630e3a2cc" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Get_AWS_On_Demand_task_by_id_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Get_AWS_On_Demand_task_by_id_returns_Bad_Request_response.json index fe4cf251d57..6b2882ea815 100644 --- a/src/test/resources/cassettes/features/v2/Get_AWS_On_Demand_task_by_id_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Get_AWS_On_Demand_task_by_id_returns_Bad_Request_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "4fd99083-06ab-185c-0a48-d579a5f192c1" + "id": "4fd99083-06ab-185c-0a48-d579a5f192c2" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Get_AWS_on_demand_task_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Get_AWS_on_demand_task_returns_Bad_Request_response.json index 6b2882ea815..fe4cf251d57 100644 --- a/src/test/resources/cassettes/features/v2/Get_AWS_on_demand_task_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Get_AWS_on_demand_task_returns_Bad_Request_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "4fd99083-06ab-185c-0a48-d579a5f192c2" + "id": "4fd99083-06ab-185c-0a48-d579a5f192c1" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Get_AWS_scan_options_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_AWS_scan_options_returns_OK_response.json index bc09886e60a..60bf7212494 100644 --- a/src/test/resources/cassettes/features/v2/Get_AWS_scan_options_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_AWS_scan_options_returns_OK_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "2cb6ecfe-386c-3349-2689-26da480a6b5e" + "id": "2cb6ecfe-386c-3349-2689-26da480a6b5d" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_App_returns_Gone_response.json b/src/test/resources/cassettes/features/v2/Get_App_returns_Gone_response.json index f2e8ebc7ed1..d0faeb9a172 100644 --- a/src/test/resources/cassettes/features/v2/Get_App_returns_Gone_response.json +++ b/src/test/resources/cassettes/features/v2/Get_App_returns_Gone_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "c782b1f3-1b03-d50f-8fcd-12e51226c50d" + "id": "c782b1f3-1b03-d50f-8fcd-12e51226c50c" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_a_critical_asset_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_a_critical_asset_returns_OK_response.json index eccc4031f16..0baec6032c5 100644 --- a/src/test/resources/cassettes/features/v2/Get_a_critical_asset_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_a_critical_asset_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6ffb5b4d-a3b7-6fa1-1d1c-e0464f43c9e6" + "id": "6ffb5b4d-a3b7-6fa1-1d1c-e0464f43c9e5" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_a_custom_framework_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_a_custom_framework_returns_OK_response.json index f414d99275e..958f238638a 100644 --- a/src/test/resources/cassettes/features/v2/Get_a_custom_framework_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_a_custom_framework_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "13fe9685-b072-5fe0-c841-4499a9e71c74" + "id": "13fe9685-b072-5fe0-c841-4499a9e71c75" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_a_given_APM_retention_filter_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_a_given_APM_retention_filter_returns_OK_response.json index 108cf352bd9..b3366690d8d 100644 --- a/src/test/resources/cassettes/features/v2/Get_a_given_APM_retention_filter_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_a_given_APM_retention_filter_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069e" + "id": "b2404278-8cc9-cba4-e3eb-03a7fdff0697" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_a_restriction_query_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_a_restriction_query_returns_OK_response.json index f19f9fbffe4..f6628e0a51d 100644 --- a/src/test/resources/cassettes/features/v2/Get_a_restriction_query_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_a_restriction_query_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "eb3b308b-3d56-9ef8-4096-dd7718f51861" + "id": "eb3b308b-3d56-9ef8-4096-dd7718f51860" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_a_single_dataset_by_ID_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_a_single_dataset_by_ID_returns_OK_response.json index a3aed5c194a..462a7eb38f0 100644 --- a/src/test/resources/cassettes/features/v2/Get_a_single_dataset_by_ID_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_a_single_dataset_by_ID_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "32c558cf-4a2e-f914-f443-ab94000addcd" + "id": "32c558cf-4a2e-f914-f443-ab94000addca" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_a_specific_pipeline_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_a_specific_pipeline_returns_OK_response.json index ea476aa37df..40f41bf5c71 100644 --- a/src/test/resources/cassettes/features/v2/Get_a_specific_pipeline_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_a_specific_pipeline_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "1c5790bf-1fdc-930d-ee1e-046e57b87c80" + "id": "1c5790bf-1fdc-930d-ee1e-046e57b87c7d" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_all_custom_attributes_config_of_case_type_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_all_custom_attributes_config_of_case_type_returns_OK_response.json index 15a3142e28a..758e4fb66ad 100644 --- a/src/test/resources/cassettes/features/v2/Get_all_custom_attributes_config_of_case_type_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_all_custom_attributes_config_of_case_type_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "dc45fc73-0f09-c12d-941b-eaf799af6465" + "id": "dc45fc73-0f09-c12d-941b-eaf799af6466" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_all_datasets_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_all_datasets_returns_OK_response.json index f6443799769..7b4fa0f864b 100644 --- a/src/test/resources/cassettes/features/v2/Get_all_datasets_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_all_datasets_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "32c558cf-4a2e-f914-f443-ab94000addca" + "id": "32c558cf-4a2e-f914-f443-ab94000addcb" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_AWS_Account_object_response.json b/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_AWS_Account_object_response.json index 83cf7035f14..9933d6258ad 100644 --- a/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_AWS_Account_object_response.json +++ b/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_AWS_Account_object_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "479ab602-1a6a-ff9c-cfae-4a71849b3ce1" + "id": "479ab602-1a6a-ff9c-cfae-4a71849b3ce6" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_Bad_Request_response.json index 87cb96a7640..6352d5f0102 100644 --- a/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_Bad_Request_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "3d4d0603-9fed-1cc5-8004-086b9b6ef690" + "id": "3d4d0603-9fed-1cc5-8004-086b9b6ef691" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_Not_Found_response.json index 7e5c7b1234d..55368f4ae1c 100644 --- a/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Get_an_AWS_integration_by_config_ID_returns_Not_Found_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "9b33b83c-c8bb-714f-cf71-33ab2f3af9d3" + "id": "9b33b83c-c8bb-714f-cf71-33ab2f3af9d4" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Get_datastore_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_datastore_returns_OK_response.json index eda1a71080b..f392f13fc4c 100644 --- a/src/test/resources/cassettes/features/v2/Get_datastore_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_datastore_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d2f" + "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d31" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_incident_notification_rule_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_incident_notification_rule_returns_OK_response.json index cb29d3d82c6..00f0e4bc8fd 100644 --- a/src/test/resources/cassettes/features/v2/Get_incident_notification_rule_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_incident_notification_rule_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd1" + "id": "7bcfec66-5300-9891-51e5-e4d7e0833bdc" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_incident_notification_template_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_incident_notification_template_returns_OK_response.json index 41eb6547e3c..273c818221c 100644 --- a/src/test/resources/cassettes/features/v2/Get_incident_notification_template_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_incident_notification_template_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "7bcfec66-5300-9891-51e5-e4d7e0833bda" + "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd5" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_list_of_AWS_log_ready_services_returns_AWS_Logs_Services_List_object_response.json b/src/test/resources/cassettes/features/v2/Get_list_of_AWS_log_ready_services_returns_AWS_Logs_Services_List_object_response.json index f469a5cda1f..e05cab1201f 100644 --- a/src/test/resources/cassettes/features/v2/Get_list_of_AWS_log_ready_services_returns_AWS_Logs_Services_List_object_response.json +++ b/src/test/resources/cassettes/features/v2/Get_list_of_AWS_log_ready_services_returns_AWS_Logs_Services_List_object_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "03c3c0d9-a62f-5ac6-398b-e22a05d14d79" + "id": "03c3c0d9-a62f-5ac6-398b-e22a05d14d7b" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Get_the_details_of_a_case_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_the_details_of_a_case_returns_OK_response.json index 1034787e31d..9aabde754b9 100644 --- a/src/test/resources/cassettes/features/v2/Get_the_details_of_a_case_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_the_details_of_a_case_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145fb" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f3" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_the_details_of_an_error_tracking_issue_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Get_the_details_of_an_error_tracking_issue_returns_Not_Found_response.json index cc6c1703e9a..e9ddbf352f7 100644 --- a/src/test/resources/cassettes/features/v2/Get_the_details_of_an_error_tracking_issue_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Get_the_details_of_an_error_tracking_issue_returns_Not_Found_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "16438026-1168-3bfa-3763-949697b01fe9" + "id": "16438026-1168-3bfa-3763-949697b01fea" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Get_the_details_of_an_error_tracking_issue_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Get_the_details_of_an_error_tracking_issue_returns_OK_response.json index c0406058bb1..6b6dc7ffeef 100644 --- a/src/test/resources/cassettes/features/v2/Get_the_details_of_an_error_tracking_issue_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Get_the_details_of_an_error_tracking_issue_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "16438026-1168-3bfa-3763-949697b01fea" + "id": "16438026-1168-3bfa-3763-949697b01fe9" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Gets_a_list_of_data_deletion_requests_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Gets_a_list_of_data_deletion_requests_returns_OK_response.json index 6ab71e5cb0b..1eccad92176 100644 --- a/src/test/resources/cassettes/features/v2/Gets_a_list_of_data_deletion_requests_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Gets_a_list_of_data_deletion_requests_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "516e2b97-25f6-b08c-4d4a-1da22948b330" + "id": "516e2b97-25f6-b08c-4d4a-1da22948b32f" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/List_AWS_scan_options_returns_OK_response.json b/src/test/resources/cassettes/features/v2/List_AWS_scan_options_returns_OK_response.json index 33fc1c5e1e7..4c0f531592f 100644 --- a/src/test/resources/cassettes/features/v2/List_AWS_scan_options_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/List_AWS_scan_options_returns_OK_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "2cb6ecfe-386c-3349-2689-26da480a6b5d" + "id": "2cb6ecfe-386c-3349-2689-26da480a6b5e" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/List_Scanning_Groups_returns_OK_response.json b/src/test/resources/cassettes/features/v2/List_Scanning_Groups_returns_OK_response.json index 04b3928ec59..b59f7c51711 100644 --- a/src/test/resources/cassettes/features/v2/List_Scanning_Groups_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/List_Scanning_Groups_returns_OK_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e7e" + "id": "01611a93-5e74-0630-3c51-f707c3b51e82" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa1" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa5" }, { "httpRequest": { @@ -79,7 +79,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e7f" + "id": "01611a93-5e74-0630-3c51-f707c3b51e83" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/List_all_APM_retention_filters_returns_OK_response.json b/src/test/resources/cassettes/features/v2/List_all_APM_retention_filters_returns_OK_response.json index 46c301ec1c4..ab1e1d16101 100644 --- a/src/test/resources/cassettes/features/v2/List_all_APM_retention_filters_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/List_all_APM_retention_filters_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "b2404278-8cc9-cba4-e3eb-03a7fdff0699" + "id": "b2404278-8cc9-cba4-e3eb-03a7fdff0698" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/List_datastore_items_returns_OK_response.json b/src/test/resources/cassettes/features/v2/List_datastore_items_returns_OK_response.json index 0251f9fdc84..ca6902dd772 100644 --- a/src/test/resources/cassettes/features/v2/List_datastore_items_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/List_datastore_items_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d2d" + "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d32" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/List_historical_jobs_returns_OK_response.json b/src/test/resources/cassettes/features/v2/List_historical_jobs_returns_OK_response.json index 496fbb6e65d..03072b1897d 100644 --- a/src/test/resources/cassettes/features/v2/List_historical_jobs_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/List_historical_jobs_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "4c138fa0-d834-5972-8bd7-894a659525ad" + "id": "4c138fa0-d834-5972-8bd7-894a659525ac" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/List_incident_notification_rules_returns_OK_response.json b/src/test/resources/cassettes/features/v2/List_incident_notification_rules_returns_OK_response.json index 6bdfa4f2dd4..26f01926eeb 100644 --- a/src/test/resources/cassettes/features/v2/List_incident_notification_rules_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/List_incident_notification_rules_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd5" + "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd4" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/List_log_services_returns_AWS_Logs_Services_List_object_response.json b/src/test/resources/cassettes/features/v2/List_log_services_returns_AWS_Logs_Services_List_object_response.json index 266b281e690..f469a5cda1f 100644 --- a/src/test/resources/cassettes/features/v2/List_log_services_returns_AWS_Logs_Services_List_object_response.json +++ b/src/test/resources/cassettes/features/v2/List_log_services_returns_AWS_Logs_Services_List_object_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "03c3c0d9-a62f-5ac6-398b-e22a05d14d7a" + "id": "03c3c0d9-a62f-5ac6-398b-e22a05d14d79" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/List_permissions_returns_OK_response.json b/src/test/resources/cassettes/features/v2/List_permissions_returns_OK_response.json index e881ea5c75f..ca2387782fd 100644 --- a/src/test/resources/cassettes/features/v2/List_permissions_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/List_permissions_returns_OK_response.json @@ -23,6 +23,6 @@ "timeToLive": { "unlimited": true }, - "id": "ab2c08c1-60c7-9278-3246-d650bb892174" + "id": "ab2c08c1-60c7-9278-3246-d650bb892173" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/List_pipelines_returns_OK_response.json b/src/test/resources/cassettes/features/v2/List_pipelines_returns_OK_response.json index be0c8e1fc69..17a313d3d48 100644 --- a/src/test/resources/cassettes/features/v2/List_pipelines_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/List_pipelines_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "1c5790bf-1fdc-930d-ee1e-046e57b87c7d" + "id": "1c5790bf-1fdc-930d-ee1e-046e57b87c7f" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/List_roles_for_a_restriction_query_returns_OK_response.json b/src/test/resources/cassettes/features/v2/List_roles_for_a_restriction_query_returns_OK_response.json index 88ddad7a3ae..b3459ffd0fc 100644 --- a/src/test/resources/cassettes/features/v2/List_roles_for_a_restriction_query_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/List_roles_for_a_restriction_query_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "eb3b308b-3d56-9ef8-4096-dd7718f51860" + "id": "eb3b308b-3d56-9ef8-4096-dd7718f51862" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_Bad_Request_response_2.json b/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_Bad_Request_response_2.json index c48e77cce48..2ebfbdcfa75 100644 --- a/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_Bad_Request_response_2.json +++ b/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_Bad_Request_response_2.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "c6af96d1-87d1-3cd6-0d2d-71631b85bb78" + "id": "c6af96d1-87d1-3cd6-0d2d-71631b85bb77" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_No_Content_response.json b/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_No_Content_response.json index 0a176ee003e..974c53ce63d 100644 --- a/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_No_Content_response.json +++ b/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_No_Content_response.json @@ -22,6 +22,6 @@ "timeToLive": { "unlimited": true }, - "id": "0f485c8a-a29e-ebed-3836-545f90bc9457" + "id": "0f485c8a-a29e-ebed-3836-545f90bc9456" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_Not_Found_response.json index dd398a6ce01..f5b653cadfe 100644 --- a/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_Not_Found_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "5b9334b2-8fb1-87b5-4ca9-1a0b54abb8b3" + "id": "5b9334b2-8fb1-87b5-4ca9-1a0b54abb8b2" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_OK_response.json index 974c53ce63d..1b2ef6880a2 100644 --- a/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Patch_AWS_Scan_Options_returns_OK_response.json @@ -22,6 +22,6 @@ "timeToLive": { "unlimited": true }, - "id": "0f485c8a-a29e-ebed-3836-545f90bc9456" + "id": "0f485c8a-a29e-ebed-3836-545f90bc9458" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_Bad_Request_response.json index fee9f74e00a..d4bcf1ca8ac 100644 --- a/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_Bad_Request_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "c2c329a8-5875-126a-1858-e7c00b5af114" + "id": "c2c329a8-5875-126a-1858-e7c00b5af113" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_Not_Found_response.json index a7baf1534a7..0d180071156 100644 --- a/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_Not_Found_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "0a6c2650-313c-cd4a-4230-f1a883526456" + "id": "0a6c2650-313c-cd4a-4230-f1a883526455" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_OK_response.json index 46d1bbda4f0..15c0687ec0c 100644 --- a/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Patch_GCP_Scan_Options_returns_OK_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "b0e82961-e316-45f9-b544-8011dda3dd98" + "id": "b0e82961-e316-45f9-b544-8011dda3dd99" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Agentless_scan_options_enabled_successfully_response.json b/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Agentless_scan_options_enabled_successfully_response.json index 858d36f9769..ead796b159c 100644 --- a/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Agentless_scan_options_enabled_successfully_response.json +++ b/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Agentless_scan_options_enabled_successfully_response.json @@ -52,6 +52,6 @@ "timeToLive": { "unlimited": true }, - "id": "49ae287a-8cc5-118a-4b1c-2dbceae02055" + "id": "49ae287a-8cc5-118a-4b1c-2dbceae02054" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Bad_Request_response.json index 76a4e155ad0..fb2bbc86068 100644 --- a/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Bad_Request_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "e2891484-5e4d-166a-c2fe-dce7aead5f71" + "id": "e2891484-5e4d-166a-c2fe-dce7aead5f70" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Conflict_response.json b/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Conflict_response.json index 42fd2567c77..a8a5126d14c 100644 --- a/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Conflict_response.json +++ b/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_Conflict_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "f65bb980-57f2-5b92-482f-54c273127342" + "id": "f65bb980-57f2-5b92-482f-54c273127343" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_OK_response.json index 08f556111f9..199c7919faf 100644 --- a/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Post_AWS_Scan_Options_returns_OK_response.json @@ -52,6 +52,6 @@ "timeToLive": { "unlimited": true }, - "id": "49ae287a-8cc5-118a-4b1c-2dbceae02054" + "id": "49ae287a-8cc5-118a-4b1c-2dbceae02055" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Post_GCP_Scan_Options_returns_Conflict_response.json b/src/test/resources/cassettes/features/v2/Post_GCP_Scan_Options_returns_Conflict_response.json index cd295ed246c..82770941cf9 100644 --- a/src/test/resources/cassettes/features/v2/Post_GCP_Scan_Options_returns_Conflict_response.json +++ b/src/test/resources/cassettes/features/v2/Post_GCP_Scan_Options_returns_Conflict_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "e60f404e-4f1f-e719-af9d-8d61a2bd95be" + "id": "e60f404e-4f1f-e719-af9d-8d61a2bd95bf" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Post_an_AWS_on_demand_task_returns_AWS_on_demand_task_created_successfully_response.json b/src/test/resources/cassettes/features/v2/Post_an_AWS_on_demand_task_returns_AWS_on_demand_task_created_successfully_response.json index c6ff6086445..8b4791c29ca 100644 --- a/src/test/resources/cassettes/features/v2/Post_an_AWS_on_demand_task_returns_AWS_on_demand_task_created_successfully_response.json +++ b/src/test/resources/cassettes/features/v2/Post_an_AWS_on_demand_task_returns_AWS_on_demand_task_created_successfully_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "22e692ec-0118-56ae-6a7b-e829dfef841a" + "id": "22e692ec-0118-56ae-6a7b-e829dfef8419" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Post_an_AWS_on_demand_task_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Post_an_AWS_on_demand_task_returns_Bad_Request_response.json index 91451dfea49..ea94cd9866e 100644 --- a/src/test/resources/cassettes/features/v2/Post_an_AWS_on_demand_task_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Post_an_AWS_on_demand_task_returns_Bad_Request_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "ddc95453-e78c-c1f7-f3a9-441d29765f2f" + "id": "ddc95453-e78c-c1f7-f3a9-441d29765f2e" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Publish_App_returns_Created_response.json b/src/test/resources/cassettes/features/v2/Publish_App_returns_Created_response.json index 122367ac740..458c0a50fce 100644 --- a/src/test/resources/cassettes/features/v2/Publish_App_returns_Created_response.json +++ b/src/test/resources/cassettes/features/v2/Publish_App_returns_Created_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "c782b1f3-1b03-d50f-8fcd-12e51226c511" + "id": "c782b1f3-1b03-d50f-8fcd-12e51226c512" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Reorder_Groups_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Reorder_Groups_returns_Bad_Request_response.json index 082683417bd..9232671467e 100644 --- a/src/test/resources/cassettes/features/v2/Reorder_Groups_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Reorder_Groups_returns_Bad_Request_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e78" + "id": "01611a93-5e74-0630-3c51-f707c3b51e7a" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238a9d" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238a9f" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Reorder_Groups_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Reorder_Groups_returns_OK_response.json index e4f6980d6a5..f301ca6f3ce 100644 --- a/src/test/resources/cassettes/features/v2/Reorder_Groups_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Reorder_Groups_returns_OK_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e7a" + "id": "01611a93-5e74-0630-3c51-f707c3b51e80" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238a9f" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa4" }, { "httpRequest": { @@ -79,7 +79,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e7b" + "id": "01611a93-5e74-0630-3c51-f707c3b51e81" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Revoke_permission_returns_Not_found_response.json b/src/test/resources/cassettes/features/v2/Revoke_permission_returns_Not_found_response.json index e6d62878f58..d59c27e003b 100644 --- a/src/test/resources/cassettes/features/v2/Revoke_permission_returns_Not_found_response.json +++ b/src/test/resources/cassettes/features/v2/Revoke_permission_returns_Not_found_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "ab2c08c1-60c7-9278-3246-d650bb892170" + "id": "ab2c08c1-60c7-9278-3246-d650bb892174" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Run_a_threat_hunting_job_returns_Status_created_response.json b/src/test/resources/cassettes/features/v2/Run_a_threat_hunting_job_returns_Status_created_response.json index b0ab0c61ed8..20ea8f51018 100644 --- a/src/test/resources/cassettes/features/v2/Run_a_threat_hunting_job_returns_Status_created_response.json +++ b/src/test/resources/cassettes/features/v2/Run_a_threat_hunting_job_returns_Status_created_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "4c138fa0-d834-5972-8bd7-894a659525ac" + "id": "4c138fa0-d834-5972-8bd7-894a659525ad" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Unarchive_case_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Unarchive_case_returns_Bad_Request_response.json index b38e668955e..5f10e5a84ba 100644 --- a/src/test/resources/cassettes/features/v2/Unarchive_case_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Unarchive_case_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145ec" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f7" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Unarchive_case_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Unarchive_case_returns_OK_response.json index e3575156ede..2cf2f5e7036 100644 --- a/src/test/resources/cassettes/features/v2/Unarchive_case_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Unarchive_case_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f9" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f0" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Unassign_case_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Unassign_case_returns_Bad_Request_response.json index 75b686bdbbe..cd0f546067e 100644 --- a/src/test/resources/cassettes/features/v2/Unassign_case_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Unassign_case_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f2" + "id": "79babc38-7a70-5347-c8a6-73b0e70145fc" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Unassign_case_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Unassign_case_returns_OK_response.json index 88b95ace082..25c50b5140f 100644 --- a/src/test/resources/cassettes/features/v2/Unassign_case_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Unassign_case_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f1" + "id": "79babc38-7a70-5347-c8a6-73b0e70145fb" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Unpublish_App_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Unpublish_App_returns_OK_response.json index d2d1f94bb66..5aa2107af10 100644 --- a/src/test/resources/cassettes/features/v2/Unpublish_App_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Unpublish_App_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "c782b1f3-1b03-d50f-8fcd-12e51226c510" + "id": "c782b1f3-1b03-d50f-8fcd-12e51226c50d" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_Bad_Request_response_2.json b/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_Bad_Request_response_2.json index 2ebfbdcfa75..c48e77cce48 100644 --- a/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_Bad_Request_response_2.json +++ b/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_Bad_Request_response_2.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "c6af96d1-87d1-3cd6-0d2d-71631b85bb77" + "id": "c6af96d1-87d1-3cd6-0d2d-71631b85bb78" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_No_Content_response.json b/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_No_Content_response.json index 1b2ef6880a2..0a176ee003e 100644 --- a/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_No_Content_response.json +++ b/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_No_Content_response.json @@ -22,6 +22,6 @@ "timeToLive": { "unlimited": true }, - "id": "0f485c8a-a29e-ebed-3836-545f90bc9458" + "id": "0f485c8a-a29e-ebed-3836-545f90bc9457" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_Not_Found_response.json index f5b653cadfe..dd398a6ce01 100644 --- a/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Update_AWS_scan_options_returns_Not_Found_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "5b9334b2-8fb1-87b5-4ca9-1a0b54abb8b2" + "id": "5b9334b2-8fb1-87b5-4ca9-1a0b54abb8b3" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Update_App_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_App_returns_Bad_Request_response.json index babadb18733..b2d72b87ba2 100644 --- a/src/test/resources/cassettes/features/v2/Update_App_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_App_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "c782b1f3-1b03-d50f-8fcd-12e51226c50f" + "id": "c782b1f3-1b03-d50f-8fcd-12e51226c514" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_App_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_App_returns_OK_response.json index 561057ced5c..385920ba074 100644 --- a/src/test/resources/cassettes/features/v2/Update_App_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_App_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "c782b1f3-1b03-d50f-8fcd-12e51226c513" + "id": "c782b1f3-1b03-d50f-8fcd-12e51226c510" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_Bad_Request_response.json index bd889c4d7e5..e0d488678ae 100644 --- a/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_Bad_Request_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "c2c329a8-5875-126a-1858-e7c00b5af113" + "id": "c2c329a8-5875-126a-1858-e7c00b5af114" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_Not_Found_response.json index 0d180071156..a7baf1534a7 100644 --- a/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_Not_Found_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "0a6c2650-313c-cd4a-4230-f1a883526455" + "id": "0a6c2650-313c-cd4a-4230-f1a883526456" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_OK_response.json index 15c0687ec0c..46d1bbda4f0 100644 --- a/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_GCP_scan_options_returns_OK_response.json @@ -27,6 +27,6 @@ "timeToLive": { "unlimited": true }, - "id": "b0e82961-e316-45f9-b544-8011dda3dd99" + "id": "b0e82961-e316-45f9-b544-8011dda3dd98" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Update_Org_Connection_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_Org_Connection_returns_Bad_Request_response.json index 9dfb29fa6ae..970a0b596df 100644 --- a/src/test/resources/cassettes/features/v2/Update_Org_Connection_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_Org_Connection_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "76efebf6-d204-c8e8-5a8c-bd11c0a4ae46" + "id": "76efebf6-d204-c8e8-5a8c-bd11c0a4ae47" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_Org_Connection_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Update_Org_Connection_returns_Not_Found_response.json index 2d30452fcb9..33523d241e1 100644 --- a/src/test/resources/cassettes/features/v2/Update_Org_Connection_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Update_Org_Connection_returns_Not_Found_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "76efebf6-d204-c8e8-5a8c-bd11c0a4ae43" + "id": "76efebf6-d204-c8e8-5a8c-bd11c0a4ae45" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_Scanning_Group_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_Scanning_Group_returns_OK_response.json index fa37ebb9c8e..949fd15a46e 100644 --- a/src/test/resources/cassettes/features/v2/Update_Scanning_Group_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_Scanning_Group_returns_OK_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e84" + "id": "01611a93-5e74-0630-3c51-f707c3b51e78" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa6" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238a9d" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_Scanning_Rule_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_Scanning_Rule_returns_Bad_Request_response.json index 21771204ba7..bc71ccd8654 100644 --- a/src/test/resources/cassettes/features/v2/Update_Scanning_Rule_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_Scanning_Rule_returns_Bad_Request_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e81" + "id": "01611a93-5e74-0630-3c51-f707c3b51e84" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa3" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa6" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_Scanning_Rule_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_Scanning_Rule_returns_OK_response.json index fe18d92a837..7a985fbb55d 100644 --- a/src/test/resources/cassettes/features/v2/Update_Scanning_Rule_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_Scanning_Rule_returns_OK_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "01611a93-5e74-0630-3c51-f707c3b51e85" + "id": "01611a93-5e74-0630-3c51-f707c3b51e7b" }, { "httpRequest": { @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa7" + "id": "e6af4a2f-dfda-8f06-6f3a-f5528b238aa0" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_WAF_Custom_Rule_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_a_WAF_Custom_Rule_returns_Bad_Request_response.json index 36d9e528f82..c7a6553a4f2 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_WAF_Custom_Rule_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_WAF_Custom_Rule_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "337b2f05-cc5f-2fb5-c7be-e2e0e5bf9441" + "id": "337b2f05-cc5f-2fb5-c7be-e2e0e5bf9442" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_WAF_Custom_Rule_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_a_WAF_Custom_Rule_returns_OK_response.json index 7b5287a216a..72e65a80efe 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_WAF_Custom_Rule_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_WAF_Custom_Rule_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "337b2f05-cc5f-2fb5-c7be-e2e0e5bf9443" + "id": "337b2f05-cc5f-2fb5-c7be-e2e0e5bf9441" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_WAF_exclusion_filter_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_a_WAF_exclusion_filter_returns_Bad_Request_response.json index 402e0d483a0..370567a4e26 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_WAF_exclusion_filter_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_WAF_exclusion_filter_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "337b2f05-cc5f-2fb5-c7be-e2e0e5bf9442" + "id": "337b2f05-cc5f-2fb5-c7be-e2e0e5bf9443" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_WAF_exclusion_filter_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_a_WAF_exclusion_filter_returns_OK_response.json index b94fa5271d5..2d88a0bc75b 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_WAF_exclusion_filter_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_WAF_exclusion_filter_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "f87651cf-cb9d-db71-c4de-1be9e301b3e8" + "id": "f87651cf-cb9d-db71-c4de-1be9e301b3ea" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_critical_asset_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_a_critical_asset_returns_OK_response.json index 6b10b1f99cb..3f634cdfdc4 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_critical_asset_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_critical_asset_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6ffb5b4d-a3b7-6fa1-1d1c-e0464f43c9e5" + "id": "6ffb5b4d-a3b7-6fa1-1d1c-e0464f43c9e6" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_custom_framework_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_a_custom_framework_returns_OK_response.json index cf8ae047cfb..4144e776050 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_custom_framework_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_custom_framework_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "13fe9685-b072-5fe0-c841-4499a9e71c72" + "id": "13fe9685-b072-5fe0-c841-4499a9e71c71" }, { "httpRequest": { @@ -83,6 +83,6 @@ "timeToLive": { "unlimited": true }, - "id": "e535722a-99e3-30cf-49f7-2d093bd78b3b" + "id": "e535722a-99e3-30cf-49f7-2d093bd78b3a" } ] \ No newline at end of file diff --git a/src/test/resources/cassettes/features/v2/Update_a_legacy_WAF_exclusion_filter_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_a_legacy_WAF_exclusion_filter_returns_Bad_Request_response.json index c3918bef3d9..84230fa914c 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_legacy_WAF_exclusion_filter_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_legacy_WAF_exclusion_filter_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "f87651cf-cb9d-db71-c4de-1be9e301b3e9" + "id": "f87651cf-cb9d-db71-c4de-1be9e301b3e8" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_pipeline_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_a_pipeline_returns_Bad_Request_response.json index 5c938dd3d90..3f6cb5725eb 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_pipeline_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_pipeline_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "1c5790bf-1fdc-930d-ee1e-046e57b87c7f" + "id": "1c5790bf-1fdc-930d-ee1e-046e57b87c80" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_retention_filter_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_a_retention_filter_returns_Bad_Request_response.json index c669844b54b..dff3c5435d1 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_retention_filter_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_retention_filter_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "b2404278-8cc9-cba4-e3eb-03a7fdff0697" + "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069d" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_retention_filter_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_a_retention_filter_returns_OK_response.json index a69a6922bcb..cd4b267d68f 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_retention_filter_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_retention_filter_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069d" + "id": "b2404278-8cc9-cba4-e3eb-03a7fdff0699" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_retention_filter_with_trace_rate_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_a_retention_filter_with_trace_rate_returns_OK_response.json index 08f30297131..22477665035 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_retention_filter_with_trace_rate_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_retention_filter_with_trace_rate_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069a" + "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069b" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_retention_filters_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_a_retention_filters_returns_Bad_Request_response.json index 87c7ca222ab..f7ba5a0c135 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_retention_filters_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_retention_filters_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069c" + "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069e" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_retention_filters_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_a_retention_filters_returns_OK_response.json index 4f3f459c693..4dbd4d81382 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_retention_filters_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_retention_filters_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "b2404278-8cc9-cba4-e3eb-03a7fdff0698" + "id": "b2404278-8cc9-cba4-e3eb-03a7fdff069a" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_role_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_a_role_returns_Bad_Request_response.json index a75c509829f..73305cd59ef 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_role_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_role_returns_Bad_Request_response.json @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "ab2c08c1-60c7-9278-3246-d650bb892172" + "id": "ab2c08c1-60c7-9278-3246-d650bb892171" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_role_returns_Not_found_response.json b/src/test/resources/cassettes/features/v2/Update_a_role_returns_Not_found_response.json index 10ca3fd4408..811fe023421 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_role_returns_Not_found_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_role_returns_Not_found_response.json @@ -23,7 +23,7 @@ "timeToLive": { "unlimited": true }, - "id": "ab2c08c1-60c7-9278-3246-d650bb89216d" + "id": "ab2c08c1-60c7-9278-3246-d650bb892172" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_a_role_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_a_role_returns_OK_response.json index a6258c72557..b402a04ba55 100644 --- a/src/test/resources/cassettes/features/v2/Update_a_role_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_a_role_returns_OK_response.json @@ -53,7 +53,7 @@ "timeToLive": { "unlimited": true }, - "id": "ab2c08c1-60c7-9278-3246-d650bb892171" + "id": "ab2c08c1-60c7-9278-3246-d650bb892170" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_an_AWS_integration_returns_AWS_Account_object_response.json b/src/test/resources/cassettes/features/v2/Update_an_AWS_integration_returns_AWS_Account_object_response.json index 6b99e4ee8e2..c0415eb8a2f 100644 --- a/src/test/resources/cassettes/features/v2/Update_an_AWS_integration_returns_AWS_Account_object_response.json +++ b/src/test/resources/cassettes/features/v2/Update_an_AWS_integration_returns_AWS_Account_object_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "479ab602-1a6a-ff9c-cfae-4a71849b3ce6" + "id": "479ab602-1a6a-ff9c-cfae-4a71849b3ce5" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_an_existing_Workflow_returns_Bad_request_response.json b/src/test/resources/cassettes/features/v2/Update_an_existing_Workflow_returns_Bad_request_response.json index ed23fbee9f5..3fff6d70d3c 100644 --- a/src/test/resources/cassettes/features/v2/Update_an_existing_Workflow_returns_Bad_request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_an_existing_Workflow_returns_Bad_request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "ef58c8e5-8d44-f741-5735-0d8c01ffa21c" + "id": "ef58c8e5-8d44-f741-5735-0d8c01ffa21e" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_an_existing_Workflow_returns_Successfully_updated_a_workflow_response.json b/src/test/resources/cassettes/features/v2/Update_an_existing_Workflow_returns_Successfully_updated_a_workflow_response.json index be6cf1cbadf..0f470acf82f 100644 --- a/src/test/resources/cassettes/features/v2/Update_an_existing_Workflow_returns_Successfully_updated_a_workflow_response.json +++ b/src/test/resources/cassettes/features/v2/Update_an_existing_Workflow_returns_Successfully_updated_a_workflow_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "ef58c8e5-8d44-f741-5735-0d8c01ffa21e" + "id": "ef58c8e5-8d44-f741-5735-0d8c01ffa21c" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_attributes_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_case_attributes_returns_OK_response.json index 3f87e60b27c..aa33727ca2c 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_attributes_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_attributes_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145fa" + "id": "79babc38-7a70-5347-c8a6-73b0e70145ff" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_Bad_Request_response.json index c69aaf87654..876ad2e41fe 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "dc45fc73-0f09-c12d-941b-eaf799af646a" + "id": "dc45fc73-0f09-c12d-941b-eaf799af6469" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_Not_Found_response.json b/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_Not_Found_response.json index 8630f955ca7..a9ce37fb461 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_Not_Found_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_Not_Found_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145eb" + "id": "79babc38-7a70-5347-c8a6-73b0e7014600" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_OK_response.json index 86bac26ee06..3e0850132da 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_custom_attribute_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "dc45fc73-0f09-c12d-941b-eaf799af6468" + "id": "dc45fc73-0f09-c12d-941b-eaf799af646a" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_description_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_case_description_returns_OK_response.json index bdbc4ea0c87..31556059bfd 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_description_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_description_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f5" + "id": "79babc38-7a70-5347-c8a6-73b0e70145ec" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_priority_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_case_priority_returns_Bad_Request_response.json index 1ef3a7d5fe9..88b2bb14ac5 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_priority_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_priority_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145fc" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f5" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_priority_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_case_priority_returns_OK_response.json index 8ea7f2b88b7..8acf5728617 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_priority_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_priority_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145fd" + "id": "79babc38-7a70-5347-c8a6-73b0e70145e9" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_status_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_case_status_returns_Bad_Request_response.json index 43e74722652..60921358de9 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_status_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_status_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145f6" + "id": "79babc38-7a70-5347-c8a6-73b0e70145ef" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_status_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_case_status_returns_OK_response.json index 09ff145d4be..b4040b956bc 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_status_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_status_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145ef" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f9" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_title_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_case_title_returns_Bad_Request_response.json index b7f4230cf66..c06b8597bd4 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_title_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_title_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145ed" + "id": "79babc38-7a70-5347-c8a6-73b0e70145ea" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_case_title_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_case_title_returns_OK_response.json index 23e97a25f8a..1a052a0e510 100644 --- a/src/test/resources/cassettes/features/v2/Update_case_title_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_case_title_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "79babc38-7a70-5347-c8a6-73b0e70145e9" + "id": "79babc38-7a70-5347-c8a6-73b0e70145f2" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_datastore_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_datastore_returns_OK_response.json index 817c27a7388..3300bd74e78 100644 --- a/src/test/resources/cassettes/features/v2/Update_datastore_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_datastore_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d32" + "id": "6574cf7e-1c55-24e1-45d2-b92f9fa74d2f" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_incident_notification_template_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_incident_notification_template_returns_OK_response.json index 0da099d66fe..b9bf77f1d8f 100644 --- a/src/test/resources/cassettes/features/v2/Update_incident_notification_template_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_incident_notification_template_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "7bcfec66-5300-9891-51e5-e4d7e0833bd7" + "id": "7bcfec66-5300-9891-51e5-e4d7e0833bda" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_the_state_of_an_issue_returns_Bad_Request_response.json b/src/test/resources/cassettes/features/v2/Update_the_state_of_an_issue_returns_Bad_Request_response.json index e642f719a20..4a27cd1e9d6 100644 --- a/src/test/resources/cassettes/features/v2/Update_the_state_of_an_issue_returns_Bad_Request_response.json +++ b/src/test/resources/cassettes/features/v2/Update_the_state_of_an_issue_returns_Bad_Request_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "a2c05b3b-bab5-013b-200d-7dc622c1b35e" + "id": "a2c05b3b-bab5-013b-200d-7dc622c1b35f" }, { "httpRequest": { diff --git a/src/test/resources/cassettes/features/v2/Update_the_state_of_an_issue_returns_OK_response.json b/src/test/resources/cassettes/features/v2/Update_the_state_of_an_issue_returns_OK_response.json index 0c4d5613d6a..6078cbf29e3 100644 --- a/src/test/resources/cassettes/features/v2/Update_the_state_of_an_issue_returns_OK_response.json +++ b/src/test/resources/cassettes/features/v2/Update_the_state_of_an_issue_returns_OK_response.json @@ -27,7 +27,7 @@ "timeToLive": { "unlimited": true }, - "id": "a2c05b3b-bab5-013b-200d-7dc622c1b35f" + "id": "a2c05b3b-bab5-013b-200d-7dc622c1b35e" }, { "httpRequest": { diff --git a/src/test/resources/com/datadog/api/client/v2/api/dashboard_secure_embed.feature b/src/test/resources/com/datadog/api/client/v2/api/dashboard_secure_embed.feature new file mode 100644 index 00000000000..25cb5335e32 --- /dev/null +++ b/src/test/resources/com/datadog/api/client/v2/api/dashboard_secure_embed.feature @@ -0,0 +1,99 @@ +@endpoint(dashboard-secure-embed) @endpoint(dashboard-secure-embed-v2) @endpoint(https://api.datadoghq.com) @endpoint(https://api.datadoghq.eu) @endpoint(https://api.ddog-gov.com) @endpoint(https://api.us5.datadoghq.com) +Feature: Dashboard Secure Embed + Manage securely embedded Datadog dashboards. Secure embeds use HMAC-SHA256 + signed sessions for authentication, enabling customers to embed dashboards + in their own applications with server-side auth control. Unlike public + dashboards (open URL) or invite dashboards (email-based access), secure + embeds provide programmatic access control. **Requirements:** - Org + setting: SharedDashboards > Embed sharing must be enabled. - AuthN: + Datadog API key and application key. - Read operations require + `dashboards_read` permission. - Write operations require + `dashboards_embed_share` permission. + + Background: + Given a valid "apiKeyAuth" key in the system + And a valid "appKeyAuth" key in the system + And an instance of "DashboardSecureEmbed" API + + @generated @skip @team:DataDog/dashboardsnotebooks-backend + Scenario: Create a secure embed for a dashboard returns "Conflict — max 1000 share URLs per dashboard exceeded" response + Given operation "CreateDashboardSecureEmbed" enabled + And new "CreateDashboardSecureEmbed" request + And request contains "dashboard_id" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"global_time": {"live_span": "1h"}, "global_time_selectable": true, "selectable_template_vars": [{"default_values": ["1"], "name": "org_id", "prefix": "org_id", "visible_tags": ["1"]}], "status": "active", "title": "Q1 Metrics Dashboard", "viewing_preferences": {"high_density": false, "theme": "system"}}, "type": "secure_embed_request"}} + When the request is sent + Then the response status is 409 Conflict — max 1000 share URLs per dashboard exceeded + + @generated @skip @team:DataDog/dashboardsnotebooks-backend + Scenario: Create a secure embed for a dashboard returns "Dashboard Not Found" response + Given operation "CreateDashboardSecureEmbed" enabled + And new "CreateDashboardSecureEmbed" request + And request contains "dashboard_id" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"global_time": {"live_span": "1h"}, "global_time_selectable": true, "selectable_template_vars": [{"default_values": ["1"], "name": "org_id", "prefix": "org_id", "visible_tags": ["1"]}], "status": "active", "title": "Q1 Metrics Dashboard", "viewing_preferences": {"high_density": false, "theme": "system"}}, "type": "secure_embed_request"}} + When the request is sent + Then the response status is 404 Dashboard Not Found + + @generated @skip @team:DataDog/dashboardsnotebooks-backend + Scenario: Create a secure embed for a dashboard returns "OK" response + Given operation "CreateDashboardSecureEmbed" enabled + And new "CreateDashboardSecureEmbed" request + And request contains "dashboard_id" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"global_time": {"live_span": "1h"}, "global_time_selectable": true, "selectable_template_vars": [{"default_values": ["1"], "name": "org_id", "prefix": "org_id", "visible_tags": ["1"]}], "status": "active", "title": "Q1 Metrics Dashboard", "viewing_preferences": {"high_density": false, "theme": "system"}}, "type": "secure_embed_request"}} + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/dashboardsnotebooks-backend + Scenario: Delete a secure embed for a dashboard returns "No Content" response + Given operation "DeleteDashboardSecureEmbed" enabled + And new "DeleteDashboardSecureEmbed" request + And request contains "dashboard_id" parameter from "REPLACE.ME" + And request contains "token" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 204 No Content + + @generated @skip @team:DataDog/dashboardsnotebooks-backend + Scenario: Delete a secure embed for a dashboard returns "Not Found" response + Given operation "DeleteDashboardSecureEmbed" enabled + And new "DeleteDashboardSecureEmbed" request + And request contains "dashboard_id" parameter from "REPLACE.ME" + And request contains "token" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/dashboardsnotebooks-backend + Scenario: Get a secure embed for a dashboard returns "Not Found" response + Given operation "GetDashboardSecureEmbed" enabled + And new "GetDashboardSecureEmbed" request + And request contains "dashboard_id" parameter from "REPLACE.ME" + And request contains "token" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/dashboardsnotebooks-backend + Scenario: Get a secure embed for a dashboard returns "OK" response + Given operation "GetDashboardSecureEmbed" enabled + And new "GetDashboardSecureEmbed" request + And request contains "dashboard_id" parameter from "REPLACE.ME" + And request contains "token" parameter from "REPLACE.ME" + When the request is sent + Then the response status is 200 OK + + @generated @skip @team:DataDog/dashboardsnotebooks-backend + Scenario: Update a secure embed for a dashboard returns "Not Found" response + Given operation "UpdateDashboardSecureEmbed" enabled + And new "UpdateDashboardSecureEmbed" request + And request contains "dashboard_id" parameter from "REPLACE.ME" + And request contains "token" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"global_time": {"live_span": "1h"}, "global_time_selectable": true, "selectable_template_vars": [{"default_values": ["1"], "name": "org_id", "prefix": "org_id", "visible_tags": ["1"]}], "status": "active", "title": "Q1 Metrics Dashboard (Updated)", "viewing_preferences": {"high_density": false, "theme": "system"}}, "type": "secure_embed_update_request"}} + When the request is sent + Then the response status is 404 Not Found + + @generated @skip @team:DataDog/dashboardsnotebooks-backend + Scenario: Update a secure embed for a dashboard returns "OK" response + Given operation "UpdateDashboardSecureEmbed" enabled + And new "UpdateDashboardSecureEmbed" request + And request contains "dashboard_id" parameter from "REPLACE.ME" + And request contains "token" parameter from "REPLACE.ME" + And body with value {"data": {"attributes": {"global_time": {"live_span": "1h"}, "global_time_selectable": true, "selectable_template_vars": [{"default_values": ["1"], "name": "org_id", "prefix": "org_id", "visible_tags": ["1"]}], "status": "active", "title": "Q1 Metrics Dashboard (Updated)", "viewing_preferences": {"high_density": false, "theme": "system"}}, "type": "secure_embed_update_request"}} + When the request is sent + Then the response status is 200 OK diff --git a/src/test/resources/com/datadog/api/client/v2/api/undo.json b/src/test/resources/com/datadog/api/client/v2/api/undo.json index 078ced2bd84..ca868f2fc3a 100644 --- a/src/test/resources/com/datadog/api/client/v2/api/undo.json +++ b/src/test/resources/com/datadog/api/client/v2/api/undo.json @@ -1470,6 +1470,41 @@ "type": "safe" } }, + "CreateDashboardSecureEmbed": { + "tag": "Dashboard Secure Embed", + "undo": { + "operationId": "DeleteDashboardSecureEmbed", + "parameters": [ + { + "name": "dashboard_id", + "source": "data.attributes.dashboard_id" + }, + { + "name": "token", + "source": "data.attributes.token" + } + ], + "type": "unsafe" + } + }, + "DeleteDashboardSecureEmbed": { + "tag": "Dashboard Secure Embed", + "undo": { + "type": "idempotent" + } + }, + "GetDashboardSecureEmbed": { + "tag": "Dashboard Secure Embed", + "undo": { + "type": "safe" + } + }, + "UpdateDashboardSecureEmbed": { + "tag": "Dashboard Secure Embed", + "undo": { + "type": "idempotent" + } + }, "GetAllDatasets": { "tag": "Datasets", "undo": {