diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 00ba154a3a7..4231b687d9d 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -132831,6 +132831,253 @@ components:
description: Offset type.
type: string
type: object
+ TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest:
+ description: Authentication for creating the Temporal Cloud OpenMetrics integration account. Exactly one method is set.
+ oneOf:
+ - $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest"
+ TemporalCloudOpenMetricsIntegrationAccountAuthenticationResponse:
+ description: Authentication configured on the Temporal Cloud OpenMetrics integration account.
+ oneOf:
+ - $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthResponse"
+ TemporalCloudOpenMetricsIntegrationAccountAuthenticationUpdate:
+ description: Authentication for updating the Temporal Cloud OpenMetrics integration account. Exactly one method is set.
+ oneOf:
+ - $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthUpdate"
+ TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest:
+ additionalProperties: false
+ description: >-
+ Bearer token authentication. Use the API key of a Temporal Cloud service account with the Metrics Read-Only account-level role.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthType"
+ token:
+ description: Secret token used to authenticate with Temporal Cloud.
+ example: your-token
+ type: string
+ writeOnly: true
+ required:
+ - auth_type
+ - token
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthResponse:
+ description: The bearer token authentication method configured on the account.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthType"
+ required:
+ - auth_type
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthType:
+ default: bearer_token
+ description: The authentication method type.
+ enum:
+ - bearer_token
+ example: bearer_token
+ type: string
+ x-enum-varnames:
+ - BEARER_TOKEN
+ TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthUpdate:
+ additionalProperties: false
+ description: >-
+ Bearer token authentication. Use the API key of a Temporal Cloud service account with the Metrics Read-Only account-level role. Only the fields provided are changed; omit `token` to keep the stored one.
+ properties:
+ auth_type:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthType"
+ token:
+ description: Secret token used to authenticate with Temporal Cloud.
+ example: your-token
+ type: string
+ writeOnly: true
+ required:
+ - auth_type
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountCreateAttributes:
+ description: Writable attributes used to create a Temporal Cloud OpenMetrics integration account.
+ properties:
+ authentication:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest"
+ name:
+ description: Human-readable name of the Temporal Cloud OpenMetrics integration account.
+ example: temporal-cloud-prod
+ type: string
+ settings:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountSettingsRequest"
+ required:
+ - name
+ - authentication
+ - settings
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountCreateData:
+ description: Data envelope for creating a Temporal Cloud OpenMetrics integration account.
+ properties:
+ attributes:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountCreateAttributes"
+ type:
+ $ref: "#/components/schemas/IntegrationAccountType"
+ required:
+ - type
+ - attributes
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountCreateRequest:
+ description: Request payload to create a Temporal Cloud OpenMetrics integration account.
+ properties:
+ data:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountCreateData"
+ required:
+ - data
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountResponse:
+ description: Response payload for a single Temporal Cloud OpenMetrics integration account.
+ properties:
+ data:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountResponseData"
+ required:
+ - data
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountResponseAttributes:
+ description: Attributes of a Temporal Cloud OpenMetrics integration account returned in responses.
+ properties:
+ authentication:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountAuthenticationResponse"
+ dataflows:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationDataflowsResponse"
+ name:
+ description: Human-readable name of the Temporal Cloud OpenMetrics integration account.
+ example: temporal-cloud-prod
+ type: string
+ settings:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountSettingsResponse"
+ required:
+ - name
+ - settings
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountResponseData:
+ description: Data envelope of a Temporal Cloud OpenMetrics integration account, including server-assigned identity.
+ properties:
+ attributes:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountResponseAttributes"
+ id:
+ description: Server-generated unique identifier of the Temporal Cloud OpenMetrics integration account.
+ example: 7c2d4e91-5a3b-4f68-b0e2-9d1f6a8c3e57
+ readOnly: true
+ type: string
+ type:
+ $ref: "#/components/schemas/IntegrationAccountType"
+ required:
+ - id
+ - attributes
+ - type
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountSettingsRequest:
+ additionalProperties: false
+ description: Settings for creating the Temporal Cloud OpenMetrics integration account.
+ properties:
+ include_opt_in_labels:
+ description: >-
+ When enabled, Datadog collects Temporal Cloud's [opt-in labels](https://docs.temporal.io/cloud/metrics/openmetrics/metrics-reference#opt-in-labels) (activity type, worker deployment name, and worker build ID) for more granularity on your existing metrics. Enabling them may increase metric collection latency. Defaults to `false`.
+ example: false
+ type: boolean
+ namespaces_to_include:
+ description: >-
+ Comma-separated list of Temporal Cloud namespaces to collect metrics for. An entry can use `*` as a wildcard; for example, `prod-*` matches every namespace starting with `prod-`. Entries may contain only lowercase letters, digits, hyphens, periods and `*`; any other value is rejected with a `422` response. Omit it or leave it empty to collect metrics for all namespaces.
+ example: prod-*,billing.a1b2c
+ type: string
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountSettingsResponse:
+ description: Settings configured on the Temporal Cloud OpenMetrics integration account.
+ properties:
+ include_opt_in_labels:
+ description: >-
+ When enabled, Datadog collects Temporal Cloud's [opt-in labels](https://docs.temporal.io/cloud/metrics/openmetrics/metrics-reference#opt-in-labels) (activity type, worker deployment name, and worker build ID) for more granularity on your existing metrics. Enabling them may increase metric collection latency.
+ example: false
+ type: boolean
+ namespaces_to_include:
+ description: >-
+ Comma-separated list of Temporal Cloud namespaces to collect metrics for. An entry can use `*` as a wildcard; for example, `prod-*` matches every namespace starting with `prod-`. Empty or absent when metrics are collected for all namespaces.
+ example: prod-*,billing.a1b2c
+ type: string
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountSettingsUpdate:
+ additionalProperties: false
+ description: Settings for updating the Temporal Cloud OpenMetrics integration account. Only the fields provided are changed.
+ properties:
+ include_opt_in_labels:
+ description: >-
+ When enabled, Datadog collects Temporal Cloud's [opt-in labels](https://docs.temporal.io/cloud/metrics/openmetrics/metrics-reference#opt-in-labels) (activity type, worker deployment name, and worker build ID) for more granularity on your existing metrics. Enabling them may increase metric collection latency.
+ example: false
+ type: boolean
+ namespaces_to_include:
+ description: >-
+ Comma-separated list of Temporal Cloud namespaces to collect metrics for. An entry can use `*` as a wildcard; for example, `prod-*` matches every namespace starting with `prod-`. Entries may contain only lowercase letters, digits, hyphens, periods and `*`; any other value is rejected with a `422` response. Omit it or leave it empty to collect metrics for all namespaces.
+ example: prod-*,billing.a1b2c
+ type: string
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountUpdateAttributes:
+ description: >-
+ Writable attributes used to update a Temporal Cloud OpenMetrics integration account. Every field is optional; only the fields provided are changed.
+ properties:
+ authentication:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountAuthenticationUpdate"
+ name:
+ description: Human-readable name of the Temporal Cloud OpenMetrics integration account.
+ example: temporal-cloud-prod
+ type: string
+ settings:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountSettingsUpdate"
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountUpdateData:
+ description: Data envelope for updating a Temporal Cloud OpenMetrics integration account.
+ properties:
+ attributes:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountUpdateAttributes"
+ id:
+ description: Unique identifier of the Temporal Cloud OpenMetrics integration account to update.
+ example: 7c2d4e91-5a3b-4f68-b0e2-9d1f6a8c3e57
+ type: string
+ type:
+ $ref: "#/components/schemas/IntegrationAccountType"
+ required:
+ - id
+ - type
+ - attributes
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountUpdateRequest:
+ description: Request payload to update a Temporal Cloud OpenMetrics integration account.
+ properties:
+ data:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountUpdateData"
+ required:
+ - data
+ type: object
+ TemporalCloudOpenMetricsIntegrationAccountsResponse:
+ description: Response payload for a list of Temporal Cloud OpenMetrics integration accounts.
+ properties:
+ data:
+ description: List of Temporal Cloud OpenMetrics integration accounts.
+ items:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountResponseData"
+ type: array
+ required:
+ - data
+ type: object
+ TemporalCloudOpenMetricsIntegrationDataflowsResponse:
+ description: Data Datadog collects from Temporal Cloud OpenMetrics, keyed by dataflow id.
+ properties:
+ temporal-cloud-openmetrics-metrics:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsMetricsIntegrationDataflowResponse"
+ type: object
+ TemporalCloudOpenMetricsMetricsIntegrationDataflowResponse:
+ description: >-
+ Temporal Cloud operational metrics for your namespaces, workflows and task queues, such as workflow and activity rates, task polling, and service request latency, collected from Temporal Cloud's OpenMetrics endpoint. This is the integration's only collection: it is always on and cannot be turned off, which is why it appears in responses only.
+ properties:
+ enabled:
+ description: Whether Datadog collects this data. Always `true`, because this collection cannot be turned off.
+ example: true
+ readOnly: true
+ type: boolean
+ status:
+ $ref: "#/components/schemas/IntegrationAccountDataflowStatus"
+ type: object
TenancyConfig:
description: Response containing a single OCI tenancy integration configuration.
example:
@@ -184028,6 +184275,244 @@ paths:
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/integration-interfaces/temporal-cloud-openmetrics/accounts:
+ get:
+ description: List Temporal Cloud OpenMetrics integration accounts.
+ operationId: ListTemporalCloudOpenMetricsIntegrationAccounts
+ responses:
+ "200":
+ content:
+ application/json:
+ examples:
+ default:
+ value:
+ data:
+ - attributes:
+ authentication:
+ auth_type: bearer_token
+ dataflows:
+ temporal-cloud-openmetrics-metrics:
+ enabled: true
+ status:
+ health: DATAFLOW_HEALTH_OK
+ updated_at: "2026-06-25T08:30:50Z"
+ name: temporal-cloud-prod
+ settings:
+ include_opt_in_labels: false
+ namespaces_to_include: prod-*,billing.a1b2c
+ id: 7c2d4e91-5a3b-4f68-b0e2-9d1f6a8c3e57
+ type: integration-account
+ schema:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountsResponse"
+ description: OK
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: List Temporal Cloud OpenMetrics accounts
+ tags:
+ - Temporal Cloud OpenMetrics Integration
+ "x-permission":
+ operator: OR
+ permissions:
+ - integrations_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/).
+ post:
+ description: Create a Temporal Cloud OpenMetrics integration account.
+ operationId: CreateTemporalCloudOpenMetricsIntegrationAccount
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountCreateRequest"
+ required: true
+ responses:
+ "201":
+ content:
+ application/json:
+ examples:
+ default:
+ value:
+ data:
+ attributes:
+ authentication:
+ auth_type: bearer_token
+ dataflows:
+ temporal-cloud-openmetrics-metrics:
+ enabled: true
+ status:
+ health: DATAFLOW_HEALTH_OK
+ updated_at: "2026-06-25T08:30:50Z"
+ name: temporal-cloud-prod
+ settings:
+ include_opt_in_labels: false
+ namespaces_to_include: prod-*,billing.a1b2c
+ id: 7c2d4e91-5a3b-4f68-b0e2-9d1f6a8c3e57
+ type: integration-account
+ schema:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountResponse"
+ description: Created
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "422":
+ $ref: "#/components/responses/UnprocessableEntityResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: Create a Temporal Cloud OpenMetrics account
+ tags:
+ - Temporal Cloud OpenMetrics Integration
+ x-codegen-request-body-name: body
+ "x-permission":
+ operator: OR
+ permissions:
+ - manage_integrations
+ 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/integration-interfaces/temporal-cloud-openmetrics/accounts/{account_id}:
+ delete:
+ description: Delete a Temporal Cloud OpenMetrics integration account.
+ operationId: DeleteTemporalCloudOpenMetricsIntegrationAccount
+ parameters:
+ - $ref: "#/components/parameters/IntegrationAccountIdParameter"
+ responses:
+ "200":
+ description: OK
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: Delete a Temporal Cloud OpenMetrics account
+ tags:
+ - Temporal Cloud OpenMetrics Integration
+ "x-permission":
+ operator: OR
+ permissions:
+ - manage_integrations
+ 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: Get a Temporal Cloud OpenMetrics integration account.
+ operationId: GetTemporalCloudOpenMetricsIntegrationAccount
+ parameters:
+ - $ref: "#/components/parameters/IntegrationAccountIdParameter"
+ responses:
+ "200":
+ content:
+ application/json:
+ examples:
+ default:
+ value:
+ data:
+ attributes:
+ authentication:
+ auth_type: bearer_token
+ dataflows:
+ temporal-cloud-openmetrics-metrics:
+ enabled: true
+ status:
+ health: DATAFLOW_HEALTH_OK
+ updated_at: "2026-06-25T08:30:50Z"
+ name: temporal-cloud-prod
+ settings:
+ include_opt_in_labels: false
+ namespaces_to_include: prod-*,billing.a1b2c
+ id: 7c2d4e91-5a3b-4f68-b0e2-9d1f6a8c3e57
+ type: integration-account
+ schema:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountResponse"
+ description: OK
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: Get a Temporal Cloud OpenMetrics account
+ tags:
+ - Temporal Cloud OpenMetrics Integration
+ "x-permission":
+ operator: OR
+ permissions:
+ - integrations_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: Update a Temporal Cloud OpenMetrics integration account. Only the fields provided are changed.
+ operationId: UpdateTemporalCloudOpenMetricsIntegrationAccount
+ parameters:
+ - $ref: "#/components/parameters/IntegrationAccountIdParameter"
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountUpdateRequest"
+ required: true
+ responses:
+ "200":
+ content:
+ application/json:
+ examples:
+ default:
+ value:
+ data:
+ attributes:
+ authentication:
+ auth_type: bearer_token
+ dataflows:
+ temporal-cloud-openmetrics-metrics:
+ enabled: true
+ status:
+ health: DATAFLOW_HEALTH_OK
+ updated_at: "2026-06-25T08:30:50Z"
+ name: temporal-cloud-prod
+ settings:
+ include_opt_in_labels: false
+ namespaces_to_include: prod-*,billing.a1b2c
+ id: 7c2d4e91-5a3b-4f68-b0e2-9d1f6a8c3e57
+ type: integration-account
+ schema:
+ $ref: "#/components/schemas/TemporalCloudOpenMetricsIntegrationAccountResponse"
+ description: OK
+ "400":
+ $ref: "#/components/responses/BadRequestResponse"
+ "403":
+ $ref: "#/components/responses/ForbiddenResponse"
+ "404":
+ $ref: "#/components/responses/NotFoundResponse"
+ "422":
+ $ref: "#/components/responses/UnprocessableEntityResponse"
+ "429":
+ $ref: "#/components/responses/TooManyRequestsResponse"
+ summary: Update a Temporal Cloud OpenMetrics account
+ tags:
+ - Temporal Cloud OpenMetrics Integration
+ x-codegen-request-body-name: body
+ "x-permission":
+ operator: OR
+ permissions:
+ - manage_integrations
+ 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/integration-interfaces/twilio/accounts:
get:
description: List Twilio integration accounts.
@@ -251060,6 +251545,15 @@ tags:
name: Tag Rules
- description: View and manage teams within Datadog. See the [Teams page](https://docs.datadoghq.com/account_management/teams/) for more information.
name: Teams
+ - description: |-
+ Manage your Datadog Temporal Cloud OpenMetrics integration accounts and account resources
+ directly through the Datadog API. See the
+ [Temporal Cloud OpenMetrics integration page](https://docs.datadoghq.com/integrations/temporal-cloud-openmetrics/) for
+ more information.
+ externalDocs:
+ description: Temporal Cloud OpenMetrics integration.
+ url: https://docs.datadoghq.com/integrations/temporal-cloud-openmetrics/
+ name: Temporal Cloud OpenMetrics Integration
- description: |-
Search and manage flaky tests through Test Optimization. See the [Test Optimization page](https://docs.datadoghq.com/tests/) for more information.
name: Test Optimization
diff --git a/examples/v2/temporal-cloud-openmetrics-integration/CreateTemporalCloudOpenMetricsIntegrationAccount.java b/examples/v2/temporal-cloud-openmetrics-integration/CreateTemporalCloudOpenMetricsIntegrationAccount.java
new file mode 100644
index 00000000000..8f03bf2fded
--- /dev/null
+++ b/examples/v2/temporal-cloud-openmetrics-integration/CreateTemporalCloudOpenMetricsIntegrationAccount.java
@@ -0,0 +1,59 @@
+// Create a Temporal Cloud OpenMetrics account returns "Created" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.TemporalCloudOpenMetricsIntegrationApi;
+import com.datadog.api.client.v2.model.IntegrationAccountType;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthType;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountCreateAttributes;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountCreateData;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountCreateRequest;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountResponse;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountSettingsRequest;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
+ defaultClient.setUnstableOperationEnabled(
+ "v2.createTemporalCloudOpenMetricsIntegrationAccount", true);
+ TemporalCloudOpenMetricsIntegrationApi apiInstance =
+ new TemporalCloudOpenMetricsIntegrationApi(defaultClient);
+
+ TemporalCloudOpenMetricsIntegrationAccountCreateRequest body =
+ new TemporalCloudOpenMetricsIntegrationAccountCreateRequest()
+ .data(
+ new TemporalCloudOpenMetricsIntegrationAccountCreateData()
+ .attributes(
+ new TemporalCloudOpenMetricsIntegrationAccountCreateAttributes()
+ .authentication(
+ new TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest(
+ new TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest()
+ .authType(
+ TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthType
+ .BEARER_TOKEN)
+ .token("your-token")))
+ .name("temporal-cloud-prod")
+ .settings(
+ new TemporalCloudOpenMetricsIntegrationAccountSettingsRequest()
+ .includeOptInLabels(false)
+ .namespacesToInclude("prod-*,billing.a1b2c")))
+ .type(IntegrationAccountType.INTEGRATION_ACCOUNT));
+
+ try {
+ TemporalCloudOpenMetricsIntegrationAccountResponse result =
+ apiInstance.createTemporalCloudOpenMetricsIntegrationAccount(body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " TemporalCloudOpenMetricsIntegrationApi#createTemporalCloudOpenMetricsIntegrationAccount");
+ 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/temporal-cloud-openmetrics-integration/DeleteTemporalCloudOpenMetricsIntegrationAccount.java b/examples/v2/temporal-cloud-openmetrics-integration/DeleteTemporalCloudOpenMetricsIntegrationAccount.java
new file mode 100644
index 00000000000..54e3bd59aea
--- /dev/null
+++ b/examples/v2/temporal-cloud-openmetrics-integration/DeleteTemporalCloudOpenMetricsIntegrationAccount.java
@@ -0,0 +1,28 @@
+// Delete a Temporal Cloud OpenMetrics account returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.TemporalCloudOpenMetricsIntegrationApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
+ defaultClient.setUnstableOperationEnabled(
+ "v2.deleteTemporalCloudOpenMetricsIntegrationAccount", true);
+ TemporalCloudOpenMetricsIntegrationApi apiInstance =
+ new TemporalCloudOpenMetricsIntegrationApi(defaultClient);
+
+ try {
+ apiInstance.deleteTemporalCloudOpenMetricsIntegrationAccount("account_id");
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " TemporalCloudOpenMetricsIntegrationApi#deleteTemporalCloudOpenMetricsIntegrationAccount");
+ 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/temporal-cloud-openmetrics-integration/GetTemporalCloudOpenMetricsIntegrationAccount.java b/examples/v2/temporal-cloud-openmetrics-integration/GetTemporalCloudOpenMetricsIntegrationAccount.java
new file mode 100644
index 00000000000..eccdea38ac3
--- /dev/null
+++ b/examples/v2/temporal-cloud-openmetrics-integration/GetTemporalCloudOpenMetricsIntegrationAccount.java
@@ -0,0 +1,31 @@
+// Get a Temporal Cloud OpenMetrics account returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.TemporalCloudOpenMetricsIntegrationApi;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountResponse;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
+ defaultClient.setUnstableOperationEnabled(
+ "v2.getTemporalCloudOpenMetricsIntegrationAccount", true);
+ TemporalCloudOpenMetricsIntegrationApi apiInstance =
+ new TemporalCloudOpenMetricsIntegrationApi(defaultClient);
+
+ try {
+ TemporalCloudOpenMetricsIntegrationAccountResponse result =
+ apiInstance.getTemporalCloudOpenMetricsIntegrationAccount("account_id");
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " TemporalCloudOpenMetricsIntegrationApi#getTemporalCloudOpenMetricsIntegrationAccount");
+ 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/temporal-cloud-openmetrics-integration/ListTemporalCloudOpenMetricsIntegrationAccounts.java b/examples/v2/temporal-cloud-openmetrics-integration/ListTemporalCloudOpenMetricsIntegrationAccounts.java
new file mode 100644
index 00000000000..88721f67c9f
--- /dev/null
+++ b/examples/v2/temporal-cloud-openmetrics-integration/ListTemporalCloudOpenMetricsIntegrationAccounts.java
@@ -0,0 +1,31 @@
+// List Temporal Cloud OpenMetrics accounts returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.TemporalCloudOpenMetricsIntegrationApi;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountsResponse;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
+ defaultClient.setUnstableOperationEnabled(
+ "v2.listTemporalCloudOpenMetricsIntegrationAccounts", true);
+ TemporalCloudOpenMetricsIntegrationApi apiInstance =
+ new TemporalCloudOpenMetricsIntegrationApi(defaultClient);
+
+ try {
+ TemporalCloudOpenMetricsIntegrationAccountsResponse result =
+ apiInstance.listTemporalCloudOpenMetricsIntegrationAccounts();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " TemporalCloudOpenMetricsIntegrationApi#listTemporalCloudOpenMetricsIntegrationAccounts");
+ 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/temporal-cloud-openmetrics-integration/UpdateTemporalCloudOpenMetricsIntegrationAccount.java b/examples/v2/temporal-cloud-openmetrics-integration/UpdateTemporalCloudOpenMetricsIntegrationAccount.java
new file mode 100644
index 00000000000..d10028e8fdc
--- /dev/null
+++ b/examples/v2/temporal-cloud-openmetrics-integration/UpdateTemporalCloudOpenMetricsIntegrationAccount.java
@@ -0,0 +1,60 @@
+// Update a Temporal Cloud OpenMetrics account returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.TemporalCloudOpenMetricsIntegrationApi;
+import com.datadog.api.client.v2.model.IntegrationAccountType;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountAuthenticationUpdate;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthType;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthUpdate;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountResponse;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountSettingsUpdate;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountUpdateAttributes;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountUpdateData;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountUpdateRequest;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setAccessToken(System.getenv("DD_BEARER_TOKEN"));
+ defaultClient.setUnstableOperationEnabled(
+ "v2.updateTemporalCloudOpenMetricsIntegrationAccount", true);
+ TemporalCloudOpenMetricsIntegrationApi apiInstance =
+ new TemporalCloudOpenMetricsIntegrationApi(defaultClient);
+
+ TemporalCloudOpenMetricsIntegrationAccountUpdateRequest body =
+ new TemporalCloudOpenMetricsIntegrationAccountUpdateRequest()
+ .data(
+ new TemporalCloudOpenMetricsIntegrationAccountUpdateData()
+ .attributes(
+ new TemporalCloudOpenMetricsIntegrationAccountUpdateAttributes()
+ .authentication(
+ new TemporalCloudOpenMetricsIntegrationAccountAuthenticationUpdate(
+ new TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthUpdate()
+ .authType(
+ TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthType
+ .BEARER_TOKEN)
+ .token("your-token")))
+ .name("temporal-cloud-prod")
+ .settings(
+ new TemporalCloudOpenMetricsIntegrationAccountSettingsUpdate()
+ .includeOptInLabels(false)
+ .namespacesToInclude("prod-*,billing.a1b2c")))
+ .id("7c2d4e91-5a3b-4f68-b0e2-9d1f6a8c3e57")
+ .type(IntegrationAccountType.INTEGRATION_ACCOUNT));
+
+ try {
+ TemporalCloudOpenMetricsIntegrationAccountResponse result =
+ apiInstance.updateTemporalCloudOpenMetricsIntegrationAccount("account_id", body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling"
+ + " TemporalCloudOpenMetricsIntegrationApi#updateTemporalCloudOpenMetricsIntegrationAccount");
+ 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 5f63a511a5f..9bee5a172af 100644
--- a/src/main/java/com/datadog/api/client/ApiClient.java
+++ b/src/main/java/com/datadog/api/client/ApiClient.java
@@ -1414,6 +1414,11 @@ public class ApiClient {
put("v2.getSnowflakeIntegrationAccount", false);
put("v2.listSnowflakeIntegrationAccounts", false);
put("v2.updateSnowflakeIntegrationAccount", false);
+ put("v2.createTemporalCloudOpenMetricsIntegrationAccount", false);
+ put("v2.deleteTemporalCloudOpenMetricsIntegrationAccount", false);
+ put("v2.getTemporalCloudOpenMetricsIntegrationAccount", false);
+ put("v2.listTemporalCloudOpenMetricsIntegrationAccounts", false);
+ put("v2.updateTemporalCloudOpenMetricsIntegrationAccount", false);
put("v2.createTwilioIntegrationAccount", false);
put("v2.deleteTwilioIntegrationAccount", false);
put("v2.getTwilioIntegrationAccount", false);
diff --git a/src/main/java/com/datadog/api/client/v2/api/TemporalCloudOpenMetricsIntegrationApi.java b/src/main/java/com/datadog/api/client/v2/api/TemporalCloudOpenMetricsIntegrationApi.java
new file mode 100644
index 00000000000..6219d1dbc60
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/api/TemporalCloudOpenMetricsIntegrationApi.java
@@ -0,0 +1,863 @@
+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.TemporalCloudOpenMetricsIntegrationAccountCreateRequest;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountResponse;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountUpdateRequest;
+import com.datadog.api.client.v2.model.TemporalCloudOpenMetricsIntegrationAccountsResponse;
+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 TemporalCloudOpenMetricsIntegrationApi {
+ private ApiClient apiClient;
+
+ public TemporalCloudOpenMetricsIntegrationApi() {
+ this(ApiClient.getDefaultApiClient());
+ }
+
+ public TemporalCloudOpenMetricsIntegrationApi(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 Temporal Cloud OpenMetrics account.
+ *
+ *
See {@link #createTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo}.
+ *
+ * @param body (required)
+ * @return TemporalCloudOpenMetricsIntegrationAccountResponse
+ * @throws ApiException if fails to make API call
+ */
+ public TemporalCloudOpenMetricsIntegrationAccountResponse
+ createTemporalCloudOpenMetricsIntegrationAccount(
+ TemporalCloudOpenMetricsIntegrationAccountCreateRequest body) throws ApiException {
+ return createTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo(body).getData();
+ }
+
+ /**
+ * Create a Temporal Cloud OpenMetrics account.
+ *
+ *
See {@link #createTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync}.
+ *
+ * @param body (required)
+ * @return CompletableFuture<TemporalCloudOpenMetricsIntegrationAccountResponse>
+ */
+ public CompletableFuture
+ createTemporalCloudOpenMetricsIntegrationAccountAsync(
+ TemporalCloudOpenMetricsIntegrationAccountCreateRequest body) {
+ return createTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync(body)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Create a Temporal Cloud OpenMetrics integration account.
+ *
+ * @param body (required)
+ * @return ApiResponse<TemporalCloudOpenMetricsIntegrationAccountResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 201 | Created | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 422 | The server cannot process the request because it contains invalid data. | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse
+ createTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo(
+ TemporalCloudOpenMetricsIntegrationAccountCreateRequest body) throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "createTemporalCloudOpenMetricsIntegrationAccount";
+ 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 'body' is set
+ if (body == null) {
+ throw new ApiException(
+ 400,
+ "Missing the required parameter 'body' when calling"
+ + " createTemporalCloudOpenMetricsIntegrationAccount");
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.createTemporalCloudOpenMetricsIntegrationAccount",
+ 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 Temporal Cloud OpenMetrics account.
+ *
+ * See {@link #createTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo}.
+ *
+ * @param body (required)
+ * @return
+ * CompletableFuture<ApiResponse<TemporalCloudOpenMetricsIntegrationAccountResponse>>
+ */
+ public CompletableFuture>
+ createTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync(
+ TemporalCloudOpenMetricsIntegrationAccountCreateRequest body) {
+ // Check if unstable operation is enabled
+ String operationId = "createTemporalCloudOpenMetricsIntegrationAccount";
+ 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 'body' is set
+ if (body == null) {
+ CompletableFuture> result =
+ new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'body' when calling"
+ + " createTemporalCloudOpenMetricsIntegrationAccount"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.createTemporalCloudOpenMetricsIntegrationAccount",
+ 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 Temporal Cloud OpenMetrics account.
+ *
+ * See {@link #deleteTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @throws ApiException if fails to make API call
+ */
+ public void deleteTemporalCloudOpenMetricsIntegrationAccount(String accountId)
+ throws ApiException {
+ deleteTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo(accountId);
+ }
+
+ /**
+ * Delete a Temporal Cloud OpenMetrics account.
+ *
+ *
See {@link #deleteTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return CompletableFuture
+ */
+ public CompletableFuture deleteTemporalCloudOpenMetricsIntegrationAccountAsync(
+ String accountId) {
+ return deleteTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync(accountId)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Delete a Temporal Cloud OpenMetrics integration account.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return ApiResponse<Void>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse deleteTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo(
+ String accountId) throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "deleteTemporalCloudOpenMetricsIntegrationAccount";
+ 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 'accountId' is set
+ if (accountId == null) {
+ throw new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " deleteTemporalCloudOpenMetricsIntegrationAccount");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.deleteTemporalCloudOpenMetricsIntegrationAccount",
+ 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 Temporal Cloud OpenMetrics account.
+ *
+ * See {@link #deleteTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return CompletableFuture<ApiResponse<Void>>
+ */
+ public CompletableFuture>
+ deleteTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync(String accountId) {
+ // Check if unstable operation is enabled
+ String operationId = "deleteTemporalCloudOpenMetricsIntegrationAccount";
+ 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 'accountId' is set
+ if (accountId == null) {
+ CompletableFuture> result = new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " deleteTemporalCloudOpenMetricsIntegrationAccount"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.deleteTemporalCloudOpenMetricsIntegrationAccount",
+ 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 Temporal Cloud OpenMetrics account.
+ *
+ * See {@link #getTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return TemporalCloudOpenMetricsIntegrationAccountResponse
+ * @throws ApiException if fails to make API call
+ */
+ public TemporalCloudOpenMetricsIntegrationAccountResponse
+ getTemporalCloudOpenMetricsIntegrationAccount(String accountId) throws ApiException {
+ return getTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo(accountId).getData();
+ }
+
+ /**
+ * Get a Temporal Cloud OpenMetrics account.
+ *
+ *
See {@link #getTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return CompletableFuture<TemporalCloudOpenMetricsIntegrationAccountResponse>
+ */
+ public CompletableFuture
+ getTemporalCloudOpenMetricsIntegrationAccountAsync(String accountId) {
+ return getTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync(accountId)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Get a Temporal Cloud OpenMetrics integration account.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return ApiResponse<TemporalCloudOpenMetricsIntegrationAccountResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse
+ getTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo(String accountId)
+ throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "getTemporalCloudOpenMetricsIntegrationAccount";
+ 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 'accountId' is set
+ if (accountId == null) {
+ throw new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " getTemporalCloudOpenMetricsIntegrationAccount");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.getTemporalCloudOpenMetricsIntegrationAccount",
+ 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 Temporal Cloud OpenMetrics account.
+ *
+ * See {@link #getTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @return
+ * CompletableFuture<ApiResponse<TemporalCloudOpenMetricsIntegrationAccountResponse>>
+ */
+ public CompletableFuture>
+ getTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync(String accountId) {
+ // Check if unstable operation is enabled
+ String operationId = "getTemporalCloudOpenMetricsIntegrationAccount";
+ 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 'accountId' is set
+ if (accountId == null) {
+ CompletableFuture> result =
+ new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " getTemporalCloudOpenMetricsIntegrationAccount"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.getTemporalCloudOpenMetricsIntegrationAccount",
+ 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() {});
+ }
+
+ /**
+ * List Temporal Cloud OpenMetrics accounts.
+ *
+ * See {@link #listTemporalCloudOpenMetricsIntegrationAccountsWithHttpInfo}.
+ *
+ * @return TemporalCloudOpenMetricsIntegrationAccountsResponse
+ * @throws ApiException if fails to make API call
+ */
+ public TemporalCloudOpenMetricsIntegrationAccountsResponse
+ listTemporalCloudOpenMetricsIntegrationAccounts() throws ApiException {
+ return listTemporalCloudOpenMetricsIntegrationAccountsWithHttpInfo().getData();
+ }
+
+ /**
+ * List Temporal Cloud OpenMetrics accounts.
+ *
+ *
See {@link #listTemporalCloudOpenMetricsIntegrationAccountsWithHttpInfoAsync}.
+ *
+ * @return CompletableFuture<TemporalCloudOpenMetricsIntegrationAccountsResponse>
+ */
+ public CompletableFuture
+ listTemporalCloudOpenMetricsIntegrationAccountsAsync() {
+ return listTemporalCloudOpenMetricsIntegrationAccountsWithHttpInfoAsync()
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * List Temporal Cloud OpenMetrics integration accounts.
+ *
+ * @return ApiResponse<TemporalCloudOpenMetricsIntegrationAccountsResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse
+ listTemporalCloudOpenMetricsIntegrationAccountsWithHttpInfo() throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "listTemporalCloudOpenMetricsIntegrationAccounts";
+ 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;
+ // create path and map variables
+ String localVarPath = "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.listTemporalCloudOpenMetricsIntegrationAccounts",
+ 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() {});
+ }
+
+ /**
+ * List Temporal Cloud OpenMetrics accounts.
+ *
+ * See {@link #listTemporalCloudOpenMetricsIntegrationAccountsWithHttpInfo}.
+ *
+ * @return
+ * CompletableFuture<ApiResponse<TemporalCloudOpenMetricsIntegrationAccountsResponse>>
+ */
+ public CompletableFuture>
+ listTemporalCloudOpenMetricsIntegrationAccountsWithHttpInfoAsync() {
+ // Check if unstable operation is enabled
+ String operationId = "listTemporalCloudOpenMetricsIntegrationAccounts";
+ 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;
+ // create path and map variables
+ String localVarPath = "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.listTemporalCloudOpenMetricsIntegrationAccounts",
+ 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 Temporal Cloud OpenMetrics account.
+ *
+ * See {@link #updateTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @param body (required)
+ * @return TemporalCloudOpenMetricsIntegrationAccountResponse
+ * @throws ApiException if fails to make API call
+ */
+ public TemporalCloudOpenMetricsIntegrationAccountResponse
+ updateTemporalCloudOpenMetricsIntegrationAccount(
+ String accountId, TemporalCloudOpenMetricsIntegrationAccountUpdateRequest body)
+ throws ApiException {
+ return updateTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo(accountId, body).getData();
+ }
+
+ /**
+ * Update a Temporal Cloud OpenMetrics account.
+ *
+ *
See {@link #updateTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @param body (required)
+ * @return CompletableFuture<TemporalCloudOpenMetricsIntegrationAccountResponse>
+ */
+ public CompletableFuture
+ updateTemporalCloudOpenMetricsIntegrationAccountAsync(
+ String accountId, TemporalCloudOpenMetricsIntegrationAccountUpdateRequest body) {
+ return updateTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync(accountId, body)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Update a Temporal Cloud OpenMetrics integration account. Only the fields provided are changed.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @param body (required)
+ * @return ApiResponse<TemporalCloudOpenMetricsIntegrationAccountResponse>
+ * @throws ApiException if fails to make API call
+ * @http.response.details
+ *
+ * Response details
+ * | Status Code | Description | Response Headers |
+ * | 200 | OK | - |
+ * | 400 | Bad Request | - |
+ * | 403 | Forbidden | - |
+ * | 404 | Not Found | - |
+ * | 422 | The server cannot process the request because it contains invalid data. | - |
+ * | 429 | Too many requests | - |
+ *
+ */
+ public ApiResponse
+ updateTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo(
+ String accountId, TemporalCloudOpenMetricsIntegrationAccountUpdateRequest body)
+ throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "updateTemporalCloudOpenMetricsIntegrationAccount";
+ 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 'accountId' is set
+ if (accountId == null) {
+ throw new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " updateTemporalCloudOpenMetricsIntegrationAccount");
+ }
+
+ // verify the required parameter 'body' is set
+ if (body == null) {
+ throw new ApiException(
+ 400,
+ "Missing the required parameter 'body' when calling"
+ + " updateTemporalCloudOpenMetricsIntegrationAccount");
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.updateTemporalCloudOpenMetricsIntegrationAccount",
+ 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 Temporal Cloud OpenMetrics account.
+ *
+ * See {@link #updateTemporalCloudOpenMetricsIntegrationAccountWithHttpInfo}.
+ *
+ * @param accountId Unique identifier of the integration account. (required)
+ * @param body (required)
+ * @return
+ * CompletableFuture<ApiResponse<TemporalCloudOpenMetricsIntegrationAccountResponse>>
+ */
+ public CompletableFuture>
+ updateTemporalCloudOpenMetricsIntegrationAccountWithHttpInfoAsync(
+ String accountId, TemporalCloudOpenMetricsIntegrationAccountUpdateRequest body) {
+ // Check if unstable operation is enabled
+ String operationId = "updateTemporalCloudOpenMetricsIntegrationAccount";
+ 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 'accountId' is set
+ if (accountId == null) {
+ CompletableFuture> result =
+ new CompletableFuture<>();
+ result.completeExceptionally(
+ new ApiException(
+ 400,
+ "Missing the required parameter 'accountId' when calling"
+ + " updateTemporalCloudOpenMetricsIntegrationAccount"));
+ 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"
+ + " updateTemporalCloudOpenMetricsIntegrationAccount"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath =
+ "/api/v2/integration-interfaces/temporal-cloud-openmetrics/accounts/{account_id}"
+ .replaceAll("\\{" + "account_id" + "\\}", apiClient.escapeString(accountId.toString()));
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.TemporalCloudOpenMetricsIntegrationApi.updateTemporalCloudOpenMetricsIntegrationAccount",
+ 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/TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest.java b/src/main/java/com/datadog/api/client/v2/model/TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest.java
new file mode 100644
index 00000000000..6f6d1b64b6b
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest.java
@@ -0,0 +1,270 @@
+/*
+ * 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.AbstractOpenApiSchema;
+import com.datadog.api.client.JSON;
+import com.datadog.api.client.UnparsedObject;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.core.JsonGenerator;
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.core.JsonToken;
+import com.fasterxml.jackson.core.type.TypeReference;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.JsonMappingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.MapperFeature;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.SerializerProvider;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+import com.fasterxml.jackson.databind.ser.std.StdSerializer;
+import jakarta.ws.rs.core.GenericType;
+import java.io.IOException;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+@JsonDeserialize(
+ using =
+ TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest
+ .TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequestDeserializer.class)
+@JsonSerialize(
+ using =
+ TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest
+ .TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequestSerializer.class)
+public class TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest
+ extends AbstractOpenApiSchema {
+ private static final Logger log =
+ Logger.getLogger(
+ TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest.class.getName());
+
+ @JsonIgnore public boolean unparsed = false;
+
+ public static class TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequestSerializer
+ extends StdSerializer {
+ public TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequestSerializer(
+ Class t) {
+ super(t);
+ }
+
+ public TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequestSerializer() {
+ this(null);
+ }
+
+ @Override
+ public void serialize(
+ TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest value,
+ JsonGenerator jgen,
+ SerializerProvider provider)
+ throws IOException, JsonProcessingException {
+ jgen.writeObject(value.getActualInstance());
+ }
+ }
+
+ public static class TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequestDeserializer
+ extends StdDeserializer {
+ public TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequestDeserializer() {
+ this(TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest.class);
+ }
+
+ public TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequestDeserializer(
+ Class> vc) {
+ super(vc);
+ }
+
+ @Override
+ public TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest deserialize(
+ JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException {
+ JsonNode tree = jp.readValueAsTree();
+ Object deserialized = null;
+ Object tmp = null;
+ boolean typeCoercion = ctxt.isEnabled(MapperFeature.ALLOW_COERCION_OF_SCALARS);
+ int match = 0;
+ JsonToken token = tree.traverse(jp.getCodec()).nextToken();
+ // deserialize TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest
+ try {
+ boolean attemptParsing = true;
+ // ensure that we respect type coercion as set on the client ObjectMapper
+ if (TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ Integer.class)
+ || TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ Long.class)
+ || TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ Float.class)
+ || TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ Double.class)
+ || TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ Boolean.class)
+ || TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ String.class)) {
+ attemptParsing = typeCoercion;
+ if (!attemptParsing) {
+ attemptParsing |=
+ ((TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ Integer.class)
+ || TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class
+ .equals(Long.class))
+ && token == JsonToken.VALUE_NUMBER_INT);
+ attemptParsing |=
+ ((TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ Float.class)
+ || TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class
+ .equals(Double.class))
+ && (token == JsonToken.VALUE_NUMBER_FLOAT
+ || token == JsonToken.VALUE_NUMBER_INT));
+ attemptParsing |=
+ (TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ Boolean.class)
+ && (token == JsonToken.VALUE_FALSE || token == JsonToken.VALUE_TRUE));
+ attemptParsing |=
+ (TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class.equals(
+ String.class)
+ && token == JsonToken.VALUE_STRING);
+ }
+ }
+ if (attemptParsing) {
+ tmp =
+ tree.traverse(jp.getCodec())
+ .readValueAs(
+ TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest.class);
+ // TODO: there is no validation against JSON schema constraints
+ // (min, max, enum, pattern...), this does not perform a strict JSON
+ // validation, which means the 'match' count may be higher than it should be.
+ if (!((TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest) tmp).unparsed) {
+ deserialized = tmp;
+ match++;
+ }
+ log.log(
+ Level.FINER,
+ "Input data matches schema"
+ + " 'TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest'");
+ }
+ } catch (Exception e) {
+ // deserialization failed, continue
+ log.log(
+ Level.FINER,
+ "Input data does not match schema"
+ + " 'TemporalCloudOpenMetricsIntegrationAccountBearerTokenAuthRequest'",
+ e);
+ }
+
+ TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest ret =
+ new TemporalCloudOpenMetricsIntegrationAccountAuthenticationRequest();
+ if (match == 1) {
+ ret.setActualInstance(deserialized);
+ } else {
+ Map res =
+ new ObjectMapper()
+ .readValue(
+ tree.traverse(jp.getCodec()).readValueAsTree().toString(),
+ new TypeReference