# Updating Webhooks \> Lambda integration to support new authorization structure

**URL:** <https://devforum.zoom.us/t/updating-webhooks-lambda-integration-to-support-new-authorization-structure/80190>\
**Category:** API and Webhooks\
**Created:** [December 13, 2022, 1:23am UTC](https://devforum.zoom.us/t/updating-webhooks-lambda-integration-to-support-new-authorization-structure/80190 "2022-12-13T01:23:17Z")\
**Posts on this page:** 1\
**Showing post:** 2

<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:04pm UTC](https://devforum.zoom.us/t/updating-webhooks-lambda-integration-to-support-new-authorization-structure/80190/2 "2022-12-16T17:04:38Z")

</div>

Hi @Patrick,  
Thanks for reaching out to the Zoom Developer Forum!  
I am happy to help here!

By looking at your code snippet, I am wondering if you are probably missing one step before validating your endpoint.

If you look into our Docs, to verify Webhook events the first step is receiving the event, followed by the second step which is [constructing a message](https://marketplace.zoom.us/docs/api-reference/webhook-reference/#2-construct-the-message) with the webhook request header `x-zm-request-timestamp` value from the payload you received.

[https://marketplace.zoom.us/docs/api-reference/webhook-reference/#using-webhooks--omit-in-toc-](https://marketplace.zoom.us/docs/api-reference/webhook-reference/#using-webhooks--omit-in-toc-)

This message will be passed in your variable hashForValidate.

Here is a code snippet from our Docs that might be helpful for you:

```auto
const message = `v0:${request.headers['x-zm-request-timestamp']}:${JSON.stringify(request.body)}`

const hashForVerify = crypto.createHmac('sha256', ZOOM_WEBHOOK_SECRET_TOKEN).update(message).digest('hex')

const signature = `v0=${hashForVerify}`

if (request.headers['x-zm-signature'] === signature) {
  // Webhook request came from Zoom
} else {
  // Webhook request did not come from Zoom
}

```

We also have a sample app available :

> <https://github.com/zoom/webhook-sample-node.js/blob/master/index.js#L31>

Let me know if this helps and we can keep looking into this.  
Best,  
Elisa

---

_[View the full topic](https://devforum.zoom.us/t/updating-webhooks-lambda-integration-to-support-new-authorization-structure/80190)._
