Using the Jira REST API with Limitless Cascading Level Select
The Limitless Cascading Level Select custom field is compatible with the Jira Cloud REST API for both setting and retrieving values. Below are the details for updating and retrieving options via the API.
1. Setting the Value of Limitless Cascading Level Select
To set the value of the Limitless Cascading Level Select field for an issue, use the following Jira Cloud REST API endpoint:
Endpoint:
Update Issue
HTTP Method: PUT
Request URL:
https://your-domain.atlassian.net/rest/api/2/issue/{issueIdOrKey}
Request Payload Example:
{
"fields": {
"customfield_12345": {
"value": [
{
"id": "1735974876330",
"label": "test",
"value": "test",
"disabled": false,
"sequence": "root"
},
{
"id": "1735974886225",
"label": "test 2",
"value": "test 2",
"disabled": false,
"sequence": "1735974876330"
},
{
"id": "1735974902471",
"label": "test 3",
"value": "test 3",
"disabled": false,
"sequence": "1735974886225"
}
]
}
}
}
Key Notes:
Replace
customfield_12345with the actual ID of your custom field.
2. Configuring Limitless Cascading Level Select
You can configure the options for the Limitless Cascading Level Select custom field using the Jira Cloud REST API. This allows you to programmatically define hierarchical levels and relationships for the field.
Endpoint
PUT
/rest/api/2/app/field/{fieldIdOrKey}/context/configurationDescription: Updates the configuration for contexts of the Limitless Cascading Level Select custom field created by a Forge app.
Required Permissions
Jira Global Permissions:
Administer Jira permission is required.
Request
Path Parameter:
fieldIdOrKey(string): The ID or key of the custom field.
Request Body (JSON):
configurations: An array of contextual configurations representing hierarchical levels.
Example Payload:
{
"configurations":{
"data": [
{
"id": "1735974876330",
"label": "test",
"value": "test",
"disabled": false,
"sequence": "root"
},
{
"id": "1735974886225",
"label": "test 2",
"value": "test 2",
"disabled": false,
"sequence": "1735974876330"
},
{
"id": "1735974902471",
"label": "test 3",
"value": "test 3",
"disabled": false,
"sequence": "1735974886225"
},
{
"id": "1735975120240",
"label": "google",
"value": "google",
"disabled": false,
"sequence": "root"
},
{
"id": "1735975126255",
"label": "ceo",
"value": "ceo",
"disabled": false,
"sequence": "1735975120240"
},
{
"id": "1735975133298",
"label": "marandi",
"value": "marandi",
"disabled": false,
"sequence": "1735975126255"
},
{
"id": "1735991081033",
"label": "bill gatew",
"value": "bill gatew",
"disabled": false,
"sequence": "1735975126255"
}
]
}
}
Explanation of the Payload
id: Unique identifier for each option.label: Display name for the option visible to users.value: The underlying value stored in Jira (usually matcheslabel).disabled: Boolean to indicate whether the option is available for selection.sequence: Defines the parent-child relationship:"root": Indicates a top-level option.Parent
id: Links the option to its parent for sub-levels.
Example Hierarchy
Root Level:
test,googleSub-Level under test:
test 2,test 3Sub-Level under google:
ceoSub-Level under ceo:
marandi,bill gate