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.
- Latest
- 2025-11-01-preview
- 2025-10-15
- 2025-05-01-preview
- 2025-04-15
- 2024-12-01-preview
- 2024-11-15
- 2024-09-01-preview
- 2024-08-15
- 2024-05-15
- 2024-05-15-preview
- 2024-02-15-preview
- 2023-11-15
- 2023-11-15-preview
- 2023-09-15
- 2023-09-15-preview
- 2023-04-15
- 2023-03-15
- 2023-03-15-preview
- 2023-03-01-preview
- 2022-11-15
- 2022-11-15-preview
- 2022-08-15
- 2022-08-15-preview
- 2022-05-15
- 2022-05-15-preview
- 2022-02-15-preview
- 2021-11-15-preview
- 2021-10-15
- 2021-10-15-preview
- 2021-07-01-preview
- 2021-06-15
- 2021-05-15
- 2021-04-15
- 2021-04-01-preview
- 2021-03-15
- 2021-03-01-preview
- 2021-01-15
- 2020-09-01
- 2020-06-01-preview
- 2020-04-01
- 2020-03-01
- 2019-12-12
- 2019-08-01
Bicep resource definition
The databaseAccounts/sqlDatabases 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.DocumentDB/databaseAccounts/sqlDatabases resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2023-03-15-preview' = {
parent: resourceSymbolicName
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
location: 'string'
name: 'string'
properties: {
options: {
autoscaleSettings: {
maxThroughput: int
}
throughput: int
}
resource: {
createMode: 'string'
id: 'string'
restoreParameters: {
restoreSource: 'string'
restoreTimestampInUtc: 'string'
}
}
}
tags: {
{customized property}: 'string'
}
}
Property Values
Microsoft.DocumentDB/databaseAccounts/sqlDatabases
| Name | Description | Value |
|---|---|---|
| identity | Identity for the resource. | ManagedServiceIdentity |
| location | The location of the resource group to which the resource belongs. | string |
| 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: databaseAccounts |
| properties | Properties to create and update Azure Cosmos DB SQL database. | SqlDatabaseCreateUpdatePropertiesOrSqlDatabaseGetProperties (required) |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
AutoscaleSettings
| Name | Description | Value |
|---|---|---|
| maxThroughput | Represents maximum throughput, the resource can scale up to. | int |
Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties
| Name | Description | Value |
|---|
CreateUpdateOptionsOrSqlDatabaseGetPropertiesOptions
| Name | Description | Value |
|---|---|---|
| autoscaleSettings | Specifies the Autoscale settings. | AutoscaleSettings |
| throughput | Request Units per second. For example, "throughput": 10000. | int |
ManagedServiceIdentity
| Name | Description | Value |
|---|---|---|
| type | The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service. | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' |
| userAssignedIdentities | The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Name | Description | Value |
|---|
ResourceRestoreParameters
| Name | Description | Value |
|---|---|---|
| restoreSource | The id of the restorable database account from which the restore has to be initiated. For example: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} | string |
| restoreTimestampInUtc | Time to which the account has to be restored (ISO-8601 format). | string |
SqlDatabaseCreateUpdatePropertiesOrSqlDatabaseGetProperties
| Name | Description | Value |
|---|---|---|
| options | A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request. | CreateUpdateOptionsOrSqlDatabaseGetPropertiesOptions |
| resource | The standard JSON format of a SQL database | SqlDatabaseResourceOrSqlDatabaseGetPropertiesResource (required) |
SqlDatabaseResourceOrSqlDatabaseGetPropertiesResource
| Name | Description | Value |
|---|---|---|
| createMode | Enum to indicate the mode of resource creation. | 'Default' 'PointInTimeRestore' 'Restore' |
| id | Name of the Cosmos DB SQL database | string (required) |
| restoreParameters | Parameters to indicate the information about the restore | ResourceRestoreParameters |
Tags
| Name | Description | Value |
|---|
Usage Examples
Bicep Samples
A basic example of deploying SQL Database within a Cosmos DB Account.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource databaseAccount 'Microsoft.DocumentDB/databaseAccounts@2021-10-15' = {
name: resourceName
location: location
kind: 'GlobalDocumentDB'
properties: {
capabilities: []
consistencyPolicy: {
defaultConsistencyLevel: 'BoundedStaleness'
maxIntervalInSeconds: 10
maxStalenessPrefix: 200
}
databaseAccountOfferType: 'Standard'
defaultIdentity: 'FirstPartyIdentity'
disableKeyBasedMetadataWriteAccess: false
disableLocalAuth: false
enableAnalyticalStorage: false
enableAutomaticFailover: false
enableFreeTier: false
enableMultipleWriteLocations: false
ipRules: []
isVirtualNetworkFilterEnabled: false
locations: [
{
failoverPriority: 0
isZoneRedundant: false
locationName: 'West Europe'
}
]
networkAclBypass: 'None'
networkAclBypassResourceIds: []
publicNetworkAccess: 'Enabled'
virtualNetworkRules: []
}
}
resource sqlDatabase 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2021-10-15' = {
parent: databaseAccount
name: resourceName
properties: {
options: {
throughput: 400
}
resource: {
id: 'acctest0001'
}
}
}
Azure Quickstart Samples
The following Azure Quickstart templates contain Bicep samples for deploying this resource type.
| Bicep File | Description |
|---|---|
| Azure Cosmos DB account SQL API with analytical store | This template creates an Azure Cosmos account for Core (SQL) API with a database and container configured with analytical store. |
| Create a free-tier Azure Cosmos DB account | This template creates a free-tier Azure Cosmos DB account for SQL API with a database with shared throughput and container. |
| Create an Azure Cosmos DB account for Core (SQL) API | This template creates an Azure Cosmos account for Core (SQL) API with a database and container with throughput with multiple other options. |
| Create an Azure Cosmos DB account SQL API with autoscale | This template creates an Azure Cosmos account for Core (SQL) API with a database and container with autoscale throughput with multiple other options. |
| Create Azure Cosmos DB Core (SQL) API stored procedures | This template creates an Azure Cosmos DB account for Core (SQL) API and a container with a stored procedure, trigger and user defined function. |
| Creates a Dapr microservices app using Container Apps | Create a Dapr microservices app using Container Apps. |
| Creates a Dapr pub-sub servicebus app using Container Apps | Create a Dapr pub-sub servicebus app using Container Apps. |
| Deploy Azure Data Explorer DB with Cosmos DB connection | Deploy Azure Data Explorer DB with Cosmos DB connection. |
ARM template resource definition
The databaseAccounts/sqlDatabases 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.DocumentDB/databaseAccounts/sqlDatabases resource, add the following JSON to your template.
{
"type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases",
"apiVersion": "2023-03-15-preview",
"name": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"location": "string",
"properties": {
"options": {
"autoscaleSettings": {
"maxThroughput": "int"
},
"throughput": "int"
},
"resource": {
"createMode": "string",
"id": "string",
"restoreParameters": {
"restoreSource": "string",
"restoreTimestampInUtc": "string"
}
}
},
"tags": {
"{customized property}": "string"
}
}
Property Values
Microsoft.DocumentDB/databaseAccounts/sqlDatabases
| Name | Description | Value |
|---|---|---|
| apiVersion | The api version | '2023-03-15-preview' |
| identity | Identity for the resource. | ManagedServiceIdentity |
| location | The location of the resource group to which the resource belongs. | string |
| name | The resource name | string (required) |
| properties | Properties to create and update Azure Cosmos DB SQL database. | SqlDatabaseCreateUpdatePropertiesOrSqlDatabaseGetProperties (required) |
| tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
| type | The resource type | 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases' |
AutoscaleSettings
| Name | Description | Value |
|---|---|---|
| maxThroughput | Represents maximum throughput, the resource can scale up to. | int |
Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties
| Name | Description | Value |
|---|
CreateUpdateOptionsOrSqlDatabaseGetPropertiesOptions
| Name | Description | Value |
|---|---|---|
| autoscaleSettings | Specifies the Autoscale settings. | AutoscaleSettings |
| throughput | Request Units per second. For example, "throughput": 10000. | int |
ManagedServiceIdentity
| Name | Description | Value |
|---|---|---|
| type | The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service. | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' |
| userAssignedIdentities | The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Name | Description | Value |
|---|
ResourceRestoreParameters
| Name | Description | Value |
|---|---|---|
| restoreSource | The id of the restorable database account from which the restore has to be initiated. For example: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} | string |
| restoreTimestampInUtc | Time to which the account has to be restored (ISO-8601 format). | string |
SqlDatabaseCreateUpdatePropertiesOrSqlDatabaseGetProperties
| Name | Description | Value |
|---|---|---|
| options | A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request. | CreateUpdateOptionsOrSqlDatabaseGetPropertiesOptions |
| resource | The standard JSON format of a SQL database | SqlDatabaseResourceOrSqlDatabaseGetPropertiesResource (required) |
SqlDatabaseResourceOrSqlDatabaseGetPropertiesResource
| Name | Description | Value |
|---|---|---|
| createMode | Enum to indicate the mode of resource creation. | 'Default' 'PointInTimeRestore' 'Restore' |
| id | Name of the Cosmos DB SQL database | string (required) |
| restoreParameters | Parameters to indicate the information about the restore | ResourceRestoreParameters |
Tags
| Name | Description | Value |
|---|
Usage Examples
Azure Quickstart Templates
The following Azure Quickstart templates deploy this resource type.
| Template | Description |
|---|---|
| Azure Cosmos DB account SQL API with analytical store |
This template creates an Azure Cosmos account for Core (SQL) API with a database and container configured with analytical store. |
| Create a free-tier Azure Cosmos DB account |
This template creates a free-tier Azure Cosmos DB account for SQL API with a database with shared throughput and container. |
| Create an Azure Cosmos DB account for Core (SQL) API |
This template creates an Azure Cosmos account for Core (SQL) API with a database and container with throughput with multiple other options. |
| Create an Azure Cosmos DB account SQL API with autoscale |
This template creates an Azure Cosmos account for Core (SQL) API with a database and container with autoscale throughput with multiple other options. |
| Create Azure Cosmos DB Core (SQL) API stored procedures |
This template creates an Azure Cosmos DB account for Core (SQL) API and a container with a stored procedure, trigger and user defined function. |
| Creates a Dapr microservices app using Container Apps |
Create a Dapr microservices app using Container Apps. |
| Creates a Dapr pub-sub servicebus app using Container Apps |
Create a Dapr pub-sub servicebus app using Container Apps. |
| Deploy Azure Data Explorer DB with Cosmos DB connection |
Deploy Azure Data Explorer DB with Cosmos DB connection. |
Terraform (AzAPI provider) resource definition
The databaseAccounts/sqlDatabases 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.DocumentDB/databaseAccounts/sqlDatabases resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2023-03-15-preview"
name = "string"
parent_id = "string"
identity {
type = "string"
identity_ids = [
"string"
]
}
location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
options = {
autoscaleSettings = {
maxThroughput = int
}
throughput = int
}
resource = {
createMode = "string"
id = "string"
restoreParameters = {
restoreSource = "string"
restoreTimestampInUtc = "string"
}
}
}
}
}
Property Values
Microsoft.DocumentDB/databaseAccounts/sqlDatabases
| Name | Description | Value |
|---|---|---|
| identity | Identity for the resource. | ManagedServiceIdentity |
| location | The location of the resource group to which the resource belongs. | string |
| 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: databaseAccounts |
| properties | Properties to create and update Azure Cosmos DB SQL database. | SqlDatabaseCreateUpdatePropertiesOrSqlDatabaseGetProperties (required) |
| tags | Resource tags | Dictionary of tag names and values. |
| type | The resource type | "Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2023-03-15-preview" |
AutoscaleSettings
| Name | Description | Value |
|---|---|---|
| maxThroughput | Represents maximum throughput, the resource can scale up to. | int |
Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties
| Name | Description | Value |
|---|
CreateUpdateOptionsOrSqlDatabaseGetPropertiesOptions
| Name | Description | Value |
|---|---|---|
| autoscaleSettings | Specifies the Autoscale settings. | AutoscaleSettings |
| throughput | Request Units per second. For example, "throughput": 10000. | int |
ManagedServiceIdentity
| Name | Description | Value |
|---|---|---|
| type | The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service. | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' |
| userAssignedIdentities | The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | ManagedServiceIdentityUserAssignedIdentities |
ManagedServiceIdentityUserAssignedIdentities
| Name | Description | Value |
|---|
ResourceRestoreParameters
| Name | Description | Value |
|---|---|---|
| restoreSource | The id of the restorable database account from which the restore has to be initiated. For example: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} | string |
| restoreTimestampInUtc | Time to which the account has to be restored (ISO-8601 format). | string |
SqlDatabaseCreateUpdatePropertiesOrSqlDatabaseGetProperties
| Name | Description | Value |
|---|---|---|
| options | A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request. | CreateUpdateOptionsOrSqlDatabaseGetPropertiesOptions |
| resource | The standard JSON format of a SQL database | SqlDatabaseResourceOrSqlDatabaseGetPropertiesResource (required) |
SqlDatabaseResourceOrSqlDatabaseGetPropertiesResource
| Name | Description | Value |
|---|---|---|
| createMode | Enum to indicate the mode of resource creation. | 'Default' 'PointInTimeRestore' 'Restore' |
| id | Name of the Cosmos DB SQL database | string (required) |
| restoreParameters | Parameters to indicate the information about the restore | ResourceRestoreParameters |
Tags
| Name | Description | Value |
|---|
Usage Examples
Terraform Samples
A basic example of deploying SQL Database within a Cosmos DB Account.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "databaseAccount" {
type = "Microsoft.DocumentDB/databaseAccounts@2021-10-15"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
kind = "GlobalDocumentDB"
properties = {
capabilities = [
]
consistencyPolicy = {
defaultConsistencyLevel = "BoundedStaleness"
maxIntervalInSeconds = 10
maxStalenessPrefix = 200
}
databaseAccountOfferType = "Standard"
defaultIdentity = "FirstPartyIdentity"
disableKeyBasedMetadataWriteAccess = false
disableLocalAuth = false
enableAnalyticalStorage = false
enableAutomaticFailover = false
enableFreeTier = false
enableMultipleWriteLocations = false
ipRules = [
]
isVirtualNetworkFilterEnabled = false
locations = [
{
failoverPriority = 0
isZoneRedundant = false
locationName = "West Europe"
},
]
networkAclBypass = "None"
networkAclBypassResourceIds = [
]
publicNetworkAccess = "Enabled"
virtualNetworkRules = [
]
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "sqlDatabase" {
type = "Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2021-10-15"
parent_id = azapi_resource.databaseAccount.id
name = var.resource_name
body = {
properties = {
options = {
throughput = 400
}
resource = {
id = var.resource_name
}
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}