Best answer

How do I write the challenge response for zoom webhooks?

  • 19 January 2023
  • 3 replies

Userlevel 1

This post has been edited by a moderator to remove personal information. Please remember that this is a public forum and to remove any sensitive information prior to posting.

My webhook is not working to Zapier because I can’t figure out how to build the response to the challenge to validate my URLs.

My webhook URL is: xxxxxxxxx
My zoom secret token is:  xxxxxxxxxx 

Zoom App Marketplace uses Challenge-response check to confirm the ownership and the security of the event notification endpoint URLs. Check the documentation about building response to the challenge to validate your URLs.

I’ve looked at some documentation online but can’t figure it out. 


Best answer by Danvers 19 January 2023, 16:52

View original

This post has been closed for comments. Please create a new post if you need help or have a question about this topic.

3 replies

Userlevel 7
Badge +14

Hi @Pinnacle Forum 

Good question.

Why Is It Always 200 or Success Status? Can I customize the response?

For High Availability and High Throughput reasons - we always return a success message with a payload of debugging information when collecting a webhook - regardless of whether there is a Zap behind the webhook or if it is paused or not. The only way to know if a URL is live is to visit the editor and look at the URL (which never changes for a Zap). There is no way to customize the response to the request you send to the Catch Hook URL, as the response is sent before the Zap triggers and runs on the webhook request.

Can I do redirects?

We cannot 301 or 302 you to a different URL and deliver/retrieve payloads from the new address. Doing so will result in a failure!

Userlevel 1

So based on what you are saying, it looks like we can’t use Zoom Webhooks to Zapier anymore, since they are the ones requiring a challenge-response check. 

Userlevel 7
Badge +12

Hi @Pinnacle Forum!

I’m not a webhooks expert but I took a look at the documentation and it seems like Zoom is expecting a returned JSON object. What I can’t tell from the documentation is whether that you can send that response in a separate hook (ie use a Post webhooks action) or if it needs to be a response to the original hook. If it can be sent in a separate hook you might be able to make it work, but I’m not sure how reliable it would be because of the need for the response to be sent within 3 seconds. If you need to send a response to the original hook, then as Troy pointed out,  it’s not possible to customize the response to the request you send to the Catch Hook URL, 

Another option would be to take a look at building a custom integration using the developer platform, which would allow more customization of how the hooks are sent and receive. If you’re interested, take a look at the developer platform.


I hope that helps!