I cannot create a system topic event subscription after re-creating the storage account and system topic.

Robert Vedin 20 Reputation points
2025-08-18T09:26:09.2733333+00:00

My goal is to use event grid to send an event to an azure function whenever a file has been created in blob storage. Every resource is in the same resource group, one for each environment.

I am using bicep to deploy our resources, and the following is what has happened:

  • I deployed a storage account via bicep
  • Then added support for creating system topic, and deployed it
  • Then added support for creating event subscription on the system topic, and deployed it

All went well for our dev-environment, but when I deployed to test it failed with "code":"Internal error". I thought it was due to the event subscription name not being globally unique, so I changed it and deployed again, which did still not work.

After that I have removed all resources (except for the subscriptions and resource groups), both in test and dev, and have been trying to re-deploy to dev but it also fails now.

This is the last error message I got:

{"code":"Internal error","message":"The operation failed due to an internal server error. The initial state of the impacted resources (if any) are restored. Please try again in few minutes. If error still persists, report 119a6007-47e0-49c4-880c-8dd457a5af08:8/18/2025 8:21:56 AM (UTC) to our forums for assistance or raise a support ticket ."}


Maybe there is some system topic or event subscription that was only partially removed and that causes a conflict, and that does not show up in the azure portal?

Azure Event Grid
Azure Event Grid
An Azure event routing service designed for high availability, consistent performance, and dynamic scale.
{count} votes

1 answer

Sort by: Most helpful
  1. Robert Vedin 20 Reputation points
    2025-08-18T14:45:09.1666667+00:00

    The issue was that I had disabled public access and activated a private endpoint on the resource that was the recipient of the event subscription.

    The error message could have been a bit clearer.. but anyway, problem solved!

    Now on to remove the private endpoints and replace them with a Network Security Perimeter instead, which will make the deployment easier and the resources safer than the alternative: public access and ip-allowlisting.


Your answer

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