Dynamic Webhooks questions

Hi!

I’m looking for a couple of answers and precisions on some questions regarding Dynamic Webhooks, registered through the REST api as an oauth 2.0 app.

It seems I cannot create more than 1 webhook per user. This limitation is not clear or at least poorly documented. It might have been introduced recently here. The documentation still mentions a limit of 5. And there’s also this message, in the same page, that’s not very clear:

Starting from January 2, 2024, this type of integration will have a limit of 100 active admin webhooks.

What’s an “admin webhook” in this case?

I have been trying to create a new webhook with my app but I am getting the following error because of the above restriction:
`Only a single URL per app is allowed to be registered via REST API.” It also gives me the URL that’s currently registered but that’s pretty much it. I went to the web UI (Settings → System → Webhooks) but the webhook doesn’t show up in there. Where is it? Is it in a different Jira workspace? Are dynamic webhooks registered via this API not supposed to show up in there (as opposed to webhooks created with an API token through the old API?)

I tried to delete the webhook through the API but got the following error:

"errorMessages": ["No content to map to Object due to end of input"]

Which is the same error as reported here (delete-webhooks-by-id-through-rest-api-jira-dynamic-webhooks/44877) 3 years ago :woozy_face:. Any tribal knowledge of what’s actually hiding behind this error message?

Thanks!

Hi @Guilo,

Admin webhooks are not the same as dynamic webhooks you’re asking about.
Admin webhooks are for Jira administrators - these are the ones available in Jira system settings UI. They can point to any URL and often serve app-less integrations. As you noted, recently a limit of 100 such admin webhooks has been introduced.

Dynamic webhooks are, however, for app integrations. Could be used in Connect or OAuth2.0 apps. These are the ones you’re registering.
According to my knowledge, recent changes to the limits should allow creating more webhooks per user. Keep in mind the URL restriction - should be the same for all webhooks the user registers. In other words, within a single OAuth2.0 app, a user X should be able to register up to 5 webhooks for a single URL, then a user Y should be able to register another 5 webhooks for a single URL (could be different to what user X used).
If a single user attempts registering multiple webhooks to different URLs, the error: Only a single URL per user is allowed to be registered via REST API. The currently used URL: ... should be returned.

It should contain “… per user …” and I see you pasted “… per app …” which typically should be returned for Connect app. Let me double check with you whether you’re using OAuth 2.0 and not a Connect app?

When it comes to DELETE endpoint not working for you, the returned error is pretty generic and can be a result of various problems. Let’s tackle things from above first and then we can come back to issues with deleting webhooks. Maybe there’ll be a need to go through a Support case where we could query the logs based on provided site information.

1 Like

Using OAuth 2.0 here.