Troubleshoot Azure Event Grid errors

This troubleshooting guide provides you the following information:

  • Azure Event Grid error codes
  • Error messages
  • Descriptions for the errors
  • Recommended actions that you should take when you receive these errors.

Error code: 400

Error code Error message Description Recommendation
HttpStatusCode.BadRequest
400
Topic name must be between 3 and 50 characters in length. The custom topic name length should be between 3 and 50 characters in length. Only alphanumeric letters, digits and the '-' character are allowed in the topic name. Also, the name shouldn't start with the following reserved words:
  • Microsoft-
  • EventGrid-
  • System-
Choose a different topic name that adheres to the topic name requirements.
HttpStatusCode.BadRequest
400
Domain name must be between 3 and 50 characters in length. The domain name length should be between 3 and 50 characters in length. Only alphanumeric letters, digits and the '-' character are allowed in the domain name. Also, the name shouldn't start with the following reserved words:
  • Microsoft-
  • EventGrid-
  • System-
Choose a different domain name that adheres to the domain name requirements.
HttpStatusCode.BadRequest
400
Invalid expiration time. The expiration time for the event subscription determines when the event subscription will retire. This value should be a valid DateTime value in the future. Make sure the Event Subscription expiration time in a valid DateTime format and it's set to be in the future.

Error code: 409

Error code Error message Description Recommended action
HttpStatusCode.Conflict
409
Topic with the specified name already exists. Choose a different topic name. The custom topic name should be unique in a single Azure region to ensure a correct publishing operation. The same name can be used in different Azure regions. Choose a different name for the topic.
HttpStatusCode.Conflict
409
Domain with the specified already exists. Choose a different domain name. The domain name should be unique in a single Azure region to ensure a correct publishing operation. The same name can be used in different Azure regions. Choose a different name for the domain.
HttpStatusCode.Conflict
409
Quota limit reached. For more information on these limits, see Azure Event Grid limits. Each Azure subscription has a limit on the number of Azure Event Grid resources that it can use. Some or all of this quota had been exceeded and no more resources could be created. Check your current resources usage and delete any that aren't needed. If you can't delete any resources, create another Azure subscription and create Event Grid resources in that subscription.

Error code: 403

Error code Error message Description Recommended action
HttpStatusCode.Forbidden
403
Publishing to {Topic/Domain} by client {IpAddress} is rejected because of IpAddress filtering rules. The topic or domain has IP firewall rules configured and access is restricted only to configured IP addresses. Add the IP address to the IP firewall rules, see Configure IP firewall
HttpStatusCode.Forbidden
403
Publishing to {Topic/Domain} by client is rejected as request came from Private Endpoint and no matching private endpoint connection found for the resource. The topic or domain has private endpoints and publish request came from a private endpoint that's not configured or approved. Configure a private endpoint for the topic/domain. Configure private endpoints

Also, check if your webhook is behind an Azure Application Gateway or Web Application Firewall. If it is, disable the following firewall rules and do an HTTP POST again:

  • 920300 (Request missing an accept header)
  • 942430 (Restricted SQL character anomaly detection (args): # of special characters exceeded (12))
  • 920230 (Multiple URL encoding detected)
  • 942130 (SQL injection attack: SQL tautology detected.)
  • 931130 (Possible remote file inclusion (RFI) attack = Off-domain reference/link)

Next steps

If you need more help, post your issue in the Stack Overflow forum or open a support ticket.