Using Jira Create issue Documentation:
https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-post
Running POST request in Postman, receiving Bad Request, please help!
*server side:
const express = require("express");
const axios = require("axios");
const cors = require("cors");
const bodyParser = require("body-parser");
const app = express();
app.use(bodyParser.json());
app.use(cors());
const email = "*********";
const token = "*********";
const baseUrl = "*********";
const jiraRequestHeaders = {
Authorization: `Basic ${Buffer.from(`${email}:${token}`).toString("base64")}`,
};
app.post("/createIssue", async (req, res) => {
console.log("create issue");
await axios
.post(`${baseUrl}rest/api/2/issue`, {
headers: {
Accept: "application/json",
"Content-Type": "application/json",
...jiraRequestHeaders,
},
body: bodyData
.then((text) => {
console.log(`Response: ${response.status} ${response.statusText}`);
res.sendStatus(200);
})
.catch((err) => {
console.log(JSON.stringify(err));
res.sendStatus(err.response.status);
});
});
app.listen(3000, () => {
console.log(`Example app listening at http://localhost:3000...`);
});
*client side:
function createIssue() {
//create body data per each parameter
const bodyData = JSON.stringify ({
"update": {},
"fields": {
"summary": document.getElementById("summary"),
"issuetype": {
"id": document.getElementById("issuesOption")
},
"components": [
{
"id": document.getElementById("components")
}
],
"project": {
"id": document.getElementById("projectOption")
},
"description": {
"type": "doc",
"version": 1,
"content": [
{
"type": "paragraph",
"content": [
{
"text": "Order entry fails when selecting supplier.",
"type": "text"
}
]
}
]
},
"reporter": {
"id": "61795759860f78006b3a16b9"
},
"priority": {
"id": document.getElementById("issuesPriorities")}
},
"assignee": {
"id": document.getElementById("assigneeOption")
}
});
document.body.innerHTML = bodyData;
};
*html:
<body>
<button id="createIssue" onclick="CreateIssue()">Create</button>
</body>