Programmatic access to Scrum Board Card Layout configuration?

I have been working on a Jira project template in order to configure a new project in accordance with our process definition. The latest user request is to pre-configure the Scrum Board Issue Cards to display the Status field.

I’ve found how to do that in the Board configuration Card layout tab and have tried to replicate this programmatically using the Greenhopper plugin CardLayoutFieldConfigurationService. However, when I tried to test it, I received a NullPointer exception because this Service isn’t exported in the same way that, say, the RapidBoardService is; I have verified this using the OSGi browser (nothing related to the Card Services is exported).

Additionally, there doesn’t appear to be a documented REST service to set these. Is there any way to programmatically set this configuration that I am overlooking?

1 Like

I would be very interested to know if anyone has a solution :slight_smile:

I did find a solution for this, though, I admit, a bit unsatisfactorily.

It is true that there is no documented REST API for this feature. However, using the REST API browser in the atlas test environment, there is an option to show all of the REST endpoints, not just the public ones. This shows that there are literally dozens of additional REST calls that can be made through the private API, including the desired ability to add fields on to the board cards, through “/rest/greenhopper/1.0/cardlayout/{rapidViewId}/{mode}/field”; these private REST calls seem to be the primary way that Jira gets anything done.

This is a pretty brittle solution; the private REST endpoints may be modified or deleted at any time. However, since these seem to be the primary way that Jira gets its work done, I don’t see these going away anytime soon.

1 Like