Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Bicep resource definition
The sqlServerInstances/availabilityGroups resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
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:
- Resource groups - See resource group deployment commands For a list of changed properties in each API version, see change log.
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 |
|---|