Create JIRA issue from SharePoint Work Request Edited

Currently in my workplace, we use both SharePoint and JIRA as issue trackers/work requests. What we want is when a user submits a work request on our SharePoint site, it will automatically create a JIRA issue, and populate fields in the JIRA issue based on fields in the SharePoint work request. (I hope I'm making sense so far) I have been able to successfully use the JIRA Rest API to print JIRA issue fields to the console in Visual Studio, but ultimately will somehow need  JIRA to recognize that a SharePoint work request has been submitted, and to create an issue from it. 

1 answer

0 vote
Ben Kelley Atlassian Team Aug 17, 2017

I'm not all that familiar with what you can do from the SharePoint side, but can you get SharePoint to call the JIRA REST API to create an issue when a work request is created?

This is what I got to work for me. I just add a service reference in my visual studio project to our SharePoint site, then using the Atlassian SDK, take those items from SharePoint and populate them into JIRA. When I run my program, it creates JIRA stories from the SharePoint work requests.

 

using Atlassian.Jira;

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;

namespace ConsoleApplication3
{
public class Jira_SP_API
{
public static void Main(string[] args)
{
Jira jira = Jira.CreateRestClient("jira url", "username", "password");

var context = new SharePoint.ITDataContext(
new Uri("SharePoint url"));
context.Credentials = System.Net.CredentialCache.DefaultCredentials;

var workrequests = from request in context.WorkRequests
where request.Id > 260
orderby request.Id
select new
{
request.Id,
request.Title,
request.RequestTypeValue,
request.RequestStatusValue,
request.PriorityValue,
request.RequestDate,
request.Requestor.Name,
request.BusinessApprover.FirstName,
request.BusinessApprover.LastName,
request.WorkAssignedTo,
request.FunctionalArea,
request.WorkRequestFormReadOnly
};

foreach (var request in workrequests)
{
try
{
var issue = jira.CreateIssue("TEST");
issue.Type = "Story";
issue.Priority = request.PriorityValue;
issue.Summary = request.Title;

issue.SaveChanges();
}
catch (Exception) { }

 

}
}
}
}

 

What I haven't gotten to work is to populate custom JIRA fields I created in my JIRA environment. I've tried this: 

issue.CustomFields.Add("Functional Area", request.FunctionalArea); //Functional Area customfield_10050

But when I run my program with this in my code, it doesn't create JIRA stories.

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Published Jul 10, 2018 in Marketplace Apps

If you’re an Atlassian app developer, you’ll want to know about Atlas Camp!

This September 6-7, hundreds of Atlassian App developers will flock to Barcelona Spain to build skills, discover product roadmaps, meet face-to-face with the Atlassian team, and learn how to extend t...

176 views 0 4
Read article

Atlassian User Groups

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

Find a group

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

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you