CREATE ISSUE USING JSON OR JAVA/JAVASCRIPT

Fresh Grad September 27, 2012

Hi,

Is it possible to create an issue through JSON-RPC? I checked the JIRA site

https://developer.atlassian.com/display/JIRADEV/JIRA+JSON-RPC+Overview' but was unable to infer anything to start with. I am new to JSON. Also I found that the JSON-RPC URL below is not responding when I hit it directly.

http://localhost:8080/jira/rpc/json-rpc/jirasoapservice-v2​ . Getting a 'Not found 404 error' .

Is there a step by step approach or can anyone help me in creating an issue in JIRA through JSON 
or JAVA/JAVASCRIPT code. 
Thanks in advance.

3 answers

0 votes
Mint meail October 1, 2012

Not entirely JSON-RPC, but I was able to create new issues by sending some JSON code as a HTTP POST request:

Request to: http://my_jira_machine:7991/rest/api/2/issue/

An HTTP Authorization header was added with authentication details of an existing Jira user

HTTP ContentType header set to : "application/json"

Data, e.g. something as straightforward as:

'{ "fields": { "project": { "key": "' + ProjectCode + '" }, "summary": "' + Summary + '", "description": "' + Description + '", "issuetype": { "name": "Bug" } } }'

This was not from Javascript, but I guess it would be possible to do this using e.g. JQuery:

http://stackoverflow.com/questions/5570747/jquery-posting-json

http://api.jquery.com/jQuery.post/

Hope this helps! :)

Fresh Grad October 1, 2012

Thanks Ethan. But when I execute it against my local JIRA instance, 'http://localhost:8081/rest/api/2/issue/' to check the availability, I am getting the following error

Unauthorized (401)

Encountered a 401 - Unauthorized error while loading this page.

Mint meail October 1, 2012

The fact that you see a 401 means that at least there apparently is a site/API there to call.. an improvement over the 404 ;)

Are you sure that you are sending the correct authentication data?

My example works from Flash, where I added the headers in the following way:

// Authentication
var encoder:Base64Encoder = new Base64Encoder();
encoder.encode("username:password");
http.headers["Authorization"] = "Basic " + encoder.toString();

From Javascript you can do similar things. See for example:

http://stackoverflow.com/questions/5507234/how-to-use-basic-auth-and-jquery-and-ajax


Fresh Grad October 5, 2012

Thanks. Also I would like to add an attachment(a word doc with requests) to the createISSUE call which I am sending to my JIRA local instance. How should I handle that?

0 votes
Bob Swift OSS (Bob Swift Atlassian Apps)
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.
September 27, 2012

It is hard to tell what your requirement is but createIssue can be used for automation needs.

Fresh Grad October 1, 2012

Yes, I am planning to invoke createIssue API remotely where one of the need is for automation.

0 votes
Harry Chan
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.
September 27, 2012

Hi, which version of JIRA are you using? If REST/JSON to create issues you need JIRA 5.x. Refer to http://docs.atlassian.com/jira/REST/latest/ for the documentation.

Fresh Grad September 27, 2012

I am using JIRA 5.1.4

Suggest an answer

Log in or Sign up to answer