Microsoft.DocumentDB databaseAccounts/sqlDatabases/containers 2024-12-01-preview
- Latest
- 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/containers 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/containers resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers@2024-12-01-preview' = {
parent: resourceSymbolicName
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
location: 'string'
name: 'string'
properties: {
options: {
autoscaleSettings: {
maxThroughput: int
}
throughput: int
}
resource: {
analyticalStorageTtl: int
clientEncryptionPolicy: {
includedPaths: [
{
clientEncryptionKeyId: 'string'
encryptionAlgorithm: 'string'
encryptionType: 'string'
path: 'string'
}
]
policyFormatVersion: int
}
computedProperties: [
{
name: 'string'
query: 'string'
}
]
conflictResolutionPolicy: {
conflictResolutionPath: 'string'
conflictResolutionProcedure: 'string'
mode: 'string'
}
createMode: 'string'
defaultTtl: int
id: 'string'
indexingPolicy: {
automatic: bool
compositeIndexes: [
[
{
order: 'string'
path: 'string'
}
]
]
excludedPaths: [
{
path: 'string'
}
]
includedPaths: [
{
indexes: [
{
dataType: 'string'
kind: 'string'
precision: int
}
]
path: 'string'
}
]
indexingMode: 'string'
spatialIndexes: [
{
path: 'string'
types: [
'string'
]
}
]
vectorIndexes: [
{
path: 'string'
type: 'string'
}
]
}
materializedViewDefinition: {
definition: 'string'
sourceCollectionId: 'string'
}
partitionKey: {
kind: 'string'
paths: [
'string'
]
version: int
}
restoreParameters: {
restoreSource: 'string'
restoreTimestampInUtc: 'string'
restoreWithTtlDisabled: bool
}
uniqueKeyPolicy: {
uniqueKeys: [
{
paths: [
'string'
]
}
]
}
vectorEmbeddingPolicy: {
vectorEmbeddings: [
{
dataType: 'string'
dimensions: int
distanceFunction: 'string'
path: 'string'
}
]
}
}
}
tags: {
{customized property}: 'string'
}
}
Property values
AutoscaleSettings
Name | Description | Value |
---|---|---|
maxThroughput | Represents maximum throughput, the resource can scale up to. | int |
ClientEncryptionIncludedPath
Name | Description | Value |
---|---|---|
clientEncryptionKeyId | The identifier of the Client Encryption Key to be used to encrypt the path. | string (required) |
encryptionAlgorithm | The encryption algorithm which will be used. Eg - AEAD_AES_256_CBC_HMAC_SHA256. | string (required) |
encryptionType | The type of encryption to be performed. Eg - Deterministic, Randomized. | string (required) |
path | Path that needs to be encrypted. | string (required) |
ClientEncryptionPolicy
Name | Description | Value |
---|---|---|
includedPaths | Paths of the item that need encryption along with path-specific settings. | ClientEncryptionIncludedPath[] (required) |
policyFormatVersion | Version of the client encryption policy definition. Supported versions are 1 and 2. Version 2 supports id and partition key path encryption. | int Constraints: Min value = 1 Max value = 2 (required) |
Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties
Name | Description | Value |
---|
CompositePath
Name | Description | Value |
---|---|---|
order | Sort order for composite paths. | 'ascending' 'descending' |
path | The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*) | string |
ComputedProperty
Name | Description | Value |
---|---|---|
name | The name of a computed property, for example - "cp_lowerName" | string |
query | The query that evaluates the value for computed property, for example - "SELECT VALUE LOWER(c.name) FROM c" | string |
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' |
ContainerPartitionKey
Name | Description | Value |
---|---|---|
kind | Indicates the kind of algorithm used for partitioning. For MultiHash, multiple partition keys (upto three maximum) are supported for container create | 'Hash' 'MultiHash' 'Range' |
paths | List of paths using which data within the container can be partitioned | string[] |
version | Indicates the version of the partition key definition | int Constraints: Min value = 1 Max value = 2 |
CreateUpdateOptionsOrSqlContainerGetPropertiesOptions
Name | Description | Value |
---|---|---|
autoscaleSettings | Specifies the Autoscale settings. Note: Either throughput or autoscaleSettings is required, but not both. | AutoscaleSettings |
throughput | Request Units per second. For example, "throughput": 10000. | int |
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 |
IndexingPolicy
Name | Description | Value |
---|---|---|
automatic | Indicates if the indexing policy is automatic | bool |
compositeIndexes | List of composite path list | CompositePath[][] |
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' |
spatialIndexes | List of spatial specifics | SpatialSpec[] |
vectorIndexes | List of paths to include in the vector indexing | VectorIndex[] |
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 |
---|
MaterializedViewDefinition
Name | Description | Value |
---|---|---|
definition | The definition should be an SQL query which would be used to fetch data from the source container to populate into the Materialized View container. | string (required) |
sourceCollectionId | The name of the source container on which the Materialized View will be created. | string (required) |
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers
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/sqlDatabases |
properties | Properties to create and update Azure Cosmos DB container. | SqlContainerCreateUpdatePropertiesOrSqlContainerGetProperties (required) |
tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
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 |
restoreWithTtlDisabled | Specifies whether the restored account will have Time-To-Live disabled upon the successful restore. | bool |
SpatialSpec
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 |
types | List of path's spatial type | String array containing any of: 'LineString' 'MultiPolygon' 'Point' 'Polygon' |
SqlContainerCreateUpdatePropertiesOrSqlContainerGetProperties
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. | CreateUpdateOptionsOrSqlContainerGetPropertiesOptions |
resource | The standard JSON format of a container | SqlContainerResourceOrSqlContainerGetPropertiesResource (required) |
SqlContainerResourceOrSqlContainerGetPropertiesResource
Name | Description | Value |
---|---|---|
analyticalStorageTtl | Analytical TTL. | int |
clientEncryptionPolicy | The client encryption policy for the container. | ClientEncryptionPolicy |
computedProperties | List of computed properties | ComputedProperty[] |
conflictResolutionPolicy | The conflict resolution policy for the container. | ConflictResolutionPolicy |
createMode | Enum to indicate the mode of resource creation. | 'Default' 'Restore' |
defaultTtl | Default time to live | int |
id | Name of the Cosmos DB SQL container | string (required) |
indexingPolicy | The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container | IndexingPolicy |
materializedViewDefinition | The configuration for defining Materialized Views. This must be specified only for creating a Materialized View container. | MaterializedViewDefinition |
partitionKey | The configuration of the partition key to be used for partitioning data into multiple partitions | ContainerPartitionKey |
restoreParameters | Parameters to indicate the information about the restore | ResourceRestoreParameters |
uniqueKeyPolicy | The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service. | UniqueKeyPolicy |
vectorEmbeddingPolicy | The vector embedding policy for the container. | VectorEmbeddingPolicy |
Tags
Name | Description | Value |
---|
UniqueKey
Name | Description | Value |
---|---|---|
paths | List of paths must be unique for each document in the Azure Cosmos DB service | 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[] |
VectorEmbedding
Name | Description | Value |
---|---|---|
dataType | Indicates the data type of vector. | 'float32' 'int8' 'uint8' (required) |
dimensions | The number of dimensions in the vector. | int (required) |
distanceFunction | The distance function to use for distance calculation in between vectors. | 'cosine' 'dotproduct' 'euclidean' (required) |
path | The path to the vector field in the document. | string (required) |
VectorEmbeddingPolicy
Name | Description | Value |
---|---|---|
vectorEmbeddings | List of vector embeddings | VectorEmbedding[] |
VectorIndex
Name | Description | Value |
---|---|---|
path | The path to the vector field in the document. | string (required) |
type | The index type of the vector. Currently, flat, diskANN, and quantizedFlat are supported. | 'diskANN' 'flat' 'quantizedFlat' (required) |
Quickstart samples
The following quickstart samples deploy 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/containers 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/containers resource, add the following JSON to your template.
{
"type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers",
"apiVersion": "2024-12-01-preview",
"name": "string",
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {
}
}
},
"location": "string",
"properties": {
"options": {
"autoscaleSettings": {
"maxThroughput": "int"
},
"throughput": "int"
},
"resource": {
"analyticalStorageTtl": "int",
"clientEncryptionPolicy": {
"includedPaths": [
{
"clientEncryptionKeyId": "string",
"encryptionAlgorithm": "string",
"encryptionType": "string",
"path": "string"
}
],
"policyFormatVersion": "int"
},
"computedProperties": [
{
"name": "string",
"query": "string"
}
],
"conflictResolutionPolicy": {
"conflictResolutionPath": "string",
"conflictResolutionProcedure": "string",
"mode": "string"
},
"createMode": "string",
"defaultTtl": "int",
"id": "string",
"indexingPolicy": {
"automatic": "bool",
"compositeIndexes": [
[
{
"order": "string",
"path": "string"
}
]
],
"excludedPaths": [
{
"path": "string"
}
],
"includedPaths": [
{
"indexes": [
{
"dataType": "string",
"kind": "string",
"precision": "int"
}
],
"path": "string"
}
],
"indexingMode": "string",
"spatialIndexes": [
{
"path": "string",
"types": [ "string" ]
}
],
"vectorIndexes": [
{
"path": "string",
"type": "string"
}
]
},
"materializedViewDefinition": {
"definition": "string",
"sourceCollectionId": "string"
},
"partitionKey": {
"kind": "string",
"paths": [ "string" ],
"version": "int"
},
"restoreParameters": {
"restoreSource": "string",
"restoreTimestampInUtc": "string",
"restoreWithTtlDisabled": "bool"
},
"uniqueKeyPolicy": {
"uniqueKeys": [
{
"paths": [ "string" ]
}
]
},
"vectorEmbeddingPolicy": {
"vectorEmbeddings": [
{
"dataType": "string",
"dimensions": "int",
"distanceFunction": "string",
"path": "string"
}
]
}
}
},
"tags": {
"{customized property}": "string"
}
}
Property values
AutoscaleSettings
Name | Description | Value |
---|---|---|
maxThroughput | Represents maximum throughput, the resource can scale up to. | int |
ClientEncryptionIncludedPath
Name | Description | Value |
---|---|---|
clientEncryptionKeyId | The identifier of the Client Encryption Key to be used to encrypt the path. | string (required) |
encryptionAlgorithm | The encryption algorithm which will be used. Eg - AEAD_AES_256_CBC_HMAC_SHA256. | string (required) |
encryptionType | The type of encryption to be performed. Eg - Deterministic, Randomized. | string (required) |
path | Path that needs to be encrypted. | string (required) |
ClientEncryptionPolicy
Name | Description | Value |
---|---|---|
includedPaths | Paths of the item that need encryption along with path-specific settings. | ClientEncryptionIncludedPath[] (required) |
policyFormatVersion | Version of the client encryption policy definition. Supported versions are 1 and 2. Version 2 supports id and partition key path encryption. | int Constraints: Min value = 1 Max value = 2 (required) |
Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties
Name | Description | Value |
---|
CompositePath
Name | Description | Value |
---|---|---|
order | Sort order for composite paths. | 'ascending' 'descending' |
path | The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*) | string |
ComputedProperty
Name | Description | Value |
---|---|---|
name | The name of a computed property, for example - "cp_lowerName" | string |
query | The query that evaluates the value for computed property, for example - "SELECT VALUE LOWER(c.name) FROM c" | string |
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' |
ContainerPartitionKey
Name | Description | Value |
---|---|---|
kind | Indicates the kind of algorithm used for partitioning. For MultiHash, multiple partition keys (upto three maximum) are supported for container create | 'Hash' 'MultiHash' 'Range' |
paths | List of paths using which data within the container can be partitioned | string[] |
version | Indicates the version of the partition key definition | int Constraints: Min value = 1 Max value = 2 |
CreateUpdateOptionsOrSqlContainerGetPropertiesOptions
Name | Description | Value |
---|---|---|
autoscaleSettings | Specifies the Autoscale settings. Note: Either throughput or autoscaleSettings is required, but not both. | AutoscaleSettings |
throughput | Request Units per second. For example, "throughput": 10000. | int |
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 |
IndexingPolicy
Name | Description | Value |
---|---|---|
automatic | Indicates if the indexing policy is automatic | bool |
compositeIndexes | List of composite path list | CompositePath[][] |
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' |
spatialIndexes | List of spatial specifics | SpatialSpec[] |
vectorIndexes | List of paths to include in the vector indexing | VectorIndex[] |
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 |
---|
MaterializedViewDefinition
Name | Description | Value |
---|---|---|
definition | The definition should be an SQL query which would be used to fetch data from the source container to populate into the Materialized View container. | string (required) |
sourceCollectionId | The name of the source container on which the Materialized View will be created. | string (required) |
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2024-12-01-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 container. | SqlContainerCreateUpdatePropertiesOrSqlContainerGetProperties (required) |
tags | Resource tags | Dictionary of tag names and values. See Tags in templates |
type | The resource type | 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers' |
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 |
restoreWithTtlDisabled | Specifies whether the restored account will have Time-To-Live disabled upon the successful restore. | bool |
SpatialSpec
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 |
types | List of path's spatial type | String array containing any of: 'LineString' 'MultiPolygon' 'Point' 'Polygon' |
SqlContainerCreateUpdatePropertiesOrSqlContainerGetProperties
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. | CreateUpdateOptionsOrSqlContainerGetPropertiesOptions |
resource | The standard JSON format of a container | SqlContainerResourceOrSqlContainerGetPropertiesResource (required) |
SqlContainerResourceOrSqlContainerGetPropertiesResource
Name | Description | Value |
---|---|---|
analyticalStorageTtl | Analytical TTL. | int |
clientEncryptionPolicy | The client encryption policy for the container. | ClientEncryptionPolicy |
computedProperties | List of computed properties | ComputedProperty[] |
conflictResolutionPolicy | The conflict resolution policy for the container. | ConflictResolutionPolicy |
createMode | Enum to indicate the mode of resource creation. | 'Default' 'Restore' |
defaultTtl | Default time to live | int |
id | Name of the Cosmos DB SQL container | string (required) |
indexingPolicy | The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container | IndexingPolicy |
materializedViewDefinition | The configuration for defining Materialized Views. This must be specified only for creating a Materialized View container. | MaterializedViewDefinition |
partitionKey | The configuration of the partition key to be used for partitioning data into multiple partitions | ContainerPartitionKey |
restoreParameters | Parameters to indicate the information about the restore | ResourceRestoreParameters |
uniqueKeyPolicy | The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service. | UniqueKeyPolicy |
vectorEmbeddingPolicy | The vector embedding policy for the container. | VectorEmbeddingPolicy |
Tags
Name | Description | Value |
---|
UniqueKey
Name | Description | Value |
---|---|---|
paths | List of paths must be unique for each document in the Azure Cosmos DB service | 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[] |
VectorEmbedding
Name | Description | Value |
---|---|---|
dataType | Indicates the data type of vector. | 'float32' 'int8' 'uint8' (required) |
dimensions | The number of dimensions in the vector. | int (required) |
distanceFunction | The distance function to use for distance calculation in between vectors. | 'cosine' 'dotproduct' 'euclidean' (required) |
path | The path to the vector field in the document. | string (required) |
VectorEmbeddingPolicy
Name | Description | Value |
---|---|---|
vectorEmbeddings | List of vector embeddings | VectorEmbedding[] |
VectorIndex
Name | Description | Value |
---|---|---|
path | The path to the vector field in the document. | string (required) |
type | The index type of the vector. Currently, flat, diskANN, and quantizedFlat are supported. | 'diskANN' 'flat' 'quantizedFlat' (required) |
Quickstart templates
The following 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/containers 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/containers resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers@2024-12-01-preview"
name = "string"
identity = {
type = "string"
userAssignedIdentities = {
{customized property} = {
}
}
}
location = "string"
tags = {
{customized property} = "string"
}
body = jsonencode({
properties = {
options = {
autoscaleSettings = {
maxThroughput = int
}
throughput = int
}
resource = {
analyticalStorageTtl = int
clientEncryptionPolicy = {
includedPaths = [
{
clientEncryptionKeyId = "string"
encryptionAlgorithm = "string"
encryptionType = "string"
path = "string"
}
]
policyFormatVersion = int
}
computedProperties = [
{
name = "string"
query = "string"
}
]
conflictResolutionPolicy = {
conflictResolutionPath = "string"
conflictResolutionProcedure = "string"
mode = "string"
}
createMode = "string"
defaultTtl = int
id = "string"
indexingPolicy = {
automatic = bool
compositeIndexes = [
[
{
order = "string"
path = "string"
}
]
]
excludedPaths = [
{
path = "string"
}
]
includedPaths = [
{
indexes = [
{
dataType = "string"
kind = "string"
precision = int
}
]
path = "string"
}
]
indexingMode = "string"
spatialIndexes = [
{
path = "string"
types = [
"string"
]
}
]
vectorIndexes = [
{
path = "string"
type = "string"
}
]
}
materializedViewDefinition = {
definition = "string"
sourceCollectionId = "string"
}
partitionKey = {
kind = "string"
paths = [
"string"
]
version = int
}
restoreParameters = {
restoreSource = "string"
restoreTimestampInUtc = "string"
restoreWithTtlDisabled = bool
}
uniqueKeyPolicy = {
uniqueKeys = [
{
paths = [
"string"
]
}
]
}
vectorEmbeddingPolicy = {
vectorEmbeddings = [
{
dataType = "string"
dimensions = int
distanceFunction = "string"
path = "string"
}
]
}
}
}
})
}
Property values
AutoscaleSettings
Name | Description | Value |
---|---|---|
maxThroughput | Represents maximum throughput, the resource can scale up to. | int |
ClientEncryptionIncludedPath
Name | Description | Value |
---|---|---|
clientEncryptionKeyId | The identifier of the Client Encryption Key to be used to encrypt the path. | string (required) |
encryptionAlgorithm | The encryption algorithm which will be used. Eg - AEAD_AES_256_CBC_HMAC_SHA256. | string (required) |
encryptionType | The type of encryption to be performed. Eg - Deterministic, Randomized. | string (required) |
path | Path that needs to be encrypted. | string (required) |
ClientEncryptionPolicy
Name | Description | Value |
---|---|---|
includedPaths | Paths of the item that need encryption along with path-specific settings. | ClientEncryptionIncludedPath[] (required) |
policyFormatVersion | Version of the client encryption policy definition. Supported versions are 1 and 2. Version 2 supports id and partition key path encryption. | int Constraints: Min value = 1 Max value = 2 (required) |
Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties
Name | Description | Value |
---|
CompositePath
Name | Description | Value |
---|---|---|
order | Sort order for composite paths. | 'ascending' 'descending' |
path | The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*) | string |
ComputedProperty
Name | Description | Value |
---|---|---|
name | The name of a computed property, for example - "cp_lowerName" | string |
query | The query that evaluates the value for computed property, for example - "SELECT VALUE LOWER(c.name) FROM c" | string |
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' |
ContainerPartitionKey
Name | Description | Value |
---|---|---|
kind | Indicates the kind of algorithm used for partitioning. For MultiHash, multiple partition keys (upto three maximum) are supported for container create | 'Hash' 'MultiHash' 'Range' |
paths | List of paths using which data within the container can be partitioned | string[] |
version | Indicates the version of the partition key definition | int Constraints: Min value = 1 Max value = 2 |
CreateUpdateOptionsOrSqlContainerGetPropertiesOptions
Name | Description | Value |
---|---|---|
autoscaleSettings | Specifies the Autoscale settings. Note: Either throughput or autoscaleSettings is required, but not both. | AutoscaleSettings |
throughput | Request Units per second. For example, "throughput": 10000. | int |
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 |
IndexingPolicy
Name | Description | Value |
---|---|---|
automatic | Indicates if the indexing policy is automatic | bool |
compositeIndexes | List of composite path list | CompositePath[][] |
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' |
spatialIndexes | List of spatial specifics | SpatialSpec[] |
vectorIndexes | List of paths to include in the vector indexing | VectorIndex[] |
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 |
---|
MaterializedViewDefinition
Name | Description | Value |
---|---|---|
definition | The definition should be an SQL query which would be used to fetch data from the source container to populate into the Materialized View container. | string (required) |
sourceCollectionId | The name of the source container on which the Materialized View will be created. | string (required) |
Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers
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/sqlDatabases |
properties | Properties to create and update Azure Cosmos DB container. | SqlContainerCreateUpdatePropertiesOrSqlContainerGetProperties (required) |
tags | Resource tags | Dictionary of tag names and values. |
type | The resource type | "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers@2024-12-01-preview" |
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 |
restoreWithTtlDisabled | Specifies whether the restored account will have Time-To-Live disabled upon the successful restore. | bool |
SpatialSpec
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 |
types | List of path's spatial type | String array containing any of: 'LineString' 'MultiPolygon' 'Point' 'Polygon' |
SqlContainerCreateUpdatePropertiesOrSqlContainerGetProperties
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. | CreateUpdateOptionsOrSqlContainerGetPropertiesOptions |
resource | The standard JSON format of a container | SqlContainerResourceOrSqlContainerGetPropertiesResource (required) |
SqlContainerResourceOrSqlContainerGetPropertiesResource
Name | Description | Value |
---|---|---|
analyticalStorageTtl | Analytical TTL. | int |
clientEncryptionPolicy | The client encryption policy for the container. | ClientEncryptionPolicy |
computedProperties | List of computed properties | ComputedProperty[] |
conflictResolutionPolicy | The conflict resolution policy for the container. | ConflictResolutionPolicy |
createMode | Enum to indicate the mode of resource creation. | 'Default' 'Restore' |
defaultTtl | Default time to live | int |
id | Name of the Cosmos DB SQL container | string (required) |
indexingPolicy | The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the container | IndexingPolicy |
materializedViewDefinition | The configuration for defining Materialized Views. This must be specified only for creating a Materialized View container. | MaterializedViewDefinition |
partitionKey | The configuration of the partition key to be used for partitioning data into multiple partitions | ContainerPartitionKey |
restoreParameters | Parameters to indicate the information about the restore | ResourceRestoreParameters |
uniqueKeyPolicy | The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service. | UniqueKeyPolicy |
vectorEmbeddingPolicy | The vector embedding policy for the container. | VectorEmbeddingPolicy |
Tags
Name | Description | Value |
---|
UniqueKey
Name | Description | Value |
---|---|---|
paths | List of paths must be unique for each document in the Azure Cosmos DB service | 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[] |
VectorEmbedding
Name | Description | Value |
---|---|---|
dataType | Indicates the data type of vector. | 'float32' 'int8' 'uint8' (required) |
dimensions | The number of dimensions in the vector. | int (required) |
distanceFunction | The distance function to use for distance calculation in between vectors. | 'cosine' 'dotproduct' 'euclidean' (required) |
path | The path to the vector field in the document. | string (required) |
VectorEmbeddingPolicy
Name | Description | Value |
---|---|---|
vectorEmbeddings | List of vector embeddings | VectorEmbedding[] |
VectorIndex
Name | Description | Value |
---|---|---|
path | The path to the vector field in the document. | string (required) |
type | The index type of the vector. Currently, flat, diskANN, and quantizedFlat are supported. | 'diskANN' 'flat' 'quantizedFlat' (required) |