I have a form on a confluence page that gets some information from a user and creates an issue on a JIRA server using REST API . I tried all of the things I could find online and still I cant get what I want. Here is all the things I've tried so far:
FYI:
- Confluence and JIRA are linked together.
- I am not in a position to change any server configurations on any of the servers.
- I use Jquery.ajax
1. Directly submitting data as JSON using a POST request using simple Authentication:
[jira-domain]/rest/api/2/issue
- Outcome: ONLY works on Internet explorer because both of the domains are in the intranet. for other browsers, failing because of CORS (Cross-Origin Resource Sharing)
2. Using Confluence's API and JIRA's application ID to post requests: (this only works for GET requests)
[confluence-domain]/plugins/servlet/applinks/proxy?appId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&path=[jira-domain]/rest/api/2/issue
- Outcome: I always get an HTTP 400 Bad request.
3. Using ANOTHER Confluence's API and JIRA's application ID to post requests:
[confluence-domain]/rest/jira-integration/1.0/issues?applicationId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Note: Json must be an array of issues.
- Outcome: my JSON contains 2 fields "duedate" and "assignee". I get the following errors:
"Field 'duedate' cannot be set. It is not on the appropriate screen, or unknown."
"Field 'assignee' cannot be set. It is not on the appropriate screen, or unknown."
I deleted these 2 fields from my JSON and I could sucessfully create an issue. BUT these 2 fields are very important and I need them,
after some investigation, I realized that a normal JIRA user cannot set these 2 fields on the jira web interface. (eventhough the same user could set them using the 1st solution from above). I do not want to and cannot get users higher rights.
------------
So can anyone please help me with this problem?