Here is the code that I am attempting to use:
global class SalesforceJiraUpdate { public string endpoint='https://xxx.atlassian.net/rest/api/2/issue/'; //JIRA URL public String username = 'xxx'; // JIRA username public String password = 'xxx'; // JIRA password @future(callout=true) public static void updateIssue(string key,string summary,string description,string Jiraid){ key = Jiraid; new SalesforceJiraUpdate(key,summary,description,Jiraid); } public String authHeader(){ Blob headerValue = Blob.valueOf(username+':'+password); return 'Basic ' + EncodingUtil.base64Encode(headerValue); } public SalesforceJiraUpdate(string key,string summary,string description,string Jiraid){ HttpRequest req = new HttpRequest(); Http http = new Http(); req.setMethod('PUT'); //Set HTTPRequest header properties endpoint+=+key; req.setHeader('Accept', 'application/json'); req.setHeader('Content-Type','application/json'); Blob headerValue = Blob.valueOf(username+':'+password); req.setHeader('Authorization','Basic '+ EncodingUtil.base64Encode(headerValue)); req.setEndpoint(endpoint); system.debug('the endpoint is :'+endpoint); String UpdateIssueJson= '{"update": {"summary":[{"set":"'+summary+'"}],"description":[{"set":"'+description+'"}], "issuetype":[{"set" :{"name": "Bug"}}]}}'; String JSONData = JSON.serializePretty(UpdateIssueJson); req.setBody(UpdateIssueJson); system.debug('after response....'+UpdateIssueJson); try{ //Execute web service call here HTTPResponse res = http.send(req); String ResponseJsonString = res.getBody(); System.debug('ResponseJsonString '+res); } catch(System.CalloutException e){ System.debug('Callout error: '+ e); } } }
Hi Robert, there was issue in framing the Json. I have solved it.
String upJson= '{"fields":{"summary":"'+summary+'","description":"'+description+'"}}';
Thanks
Abhishek
I have tried to duplicate this using Postman on my local machine and have not had an issue:
Screen Shot 2016-02-05 at 9.15.40 am.png
From here I can only think of only two potential issues:
Those are the only two issues that I can think of right now that might cause this behaviour. Please tell me if that works / helps. Otherwise, can you please provide screenshots of the Issue that you are trying to update and the contents of the variables that you are setting for your application? Cheers.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Robert, am able to create an Issue in JIRA, while updating it response is Bad request and 400 error.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Have you tried to get a locally running JIRA and use the Rest API Browser to make your requests?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.