Microsoft.EventGrid domains 2020-04-01-preview

Bicep resource definition

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

resource symbolicname 'Microsoft.EventGrid/domains@2020-04-01-preview' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  sku: {
    name: 'string'
  }
  identity: {
    principalId: 'string'
    tenantId: 'string'
    type: 'string'
    userAssignedIdentities: {
      {customized property}: {
        clientId: 'string'
        principalId: 'string'
      }
    }
  }
  properties: {
    inboundIpRules: [
      {
        action: 'Allow'
        ipMask: 'string'
      }
    ]
    inputSchema: 'string'
    inputSchemaMapping: {
      inputSchemaMappingType: 'string'
      // For remaining properties, see InputSchemaMapping objects
    }
    privateEndpointConnections: [
      {
        properties: {
          groupIds: [
            'string'
          ]
          privateEndpoint: {
            id: 'string'
          }
          privateLinkServiceConnectionState: {
            actionsRequired: 'string'
            description: 'string'
            status: 'string'
          }
          provisioningState: 'string'
        }
      }
    ]
    publicNetworkAccess: 'string'
  }
}

InputSchemaMapping objects

Set the inputSchemaMappingType property to specify the type of object.

For Json, use:

  inputSchemaMappingType: 'Json'
  properties: {
    dataVersion: {
      defaultValue: 'string'
      sourceField: 'string'
    }
    eventTime: {
      sourceField: 'string'
    }
    eventType: {
      defaultValue: 'string'
      sourceField: 'string'
    }
    id: {
      sourceField: 'string'
    }
    subject: {
      defaultValue: 'string'
      sourceField: 'string'
    }
    topic: {
      sourceField: 'string'
    }
  }

Property values

domains

Name Description Value
name The resource name string (required)

Character limit: 3-50

Valid characters:
Alphanumerics and hyphens.
location Location of the resource. string (required)
tags Tags of the resource. Dictionary of tag names and values. See Tags in templates
sku The Sku pricing tier for the domain. ResourceSku
identity Identity information for the resource. IdentityInfo
properties Properties of the domain. DomainProperties

IdentityInfo

Name Description Value
principalId The principal ID of resource identity. string
tenantId The tenant ID of resource. string
type The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
userAssignedIdentities The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
This property is currently not used and reserved for future usage.
IdentityInfoUserAssignedIdentities

IdentityInfoUserAssignedIdentities

Name Description Value
{customized property} UserIdentityProperties

UserIdentityProperties

Name Description Value
clientId The client id of user assigned identity. string
principalId The principal id of user assigned identity. string

DomainProperties

Name Description Value
inboundIpRules This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. InboundIpRule[]
inputSchema This determines the format that Event Grid should expect for incoming events published to the domain. 'CloudEventSchemaV1_0'
'CustomEventSchema'
'EventGridSchema'
inputSchemaMapping Information about the InputSchemaMapping which specified the info about mapping event payload. InputSchemaMapping
privateEndpointConnections List of private endpoint connections. PrivateEndpointConnection[]
publicNetworkAccess This determines if traffic is allowed over public network. By default it is enabled.
You can further restrict to specific IPs by configuring {seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.DomainProperties.InboundIpRules" /}
'Disabled'
'Enabled'

InboundIpRule

Name Description Value
action Action to perform based on the match or no match of the IpMask. 'Allow'
ipMask IP Address in CIDR notation e.g., 10.0.0.0/8. string

InputSchemaMapping

Name Description Value
inputSchemaMappingType Set the object type Json (required)

JsonInputSchemaMapping

Name Description Value
inputSchemaMappingType Type of the custom mapping 'Json' (required)
properties JSON Properties of the input schema mapping JsonInputSchemaMappingProperties

JsonInputSchemaMappingProperties

Name Description Value
dataVersion The mapping information for the DataVersion property of the Event Grid Event. JsonFieldWithDefault
eventTime The mapping information for the EventTime property of the Event Grid Event. JsonField
eventType The mapping information for the EventType property of the Event Grid Event. JsonFieldWithDefault
id The mapping information for the Id property of the Event Grid Event. JsonField
subject The mapping information for the Subject property of the Event Grid Event. JsonFieldWithDefault
topic The mapping information for the Topic property of the Event Grid Event. JsonField

JsonFieldWithDefault

Name Description Value
defaultValue The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload. string
sourceField Name of a field in the input event schema that's to be used as the source of a mapping. string

JsonField

Name Description Value
sourceField Name of a field in the input event schema that's to be used as the source of a mapping. string

PrivateEndpointConnection

Name Description Value
properties Properties of the PrivateEndpointConnection. PrivateEndpointConnectionProperties

PrivateEndpointConnectionProperties

Name Description Value
groupIds GroupIds from the private link service resource. string[]
privateEndpoint The Private Endpoint resource for this Connection. PrivateEndpoint
privateLinkServiceConnectionState Details about the state of the connection. ConnectionState
provisioningState Provisioning state of the Private Endpoint Connection. 'Canceled'
'Creating'
'Deleting'
'Failed'
'Succeeded'
'Updating'

PrivateEndpoint

Name Description Value
id The ARM identifier for Private Endpoint. string

ConnectionState

Name Description Value
actionsRequired Actions required (if any). string
description Description of the connection state. string
status Status of the connection. 'Approved'
'Disconnected'
'Pending'
'Rejected'

ResourceSku

Name Description Value
name The Sku name of the resource. The possible values are: Basic or Premium. 'Basic'
'Premium'

ARM template resource definition

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

{
  "type": "Microsoft.EventGrid/domains",
  "apiVersion": "2020-04-01-preview",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "sku": {
    "name": "string"
  },
  "identity": {
    "principalId": "string",
    "tenantId": "string",
    "type": "string",
    "userAssignedIdentities": {
      "{customized property}": {
        "clientId": "string",
        "principalId": "string"
      }
    }
  },
  "properties": {
    "inboundIpRules": [
      {
        "action": "Allow",
        "ipMask": "string"
      }
    ],
    "inputSchema": "string",
    "inputSchemaMapping": {
      "inputSchemaMappingType": "string"
      // For remaining properties, see InputSchemaMapping objects
    },
    "privateEndpointConnections": [
      {
        "properties": {
          "groupIds": [ "string" ],
          "privateEndpoint": {
            "id": "string"
          },
          "privateLinkServiceConnectionState": {
            "actionsRequired": "string",
            "description": "string",
            "status": "string"
          },
          "provisioningState": "string"
        }
      }
    ],
    "publicNetworkAccess": "string"
  }
}

InputSchemaMapping objects

Set the inputSchemaMappingType property to specify the type of object.

For Json, use:

  "inputSchemaMappingType": "Json",
  "properties": {
    "dataVersion": {
      "defaultValue": "string",
      "sourceField": "string"
    },
    "eventTime": {
      "sourceField": "string"
    },
    "eventType": {
      "defaultValue": "string",
      "sourceField": "string"
    },
    "id": {
      "sourceField": "string"
    },
    "subject": {
      "defaultValue": "string",
      "sourceField": "string"
    },
    "topic": {
      "sourceField": "string"
    }
  }

Property values

domains

Name Description Value
type The resource type 'Microsoft.EventGrid/domains'
apiVersion The resource api version '2020-04-01-preview'
name The resource name string (required)

Character limit: 3-50

Valid characters:
Alphanumerics and hyphens.
location Location of the resource. string (required)
tags Tags of the resource. Dictionary of tag names and values. See Tags in templates
sku The Sku pricing tier for the domain. ResourceSku
identity Identity information for the resource. IdentityInfo
properties Properties of the domain. DomainProperties

IdentityInfo

Name Description Value
principalId The principal ID of resource identity. string
tenantId The tenant ID of resource. string
type The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. 'None'
'SystemAssigned'
'SystemAssigned, UserAssigned'
'UserAssigned'
userAssignedIdentities The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
This property is currently not used and reserved for future usage.
IdentityInfoUserAssignedIdentities

IdentityInfoUserAssignedIdentities

Name Description Value
{customized property} UserIdentityProperties

UserIdentityProperties

Name Description Value
clientId The client id of user assigned identity. string
principalId The principal id of user assigned identity. string

DomainProperties

Name Description Value
inboundIpRules This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. InboundIpRule[]
inputSchema This determines the format that Event Grid should expect for incoming events published to the domain. 'CloudEventSchemaV1_0'
'CustomEventSchema'
'EventGridSchema'
inputSchemaMapping Information about the InputSchemaMapping which specified the info about mapping event payload. InputSchemaMapping
privateEndpointConnections List of private endpoint connections. PrivateEndpointConnection[]
publicNetworkAccess This determines if traffic is allowed over public network. By default it is enabled.
You can further restrict to specific IPs by configuring {seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.DomainProperties.InboundIpRules" /}
'Disabled'
'Enabled'

InboundIpRule

Name Description Value
action Action to perform based on the match or no match of the IpMask. 'Allow'
ipMask IP Address in CIDR notation e.g., 10.0.0.0/8. string

InputSchemaMapping

Name Description Value
inputSchemaMappingType Set the object type Json (required)

JsonInputSchemaMapping

Name Description Value
inputSchemaMappingType Type of the custom mapping 'Json' (required)
properties JSON Properties of the input schema mapping JsonInputSchemaMappingProperties

JsonInputSchemaMappingProperties

Name Description Value
dataVersion The mapping information for the DataVersion property of the Event Grid Event. JsonFieldWithDefault
eventTime The mapping information for the EventTime property of the Event Grid Event. JsonField
eventType The mapping information for the EventType property of the Event Grid Event. JsonFieldWithDefault
id The mapping information for the Id property of the Event Grid Event. JsonField
subject The mapping information for the Subject property of the Event Grid Event. JsonFieldWithDefault
topic The mapping information for the Topic property of the Event Grid Event. JsonField

JsonFieldWithDefault

Name Description Value
defaultValue The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload. string
sourceField Name of a field in the input event schema that's to be used as the source of a mapping. string

JsonField

Name Description Value
sourceField Name of a field in the input event schema that's to be used as the source of a mapping. string

PrivateEndpointConnection

Name Description Value
properties Properties of the PrivateEndpointConnection. PrivateEndpointConnectionProperties

PrivateEndpointConnectionProperties

Name Description Value
groupIds GroupIds from the private link service resource. string[]
privateEndpoint The Private Endpoint resource for this Connection. PrivateEndpoint
privateLinkServiceConnectionState Details about the state of the connection. ConnectionState
provisioningState Provisioning state of the Private Endpoint Connection. 'Canceled'
'Creating'
'Deleting'
'Failed'
'Succeeded'
'Updating'

PrivateEndpoint

Name Description Value
id The ARM identifier for Private Endpoint. string

ConnectionState

Name Description Value
actionsRequired Actions required (if any). string
description Description of the connection state. string
status Status of the connection. 'Approved'
'Disconnected'
'Pending'
'Rejected'

ResourceSku

Name Description Value
name The Sku name of the resource. The possible values are: Basic or Premium. 'Basic'
'Premium'

Terraform (AzAPI provider) resource definition

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.EventGrid/domains@2020-04-01-preview"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  identity {
    type = "string"
    identity_ids = []
  }
  body = jsonencode({
    properties = {
      inboundIpRules = [
        {
          action = "Allow"
          ipMask = "string"
        }
      ]
      inputSchema = "string"
      inputSchemaMapping = {
        inputSchemaMappingType = "string"
        // For remaining properties, see InputSchemaMapping objects
      }
      privateEndpointConnections = [
        {
          properties = {
            groupIds = [
              "string"
            ]
            privateEndpoint = {
              id = "string"
            }
            privateLinkServiceConnectionState = {
              actionsRequired = "string"
              description = "string"
              status = "string"
            }
            provisioningState = "string"
          }
        }
      ]
      publicNetworkAccess = "string"
    }
    sku = {
      name = "string"
    }
  })
}

InputSchemaMapping objects

Set the inputSchemaMappingType property to specify the type of object.

For Json, use:

  inputSchemaMappingType = "Json"
  properties = {
    dataVersion = {
      defaultValue = "string"
      sourceField = "string"
    }
    eventTime = {
      sourceField = "string"
    }
    eventType = {
      defaultValue = "string"
      sourceField = "string"
    }
    id = {
      sourceField = "string"
    }
    subject = {
      defaultValue = "string"
      sourceField = "string"
    }
    topic = {
      sourceField = "string"
    }
  }

Property values

domains

Name Description Value
type The resource type "Microsoft.EventGrid/domains@2020-04-01-preview"
name The resource name string (required)

Character limit: 3-50

Valid characters:
Alphanumerics and hyphens.
location Location of the resource. string (required)
parent_id To deploy to a resource group, use the ID of that resource group. string (required)
tags Tags of the resource. Dictionary of tag names and values.
sku The Sku pricing tier for the domain. ResourceSku
identity Identity information for the resource. IdentityInfo
properties Properties of the domain. DomainProperties

IdentityInfo

Name Description Value
type The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. "SystemAssigned"
"SystemAssigned, UserAssigned"
"UserAssigned"
identity_ids The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:
'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.
This property is currently not used and reserved for future usage.
Array of user identity IDs.

IdentityInfoUserAssignedIdentities

Name Description Value
{customized property} UserIdentityProperties

UserIdentityProperties

Name Description Value
clientId The client id of user assigned identity. string
principalId The principal id of user assigned identity. string

DomainProperties

Name Description Value
inboundIpRules This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. InboundIpRule[]
inputSchema This determines the format that Event Grid should expect for incoming events published to the domain. "CloudEventSchemaV1_0"
"CustomEventSchema"
"EventGridSchema"
inputSchemaMapping Information about the InputSchemaMapping which specified the info about mapping event payload. InputSchemaMapping
privateEndpointConnections List of private endpoint connections. PrivateEndpointConnection[]
publicNetworkAccess This determines if traffic is allowed over public network. By default it is enabled.
You can further restrict to specific IPs by configuring {seealso cref="P:Microsoft.Azure.Events.ResourceProvider.Common.Contracts.DomainProperties.InboundIpRules" /}
"Disabled"
"Enabled"

InboundIpRule

Name Description Value
action Action to perform based on the match or no match of the IpMask. "Allow"
ipMask IP Address in CIDR notation e.g., 10.0.0.0/8. string

InputSchemaMapping

Name Description Value
inputSchemaMappingType Set the object type Json (required)

JsonInputSchemaMapping

Name Description Value
inputSchemaMappingType Type of the custom mapping "Json" (required)
properties JSON Properties of the input schema mapping JsonInputSchemaMappingProperties

JsonInputSchemaMappingProperties

Name Description Value
dataVersion The mapping information for the DataVersion property of the Event Grid Event. JsonFieldWithDefault
eventTime The mapping information for the EventTime property of the Event Grid Event. JsonField
eventType The mapping information for the EventType property of the Event Grid Event. JsonFieldWithDefault
id The mapping information for the Id property of the Event Grid Event. JsonField
subject The mapping information for the Subject property of the Event Grid Event. JsonFieldWithDefault
topic The mapping information for the Topic property of the Event Grid Event. JsonField

JsonFieldWithDefault

Name Description Value
defaultValue The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload. string
sourceField Name of a field in the input event schema that's to be used as the source of a mapping. string

JsonField

Name Description Value
sourceField Name of a field in the input event schema that's to be used as the source of a mapping. string

PrivateEndpointConnection

Name Description Value
properties Properties of the PrivateEndpointConnection. PrivateEndpointConnectionProperties

PrivateEndpointConnectionProperties

Name Description Value
groupIds GroupIds from the private link service resource. string[]
privateEndpoint The Private Endpoint resource for this Connection. PrivateEndpoint
privateLinkServiceConnectionState Details about the state of the connection. ConnectionState
provisioningState Provisioning state of the Private Endpoint Connection. "Canceled"
"Creating"
"Deleting"
"Failed"
"Succeeded"
"Updating"

PrivateEndpoint

Name Description Value
id The ARM identifier for Private Endpoint. string

ConnectionState

Name Description Value
actionsRequired Actions required (if any). string
description Description of the connection state. string
status Status of the connection. "Approved"
"Disconnected"
"Pending"
"Rejected"

ResourceSku

Name Description Value
name The Sku name of the resource. The possible values are: Basic or Premium. "Basic"
"Premium"