How can I read/subscribe to events in Azure eventgrid from python 3.8

Sriram Rama, Krishnan 0 Reputation points
2025-05-30T21:10:16.4166667+00:00

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.

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. Sander van de Velde | MVP 36,941 Reputation points MVP Volunteer Moderator
    2025-05-31T07:29:49.4366667+00:00

    Hello @Sriram Rama, Krishnan,

    welcome to this moderated Azure community forum.

    Have you checked the SDK documentation?

    Azure Event Grid is a fully-managed intelligent event routing service that allows for uniform event consumption using a publish-subscribe model.

    Sample code is found on GitHub, both synchronous and asynchronous communication.


    If the response helped, do "Accept Answer". If it doesn't work, please let us know the progress. All community members with similar issues will benefit by doing so. Your contribution is highly appreciated.

    0 comments No comments

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.