Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Sending pay load from Jira using Groovy script

Pradeep A
Contributor
June 18, 2021

Hi 

I want to send information of issues in JSON format as a payload(using POST method) so that I can store it in a data base(requirement) also I would like to access it and work on it in a Third party app. Is this possible? 

1 answer

Suggest an answer

Log in or Sign up to answer
0 votes
PD Sheehan
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
June 29, 2021

Yes that is possible.

You have to decide how/when to send this information. It could be triggered by a workflow transition/post function, based on a Scripted Listener or a Job that runs on a schedule.

Then once you've decided that and have one or more issue object, you have to decide what attribute of the issue (and custom fields) you want to construct your JSON with. E.g:

import groovy.json.JsonBuilder
import com.atlassian.jira.component.ComponentAccessor
def cfm = ComponentAccessor.customFieldManager
def custFieldObject = cfm.getCustomFieldObjectsByName('custom field name')[0]
//assumes issue is declared and available
def newObject = [:]
newObject.issueKey = issue.key
newObject.assigneeEmail = issue.assignee.emailAddress
newObject.customField1 = issue.getCustomFieldValue(customFieldObject)
def jsonString = new JsonBuilder(newObject).toString()

Then you need to figure out how you want to connect to your third party app and make sure you can authenticate etc.

Or maybe your third party app is flexible, in which case, you might be better off using a WebHook from the jira side to send a standard payload.

TAGS
AUG Leaders

Atlassian Community Events