Note : This endpoint is in public beta and is subject to change.
If you have any feedback, contact Datadog support .
POST https://api.ap1.datadoghq.com/api/v2/hamr https://api.ap2.datadoghq.com/api/v2/hamr https://api.datadoghq.eu/api/v2/hamr https://api.ddog-gov.com/api/v2/hamr https://api.us2.ddog-gov.com/api/v2/hamr https://api.datadoghq.com/api/v2/hamr https://api.us3.datadoghq.com/api/v2/hamr https://api.us5.datadoghq.com/api/v2/hamr
Overview 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)
Request Body Data (required)
Expand All
Data object for a HAMR organization connection request.
Attributes for a HAMR organization connection request.
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
Allowed enum values: 0,1,2,3,4,5 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.
Username or identifier of the user who last modified this HAMR connection.
target_org_datacenter [required ]
Datacenter location of the target organization (e.g., us1, eu1, us5).
target_org_name [required ]
Name of the target organization in the HAMR relationship.
target_org_uuid [required ]
UUID of the target organization in the HAMR relationship.
The organization UUID for this HAMR connection. Must match the authenticated organization's UUID.
Type of the HAMR organization connection resource.
Allowed enum values: hamr_org_connections
{
"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"
}
} Response OK
Response payload for a HAMR organization connection.
Expand All
Data object for a HAMR organization connection response.
Attributes of a HAMR organization connection response.
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
Allowed enum values: 0,1,2,3,4,5 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.
Timestamp of when this HAMR connection was last modified (RFC3339 format).
Username or identifier of the user who last modified this HAMR connection.
target_org_datacenter [required ]
Datacenter location of the target organization (e.g., us1, eu1, us5).
target_org_name [required ]
Name of the target organization in the HAMR relationship.
target_org_uuid [required ]
UUID of the target organization in the HAMR relationship.
The organization UUID for this HAMR connection.
Type of the HAMR organization connection resource.
Allowed enum values: hamr_org_connections
{
"data" : {
"attributes" : {
"hamr_status" : 4 ,
"is_primary" : true ,
"modified_at" : "2026-01-13T17:26:48.830968Z" ,
"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"
}
} Bad Request
API error response.
Expand All
A human-readable explanation specific to this occurrence of the error.
Non-standard meta-information about the error
References to the source of the error.
A string indicating the name of a single request header which caused the error.
A string indicating which URI query parameter caused the error.
A JSON pointer to the value in the request document that caused the error.
Status code of the response.
Short human-readable summary of the error.
{
"errors" : [
{
"detail" : "Missing required attribute in body" ,
"meta" : {},
"source" : {
"header" : "Authorization" ,
"parameter" : "limit" ,
"pointer" : "/data/attributes/title"
},
"status" : "400" ,
"title" : "Bad Request"
}
]
} Forbidden
API error response.
Expand All
A human-readable explanation specific to this occurrence of the error.
Non-standard meta-information about the error
References to the source of the error.
A string indicating the name of a single request header which caused the error.
A string indicating which URI query parameter caused the error.
A JSON pointer to the value in the request document that caused the error.
Status code of the response.
Short human-readable summary of the error.
{
"errors" : [
{
"detail" : "Missing required attribute in body" ,
"meta" : {},
"source" : {
"header" : "Authorization" ,
"parameter" : "limit" ,
"pointer" : "/data/attributes/title"
},
"status" : "400" ,
"title" : "Bad Request"
}
]
} Too many requests
{
"errors" : [
"Bad Request"
]
} Internal Server Error
API error response.
Expand All
A human-readable explanation specific to this occurrence of the error.
Non-standard meta-information about the error
References to the source of the error.
A string indicating the name of a single request header which caused the error.
A string indicating which URI query parameter caused the error.
A JSON pointer to the value in the request document that caused the error.
Status code of the response.
Short human-readable summary of the error.
{
"errors" : [
{
"detail" : "Missing required attribute in body" ,
"meta" : {},
"source" : {
"header" : "Authorization" ,
"parameter" : "limit" ,
"pointer" : "/data/attributes/title"
},
"status" : "400" ,
"title" : "Bad Request"
}
]
} Code Example Copy
## default
#
# Curl command curl -X POST "https://api.ap1.datadoghq.com "https://api.ap2.datadoghq.com "https://api.datadoghq.eu "https://api.ddog-gov.com "https://api.us2.ddog-gov.com "https://api.datadoghq.com "https://api.us3.datadoghq.com "https://api.us5.datadoghq.com /api/v2/hamr " \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "DD-API-KEY: ${DD_API_KEY} " \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY} " \
-d @- << EOF
{
"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"
}
}
EOF
"""
Create or update HAMR organization connection returns "OK" response
"""
from datadog_api_client import ApiClient , Configuration
from datadog_api_client.v2.api.high_availability_multi_region_api import HighAvailabilityMultiRegionApi
from datadog_api_client.v2.model.hamr_org_connection_attributes_request import HamrOrgConnectionAttributesRequest
from datadog_api_client.v2.model.hamr_org_connection_data_request import HamrOrgConnectionDataRequest
from datadog_api_client.v2.model.hamr_org_connection_request import HamrOrgConnectionRequest
from datadog_api_client.v2.model.hamr_org_connection_status import HamrOrgConnectionStatus
from datadog_api_client.v2.model.hamr_org_connection_type import HamrOrgConnectionType
body = HamrOrgConnectionRequest (
data = HamrOrgConnectionDataRequest (
attributes = HamrOrgConnectionAttributesRequest (
hamr_status = HamrOrgConnectionStatus . ACTIVE ,
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 = HamrOrgConnectionType . HAMR_ORG_CONNECTIONS ,
),
)
configuration = Configuration ()
configuration . unstable_operations [ "create_hamr_org_connection" ] = True
with ApiClient ( configuration ) as api_client :
api_instance = HighAvailabilityMultiRegionApi ( api_client )
response = api_instance . create_hamr_org_connection ( body = body )
print ( response )
Instructions First install the library and its dependencies and then save the example to example.py and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" python3 "example.py"
# Create or update HAMR organization connection returns "OK" response
require "datadog_api_client"
DatadogAPIClient . configure do | config |
config . unstable_operations [ "v2.create_hamr_org_connection" . to_sym ] = true
end
api_instance = DatadogAPIClient :: V2 :: HighAvailabilityMultiRegionAPI . new
body = DatadogAPIClient :: V2 :: HamrOrgConnectionRequest . new ({
data : DatadogAPIClient :: V2 :: HamrOrgConnectionDataRequest . new ({
attributes : DatadogAPIClient :: V2 :: HamrOrgConnectionAttributesRequest . new ({
hamr_status : DatadogAPIClient :: V2 :: HamrOrgConnectionStatus :: ACTIVE ,
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 : DatadogAPIClient :: V2 :: HamrOrgConnectionType :: HAMR_ORG_CONNECTIONS ,
}),
})
p api_instance . create_hamr_org_connection ( body )
Instructions First install the library and its dependencies and then save the example to example.rb and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" rb "example.rb"
// Create or update HAMR organization connection returns "OK" response
package main
import (
"context"
"encoding/json"
"fmt"
"os"
"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
)
func main () {
body := datadogV2 . HamrOrgConnectionRequest {
Data : datadogV2 . HamrOrgConnectionDataRequest {
Attributes : datadogV2 . HamrOrgConnectionAttributesRequest {
HamrStatus : datadogV2 . 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 : datadogV2 . HAMRORGCONNECTIONTYPE_HAMR_ORG_CONNECTIONS ,
},
}
ctx := datadog . NewDefaultContext ( context . Background ())
configuration := datadog . NewConfiguration ()
configuration . SetUnstableOperationEnabled ( "v2.CreateHamrOrgConnection" , true )
apiClient := datadog . NewAPIClient ( configuration )
api := datadogV2 . NewHighAvailabilityMultiRegionApi ( apiClient )
resp , r , err := api . CreateHamrOrgConnection ( ctx , body )
if err != nil {
fmt . Fprintf ( os . Stderr , "Error when calling `HighAvailabilityMultiRegionApi.CreateHamrOrgConnection`: %v\n" , err )
fmt . Fprintf ( os . Stderr , "Full HTTP response: %v\n" , r )
}
responseContent , _ := json . MarshalIndent ( resp , "" , " " )
fmt . Fprintf ( os . Stdout , "Response from `HighAvailabilityMultiRegionApi.CreateHamrOrgConnection`:\n%s\n" , responseContent )
}
Instructions First install the library and its dependencies and then save the example to main.go and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" go run "main.go"
// 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 ();
}
}
}
Instructions First install the library and its dependencies and then save the example to Example.java and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" java "Example.java"
// Create or update HAMR organization connection returns "OK" response
use datadog_api_client ::datadog ;
use datadog_api_client ::datadogV2 ::api_high_availability_multi_region ::HighAvailabilityMultiRegionAPI ;
use datadog_api_client ::datadogV2 ::model ::HamrOrgConnectionAttributesRequest ;
use datadog_api_client ::datadogV2 ::model ::HamrOrgConnectionDataRequest ;
use datadog_api_client ::datadogV2 ::model ::HamrOrgConnectionRequest ;
use datadog_api_client ::datadogV2 ::model ::HamrOrgConnectionStatus ;
use datadog_api_client ::datadogV2 ::model ::HamrOrgConnectionType ;
#[tokio::main]
async fn main () {
let body = HamrOrgConnectionRequest ::new ( HamrOrgConnectionDataRequest ::new (
HamrOrgConnectionAttributesRequest ::new (
HamrOrgConnectionStatus ::ACTIVE ,
true ,
"admin@example.com" . to_string (),
"us1" . to_string (),
"Production Backup Org" . to_string (),
"660f9511-f3ac-52e5-b827-557766551111" . to_string (),
),
"550e8400-e29b-41d4-a716-446655440000" . to_string (),
HamrOrgConnectionType ::HAMR_ORG_CONNECTIONS ,
));
let mut configuration = datadog ::Configuration ::new ();
configuration . set_unstable_operation_enabled ( "v2.CreateHamrOrgConnection" , true );
let api = HighAvailabilityMultiRegionAPI ::with_config ( configuration );
let resp = api . create_hamr_org_connection ( body ). await ;
if let Ok ( value ) = resp {
println! ( " {:#?} " , value );
} else {
println! ( " {:#?} " , resp . unwrap_err ());
}
}
Instructions First install the library and its dependencies and then save the example to src/main.rs and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" cargo run
/**
* Create or update HAMR organization connection returns "OK" response
*/
import { client , v2 } from "@datadog/datadog-api-client" ;
const configuration = client . createConfiguration ();
configuration . unstableOperations [ "v2.createHamrOrgConnection" ] = true ;
const apiInstance = new v2 . HighAvailabilityMultiRegionApi ( configuration );
const params : v2.HighAvailabilityMultiRegionApiCreateHamrOrgConnectionRequest =
{
body : {
data : {
attributes : {
hamrStatus : 4 ,
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 : "hamr_org_connections" ,
},
},
};
apiInstance
. createHamrOrgConnection ( params )
. then (( data : v2.HamrOrgConnectionResponse ) => {
console . log (
"API called successfully. Returned data: " + JSON . stringify ( data )
);
})
. catch (( error : any ) => console . error ( error ));
Instructions First install the library and its dependencies and then save the example to example.ts and run following commands:
DD_SITE = "datadoghq.com us3.datadoghq.com us5.datadoghq.com datadoghq.eu ap1.datadoghq.com ap2.datadoghq.com ddog-gov.com us2.ddog-gov.com " DD_API_KEY = "<DD_API_KEY>" DD_APP_KEY = "<DD_APP_KEY>" tsc "example.ts"