Domain 6 โ€” Module 2 of 3 67%
25 of 26 overall
Domain 6: Develop Integrations Free โฑ ~12 min read

Service Endpoints: Webhooks, Service Bus & Event Hub

Connect Dataverse to Azure messaging services. Register webhooks, configure Service Bus queues and topics, set up Event Hub, and secure each endpoint type.

Wiring up the endpoints

Simple explanation

Think of service endpoints as postal delivery types.

A webhook is a direct letter โ€” fast but lost if nobody is home. Service Bus is a post office box โ€” the letter waits safely. Event Hub is a newspaper distribution centre โ€” same edition to thousands of subscribers.

Webhook configuration

SettingDetails
URLHTTPS endpoint that receives POST requests
Auth optionsHttpHeader, WebhookKey, or HttpQueryString
PayloadRemoteExecutionContext (JSON) โ€” same context as plug-in

Authentication methods

All require HTTPS; HttpHeader is most flexible
MethodHow It WorksSecurity
HttpHeaderCustom header (e.g., x-api-key: abc123)Good โ€” encrypted in transit
WebhookKeyx-ms-dynamics-key headerGood โ€” Dataverse standard pattern
HttpQueryStringKey appended to URLAcceptable โ€” encrypted by HTTPS

Azure Service Bus

Queue vs topic

FeatureQueueTopic + Subscriptions
ConsumersOne (competing consumers possible)Multiple with filters
Use caseSingle system processingMultiple systems reacting

PRT registration steps

  1. Create Service Bus namespace in Azure
  2. Create queue or topic
  3. Create SAS policy with Send permission only
  4. Copy connection string โ†’ Register in PRT as Service Endpoint

Azure Event Hub

Use Event Hub when you need massive throughput (millions of events) with multiple consumers reading the same stream.

Choose Service BusChoose Event Hub
Hundreds to thousands/minuteMillions/minute
Guaranteed ordering within sessionPer partition only
Each message processed onceMultiple consumers read same stream
Transaction processingAnalytics, telemetry
Question

What SAS permission should Dataverse have for Service Bus?

Click or press Enter to reveal answer

Answer

Send only. Dataverse publishes messages; consuming applications need separate Listen policies. This follows least privilege.

Click to flip back

Question

When should you use a Service Bus topic instead of a queue?

Click or press Enter to reveal answer

Answer

When multiple systems need to react to the same event. Each system has its own subscription (with optional filters). A queue delivers each message to only one consumer.

Click to flip back

Knowledge Check

A company needs to send Dataverse order events to three systems: warehouse, analytics, and CRM sync. Each must receive every event. What endpoint?

Next up: Data Sync โ€” change tracking, alternate keys, and the UpsertRequest pattern.