Configuration Resource

This article is for Data Center. Visit Cloud

Configuration Resource

This page describes resources which allow you to manage the list of projects for which Structure is enabled and the global permissions of the Structure app.

Only logged in Jira administrators can access this resource.

Configuration resource belongs to version 2.0 of the API, its path is /rest/structure/2.0/configuration. It contains the following resources:

/projects GET

Get the list of projects for which Structure is enabled

/projects PUT

Update the list of projects for which Structure is enabled

/projects/add POST

Enable Structure for projects

/projects/remove POST

Disable Structure for projects

/permissions GET

Get Structure's global permissions

/permissions PUT

Update Structure's global permissions

/permissions/{key} GET

Get a particular global permission

/permissions/{key} PUT

Update a particular global permission

/permissions/{key}/add POST

Grant a global permission to user groups or project roles

/permissions/{key}/remove POST

Revoke a global permission from user groups and project roles

Quick navigation:

Project Resources

GET /projects

Returns a JSON object which contains:

  • a flag telling whether Structure is enabled for all projects, and 

  • the list of project IDs for which Structure is enabled.

Please note that even when Structure is enabled for all projects, the list of selected project IDs is still stored in the app configuration and returned by this resource. 

GET $baseUrl/rest/structure/2.0/configuration/projects

A successful request returns a JSON object with two fields, for example:

{ "enabledForAllProjects": false, "pickedProjectIds": [10000, 10100] }

Top

PUT /projects

Updates the "enabled for all projects" flag and/or the list of projects for which Structure is enabled.

PUT $baseUrl/rest/structure/2.0/configuration/projects

Accepts a JSON object with the following fields, at least one of which must be present:

  • enabledForAllProjects – a boolean indicating whether Structure is enabled for all projects. If omitted, the setting is not changed.

  • pickedProjectIds – an array of numbers with the IDs of the projects for which Structure is enabled. If omitted, the list of projects is not changed.

Please note that when Structure is enabled for all projects, the list of projects has no effect, but it is still stored in the app configuration and can be updated.

Example 1. Enable Structure for only two projects with IDs 10000 and 10100:

PUT $baseUrl/rest/structure/2.0/configuration/projects { "enabledForAllProjects": false, "pickedProjectIds": [10000, 10100] }

Example 2. Enable structure for all projects, don't change the list of projects:

PUT $baseUrl/rest/structure/2.0/configuration/projects { "enabledForAllProjects": true }

A successful request returns an "empty" JSON object:

{ "empty": true }

Top

POST /projects/add

Adds one or more projects to the list of projects for which Structure is enabled.

POST $baseUrl/rest/structure/2.0/configuration/projects/add

Accepts a JSON array of numbers, all of which must be existing project IDs. At least one project ID must be supplied.

Please note that when Structure is enabled for all projects, the list of projects has no effect, but it is still stored in the app configuration and can be updated.

Example. Add project with IDs 10200 and 10300 to the list of projects:

POST $baseUrl/rest/structure/2.0/configuration/projects/add [10200,10300]