I'm trying to read/subscribe to events from Azure Eventgrid usiong python. I have no issues publishing messages over to Eventgrid. However, I'm not able to connect and receive those messages on the other side.
This is the error I keep receiving
azure.core.exceptions.ResourceNotFoundError: (NotFound) No HTTP resource was found that matches the request URI 'https%3A%2F%2Fegt-cus-vmmdtest-dev-ahrjs-02.centralus-1.eventgrid.azure.net%2Ftopics%2Fegt-cus-vmmdtest-dev-ahrjs-02%2Feventsubscriptions%2F0c535c03-373b-4ce5-a538-ab1832d91e49%3Areceive'. Report '97b6c993-f524-46c9-adc8-cb6124b59de2:3:5/30/2025 9:02:49 PM (UTC)' to our forums for assistance or raise a support ticket.
Code: NotFound
Message: No HTTP resource was found that matches the request URI 'https%3A%2F%2Fegt-cus-vmmdtest-dev-ahrjs-02.centralus-1.eventgrid.azure.net%2Ftopics%2Fegt-cus-vmmdtest-dev-ahrjs-02%2Feventsubscriptions%2F0c535c03-373b-4ce5-a538-ab1832d91e49%3Areceive'. Report '97b6c993-f524-46c9-adc8-cb6124b59de2:3:5/30/2025 9:02:49 PM (UTC)' to our forums for assistance or raise a support ticket.
Exception Details: (ResourceNotFound) No HTTP resource was found that matches the request URI 'https%3A%2F%2Fegt-cus-vmmdtest-dev-ahrjs-02.centralus-1.eventgrid.azure.net%2Ftopics%2Fegt-cus-vmmdtest-dev-ahrjs-02%2Feventsubscriptions%2F0c535c03-373b-4ce5-a538-ab1832d91e49%3Areceive'. Report '97b6c993-f524-46c9-adc8-cb6124b59de2:3:5/30/2025 9:02:49 PM (UTC)' to our forums for assistance or raise a support ticket.
Code: ResourceNotFound
Message: No HTTP resource was found that matches the request URI 'https%3A%2F%2Fegt-cus-vmmdtest-dev-ahrjs-02.centralus-1.eventgrid.azure.net%2Ftopics%2Fegt-cus-vmmdtest-dev-ahrjs-02%2Feventsubscriptions%2F0c535c03-373b-4ce5-a538-ab1832d91e49%3Areceive'. Report '97b6c993-f524-46c9-adc8-cb6124b59de2:3:5/30/2025 9:02:49 PM (UTC)' to our forums for assistance or raise a support ticket
Here is the sample script I have to read. I tried both private endpoint as well as public endpoint.
import os
import uuid
import datetime as dt
from azure.core.credentials import AzureKeyCredential
from azure.eventgrid import EventGridConsumerClient
key = "XXXXXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
endpoint = "https://egt-cus-xxxxx-dev-ahrjs-02.xxxx-1.eventgrid.azure.net/api/events"
# endpoint = "https://egt-cus-xxxx-dev-ahrjs-02.xxxxx-1.privatelink.eventgrid.azure.net/api/events"
topic_name = "egt-cus-vmmdtest-dev-ahrjs-02"
sub_name = "XXXXXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
release_events = []
acknowledge_events = []
reject_events = []
credential = AzureKeyCredential(key)
client = EventGridConsumerClient(endpoint, credential, namespace_topic=topic_name, subscription=sub_name)
events = client.receive(max_events=15)
for detail in events.value:
data = detail.event.data
print("Data from eventgrid")
print("=====================")
print(data)
broker_properties = detail.broker_properties
if data == "release":
release_events.append(broker_properties.lock_token)
elif data == "acknowledge":
acknowledge_events.append(broker_properties.lock_token)
else:
reject_events.append(broker_properties.lock_token)
# Renew all Locks
renew_tokens = e.broker_properties.lock_token
renew_result = client.renew_locks(
lock_tokens=renew_tokens,
)
release_result = client.release(
lock_tokens=release_events,
)
ack_result = client.acknowledge(
lock_tokens=acknowledge_events,
)
reject_result = client.reject(
lock_tokens=reject_events,
)
print(f"All Released events - {release_events}")
print(f"All Acknowledge events - {acknowledge_events}")
print(f"All Rejected events - {reject_events}")
Any help will be much appreciated.