Microsoft.DocumentDB databaseAccounts/mongodbDatabases/collections 2019-12-12

Bicep resource definition

The databaseAccounts/mongodbDatabases/collections 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.DocumentDB/databaseAccounts/mongodbDatabases/collections resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections@2019-12-12' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  parent: resourceSymbolicName
  properties: {
    options: {
      throughput: 'string'
      {customized property}: 'string'
    }
    resource: {
      id: 'string'
      indexes: [
        {
          key: {
            keys: [
              'string'
            ]
          }
          options: {
            expireAfterSeconds: int
            unique: bool
          }
        }
      ]
      shardKey: {
        {customized property}: 'string'
      }
    }
  }
}

Property values

databaseAccounts/mongodbDatabases/collections

Name Description Value
name The resource name

See how to set names and types for child resources in Bicep.
string (required)
location The location of the resource group to which the resource belongs. string
tags Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with "defaultExperience": "Cassandra". Current "defaultExperience" values also include "Table", "Graph", "DocumentDB", and "MongoDB". Dictionary of tag names and values. See Tags in templates
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: mongodbDatabases
properties Properties to create and update Azure Cosmos DB MongoDB collection. MongoDBCollectionCreateUpdatePropertiesOrMongoDBColl... (required)

MongoDBCollectionCreateUpdatePropertiesOrMongoDBColl...

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. CreateUpdateOptions (required)
resource The standard JSON format of a MongoDB collection MongoDBCollectionResourceOrMongoDBCollectionGetPrope... (required)

CreateUpdateOptions

Name Description Value
throughput Request Units per second. For example, "throughput": "10000". string
{customized property} string

MongoDBCollectionResourceOrMongoDBCollectionGetPrope...

Name Description Value
id Name of the Cosmos DB MongoDB collection string (required)
indexes List of index keys MongoIndex[]
shardKey A key-value pair of shard keys to be applied for the request. ShardKeys

MongoIndex

Name Description Value
key Cosmos DB MongoDB collection index keys MongoIndexKeys
options Cosmos DB MongoDB collection index key options MongoIndexOptions

MongoIndexKeys

Name Description Value
keys List of keys for each MongoDB collection in the Azure Cosmos DB service string[]

MongoIndexOptions

Name Description Value
expireAfterSeconds Expire after seconds int
unique Is unique or not bool

ShardKeys

Name Description Value
{customized property} string

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create an Azure Cosmos account for MongoDB API

Deploy to Azure
This template creates an Azure Cosmos DB account for MongoDB API 4.2 in two regions using shared and dedicated throughput with two collections.
Create an Azure Cosmos account for MongoDB API autoscale

Deploy to Azure
This template creates an Azure Cosmos DB account for MongoDB API 4.2 in two regions using both shared and dedicated autoscale throughput.

ARM template resource definition

The databaseAccounts/mongodbDatabases/collections 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.DocumentDB/databaseAccounts/mongodbDatabases/collections resource, add the following JSON to your template.

{
  "type": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections",
  "apiVersion": "2019-12-12",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "properties": {
    "options": {
      "throughput": "string",
      "{customized property}": "string"
    },
    "resource": {
      "id": "string",
      "indexes": [
        {
          "key": {
            "keys": [ "string" ]
          },
          "options": {
            "expireAfterSeconds": "int",
            "unique": "bool"
          }
        }
      ],
      "shardKey": {
        "{customized property}": "string"
      }
    }
  }
}

Property values

databaseAccounts/mongodbDatabases/collections

Name Description Value
type The resource type 'Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections'
apiVersion The resource api version '2019-12-12'
name The resource name

See how to set names and types for child resources in JSON ARM templates.
string (required)
location The location of the resource group to which the resource belongs. string
tags Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with "defaultExperience": "Cassandra". Current "defaultExperience" values also include "Table", "Graph", "DocumentDB", and "MongoDB". Dictionary of tag names and values. See Tags in templates
properties Properties to create and update Azure Cosmos DB MongoDB collection. MongoDBCollectionCreateUpdatePropertiesOrMongoDBColl... (required)

MongoDBCollectionCreateUpdatePropertiesOrMongoDBColl...

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. CreateUpdateOptions (required)
resource The standard JSON format of a MongoDB collection MongoDBCollectionResourceOrMongoDBCollectionGetPrope... (required)

CreateUpdateOptions

Name Description Value
throughput Request Units per second. For example, "throughput": "10000". string
{customized property} string

MongoDBCollectionResourceOrMongoDBCollectionGetPrope...

Name Description Value
id Name of the Cosmos DB MongoDB collection string (required)
indexes List of index keys MongoIndex[]
shardKey A key-value pair of shard keys to be applied for the request. ShardKeys

MongoIndex

Name Description Value
key Cosmos DB MongoDB collection index keys MongoIndexKeys
options Cosmos DB MongoDB collection index key options MongoIndexOptions

MongoIndexKeys

Name Description Value
keys List of keys for each MongoDB collection in the Azure Cosmos DB service string[]

MongoIndexOptions

Name Description Value
expireAfterSeconds Expire after seconds int
unique Is unique or not bool

ShardKeys

Name Description Value
{customized property} string

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create an Azure Cosmos account for MongoDB API

Deploy to Azure
This template creates an Azure Cosmos DB account for MongoDB API 4.2 in two regions using shared and dedicated throughput with two collections.
Create an Azure Cosmos account for MongoDB API autoscale

Deploy to Azure
This template creates an Azure Cosmos DB account for MongoDB API 4.2 in two regions using both shared and dedicated autoscale throughput.

Terraform (AzAPI provider) resource definition

The databaseAccounts/mongodbDatabases/collections 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/mongodbDatabases/collections resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections@2019-12-12"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    properties = {
      options = {
        throughput = "string"
        {customized property} = "string"
      }
      resource = {
        id = "string"
        indexes = [
          {
            key = {
              keys = [
                "string"
              ]
            }
            options = {
              expireAfterSeconds = int
              unique = bool
            }
          }
        ]
        shardKey = {
          {customized property} = "string"
        }
      }
    }
  })
}

Property values

databaseAccounts/mongodbDatabases/collections

Name Description Value
type The resource type "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections@2019-12-12"
name The resource name string (required)
location The location of the resource group to which the resource belongs. string
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: mongodbDatabases
tags Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with "defaultExperience": "Cassandra". Current "defaultExperience" values also include "Table", "Graph", "DocumentDB", and "MongoDB". Dictionary of tag names and values.
properties Properties to create and update Azure Cosmos DB MongoDB collection. MongoDBCollectionCreateUpdatePropertiesOrMongoDBColl... (required)

MongoDBCollectionCreateUpdatePropertiesOrMongoDBColl...

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. CreateUpdateOptions (required)
resource The standard JSON format of a MongoDB collection MongoDBCollectionResourceOrMongoDBCollectionGetPrope... (required)

CreateUpdateOptions

Name Description Value
throughput Request Units per second. For example, "throughput": "10000". string
{customized property} string

MongoDBCollectionResourceOrMongoDBCollectionGetPrope...

Name Description Value
id Name of the Cosmos DB MongoDB collection string (required)
indexes List of index keys MongoIndex[]
shardKey A key-value pair of shard keys to be applied for the request. ShardKeys

MongoIndex

Name Description Value
key Cosmos DB MongoDB collection index keys MongoIndexKeys
options Cosmos DB MongoDB collection index key options MongoIndexOptions

MongoIndexKeys

Name Description Value
keys List of keys for each MongoDB collection in the Azure Cosmos DB service string[]

MongoIndexOptions

Name Description Value
expireAfterSeconds Expire after seconds int
unique Is unique or not bool

ShardKeys

Name Description Value
{customized property} string