Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,298,337
Community Members
 
Community Events
165
Community Groups

Update Summary Via scriptrunner

Edited

I am trying to update an issue summary when an issue is created. i want the summary to be what is entered in a custom field. I created the following listener when an issue is created.

 

package com.adaptavist.sr.cloud.samples.events

//def issueKey = 'TEST-137'
def reportName = 'customfield_13703'//Report Name
def projectKey = "TEST"

def input = issue.fields[reportName] as String
def output = input + " eureka!"
def sum = issue.fields.summary

logger.info("summary?: {}", sum)

put("/rest/api/2/issue/${issue.key}")
.header("Content-Type", "application/json")
.body([
fields:[
(sum): output
]
])
.asString()

 

but when creating an issue the logger gives error 

 

CorrelationId: 8a010bb7-1caa-4f62-b087-b68e529cde88
RUN Script identifier: 5c14fc0b-b94b-4b96-9665-8ec17ab24745 com.adaptavist.sr.cloud.events.WebhookExecution (jira:issue_updated webhook fired for issue TEST-141) Logs:
2017-12-26 19:43:39.341 INFO - summary?: aklsjfkadjskf;jsdk;lf
2017-12-26 19:43:40.015 WARN - PUT request to /rest/api/2/issue/TEST-141 returned an error code: status: 400 - Bad Request
body: {"errorMessages":[],"errors":{"aklsjfkadjskf;jsdk;lf":"Field 'aklsjfkadjskf;jsdk;lf' cannot be set. It is not on the appropriate screen, or unknown."}}
2017-12-26 19:43:40.017 INFO - PUT /rest/api/2/issue/TEST-141 asString Request Duration: 656ms

 

the report name field is available on the create issue screen however.

 

what else can the error message be referring to?

1 answer

0 votes

Hello,

I guess, it should be like this (I changed (sum) to summary). As far as I understand it must be a valid json. when you send a json you should provide

"filedname":"fieldvalue". You provided "summaryfieldvalue":"newvalue" and it was wrong.

package com.adaptavist.sr.cloud.samples.events

//def issueKey = 'TEST-137'
def reportName = 'customfield_13703'//Report Name
def projectKey = "TEST"

def input = issue.fields[reportName] as String
def output = input + " eureka!"
def sum = issue.fields.summary

logger.info("summary?: {}", sum)

put("/rest/api/2/issue/${issue.key}")
.header("Content-Type", "application/json")
.body([
fields:[
summary: output
]
])
.asString()

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Confluence

An update on Confluence Cloud customer feedback – June 2022

Hi everyone, We’re always looking at how to improve Confluence and customer feedback plays an important role in making sure we're investing in the areas that will bring the most value to the most c...

181 views 1 3
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you