Microsoft.DocumentDB databaseAccounts/gremlinDatabases/graphs 2021-04-01-preview

Bicep resource definition

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

resource symbolicname 'Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs@2021-04-01-preview' = {
  parent: resourceSymbolicName
  identity: {
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {}
    }
  }
  location: 'string'
  name: 'string'
  properties: {
    options: {
      autoscaleSettings: {
        maxThroughput: int
      }
      throughput: int
    }
    resource: {
      conflictResolutionPolicy: {
        conflictResolutionPath: 'string'
        conflictResolutionProcedure: 'string'
        mode: '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'
            ]
          }
        ]
      }
      partitionKey: {
        kind: 'string'
        paths: [
          'string'
        ]
        version: int
      }
      uniqueKeyPolicy: {
        uniqueKeys: [
          {
            paths: [
              'string'
            ]
          }
        ]
      }
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

Property values

AutoscaleSettings

Name Description Value
maxThroughput Represents maximum throughput, the resource can scale up to. int

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

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

CreateUpdateOptionsOrGremlinGraphGetPropertiesOptions

Name Description Value
autoscaleSettings Specifies the Autoscale settings. 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

GremlinGraphCreateUpdatePropertiesOrGremlinGraphGetProperties

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. CreateUpdateOptionsOrGremlinGraphGetPropertiesOptions
resource The standard JSON format of a Gremlin graph GremlinGraphResourceOrGremlinGraphGetPropertiesResource (required)

GremlinGraphResourceOrGremlinGraphGetPropertiesResource

Name Description Value
conflictResolutionPolicy The conflict resolution policy for the graph. ConflictResolutionPolicy
defaultTtl Default time to live int
id Name of the Cosmos DB Gremlin graph string (required)
indexingPolicy The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the graph 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

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[]

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

Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs

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/gremlinDatabases
properties Properties to create and update Azure Cosmos DB Gremlin graph. GremlinGraphCreateUpdatePropertiesOrGremlinGraphGetProperties (required)
tags Resource tags Dictionary of tag names and values. See Tags in templates

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'

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[]

Quickstart samples

The following quickstart samples deploy this resource type.

Bicep File Description
Create an Azure Cosmos DB account for Gremlin API This template creates an Azure Cosmos DB account for Gremlin API in two regions with one database and one graph using dedicated throughput.
Create an Azure Cosmos DB account for Gremlin API autoscale This template creates an Azure Cosmos DB account for Gremlin API in two regions with one database and one graph using autoscale throughput.

ARM template resource definition

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

{
  "type": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs",
  "apiVersion": "2021-04-01-preview",
  "name": "string",
  "identity": {
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
      }
    }
  },
  "location": "string",
  "properties": {
    "options": {
      "autoscaleSettings": {
        "maxThroughput": "int"
      },
      "throughput": "int"
    },
    "resource": {
      "conflictResolutionPolicy": {
        "conflictResolutionPath": "string",
        "conflictResolutionProcedure": "string",
        "mode": "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" ]
          }
        ]
      },
      "partitionKey": {
        "kind": "string",
        "paths": [ "string" ],
        "version": "int"
      },
      "uniqueKeyPolicy": {
        "uniqueKeys": [
          {
            "paths": [ "string" ]
          }
        ]
      }
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

Property values

AutoscaleSettings

Name Description Value
maxThroughput Represents maximum throughput, the resource can scale up to. int

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

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

CreateUpdateOptionsOrGremlinGraphGetPropertiesOptions

Name Description Value
autoscaleSettings Specifies the Autoscale settings. 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

GremlinGraphCreateUpdatePropertiesOrGremlinGraphGetProperties

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. CreateUpdateOptionsOrGremlinGraphGetPropertiesOptions
resource The standard JSON format of a Gremlin graph GremlinGraphResourceOrGremlinGraphGetPropertiesResource (required)

GremlinGraphResourceOrGremlinGraphGetPropertiesResource

Name Description Value
conflictResolutionPolicy The conflict resolution policy for the graph. ConflictResolutionPolicy
defaultTtl Default time to live int
id Name of the Cosmos DB Gremlin graph string (required)
indexingPolicy The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the graph 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

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[]

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

Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs

Name Description Value
apiVersion The api version '2021-04-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 Gremlin graph. GremlinGraphCreateUpdatePropertiesOrGremlinGraphGetProperties (required)
tags Resource tags Dictionary of tag names and values. See Tags in templates
type The resource type 'Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs'

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'

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[]

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create an Azure Cosmos DB account for Gremlin API

Deploy to Azure
This template creates an Azure Cosmos DB account for Gremlin API in two regions with one database and one graph using dedicated throughput.
Create an Azure Cosmos DB account for Gremlin API autoscale

Deploy to Azure
This template creates an Azure Cosmos DB account for Gremlin API in two regions with one database and one graph using autoscale throughput.

Terraform (AzAPI provider) resource definition

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs@2021-04-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 = {
        conflictResolutionPolicy = {
          conflictResolutionPath = "string"
          conflictResolutionProcedure = "string"
          mode = "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"
              ]
            }
          ]
        }
        partitionKey = {
          kind = "string"
          paths = [
            "string"
          ]
          version = int
        }
        uniqueKeyPolicy = {
          uniqueKeys = [
            {
              paths = [
                "string"
              ]
            }
          ]
        }
      }
    }
  })
}

Property values

AutoscaleSettings

Name Description Value
maxThroughput Represents maximum throughput, the resource can scale up to. int

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

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

CreateUpdateOptionsOrGremlinGraphGetPropertiesOptions

Name Description Value
autoscaleSettings Specifies the Autoscale settings. 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

GremlinGraphCreateUpdatePropertiesOrGremlinGraphGetProperties

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. CreateUpdateOptionsOrGremlinGraphGetPropertiesOptions
resource The standard JSON format of a Gremlin graph GremlinGraphResourceOrGremlinGraphGetPropertiesResource (required)

GremlinGraphResourceOrGremlinGraphGetPropertiesResource

Name Description Value
conflictResolutionPolicy The conflict resolution policy for the graph. ConflictResolutionPolicy
defaultTtl Default time to live int
id Name of the Cosmos DB Gremlin graph string (required)
indexingPolicy The configuration of the indexing policy. By default, the indexing is automatic for all document paths within the graph 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

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[]

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

Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs

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/gremlinDatabases
properties Properties to create and update Azure Cosmos DB Gremlin graph. GremlinGraphCreateUpdatePropertiesOrGremlinGraphGetProperties (required)
tags Resource tags Dictionary of tag names and values.
type The resource type "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs@2021-04-01-preview"

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'

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[]