PREISGEBUNG
PRODUKT
LÖSUNGEN
nach Anwendungsfall
mehr lernen
BlogSchablonenVideosYoutubeRESSOURCEN
GEMEINSCHAFTEN UND SOZIALE MEDIEN
PARTNER
Jira, die vielseitige Problemverfolgungs- und Projektmanagement-Plattform von Atlassian, ist für unzählige Entwicklungsteams weltweit zu einem unverzichtbaren Werkzeug geworden. Während die benutzerfreundliche Oberfläche die Verwaltung von Projekten und die Verfolgung von Problemen erleichtert, liegt die wahre Stärke von Jira in den umfangreichen Anpassungsoptionen und Integrationsmöglichkeiten. Im Mittelpunkt steht dabei die Jira REST API, die eine Vielzahl von Möglichkeiten für die Automatisierung von Aufgaben, die Erstellung von benutzerdefinierten Anwendungen und die nahtlose Integration von Jira mit anderen Tools in deinem Entwicklungssystem eröffnet. In diesem umfassenden Leitfaden tauchen wir tief in die Jira REST API ein, erkunden ihre Möglichkeiten und gehen praktische Beispiele durch, um dir den Einstieg zu erleichtern.
Die wichtigsten Erkenntnisse: Die Jira REST API ist ein vielseitiges Werkzeug für die Automatisierung von Aufgaben, die Erstellung benutzerdefinierter Apps und die Integration von Jira mit anderen Entwicklungstools sowohl in der Cloud- als auch in der Server-/Datencenter-Version. Sie bietet eine breite Palette an Funktionen, darunter Issue Management, Massenoperationen und benutzerdefinierte Berichte, mit Unterstützung für erweiterte Funktionen wie Paginierung und Datenerweiterung. Auch wenn es einige Unterschiede zwischen den Versionen gibt, bleibt die Kernfunktionalität der API konsistent und ermöglicht es Teams, Jira effizient an ihre spezifischen Bedürfnisse anzupassen und nahtlos in ihr Entwicklungs-Ökosystem zu integrieren.
Im Kern ist eine API (Application Programming Interface) eine Reihe von Protokollen und Werkzeugen, die festlegen, wie Softwarekomponenten zusammenarbeiten sollen. Im Zusammenhang mit Jira ermöglicht die API externen Anwendungen, programmatisch mit Jira zu interagieren und Daten abzurufen und zu manipulieren sowie Aktionen innerhalb von Jira auszuführen. Jira bietet zwei Arten von APIs:
Die Jira Java API ist ein leistungsstarkes Werkzeug für Entwickler, die eigene Jira-Anwendungen oder Plugins erstellen. Sie bietet direkten Zugriff auf die Java-Objekte und -Methoden des Jira-Servers und ermöglicht so eine tiefe Integration und Anpassung. Diese Zugriffsebene ist jedoch nur für Jira-Installationen vor Ort (Server oder Rechenzentrum) verfügbar, bei denen du direkten Zugriff auf den Server hast. Wenn du mit Jira Cloud arbeitest oder eine eigenständige Integration erstellst, ist die REST-API der richtige Weg.
REST (Representational State Transfer) ist ein Architekturstil, der eine Reihe von Bedingungen für die Erstellung von Webdiensten definiert. Eine REST-API stellt eine Reihe von HTTP-Endpunkten zur Verfügung, auf die durch das Senden von Anfragen mit bestimmten HTTP-Methoden (GET, POST, PUT, DELETE) zugegriffen werden kann, um Operationen mit Ressourcen durchzuführen.
Die Jira REST API folgt dieser Architektur und bietet eine umfassende Reihe von Endpunkten für die Interaktion mit fast allen Aspekten von Jira, von Issues und Projekten bis hin zu agilen Boards und Dashboards. Sie gibt Daten im JSON-Format zurück und unterstützt eine Reihe von Authentifizierungsmethoden, um einen sicheren Zugriff zu gewährleisten.
Einer der wichtigsten Vorteile der REST-API ist ihre Plattformunabhängigkeit - du kannst die API von jedem Gerät oder jeder Anwendung aus aufrufen, die HTTP-Anfragen stellen kann, unabhängig von der verwendeten Programmiersprache. Das macht sie zur idealen Wahl für den Aufbau von Integrationen zwischen Jira und anderen Tools oder für Skript-Interaktionen mit Jira über die Kommandozeile.
Die Möglichkeiten sind nahezu endlos. Hier sind nur ein paar Beispiele dafür, was du mit der Jira REST API erreichen kannst:
Das sind nur ein paar Beispiele - die Jira REST API bietet eine Vielzahl von Endpunkten, die fast alle Funktionen der Jira Benutzeroberfläche abdecken. Wenn du etwas in Jira tun kannst, kannst du es wahrscheinlich auch über die API tun.
Obwohl die Jira REST API in Jira Cloud, Server und Data Center weitgehend die gleichen Funktionen bietet, gibt es einige wichtige Unterschiede, die du beachten solltest:
Trotz dieser Unterschiede bleiben die Kernkonzepte und Nutzungsmuster für die REST-API bei allen Einsätzen weitgehend gleich. Die Fähigkeiten und Kenntnisse, die du bei der Arbeit mit einer Version der API erwirbst, lassen sich ohne Weiteres auf andere Versionen übertragen.
Um mit der Jira REST API loszulegen, brauchst du:
Wenn diese Elemente vorhanden sind, kannst du deine ersten API-Anfragen stellen.
Lass uns ein praktisches Beispiel für die Verwendung der Jira REST API zum Erstellen, Abrufen, Aktualisieren und Suchen von Issues durchgehen. Wir werden Postman für unsere Beispiele verwenden, aber die Prinzipien gelten für jeden API-Client.
Wenn du noch keine Jira-Instanz hast, mit der du arbeiten kannst, ist es am einfachsten, wenn du dich für eine kostenlose Jira Cloud-Instanz unter https://www.atlassian.com/software/jira anmeldest. Sobald deine Seite eingerichtet ist, kannst du ein neues Projekt erstellen.
Um unsere API-Anfragen zu authentifizieren, verwenden wir ein API-Token. Hier erfährst du, wie du ein solches generierst:
Beginnen wir damit, die Details eines bestehenden Problems abzurufen:
Lass uns jetzt eine neue Ausgabe über die API erstellen:
Wechsle zur Registerkarte "Body", wähle das Optionsfeld "raw" und gib das folgende JSON ein, indem du die Werte project.key, issuetype.name, summary und description entsprechend ersetzt:
3. Klicke auf "Senden". Jira antwortet mit dem Status 201 Erstellt und den vollständigen Details des neu erstellten Problems.
Um eine bestehende Ausgabe zu aktualisieren, verwenden wir die PUT-Methode:
Gib im Anfragetext die Felder an, die du aktualisieren möchtest, z. B:
2. Klicke auf "Senden". Jira antwortet mit dem Status 204 Kein Inhalt, um anzuzeigen, dass die Aktualisierung erfolgreich war.
Die leistungsstarken Suchfunktionen von Jira sind auch über die REST-API mit JQL (Jira Query Language) zugänglich:
Füge dem Anfragetext eine JQL-Abfrage und zusätzliche Parameter hinzu:
Diese Abfrage gibt die 10 zuletzt erstellten Vorgänge im Status "Zu erledigen" aus dem angegebenen Projekt zurück, wobei nur die Felder Zusammenfassung, Status und Zugewiesener enthalten sind.
Diese Beispiele kratzen nur an der Oberfläche dessen, was mit der Jira REST API möglich ist. Wenn du dich mit den verfügbaren Endpunkten und Parametern besser auskennst, wirst du in der Lage sein, immer komplexere und leistungsfähigere Integrationen zu erstellen.
Eine der mächtigsten Anwendungen der Jira REST API ist die Automatisierung der Aufgabenerstellung und -aktualisierung. Mit Latenode kannst du ausgeklügelte Workflows einrichten, die auf der Grundlage von Daten aus externen Quellen oder bestimmten Auslösern automatisch Aufgaben in Jira erstellen und aktualisieren. So wird sichergestellt, dass die Informationen in deinem Projektmanagement-System aktuell und zeitnah bleiben, was die Effizienz deines Teams steigert.
Du könntest zum Beispiel einen Workflow erstellen, der automatisch eine neue Aufgabe in Jira erstellt, wenn eine Fehlermeldung von einem Überwachungssystem eingeht, und dabei alle notwendigen Felder ausfüllt und die Aufgabe dem entsprechenden Entwickler zuweist. Wenn Updates eintreffen, kann die Aufgabe automatisch aktualisiert werden, und wenn das Problem gelöst ist, kann es geschlossen werden. Dieser rationelle Ansatz verbessert nicht nur die Problemverfolgung, sondern spart deinem Team auch Zeit, damit es sich auf die Lösung von Problemen konzentrieren kann, anstatt sie zu verwalten.
Mehr über dieses Skript und die Integration mit Latenode erfährst du in diesem Artikel. Die Integration mit Latenode bietet ein paar wichtige Vorteile:
Stell dir vor, jede wichtige E-Mail von einem Kunden wird automatisch zu einer Aufgabe in Jira. Mit Latenode wird das Realität. Unsere Plattform sorgt dafür, dass eine neue Aufgabe im richtigen Projekt mit ausgefüllten Feldern auf der Grundlage des E-Mail-Inhalts erstellt wird, sodass garantiert keine wichtige Anfrage übersehen wird.
Hier ist ein Beispiel dafür, wie ein Latenode Workflow die Erstellung und Aktualisierung von Jira-Aufgaben auf der Grundlage von eingehenden E-Mail-Daten aus einer externen Quelle automatisiert.
Dieses Bild zeigt eine visuelle Darstellung des Workflows in der Benutzeroberfläche von Latenode, mit verbundenen Knoten, die jeden Schritt des Prozesses vom E-Mail-Eingang bis zur Erstellung der Jira-Aufgabe darstellen.
Dies ist nur ein Beispiel dafür, wie Latenode deine Herangehensweise an die Nutzung der Jira API mit leistungsstarker Automatisierung verändern kann. Die Möglichkeiten der Plattform sind praktisch grenzenlos - du kannst alle Automatisierungsszenarien erstellen, die du brauchst, um die Effizienz deines Unternehmens zu verbessern. Egal, ob es um die automatische Verteilung von Aufgaben, das Versenden von Benachrichtigungen, die Verfolgung von Leistungskennzahlen oder andere Aufgaben geht - Latenode bietet die Werkzeuge, um sie zum Leben zu erwecken.
Mit dem visuellen Workflow Builder von Latenode und der nahtlosen Integration in die Jira REST API kannst du ganz einfach komplexe Automatisierungsszenarien entwerfen und implementieren, die Effizienz des Projektmanagements steigern und die Arbeitsabläufe deines Teams beschleunigen.
Wenn du Hilfe oder Rat brauchst, wie du dein eigenes Skript erstellst, oder wenn du dieses Skript nachbauen möchtest, wende dich an unsere Discord-Community, in der sich die Low-Code-Automatisierungsexperten befinden.
Wenn du anfängst, mit größeren Datensätzen in Jira zu arbeiten, musst du wissen, wie die REST-API die Paginierung, die Erweiterung von verschachtelten Ressourcen und die Reihenfolge der Ergebnisse handhabt.
Viele Jira-Ressourcen enthalten Verweise auf andere, verschachtelte Ressourcen. Ein Issue enthält zum Beispiel Verweise auf das Projekt, den Issue-Typ, den Ersteller, den Berichterstatter, den Zuweiser, die Kommentare, die Anhänge und mehr. Standardmäßig werden diese verschachtelten Ressourcen als Stubs zurückgegeben, die nur ein paar grundlegende Felder und einen Self-Link zur vollständigen Ressource enthalten.
Wenn du die vollständigen Details einer verschachtelten Ressource benötigst, kannst du den Abfrageparameter expand verwenden, um anzufordern, dass Jira die vollständige Ressource in die Antwort aufnimmt. So kannst du z. B. die vollständigen Details zum Projekt und zum Zuweiser einer Frage angeben:
Du kannst mehrere Ressourcen erweitern, indem du sie durch Kommas trennst. Sei dir bewusst, dass Erweiterungen die Größe der Antwort erheblich erhöhen können, also verwende sie mit Bedacht.
Anfragen, die potenziell eine große Anzahl von Ergebnissen liefern könnten (wie JQL-Suchen), werden standardmäßig paginiert. Die API gibt eine maximale Anzahl von Ergebnissen pro Seite zurück (standardmäßig 50, aber anpassbar bis zu 100), zusammen mit Links zu den nächsten und vorherigen Seiten.
Du kannst die Paginierung mit den Parametern startAt und maxResults steuern:
Um zum Beispiel die zweite Ergebnisseite mit einer Seitengröße von 20 abzurufen:
Deine Anwendung muss in der Lage sein, mehrere Anfragen zu stellen, um alle Seiten mit Ergebnissen abzurufen.
Du kannst die Reihenfolge der Ergebnisse mit dem orderBy-Parameter steuern, der eine kommagetrennte Liste von Feldern akzeptiert, nach denen die Reihenfolge festgelegt werden soll. Jedem Feld kann ein - vorangestellt werden, um eine absteigende Reihenfolge anzugeben.
Zum Beispiel, um Ausgaben nach Erstellungsdatum absteigend und dann nach Priorität aufsteigend zu ordnen:
GET .../rest/api/3/search?jql=project=YOUR_PROJECT_KEY&orderBy=-created,priority
Nicht alle Felder unterstützen die Bestellung - sieh in der Dokumentation des jeweiligen Endpunkts nach, was verfügbar ist.
Hier sind ein paar fortgeschrittene Beispiele, die die Leistungsfähigkeit der Jira REST API für Massenoperationen zeigen.
Angenommen, du hast eine CSV-Datei mit Daten für mehrere Issues, die du in Jira erstellen oder aktualisieren möchtest. Du kannst ein Tool wie Postman verwenden, um diesen Prozess zu automatisieren:
Wähle auf der Registerkarte "Body" das Optionsfeld "raw" und gib eine Vorlage für deine Ausgabedaten ein, indem du Variablen für die Felder aus deiner CSV-Datei verwendest:
2. Wechsle zur Registerkarte "Pre-request Script" und füge Code hinzu, um deine CSV-Datei zu lesen und die entsprechenden Variablen zu setzen:
3. Wähle im Fenster "Runner" deine CSV-Datei als Datendatei aus und starte den Lauf. Postman erstellt für jede Zeile in deiner CSV-Datei eine neue Anfrage und ersetzt dabei die Variablen aus der Datei.
Dies ist eine leistungsstarke Technik für den Massenimport von Daten aus externen Quellen in Jira.
Wenn deine Quelldaten bereits im JSON-Format vorliegen, kannst du den Endpunkt "Bulk Create/Update" verwenden, um mehrere Ausgaben in einer einzigen Anfrage zu verarbeiten:
POST https://your-domain.atlassian.net/rest/api/3/issue/bulk
Der Anfragekörper sollte ein Array von Issue-Create/Update-Objekten enthalten, die alle das gleiche Format wie eine einzelne Issue-Create/Update-Anfrage haben:
Dadurch werden zwei Probleme in einer Anfrage erstellt - eine Aufgabe im Projekt PROJ1 und ein Fehler im Projekt PROJ2. Du kannst bis zu 50 Vorgänge in eine einzige Sammelanfrage aufnehmen.
Der Massenendpunkt ist auch nützlich, um Massenübergänge, Aktualisierungen und Löschungen durchzuführen. Zum Beispiel, um mehrere Ausgaben in den Status "Erledigt" zu überführen:
Dabei wird davon ausgegangen, dass "31" die ID deines "Done"-Übergangs ist - du kannst die verfügbaren Übergänge für einen Issue-Typ über den Endpunkt /rest/api/3/issue/{issueIdOrKey}/transitions finden.
Die Jira REST API ist ein äußerst leistungsfähiges Werkzeug, um Jira mit anderen Systemen zu integrieren, Aufgaben zu automatisieren und die Möglichkeiten von Jira zu erweitern. In diesem Leitfaden haben wir die Grundlagen der API behandelt, darunter:
Wir haben jedoch nur an der Oberfläche gekratzt. Die Jira REST API bietet Endpunkte für die Arbeit mit fast jedem Aspekt von Jira, von Projekten und Boards bis hin zu Benutzern und Berechtigungen. Wenn du deine Integrationen erstellst, solltest du unbedingt die offizielle Atlassian-Dokumentation lesen, um die aktuellsten und umfassendsten Informationen zu erhalten.
Mit der Jira REST API in deinem Toolkit sind die Möglichkeiten, die du mit Jira nutzen kannst, nahezu unbegrenzt. Egal, ob du ein benutzerdefiniertes Berichts-Dashboard erstellst, Daten mit einem anderen System synchronisierst oder komplexe Arbeitsabläufe automatisierst, die API bietet dir die Flexibilität und Leistungsfähigkeit, die du brauchst, um dies zu realisieren.
Jira Cloud unterstützt OAuth 2.0 und API-Tokens zur Authentifizierung. Für OAuth musst du deine Anwendung in der Entwicklerkonsole von Atlassian registrieren, um eine Client-ID und ein Geheimnis zu erhalten. API-Tokens sind eine einfachere Option für Skripte und persönliche Integrationen. Jira Server und Data Center unterstützen Basic Auth (Benutzername und Passwort) und sitzungsbasierte Authentifizierung mit Cookies.
Während die wichtigsten Endpunkte und Funktionen weitgehend identisch sind, gibt es einige wichtige Unterschiede:
Sieh dir immer die Dokumentation für deinen Jira-Einsatz an, um sicherzustellen, dass du die richtigen URLs und Parameter verwendest.
Jira Cloud setzt Ratenlimits durch, um die Stabilität und Leistung des Dienstes zu gewährleisten. Wenn du das Ratenlimit überschreitest, erhältst du die Antwort 429 Too Many Requests.
Um zu vermeiden, dass du an Ratengrenzen stößt:
Bei der Bereitstellung von Servern und Rechenzentren ist die Ratenbegrenzung standardmäßig deaktiviert, aber Administratoren können die Ratenbegrenzung bei Bedarf aktivieren und konfigurieren.
Ja, Jira Server und Data Center haben eine REST-API, die der jira Cloud API sehr ähnlich ist. Die wichtigsten Unterschiede sind:
In der Server/Data Center-spezifischen Rest-Api-Dokumentation findest du die genauesten Informationen für deine Jira-Version.
Die Jira REST API ist eine leistungsstarke und flexible Möglichkeit, Jira in deinen Entwicklungsworkflow zu integrieren. Egal, ob du in der Cloud arbeitest oder deinen eigenen Server verwaltest, die API bietet dir die Werkzeuge, die du brauchst, um Jira zu automatisieren, anzupassen und zu erweitern, damit es den individuellen Bedürfnissen deines Teams entspricht. Mit ein wenig Erkundung und Experimentierfreude kannst du das volle Potenzial von Jira ausschöpfen und dein Projektmanagement auf die nächste Stufe heben.