Adding attachment to Jira with Matlab RESTful API

19 views (last 30 days)
I'm trying to add attachment to Jira issue from Matlab. The code below returns HTTP Status 200 OK, but the file is not added to the Jira issue. What is the reason for that?
import matlab.net.http.io.MultipartProvider
import matlab.net.http.io.FileProvider
import matlab.net.http.io.MultipartFormProvider
HeaderField = matlab.net.http.HeaderField('Authorization','Basic USERNAME:PASSWORD', 'Content-Type','multipart/form-data', 'X-Atlassian-Token','no-check');
fps = FileProvider("myfile.txt");
mp = MultipartProvider(fps);
formProvider = MultipartFormProvider("files",mp);
req = matlab.net.http.RequestMessage('post',HeaderField,formProvider)
req.send('https://XXX.atlassian.net/rest/api/2/issue/TEST-1/attachments')
I can add the attachment from windows command prompt using code (as instructed here: Atlassian document):
curl -D- -u USERNAME:PASSWORD -X POST -H "X-Atlassian-Token: no-check" -F "file=@myfile.txt" https://XXX.atlassian.net/rest/api/2/issue/TEST-1/attachments
  2 Comments
Ray Oly
Ray Oly on 22 Apr 2020
Hi Juho,
Have you found a solution to this issue?
Juho
Juho on 22 Apr 2020
Hi Ray,
Unfortunately I haven't found solution for this.

Sign in to comment.

Accepted Answer

Geoff Hayes
Geoff Hayes on 22 Apr 2020
Juho - since the CURL statement works, why not build that in MATLAB and use system to execute that statement?
userName = 'myUserName';
password = 'myPassword';
fileName = 'myfile.txt';
curlCommand = sprintf('curl -D- -u %s:%s -X POST -H "X-Atlassian-Token: no-check" -F "file=@%s" https://XXX.atlassian.net/rest/api/2/issue/TEST-1/attachments', ...
userName, password, fileName);
[status, cmdout] = system(curlCommand);

More Answers (0)

Products


Release

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!