Get project screen configurations via REST API


My scenario.
BigGantt is add-on that we develop in JIRA Cloud environment. Add-on does its JIRA REST API request from backend server to maintain caches, not from user browser.
Our add-on creates specific custom fields to store e.g.: issue start date and issue end date.
Some of BigGantt processes create projects, fill them with issues and then updates those issues custom fields.
While updating issue custom field (PUT /rest/api/2/issue/{issueIdOrKey}) in user context (JWT Bearer authorization) we get 400 validation errors pointing that custom fields does not belong to any project security screens.

While creating project we use project templates. Project creation results in creation of new screens dedicated to the project created by the add-on, so every project uses different dedicated screens.
There is no such problem in BigGantt JIRA Server Add-on, because it uses Java API IssueManager.updateIssue() that does not perform any permission checks.

We do understand that in JIRA Cloud REST API altering issue in user context must go through security validation.

What we need.
If we could get project screens via, e.g. REST API GET /rest/api/2/project with expand=screens, we would add our custom fields to proper screens using REST API POST /rest/api/2/screens/screenId/tabs/tabId/fields.
We reckon such improvement is cheap to implement because it is already implemented in UI (baseUrl/plugins/servlet/project-config/projectKey/screens) and does not violate security.






Bartłomiej Jańczak