web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

No record found.

News and Announcements icon
Community site session details

Community site session details

Session Id :
Service | Customer Service, Contact Center, Fie...
Answered

ACS webhook authentication to Contact Centre

(3) ShareShare
ReportReport
Posted on by 37
Currently having significant issues with setting up an Azure Communication Services Event to send an incoming call into Dynamics.
 
Followed all the documentation, keep getting the following error:
 
Deploying Event Subscription: MEG-IncomingCall-Subscription
Deployment has failed with the following error: {"code":"URL validation","message":"Webhook validation handshake failed for https://v-c3f5a89b-f956-f011-8ee6-002248c6b6a6.uk.omnichannelengagementhub.com/dynamics/omnichannel/voice/incoming. Http POST request failed with response code Unknown. For troubleshooting, visit https://aka.ms/esvalidation. Activity id:cb8fa7b4-1fd1-4131-8d6c-6a3cdb7f7364, timestamp: 8/19/2025 12:54:22 PM (UTC)."}
 
 
 
 
 
 
 
I have the same question (0)
  • Suggested answer
    DAnny3211 Profile Picture
    11,417 Super User 2026 Season 1 on at

    Hi,

    Thank you for sharing the error details. The issue you're encountering during the webhook validation handshake typically points to a problem with the endpoint not responding as expected during the Azure Event Grid subscription setup.

    Here are a few things to check:

    • Ensure the endpoint is publicly accessible and not behind a firewall or authentication layer that blocks Azure’s validation request.
    • Verify that the endpoint supports the validation handshake required by Azure Event Grid. This involves responding to the validation event with the correct validation code.
    • Check TLS/SSL configuration on the endpoint. Azure requires secure HTTPS communication with a valid certificate.
    • Review the documentation at aka.ms/esvalidation for detailed troubleshooting steps and examples of how the endpoint should respond.

    If the endpoint is hosted within Dynamics or a managed service, you may need to confirm with your environment administrator that it’s configured to accept and respond to Azure Event Grid validation requests.

    Please verify if this response was helpful.

    Thanks and best regards,
    Daniele
    Note: This response was prepared with support from Copilot to ensure clarity and completeness.

  • Suggested answer
    Nour Abuzaid Profile Picture
    197 on at
    Here’s a concise explanation for your ACS webhook authentication issue with Dynamics 365 Contact Center:
     
    The “Webhook validation handshake failed” error occurs because Azure Event Grid couldn’t successfully validate your endpoint. To fix it:
     
    Public Access: Make sure your webhook URL is publicly reachable and not blocked by firewalls or IP restrictions.
    Validation Response: Your endpoint must respond to the Event Grid validation event with the correct validation code. This is required for handshake completion.
    HTTPS/TLS: Ensure your endpoint uses HTTPS with a valid, trusted SSL certificate.
    Managed Endpoint Checks: If the endpoint is hosted in Dynamics or Omnichannel, confirm it’s configured to accept Event Grid validation requests.

     
    In short: the endpoint must be publicly accessible, respond correctly to validation events, and support secure HTTPS.
  • SA-30061402-0 Profile Picture
    37 on at
    Thank you both for your responses, just wanted to provide some additional detail. 
     
     
    • The apps are in the same tenant
    • event subscription is being configured by application
    • I have updated these variables to match
      • $webhookAppObjectId: Microsoft Entra application ID created for the webhook (Dynamics 365 Customer Service/Contact Centre)
      • $eventSubscriptionWriterUserPrincipalName: Azure user principal name of the user who creates event subscription (Azure Communications Services Service Principal)
    • AzureEventGridSecureWebhookSubscriber has been created and assigned to the Event Subscription Writer
    • I have the Application Administrator role in Entra
    • Event Grid subscription writer app has the Event Grid Contributor role
    • I am using the Azure Shell, Powershell environment 
    • I have signed in to the Azure shell using the Event Grid subscription writer Microsoft Entra Application
    • I am getting the same error when running this script in Azure Shell:

     
    (URL validation) Webhook validation handshake failed for https://v-c3f5a89b-f956-f011-8ee6-002248c6b6a6.uk.omnichannelengagementhub.com/dynamics/omnichannel/voice/incoming. Http POST request failed with response code Unknown. For troubleshooting, visit https://aka.ms/esvalidation. Activity id:dd2582b8-3e18-4450-a184-9979c2b34b49, timestamp: 8/20/2025 2:05:59 PM (UTC).
    Code: URL validation
    Message: Webhook validation handshake failed for https://v-c3f5a89b-f956-f011-8ee6-002248c6b6a6.uk.omnichannelengagementhub.com/dynamics/omnichannel/voice/incoming. Http POST request failed with response code Unknown. For troubleshooting, visit https://aka.ms/esvalidation. Activity id:dd2582b8-3e18-4450-a184-9979c2b34b49, timestamp: 8/20/2025 2:05:59 PM (UTC).
     

     
    Re your comments:
     
    Public Access: Make sure your webhook URL is publicly reachable and not blocked by firewalls or IP restrictions
    This has been set to public network
     
    Validation Response: Your endpoint must respond to the Event Grid validation event with the correct validation code. This is required for handshake completion.
    This could be one of the issues I'm having. How do i confirm this is setup correctly?
     
    HTTPS/TLS: Ensure your endpoint uses HTTPS with a valid, trusted SSL certificate.
    This could also be one of the issues I'm having. How do i confirm this is setup correctly?
     
    Managed Endpoint Checks: If the endpoint is hosted in Dynamics or Omnichannel, confirm it’s configured to accept Event Grid validation requests.
    Again on this point, how do I confirm this is configured correctly?
    •  
     
    Thank you both for your help with this, it is appreciated 
     
     
     
    Screenshot 2025-08-22 143944.png
    Screenshot 2025-08-13 093946.png
  • Verified answer
    SA-30061402-0 Profile Picture
    37 on at
    Just wanted to provide an update on this
     
    Managed to get it working correctly!
     
    I deleted all of the created resources in Azure, aside from the Subscription and the resource group 
     
    I created a new Azure resource following the steps here:Connect using a new Azure resource | Microsoft Learn
     
    Fulfilling the following prerequisites: 
    • Check whether the Get started button to connect to an existing Azure resource is visible on the Phone numbers page. The Get Started button appears only in the following scenarios.
      • The trial ends after the free calling time elapses.
      • You manually ended the trial. 
        • Trial was previously manually ended 
      • You disconnected from the Azure resource. For more information, refer to Disconnect from Azure Communication Services resource.
        • I think we may have connected to the previous ACS resource so this was deleted and recreated 
    • Have an Azure subscription that's in the same tenant as your Dynamics 365 account. Ensure that your Azure subscription meets the Subscription eligibility and number capabilities requirements.
      • correct tenant (same tenant) confirmed 
    • Have at least contributor-level permissions to the Azure subscription. To check your role, open your subscription and view the My role column of your subscription on the Azure portal. You can deploy your Azure Communication Services resource only if you have contributor-level permissions.
      • confirmed to have correct permissions as owner of resource/global admin 
     
    I think this was one of the key steps that may have been misconfigured previously: 
     
    You might be prompted to add an Event Grid app ID for your resource. If you see this option, refer to Get Event Grid application and tenant IDS from the Azure portal for information about these values.
     
    I created a new Azure resource in the Contact Centre admin centre, as here:
     
    Create new Azure resource
     
     
    Once this was registered here, it was added to app registrations in Azure, including for the Incoming call, call recording and SMS webhooks
     
     
    This showed that Azure was correctly pulling through the webhook information from Dynamics
     
    My advice for anyone having a similar issue in future is to remove and recreate all Azure resources aside from the Azure subscription and the resource group, and to follow this
    and this
     
    and it should resolve the issue. If setup correctly the event subscriptions should pull through from Dynamics as above and be listed under Event Grid System Topic -> Subscriptions within the Azure resource on the Azure Portal 
     
    Azure setup within Contact Centre admin centre in Dynamics should look like the following:
     
     
    The event grid app id should match the Azure app registration for the Azure communication resource here, highlighted in yellow:
     
     
    This should correctly configure the Event Grid to deliver events to the Dynamics webhooks in order to deliver calls and SMS to Dynamics in order for users in the Contact Centre workspace to receive incoming calls. You will then need to configure both Voice channels and workstreams in order to manage the incoming calls, assign them to users/routing, and configure default behaviour of the D365 interface 

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Stars!

Meet the Microsoft Dynamics 365 Contact Center Champions

We are thrilled to have these Champions in our Community!

Congratulations to the March Top 10 Community Leaders

These are the community rock stars!

Leaderboard > Service | Customer Service, Contact Center, Field Service, Guides

#1
11manish Profile Picture

11manish 34

#2
Mallesh Deshapaga Profile Picture

Mallesh Deshapaga 32

#3
Goloknath Profile Picture

Goloknath 28 User Group Leader

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans