Microsoft.NetApp netAppAccounts/volumeGroups 2023-05-01

Bicep resource definition

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

resource symbolicname 'Microsoft.NetApp/netAppAccounts/volumeGroups@2023-05-01' = {
  name: 'string'
  location: 'string'
  parent: resourceSymbolicName
  properties: {
    groupMetaData: {
      applicationIdentifier: 'string'
      applicationType: 'string'
      deploymentSpecId: 'string'
      globalPlacementRules: [
        {
          key: 'string'
          value: 'string'
        }
      ]
      groupDescription: 'string'
    }
    volumes: [
      {
        name: 'string'
        properties: {
          avsDataStore: 'string'
          backupId: 'string'
          capacityPoolResourceId: 'string'
          coolAccess: bool
          coolAccessRetrievalPolicy: 'string'
          coolnessPeriod: int
          creationToken: 'string'
          dataProtection: {
            replication: {
              endpointType: 'string'
              remoteVolumeRegion: 'string'
              remoteVolumeResourceId: 'string'
              replicationSchedule: 'string'
            }
            snapshot: {
              snapshotPolicyId: 'string'
            }
            volumeRelocation: {
              relocationRequested: bool
            }
          }
          defaultGroupQuotaInKiBs: int
          defaultUserQuotaInKiBs: int
          deleteBaseSnapshot: bool
          enableSubvolumes: 'string'
          encryptionKeySource: 'string'
          exportPolicy: {
            rules: [
              {
                allowedClients: 'string'
                chownMode: 'string'
                cifs: bool
                hasRootAccess: bool
                kerberos5iReadWrite: bool
                kerberos5pReadWrite: bool
                kerberos5ReadWrite: bool
                nfsv3: bool
                nfsv41: bool
                ruleIndex: int
                unixReadWrite: bool
              }
            ]
          }
          isDefaultQuotaEnabled: bool
          isLargeVolume: bool
          isRestoring: bool
          kerberosEnabled: bool
          keyVaultPrivateEndpointResourceId: 'string'
          ldapEnabled: bool
          networkFeatures: 'string'
          placementRules: [
            {
              key: 'string'
              value: 'string'
            }
          ]
          protocolTypes: [
            'string'
          ]
          proximityPlacementGroup: 'string'
          securityStyle: 'string'
          serviceLevel: 'string'
          smbAccessBasedEnumeration: 'string'
          smbContinuouslyAvailable: bool
          smbEncryption: bool
          smbNonBrowsable: 'string'
          snapshotDirectoryVisible: bool
          snapshotId: 'string'
          subnetId: 'string'
          throughputMibps: int
          unixPermissions: 'string'
          usageThreshold: int
          volumeSpecName: 'string'
          volumeType: 'string'
        }
        tags: {}
        zones: [
          'string'
        ]
      }
    ]
  }
}

Property values

netAppAccounts/volumeGroups

Name Description Value
name The resource name

See how to set names and types for child resources in Bicep.
string (required)

Character limit: 3-64

Valid characters:
Alphanumerics, underscores, and hyphens.

Start with alphanumeric.
location Resource location string
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: netAppAccounts
properties Volume group properties VolumeGroupProperties

VolumeGroupProperties

Name Description Value
groupMetaData Volume group details VolumeGroupMetaData
volumes List of volumes from group VolumeGroupVolumeProperties[]

VolumeGroupMetaData

Name Description Value
applicationIdentifier Application specific identifier string
applicationType Application Type 'ORACLE'
'SAP-HANA'
deploymentSpecId Application specific identifier of deployment rules for the volume group string
globalPlacementRules Application specific placement rules for the volume group PlacementKeyValuePairs[]
groupDescription Group Description string

PlacementKeyValuePairs

Name Description Value
key Key for an application specific parameter for the placement of volumes in the volume group string (required)
value Value for an application specific parameter for the placement of volumes in the volume group string (required)

VolumeGroupVolumeProperties

Name Description Value
name Resource name string
properties Volume properties VolumeProperties (required)
tags Resource tags object
zones Availability Zone string[]

Constraints:
Min length = 1
Max length = 255

VolumeProperties

Name Description Value
avsDataStore Specifies whether the volume is enabled for Azure VMware Solution (AVS) datastore purpose 'Disabled'
'Enabled'
backupId UUID v4 or resource identifier used to identify the Backup. string
capacityPoolResourceId Pool Resource Id used in case of creating a volume through volume group string
coolAccess Specifies whether Cool Access(tiering) is enabled for the volume. bool
coolAccessRetrievalPolicy coolAccessRetrievalPolicy determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes. The possible values for this field are:
Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default.
OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads.
Never - No client-driven data is pulled from cool tier to standard storage.
'Default'
'Never'
'OnRead'
coolnessPeriod Specifies the number of days after which data that is not accessed by clients will be tiered. int

Constraints:
Min value = 7
Max value = 63
creationToken A unique file path for the volume. Used when creating mount targets string (required)

Constraints:
Min length = 1
Max length = 80
Pattern = ^[a-zA-Z][a-zA-Z0-9\-]{0,79}$
dataProtection DataProtection type volumes include an object containing details of the replication VolumePropertiesDataProtection
defaultGroupQuotaInKiBs Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies. int
defaultUserQuotaInKiBs Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies . int
deleteBaseSnapshot If enabled (true) the snapshot the volume was created from will be automatically deleted after the volume create operation has finished. Defaults to false bool
enableSubvolumes Flag indicating whether subvolume operations are enabled on the volume 'Disabled'
'Enabled'
encryptionKeySource Source of key used to encrypt data in volume. Applicable if NetApp account has encryption.keySource = 'Microsoft.KeyVault'. Possible values (case-insensitive) are: 'Microsoft.NetApp, Microsoft.KeyVault' 'Microsoft.KeyVault'
'Microsoft.NetApp'
exportPolicy Set of export policy rules VolumePropertiesExportPolicy
isDefaultQuotaEnabled Specifies if default quota is enabled for the volume. bool
isLargeVolume Specifies whether volume is a Large Volume or Regular Volume. bool
isRestoring Restoring bool
kerberosEnabled Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later bool
keyVaultPrivateEndpointResourceId The resource ID of private endpoint for KeyVault. It must reside in the same VNET as the volume. Only applicable if encryptionKeySource = 'Microsoft.KeyVault'. string
ldapEnabled Specifies whether LDAP is enabled or not for a given NFS volume. bool
networkFeatures Network features available to the volume, or current state of update. 'Basic'
'Basic_Standard'
'Standard'
'Standard_Basic'
placementRules Application specific placement rules for the particular volume PlacementKeyValuePairs[]
protocolTypes Set of protocol types, default NFSv3, CIFS for SMB protocol string[]
proximityPlacementGroup Proximity placement group associated with the volume string
securityStyle The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol 'ntfs'
'unix'
serviceLevel The service level of the file system 'Premium'
'Standard'
'StandardZRS'
'Ultra'
smbAccessBasedEnumeration Enables access-based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume 'Disabled'
'Enabled'
smbContinuouslyAvailable Enables continuously available share property for smb volume. Only applicable for SMB volume bool
smbEncryption Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later bool
smbNonBrowsable Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume 'Disabled'
'Enabled'
snapshotDirectoryVisible If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (defaults to true). bool
snapshotId UUID v4 or resource identifier used to identify the Snapshot. string
subnetId The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes string (required)
throughputMibps Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume int
unixPermissions UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users. string

Constraints:
Min length = 4
Max length = 4
usageThreshold Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB, 500Tib for LargeVolume or 2400Tib for LargeVolume on exceptional basis. Specified in bytes. int (required)

Constraints:
Min value = 107374182400
Max value = 2638827906662400
volumeSpecName Volume spec name is the application specific designation or identifier for the particular volume in a volume group for e.g. data, log string
volumeType What type of volume is this. For destination volumes in Cross Region Replication, set type to DataProtection string

VolumePropertiesDataProtection

Name Description Value
replication Replication properties ReplicationObject
snapshot Snapshot properties. VolumeSnapshotProperties
volumeRelocation VolumeRelocation properties VolumeRelocationProperties

ReplicationObject

Name Description Value
endpointType Indicates whether the local volume is the source or destination for the Volume Replication 'dst'
'src'
remoteVolumeRegion The remote region for the other end of the Volume Replication. string
remoteVolumeResourceId The resource ID of the remote volume. string (required)
replicationSchedule Schedule '_10minutely'
'daily'
'hourly'

VolumeSnapshotProperties

Name Description Value
snapshotPolicyId Snapshot Policy ResourceId string

VolumeRelocationProperties

Name Description Value
relocationRequested Has relocation been requested for this volume bool

VolumePropertiesExportPolicy

Name Description Value
rules Export policy rule ExportPolicyRule[]

ExportPolicyRule

Name Description Value
allowedClients Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names string
chownMode This parameter specifies who is authorized to change the ownership of a file. restricted - Only root user can change the ownership of the file. unrestricted - Non-root users can change ownership of files that they own. 'Restricted'
'Unrestricted'
cifs Allows CIFS protocol bool
hasRootAccess Has root access to volume bool
kerberos5iReadWrite Kerberos5i Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5pReadWrite Kerberos5p Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5ReadWrite Kerberos5 Read and write access. To be use with swagger version 2020-05-01 or later bool
nfsv3 Allows NFSv3 protocol. Enable only for NFSv3 type volumes bool
nfsv41 Allows NFSv4.1 protocol. Enable only for NFSv4.1 type volumes bool
ruleIndex Order index int
unixReadWrite Read and write access bool

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
ORACLE Azure NetApp Files storage

Deploy to Azure
This template deploys storage for ORACLE deployments. Storage is provided using Azure NetApp Files, built on NetApp ONTAP storage OS.
SAP HANA Azure NetApp Files Cross Region Replication storage

Deploy to Azure
This template deploys storage for SAP HANA disaster recovery deployments. Storage is provided using Azure NetApp Files, built on NetApp ONTAP storage OS.
SAP HANA Azure NetApp Files storage

Deploy to Azure
This template deploys storage for SAP HANA deployments. Storage is provided using Azure NetApp Files, built on NetApp ONTAP storage OS.

ARM template resource definition

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

{
  "type": "Microsoft.NetApp/netAppAccounts/volumeGroups",
  "apiVersion": "2023-05-01",
  "name": "string",
  "location": "string",
  "properties": {
    "groupMetaData": {
      "applicationIdentifier": "string",
      "applicationType": "string",
      "deploymentSpecId": "string",
      "globalPlacementRules": [
        {
          "key": "string",
          "value": "string"
        }
      ],
      "groupDescription": "string"
    },
    "volumes": [
      {
        "name": "string",
        "properties": {
          "avsDataStore": "string",
          "backupId": "string",
          "capacityPoolResourceId": "string",
          "coolAccess": "bool",
          "coolAccessRetrievalPolicy": "string",
          "coolnessPeriod": "int",
          "creationToken": "string",
          "dataProtection": {
            "replication": {
              "endpointType": "string",
              "remoteVolumeRegion": "string",
              "remoteVolumeResourceId": "string",
              "replicationSchedule": "string"
            },
            "snapshot": {
              "snapshotPolicyId": "string"
            },
            "volumeRelocation": {
              "relocationRequested": "bool"
            }
          },
          "defaultGroupQuotaInKiBs": "int",
          "defaultUserQuotaInKiBs": "int",
          "deleteBaseSnapshot": "bool",
          "enableSubvolumes": "string",
          "encryptionKeySource": "string",
          "exportPolicy": {
            "rules": [
              {
                "allowedClients": "string",
                "chownMode": "string",
                "cifs": "bool",
                "hasRootAccess": "bool",
                "kerberos5iReadWrite": "bool",
                "kerberos5pReadWrite": "bool",
                "kerberos5ReadWrite": "bool",
                "nfsv3": "bool",
                "nfsv41": "bool",
                "ruleIndex": "int",
                "unixReadWrite": "bool"
              }
            ]
          },
          "isDefaultQuotaEnabled": "bool",
          "isLargeVolume": "bool",
          "isRestoring": "bool",
          "kerberosEnabled": "bool",
          "keyVaultPrivateEndpointResourceId": "string",
          "ldapEnabled": "bool",
          "networkFeatures": "string",
          "placementRules": [
            {
              "key": "string",
              "value": "string"
            }
          ],
          "protocolTypes": [ "string" ],
          "proximityPlacementGroup": "string",
          "securityStyle": "string",
          "serviceLevel": "string",
          "smbAccessBasedEnumeration": "string",
          "smbContinuouslyAvailable": "bool",
          "smbEncryption": "bool",
          "smbNonBrowsable": "string",
          "snapshotDirectoryVisible": "bool",
          "snapshotId": "string",
          "subnetId": "string",
          "throughputMibps": "int",
          "unixPermissions": "string",
          "usageThreshold": "int",
          "volumeSpecName": "string",
          "volumeType": "string"
        },
        "tags": {},
        "zones": [ "string" ]
      }
    ]
  }
}

Property values

netAppAccounts/volumeGroups

Name Description Value
type The resource type 'Microsoft.NetApp/netAppAccounts/volumeGroups'
apiVersion The resource api version '2023-05-01'
name The resource name

See how to set names and types for child resources in JSON ARM templates.
string (required)

Character limit: 3-64

Valid characters:
Alphanumerics, underscores, and hyphens.

Start with alphanumeric.
location Resource location string
properties Volume group properties VolumeGroupProperties

VolumeGroupProperties

Name Description Value
groupMetaData Volume group details VolumeGroupMetaData
volumes List of volumes from group VolumeGroupVolumeProperties[]

VolumeGroupMetaData

Name Description Value
applicationIdentifier Application specific identifier string
applicationType Application Type 'ORACLE'
'SAP-HANA'
deploymentSpecId Application specific identifier of deployment rules for the volume group string
globalPlacementRules Application specific placement rules for the volume group PlacementKeyValuePairs[]
groupDescription Group Description string

PlacementKeyValuePairs

Name Description Value
key Key for an application specific parameter for the placement of volumes in the volume group string (required)
value Value for an application specific parameter for the placement of volumes in the volume group string (required)

VolumeGroupVolumeProperties

Name Description Value
name Resource name string
properties Volume properties VolumeProperties (required)
tags Resource tags object
zones Availability Zone string[]

Constraints:
Min length = 1
Max length = 255

VolumeProperties

Name Description Value
avsDataStore Specifies whether the volume is enabled for Azure VMware Solution (AVS) datastore purpose 'Disabled'
'Enabled'
backupId UUID v4 or resource identifier used to identify the Backup. string
capacityPoolResourceId Pool Resource Id used in case of creating a volume through volume group string
coolAccess Specifies whether Cool Access(tiering) is enabled for the volume. bool
coolAccessRetrievalPolicy coolAccessRetrievalPolicy determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes. The possible values for this field are:
Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default.
OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads.
Never - No client-driven data is pulled from cool tier to standard storage.
'Default'
'Never'
'OnRead'
coolnessPeriod Specifies the number of days after which data that is not accessed by clients will be tiered. int

Constraints:
Min value = 7
Max value = 63
creationToken A unique file path for the volume. Used when creating mount targets string (required)

Constraints:
Min length = 1
Max length = 80
Pattern = ^[a-zA-Z][a-zA-Z0-9\-]{0,79}$
dataProtection DataProtection type volumes include an object containing details of the replication VolumePropertiesDataProtection
defaultGroupQuotaInKiBs Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies. int
defaultUserQuotaInKiBs Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies . int
deleteBaseSnapshot If enabled (true) the snapshot the volume was created from will be automatically deleted after the volume create operation has finished. Defaults to false bool
enableSubvolumes Flag indicating whether subvolume operations are enabled on the volume 'Disabled'
'Enabled'
encryptionKeySource Source of key used to encrypt data in volume. Applicable if NetApp account has encryption.keySource = 'Microsoft.KeyVault'. Possible values (case-insensitive) are: 'Microsoft.NetApp, Microsoft.KeyVault' 'Microsoft.KeyVault'
'Microsoft.NetApp'
exportPolicy Set of export policy rules VolumePropertiesExportPolicy
isDefaultQuotaEnabled Specifies if default quota is enabled for the volume. bool
isLargeVolume Specifies whether volume is a Large Volume or Regular Volume. bool
isRestoring Restoring bool
kerberosEnabled Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later bool
keyVaultPrivateEndpointResourceId The resource ID of private endpoint for KeyVault. It must reside in the same VNET as the volume. Only applicable if encryptionKeySource = 'Microsoft.KeyVault'. string
ldapEnabled Specifies whether LDAP is enabled or not for a given NFS volume. bool
networkFeatures Network features available to the volume, or current state of update. 'Basic'
'Basic_Standard'
'Standard'
'Standard_Basic'
placementRules Application specific placement rules for the particular volume PlacementKeyValuePairs[]
protocolTypes Set of protocol types, default NFSv3, CIFS for SMB protocol string[]
proximityPlacementGroup Proximity placement group associated with the volume string
securityStyle The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol 'ntfs'
'unix'
serviceLevel The service level of the file system 'Premium'
'Standard'
'StandardZRS'
'Ultra'
smbAccessBasedEnumeration Enables access-based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume 'Disabled'
'Enabled'
smbContinuouslyAvailable Enables continuously available share property for smb volume. Only applicable for SMB volume bool
smbEncryption Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later bool
smbNonBrowsable Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume 'Disabled'
'Enabled'
snapshotDirectoryVisible If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (defaults to true). bool
snapshotId UUID v4 or resource identifier used to identify the Snapshot. string
subnetId The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes string (required)
throughputMibps Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume int
unixPermissions UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users. string

Constraints:
Min length = 4
Max length = 4
usageThreshold Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB, 500Tib for LargeVolume or 2400Tib for LargeVolume on exceptional basis. Specified in bytes. int (required)

Constraints:
Min value = 107374182400
Max value = 2638827906662400
volumeSpecName Volume spec name is the application specific designation or identifier for the particular volume in a volume group for e.g. data, log string
volumeType What type of volume is this. For destination volumes in Cross Region Replication, set type to DataProtection string

VolumePropertiesDataProtection

Name Description Value
replication Replication properties ReplicationObject
snapshot Snapshot properties. VolumeSnapshotProperties
volumeRelocation VolumeRelocation properties VolumeRelocationProperties

ReplicationObject

Name Description Value
endpointType Indicates whether the local volume is the source or destination for the Volume Replication 'dst'
'src'
remoteVolumeRegion The remote region for the other end of the Volume Replication. string
remoteVolumeResourceId The resource ID of the remote volume. string (required)
replicationSchedule Schedule '_10minutely'
'daily'
'hourly'

VolumeSnapshotProperties

Name Description Value
snapshotPolicyId Snapshot Policy ResourceId string

VolumeRelocationProperties

Name Description Value
relocationRequested Has relocation been requested for this volume bool

VolumePropertiesExportPolicy

Name Description Value
rules Export policy rule ExportPolicyRule[]

ExportPolicyRule

Name Description Value
allowedClients Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names string
chownMode This parameter specifies who is authorized to change the ownership of a file. restricted - Only root user can change the ownership of the file. unrestricted - Non-root users can change ownership of files that they own. 'Restricted'
'Unrestricted'
cifs Allows CIFS protocol bool
hasRootAccess Has root access to volume bool
kerberos5iReadWrite Kerberos5i Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5pReadWrite Kerberos5p Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5ReadWrite Kerberos5 Read and write access. To be use with swagger version 2020-05-01 or later bool
nfsv3 Allows NFSv3 protocol. Enable only for NFSv3 type volumes bool
nfsv41 Allows NFSv4.1 protocol. Enable only for NFSv4.1 type volumes bool
ruleIndex Order index int
unixReadWrite Read and write access bool

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
ORACLE Azure NetApp Files storage

Deploy to Azure
This template deploys storage for ORACLE deployments. Storage is provided using Azure NetApp Files, built on NetApp ONTAP storage OS.
SAP HANA Azure NetApp Files Cross Region Replication storage

Deploy to Azure
This template deploys storage for SAP HANA disaster recovery deployments. Storage is provided using Azure NetApp Files, built on NetApp ONTAP storage OS.
SAP HANA Azure NetApp Files storage

Deploy to Azure
This template deploys storage for SAP HANA deployments. Storage is provided using Azure NetApp Files, built on NetApp ONTAP storage OS.

Terraform (AzAPI provider) resource definition

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.NetApp/netAppAccounts/volumeGroups@2023-05-01"
  name = "string"
  location = "string"
  parent_id = "string"
  body = jsonencode({
    properties = {
      groupMetaData = {
        applicationIdentifier = "string"
        applicationType = "string"
        deploymentSpecId = "string"
        globalPlacementRules = [
          {
            key = "string"
            value = "string"
          }
        ]
        groupDescription = "string"
      }
      volumes = [
        {
          name = "string"
          properties = {
            avsDataStore = "string"
            backupId = "string"
            capacityPoolResourceId = "string"
            coolAccess = bool
            coolAccessRetrievalPolicy = "string"
            coolnessPeriod = int
            creationToken = "string"
            dataProtection = {
              replication = {
                endpointType = "string"
                remoteVolumeRegion = "string"
                remoteVolumeResourceId = "string"
                replicationSchedule = "string"
              }
              snapshot = {
                snapshotPolicyId = "string"
              }
              volumeRelocation = {
                relocationRequested = bool
              }
            }
            defaultGroupQuotaInKiBs = int
            defaultUserQuotaInKiBs = int
            deleteBaseSnapshot = bool
            enableSubvolumes = "string"
            encryptionKeySource = "string"
            exportPolicy = {
              rules = [
                {
                  allowedClients = "string"
                  chownMode = "string"
                  cifs = bool
                  hasRootAccess = bool
                  kerberos5iReadWrite = bool
                  kerberos5pReadWrite = bool
                  kerberos5ReadWrite = bool
                  nfsv3 = bool
                  nfsv41 = bool
                  ruleIndex = int
                  unixReadWrite = bool
                }
              ]
            }
            isDefaultQuotaEnabled = bool
            isLargeVolume = bool
            isRestoring = bool
            kerberosEnabled = bool
            keyVaultPrivateEndpointResourceId = "string"
            ldapEnabled = bool
            networkFeatures = "string"
            placementRules = [
              {
                key = "string"
                value = "string"
              }
            ]
            protocolTypes = [
              "string"
            ]
            proximityPlacementGroup = "string"
            securityStyle = "string"
            serviceLevel = "string"
            smbAccessBasedEnumeration = "string"
            smbContinuouslyAvailable = bool
            smbEncryption = bool
            smbNonBrowsable = "string"
            snapshotDirectoryVisible = bool
            snapshotId = "string"
            subnetId = "string"
            throughputMibps = int
            unixPermissions = "string"
            usageThreshold = int
            volumeSpecName = "string"
            volumeType = "string"
          }
          tags = {}
          zones = [
            "string"
          ]
        }
      ]
    }
  })
}

Property values

netAppAccounts/volumeGroups

Name Description Value
type The resource type "Microsoft.NetApp/netAppAccounts/volumeGroups@2023-05-01"
name The resource name string (required)

Character limit: 3-64

Valid characters:
Alphanumerics, underscores, and hyphens.

Start with alphanumeric.
location Resource location string
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: netAppAccounts
properties Volume group properties VolumeGroupProperties

VolumeGroupProperties

Name Description Value
groupMetaData Volume group details VolumeGroupMetaData
volumes List of volumes from group VolumeGroupVolumeProperties[]

VolumeGroupMetaData

Name Description Value
applicationIdentifier Application specific identifier string
applicationType Application Type "ORACLE"
"SAP-HANA"
deploymentSpecId Application specific identifier of deployment rules for the volume group string
globalPlacementRules Application specific placement rules for the volume group PlacementKeyValuePairs[]
groupDescription Group Description string

PlacementKeyValuePairs

Name Description Value
key Key for an application specific parameter for the placement of volumes in the volume group string (required)
value Value for an application specific parameter for the placement of volumes in the volume group string (required)

VolumeGroupVolumeProperties

Name Description Value
name Resource name string
properties Volume properties VolumeProperties (required)
tags Resource tags object
zones Availability Zone string[]

Constraints:
Min length = 1
Max length = 255

VolumeProperties

Name Description Value
avsDataStore Specifies whether the volume is enabled for Azure VMware Solution (AVS) datastore purpose "Disabled"
"Enabled"
backupId UUID v4 or resource identifier used to identify the Backup. string
capacityPoolResourceId Pool Resource Id used in case of creating a volume through volume group string
coolAccess Specifies whether Cool Access(tiering) is enabled for the volume. bool
coolAccessRetrievalPolicy coolAccessRetrievalPolicy determines the data retrieval behavior from the cool tier to standard storage based on the read pattern for cool access enabled volumes. The possible values for this field are:
Default - Data will be pulled from cool tier to standard storage on random reads. This policy is the default.
OnRead - All client-driven data read is pulled from cool tier to standard storage on both sequential and random reads.
Never - No client-driven data is pulled from cool tier to standard storage.
"Default"
"Never"
"OnRead"
coolnessPeriod Specifies the number of days after which data that is not accessed by clients will be tiered. int

Constraints:
Min value = 7
Max value = 63
creationToken A unique file path for the volume. Used when creating mount targets string (required)

Constraints:
Min length = 1
Max length = 80
Pattern = ^[a-zA-Z][a-zA-Z0-9\-]{0,79}$
dataProtection DataProtection type volumes include an object containing details of the replication VolumePropertiesDataProtection
defaultGroupQuotaInKiBs Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies. int
defaultUserQuotaInKiBs Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies . int
deleteBaseSnapshot If enabled (true) the snapshot the volume was created from will be automatically deleted after the volume create operation has finished. Defaults to false bool
enableSubvolumes Flag indicating whether subvolume operations are enabled on the volume "Disabled"
"Enabled"
encryptionKeySource Source of key used to encrypt data in volume. Applicable if NetApp account has encryption.keySource = 'Microsoft.KeyVault'. Possible values (case-insensitive) are: 'Microsoft.NetApp, Microsoft.KeyVault' "Microsoft.KeyVault"
"Microsoft.NetApp"
exportPolicy Set of export policy rules VolumePropertiesExportPolicy
isDefaultQuotaEnabled Specifies if default quota is enabled for the volume. bool
isLargeVolume Specifies whether volume is a Large Volume or Regular Volume. bool
isRestoring Restoring bool
kerberosEnabled Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later bool
keyVaultPrivateEndpointResourceId The resource ID of private endpoint for KeyVault. It must reside in the same VNET as the volume. Only applicable if encryptionKeySource = 'Microsoft.KeyVault'. string
ldapEnabled Specifies whether LDAP is enabled or not for a given NFS volume. bool
networkFeatures Network features available to the volume, or current state of update. "Basic"
"Basic_Standard"
"Standard"
"Standard_Basic"
placementRules Application specific placement rules for the particular volume PlacementKeyValuePairs[]
protocolTypes Set of protocol types, default NFSv3, CIFS for SMB protocol string[]
proximityPlacementGroup Proximity placement group associated with the volume string
securityStyle The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol "ntfs"
"unix"
serviceLevel The service level of the file system "Premium"
"Standard"
"StandardZRS"
"Ultra"
smbAccessBasedEnumeration Enables access-based enumeration share property for SMB Shares. Only applicable for SMB/DualProtocol volume "Disabled"
"Enabled"
smbContinuouslyAvailable Enables continuously available share property for smb volume. Only applicable for SMB volume bool
smbEncryption Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later bool
smbNonBrowsable Enables non-browsable property for SMB Shares. Only applicable for SMB/DualProtocol volume "Disabled"
"Enabled"
snapshotDirectoryVisible If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (defaults to true). bool
snapshotId UUID v4 or resource identifier used to identify the Snapshot. string
subnetId The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes string (required)
throughputMibps Maximum throughput in MiB/s that can be achieved by this volume and this will be accepted as input only for manual qosType volume int
unixPermissions UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users. string

Constraints:
Min length = 4
Max length = 4
usageThreshold Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB, 500Tib for LargeVolume or 2400Tib for LargeVolume on exceptional basis. Specified in bytes. int (required)

Constraints:
Min value = 107374182400
Max value = 2638827906662400
volumeSpecName Volume spec name is the application specific designation or identifier for the particular volume in a volume group for e.g. data, log string
volumeType What type of volume is this. For destination volumes in Cross Region Replication, set type to DataProtection string

VolumePropertiesDataProtection

Name Description Value
replication Replication properties ReplicationObject
snapshot Snapshot properties. VolumeSnapshotProperties
volumeRelocation VolumeRelocation properties VolumeRelocationProperties

ReplicationObject

Name Description Value
endpointType Indicates whether the local volume is the source or destination for the Volume Replication "dst"
"src"
remoteVolumeRegion The remote region for the other end of the Volume Replication. string
remoteVolumeResourceId The resource ID of the remote volume. string (required)
replicationSchedule Schedule "_10minutely"
"daily"
"hourly"

VolumeSnapshotProperties

Name Description Value
snapshotPolicyId Snapshot Policy ResourceId string

VolumeRelocationProperties

Name Description Value
relocationRequested Has relocation been requested for this volume bool

VolumePropertiesExportPolicy

Name Description Value
rules Export policy rule ExportPolicyRule[]

ExportPolicyRule

Name Description Value
allowedClients Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names string
chownMode This parameter specifies who is authorized to change the ownership of a file. restricted - Only root user can change the ownership of the file. unrestricted - Non-root users can change ownership of files that they own. "Restricted"
"Unrestricted"
cifs Allows CIFS protocol bool
hasRootAccess Has root access to volume bool
kerberos5iReadWrite Kerberos5i Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5pReadWrite Kerberos5p Read and write access. To be use with swagger version 2020-05-01 or later bool
kerberos5ReadWrite Kerberos5 Read and write access. To be use with swagger version 2020-05-01 or later bool
nfsv3 Allows NFSv3 protocol. Enable only for NFSv3 type volumes bool
nfsv41 Allows NFSv4.1 protocol. Enable only for NFSv4.1 type volumes bool
ruleIndex Order index int
unixReadWrite Read and write access bool