oai Azure OpenAIAzure OpenAI resource (kind OpenAI). CAF uses 'aif' for Foundry accounts and 'ais' for multi-service accounts.
| CAF abbreviation | oai |
| Resource type | Microsoft.CognitiveServices/accounts |
| Length | 2–64 characters |
| Case | Mixed case |
| Allowed characters | Alphanumerics and hyphens. Start and end with alphanumeric. |
| Uniqueness | Global |
| Separator | Hyphen |
Source: Microsoft Learn, “Naming rules and restrictions for Azure resources”, checked October 2026. Abbreviation from the Cloud Adoption Framework.
A worked name for workload app, env prod, region weu, instance 001.
oai-app-prod-weu-001
Valid
^(?=.{2,64}$)[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$
var name = take('oai-${workload}-${env}-${region}-${instance}', 64)
locals {
name = substr(join("-", compact(["oai", var.workload, var.env, var.region, var.instance])), 0, 64)
}
Azure Policy can't evaluate regular expressions, so a policy can check the oai prefix but not the full format. Run the regex in your pipeline, or audit existing names on a schedule.
Globally unique across all of Azure — the name backs a public DNS label, so a clash with any other tenant's resource fails the deployment. Build in enough entropy (org/region/instance) to avoid collisions.
Open in the name generator