Microsoft.AzureArcData sqlServerInstances/availabilityGroups 2026-03-01-preview

Bicep resource definition

The sqlServerInstances/availabilityGroups resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.AzureArcData/sqlServerInstances/availabilityGroups resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.AzureArcData/sqlServerInstances/availabilityGroups@2026-03-01-preview' = {
  parent: resourceSymbolicName
  location: 'string'
  name: 'string'
  properties: {
    databases: {
      value: [
        {
          databaseName: 'string'
        }
      ]
    }
    info: {
      basicFeatures: bool
      dbFailover: bool
      dtcSupport: bool
      failureConditionLevel: int
      healthCheckTimeout: int
      isContained: bool
      isDistributed: bool
      listener: {
        dnsName: 'string'
        ipV4AddressesAndMasks: [
          {
            ipAddress: 'string'
            mask: 'string'
          }
        ]
        ipV6Addresses: [
          'string'
        ]
        port: int
      }
      requiredSynchronizedSecondariesToCommit: int
    }
    replicas: {
      value: [
        {
          configure: {
            availabilityMode: 'string'
            backupPriority: int
            certificateName: 'string'
            endpointAuthenticationMode: 'string'
            endpointConnectLogin: 'string'
            endpointName: 'string'
            endpointUrl: 'string'
            failoverMode: 'string'
            primaryAllowConnections: 'string'
            readOnlyRoutingUrl: 'string'
            readWriteRoutingUrl: 'string'
            secondaryAllowConnections: 'string'
            seedingMode: 'string'
            sessionTimeout: int
          }
          replicaName: 'string'
          replicaResourceId: 'string'
          state: {}
        }
      ]
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Property Values

Microsoft.AzureArcData/sqlServerInstances/availabilityGroups

Name Description Value
location The geo-location where the resource lives string (required)
name The resource name string (required)
parent In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.

For more information, see Child resource outside parent resource.
Symbolic name for resource of type: sqlServerInstances
properties Properties of Arc Sql Server availability group SqlServerAvailabilityGroupResourceProperties (required)
tags Resource tags Dictionary of tag names and values. See Tags in templates

AvailabilityGroupConfigure

Name Description Value
availabilityMode Property that determines whether a given availability replica can run in synchronous-commit mode 'ASYNCHRONOUS_COMMIT'
'SYNCHRONOUS_COMMIT'
backupPriority Represents the user-specified priority for performing backups on this replica relative to the other replicas in the same availability group. int
certificateName Name of certificate to use for authentication. Required if any CERTIFICATE authentication modes are specified. string
endpointAuthenticationMode Permitted authentication modes for the mirroring endpoint. 'Certificate'
'Certificate_Windows_Kerberos'
'Certificate_Windows_Negotiate'
'Certificate_Windows_NTLM'
'Windows_Kerberos'
'Windows_Kerberos_Certificate'
'Windows_Negotiate'
'Windows_Negotiate_Certificate'
'Windows_NTLM'
'Windows_NTLM_Certificate'
endpointConnectLogin The login which will connect to the mirroring endpoint. string
endpointName Name of the mirroring endpoint URL string
endpointUrl Mirroring endpoint URL of availability group replica string
failoverMode Property to set the failover mode of the availability group replica 'AUTOMATIC'
'EXTERNAL'
'MANUAL'
'NONE'
primaryAllowConnections Whether the primary replica should allow all connections or only READ_WRITE connections (disallowing ReadOnly connections) 'ALL'
'READ_WRITE'
readOnlyRoutingUrl Connectivity endpoint (URL) of the read only availability replica. string
readWriteRoutingUrl Connectivity endpoint (URL) of the read write availability replica. string
secondaryAllowConnections Whether the secondary replica should allow all connections, no connections, or only ReadOnly connections. 'ALL'
'NO'
'READ_ONLY'
seedingMode Specifies how the secondary replica will be initially seeded. AUTOMATIC enables direct seeding. This method will seed the secondary replica over the network. This method does not require you to backup and restore a copy of the primary database on the replica. MANUAL specifies manual seeding (default). This method requires you to create a backup of the database on the primary replica and manually restore that backup on the secondary replica. 'AUTOMATIC'
'MANUAL'
sessionTimeout The time-out period of availability group session replica, in seconds. int

AvailabilityGroupInfo

Name Description Value
basicFeatures Specifies whether this is a basic availability group. bool
dbFailover Specifies whether the availability group supports failover for database health conditions. bool
dtcSupport Specifies whether DTC support has been enabled for this availability group. bool
failureConditionLevel User-defined failure condition level under which an automatic failover must be triggered. int
healthCheckTimeout Wait time (in milliseconds) for the sp_server_diagnostics system stored procedure to return server-health information, before the server instance is assumed to be slow or not responding. int
isContained SQL Server availability group contained system databases. bool
isDistributed Specifies whether this is a distributed availability group. bool
listener The listener for the sql server availability group SqlAvailabilityGroupStaticIPListenerProperties
requiredSynchronizedSecondariesToCommit The number of secondary replicas that must be in a synchronized state for a commit to complete. int

AvailabilityGroupState

Name Description Value

SqlAvailabilityGroupDatabaseReplicaResourceProperties

Name Description Value
databaseName the database name. string

SqlAvailabilityGroupIpV4AddressesAndMasksPropertiesItem

Name Description Value
ipAddress IPV4 address string
mask IPV4 netmask string

SqlAvailabilityGroupReplicaResourceProperties

Name Description Value
configure null AvailabilityGroupConfigure
replicaName The replica name. string
replicaResourceId Resource id of this replica. This is required for a distributed availability group, in which case it describes the location of the availability group that hosts one replica in the DAG. In a non-distributed availability group this field is optional but can be used to store the Azure resource id for AG. string
state null AvailabilityGroupState

SqlAvailabilityGroupStaticIPListenerProperties

Name Description Value
dnsName the DNS name for the listener. string
ipV4AddressesAndMasks IP V4 Addresses and masks for the listener. SqlAvailabilityGroupIpV4AddressesAndMasksPropertiesItem[]
ipV6Addresses IP V6 Addresses for the listener string[]
port Network port for the listener. Default is 1433. int

SqlServerAvailabilityGroupResourceProperties

Name Description Value
databases A list of Availability Group Database Replicas. SqlServerAvailabilityGroupResourcePropertiesDatabases
info Availability Group Info AvailabilityGroupInfo
replicas A list of Availability Group Replicas. SqlServerAvailabilityGroupResourcePropertiesReplicas

SqlServerAvailabilityGroupResourcePropertiesDatabases

Name Description Value
value Array of Availability Group Database Replicas. SqlAvailabilityGroupDatabaseReplicaResourceProperties[]

SqlServerAvailabilityGroupResourcePropertiesReplicas

Name Description Value
value Array of Availability Group Replicas. SqlAvailabilityGroupReplicaResourceProperties[]

TrackedResourceTags

Name Description Value

ARM template resource definition

The sqlServerInstances/availabilityGroups resource type can be deployed with operations that target:

Usage Examples

Resource format

To create a Microsoft.AzureArcData/sqlServerInstances/availabilityGroups resource, add the following JSON to your template.

{
  "type": "Microsoft.AzureArcData/sqlServerInstances/availabilityGroups",
  "apiVersion": "2026-03-01-preview",
  "name": "string",
  "location": "string",
  "properties": {
    "databases": {
      "value": [
        {
          "databaseName": "string"
        }
      ]
    },
    "info": {
      "basicFeatures": "bool",
      "dbFailover": "bool",
      "dtcSupport": "bool",
      "failureConditionLevel": "int",
      "healthCheckTimeout": "int",
      "isContained": "bool",
      "isDistributed": "bool",
      "listener": {
        "dnsName": "string",
        "ipV4AddressesAndMasks": [
          {
            "ipAddress": "string",
            "mask": "string"
          }
        ],
        "ipV6Addresses": [ "string" ],
        "port": "int"
      },
      "requiredSynchronizedSecondariesToCommit": "int"
    },
    "replicas": {
      "value": [
        {
          "configure": {
            "availabilityMode": "string",
            "backupPriority": "int",
            "certificateName": "string",
            "endpointAuthenticationMode": "string",
            "endpointConnectLogin": "string",
            "endpointName": "string",
            "endpointUrl": "string",
            "failoverMode": "string",
            "primaryAllowConnections": "string",
            "readOnlyRoutingUrl": "string",
            "readWriteRoutingUrl": "string",
            "secondaryAllowConnections": "string",
            "seedingMode": "string",
            "sessionTimeout": "int"
          },
          "replicaName": "string",
          "replicaResourceId": "string",
          "state": {
          }
        }
      ]
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property Values

Microsoft.AzureArcData/sqlServerInstances/availabilityGroups

Name Description Value
apiVersion The api version '2026-03-01-preview'
location The geo-location where the resource lives string (required)
name The resource name string (required)
properties Properties of Arc Sql Server availability group SqlServerAvailabilityGroupResourceProperties (required)
tags Resource tags Dictionary of tag names and values. See Tags in templates
type The resource type 'Microsoft.AzureArcData/sqlServerInstances/availabilityGroups'

AvailabilityGroupConfigure

Name Description Value
availabilityMode Property that determines whether a given availability replica can run in synchronous-commit mode 'ASYNCHRONOUS_COMMIT'
'SYNCHRONOUS_COMMIT'
backupPriority Represents the user-specified priority for performing backups on this replica relative to the other replicas in the same availability group. int
certificateName Name of certificate to use for authentication. Required if any CERTIFICATE authentication modes are specified. string
endpointAuthenticationMode Permitted authentication modes for the mirroring endpoint. 'Certificate'
'Certificate_Windows_Kerberos'
'Certificate_Windows_Negotiate'
'Certificate_Windows_NTLM'
'Windows_Kerberos'
'Windows_Kerberos_Certificate'
'Windows_Negotiate'
'Windows_Negotiate_Certificate'
'Windows_NTLM'
'Windows_NTLM_Certificate'
endpointConnectLogin The login which will connect to the mirroring endpoint. string
endpointName Name of the mirroring endpoint URL string
endpointUrl Mirroring endpoint URL of availability group replica string
failoverMode Property to set the failover mode of the availability group replica 'AUTOMATIC'
'EXTERNAL'
'MANUAL'
'NONE'
primaryAllowConnections Whether the primary replica should allow all connections or only READ_WRITE connections (disallowing ReadOnly connections) 'ALL'
'READ_WRITE'
readOnlyRoutingUrl Connectivity endpoint (URL) of the read only availability replica. string
readWriteRoutingUrl Connectivity endpoint (URL) of the read write availability replica. string
secondaryAllowConnections Whether the secondary replica should allow all connections, no connections, or only ReadOnly connections. 'ALL'
'NO'
'READ_ONLY'
seedingMode Specifies how the secondary replica will be initially seeded. AUTOMATIC enables direct seeding. This method will seed the secondary replica over the network. This method does not require you to backup and restore a copy of the primary database on the replica. MANUAL specifies manual seeding (default). This method requires you to create a backup of the database on the primary replica and manually restore that backup on the secondary replica. 'AUTOMATIC'
'MANUAL'
sessionTimeout The time-out period of availability group session replica, in seconds. int

AvailabilityGroupInfo

Name Description Value
basicFeatures Specifies whether this is a basic availability group. bool
dbFailover Specifies whether the availability group supports failover for database health conditions. bool
dtcSupport Specifies whether DTC support has been enabled for this availability group. bool
failureConditionLevel User-defined failure condition level under which an automatic failover must be triggered. int
healthCheckTimeout Wait time (in milliseconds) for the sp_server_diagnostics system stored procedure to return server-health information, before the server instance is assumed to be slow or not responding. int
isContained SQL Server availability group contained system databases. bool
isDistributed Specifies whether this is a distributed availability group. bool
listener The listener for the sql server availability group SqlAvailabilityGroupStaticIPListenerProperties
requiredSynchronizedSecondariesToCommit The number of secondary replicas that must be in a synchronized state for a commit to complete. int

AvailabilityGroupState

Name Description Value

SqlAvailabilityGroupDatabaseReplicaResourceProperties

Name Description Value
databaseName the database name. string

SqlAvailabilityGroupIpV4AddressesAndMasksPropertiesItem

Name Description Value
ipAddress IPV4 address string
mask IPV4 netmask string

SqlAvailabilityGroupReplicaResourceProperties

Name Description Value
configure null AvailabilityGroupConfigure
replicaName The replica name. string
replicaResourceId Resource id of this replica. This is required for a distributed availability group, in which case it describes the location of the availability group that hosts one replica in the DAG. In a non-distributed availability group this field is optional but can be used to store the Azure resource id for AG. string
state null AvailabilityGroupState

SqlAvailabilityGroupStaticIPListenerProperties

Name Description Value
dnsName the DNS name for the listener. string
ipV4AddressesAndMasks IP V4 Addresses and masks for the listener. SqlAvailabilityGroupIpV4AddressesAndMasksPropertiesItem[]
ipV6Addresses IP V6 Addresses for the listener string[]
port Network port for the listener. Default is 1433. int

SqlServerAvailabilityGroupResourceProperties

Name Description Value
databases A list of Availability Group Database Replicas. SqlServerAvailabilityGroupResourcePropertiesDatabases
info Availability Group Info AvailabilityGroupInfo
replicas A list of Availability Group Replicas. SqlServerAvailabilityGroupResourcePropertiesReplicas

SqlServerAvailabilityGroupResourcePropertiesDatabases

Name Description Value
value Array of Availability Group Database Replicas. SqlAvailabilityGroupDatabaseReplicaResourceProperties[]

SqlServerAvailabilityGroupResourcePropertiesReplicas

Name Description Value
value Array of Availability Group Replicas. SqlAvailabilityGroupReplicaResourceProperties[]

TrackedResourceTags

Name Description Value

Terraform (AzAPI provider) resource definition

The sqlServerInstances/availabilityGroups resource type can be deployed with operations that target:

  • Resource groups For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.AzureArcData/sqlServerInstances/availabilityGroups resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.AzureArcData/sqlServerInstances/availabilityGroups@2026-03-01-preview"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    properties = {
      databases = {
        value = [
          {
            databaseName = "string"
          }
        ]
      }
      info = {
        basicFeatures = bool
        dbFailover = bool
        dtcSupport = bool
        failureConditionLevel = int
        healthCheckTimeout = int
        isContained = bool
        isDistributed = bool
        listener = {
          dnsName = "string"
          ipV4AddressesAndMasks = [
            {
              ipAddress = "string"
              mask = "string"
            }
          ]
          ipV6Addresses = [
            "string"
          ]
          port = int
        }
        requiredSynchronizedSecondariesToCommit = int
      }
      replicas = {
        value = [
          {
            configure = {
              availabilityMode = "string"
              backupPriority = int
              certificateName = "string"
              endpointAuthenticationMode = "string"
              endpointConnectLogin = "string"
              endpointName = "string"
              endpointUrl = "string"
              failoverMode = "string"
              primaryAllowConnections = "string"
              readOnlyRoutingUrl = "string"
              readWriteRoutingUrl = "string"
              secondaryAllowConnections = "string"
              seedingMode = "string"
              sessionTimeout = int
            }
            replicaName = "string"
            replicaResourceId = "string"
            state = {
            }
          }
        ]
      }
    }
  }
}

Property Values

Microsoft.AzureArcData/sqlServerInstances/availabilityGroups

Name Description Value
location The geo-location where the resource lives string (required)
name The resource name string (required)
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: sqlServerInstances
properties Properties of Arc Sql Server availability group SqlServerAvailabilityGroupResourceProperties (required)
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.AzureArcData/sqlServerInstances/availabilityGroups@2026-03-01-preview"

AvailabilityGroupConfigure

Name Description Value
availabilityMode Property that determines whether a given availability replica can run in synchronous-commit mode 'ASYNCHRONOUS_COMMIT'
'SYNCHRONOUS_COMMIT'
backupPriority Represents the user-specified priority for performing backups on this replica relative to the other replicas in the same availability group. int
certificateName Name of certificate to use for authentication. Required if any CERTIFICATE authentication modes are specified. string
endpointAuthenticationMode Permitted authentication modes for the mirroring endpoint. 'Certificate'
'Certificate_Windows_Kerberos'
'Certificate_Windows_Negotiate'
'Certificate_Windows_NTLM'
'Windows_Kerberos'
'Windows_Kerberos_Certificate'
'Windows_Negotiate'
'Windows_Negotiate_Certificate'
'Windows_NTLM'
'Windows_NTLM_Certificate'
endpointConnectLogin The login which will connect to the mirroring endpoint. string
endpointName Name of the mirroring endpoint URL string
endpointUrl Mirroring endpoint URL of availability group replica string
failoverMode Property to set the failover mode of the availability group replica 'AUTOMATIC'
'EXTERNAL'
'MANUAL'
'NONE'
primaryAllowConnections Whether the primary replica should allow all connections or only READ_WRITE connections (disallowing ReadOnly connections) 'ALL'
'READ_WRITE'
readOnlyRoutingUrl Connectivity endpoint (URL) of the read only availability replica. string
readWriteRoutingUrl Connectivity endpoint (URL) of the read write availability replica. string
secondaryAllowConnections Whether the secondary replica should allow all connections, no connections, or only ReadOnly connections. 'ALL'
'NO'
'READ_ONLY'
seedingMode Specifies how the secondary replica will be initially seeded. AUTOMATIC enables direct seeding. This method will seed the secondary replica over the network. This method does not require you to backup and restore a copy of the primary database on the replica. MANUAL specifies manual seeding (default). This method requires you to create a backup of the database on the primary replica and manually restore that backup on the secondary replica. 'AUTOMATIC'
'MANUAL'
sessionTimeout The time-out period of availability group session replica, in seconds. int

AvailabilityGroupInfo

Name Description Value
basicFeatures Specifies whether this is a basic availability group. bool
dbFailover Specifies whether the availability group supports failover for database health conditions. bool
dtcSupport Specifies whether DTC support has been enabled for this availability group. bool
failureConditionLevel User-defined failure condition level under which an automatic failover must be triggered. int
healthCheckTimeout Wait time (in milliseconds) for the sp_server_diagnostics system stored procedure to return server-health information, before the server instance is assumed to be slow or not responding. int
isContained SQL Server availability group contained system databases. bool
isDistributed Specifies whether this is a distributed availability group. bool
listener The listener for the sql server availability group SqlAvailabilityGroupStaticIPListenerProperties
requiredSynchronizedSecondariesToCommit The number of secondary replicas that must be in a synchronized state for a commit to complete. int

AvailabilityGroupState

Name Description Value

SqlAvailabilityGroupDatabaseReplicaResourceProperties

Name Description Value
databaseName the database name. string

SqlAvailabilityGroupIpV4AddressesAndMasksPropertiesItem

Name Description Value
ipAddress IPV4 address string
mask IPV4 netmask string

SqlAvailabilityGroupReplicaResourceProperties

Name Description Value
configure null AvailabilityGroupConfigure
replicaName The replica name. string
replicaResourceId Resource id of this replica. This is required for a distributed availability group, in which case it describes the location of the availability group that hosts one replica in the DAG. In a non-distributed availability group this field is optional but can be used to store the Azure resource id for AG. string
state null AvailabilityGroupState

SqlAvailabilityGroupStaticIPListenerProperties

Name Description Value
dnsName the DNS name for the listener. string
ipV4AddressesAndMasks IP V4 Addresses and masks for the listener. SqlAvailabilityGroupIpV4AddressesAndMasksPropertiesItem[]
ipV6Addresses IP V6 Addresses for the listener string[]
port Network port for the listener. Default is 1433. int

SqlServerAvailabilityGroupResourceProperties

Name Description Value
databases A list of Availability Group Database Replicas. SqlServerAvailabilityGroupResourcePropertiesDatabases
info Availability Group Info AvailabilityGroupInfo
replicas A list of Availability Group Replicas. SqlServerAvailabilityGroupResourcePropertiesReplicas

SqlServerAvailabilityGroupResourcePropertiesDatabases

Name Description Value
value Array of Availability Group Database Replicas. SqlAvailabilityGroupDatabaseReplicaResourceProperties[]

SqlServerAvailabilityGroupResourcePropertiesReplicas

Name Description Value
value Array of Availability Group Replicas. SqlAvailabilityGroupReplicaResourceProperties[]

TrackedResourceTags

Name Description Value