Intro

Event Grid efficiently and reliably routes events from Azure and non-Azure resources, and distributes the events to registered subscriber endpoints.


Documentation


Tips and Tidbits

There are five concepts in Azure Event Grid:


Event schemas

[
  {
    "topic": string,
    "subject": string,
    "id": string,
    "eventType": string,
    "eventTime": string,
    "data":{
      object-unique-to-each-publisher
    },
    "dataVersion": string,
    "metadataVersion": string
  }
]


Event Delivery Durability


Output batching

Delayed delivery

Custom delivery properties


Access Control


Receive events by using webhooks


Endpoint validation with Event Grid events


Filter events


Comparison of services

Service

Purpose

Type

When to use

Event Grid

Reactive programming

Event distribution (discrete)

React to status changes

Event Hubs

Big data pipeline

Event streaming (series)

Telemetry and distributed data streaming

Service Bus

High-value enterprise messaging

Message

Order processing and financial transactions


Webhook Event delivery

[{
  "id": "135b3c37-5c5b-4019-8509-a3b9c5bbb129",
  "topic": "/subscriptions/dd4a7b94-2399-46fc-b2e9-a6ac4ad9fb56/resourceGroups/az204-evgrid-rg/providers/microsoft.eventgrid/topics/az204-egtopic-888382",
  "subject": "",
  "data": {
    "validationCode": "3747BBE8-BEA3-452F-AA7F-16BA33288B99",
    "validationUrl": "https://rp-eastus.eventgrid.azure.net:553/eventsubscriptions/az204viewersub/validate?id=3747BBE8-BEA3-452F-AA7F-16BA33288B99&t=2022-02-06T21:29:08.4932495Z&apiVersion=2020-10-15-preview&token=EpJAnYMDBQV5DBZCRdNf114A4%2fNzRfEt1jV0dkUGX8s%3d"
  },
  "eventType": "Microsoft.EventGrid.SubscriptionValidationEvent",
  "eventTime": "2022-02-06T21:29:08.4932495Z",
  "metadataVersion": "1",
  "dataVersion": "2"
}]

To prove endpoint ownership, echo back the validation code in the validationResponse property, as shown in the following example:

{
  "validationResponse": "3747BBE8-BEA3-452F-AA7F-16BA33288B99"
}