Static Web Apps: custom domain stuck on "Validation failed" – "An unknown error has occurred while adding your custom domain" despite correct CNAME, confirmed via REST API / CLI

Philipp Losbichler 20 Zuverlässigkeitspunkte
2026-08-12T19:26:43.7733333+00:00

I am posting here because the Azure portal does not offer a technical support ticket option for Static Web Apps and explicitly redirects to Microsoft Q&A, so this is the only channel available to me for this issue.

Environment

  • Resource type: [Microsoft.Web/staticSites] (Azure Static Web Apps), API version 2025-05-01
  • Region: Germany West Central
  • Two custom domains on the same Static Web App, both subdomains of the same zone (e.g. app.example.com and dam.example.com)
  • Auto-generated hostname (<generated>.azurestaticapps.net): status Validated, site is served correctly over that hostname
  • Hostname record type: CNAME

Problem Both custom domains are permanently in the state "Validation failed". Every attempt to add them or re-trigger validation ends with the same generic message:

An unknown error has occurred while adding your custom domain. Please try again later.

DNS is confirmed correct and fully propagated Verified via [dnschecker.org] (CNAME lookup) across many public resolvers worldwide (Google, OpenDNS, Quad9, Akamai and others). Every resolver returns the correct target, i.e. the auto-generated <generated>.azurestaticapps.net hostname, with a green check. Records have been in place far beyond the documented 48-hour propagation window.

Reproduced directly against the REST API / az cli (bypassing the portal) To rule out a portal-only bug, I re-triggered validation via az staticwebapp hostname set --validation-method cname-delegation --debug. This confirms the error is server-side, not a portal rendering issue:

POST /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.Web/staticSites/{app}/customDomains/dam.example.com/validate?api-version=2025-05-01
→ 200 OK

PUT /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.Web/staticSites/{app}/customDomains/dam.example.com?api-version=2025-05-01
→ 200 OK
{
  "createdOn": "2026-08-12T18:45:03.126808+00:00",
  "domainName": "dam.example.com",
  "errorMessage": "An unknown error has occurred while adding your custom domain. Please try again later.",
  "status": "Failed",
  "validationToken": null
}

Two things stand out that I'd like an engineer to check server-side:

  1. Total round trip was ~2.2 seconds. That is far too fast for a genuine external CNAME resolution against a live DNS record, which suggests no fresh validation attempt actually ran and the endpoint is just returning a previously stored Failed state.
  2. createdOn is ~35 minutes older than the request timestamp, reinforcing that this looks like a stale/cached error object being re-served rather than a new validation cycle.

The call returned HTTP 200 (not a 4xx/5xx), so this is not an auth or malformed-request issue – the error is stored inside the domain resource itself.

What I have tried

  • Re-triggering validation repeatedly over several hours, both via portal and via az cli / REST directly
  • Deleting the custom domain entry and adding it again from scratch (even the delete got stuck)
  • Confirming global CNAME propagation via [dnschecker.org] (all resolvers correct)
  • Confirming the auto-generated hostname itself is validated and serving the app

Questions

  1. Given the request IDs above, can someone check the backend logs for why this domain object is stuck with a stored Failed/generic error state instead of running a fresh validation?
  2. Is there a known cause for this generic "unknown error" when DNS is verifiably correct and the round-trip timing suggests no real validation attempt occurred?
  3. Can a stale or orphaned custom-domain binding on the backend (e.g. left over from a previously deleted Static Web App or App Service, possibly in a different subscription) cause the hostname to be silently rejected, and if so, can it be cleared from the backend?
  4. Would a CAA record in the zone that does not permit the issuing CA cause this same generic error rather than a certificate-specific one at this stage?
  5. Given that no technical support ticket can be opened for Static Web Apps from the portal, what is the intended escalation path when both the portal and the REST API return no diagnostic detail beyond this generic message?

Happy to provide the full resource ID, additional --debug output, or DNS records privately to a Microsoft engineer if that helps. This is currently blocking a production go-live on the intended hostnames.I am posting here because the Azure portal does not offer a technical support ticket option for Static Web Apps and explicitly redirects to Microsoft Q&A, so this is the only channel available to me for this issue.

Environment

  • Resource type: [Microsoft.Web/staticSites] (Azure Static Web Apps), API version 2025-05-01
  • Region: Germany West Central
  • Two custom domains on the same Static Web App, both subdomains of the same zone (e.g. app.example.com and dam.example.com)
  • Auto-generated hostname (<generated>.azurestaticapps.net): status Validated, site is served correctly over that hostname
  • Hostname record type: CNAME

Problem
Both custom domains are permanently in the state "Validation failed". Every attempt to add them or re-trigger validation ends with the same generic message:

An unknown error has occurred while adding your custom domain. Please try again later.

DNS is confirmed correct and fully propagated
Verified via [dnschecker.org] (CNAME lookup) across many public resolvers worldwide (Google, OpenDNS, Quad9, Akamai and others). Every resolver returns the correct target, i.e. the auto-generated <generated>.azurestaticapps.net hostname, with a green check. Records have been in place far beyond the documented 48-hour propagation window.

Reproduced directly against the REST API / az cli (bypassing the portal)
To rule out a portal-only bug, I re-triggered validation via az staticwebapp hostname set --validation-method cname-delegation --debug. This confirms the error is server-side, not a portal rendering issue:

POST /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.Web/staticSites/{app}/customDomains/dam.example.com/validate?api-version=2025-05-01
→ 200 OK

PUT /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.Web/staticSites/{app}/customDomains/dam.example.com?api-version=2025-05-01
→ 200 OK
{
  "createdOn": "2026-08-12T18:45:03.126808+00:00",
  "domainName": "dam.example.com",
  "errorMessage": "An unknown error has occurred while adding your custom domain. Please try again later.",
  "status": "Failed",
  "validationToken": null
}

Two things stand out that I'd like an engineer to check server-side:

  1. Total round trip was ~2.2 seconds. That is far too fast for a genuine external CNAME resolution against a live DNS record, which suggests no fresh validation attempt actually ran and the endpoint is just returning a previously stored Failed state.
  2. createdOn is ~35 minutes older than the request timestamp, reinforcing that this looks like a stale/cached error object being re-served rather than a new validation cycle.

The call returned HTTP 200 (not a 4xx/5xx), so this is not an auth or malformed-request issue – the error is stored inside the domain resource itself.

What I have tried

  • Re-triggering validation repeatedly over several hours, both via portal and via az cli / REST directly
  • Deleting the custom domain entry and adding it again from scratch (even the delete got stuck)
  • Confirming global CNAME propagation via [dnschecker.org] (all resolvers correct)
  • Confirming the auto-generated hostname itself is validated and serving the app

Questions

  1. Given the request IDs above, can someone check the backend logs for why this domain object is stuck with a stored Failed/generic error state instead of running a fresh validation?
  2. Is there a known cause for this generic "unknown error" when DNS is verifiably correct and the round-trip timing suggests no real validation attempt occurred?
  3. Can a stale or orphaned custom-domain binding on the backend (e.g. left over from a previously deleted Static Web App or App Service, possibly in a different subscription) cause the hostname to be silently rejected, and if so, can it be cleared from the backend?
  4. Would a CAA record in the zone that does not permit the issuing CA cause this same generic error rather than a certificate-specific one at this stage?
  5. Given that no technical support ticket can be opened for Static Web Apps from the portal, what is the intended escalation path when both the portal and the REST API return no diagnostic detail beyond this generic message?

Happy to provide the full resource ID, additional --debug output, or DNS records privately to a Microsoft engineer if that helps. This is currently blocking a production go-live on the intended hostnames.

Azure Static Web Apps
Azure Static Web Apps

Ein Azure-Dienst, der eine optimierte Full-Stack-Web-App-Entwicklung ermöglicht.


Antwort, die vom Frageautor angenommen wurde
Praneeth Maddali 12,670 Zuverlässigkeitspunkte Externe Microsoft-Mitarbeiter Moderator
2026-08-13T16:50:31.59+00:00

hallo @Philipp Losbichler

ja, es hängt mit DZXC-65Z zusammen

Danke für Ihre Geduld, während wir das überprüft haben.

Wir haben die Bestätigung erhalten, dass Maßnahmen ergriffen wurden, und Ihr Problem mit der benutzerdefinierten Domain sollte nun behoben sein. Könnten Sie bitte die Aktion erneut versuchen und prüfen, ob alles wie erwartet funktioniert?

Wenn Sie weiterhin Probleme haben, antworten Sie bitte mit einem Update und allen relevanten Details. Wir helfen Ihnen gerne weiter und untersuchen das Problem bei Bedarf weiter.

Wir freuen uns darauf, von Ihnen zu hören.

Wenn die Antwort hilfreich ist, klicken Sie bitte auf "Antwort akzeptieren". Ja, dies kann für andere Community-Mitglieder nützlich sein.

Wenn Sie noch andere Fragen haben, lassen Sie es mich in den "Kommentaren" wissen, und ich helfe Ihnen gerne.

War diese Antwort hilfreich?

Eine Person fand diese Antwort hilfreich.

1 zusätzliche Antwort

Sortieren nach: Am hilfreichsten
  1. Philipp Losbichler 20 Zuverlässigkeitspunkte
    2026-08-13T11:18:20.6+00:00

    Hi @Praneeth Maddali ,

    I think I found the missing piece: I just received a Service Health advisory in the Azure Portal that appears directly related.

    Tracking ID: DZXC-65Z – "Active - Azure Static Web Apps custom domain operations issue in multiple regions"

    • Status: Active, Warning
    • Start time: 2026-08-12T13:04:13Z (customer-facing impact noted from 14:30 UTC on 11 Aug 2026)
    • Region(s): Global
    • Impact statement: "you have been identified as an affected customer using Azure Static Web Apps in multiple regions who may experience failures or delays when deleting custom domains for resources hosted in the region"
    • Root cause (per the advisory): an increased backlog in the certificate synchronization processing queues, currently being drained via mitigation

    This lines up closely with what I've been observing:

    • The unusually fast (~2–3 second) round-trip on my az cli --debug calls, with the domain object immediately coming back with a stored "status": "Failed" – consistent with a request landing in an already-backlogged queue rather than a fresh validation actually running
    • The fact that this reproduces identically across three different subscriptions, resource groups, and hostnames – consistent with a global backend queue issue rather than anything specific to my account/tenant, DNS, or resource configuration

    My question: the advisory explicitly mentions delays/failures when deleting custom domains. Could the same certificate synchronization backlog also be causing failures when adding/validating new custom domains? All of my affected domains are stuck in "Validation failed" with the generic "An unknown error has occurred while adding your custom domain" message – not deletion. If the certificate sync queue is shared across create/update/delete operations, a backlog there could plausibly produce this exact symptom on the add/validate path too, even if the advisory's impact statement doesn't call that out explicitly.

    Could you confirm whether DZXC-65Z is expected to also affect custom domain validation/creation, or whether my issue is a separate (if superficially similar) problem that needs its own investigation? If it's the same root cause, I'm happy to just wait for the backlog to clear – but I'd like to know whether to expect these domains to self-heal once the queue is drained, or whether they'll need to be manually reprocessed on your side.

    Thanks, Philipp

    War diese Antwort hilfreich?

    0 Kommentare Keine Kommentare

Ihre Antwort

Antworten können von Fragestellenden als „Angenommen“ und von Moderierenden als „Empfohlen“ gekennzeichnet werden, wodurch Benutzende wissen, dass diese Antwort das Problem des Fragestellenden gelöst hat.