Wednesday, September 10, 2014

Create JIRA Issue through JIRA API

JIRA API supports REST JSON format.
Here I show C # code  to call JIRA API and  how we can create an issue  through that API

Code : 

using System.Net;
using System.IO;

Event code 

string postUrl = "https://netstarter.jira.com/rest/api/latest/issue";

var httpWebRequest = (HttpWebRequest)WebRequest.Create(postUrl);
httpWebRequest.ContentType = "application/json";
httpWebRequest.Method = "POST";        
httpWebRequest.Headers["Authorization"] = "Basic " +       Convert.ToBase64String(Encoding.Default.GetBytes("USERNAME:PASSWORD"));

using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
                string json = @"{""fields"":{""project"":{""key"": ""JAPI""},""summary"": ""REST EXAMPLE"",""description"": ""Creating an issue via REST API 2"",""issuetype"": {""name"": ""Bug""}}}";

                streamWriter.Write(json);
                streamWriter.Flush();
                streamWriter.Close();

                var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
                using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                {
                    var result = streamReader.ReadToEnd();
                }
}


References:
JIRA API Documentation