diff --git a/.generator/schemas/v2/openapi.yaml b/.generator/schemas/v2/openapi.yaml
index 1a7913bf33d..f455995f057 100644
--- a/.generator/schemas/v2/openapi.yaml
+++ b/.generator/schemas/v2/openapi.yaml
@@ -25944,6 +25944,171 @@ components:
- type
- value
type: object
+ HamrOrgConnectionAttributesRequest:
+ properties:
+ hamr_status:
+ $ref: '#/components/schemas/HamrOrgConnectionStatus'
+ is_primary:
+ description: 'Indicates whether this organization is the primary organization
+ in the HAMR relationship.
+
+ If true, this is the primary organization. If false, this is the secondary/backup
+ organization.'
+ example: true
+ type: boolean
+ modified_by:
+ description: Username or identifier of the user who last modified this HAMR
+ connection.
+ example: admin@example.com
+ type: string
+ target_org_datacenter:
+ description: Datacenter location of the target organization (e.g., us1,
+ eu1, us5).
+ example: us1
+ type: string
+ target_org_name:
+ description: Name of the target organization in the HAMR relationship.
+ example: Production Backup Org
+ type: string
+ target_org_uuid:
+ description: UUID of the target organization in the HAMR relationship.
+ example: 660f9511-f3ac-52e5-b827-557766551111
+ type: string
+ required:
+ - target_org_uuid
+ - target_org_name
+ - target_org_datacenter
+ - hamr_status
+ - is_primary
+ - modified_by
+ type: object
+ HamrOrgConnectionAttributesResponse:
+ properties:
+ hamr_status:
+ $ref: '#/components/schemas/HamrOrgConnectionStatus'
+ is_primary:
+ description: 'Indicates whether this organization is the primary organization
+ in the HAMR relationship.
+
+ If true, this is the primary organization. If false, this is the secondary/backup
+ organization.'
+ example: true
+ type: boolean
+ modified_at:
+ description: Timestamp of when this HAMR connection was last modified (RFC3339
+ format).
+ example: '2026-01-13T17:26:48.830968Z'
+ type: string
+ modified_by:
+ description: Username or identifier of the user who last modified this HAMR
+ connection.
+ example: admin@example.com
+ type: string
+ target_org_datacenter:
+ description: Datacenter location of the target organization (e.g., us1,
+ eu1, us5).
+ example: us1
+ type: string
+ target_org_name:
+ description: Name of the target organization in the HAMR relationship.
+ example: Production Backup Org
+ type: string
+ target_org_uuid:
+ description: UUID of the target organization in the HAMR relationship.
+ example: 660f9511-f3ac-52e5-b827-557766551111
+ type: string
+ required:
+ - target_org_uuid
+ - target_org_name
+ - target_org_datacenter
+ - hamr_status
+ - is_primary
+ - modified_at
+ - modified_by
+ type: object
+ HamrOrgConnectionDataRequest:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/HamrOrgConnectionAttributesRequest'
+ id:
+ description: The organization UUID for this HAMR connection. Must match
+ the authenticated organization's UUID.
+ example: 550e8400-e29b-41d4-a716-446655440000
+ type: string
+ type:
+ $ref: '#/components/schemas/HamrOrgConnectionType'
+ required:
+ - id
+ - type
+ - attributes
+ type: object
+ HamrOrgConnectionDataResponse:
+ properties:
+ attributes:
+ $ref: '#/components/schemas/HamrOrgConnectionAttributesResponse'
+ id:
+ description: The organization UUID for this HAMR connection.
+ example: 550e8400-e29b-41d4-a716-446655440000
+ type: string
+ type:
+ $ref: '#/components/schemas/HamrOrgConnectionType'
+ required:
+ - id
+ - type
+ - attributes
+ type: object
+ HamrOrgConnectionRequest:
+ properties:
+ data:
+ $ref: '#/components/schemas/HamrOrgConnectionDataRequest'
+ required:
+ - data
+ type: object
+ HamrOrgConnectionResponse:
+ properties:
+ data:
+ $ref: '#/components/schemas/HamrOrgConnectionDataResponse'
+ required:
+ - data
+ type: object
+ HamrOrgConnectionStatus:
+ description: 'Status of the HAMR connection:
+
+ - 0: UNSPECIFIED - Connection status not specified
+
+ - 1: ONBOARDING - Initial setup of HAMR connection
+
+ - 2: PASSIVE - Secondary organization in passive standby mode
+
+ - 3: FAILOVER - Liminal status between PASSIVE and ACTIVE
+
+ - 4: ACTIVE - Organization is an active failover
+
+ - 5: RECOVERY - Recovery operation in progress'
+ enum:
+ - 0
+ - 1
+ - 2
+ - 3
+ - 4
+ - 5
+ example: 4
+ type: integer
+ x-enum-varnames:
+ - UNSPECIFIED
+ - ONBOARDING
+ - PASSIVE
+ - FAILOVER
+ - ACTIVE
+ - RECOVERY
+ HamrOrgConnectionType:
+ description: Type of the HAMR organization connection resource.
+ enum:
+ - hamr_org_connections
+ example: hamr_org_connections
+ type: string
+ x-enum-varnames:
+ - HAMR_ORG_CONNECTIONS
HourlyUsage:
description: Hourly usage for a product family for an org.
properties:
@@ -71684,6 +71849,105 @@ paths:
operator: OR
permissions:
- events_read
+ /api/v2/hamr:
+ get:
+ description: 'Retrieve the High Availability Multi-Region (HAMR) organization
+ connection details for the authenticated organization.
+
+ This endpoint returns information about the HAMR connection configuration,
+ including the target organization,
+
+ datacenter, status, and whether this is the primary or secondary organization
+ in the HAMR relationship.'
+ operationId: GetHamrOrgConnection
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/HamrOrgConnectionResponse'
+ description: OK
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Bad Request
+ '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: []
+ summary: Get HAMR organization connection
+ tags:
+ - High Availability MultiRegion
+ x-unstable: '**Note**: This endpoint is in public beta and is subject to change.
+
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
+ post:
+ description: 'Create or update the High Availability Multi-Region (HAMR) organization
+ connection.
+
+ This endpoint allows you to configure the HAMR connection between the authenticated
+ organization
+
+ and a target organization, including setting the connection status (ONBOARDING,
+ PASSIVE, FAILOVER, ACTIVE, RECOVERY)'
+ operationId: CreateHamrOrgConnection
+ requestBody:
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/HamrOrgConnectionRequest'
+ required: true
+ responses:
+ '200':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/HamrOrgConnectionResponse'
+ description: OK
+ '400':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Bad Request
+ '403':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Forbidden
+ '429':
+ $ref: '#/components/responses/TooManyRequestsResponse'
+ '500':
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/JSONAPIErrorResponse'
+ description: Internal Server Error
+ security:
+ - apiKeyAuth: []
+ appKeyAuth: []
+ summary: Create or update HAMR organization connection
+ tags:
+ - High Availability MultiRegion
+ x-unstable: '**Note**: This endpoint is in public beta and is subject to change.
+
+ If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).'
/api/v2/incidents:
get:
description: Get all incidents for the user's organization.
@@ -94022,6 +94286,14 @@ tags:
externalDocs:
url: https://docs.datadoghq.com/integrations/google_cloud_platform
name: GCP Integration
+- description: 'Configure High Availability Multi-Region (HAMR) connections between
+ Datadog organizations.
+
+ HAMR provides disaster recovery capabilities by maintaining synchronized data
+ between primary
+
+ and secondary organizations across different datacenters.'
+ name: High Availability MultiRegion
- description: 'The IP allowlist API is used to manage the IP addresses that
can access the Datadog API and web UI. It does not block
diff --git a/examples/v2/high-availability-multiregion/CreateHamrOrgConnection.java b/examples/v2/high-availability-multiregion/CreateHamrOrgConnection.java
new file mode 100644
index 00000000000..b16233d72a7
--- /dev/null
+++ b/examples/v2/high-availability-multiregion/CreateHamrOrgConnection.java
@@ -0,0 +1,46 @@
+// Create or update HAMR organization connection returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.HighAvailabilityMultiRegionApi;
+import com.datadog.api.client.v2.model.HamrOrgConnectionAttributesRequest;
+import com.datadog.api.client.v2.model.HamrOrgConnectionDataRequest;
+import com.datadog.api.client.v2.model.HamrOrgConnectionRequest;
+import com.datadog.api.client.v2.model.HamrOrgConnectionResponse;
+import com.datadog.api.client.v2.model.HamrOrgConnectionStatus;
+import com.datadog.api.client.v2.model.HamrOrgConnectionType;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.createHamrOrgConnection", true);
+ HighAvailabilityMultiRegionApi apiInstance = new HighAvailabilityMultiRegionApi(defaultClient);
+
+ HamrOrgConnectionRequest body =
+ new HamrOrgConnectionRequest()
+ .data(
+ new HamrOrgConnectionDataRequest()
+ .attributes(
+ new HamrOrgConnectionAttributesRequest()
+ .hamrStatus(HamrOrgConnectionStatus.ACTIVE)
+ .isPrimary(true)
+ .modifiedBy("admin@example.com")
+ .targetOrgDatacenter("us1")
+ .targetOrgName("Production Backup Org")
+ .targetOrgUuid("660f9511-f3ac-52e5-b827-557766551111"))
+ .id("550e8400-e29b-41d4-a716-446655440000")
+ .type(HamrOrgConnectionType.HAMR_ORG_CONNECTIONS));
+
+ try {
+ HamrOrgConnectionResponse result = apiInstance.createHamrOrgConnection(body);
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling HighAvailabilityMultiRegionApi#createHamrOrgConnection");
+ 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/high-availability-multiregion/GetHamrOrgConnection.java b/examples/v2/high-availability-multiregion/GetHamrOrgConnection.java
new file mode 100644
index 00000000000..fef82c99a26
--- /dev/null
+++ b/examples/v2/high-availability-multiregion/GetHamrOrgConnection.java
@@ -0,0 +1,26 @@
+// Get HAMR organization connection returns "OK" response
+
+import com.datadog.api.client.ApiClient;
+import com.datadog.api.client.ApiException;
+import com.datadog.api.client.v2.api.HighAvailabilityMultiRegionApi;
+import com.datadog.api.client.v2.model.HamrOrgConnectionResponse;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = ApiClient.getDefaultApiClient();
+ defaultClient.setUnstableOperationEnabled("v2.getHamrOrgConnection", true);
+ HighAvailabilityMultiRegionApi apiInstance = new HighAvailabilityMultiRegionApi(defaultClient);
+
+ try {
+ HamrOrgConnectionResponse result = apiInstance.getHamrOrgConnection();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println(
+ "Exception when calling HighAvailabilityMultiRegionApi#getHamrOrgConnection");
+ 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 e2c4bb2bac2..5c25d9425fa 100644
--- a/src/main/java/com/datadog/api/client/ApiClient.java
+++ b/src/main/java/com/datadog/api/client/ApiClient.java
@@ -815,6 +815,8 @@ public class ApiClient {
put("v2.getDeploymentRule", false);
put("v2.updateDeploymentGate", false);
put("v2.updateDeploymentRule", false);
+ put("v2.createHamrOrgConnection", false);
+ put("v2.getHamrOrgConnection", false);
put("v2.createIncident", false);
put("v2.createIncidentAttachment", false);
put("v2.createIncidentIntegration", false);
diff --git a/src/main/java/com/datadog/api/client/v2/api/HighAvailabilityMultiRegionApi.java b/src/main/java/com/datadog/api/client/v2/api/HighAvailabilityMultiRegionApi.java
new file mode 100644
index 00000000000..3294d24df22
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/api/HighAvailabilityMultiRegionApi.java
@@ -0,0 +1,333 @@
+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.HamrOrgConnectionRequest;
+import com.datadog.api.client.v2.model.HamrOrgConnectionResponse;
+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 HighAvailabilityMultiRegionApi {
+ private ApiClient apiClient;
+
+ public HighAvailabilityMultiRegionApi() {
+ this(ApiClient.getDefaultApiClient());
+ }
+
+ public HighAvailabilityMultiRegionApi(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 or update HAMR organization connection.
+ *
+ *
See {@link #createHamrOrgConnectionWithHttpInfo}.
+ *
+ * @param body (required)
+ * @return HamrOrgConnectionResponse
+ * @throws ApiException if fails to make API call
+ */
+ public HamrOrgConnectionResponse createHamrOrgConnection(HamrOrgConnectionRequest body)
+ throws ApiException {
+ return createHamrOrgConnectionWithHttpInfo(body).getData();
+ }
+
+ /**
+ * Create or update HAMR organization connection.
+ *
+ *
See {@link #createHamrOrgConnectionWithHttpInfoAsync}.
+ *
+ * @param body (required)
+ * @return CompletableFuture<HamrOrgConnectionResponse>
+ */
+ public CompletableFuture createHamrOrgConnectionAsync(
+ HamrOrgConnectionRequest body) {
+ return createHamrOrgConnectionWithHttpInfoAsync(body)
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Create or update the High Availability Multi-Region (HAMR) organization connection. This
+ * endpoint allows you to configure the HAMR connection between the authenticated organization and
+ * a target organization, including setting the connection status (ONBOARDING, PASSIVE, FAILOVER,
+ * ACTIVE, RECOVERY)
+ *
+ * @param body (required)
+ * @return ApiResponse<HamrOrgConnectionResponse>
+ * @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 | - |
+ * | 429 | Too many requests | - |
+ * | 500 | Internal Server Error | - |
+ *
+ */
+ public ApiResponse createHamrOrgConnectionWithHttpInfo(
+ HamrOrgConnectionRequest body) throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "createHamrOrgConnection";
+ 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 createHamrOrgConnection");
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/hamr";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.HighAvailabilityMultiRegionApi.createHamrOrgConnection",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ return apiClient.invokeAPI(
+ "POST",
+ builder,
+ localVarHeaderParams,
+ new String[] {"application/json"},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Create or update HAMR organization connection.
+ *
+ * See {@link #createHamrOrgConnectionWithHttpInfo}.
+ *
+ * @param body (required)
+ * @return CompletableFuture<ApiResponse<HamrOrgConnectionResponse>>
+ */
+ public CompletableFuture>
+ createHamrOrgConnectionWithHttpInfoAsync(HamrOrgConnectionRequest body) {
+ // Check if unstable operation is enabled
+ String operationId = "createHamrOrgConnection";
+ 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 createHamrOrgConnection"));
+ return result;
+ }
+ // create path and map variables
+ String localVarPath = "/api/v2/hamr";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.HighAvailabilityMultiRegionApi.createHamrOrgConnection",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ } 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() {});
+ }
+
+ /**
+ * Get HAMR organization connection.
+ *
+ * See {@link #getHamrOrgConnectionWithHttpInfo}.
+ *
+ * @return HamrOrgConnectionResponse
+ * @throws ApiException if fails to make API call
+ */
+ public HamrOrgConnectionResponse getHamrOrgConnection() throws ApiException {
+ return getHamrOrgConnectionWithHttpInfo().getData();
+ }
+
+ /**
+ * Get HAMR organization connection.
+ *
+ *
See {@link #getHamrOrgConnectionWithHttpInfoAsync}.
+ *
+ * @return CompletableFuture<HamrOrgConnectionResponse>
+ */
+ public CompletableFuture getHamrOrgConnectionAsync() {
+ return getHamrOrgConnectionWithHttpInfoAsync()
+ .thenApply(
+ response -> {
+ return response.getData();
+ });
+ }
+
+ /**
+ * Retrieve the High Availability Multi-Region (HAMR) organization connection details for the
+ * authenticated organization. This endpoint returns information about the HAMR connection
+ * configuration, including the target organization, datacenter, status, and whether this is the
+ * primary or secondary organization in the HAMR relationship.
+ *
+ * @return ApiResponse<HamrOrgConnectionResponse>
+ * @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 getHamrOrgConnectionWithHttpInfo()
+ throws ApiException {
+ // Check if unstable operation is enabled
+ String operationId = "getHamrOrgConnection";
+ 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/hamr";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder =
+ apiClient.createBuilder(
+ "v2.HighAvailabilityMultiRegionApi.getHamrOrgConnection",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ return apiClient.invokeAPI(
+ "GET",
+ builder,
+ localVarHeaderParams,
+ new String[] {},
+ localVarPostBody,
+ new HashMap(),
+ false,
+ new GenericType() {});
+ }
+
+ /**
+ * Get HAMR organization connection.
+ *
+ * See {@link #getHamrOrgConnectionWithHttpInfo}.
+ *
+ * @return CompletableFuture<ApiResponse<HamrOrgConnectionResponse>>
+ */
+ public CompletableFuture>
+ getHamrOrgConnectionWithHttpInfoAsync() {
+ // Check if unstable operation is enabled
+ String operationId = "getHamrOrgConnection";
+ 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/hamr";
+
+ Map localVarHeaderParams = new HashMap();
+
+ Invocation.Builder builder;
+ try {
+ builder =
+ apiClient.createBuilder(
+ "v2.HighAvailabilityMultiRegionApi.getHamrOrgConnection",
+ localVarPath,
+ new ArrayList(),
+ localVarHeaderParams,
+ new HashMap(),
+ new String[] {"application/json"},
+ new String[] {"apiKeyAuth", "appKeyAuth"});
+ } 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() {});
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionAttributesRequest.java b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionAttributesRequest.java
new file mode 100644
index 00000000000..e1e24db1f31
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionAttributesRequest.java
@@ -0,0 +1,308 @@
+/*
+ * 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;
+
+/** */
+@JsonPropertyOrder({
+ HamrOrgConnectionAttributesRequest.JSON_PROPERTY_HAMR_STATUS,
+ HamrOrgConnectionAttributesRequest.JSON_PROPERTY_IS_PRIMARY,
+ HamrOrgConnectionAttributesRequest.JSON_PROPERTY_MODIFIED_BY,
+ HamrOrgConnectionAttributesRequest.JSON_PROPERTY_TARGET_ORG_DATACENTER,
+ HamrOrgConnectionAttributesRequest.JSON_PROPERTY_TARGET_ORG_NAME,
+ HamrOrgConnectionAttributesRequest.JSON_PROPERTY_TARGET_ORG_UUID
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class HamrOrgConnectionAttributesRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_HAMR_STATUS = "hamr_status";
+ private HamrOrgConnectionStatus hamrStatus;
+
+ public static final String JSON_PROPERTY_IS_PRIMARY = "is_primary";
+ private Boolean isPrimary;
+
+ public static final String JSON_PROPERTY_MODIFIED_BY = "modified_by";
+ private String modifiedBy;
+
+ public static final String JSON_PROPERTY_TARGET_ORG_DATACENTER = "target_org_datacenter";
+ private String targetOrgDatacenter;
+
+ public static final String JSON_PROPERTY_TARGET_ORG_NAME = "target_org_name";
+ private String targetOrgName;
+
+ public static final String JSON_PROPERTY_TARGET_ORG_UUID = "target_org_uuid";
+ private String targetOrgUuid;
+
+ public HamrOrgConnectionAttributesRequest() {}
+
+ @JsonCreator
+ public HamrOrgConnectionAttributesRequest(
+ @JsonProperty(required = true, value = JSON_PROPERTY_HAMR_STATUS)
+ HamrOrgConnectionStatus hamrStatus,
+ @JsonProperty(required = true, value = JSON_PROPERTY_IS_PRIMARY) Boolean isPrimary,
+ @JsonProperty(required = true, value = JSON_PROPERTY_MODIFIED_BY) String modifiedBy,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TARGET_ORG_DATACENTER)
+ String targetOrgDatacenter,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TARGET_ORG_NAME) String targetOrgName,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TARGET_ORG_UUID) String targetOrgUuid) {
+ this.hamrStatus = hamrStatus;
+ this.unparsed |= !hamrStatus.isValid();
+ this.isPrimary = isPrimary;
+ this.modifiedBy = modifiedBy;
+ this.targetOrgDatacenter = targetOrgDatacenter;
+ this.targetOrgName = targetOrgName;
+ this.targetOrgUuid = targetOrgUuid;
+ }
+
+ public HamrOrgConnectionAttributesRequest hamrStatus(HamrOrgConnectionStatus hamrStatus) {
+ this.hamrStatus = hamrStatus;
+ this.unparsed |= !hamrStatus.isValid();
+ return this;
+ }
+
+ /**
+ * Status of the HAMR connection: - 0: UNSPECIFIED - Connection status not specified - 1:
+ * ONBOARDING - Initial setup of HAMR connection - 2: PASSIVE - Secondary organization in passive
+ * standby mode - 3: FAILOVER - Liminal status between PASSIVE and ACTIVE - 4: ACTIVE -
+ * Organization is an active failover - 5: RECOVERY - Recovery operation in progress
+ *
+ * @return hamrStatus
+ */
+ @JsonProperty(JSON_PROPERTY_HAMR_STATUS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public HamrOrgConnectionStatus getHamrStatus() {
+ return hamrStatus;
+ }
+
+ public void setHamrStatus(HamrOrgConnectionStatus hamrStatus) {
+ if (!hamrStatus.isValid()) {
+ this.unparsed = true;
+ }
+ this.hamrStatus = hamrStatus;
+ }
+
+ public HamrOrgConnectionAttributesRequest isPrimary(Boolean isPrimary) {
+ this.isPrimary = isPrimary;
+ return this;
+ }
+
+ /**
+ * Indicates whether this organization is the primary organization in the HAMR relationship. If
+ * true, this is the primary organization. If false, this is the secondary/backup organization.
+ *
+ * @return isPrimary
+ */
+ @JsonProperty(JSON_PROPERTY_IS_PRIMARY)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public Boolean getIsPrimary() {
+ return isPrimary;
+ }
+
+ public void setIsPrimary(Boolean isPrimary) {
+ this.isPrimary = isPrimary;
+ }
+
+ public HamrOrgConnectionAttributesRequest modifiedBy(String modifiedBy) {
+ this.modifiedBy = modifiedBy;
+ return this;
+ }
+
+ /**
+ * Username or identifier of the user who last modified this HAMR connection.
+ *
+ * @return modifiedBy
+ */
+ @JsonProperty(JSON_PROPERTY_MODIFIED_BY)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getModifiedBy() {
+ return modifiedBy;
+ }
+
+ public void setModifiedBy(String modifiedBy) {
+ this.modifiedBy = modifiedBy;
+ }
+
+ public HamrOrgConnectionAttributesRequest targetOrgDatacenter(String targetOrgDatacenter) {
+ this.targetOrgDatacenter = targetOrgDatacenter;
+ return this;
+ }
+
+ /**
+ * Datacenter location of the target organization (e.g., us1, eu1, us5).
+ *
+ * @return targetOrgDatacenter
+ */
+ @JsonProperty(JSON_PROPERTY_TARGET_ORG_DATACENTER)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getTargetOrgDatacenter() {
+ return targetOrgDatacenter;
+ }
+
+ public void setTargetOrgDatacenter(String targetOrgDatacenter) {
+ this.targetOrgDatacenter = targetOrgDatacenter;
+ }
+
+ public HamrOrgConnectionAttributesRequest targetOrgName(String targetOrgName) {
+ this.targetOrgName = targetOrgName;
+ return this;
+ }
+
+ /**
+ * Name of the target organization in the HAMR relationship.
+ *
+ * @return targetOrgName
+ */
+ @JsonProperty(JSON_PROPERTY_TARGET_ORG_NAME)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getTargetOrgName() {
+ return targetOrgName;
+ }
+
+ public void setTargetOrgName(String targetOrgName) {
+ this.targetOrgName = targetOrgName;
+ }
+
+ public HamrOrgConnectionAttributesRequest targetOrgUuid(String targetOrgUuid) {
+ this.targetOrgUuid = targetOrgUuid;
+ return this;
+ }
+
+ /**
+ * UUID of the target organization in the HAMR relationship.
+ *
+ * @return targetOrgUuid
+ */
+ @JsonProperty(JSON_PROPERTY_TARGET_ORG_UUID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getTargetOrgUuid() {
+ return targetOrgUuid;
+ }
+
+ public void setTargetOrgUuid(String targetOrgUuid) {
+ this.targetOrgUuid = targetOrgUuid;
+ }
+
+ /**
+ * 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 HamrOrgConnectionAttributesRequest
+ */
+ @JsonAnySetter
+ public HamrOrgConnectionAttributesRequest 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 HamrOrgConnectionAttributesRequest object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ HamrOrgConnectionAttributesRequest hamrOrgConnectionAttributesRequest =
+ (HamrOrgConnectionAttributesRequest) o;
+ return Objects.equals(this.hamrStatus, hamrOrgConnectionAttributesRequest.hamrStatus)
+ && Objects.equals(this.isPrimary, hamrOrgConnectionAttributesRequest.isPrimary)
+ && Objects.equals(this.modifiedBy, hamrOrgConnectionAttributesRequest.modifiedBy)
+ && Objects.equals(
+ this.targetOrgDatacenter, hamrOrgConnectionAttributesRequest.targetOrgDatacenter)
+ && Objects.equals(this.targetOrgName, hamrOrgConnectionAttributesRequest.targetOrgName)
+ && Objects.equals(this.targetOrgUuid, hamrOrgConnectionAttributesRequest.targetOrgUuid)
+ && Objects.equals(
+ this.additionalProperties, hamrOrgConnectionAttributesRequest.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ hamrStatus,
+ isPrimary,
+ modifiedBy,
+ targetOrgDatacenter,
+ targetOrgName,
+ targetOrgUuid,
+ additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class HamrOrgConnectionAttributesRequest {\n");
+ sb.append(" hamrStatus: ").append(toIndentedString(hamrStatus)).append("\n");
+ sb.append(" isPrimary: ").append(toIndentedString(isPrimary)).append("\n");
+ sb.append(" modifiedBy: ").append(toIndentedString(modifiedBy)).append("\n");
+ sb.append(" targetOrgDatacenter: ")
+ .append(toIndentedString(targetOrgDatacenter))
+ .append("\n");
+ sb.append(" targetOrgName: ").append(toIndentedString(targetOrgName)).append("\n");
+ sb.append(" targetOrgUuid: ").append(toIndentedString(targetOrgUuid)).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/HamrOrgConnectionAttributesResponse.java b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionAttributesResponse.java
new file mode 100644
index 00000000000..f0236daa40d
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionAttributesResponse.java
@@ -0,0 +1,337 @@
+/*
+ * 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;
+
+/** */
+@JsonPropertyOrder({
+ HamrOrgConnectionAttributesResponse.JSON_PROPERTY_HAMR_STATUS,
+ HamrOrgConnectionAttributesResponse.JSON_PROPERTY_IS_PRIMARY,
+ HamrOrgConnectionAttributesResponse.JSON_PROPERTY_MODIFIED_AT,
+ HamrOrgConnectionAttributesResponse.JSON_PROPERTY_MODIFIED_BY,
+ HamrOrgConnectionAttributesResponse.JSON_PROPERTY_TARGET_ORG_DATACENTER,
+ HamrOrgConnectionAttributesResponse.JSON_PROPERTY_TARGET_ORG_NAME,
+ HamrOrgConnectionAttributesResponse.JSON_PROPERTY_TARGET_ORG_UUID
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class HamrOrgConnectionAttributesResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_HAMR_STATUS = "hamr_status";
+ private HamrOrgConnectionStatus hamrStatus;
+
+ public static final String JSON_PROPERTY_IS_PRIMARY = "is_primary";
+ private Boolean isPrimary;
+
+ public static final String JSON_PROPERTY_MODIFIED_AT = "modified_at";
+ private String modifiedAt;
+
+ public static final String JSON_PROPERTY_MODIFIED_BY = "modified_by";
+ private String modifiedBy;
+
+ public static final String JSON_PROPERTY_TARGET_ORG_DATACENTER = "target_org_datacenter";
+ private String targetOrgDatacenter;
+
+ public static final String JSON_PROPERTY_TARGET_ORG_NAME = "target_org_name";
+ private String targetOrgName;
+
+ public static final String JSON_PROPERTY_TARGET_ORG_UUID = "target_org_uuid";
+ private String targetOrgUuid;
+
+ public HamrOrgConnectionAttributesResponse() {}
+
+ @JsonCreator
+ public HamrOrgConnectionAttributesResponse(
+ @JsonProperty(required = true, value = JSON_PROPERTY_HAMR_STATUS)
+ HamrOrgConnectionStatus hamrStatus,
+ @JsonProperty(required = true, value = JSON_PROPERTY_IS_PRIMARY) Boolean isPrimary,
+ @JsonProperty(required = true, value = JSON_PROPERTY_MODIFIED_AT) String modifiedAt,
+ @JsonProperty(required = true, value = JSON_PROPERTY_MODIFIED_BY) String modifiedBy,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TARGET_ORG_DATACENTER)
+ String targetOrgDatacenter,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TARGET_ORG_NAME) String targetOrgName,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TARGET_ORG_UUID) String targetOrgUuid) {
+ this.hamrStatus = hamrStatus;
+ this.unparsed |= !hamrStatus.isValid();
+ this.isPrimary = isPrimary;
+ this.modifiedAt = modifiedAt;
+ this.modifiedBy = modifiedBy;
+ this.targetOrgDatacenter = targetOrgDatacenter;
+ this.targetOrgName = targetOrgName;
+ this.targetOrgUuid = targetOrgUuid;
+ }
+
+ public HamrOrgConnectionAttributesResponse hamrStatus(HamrOrgConnectionStatus hamrStatus) {
+ this.hamrStatus = hamrStatus;
+ this.unparsed |= !hamrStatus.isValid();
+ return this;
+ }
+
+ /**
+ * Status of the HAMR connection: - 0: UNSPECIFIED - Connection status not specified - 1:
+ * ONBOARDING - Initial setup of HAMR connection - 2: PASSIVE - Secondary organization in passive
+ * standby mode - 3: FAILOVER - Liminal status between PASSIVE and ACTIVE - 4: ACTIVE -
+ * Organization is an active failover - 5: RECOVERY - Recovery operation in progress
+ *
+ * @return hamrStatus
+ */
+ @JsonProperty(JSON_PROPERTY_HAMR_STATUS)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public HamrOrgConnectionStatus getHamrStatus() {
+ return hamrStatus;
+ }
+
+ public void setHamrStatus(HamrOrgConnectionStatus hamrStatus) {
+ if (!hamrStatus.isValid()) {
+ this.unparsed = true;
+ }
+ this.hamrStatus = hamrStatus;
+ }
+
+ public HamrOrgConnectionAttributesResponse isPrimary(Boolean isPrimary) {
+ this.isPrimary = isPrimary;
+ return this;
+ }
+
+ /**
+ * Indicates whether this organization is the primary organization in the HAMR relationship. If
+ * true, this is the primary organization. If false, this is the secondary/backup organization.
+ *
+ * @return isPrimary
+ */
+ @JsonProperty(JSON_PROPERTY_IS_PRIMARY)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public Boolean getIsPrimary() {
+ return isPrimary;
+ }
+
+ public void setIsPrimary(Boolean isPrimary) {
+ this.isPrimary = isPrimary;
+ }
+
+ public HamrOrgConnectionAttributesResponse modifiedAt(String modifiedAt) {
+ this.modifiedAt = modifiedAt;
+ return this;
+ }
+
+ /**
+ * Timestamp of when this HAMR connection was last modified (RFC3339 format).
+ *
+ * @return modifiedAt
+ */
+ @JsonProperty(JSON_PROPERTY_MODIFIED_AT)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getModifiedAt() {
+ return modifiedAt;
+ }
+
+ public void setModifiedAt(String modifiedAt) {
+ this.modifiedAt = modifiedAt;
+ }
+
+ public HamrOrgConnectionAttributesResponse modifiedBy(String modifiedBy) {
+ this.modifiedBy = modifiedBy;
+ return this;
+ }
+
+ /**
+ * Username or identifier of the user who last modified this HAMR connection.
+ *
+ * @return modifiedBy
+ */
+ @JsonProperty(JSON_PROPERTY_MODIFIED_BY)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getModifiedBy() {
+ return modifiedBy;
+ }
+
+ public void setModifiedBy(String modifiedBy) {
+ this.modifiedBy = modifiedBy;
+ }
+
+ public HamrOrgConnectionAttributesResponse targetOrgDatacenter(String targetOrgDatacenter) {
+ this.targetOrgDatacenter = targetOrgDatacenter;
+ return this;
+ }
+
+ /**
+ * Datacenter location of the target organization (e.g., us1, eu1, us5).
+ *
+ * @return targetOrgDatacenter
+ */
+ @JsonProperty(JSON_PROPERTY_TARGET_ORG_DATACENTER)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getTargetOrgDatacenter() {
+ return targetOrgDatacenter;
+ }
+
+ public void setTargetOrgDatacenter(String targetOrgDatacenter) {
+ this.targetOrgDatacenter = targetOrgDatacenter;
+ }
+
+ public HamrOrgConnectionAttributesResponse targetOrgName(String targetOrgName) {
+ this.targetOrgName = targetOrgName;
+ return this;
+ }
+
+ /**
+ * Name of the target organization in the HAMR relationship.
+ *
+ * @return targetOrgName
+ */
+ @JsonProperty(JSON_PROPERTY_TARGET_ORG_NAME)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getTargetOrgName() {
+ return targetOrgName;
+ }
+
+ public void setTargetOrgName(String targetOrgName) {
+ this.targetOrgName = targetOrgName;
+ }
+
+ public HamrOrgConnectionAttributesResponse targetOrgUuid(String targetOrgUuid) {
+ this.targetOrgUuid = targetOrgUuid;
+ return this;
+ }
+
+ /**
+ * UUID of the target organization in the HAMR relationship.
+ *
+ * @return targetOrgUuid
+ */
+ @JsonProperty(JSON_PROPERTY_TARGET_ORG_UUID)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public String getTargetOrgUuid() {
+ return targetOrgUuid;
+ }
+
+ public void setTargetOrgUuid(String targetOrgUuid) {
+ this.targetOrgUuid = targetOrgUuid;
+ }
+
+ /**
+ * 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 HamrOrgConnectionAttributesResponse
+ */
+ @JsonAnySetter
+ public HamrOrgConnectionAttributesResponse 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 HamrOrgConnectionAttributesResponse object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ HamrOrgConnectionAttributesResponse hamrOrgConnectionAttributesResponse =
+ (HamrOrgConnectionAttributesResponse) o;
+ return Objects.equals(this.hamrStatus, hamrOrgConnectionAttributesResponse.hamrStatus)
+ && Objects.equals(this.isPrimary, hamrOrgConnectionAttributesResponse.isPrimary)
+ && Objects.equals(this.modifiedAt, hamrOrgConnectionAttributesResponse.modifiedAt)
+ && Objects.equals(this.modifiedBy, hamrOrgConnectionAttributesResponse.modifiedBy)
+ && Objects.equals(
+ this.targetOrgDatacenter, hamrOrgConnectionAttributesResponse.targetOrgDatacenter)
+ && Objects.equals(this.targetOrgName, hamrOrgConnectionAttributesResponse.targetOrgName)
+ && Objects.equals(this.targetOrgUuid, hamrOrgConnectionAttributesResponse.targetOrgUuid)
+ && Objects.equals(
+ this.additionalProperties, hamrOrgConnectionAttributesResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ hamrStatus,
+ isPrimary,
+ modifiedAt,
+ modifiedBy,
+ targetOrgDatacenter,
+ targetOrgName,
+ targetOrgUuid,
+ additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class HamrOrgConnectionAttributesResponse {\n");
+ sb.append(" hamrStatus: ").append(toIndentedString(hamrStatus)).append("\n");
+ sb.append(" isPrimary: ").append(toIndentedString(isPrimary)).append("\n");
+ sb.append(" modifiedAt: ").append(toIndentedString(modifiedAt)).append("\n");
+ sb.append(" modifiedBy: ").append(toIndentedString(modifiedBy)).append("\n");
+ sb.append(" targetOrgDatacenter: ")
+ .append(toIndentedString(targetOrgDatacenter))
+ .append("\n");
+ sb.append(" targetOrgName: ").append(toIndentedString(targetOrgName)).append("\n");
+ sb.append(" targetOrgUuid: ").append(toIndentedString(targetOrgUuid)).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/HamrOrgConnectionDataRequest.java b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionDataRequest.java
new file mode 100644
index 00000000000..6cd1abddb07
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionDataRequest.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;
+
+/** */
+@JsonPropertyOrder({
+ HamrOrgConnectionDataRequest.JSON_PROPERTY_ATTRIBUTES,
+ HamrOrgConnectionDataRequest.JSON_PROPERTY_ID,
+ HamrOrgConnectionDataRequest.JSON_PROPERTY_TYPE
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class HamrOrgConnectionDataRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
+ private HamrOrgConnectionAttributesRequest attributes;
+
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
+ public static final String JSON_PROPERTY_TYPE = "type";
+ private HamrOrgConnectionType type;
+
+ public HamrOrgConnectionDataRequest() {}
+
+ @JsonCreator
+ public HamrOrgConnectionDataRequest(
+ @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES)
+ HamrOrgConnectionAttributesRequest attributes,
+ @JsonProperty(required = true, value = JSON_PROPERTY_ID) String id,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) HamrOrgConnectionType type) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ this.id = id;
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ }
+
+ public HamrOrgConnectionDataRequest attributes(HamrOrgConnectionAttributesRequest attributes) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ return this;
+ }
+
+ /**
+ * Getattributes
+ *
+ * @return attributes
+ */
+ @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public HamrOrgConnectionAttributesRequest getAttributes() {
+ return attributes;
+ }
+
+ public void setAttributes(HamrOrgConnectionAttributesRequest attributes) {
+ this.attributes = attributes;
+ }
+
+ public HamrOrgConnectionDataRequest id(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * The organization UUID for this HAMR connection. Must match the authenticated organization's
+ * UUID.
+ *
+ * @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 HamrOrgConnectionDataRequest type(HamrOrgConnectionType type) {
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ return this;
+ }
+
+ /**
+ * Type of the HAMR organization connection resource.
+ *
+ * @return type
+ */
+ @JsonProperty(JSON_PROPERTY_TYPE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public HamrOrgConnectionType getType() {
+ return type;
+ }
+
+ public void setType(HamrOrgConnectionType 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 HamrOrgConnectionDataRequest
+ */
+ @JsonAnySetter
+ public HamrOrgConnectionDataRequest 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 HamrOrgConnectionDataRequest object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ HamrOrgConnectionDataRequest hamrOrgConnectionDataRequest = (HamrOrgConnectionDataRequest) o;
+ return Objects.equals(this.attributes, hamrOrgConnectionDataRequest.attributes)
+ && Objects.equals(this.id, hamrOrgConnectionDataRequest.id)
+ && Objects.equals(this.type, hamrOrgConnectionDataRequest.type)
+ && Objects.equals(
+ this.additionalProperties, hamrOrgConnectionDataRequest.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(attributes, id, type, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class HamrOrgConnectionDataRequest {\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/HamrOrgConnectionDataResponse.java b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionDataResponse.java
new file mode 100644
index 00000000000..cf9040b3894
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionDataResponse.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;
+
+/** */
+@JsonPropertyOrder({
+ HamrOrgConnectionDataResponse.JSON_PROPERTY_ATTRIBUTES,
+ HamrOrgConnectionDataResponse.JSON_PROPERTY_ID,
+ HamrOrgConnectionDataResponse.JSON_PROPERTY_TYPE
+})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class HamrOrgConnectionDataResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_ATTRIBUTES = "attributes";
+ private HamrOrgConnectionAttributesResponse attributes;
+
+ public static final String JSON_PROPERTY_ID = "id";
+ private String id;
+
+ public static final String JSON_PROPERTY_TYPE = "type";
+ private HamrOrgConnectionType type;
+
+ public HamrOrgConnectionDataResponse() {}
+
+ @JsonCreator
+ public HamrOrgConnectionDataResponse(
+ @JsonProperty(required = true, value = JSON_PROPERTY_ATTRIBUTES)
+ HamrOrgConnectionAttributesResponse attributes,
+ @JsonProperty(required = true, value = JSON_PROPERTY_ID) String id,
+ @JsonProperty(required = true, value = JSON_PROPERTY_TYPE) HamrOrgConnectionType type) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ this.id = id;
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ }
+
+ public HamrOrgConnectionDataResponse attributes(HamrOrgConnectionAttributesResponse attributes) {
+ this.attributes = attributes;
+ this.unparsed |= attributes.unparsed;
+ return this;
+ }
+
+ /**
+ * Getattributes
+ *
+ * @return attributes
+ */
+ @JsonProperty(JSON_PROPERTY_ATTRIBUTES)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public HamrOrgConnectionAttributesResponse getAttributes() {
+ return attributes;
+ }
+
+ public void setAttributes(HamrOrgConnectionAttributesResponse attributes) {
+ this.attributes = attributes;
+ }
+
+ public HamrOrgConnectionDataResponse id(String id) {
+ this.id = id;
+ return this;
+ }
+
+ /**
+ * The organization UUID for this HAMR connection.
+ *
+ * @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 HamrOrgConnectionDataResponse type(HamrOrgConnectionType type) {
+ this.type = type;
+ this.unparsed |= !type.isValid();
+ return this;
+ }
+
+ /**
+ * Type of the HAMR organization connection resource.
+ *
+ * @return type
+ */
+ @JsonProperty(JSON_PROPERTY_TYPE)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public HamrOrgConnectionType getType() {
+ return type;
+ }
+
+ public void setType(HamrOrgConnectionType 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 HamrOrgConnectionDataResponse
+ */
+ @JsonAnySetter
+ public HamrOrgConnectionDataResponse 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 HamrOrgConnectionDataResponse object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ HamrOrgConnectionDataResponse hamrOrgConnectionDataResponse = (HamrOrgConnectionDataResponse) o;
+ return Objects.equals(this.attributes, hamrOrgConnectionDataResponse.attributes)
+ && Objects.equals(this.id, hamrOrgConnectionDataResponse.id)
+ && Objects.equals(this.type, hamrOrgConnectionDataResponse.type)
+ && Objects.equals(
+ this.additionalProperties, hamrOrgConnectionDataResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(attributes, id, type, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class HamrOrgConnectionDataResponse {\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/HamrOrgConnectionRequest.java b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionRequest.java
new file mode 100644
index 00000000000..1b37a369057
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionRequest.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;
+
+/** */
+@JsonPropertyOrder({HamrOrgConnectionRequest.JSON_PROPERTY_DATA})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class HamrOrgConnectionRequest {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DATA = "data";
+ private HamrOrgConnectionDataRequest data;
+
+ public HamrOrgConnectionRequest() {}
+
+ @JsonCreator
+ public HamrOrgConnectionRequest(
+ @JsonProperty(required = true, value = JSON_PROPERTY_DATA)
+ HamrOrgConnectionDataRequest data) {
+ this.data = data;
+ this.unparsed |= data.unparsed;
+ }
+
+ public HamrOrgConnectionRequest data(HamrOrgConnectionDataRequest data) {
+ this.data = data;
+ this.unparsed |= data.unparsed;
+ return this;
+ }
+
+ /**
+ * Getdata
+ *
+ * @return data
+ */
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public HamrOrgConnectionDataRequest getData() {
+ return data;
+ }
+
+ public void setData(HamrOrgConnectionDataRequest 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 HamrOrgConnectionRequest
+ */
+ @JsonAnySetter
+ public HamrOrgConnectionRequest 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 HamrOrgConnectionRequest object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ HamrOrgConnectionRequest hamrOrgConnectionRequest = (HamrOrgConnectionRequest) o;
+ return Objects.equals(this.data, hamrOrgConnectionRequest.data)
+ && Objects.equals(this.additionalProperties, hamrOrgConnectionRequest.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(data, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class HamrOrgConnectionRequest {\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/HamrOrgConnectionResponse.java b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionResponse.java
new file mode 100644
index 00000000000..46fe6eaf35c
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionResponse.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;
+
+/** */
+@JsonPropertyOrder({HamrOrgConnectionResponse.JSON_PROPERTY_DATA})
+@jakarta.annotation.Generated(
+ value = "https://github.com/DataDog/datadog-api-client-java/blob/master/.generator")
+public class HamrOrgConnectionResponse {
+ @JsonIgnore public boolean unparsed = false;
+ public static final String JSON_PROPERTY_DATA = "data";
+ private HamrOrgConnectionDataResponse data;
+
+ public HamrOrgConnectionResponse() {}
+
+ @JsonCreator
+ public HamrOrgConnectionResponse(
+ @JsonProperty(required = true, value = JSON_PROPERTY_DATA)
+ HamrOrgConnectionDataResponse data) {
+ this.data = data;
+ this.unparsed |= data.unparsed;
+ }
+
+ public HamrOrgConnectionResponse data(HamrOrgConnectionDataResponse data) {
+ this.data = data;
+ this.unparsed |= data.unparsed;
+ return this;
+ }
+
+ /**
+ * Getdata
+ *
+ * @return data
+ */
+ @JsonProperty(JSON_PROPERTY_DATA)
+ @JsonInclude(value = JsonInclude.Include.ALWAYS)
+ public HamrOrgConnectionDataResponse getData() {
+ return data;
+ }
+
+ public void setData(HamrOrgConnectionDataResponse 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 HamrOrgConnectionResponse
+ */
+ @JsonAnySetter
+ public HamrOrgConnectionResponse 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 HamrOrgConnectionResponse object is equal to o. */
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ HamrOrgConnectionResponse hamrOrgConnectionResponse = (HamrOrgConnectionResponse) o;
+ return Objects.equals(this.data, hamrOrgConnectionResponse.data)
+ && Objects.equals(
+ this.additionalProperties, hamrOrgConnectionResponse.additionalProperties);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(data, additionalProperties);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("class HamrOrgConnectionResponse {\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/HamrOrgConnectionStatus.java b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionStatus.java
new file mode 100644
index 00000000000..cb44cc2ec09
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionStatus.java
@@ -0,0 +1,66 @@
+/*
+ * 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;
+
+/**
+ * Status of the HAMR connection: - 0: UNSPECIFIED - Connection status not specified - 1: ONBOARDING
+ * - Initial setup of HAMR connection - 2: PASSIVE - Secondary organization in passive standby mode
+ * - 3: FAILOVER - Liminal status between PASSIVE and ACTIVE - 4: ACTIVE - Organization is an active
+ * failover - 5: RECOVERY - Recovery operation in progress
+ */
+@JsonSerialize(using = HamrOrgConnectionStatus.HamrOrgConnectionStatusSerializer.class)
+public class HamrOrgConnectionStatus extends ModelEnum {
+
+ private static final Set allowedValues =
+ new HashSet(Arrays.asList(0, 1, 2, 3, 4, 5));
+
+ public static final HamrOrgConnectionStatus UNSPECIFIED = new HamrOrgConnectionStatus(0);
+ public static final HamrOrgConnectionStatus ONBOARDING = new HamrOrgConnectionStatus(1);
+ public static final HamrOrgConnectionStatus PASSIVE = new HamrOrgConnectionStatus(2);
+ public static final HamrOrgConnectionStatus FAILOVER = new HamrOrgConnectionStatus(3);
+ public static final HamrOrgConnectionStatus ACTIVE = new HamrOrgConnectionStatus(4);
+ public static final HamrOrgConnectionStatus RECOVERY = new HamrOrgConnectionStatus(5);
+
+ HamrOrgConnectionStatus(Integer value) {
+ super(value, allowedValues);
+ }
+
+ public static class HamrOrgConnectionStatusSerializer
+ extends StdSerializer {
+ public HamrOrgConnectionStatusSerializer(Class t) {
+ super(t);
+ }
+
+ public HamrOrgConnectionStatusSerializer() {
+ this(null);
+ }
+
+ @Override
+ public void serialize(
+ HamrOrgConnectionStatus value, JsonGenerator jgen, SerializerProvider provider)
+ throws IOException, JsonProcessingException {
+ jgen.writeObject(value.value);
+ }
+ }
+
+ @JsonCreator
+ public static HamrOrgConnectionStatus fromValue(Integer value) {
+ return new HamrOrgConnectionStatus(value);
+ }
+}
diff --git a/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionType.java b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionType.java
new file mode 100644
index 00000000000..3d311551423
--- /dev/null
+++ b/src/main/java/com/datadog/api/client/v2/model/HamrOrgConnectionType.java
@@ -0,0 +1,56 @@
+/*
+ * 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;
+
+/** Type of the HAMR organization connection resource. */
+@JsonSerialize(using = HamrOrgConnectionType.HamrOrgConnectionTypeSerializer.class)
+public class HamrOrgConnectionType extends ModelEnum {
+
+ private static final Set allowedValues =
+ new HashSet(Arrays.asList("hamr_org_connections"));
+
+ public static final HamrOrgConnectionType HAMR_ORG_CONNECTIONS =
+ new HamrOrgConnectionType("hamr_org_connections");
+
+ HamrOrgConnectionType(String value) {
+ super(value, allowedValues);
+ }
+
+ public static class HamrOrgConnectionTypeSerializer extends StdSerializer {
+ public HamrOrgConnectionTypeSerializer(Class t) {
+ super(t);
+ }
+
+ public HamrOrgConnectionTypeSerializer() {
+ this(null);
+ }
+
+ @Override
+ public void serialize(
+ HamrOrgConnectionType value, JsonGenerator jgen, SerializerProvider provider)
+ throws IOException, JsonProcessingException {
+ jgen.writeObject(value.value);
+ }
+ }
+
+ @JsonCreator
+ public static HamrOrgConnectionType fromValue(String value) {
+ return new HamrOrgConnectionType(value);
+ }
+}
diff --git a/src/test/resources/com/datadog/api/client/v2/api/high_availability_multiregion.feature b/src/test/resources/com/datadog/api/client/v2/api/high_availability_multiregion.feature
new file mode 100644
index 00000000000..cdca2ff5274
--- /dev/null
+++ b/src/test/resources/com/datadog/api/client/v2/api/high_availability_multiregion.feature
@@ -0,0 +1,48 @@
+@endpoint(high-availability-multiregion) @endpoint(high-availability-multiregion-v2)
+Feature: High Availability MultiRegion
+ Configure High Availability Multi-Region (HAMR) connections between
+ Datadog organizations. HAMR provides disaster recovery capabilities by
+ maintaining synchronized data between primary and secondary organizations
+ across different datacenters.
+
+ Background:
+ Given a valid "apiKeyAuth" key in the system
+ And a valid "appKeyAuth" key in the system
+ And an instance of "HighAvailabilityMultiRegion" API
+
+ @generated @skip @team:DataDog/hamr
+ Scenario: Create or update HAMR organization connection returns "Bad Request" response
+ Given operation "CreateHamrOrgConnection" enabled
+ And new "CreateHamrOrgConnection" request
+ And body with value {"data": {"attributes": {"hamr_status": 4, "is_primary": true, "modified_by": "admin@example.com", "target_org_datacenter": "us1", "target_org_name": "Production Backup Org", "target_org_uuid": "660f9511-f3ac-52e5-b827-557766551111"}, "id": "550e8400-e29b-41d4-a716-446655440000", "type": "hamr_org_connections"}}
+ When the request is sent
+ Then the response status is 400 Bad Request
+
+ @generated @skip @team:DataDog/hamr
+ Scenario: Create or update HAMR organization connection returns "OK" response
+ Given operation "CreateHamrOrgConnection" enabled
+ And new "CreateHamrOrgConnection" request
+ And body with value {"data": {"attributes": {"hamr_status": 4, "is_primary": true, "modified_by": "admin@example.com", "target_org_datacenter": "us1", "target_org_name": "Production Backup Org", "target_org_uuid": "660f9511-f3ac-52e5-b827-557766551111"}, "id": "550e8400-e29b-41d4-a716-446655440000", "type": "hamr_org_connections"}}
+ When the request is sent
+ Then the response status is 200 OK
+
+ @generated @skip @team:DataDog/hamr
+ Scenario: Get HAMR organization connection returns "Bad Request" response
+ Given operation "GetHamrOrgConnection" enabled
+ And new "GetHamrOrgConnection" request
+ When the request is sent
+ Then the response status is 400 Bad Request
+
+ @generated @skip @team:DataDog/hamr
+ Scenario: Get HAMR organization connection returns "Not Found" response
+ Given operation "GetHamrOrgConnection" enabled
+ And new "GetHamrOrgConnection" request
+ When the request is sent
+ Then the response status is 404 Not Found
+
+ @generated @skip @team:DataDog/hamr
+ Scenario: Get HAMR organization connection returns "OK" response
+ Given operation "GetHamrOrgConnection" enabled
+ And new "GetHamrOrgConnection" 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 ab0366ca4a2..cd97b3d88f8 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
@@ -1557,6 +1557,20 @@
"type": "safe"
}
},
+ "GetHamrOrgConnection": {
+ "tag": "High Availability MultiRegion",
+ "undo": {
+ "type": "safe"
+ }
+ },
+ "CreateHamrOrgConnection": {
+ "tag": "High Availability MultiRegion",
+ "undo": {
+ "operationId": "TODO",
+ "parameters": [],
+ "type": "unsafe"
+ }
+ },
"ListIncidents": {
"tag": "Incidents",
"undo": {