resourceDefinition.json

[
  {
    "ResourceType": "Microsoft.AnalysisServices/servers",
    "Resource": "Azure Analysis Services server",
    "Slug": "as",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 63,
    "Lowercase": true,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9a-z]",
    "ValidationRegex": "^[a-z][a-z0-9]{2,62}$"
  },
  {
    "ResourceType": "Microsoft.ApiManagement/service",
    "Resource": "API management service instance",
    "Slug": "apim",
    "Scope": "global",
    "MinLength": 1,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^a-zA-Z0-9-]",
    "ValidationRegex": "^[a-zA-Z](?:[a-zA-Z0-9-]{0,48}[a-zA-Z0-9])?$"
  },
  {
    "ResourceType": "Microsoft.App/containerApps",
    "Resource": "Container apps",
    "Slug": "ca",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 32,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9a-z-]",
    "ValidationRegex": "^[a-z0-9][a-z0-9-]{0,30}[a-z0-9]$"
  },
  {
    "ResourceType": "Microsoft.App/managedEnvironments",
    "Resource": "Container apps environment",
    "Slug": "cae",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 60,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[0-9A-Za-z][0-9A-Za-z-]{0,58}[0-9a-zA-Z]$"
  },
  {
    "ResourceType": "Microsoft.AppConfiguration/configurationStores",
    "Resource": "App Configuration store",
    "Slug": "appcs",
    "Scope": "resourceGroup",
    "MinLength": 5,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9-]{5,50}$"
  },
  {
    "ResourceType": "Microsoft.Automation/automationAccounts",
    "Resource": "Automation account",
    "Slug": "aa",
    "Scope": "resourceGroup",
    "MinLength": 6,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_-]",
    "ValidationRegex": "^[a-zA-Z][a-zA-Z0-9-]{4,48}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Batch/batchAccounts",
    "Resource": "Batch accounts",
    "Slug": "ba",
    "Scope": "region",
    "MinLength": 3,
    "MaxLength": 24,
    "Lowercase": true,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9a-z]",
    "ValidationRegex": "^[a-z0-9]{3,24}$"
  },
  {
    "ResourceType": "Microsoft.BotService/botServices",
    "Resource": "Bot service",
    "Slug": "bot",
    "Scope": "global",
    "MinLength": 2,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{1,63}$"
  },
  {
    "ResourceType": "Microsoft.Cache/RedisEnterprise",
    "Resource": "Azure Managed Redis",
    "Slug": "amr",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Cdn/profiles",
    "Resource": "CDN profile",
    "Slug": "cdnp",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,258}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Cdn/profiles",
    "Resource": "Front Door (Standard/Premium) profile",
    "Slug": "afd",
    "Scope": "global",
    "MinLength": 5,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{3,62}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Cdn/profiles/endpoints",
    "Resource": "CDN endpoint",
    "Slug": "cdne",
    "Scope": "global",
    "MinLength": 1,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{0,48}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.CognitiveServices/accounts",
    "Resource": "Content moderator",
    "Slug": "cm",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Communication/communicationServices",
    "Resource": "Communication Services",
    "Slug": "acs",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_-]",
    "ValidationRegex": "^[a-zA-Z0-9_-]{1,64}$"
  },
  {
    "ResourceType": "Microsoft.Compute/availabilitySets",
    "Resource": "Availability set",
    "Slug": "avail",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Compute/diskEncryptionSets",
    "Resource": "Disk encryption set",
    "Slug": "des",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_-]",
    "ValidationRegex": "^[a-zA-Z0-9-_]{1,80}$"
  },
  {
    "ResourceType": "Microsoft.Compute/disks",
    "Resource": "Managed disk (data)",
    "Slug": "disk",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9_.-]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Compute/galleries",
    "Resource": "Gallery",
    "Slug": "gal",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9A-Za-z_.]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9._]{0,78}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Compute/proximityPlacementGroups",
    "Resource": "Proximity placement group",
    "Slug": "ppg",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^a-zA-Z0-9\\-\\._]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9\\-\\._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Compute/snapshots",
    "Resource": "Snapshot",
    "Slug": "snap",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Compute/virtualMachines",
    "Resource": "Virtual machine",
    "Slug": "vm",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[\\/\\\"\\[\\]:|<>+=;,?*@&_]",
    "ValidationRegex": "^[^\\/\\\"\\[\\]:|<>+=;,?*@&_][^\\/\\\"\\[\\]:|<>+=;,?*@&]{0,62}[^\\/\\\"\\[\\]:|<>+=;,?*@&.-]$"
  },
  {
    "ResourceType": "Microsoft.Compute/virtualMachineScaleSets",
    "Resource": "Virtual machine scale set",
    "Slug": "vmss",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[\\/\\\"\\[\\]:|<>+=;,?*@&_]",
    "ValidationRegex": "^[^\\/\\\"\\[\\]:|<>+=;,?*@&_][^\\/\\\"\\[\\]:|<>+=;,?*@&]{0,62}[^\\/\\\"\\[\\]:|<>+=;,?*@&.-]$"
  },
  {
    "ResourceType": "Microsoft.ContainerInstance/containerGroups",
    "Resource": "Container instance",
    "Slug": "ci",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 63,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9a-z-]",
    "ValidationRegex": "^[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$"
  },
  {
    "ResourceType": "Microsoft.ContainerRegistry/registries",
    "Resource": "Container registry",
    "Slug": "cr",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 63,
    "Lowercase": true,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9A-Za-z]",
    "ValidationRegex": "^[a-zA-Z0-9]{1,63}$"
  },
  {
    "ResourceType": "Microsoft.ContainerService/fleets",
    "Resource": "AKS Fleet manager",
    "Slug": "fleet",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 63,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9a-z-]",
    "ValidationRegex": "^[0-9a-z]([0-9a-z-]{0,61}[0-9a-z])?$"
  },
  {
    "ResourceType": "Microsoft.ContainerService/managedClusters",
    "Resource": "AKS cluster",
    "Slug": "aks",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_]{0,61}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Databricks/workspaces",
    "Resource": "Azure Databricks workspace",
    "Slug": "dbw",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_-]",
    "ValidationRegex": "^[a-zA-Z0-9-_]{3,64}$"
  },
  {
    "ResourceType": "Microsoft.DataFactory/factories",
    "Resource": "Azure Data Factory",
    "Slug": "adf",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.DataLakeStore/accounts",
    "Resource": "Data Lake Store account",
    "Slug": "dls",
    "Scope": "parent",
    "MinLength": 3,
    "MaxLength": 24,
    "Lowercase": false,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9a-z]",
    "ValidationRegex": "^[a-z0-9]{3,24}$"
  },
  {
    "ResourceType": "Microsoft.DataMigration/services",
    "Resource": "Database Migration Service instance",
    "Slug": "dms",
    "Scope": "resourceGroup",
    "MinLength": 2,
    "MaxLength": 62,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{1,61}$"
  },
  {
    "ResourceType": "Microsoft.DBforMySQL/servers",
    "Resource": "MySQL database",
    "Slug": "mysql",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-z0-9][a-zA-Z0-9-]{1,61}[a-z0-9]$"
  },
  {
    "ResourceType": "Microsoft.DesktopVirtualization/applicationGroups",
    "Resource": "Virtual desktop application group",
    "Slug": "vdag",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z _.-]",
    "ValidationRegex": "^[a-zA-Z0-9 ][a-zA-Z0-9-._ ]{0,258}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.DesktopVirtualization/hostPools",
    "Resource": "Virtual desktop host pool",
    "Slug": "vdpool",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z _.-]",
    "ValidationRegex": "^[a-zA-Z0-9 ][a-zA-Z0-9-._ ]{0,258}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.DesktopVirtualization/workspaces",
    "Resource": "Virtual desktop workspace",
    "Slug": "vdws",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z _.-]",
    "ValidationRegex": "^[a-zA-Z0-9 ][a-zA-Z0-9-._ ]{0,258}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Devices/IotHubs",
    "Resource": "IoT hub",
    "Slug": "iot",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,48}[a-z0-9]$"
  },
  {
    "ResourceType": "Microsoft.DocumentDB/databaseAccounts",
    "Resource": "Azure Cosmos DB for Apache Cassandra account",
    "Slug": "coscas",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 255,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{0,253}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.DocumentDb/databaseAccounts",
    "Resource": "Azure Cosmos DB for Apache Gremlin account",
    "Slug": "cosgrm",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 255,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{0,253}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases",
    "Resource": "Azure Cosmos DB database",
    "Slug": "cosmos",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 44,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9a-z-]",
    "ValidationRegex": "^[a-z0-9][a-z0-9-]{0,42}[a-z0-9]$"
  },
  {
    "ResourceType": "Microsoft.EventGrid/domains",
    "Resource": "Event Grid domain",
    "Slug": "evgd",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9-]{3,50}$"
  },
  {
    "ResourceType": "Microsoft.EventGrid/domains/topics",
    "Resource": "Event Grid topic",
    "Slug": "evgt",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "`[^0-9A-Za-z-]`",
    "ValidationRegex": "^[a-zA-Z0-9-]{3,50}$"
  },
  {
    "ResourceType": "Microsoft.EventGrid/eventSubscriptions",
    "Resource": "Event Grid subscriptions",
    "Slug": "evgs",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9-]{3,64}$"
  },
  {
    "ResourceType": "Microsoft.EventGrid/systemTopics",
    "Resource": "Event Grid system topic",
    "Slug": "egst",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9-]{3,50}$"
  },
  {
    "ResourceType": "Microsoft.EventHub/namespaces",
    "Resource": "Event Hubs namespace",
    "Slug": "evhns",
    "Scope": "global",
    "MinLength": 1,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z][a-zA-Z0-9-]{0,48}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.EventHub/namespaces/eventHubs",
    "Resource": "Event hub",
    "Slug": "evh",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,48}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.HDInsight/clusters",
    "Resource": "HDInsight - Spark cluster",
    "Slug": "spark",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 59,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,57}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.HDInsight/clusters",
    "Resource": "HDInsight - Storm cluster",
    "Slug": "storm",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 59,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,57}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.HDInsight/clusters",
    "Resource": "HDInsight - ML Services cluster",
    "Slug": "mls",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 59,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,57}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.HDInsight/clusters",
    "Resource": "HDInsight - HBase cluster",
    "Slug": "hbase",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 59,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,57}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.HDInsight/clusters",
    "Resource": "HDInsight - Hadoop cluster",
    "Slug": "hadoop",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 59,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,57}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.HDInsight/clusters",
    "Resource": "HDInsight - Kafka cluster",
    "Slug": "kafka",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 59,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,57}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Insights/actionGroups",
    "Resource": "Azure Monitor action group",
    "Slug": "ag",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "`[^~!@$^*()\\[\\]\\{\\}_\\-=\"';,0-9A-Za-z _.-]`",
    "ValidationRegex": "^[^|:<>+#%&\\?/]{0,259}[^|:<>+#%&\\?/. ]$"
  },
  {
    "ResourceType": "Microsoft.Insights/components",
    "Resource": "Application Insights",
    "Slug": "appi",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[^%&\\?/. ][^%&\\?/]{0,258}[^%&\\?/. ]$"
  },
  {
    "ResourceType": "Microsoft.Insights/dataCollectionEndpoints",
    "Resource": "Data collection endpoint",
    "Slug": "dce",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 44,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,42}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Insights/dataCollectionRules",
    "Resource": "Azure Monitor data collection rule",
    "Slug": "dcr",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 44,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,42}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Insights/privateLinkScopes",
    "Resource": "Azure Monitor Private Link Scope",
    "Slug": "ampls",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 255,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-._()]",
    "ValidationRegex": "^[0-9A-Za-z-._()]{0,254}[0-9A-Za-z-_()]$"
  },
  {
    "ResourceType": "Microsoft.KeyVault/vaults",
    "Resource": "Key vault",
    "Slug": "kv",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 24,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z][a-zA-Z0-9-]{1,22}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Kusto/clusters",
    "Resource": "Azure Data Explorer cluster",
    "Slug": "dec",
    "Scope": "global",
    "MinLength": 4,
    "MaxLength": 22,
    "Lowercase": false,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9A-Za-z]",
    "ValidationRegex": "^[a-z][a-z0-9]{3,21}$"
  },
  {
    "ResourceType": "Microsoft.Kusto/clusters/databases",
    "Resource": "Azure Data Explorer cluster database",
    "Slug": "dedb",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z- .]",
    "ValidationRegex": "^[a-zA-Z0-9- .]{1,260}$"
  },
  {
    "ResourceType": "Microsoft.Logic/integrationAccounts",
    "Resource": "Integration account",
    "Slug": "ia",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z\\(\\-\\)_\\.]",
    "ValidationRegex": "^[0-9A-Za-z\\(\\-\\)_\\.]{1,80}$"
  },
  {
    "ResourceType": "Microsoft.Logic/workflows",
    "Resource": "Logic app",
    "Slug": "logic",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z\\(\\-\\)_\\.]",
    "ValidationRegex": "^[0-9A-Za-z\\(\\-\\)_\\.]{1,80}$"
  },
  {
    "ResourceType": "Microsoft.MachineLearningServices/workspaces",
    "Resource": "Azure Machine Learning workspace",
    "Slug": "mlw",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[<>*%:.?\\+\\/]",
    "ValidationRegex": "^[^<>*%:.?\\+\\/]{0,259}[^<>*%:.?\\+\\/ ]$"
  },
  {
    "ResourceType": "Microsoft.ManagedIdentity/userAssignedIdentities",
    "Resource": "Managed identity",
    "Slug": "id",
    "Scope": "parent",
    "MinLength": 3,
    "MaxLength": 128,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9a-zA-Z-_]",
    "ValidationRegex": "^[0-9a-zA-Z][0-9a-zA-Z-_]{2,127}$"
  },
  {
    "ResourceType": "Microsoft.Management/managementGroups",
    "Resource": "Management group",
    "Slug": "mg",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 90,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-_.()]",
    "ValidationRegex": "^[a-zA-Z0-9-_.()]{1,90}$"
  },
  {
    "ResourceType": "Microsoft.Maps/accounts",
    "Resource": "Maps account",
    "Slug": "map",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 98,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,97}$"
  },
  {
    "ResourceType": "Microsoft.Migrate/assessmentProjects",
    "Resource": "Azure Migrate project",
    "Slug": "migr",
    "Scope": "parent",
    "MinLength": 2,
    "MaxLength": 57,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{1,56}$"
  },
  {
    "ResourceType": "Microsoft.Mission/communities/dedicatedHubs",
    "Resource": "Azure Enclave dedicated hub",
    "Slug": "dh",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/applicationGateways",
    "Resource": "Application gateway",
    "Slug": "agw",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/applicationSecurityGroups",
    "Resource": "Application security group (ASG)",
    "Slug": "asg",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/azureFirewalls",
    "Resource": "Firewall",
    "Slug": "afw",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/bastionHosts",
    "Resource": "Azure Bastion",
    "Slug": "bas",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/dnsResolvers",
    "Resource": "DNS private resolver",
    "Slug": "dnspr",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_-]",
    "ValidationRegex": "^[a-zA-Z][a-zA-Z0-9-_]{1,78}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Network/expressRouteCircuits",
    "Resource": "ExpressRoute circuit",
    "Slug": "erc",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/firewallPolicies",
    "Resource": "Web Application Firewall (WAF) policy",
    "Slug": "waf",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9](?:[a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_])?$"
  },
  {
    "ResourceType": "Microsoft.Network/firewallPolicies",
    "Resource": "Firewall policy",
    "Slug": "afwp",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/frontDoors",
    "Resource": "Front Door (classic)",
    "Slug": "afd",
    "Scope": "global",
    "MinLength": 5,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{3,62}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Network/loadBalancers/inboundNatRules",
    "Resource": "Load balancer rule",
    "Slug": "rule",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9](?:[a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_])?$"
  },
  {
    "ResourceType": "Microsoft.Network/localNetworkGateways",
    "Resource": "Local network gateway",
    "Slug": "lgw",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/natGateways",
    "Resource": "NAT gateway",
    "Slug": "ng",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/networkInterfaces",
    "Resource": "Network interface (NIC)",
    "Slug": "nic",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/networkSecurityGroups",
    "Resource": "Network security group (NSG)",
    "Slug": "nsg",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/networkSecurityGroups/securityRules",
    "Resource": "Network security group (NSG) security rules",
    "Slug": "nsgsr",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/networkWatchers",
    "Resource": "Network Watcher",
    "Slug": "nw",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/privateLinkServices",
    "Resource": "Private Link",
    "Slug": "pl",
    "Scope": "resourceGroup",
    "MinLength": 2,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9_.-]{0,62}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/publicIPAddresses",
    "Resource": "Public IP address",
    "Slug": "pip",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/publicIPPrefixes",
    "Resource": "Public IP address prefix",
    "Slug": "ippre",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/routeFilters",
    "Resource": "Route filter",
    "Slug": "rf",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/routeTables",
    "Resource": "Route table",
    "Slug": "rt",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/routeTables/routes",
    "Resource": "User defined route (UDR)",
    "Slug": "udr",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/trafficManagerProfiles",
    "Resource": "Traffic Manager profile",
    "Slug": "traf",
    "Scope": "global",
    "MinLength": 1,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-.]{0,61}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/virtualHubs",
    "Resource": "Virtual WAN Hub",
    "Slug": "vhub",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,48}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/virtualNetworkGateways",
    "Resource": "Virtual network gateway",
    "Slug": "vgw",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/virtualNetworkGateways",
    "Resource": "ExpressRoute gateway",
    "Slug": "ergw",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/virtualNetworks",
    "Resource": "Virtual network",
    "Slug": "vnet",
    "Scope": "resourceGroup",
    "MinLength": 2,
    "MaxLength": 64,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,62}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/virtualNetworks/subnets",
    "Resource": "Virtual network subnet",
    "Slug": "snet",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/virtualNetworks/virtualNetworkPeerings",
    "Resource": "Virtual network peering",
    "Slug": "peer",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/virtualWans",
    "Resource": "Virtual WAN",
    "Slug": "vwan",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/vpnGateways",
    "Resource": "VPN Gateway",
    "Slug": "vpng",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-_.]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/vpnGateways/vpnConnections",
    "Resource": "VPN connection",
    "Slug": "vcn",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.Network/vpnGateways/vpnSites",
    "Resource": "VPN site",
    "Slug": "vst",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 80,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,78}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.NotificationHubs/namespaces",
    "Resource": "Notification Hubs namespace",
    "Slug": "ntfns",
    "Scope": "global",
    "MinLength": 6,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z][a-zA-Z0-9-]{4,48}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.NotificationHubs/namespaces/notificationHubs",
    "Resource": "Notification Hubs",
    "Slug": "ntf",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,259}$"
  },
  {
    "ResourceType": "Microsoft.OperationalInsights/workspaces",
    "Resource": "Log Analytics workspace",
    "Slug": "log",
    "Scope": "parent",
    "MinLength": 4,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{2,61}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.PowerBIDedicated/capacities",
    "Resource": "Power BI Embedded",
    "Slug": "pbi",
    "Scope": "region",
    "MinLength": 3,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9a-z]",
    "ValidationRegex": "^[a-z0-9][a-z0-9]{2,62}$"
  },
  {
    "ResourceType": "Microsoft.Purview/accounts",
    "Resource": "Microsoft Purview instance",
    "Slug": "pview",
    "Scope": "subscription",
    "MinLength": 3,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9_-]$"
  },
  {
    "ResourceType": "Microsoft.RecoveryServices/vaults",
    "Resource": "Recovery Services vault",
    "Slug": "rsv",
    "Scope": "resourceGroup",
    "MinLength": 2,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "`[^a-zA-Z0-9-]`",
    "ValidationRegex": "^[a-zA-Z][a-zA-Z0-9-]{1,49}$"
  },
  {
    "ResourceType": "Microsoft.Resources/resourceGroups",
    "Resource": "Resource group",
    "Slug": "rg",
    "Scope": "subscription",
    "MinLength": 1,
    "MaxLength": 90,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "`[^a-zA-Z0-9-._\\(\\)]`",
    "ValidationRegex": "^[a-zA-Z0-9-._\\(\\)]{0,89}[a-zA-Z0-9-_\\(\\)]$"
  },
  {
    "ResourceType": "Microsoft.Search/searchServices",
    "Resource": "AI Search",
    "Slug": "srch",
    "Scope": "global",
    "MinLength": 2,
    "MaxLength": 60,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[a-z0-9-]*--[a-z0-9-]*$",
    "ValidationRegex": "^[a-z0-9](?:[a-z0-9-]{0,58}[a-z0-9])?$"
  },
  {
    "ResourceType": "Microsoft.ServiceBus/namespaces",
    "Resource": "Service Bus namespace",
    "Slug": "sbns",
    "Scope": "global",
    "MinLength": 6,
    "MaxLength": 50,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z][a-zA-Z0-9-]{4,48}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.ServiceBus/namespaces/queues",
    "Resource": "Service Bus queue",
    "Slug": "sbq",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,258}[a-zA-Z0-9_]$"
  },
  {
    "ResourceType": "Microsoft.ServiceBus/namespaces/topics",
    "Resource": "Service Bus topic",
    "Slug": "sbt",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 260,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_.-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-._]{0,258}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.ServiceFabric/clusters",
    "Resource": "Service Fabric cluster",
    "Slug": "sf",
    "Scope": "region",
    "MinLength": 4,
    "MaxLength": 23,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9a-z-]",
    "ValidationRegex": "^[a-z][a-z0-9-]{2,21}[a-z0-9]$"
  },
  {
    "ResourceType": "Microsoft.SignalRService/SignalR",
    "Resource": "SignalR",
    "Slug": "sigr",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Sql/managedInstances",
    "Resource": "SQL Managed Instance",
    "Slug": "sqlmi",
    "Scope": "global",
    "MinLength": 1,
    "MaxLength": 63,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Sql/servers",
    "Resource": "Azure SQL Database server",
    "Slug": "sql",
    "Scope": "global",
    "MinLength": 1,
    "MaxLength": 63,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Sql/servers/databases",
    "Resource": "Azure SQL database",
    "Slug": "sqldb",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 128,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[<>*%:.?\\+\\/ ]",
    "ValidationRegex": "^[^<>*%:.?\\+\\/]{1,127}[^<>*%:.?\\+\\/ ]$"
  },
  {
    "ResourceType": "Microsoft.Sql/servers/elasticpool",
    "Resource": "Azure SQL Elastic Pool",
    "Slug": "sqlep",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 128,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[<>*%:.?\\+\\/]",
    "ValidationRegex": "^[^<>*%:.?\\+\\/]{1,127}[^<>*%:.?\\+\\/ ]$"
  },
  {
    "ResourceType": "Microsoft.Storage/storageAccounts",
    "Resource": "Storage account",
    "Slug": "st",
    "Scope": "global",
    "MinLength": 3,
    "MaxLength": 24,
    "Lowercase": true,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9a-z]",
    "ValidationRegex": "^[a-z0-9]{3,24}$"
  },
  {
    "ResourceType": "Microsoft.StreamAnalytics/cluster",
    "Resource": "Azure Stream Analytics",
    "Slug": "asa",
    "Scope": "resourceGroup",
    "MinLength": 3,
    "MaxLength": 63,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z_-]",
    "ValidationRegex": "^[a-zA-Z0-9-_]{3,63}$"
  },
  {
    "ResourceType": "Microsoft.Synapse/privateLinkHubs",
    "Resource": "Azure Synapse Analytics private link hub",
    "Slug": "synplh",
    "Scope": "subscription",
    "MinLength": 1,
    "MaxLength": 45,
    "Lowercase": true,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9a-z]",
    "ValidationRegex": "^[a-z0-9]{1,45}$"
  },
  {
    "ResourceType": "Microsoft.Synapse/workspaces",
    "Resource": "Azure Synapse Analytics workspaces",
    "Slug": "synw",
    "Scope": "global",
    "MinLength": 1,
    "MaxLength": 50,
    "Lowercase": true,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9a-z-]",
    "ValidationRegex": "^[a-z0-9](?:[a-z0-9-]{0,48}[a-z0-9])?$"
  },
  {
    "ResourceType": "Microsoft.Synapse/workspaces/bigDataPools",
    "Resource": "Azure Synapse Analytics Spark Pool",
    "Slug": "synsp",
    "Scope": "parent",
    "MinLength": 1,
    "MaxLength": 15,
    "Lowercase": true,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9a-zA-Z]",
    "ValidationRegex": "^[0-9a-zA-Z]{1,15}$"
  },
  {
    "ResourceType": "Microsoft.Synapse/workspaces/sqlPools",
    "Resource": "Azure Synapse Analytics SQL Dedicated Pool",
    "Slug": "syndp",
    "Scope": "subscription",
    "MinLength": 3,
    "MaxLength": 15,
    "Lowercase": false,
    "Dashes": false,
    "InvalidCharsRegex": "[^0-9A-Za-z_]",
    "ValidationRegex": "^[a-zA-Z0-9][a-zA-Z0-9_]{1,13}[a-zA-Z0-9]$"
  },
  {
    "ResourceType": "Microsoft.Web/hostingEnvironments",
    "Resource": "App Service environment",
    "Slug": "ase",
    "Scope": "resourceGroup",
    "MinLength": 2,
    "MaxLength": 36,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[0-9A-Za-z-]{2,36}$"
  },
  {
    "ResourceType": "Microsoft.Web/serverFarms",
    "Resource": "App Service plan",
    "Slug": "asp",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 40,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[0-9A-Za-z-]{1,40}$"
  },
  {
    "ResourceType": "Microsoft.Web/sites",
    "Resource": "Web app",
    "Slug": "app",
    "Scope": "global",
    "MinLength": 2,
    "MaxLength": 60,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[0-9A-Za-z][0-9A-Za-z-]{0,58}[0-9a-zA-Z]$"
  },
  {
    "ResourceType": "Microsoft.Web/sites",
    "Resource": "Function app",
    "Slug": "func",
    "Scope": "global",
    "MinLength": 2,
    "MaxLength": 60,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[0-9A-Za-z][0-9A-Za-z-]{0,58}[0-9a-zA-Z]$"
  },
  {
    "ResourceType": "Microsoft.Web/staticSites",
    "Resource": "Static web app",
    "Slug": "stapp",
    "Scope": "resourceGroup",
    "MinLength": 1,
    "MaxLength": 40,
    "Lowercase": false,
    "Dashes": true,
    "InvalidCharsRegex": "[^0-9A-Za-z-]",
    "ValidationRegex": "^[a-zA-Z0-9-]{1,40}$"
  }
]