Enhanced Issue Properties - REST API
This document provides REST API details and python groovy examples
Get Issue Properties
GET http://localhost:8080/rest/issueproperties/1.0/property/list/?issueKey={issueKey}
GET http://localhost:8080/rest/issueproperties/1.0/property/one/?issueKey={issueKey}&propertyId={propertyId}
Query Parameters:
issueKey (String) - Jira Issue Key
propertyId (Number) - Property ID
Response: [Status: 200]
$ curl -u username -XGET "http://localhost:8080/rest/issueproperties/1.0/property/list/?issueKey=DT-1"
Add Issue Properties
POST http://localhost:8080/rest/issueproperties/1.0/property/add
Required Schema Fields:
issueKey (String) - Jira Issue Key
propertyKey (String)
propertyValue (String)
wiki (Boolean)
mask (Boolean)
Response: [Status: 200]
$ curl -u"user:pass" -XPOST -H "Content-Type: application/json" --data '{"issueKey":"DT-1", \
"propertyKey":"confidential.agreement.receive.date", "propertyValue":"2017-05-02"}' \
http://localhost:8080/rest/issueproperties/1.0/property/add
{"property":5,"message":"[Info] Added Issue Property."}
$
Update Issue Properties
POST http://localhost:8080/rest/issueproperties/1.0/property/update
Required Schema Fields:
issueKey (String) - Jira Issue Key
propertyKey (String)
propertyValue (String)
wiki (Boolean)
mask (Boolean)
Response: [Status: 200]
$ curl -u"user:pass" -XPOST -H "Content-Type: application/json" --data '{"issueKey":"DT-1", \
"propertyKey":"issue.security", "propertyValue":"xxxxxxx"}' \
http://localhost:8080/rest/issueproperties/1.0/property/update
{"property":5,"message":"[Info] Updated Issue Property."}
$Note. Update creates property if not exists.
Force Update Properties
POST http://localhost:8080/rest/issueproperties/1.0/property/update/force
Note. This API helps to rename property key.
Required Schema Fields:
issueKey (String) - Jira Issue Key
propertyId (Number) - Property ID
propertyKey (String)
propertyValue (String)
wiki (Boolean)
mask (Boolean)
Response: [Status: 200]
$ curl -u"user:pass" -XPOST -H "Content-Type: application/json" --data '{"issueKey":"DT-1", \
"propertyId":"5", "propertyKey":"issue.security", "propertyValue":"xxxxxxx"}' \
http://localhost:8080/rest/issueproperties/1.0/property/update
{"property":5,"message":"[Info] Updated Issue Property."}
$
Bulk Update Properties
POST http://localhost:8080/rest/issueproperties/1.0/property/update/bulk
Required Schema Fields in Array:
issueKey (String) - Jira Issue Key
propertyKey (String)
propertyValue (String)
mask (Boolean)
Response: [Status: 200]
$ curl -u"user:pass" -XPOST -H "Content-Type: application/json" --data '[{"issueKey":"DT-1", \
"propertyKey":"issue.infox", "propertyValue":"123"}, {"issueKey":"DT-1", \
"propertyKey":"issue.infoy", "propertyValue":"456"}]' \
http://localhost:8080/rest/issueproperties/1.0/property/update
{"property":2,"message":"[Info] Updated Issue Properties."}
$Note. Bulk Update creates property if not exists.
Clone Properties
POST http://localhost:8080/rest/issueproperties/1.0/property/clone/?fromIssueKey={fromIssueKey}&toIssueKey={toIssueKey}
Required Parameters:
fromIssueKey (String) - Jira Issue Key
toIssueKey (String) - Jira Issue Key
Response: [Status: 200]
Move Properties
POST http://localhost:8080/rest/issueproperties/1.0/property/move/?fromIssueKey={fromIssueKey}&toIssueKey={toIssueKey}
Required Parameters:
fromIssueKey (String) - Jira Issue Key
toIssueKey (String) - Jira Issue Key
Response: [Status: 200]
Delete Properties
http://localhost:8080/rest/issueproperties/1.0/property/remove/?issueKey={issueKey}&propertyId={propertyId}
http://localhost:8080/rest/issueproperties/1.0/property/remove/bulk/issue/{issueKey}
curl -u"user:pass" -XDELETE http://localhost:8080/rest/issueproperties/1.0/property/remove/issue/DT-1/5
Groovy Examples
https://bitbucket.org/scmenthusiast/scmenthusiast-utilities/src/master/issue-properties/groovy/
Python Examples
https://bitbucket.org/scmenthusiast/scmenthusiast-utilities/src/master/issue-properties/python/