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 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 resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.AzureArcData/sqlServerInstances@2025-06-01-preview' = {
scope: resourceSymbolicName or scope
location: 'string'
name: 'string'
properties: {
authentication: {
mode: 'string'
sqlServerEntraIdentity: [
{
clientId: 'string'
identityType: 'string'
}
]
}
backupPolicy: {
differentialBackupHours: int
fullBackupDays: int
retentionPeriodDays: int
transactionLogBackupMinutes: int
}
bestPracticesAssessment: {
enabled: bool
schedule: {
cronTrigger: {
expression: 'string'
startTime: 'string'
timeZone: 'string'
}
enabled: bool
}
}
clientConnection: {
enabled: bool
}
cores: 'string'
databaseMirroringEndpoint: {}
edition: 'string'
failoverCluster: {}
hostType: 'string'
instanceName: 'string'
migration: {
assessment: {
enabled: bool
impactedObjectsSummary: {}
settings: {
costOptions: {
computeAndStorageCostOption: 'string'
sqlLicenseCostOption: 'string'
windowsLicenseCostOption: 'string'
}
currency: 'string'
discountPercentage: int
lookbackPeriodInDays: int
percentile: int
strategy: 'string'
targetLocation: 'string'
}
}
}
monitoring: {
enabled: bool
}
serviceType: 'string'
upgradeLockedUntil: 'string'
version: 'string'
}
tags: {
{customized property}: 'string'
}
}
Property Values
Microsoft.AzureArcData/sqlServerInstances
| Name | Description | Value |
|---|---|---|
| location | The geo-location where the resource lives | string (required) |
| name | The resource name | string (required) |
| properties | null | SqlServerInstanceProperties |
| scope | Use when creating a resource at a scope that is different than the deployment scope. | Set this property to the symbolic name of a resource to apply the extension resource. |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
Authentication
| Name | Description | Value |
|---|---|---|
| mode | Mode of authentication in SqlServer. | 'Mixed' 'Undefined' 'Windows' |
| sqlServerEntraIdentity | Entra Authentication configuration for the SQL Server Instance. | EntraAuthentication[] |
BackupPolicy
| Name | Description | Value |
|---|---|---|
| differentialBackupHours | The differential backup interval in hours. | int |
| fullBackupDays | The value indicating days between full backups. | int Constraints: Min value = 0 Max value = 7 |
| retentionPeriodDays | The retention period for all the databases in this managed instance. | int Constraints: Min value = 0 Max value = 35 |
| transactionLogBackupMinutes | The value indicating minutes between transaction log backups. | int Constraints: Min value = 0 Max value = 60 |
BestPracticesAssessment
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if SQL best practices assessment is enabled for the SQL Server instance. | bool |
| schedule | The scheduling configuration. | Schedule |
ClientConnection
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if client connection is enabled for this SQL Server instance. | bool |
CostOptionSelectedValues
| Name | Description | Value |
|---|---|---|
| computeAndStorageCostOption | selected cost saving option e.g. With1YearASPAndDevTest. | string |
| sqlLicenseCostOption | With Azure Hybrid Benefit(AHB) or not for SQL. | string |
| windowsLicenseCostOption | With Azure Hybrid Benefit(AHB) or not for Windows. | string |
CronTrigger
| Name | Description | Value |
|---|---|---|
| expression | A cron string representing a CronTab expression. A crontab expression is a very compact way to express a recurring schedule with the following format: '{minutes} {hours} {days} {months} {days-of-week}'. | string |
| startTime | Indicates the start time for the trigger. The default value is the time at which the trigger was created. | string |
| timeZone | The time zone in which the trigger is scheduled. | string |
DBMEndpoint
| Name | Description | Value |
|---|
EntraAuthentication
| Name | Description | Value |
|---|---|---|
| clientId | The client Id of the Managed Identity to query Microsoft Graph API. An empty string must be used for the system assigned Managed Identity. | string |
| identityType | The method used for Entra authentication | 'SystemAssignedManagedIdentity' 'UserAssignedManagedIdentity' |
FailoverCluster
| Name | Description | Value |
|---|
ImpactedObjectsSuitabilitySummary
| Name | Description | Value |
|---|
Migration
| Name | Description | Value |
|---|---|---|
| assessment | Migration assessments related configuration. | MigrationAssessment |
MigrationAssessment
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if migration assessment is enabled for this SQL Server instance. | bool |
| impactedObjectsSummary | Represents a summary of migration readiness issues/warnings per feature type for Azure SQL DB and SQL MI targets | ImpactedObjectsSuitabilitySummary |
| settings | Settings impacting the migration assessment computation - configurable with some default values if not set. | MigrationAssessmentSettings |
MigrationAssessmentSettings
| Name | Description | Value |
|---|---|---|
| costOptions | Selected cost option value. | CostOptionSelectedValues |
| currency | currency to calculate prices - default USD. | string |
| discountPercentage | flat discount percentage to apply for the price - default 0 | int |
| lookbackPeriodInDays | How far back to check the performance data - default is 30 (days). | int |
| percentile | Indicate the percentile value for the performance sample. (Default is 95th percentile) | int |
| strategy | Minimize cost or Migrate to PaaS. - to evaluate based on the recommended strategy | string |
| targetLocation | The target location for Azure SQL SKU for migration. - default West US | string |
Monitoring
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if monitoring is enabled for this SQL Server instance. | bool |
Schedule
| Name | Description | Value |
|---|---|---|
| cronTrigger | The cron trigger configuration. | CronTrigger |
| enabled | Indicates whether scheduling is enabled. | bool |
SqlServerInstanceProperties
| Name | Description | Value |
|---|---|---|
| authentication | Authentication related configuration for the SQL Server Instance. | Authentication |
| backupPolicy | The backup profile for the SQL server. | BackupPolicy |
| bestPracticesAssessment | The configuration related to SQL best practices assessment. | BestPracticesAssessment |
| clientConnection | Client connection related configuration. | ClientConnection |
| cores | The number of total cores of the Operating System Environment (OSE) hosting the SQL Server instance. | string |
| databaseMirroringEndpoint | Database mirroring endpoint related properties. | DBMEndpoint |
| edition | SQL Server edition. | 'Business Intelligence' 'Developer' 'Enterprise' 'Evaluation' 'Express' 'Standard Developer' 'Standard' 'Web' |
| failoverCluster | Failover Cluster Instance properties. | FailoverCluster |
| hostType | Type of host for Azure Arc SQL Server | 'AWS Kubernetes Service' 'AWS Virtual Machine' 'AWS VMWare Virtual Machine' 'Azure Kubernetes Service' 'Azure Virtual Machine' 'Azure VMWare Virtual Machine' 'Container' 'GCP Kubernetes Service' 'GCP Virtual Machine' 'GCP VMWare Virtual Machine' 'Other' 'Physical Server' 'Virtual Machine' |
| instanceName | SQL Server instance name. | string |
| migration | Migration related configuration. | Migration |
| monitoring | The monitoring configuration. | Monitoring |
| serviceType | Indicates if the resource represents a SQL Server engine or a SQL Server component service installed on the host. | 'Engine' 'PBIRS' 'SSAS' 'SSIS' 'SSRS' |
| upgradeLockedUntil | Upgrade Action for this resource is locked until it expires. The Expiration time indicated by this value. It is not locked when it is empty. | string |
| version | SQL Server version. | 'SQL Server 2012' 'SQL Server 2014' 'SQL Server 2016' 'SQL Server 2017' 'SQL Server 2019' 'SQL Server 2022' 'SQL Server 2025' 'Unknown' |
TrackedResourceTags
| Name | Description | Value |
|---|
ARM template resource definition
The sqlServerInstances 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 resource, add the following JSON to your template.
{
"type": "Microsoft.AzureArcData/sqlServerInstances",
"apiVersion": "2025-06-01-preview",
"name": "string",
"location": "string",
"properties": {
"authentication": {
"mode": "string",
"sqlServerEntraIdentity": [
{
"clientId": "string",
"identityType": "string"
}
]
},
"backupPolicy": {
"differentialBackupHours": "int",
"fullBackupDays": "int",
"retentionPeriodDays": "int",
"transactionLogBackupMinutes": "int"
},
"bestPracticesAssessment": {
"enabled": "bool",
"schedule": {
"cronTrigger": {
"expression": "string",
"startTime": "string",
"timeZone": "string"
},
"enabled": "bool"
}
},
"clientConnection": {
"enabled": "bool"
},
"cores": "string",
"databaseMirroringEndpoint": {
},
"edition": "string",
"failoverCluster": {
},
"hostType": "string",
"instanceName": "string",
"migration": {
"assessment": {
"enabled": "bool",
"impactedObjectsSummary": {
},
"settings": {
"costOptions": {
"computeAndStorageCostOption": "string",
"sqlLicenseCostOption": "string",
"windowsLicenseCostOption": "string"
},
"currency": "string",
"discountPercentage": "int",
"lookbackPeriodInDays": "int",
"percentile": "int",
"strategy": "string",
"targetLocation": "string"
}
}
},
"monitoring": {
"enabled": "bool"
},
"serviceType": "string",
"upgradeLockedUntil": "string",
"version": "string"
},
"tags": {
"{customized property}": "string"
}
}
Property Values
Microsoft.AzureArcData/sqlServerInstances
| Name | Description | Value |
|---|---|---|
| apiVersion | The api version | '2025-06-01-preview' |
| location | The geo-location where the resource lives | string (required) |
| name | The resource name | string (required) |
| properties | null | SqlServerInstanceProperties |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
| type | The resource type | 'Microsoft.AzureArcData/sqlServerInstances' |
Authentication
| Name | Description | Value |
|---|---|---|
| mode | Mode of authentication in SqlServer. | 'Mixed' 'Undefined' 'Windows' |
| sqlServerEntraIdentity | Entra Authentication configuration for the SQL Server Instance. | EntraAuthentication[] |
BackupPolicy
| Name | Description | Value |
|---|---|---|
| differentialBackupHours | The differential backup interval in hours. | int |
| fullBackupDays | The value indicating days between full backups. | int Constraints: Min value = 0 Max value = 7 |
| retentionPeriodDays | The retention period for all the databases in this managed instance. | int Constraints: Min value = 0 Max value = 35 |
| transactionLogBackupMinutes | The value indicating minutes between transaction log backups. | int Constraints: Min value = 0 Max value = 60 |
BestPracticesAssessment
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if SQL best practices assessment is enabled for the SQL Server instance. | bool |
| schedule | The scheduling configuration. | Schedule |
ClientConnection
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if client connection is enabled for this SQL Server instance. | bool |
CostOptionSelectedValues
| Name | Description | Value |
|---|---|---|
| computeAndStorageCostOption | selected cost saving option e.g. With1YearASPAndDevTest. | string |
| sqlLicenseCostOption | With Azure Hybrid Benefit(AHB) or not for SQL. | string |
| windowsLicenseCostOption | With Azure Hybrid Benefit(AHB) or not for Windows. | string |
CronTrigger
| Name | Description | Value |
|---|---|---|
| expression | A cron string representing a CronTab expression. A crontab expression is a very compact way to express a recurring schedule with the following format: '{minutes} {hours} {days} {months} {days-of-week}'. | string |
| startTime | Indicates the start time for the trigger. The default value is the time at which the trigger was created. | string |
| timeZone | The time zone in which the trigger is scheduled. | string |
DBMEndpoint
| Name | Description | Value |
|---|
EntraAuthentication
| Name | Description | Value |
|---|---|---|
| clientId | The client Id of the Managed Identity to query Microsoft Graph API. An empty string must be used for the system assigned Managed Identity. | string |
| identityType | The method used for Entra authentication | 'SystemAssignedManagedIdentity' 'UserAssignedManagedIdentity' |
FailoverCluster
| Name | Description | Value |
|---|
ImpactedObjectsSuitabilitySummary
| Name | Description | Value |
|---|
Migration
| Name | Description | Value |
|---|---|---|
| assessment | Migration assessments related configuration. | MigrationAssessment |
MigrationAssessment
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if migration assessment is enabled for this SQL Server instance. | bool |
| impactedObjectsSummary | Represents a summary of migration readiness issues/warnings per feature type for Azure SQL DB and SQL MI targets | ImpactedObjectsSuitabilitySummary |
| settings | Settings impacting the migration assessment computation - configurable with some default values if not set. | MigrationAssessmentSettings |
MigrationAssessmentSettings
| Name | Description | Value |
|---|---|---|
| costOptions | Selected cost option value. | CostOptionSelectedValues |
| currency | currency to calculate prices - default USD. | string |
| discountPercentage | flat discount percentage to apply for the price - default 0 | int |
| lookbackPeriodInDays | How far back to check the performance data - default is 30 (days). | int |
| percentile | Indicate the percentile value for the performance sample. (Default is 95th percentile) | int |
| strategy | Minimize cost or Migrate to PaaS. - to evaluate based on the recommended strategy | string |
| targetLocation | The target location for Azure SQL SKU for migration. - default West US | string |
Monitoring
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if monitoring is enabled for this SQL Server instance. | bool |
Schedule
| Name | Description | Value |
|---|---|---|
| cronTrigger | The cron trigger configuration. | CronTrigger |
| enabled | Indicates whether scheduling is enabled. | bool |
SqlServerInstanceProperties
| Name | Description | Value |
|---|---|---|
| authentication | Authentication related configuration for the SQL Server Instance. | Authentication |
| backupPolicy | The backup profile for the SQL server. | BackupPolicy |
| bestPracticesAssessment | The configuration related to SQL best practices assessment. | BestPracticesAssessment |
| clientConnection | Client connection related configuration. | ClientConnection |
| cores | The number of total cores of the Operating System Environment (OSE) hosting the SQL Server instance. | string |
| databaseMirroringEndpoint | Database mirroring endpoint related properties. | DBMEndpoint |
| edition | SQL Server edition. | 'Business Intelligence' 'Developer' 'Enterprise' 'Evaluation' 'Express' 'Standard Developer' 'Standard' 'Web' |
| failoverCluster | Failover Cluster Instance properties. | FailoverCluster |
| hostType | Type of host for Azure Arc SQL Server | 'AWS Kubernetes Service' 'AWS Virtual Machine' 'AWS VMWare Virtual Machine' 'Azure Kubernetes Service' 'Azure Virtual Machine' 'Azure VMWare Virtual Machine' 'Container' 'GCP Kubernetes Service' 'GCP Virtual Machine' 'GCP VMWare Virtual Machine' 'Other' 'Physical Server' 'Virtual Machine' |
| instanceName | SQL Server instance name. | string |
| migration | Migration related configuration. | Migration |
| monitoring | The monitoring configuration. | Monitoring |
| serviceType | Indicates if the resource represents a SQL Server engine or a SQL Server component service installed on the host. | 'Engine' 'PBIRS' 'SSAS' 'SSIS' 'SSRS' |
| upgradeLockedUntil | Upgrade Action for this resource is locked until it expires. The Expiration time indicated by this value. It is not locked when it is empty. | string |
| version | SQL Server version. | 'SQL Server 2012' 'SQL Server 2014' 'SQL Server 2016' 'SQL Server 2017' 'SQL Server 2019' 'SQL Server 2022' 'SQL Server 2025' 'Unknown' |
TrackedResourceTags
| Name | Description | Value |
|---|
Usage Examples
Terraform (AzAPI provider) resource definition
The sqlServerInstances 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 resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.AzureArcData/sqlServerInstances@2025-06-01-preview"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
authentication = {
mode = "string"
sqlServerEntraIdentity = [
{
clientId = "string"
identityType = "string"
}
]
}
backupPolicy = {
differentialBackupHours = int
fullBackupDays = int
retentionPeriodDays = int
transactionLogBackupMinutes = int
}
bestPracticesAssessment = {
enabled = bool
schedule = {
cronTrigger = {
expression = "string"
startTime = "string"
timeZone = "string"
}
enabled = bool
}
}
clientConnection = {
enabled = bool
}
cores = "string"
databaseMirroringEndpoint = {
}
edition = "string"
failoverCluster = {
}
hostType = "string"
instanceName = "string"
migration = {
assessment = {
enabled = bool
impactedObjectsSummary = {
}
settings = {
costOptions = {
computeAndStorageCostOption = "string"
sqlLicenseCostOption = "string"
windowsLicenseCostOption = "string"
}
currency = "string"
discountPercentage = int
lookbackPeriodInDays = int
percentile = int
strategy = "string"
targetLocation = "string"
}
}
}
monitoring = {
enabled = bool
}
serviceType = "string"
upgradeLockedUntil = "string"
version = "string"
}
}
}
Property Values
Microsoft.AzureArcData/sqlServerInstances
| 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 to apply this extension resource to. | string (required) |
| properties | null | SqlServerInstanceProperties |
| tags | Resource tags | Dictionary of tag names and values. |
| type | The resource type | "Microsoft.AzureArcData/sqlServerInstances@2025-06-01-preview" |
Authentication
| Name | Description | Value |
|---|---|---|
| mode | Mode of authentication in SqlServer. | 'Mixed' 'Undefined' 'Windows' |
| sqlServerEntraIdentity | Entra Authentication configuration for the SQL Server Instance. | EntraAuthentication[] |
BackupPolicy
| Name | Description | Value |
|---|---|---|
| differentialBackupHours | The differential backup interval in hours. | int |
| fullBackupDays | The value indicating days between full backups. | int Constraints: Min value = 0 Max value = 7 |
| retentionPeriodDays | The retention period for all the databases in this managed instance. | int Constraints: Min value = 0 Max value = 35 |
| transactionLogBackupMinutes | The value indicating minutes between transaction log backups. | int Constraints: Min value = 0 Max value = 60 |
BestPracticesAssessment
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if SQL best practices assessment is enabled for the SQL Server instance. | bool |
| schedule | The scheduling configuration. | Schedule |
ClientConnection
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if client connection is enabled for this SQL Server instance. | bool |
CostOptionSelectedValues
| Name | Description | Value |
|---|---|---|
| computeAndStorageCostOption | selected cost saving option e.g. With1YearASPAndDevTest. | string |
| sqlLicenseCostOption | With Azure Hybrid Benefit(AHB) or not for SQL. | string |
| windowsLicenseCostOption | With Azure Hybrid Benefit(AHB) or not for Windows. | string |
CronTrigger
| Name | Description | Value |
|---|---|---|
| expression | A cron string representing a CronTab expression. A crontab expression is a very compact way to express a recurring schedule with the following format: '{minutes} {hours} {days} {months} {days-of-week}'. | string |
| startTime | Indicates the start time for the trigger. The default value is the time at which the trigger was created. | string |
| timeZone | The time zone in which the trigger is scheduled. | string |
DBMEndpoint
| Name | Description | Value |
|---|
EntraAuthentication
| Name | Description | Value |
|---|---|---|
| clientId | The client Id of the Managed Identity to query Microsoft Graph API. An empty string must be used for the system assigned Managed Identity. | string |
| identityType | The method used for Entra authentication | 'SystemAssignedManagedIdentity' 'UserAssignedManagedIdentity' |
FailoverCluster
| Name | Description | Value |
|---|
ImpactedObjectsSuitabilitySummary
| Name | Description | Value |
|---|
Migration
| Name | Description | Value |
|---|---|---|
| assessment | Migration assessments related configuration. | MigrationAssessment |
MigrationAssessment
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if migration assessment is enabled for this SQL Server instance. | bool |
| impactedObjectsSummary | Represents a summary of migration readiness issues/warnings per feature type for Azure SQL DB and SQL MI targets | ImpactedObjectsSuitabilitySummary |
| settings | Settings impacting the migration assessment computation - configurable with some default values if not set. | MigrationAssessmentSettings |
MigrationAssessmentSettings
| Name | Description | Value |
|---|---|---|
| costOptions | Selected cost option value. | CostOptionSelectedValues |
| currency | currency to calculate prices - default USD. | string |
| discountPercentage | flat discount percentage to apply for the price - default 0 | int |
| lookbackPeriodInDays | How far back to check the performance data - default is 30 (days). | int |
| percentile | Indicate the percentile value for the performance sample. (Default is 95th percentile) | int |
| strategy | Minimize cost or Migrate to PaaS. - to evaluate based on the recommended strategy | string |
| targetLocation | The target location for Azure SQL SKU for migration. - default West US | string |
Monitoring
| Name | Description | Value |
|---|---|---|
| enabled | Indicates if monitoring is enabled for this SQL Server instance. | bool |
Schedule
| Name | Description | Value |
|---|---|---|
| cronTrigger | The cron trigger configuration. | CronTrigger |
| enabled | Indicates whether scheduling is enabled. | bool |
SqlServerInstanceProperties
| Name | Description | Value |
|---|---|---|
| authentication | Authentication related configuration for the SQL Server Instance. | Authentication |
| backupPolicy | The backup profile for the SQL server. | BackupPolicy |
| bestPracticesAssessment | The configuration related to SQL best practices assessment. | BestPracticesAssessment |
| clientConnection | Client connection related configuration. | ClientConnection |
| cores | The number of total cores of the Operating System Environment (OSE) hosting the SQL Server instance. | string |
| databaseMirroringEndpoint | Database mirroring endpoint related properties. | DBMEndpoint |
| edition | SQL Server edition. | 'Business Intelligence' 'Developer' 'Enterprise' 'Evaluation' 'Express' 'Standard Developer' 'Standard' 'Web' |
| failoverCluster | Failover Cluster Instance properties. | FailoverCluster |
| hostType | Type of host for Azure Arc SQL Server | 'AWS Kubernetes Service' 'AWS Virtual Machine' 'AWS VMWare Virtual Machine' 'Azure Kubernetes Service' 'Azure Virtual Machine' 'Azure VMWare Virtual Machine' 'Container' 'GCP Kubernetes Service' 'GCP Virtual Machine' 'GCP VMWare Virtual Machine' 'Other' 'Physical Server' 'Virtual Machine' |
| instanceName | SQL Server instance name. | string |
| migration | Migration related configuration. | Migration |
| monitoring | The monitoring configuration. | Monitoring |
| serviceType | Indicates if the resource represents a SQL Server engine or a SQL Server component service installed on the host. | 'Engine' 'PBIRS' 'SSAS' 'SSIS' 'SSRS' |
| upgradeLockedUntil | Upgrade Action for this resource is locked until it expires. The Expiration time indicated by this value. It is not locked when it is empty. | string |
| version | SQL Server version. | 'SQL Server 2012' 'SQL Server 2014' 'SQL Server 2016' 'SQL Server 2017' 'SQL Server 2019' 'SQL Server 2022' 'SQL Server 2025' 'Unknown' |
TrackedResourceTags
| Name | Description | Value |
|---|