Azure SQL Managed Instance DNS Alias returns ResourceNotFound although resource type is advertised(West Europe)

Kishor kumar Reddy Akki 50 Reputation points
2026-10-01T21:14:55.98+00:00

We are attempting to create a DNS Alias for an Azure SQL Managed Instance using the documented resource type: Microsoft.Sql/managedInstances/dnsAliases

The following has been validated:

  • Managed Instance exists and is in Ready state.
  • Microsoft.Sql resource provider is registered.
  • Resource provider advertises: Microsoft.Sql/managedInstances/dnsAliases
  • API versions exposed include: 2025-01-01 & 2025-02-01-preview & 2025-08-01-preview
  • GET against the Managed Instance succeeds: GET /managedInstances/{MI}
  • GET against the DNS Alias collection returns: GET /managedInstances/{MI}/dnsAliases
    { "error": { "code": "ResourceNotFound" } }
  • PUT against: PUT /managedInstances/{MI}/dnsAliases/{Alias}
  • results in an Activity Log entry for: Microsoft.Sql/managedInstances/dnsAliases/write

but ultimately fails with: HTTP 404 NotFound

The backend error references the regional SQL control-plane endpoint: management.<region>.control.database.windows.net

Additional observations:

  • Resource Graph returns no existing Microsoft.Sql/managedInstances/dnsAliases resources.
  • The issue occurs with multiple API versions.
  • The parent Managed Instance resource is fully accessible.

Questions:

  1. Is Azure SQL Managed Instance DNS Alias currently supported and operational?
  2. Are there any undocumented prerequisites, feature registrations, or regional limitations?
  3. If no aliases exist, should a GET against /managedInstances/{MI}/dnsAliases return an empty collection rather than ResourceNotFound?
  4. Has anyone successfully created an Azure SQL Managed Instance DNS Alias recently using the documented REST APIs?

Any guidance would be appreciated.Additional observations:

  • Resource Graph returns no existing Microsoft.Sql/managedInstances/dnsAliases resources.
  • The issue occurs with multiple API versions.
  • The parent Managed Instance resource is fully accessible.

Questions:

  1. Is Azure SQL Managed Instance DNS Alias currently supported and operational?
  2. Are there any undocumented prerequisites, feature registrations, or regional limitations?
  3. If no aliases exist, should a GET against /managedInstances/{MI}/dnsAliases return an empty collection rather than ResourceNotFound?
  4. Has anyone successfully created an Azure SQL Managed Instance DNS Alias recently using the documented REST APIs?

Any guidance would be appreciated.

Azure SQL Database
0 comments No comments

1 answer

Sort by: Oldest
  1. Andriy Bilous 12,276 Reputation points MVP
    2026-10-02T05:10:24.4133333+00:00

    Hello Kishor kumar Reddy Akki

    I see that Microsoft publishes a complete REST/ARM resource:

    Microsoft.Sql/managedInstances/dnsAliases

    including Create, Get, List, Delete, and Acquire operations. The stable 2025-01-01 REST API even contains successful Managed Instance examples. (Microsoft Learn)

    However, Microsoft's current SQL Database vs SQL Managed Instance feature comparison says:

    • Azure SQL Database: use DNS Alias
    • Azure SQL Managed Instance: use Cliconfg/client-side alias

    So DNS Alias is not currently documented as a normal SQL Managed Instance product capability.

    This is also consistent with the tooling: Azure CLI exposes GA commands under:

    az sql server dns-alias

    but there is no corresponding documented az sql mi dns-alias command.

    Then answering your questions

    1. Is Managed Instance DNS Alias supported?
      The ARM/REST contract exists, but the SQL MI product documentation does not currently establish DNS Alias as a generally supported MI feature. I would not assume that advertising the resource type means the backend capability is enabled.
    2. Is this a West Europe limitation?
      This therefore looks more like a general feature/API inconsistency than a documented regional limitation.
    3. Should List return an empty collection?
      According to the REST contract, yes. List By Managed Instance is documented to return 200 OK with a list result. A 404 ResourceNotFound for the collection while the parent MI exists is not the documented "zero aliases" response.

    I would recoomend stop testing additional API versions. You have already demonstrated that ARM accepts the resource type and routes the operation to the SQL control plane.

    For a supported workaround today, Microsoft's feature comparison recommends a client-side SQL alias (Cliconfg) for SQL Managed Instance rather than Azure DNS Alias. (Microsoft Learn)

    This is most likely an exposed-but-not-generally-supported SQL MI API surface or a service-side implementation/documentation defect, rather than an incorrect REST request.

    The current Microsoft feature matrix gives stronger evidence that DNS Alias is not actually a supported SQL MI product feature despite the published REST resource.

    Was this answer helpful?

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.