Microsoft.DocumentDB databaseAccounts/sqlDatabases/containers/userDefinedFunctions 2021-04-01-preview

Template format

To create a Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/userDefinedFunctions resource, add the following JSON to the resources section of your template.

  "name": "string",
  "type": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/userDefinedFunctions",
  "apiVersion": "2021-04-01-preview",
  "location": "string",
  "tags": {},
  "identity": {
    "type": "string",
    "userAssignedIdentities": {}
  "properties": {
    "resource": {
      "id": "string",
      "body": "string"
    "options": {
      "throughput": "integer",
      "autoscaleSettings": {
        "maxThroughput": "integer"

Property values

The following tables describe the values you need to set in the schema.

Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/userDefinedFunctions object


In Bicep, type and apiVersion are specified in the first line of the resource declaration. Use the format <type>@<apiVersion>. Don't set those properties in the resource body.

Name Type Required Value
name string Yes Cosmos DB userDefinedFunction name.
type enum Yes For JSON -userDefinedFunctions

See Set name and type for child resources.
apiVersion enum Yes For JSON - 2021-04-01-preview
location string No The location of the resource group to which the resource belongs.
tags object No
identity object No ManagedServiceIdentity object
properties object Yes Properties to create and update Azure Cosmos DB userDefinedFunction. - SqlUserDefinedFunctionCreateUpdateProperties object

ManagedServiceIdentity object

Name Type Required Value
type enum No 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. - SystemAssigned, UserAssigned, SystemAssigned,UserAssigned, None
userAssignedIdentities object No 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}'.

SqlUserDefinedFunctionCreateUpdateProperties object

Name Type Required Value
resource object Yes The standard JSON format of a userDefinedFunction - SqlUserDefinedFunctionResource object
options object No A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request. - CreateUpdateOptions object

SqlUserDefinedFunctionResource object

Name Type Required Value
id string Yes Name of the Cosmos DB SQL userDefinedFunction
body string No Body of the User Defined Function

CreateUpdateOptions object

Name Type Required Value
throughput integer No Request Units per second. For example, "throughput": 10000.
autoscaleSettings object No Specifies the Autoscale settings. - AutoscaleSettings object

AutoscaleSettings object

Name Type Required Value
maxThroughput integer No Represents maximum throughput, the resource can scale up to.

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create Azure Cosmos Core (SQL) API stored procedures

Deploy to Azure
This template creates an Azure Cosmos account for Core (SQL) API and a container with a stored procedure, trigger and user defined function.