Microsoft.DocumentDB databaseAccounts/apis/databases/containers

The databaseAccounts/apis/databases/containers resource type can be deployed to: Resource groups.

To learn about resource group deployments, see Bicep or ARM template.

Template format

To create a Microsoft.DocumentDB/databaseAccounts/apis/databases/containers resource, add the following Bicep or JSON to your template.

resource symbolicname 'Microsoft.DocumentDB/databaseAccounts/apis/databases/containers@2016-03-31' = {
  name: 'string'
  parent: parentSymbolicName
  properties: {
    options: {}
    resource: {
      conflictResolutionPolicy: {
        conflictResolutionPath: 'string'
        conflictResolutionProcedure: 'string'
        mode: 'string'
      }
      defaultTtl: int
      id: 'string'
      indexingPolicy: {
        automatic: bool
        excludedPaths: [
          {
            path: 'string'
          }
        ]
        includedPaths: [
          {
            indexes: [
              {
                dataType: 'string'
                kind: 'string'
                precision: int
              }
            ]
            path: 'string'
          }
        ]
        indexingMode: 'string'
      }
      partitionKey: {
        kind: 'string'
        paths: [ 'string' ]
      }
      uniqueKeyPolicy: {
        uniqueKeys: [
          {
            paths: [ 'string' ]
          }
        ]
      }
    }
  }
}

Property values

databaseAccounts/apis/databases/containers

Name Description Value
type The resource type

For Bicep, set this value in the resource declaration.
'Microsoft.DocumentDB/databaseAccounts/apis/databases/containers'
apiVersion The resource api version

For Bicep, set this value in the resource declaration.
'2016-03-31'
name The resource name

See how to set names and types for child resources in Bicep or JSON ARM templates.
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.
parentSymbolicName
properties Properties to create and update Azure Cosmos DB container. SqlContainerCreateUpdateProperties (required)

SqlContainerCreateUpdateProperties

Name Description Value
options CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are "If-Match", "If-None-Match", "Session-Token" and "Throughput" object (required)
resource Cosmos DB SQL container resource object SqlContainerResource (required)

SqlContainerResource

Name Description Value
conflictResolutionPolicy The conflict resolution policy for the container. ConflictResolutionPolicy
defaultTtl Default time to live int
id Name of the Cosmos DB SQL container string (required)
indexingPolicy Cosmos DB indexing policy IndexingPolicy
partitionKey The configuration of the partition key to be used for partitioning data into multiple partitions ContainerPartitionKey
uniqueKeyPolicy The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service. UniqueKeyPolicy

ConflictResolutionPolicy

Name Description Value
conflictResolutionPath The conflict resolution path in the case of LastWriterWins mode. string
conflictResolutionProcedure The procedure to resolve conflicts in the case of custom mode. string
mode Indicates the conflict resolution mode. 'Custom'
'LastWriterWins'

IndexingPolicy

Name Description Value
automatic Indicates if the indexing policy is automatic bool
excludedPaths List of paths to exclude from indexing ExcludedPath[]
includedPaths List of paths to include in the indexing IncludedPath[]
indexingMode Indicates the indexing mode. 'Consistent'
'Lazy'
'None'

ExcludedPath

Name Description Value
path The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*) string

IncludedPath

Name Description Value
indexes List of indexes for this path Indexes[]
path The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*) string

Indexes

Name Description Value
dataType The datatype for which the indexing behavior is applied to. 'LineString'
'MultiPolygon'
'Number'
'Point'
'Polygon'
'String'
kind Indicates the type of index. 'Hash'
'Range'
'Spatial'
precision The precision of the index. -1 is maximum precision. int

ContainerPartitionKey

Name Description Value
kind Indicates the kind of algorithm used for partitioning 'Hash'
'Range'
paths List of paths using which data within the container can be partitioned string[]

UniqueKeyPolicy

Name Description Value
uniqueKeys List of unique keys on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service. UniqueKey[]

UniqueKey

Name Description Value
paths List of paths must be unique for each document in the Azure Cosmos DB service string[]

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create Azure Cosmos with SQL API and multiple containers

Deploy to Azure
The template creates a Cosmos container with a SQL API and allows adding mulitple containers.