How to use Jira API to create multiple issues

Tim Cares October 17, 2018

Hi,

Following the Jira API instructions on creating an issue here:

 

https://developer.atlassian.com/server/jira/platform/rest-apis/

https://developer.atlassian.com/server/jira/platform/jira-rest-api-examples/

I have a JSON file with multiple records; how do I get ALL of the records created as Jira issues when I do a POST to the  https://[hostname]/rest/api/2/issue/ endpoint?

If I leave out the array tags "[" and "]" at the beginning and end of the file respectively, then when I do a post, only the first record is created. If I include those array tags, then I get an error:

Can not deserialize instance of com.atlassian.jira.rest.v2.issue.IssueUpdateBean out of START_ARRAY

 

Thanks,

Tim

 

 

1 answer

0 votes
Alexey Matveev
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.
October 17, 2018
Tim Cares October 18, 2018

Thank you, I didn't know about that endpoint. But now I'm getting this error:

{"errorMessages":["No issue data was provided by request"],"errors":{}}

I confirmed that I have valid json in my file.

Alexey Matveev
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.
October 18, 2018

How did you confirm that you have a valid Json? Jira says there is no issue data.

Tim Cares October 18, 2018

I just dumped the data into an online validator tool (I used https://jsonlint.com/). In any case, I was able to do this a different way by using the original issue endpoint and then just iterating over each JSON object and creating issues one by one.

Alexey Matveev
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.
October 18, 2018

If you validated a json, it does not mean that it will work. It must be of the required structure and your json is not.

Tim Cares October 19, 2018

Okay, well,l as I noted, I rewrote my code so that it just feeds one JSON object at a time to the issue endpoint and that worked, so still not sure why the bulk endpoint did not. At this point, I can close this topic.

Nil Ister October 21, 2019

If you're using Python and Requests library following might be helpful.

In your post request don't forget to give data attribute the issues in json format

url='https://www.random.com'
data=json.dumps(all_issues)
headers={'Content-Type': 'application/json'}

response = requests.post(url, data=data, headers=headers)

 

Suggest an answer

Log in or Sign up to answer