Callback on workflow transition with Atlassian Connect

Hey! I’m developing a new Atlassian Connect application in Kotlin + Spring Boot.
In a few use cases when a user moves an issue from one workflow status to another I need to invoke some code in my application that communicates with a different system.
In Jira Server, I would approach this with a post function. But in my case, I don’t need any configuration.
In Jira Cloud, I tried webhooks configured in the plugin descriptor but I’m a bit worried about the performance, both Jira and my application, because I had to use the “issue updated” event. There is nothing connected to workflows. So in the end, I need to ignore a lot of incoming requests that are not relevant even though I used the JQL filter.
So my question is:
How would you approach this problem in Jira Cloud?

Hi Klaudia,

thanks for reaching out. Have you heard about dynamic webhooks before?

Some time ago, we introduced filtering by fields ids (see the field fieldIdsFilter in the request body). It may be a solution as you can get webhooks on particular fields updates. The combination of fieldIdsFilter and jqlFilter can give you a satisfying result.

Let us know if it helps.
Regards,
Beata

Is it possible to use fieldIdsFilter in a plugin descriptor?

Unfortunately, it’s supported only for dynamic webhooks.

Considering all the options it’s still best for me to use a post function.

Why?
Automation Rules - I can’t add JWT to the request there, so I need to additionally implement (most probably) Basic Auth.
Webhooks defined in a descriptor - I can filter with JQL but that’s not enough in my case. I still need to use “issue updated” event and therefore ignore a lot of incoming requests in my app. At the same time, I lose configuration options that a post function has, meaning attaching to any workflow. These webhooks are also not visible in Jira WebHooks UI.
Webhooks defined in UI - I don’t want to define webhooks in UI. I’m still not sure how to deal with authentication and I don’t want unauthenticated endpoints in my app.
Dynamic webhooks - They aren’t visible in Jira WebHooks UI. You can register them by making REST requests only.