In diesem HOW-TO wird erläutert, wie die Interaktion mit der JIRA Rest API erfolgt.
Einführung
- In dieser Anleitung wird zur Veranschaulichung ein eigens dafür erstelltes Beispiel-Projekt (STCBE) verwendet.
- Um die Requests für die Interaktion mit der Rest API auszuführen, wird das Programm Postmann verwendet.
- Für die Authentisierung wird "Basic Auth" mit Benutzername und Passwort verwendet.
Anforderungen
- Um mit der JIRA Rest API interagieren zu können, wird ein aktives JIRA Benutzer-Konto benötigt.
Anleitung Ticket Erstellung
- Um in einem JIRA Projekt ein Ticket eröffnen zu können, wird dessen interne "id" benötigt.
Request: GET https://jira.jaxforms.com/rest/api/2/project
Response: Als Antwort wird ein JSON mit allen für den Benutzer sichtbaren Projekten zurückgegeben. In der Antwort unten wird ein Teil dessen aufgeführt."self": "https://jira.jaxforms.com/rest/api/2/project/12297",
"id": "12297",
"key": "STCBE", Die im Projekt verfügbaren "issuetypes" auslesen.
Request: GET https://jira.jaxforms.com/rest/api/2/issue/createmeta/12297/issuetypes
Response: Als Antwort wird ein JSON mit allen verfügbaren issuetypes des Projektes zurückgegeben. In der Antwort unten wird ein Teil dessen aufgeführt."self": "https://jira.jaxforms.com/rest/api/2/issuetype/6",
"id": "6",
"description": "An open question",- Das Schema des issuetype mit erforderlichen und optionalen Feldern auslesen. Anhand des Schemas wird in Schritt 4 der Request-Body erstellt.
Request: GET https://jira.jaxforms.com/rest/api/2/issue/createmeta/12297/issuetypes/6
Response: Als Antwort wird ein JSON mit allen verfügbaren issuetypes des Projektes zurückgegeben. In der Antwort unten wird ein Teil dessen aufgeführt."required": true,
"schema": {
"type": "user",
"system": "assignee" - Für die Erstellung des Tickets werden die in den Schritten 1-3 ausgelesenen Informationen verwendet. Diese werden dem Request im Body mitgegeben.
Im Beispiel ist die Mindestanforderung für die Erstellung eines Tickets aufgeführt. Selbstverständlich können auch weitere Informationen (Priorität, Assignee, etc.) angegeben werden.
Request: POST https://jira.jaxforms.com/rest/api/2/issue/
Request-Body:{
"fields": {
"project":
{
"id": "12297"
},
"summary": "Jira Rest API Interaktion",
"description": "Creating of an issue using the REST API",
"issuetype": {
"id": "6"
},
"components": [
{
"name": "Administration"
}
]
}
}
Response: Als Antwort wird ein JSON zum erstellten Ticket zurückgegeben. In der Antwort unten wird das ganze JSON aufgeführt.{
"id": "30262",
"key": "STCBE-22",
"self": "https://jira.jaxforms.com/rest/api/2/issue/30262"
}Quellen