Hi, I have found that potentially there is a missing feature between connect API and JSD. To be more specific - there is a connect API to extend JSD request forms, but when used, you loose full potential of JSD Automation feature.
There is an official API which allows for adding additional properties to the form/issue: https://developer.atlassian.com/cloud/jira/service-desk/request-create-property-panel/. So basically, you can extend JSD form on customer portal.
After a ticket on customer portal is created, our app updates the issue with fields stored in an issue property. We try to make the usage of the app transparent to users, i.e. values provided in a our panel are visible in the Issue view and in the Request details.
Recently one of our users pointed out that it does not work with Automation. He wanted to use an Issue Created trigger to add a specific comment when a certain value of some field is selected on the form. However if that field is managed by our app (displayed in app’s panel), the point at which the value is saved in issue is different. First Jira creates an issue without it, then our app updates the issue, therefore Issue Created trigger cannot be used in our case.
I am looking for some solution, but nothing seems to be ideal, because such trigger should be executed only once and the source of trigger should be our app. As a workaround we came up with solution to use Comment added trigger with Comment contains (e.g. “Dynamic Form” phrase) condition. However to make it work, our app would need to add some specific comment to an issue (after app finishes updating it), which I would like to avoid. Also there is always a possibility that someone adds a comment with the same phrase and the trigger would be executed once again.
Instead of using “contains” condition, it would be better to use a condition tied to the app, e.g. Commented by = app (user), but it doesn’t seem to be possible now. You can select users, but apps are not listed there.
Maybe better condition would be like: Property updated/created by an app. Or just simply IssueUpdated trigger with condition: “by App”
What do you think about those ideas? Did you experienced similar challenges? Would Atlassian consider implement a feature that would solve the problem?