JIRA rest api alapok
A JIRA REST API egy HTTP-alapú interfész, amellyel lekérdezheted, létrehozhatod, módosíthatod és törölheted a JIRA entitásokat: issue-kat, projekteket, felhasználókat, mezőket stb.
A legtöbb végpont így néz ki:
Az api/3/ a Cloud JIRA v3 verzióját jelenti (a legfrissebb). Van még api/2/ (régebbi), agile/1.0/ (Scrum/Board), search, webhook, stb.
🧭 ALAPVETŐ JIRA API VÉGPONTOK (v3)
📄 Issue műveletek
| Művelet | HTTP | URL példák | Leírás |
|---|
| Issue lekérdezése | GET | /rest/api/3/issue/{issueIdOrKey} | Egy konkrét issue részletes adatainak lekérdezése |
| Issue létrehozása | POST | /rest/api/3/issue | Új issue létrehozása mezőkkel |
| Issue frissítése | PUT | /rest/api/3/issue/{issueIdOrKey} | Mezők (pl. státusz, assignee) frissítése |
| Issue törlése | DELETE | /rest/api/3/issue/{issueIdOrKey} | Issue törlése |
| Issue keresés (JQL) | GET | /rest/api/3/search?jql=... | Tömeges issue lekérdezés JQL alapján |
| Kommentek lekérdezése | GET | /rest/api/3/issue/{key}/comment | Egy issue kommentjeinek listázása |
| Komment hozzáadás | POST | /rest/api/3/issue/{key}/comment | Új komment beszúrása |
| Changelog lekérdezése | GET | ?expand=changelog | Issue előzményekkel együtt |
📦 Projekt műveletek
| Művelet | HTTP | Végpont | Leírás |
|---|
| Projektek listázása | GET | /rest/api/3/project | Összes elérhető projekt |
| Projekt részletei | GET | /rest/api/3/project/{projectIdOrKey} | Egy projekt metaadatai |
👤 Felhasználók
| Művelet | HTTP | Végpont | Leírás |
|---|
| Felhasználó keresése | GET | /rest/api/3/user/search?query=név | Felhasználók keresése |
| Felhasználó adatai | GET | /rest/api/3/user?accountId=xyz | Felhasználó részletei accountId alapján |
📋 Mezők és mezőtípusok
| Művelet | HTTP | Végpont | Leírás |
|---|
| Minden mező lekérdezése | GET | /rest/api/3/field | Összes mező (standard + custom) |
| Egy issue mezői | GET | /rest/api/3/issue/{key} | fields kulcs alatt szerepel minden mező |
| Custom field létrehozás | POST | /rest/api/3/field | Egyedi mező létrehozása (admin jog kell) |
🏷️ Issue típusok, státuszok, prioritások
| Művelet | HTTP | Végpont | Leírás |
|---|
| Issue típusok | GET | /rest/api/3/issuetype | Feladattípusok listája (pl. Bug, Task, Story) |
| Státuszok | GET | /rest/api/3/status | Összes státusz lekérdezése |
| Prioritások | GET | /rest/api/3/priority | Prioritási szintek (Low, Medium, High, ...) |
⛓️ Transition (státuszváltás)
| Művelet | HTTP | Végpont | Leírás |
|---|
| Elérhető átmenetek | GET | /rest/api/3/issue/{key}/transitions | Milyen státuszba mozgatható jelenleg |
| Státuszváltás | POST | /rest/api/3/issue/{key}/transitions | Issue státusz frissítése workflow szerint |
🔁 Worklog / Time tracking
| Művelet | HTTP | Végpont | Leírás |
|---|
| Munkarögzítés lekérdezése | GET | /rest/api/3/issue/{key}/worklog | Munkavégzés adatai (idő, ki, mikor) |
| Munka rögzítése | POST | /rest/api/3/issue/{key}/worklog | Munkaidő felvitele issue-ra |
📈 Agile API (táblák, sprint-ek)
Ezek külön API-n érhetők el: /rest/agile/1.0/
| Művelet | HTTP | Végpont | Leírás |
|---|
| Táblák listázása | GET | /rest/agile/1.0/board | Scrum/Kanban táblák |
| Sprint-ek listája | GET | /rest/agile/1.0/board/{id}/sprint | Egy tábla sprintjei |
| Sprint issue-k | GET | /rest/agile/1.0/sprint/{id}/issue | Sprint issue listája |
🧰 Webhook, automatikus események
| Művelet | HTTP | Végpont | Leírás |
|---|
| Webhook-ok lekérdezése | GET | /rest/webhooks/1.0/webhook | Aktív webhookok |
| Webhook létrehozása | POST | /rest/webhooks/1.0/webhook | Új webhook regisztrálása (pl. ha új issue jön) |
📊 Összefoglaló táblázat
| API szint | Mire jó? |
|---|
issue | Feladatok kezelése: lekérdezés, létrehozás, státusz, komment, worklog |
project | Projekt metaadatok, project listák |
user | Felhasználók keresése, accountId kezelés |
field | Standard és custom mezők |
search | JQL-alapú tömeges lekérdezés |
agile | Sprint, backlog, board információk |
webhooks | Automatizmusok (események külső rendszereknek) |
🛠️ Hasznos fejlesztői dokumentációk
🔄 Python könyvtár: jira-python mit tud?
Ha a Python jira csomagot használod (amit eddig is mutattam), az ezeket az API-kat becsomagolja:
| Művelet Pythonban | REST API mögötte |
|---|
jira.issue("KEY") | GET /issue/KEY |
jira.search_issues(...) | GET /search?jql=... |
jira.fields() | GET /field |
jira.projects() | GET /project |
jira.create_issue(...) | POST /issue |
Megjegyzések
Megjegyzés küldése