# Can't validate event notification endpoint URL

**URL:** <https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380>\
**Category:** Meetings\
**Created:** [December 16, 2022, 5:20am UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380 "2022-12-16T05:20:43Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![sales4](https://avatars.discourse-cdn.com/v4/letter/s/3ab097/32.png) [@sales4](https://devforum.zoom.us/u/sales4)\
**Post date:** [December 16, 2022, 5:20am UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/1 "2022-12-16T05:20:43Z")

</div>

Hello,

How to validate the ‘event notification endpoint URL’?

 ![](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/6/e/6ed5c72de97203bcbe6a3738e7f734a38a38d394.png)

---

<div class="post-metadata">

**Author:** ![littlelaureates](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/littlelaureates/32/43864_2.png) [@littlelaureates](https://devforum.zoom.us/u/littlelaureates)\
**Post date:** [December 16, 2022, 8:17am UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/2 "2022-12-16T08:17:47Z")

</div>

I am also facing the same issue.

---

<div class="post-metadata">

**Author:** ![elisa.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/elisa.zoom/32/47836_2.png) [@elisa.zoom](https://devforum.zoom.us/u/elisa.zoom)\
**Post date:** [December 16, 2022, 5:57pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/3 "2022-12-16T17:57:36Z")

</div>

Hello @littlelaureates and @sales4  
Thank you for reaching out to the Zoom Developer Forum and welcome to our community, I am happy to help here!

Starting earlier this year, we require that you manually trigger webhook validation when you add a new webhook or make changes to an existing one.

Here is the link to our Docs:  
[https://marketplace.zoom.us/docs/api-reference/webhook-reference/#validate-your-webhook-endpoint](https://marketplace.zoom.us/docs/api-reference/webhook-reference/#validate-your-webhook-endpoint)

We also have a sample app available with the implementation for this feature:

> **[GitHub - zoom/webhook-sample-node.js: Receive Zoom Webhooks](https://github.com/zoom/webhook-sample-node.js)**
>
> Receive Zoom Webhooks. Contribute to zoom/webhook-sample-node.js development by creating an account on GitHub.

Let me know if this helps  
Best,  
Elisa

---

<div class="post-metadata">

**Author:** ![sales4](https://avatars.discourse-cdn.com/v4/letter/s/3ab097/32.png) [@sales4](https://devforum.zoom.us/u/sales4)\
**Post date:** [December 19, 2022, 5:16am UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/4 "2022-12-19T05:16:03Z")

</div>

Hello,

Thank you for the reply.

But I have a WordPress website and I am using this plugin\*\*( Video Conferencing with Zoom Pro)\*\* on my website to integrate Zoom.

So please let me know, how to validate webhook for my WordPress website with that plugin.

---

<div class="post-metadata">

**Author:** ![freelancer.nak](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/freelancer.nak/32/40968_2.png) [@freelancer.nak](https://devforum.zoom.us/u/freelancer.nak)\
**Post date:** [December 21, 2022, 3:40pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/5 "2022-12-21T15:40:04Z")

</div>

HI, @sales4 @littlelaureates Please watch the session here on how to enable Webhooks → [here](https://youtu.be/l5TCJT0BRJI).

---

<div class="post-metadata">

**Author:** ![sfaraclas](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/sfaraclas/32/43618_2.png) [@sfaraclas](https://devforum.zoom.us/u/sfaraclas)\
**Post date:** [December 21, 2022, 4:10pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/6 "2022-12-21T16:10:51Z")

</div>

I’m also having difficulty validating my event notification endpoint URL. I’m receiving the message “URL validation failed. Try again later.”

I’m following the instructions when creating the hash and returning a JSON object in the response, of which matches the format in the documentation.

Please see my code below and response being returned to ZOOM, which matches the sample.

 ![CodeAndResponse](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/2/6/261ca0073fc038222de04f5da3b6b7e8093ef3c0.jpeg)

---

<div class="post-metadata">

**Author:** ![freelancer.nak](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/freelancer.nak/32/40968_2.png) [@freelancer.nak](https://devforum.zoom.us/u/freelancer.nak)\
**Post date:** [December 21, 2022, 4:39pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/7 "2022-12-21T16:39:29Z")

</div>

It is working fine.  
👇

 ![Screenshot 2022-12-21 at 9.38.45 PM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/3/0/301f0b2002de6d843e2d1dfe853f5c17b15aedcc.jpeg)

---

<div class="post-metadata">

**Author:** ![sales4](https://avatars.discourse-cdn.com/v4/letter/s/3ab097/32.png) [@sales4](https://devforum.zoom.us/u/sales4)\
**Post date:** [December 22, 2022, 10:12am UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/8 "2022-12-22T10:12:30Z")

</div>

Hello,

I am using this plugin: Video Conferencing with Zoom Pro

I have copied the endpoint URL from here: [Screenshot by Lightshot](https://prnt.sc/jjRWIYqhbbtS)

How to validate that using PHP code?

So please check and let me know.

---

<div class="post-metadata">

**Author:** ![freelancer.nak](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/freelancer.nak/32/40968_2.png) [@freelancer.nak](https://devforum.zoom.us/u/freelancer.nak)\
**Post date:** [December 22, 2022, 11:30am UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/9 "2022-12-22T11:30:14Z")

</div>

@sales4 @sfaraclas @littlelaureates Here is C# working code 👇

```auto
    [HttpPost(Name = "events")]
    public ActionResult Events(ValidateUrlEvent notification)
    {
        var encoding = new System.Text.ASCIIEncoding();

        var sha256 = new System.Security.Cryptography.HMACSHA256();
        sha256.Key = encoding.GetBytes("Your Event Secret Token");

        var hash = sha256.ComputeHash(encoding.GetBytes(notification.payload.plainToken));

        var hashed=ToHex(hash,false);

        return Ok(
            new
            {
                plainToken = notification.payload.plainToken,
                encryptedToken = hashed
            }
        );
    }

    private static string ToHex(byte[] bytes, bool upperCase)
    {
        StringBuilder result = new StringBuilder(bytes.Length * 2);
        for (int i = 0; i < bytes.Length; i++)
            result.Append(bytes[i].ToString(upperCase ? "X2" : "x2"));
        return result.ToString();
    }

```

 ![Screenshot 2022-12-22 at 4.29.49 PM](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/5/d/5d422ad8a80207645c3f680a853cf3ef393180e7.jpeg)

---

<div class="post-metadata">

**Author:** ![sfaraclas](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/sfaraclas/32/43618_2.png) [@sfaraclas](https://devforum.zoom.us/u/sfaraclas)\
**Post date:** [December 22, 2022, 1:22pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/10 "2022-12-22T13:22:23Z")

</div>

@freelancer.nak

Thanks very much!! My webhook was accepted.

The problem was the way I converted the hashed token to HEX, which was “Convert.ToHexString(hash)”.

Upon only replacing that part, the validation was accepted.

Thanks again.

---

<div class="post-metadata">

**Author:** ![freelancer.nak](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/freelancer.nak/32/40968_2.png) [@freelancer.nak](https://devforum.zoom.us/u/freelancer.nak)\
**Post date:** [December 22, 2022, 1:33pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/11 "2022-12-22T13:33:16Z")

</div>

Glad it helped 😄, Welcome & Thanks

---

<div class="post-metadata">

**Author:** ![donte.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/donte.zoom/32/24412_2.png) [@donte.zoom](https://devforum.zoom.us/u/donte.zoom)\
**Post date:** [December 22, 2022, 2:18pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/12 "2022-12-22T14:18:43Z")

</div>

Glad to hear you were about to resolve the issue, @sfaraclas!

---

<div class="post-metadata">

**Author:** ![donte.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/donte.zoom/32/24412_2.png) [@donte.zoom](https://devforum.zoom.us/u/donte.zoom)\
**Post date:** [December 22, 2022, 2:27pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/13 "2022-12-22T14:27:07Z")

</div>

@freelancer.nak,

Thank you for sharing the solution with the Developer forum. It will be beneficial to other developers who are looking to solve a similar problem. To further contribute to the developer community, we encourage you to consider posting a write of your solution in the showcase category of our forum.

> **[Showcase](https://devforum.zoom.us/c/showcase-projects/69)**
>
> Show off your projects, ask for feedback, and discover new things on the Zoom Developer Platform!

Thank you for your contribution to the Zoom Developer forum!

---

<div class="post-metadata">

**Author:** ![vladimir.rivera](https://avatars.discourse-cdn.com/v4/letter/v/3e96dc/32.png) [@vladimir.rivera](https://devforum.zoom.us/u/vladimir.rivera)\
**Post date:** [May 5, 2023, 10:12pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/15 "2023-05-05T22:12:36Z")

</div>

Hi @freelancer.nak , I was checking your code and try out it my end, but doesn’t work:  
I’m using a Azure function as below, and never validates my endpoint URL. Where could be my error?

```auto
 [FunctionName("Events")]
        public static async Task<IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Function, "post", Route = "Zoom")] HttpRequest req,
            ILogger log)
        {
            log.LogInformation("C# HTTP trigger function processed a request.");

            string name = req.Query["name"];
            string requestBody = await new StreamReader(req.Body).ReadToEndAsync();
            var data = JsonConvert.DeserializeObject<DataResponse>(requestBody);
            var encoding = new System.Text.ASCIIEncoding();
            var sha256 = new System.Security.Cryptography.HMACSHA256();
            sha256.Key = encoding.GetBytes("Here I put my Secret event token");
            var hash = sha256.ComputeHash(encoding.GetBytes(data.PayLoad.PlainToken));
            var hashed = ToHex(hash, false);

            return new OkObjectResult(new
            {
                plainToken = data.PayLoad.PlainToken,
                encryptedToken = hashed
            });
        }

```

---

<div class="post-metadata">

**Author:** ![ym.engineering](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/ym.engineering/32/48825_2.png) [@ym.engineering](https://devforum.zoom.us/u/ym.engineering)\
**Post date:** [May 31, 2023, 8:36pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/16 "2023-05-31T20:36:23Z")

</div>

Our listener web service is receiving the Zoom event notification endpoint validation request (endpoint.url\_validation), but we are not able to get it to Validate, following the C# example above.

The current event notification secret token on our Zoom OAuth app is “whIR8xqZQ4eGjuq1UfSWVw”. Following is the JSON response being generated (and sent with http code 200) when receiving the endpoint.url\_validation event payload.

```auto
{"plainToken":"NIhxV-7SRRCYJDVa9J2vUQ","encryptedToken":"da32418f55b8c499cc59645f2298bbf8f74cd6ea88784a986f0e1b1562dde3d6"}

```

Is the encryptedToken hashed value correct? Or, is there another reason it is failing?

 ![image](https://us1.discourse-cdn.com/flex016/uploads/zoomdeveloper/original/3X/a/5/a523262b2b0b039191a35b88d6161dec83ac02b8.png)

---

<div class="post-metadata">

**Author:** ![marketing13](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/marketing13/32/49003_2.png) [@marketing13](https://devforum.zoom.us/u/marketing13)\
**Post date:** [June 1, 2023, 8:37am UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/17 "2023-06-01T08:37:56Z")

</div>

Same issue, but zoom did not support

---

<div class="post-metadata">

**Author:** ![ym.engineering](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/ym.engineering/32/48825_2.png) [@ym.engineering](https://devforum.zoom.us/u/ym.engineering)\
**Post date:** [June 1, 2023, 9:38pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/18 "2023-06-01T21:38:28Z")

</div>

I’ve even tried passing back in the http response from our listener the following JSON structure. However, this did not work either. I saw this JSON structure in another zoom dev forum article, posted by a user who got validation working after much difficulty.

```auto
{"message":{"plainToken":"NIhxV-7SRRCYJDVa9J2vUQ","encryptedToken":"da32418f55b8c499cc59645f2298bbf8f74cd6ea88784a986f0e1b1562dde3d6"},"status":200}

```

---

<div class="post-metadata">

**Author:** ![elisa.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/elisa.zoom/32/47836_2.png) [@elisa.zoom](https://devforum.zoom.us/u/elisa.zoom)\
**Post date:** [June 8, 2023, 6:43pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/19 "2023-06-08T18:43:45Z")

</div>

Hi @ym.engineering  
sorry to hear that you are having issues validating your endpoint.  
I just wanted to check in with you to see if you were able to troubleshoot this issue or are you still looking for assitance?

---

<div class="post-metadata">

**Author:** ![freelancer.nak](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/freelancer.nak/32/40968_2.png) [@freelancer.nak](https://devforum.zoom.us/u/freelancer.nak)\
**Post date:** [June 9, 2023, 6:25pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/20 "2023-06-09T18:25:26Z")

</div>

@vladimir.rivera Please verify that is there 302 redirect when you are sending POST request to your Azure function using Postman?

---

<div class="post-metadata">

**Author:** ![freelancer.nak](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/freelancer.nak/32/40968_2.png) [@freelancer.nak](https://devforum.zoom.us/u/freelancer.nak)\
**Post date:** [June 9, 2023, 6:28pm UTC](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380/21 "2023-06-09T18:28:17Z")

</div>

@ym.engineering Hope you will be fine.

You are using Azure functions or [ASP.Net](http://ASP.Net)?

[Next page](https://devforum.zoom.us/t/cant-validate-event-notification-endpoint-url/80380.md?page=2)
