Experimentálna funkcia. Integrácia n8n ešte nie je úplne otestovaná. Administrátor ju vedome zapne v Nastavenia → Pokročilé → Iné; kým je vypnutá, záložka n8n a táto kapitola návodu sú skryté a endpointy /api/n8n/* sú neaktívne. Integrácia n8n patrí do plánu Pro. V pláne Standard karta „Iné“ s jej prepínačom neexistuje, takže integráciu nie je možné zapnúť.

Čo je n8n?

n8n je platforma na automatizáciu procesov. Integrácia s Task Manager funguje obojsmerne:

  1. Odchádzajúce webhooky (Task Manager → n8n) - aplikácia sama odosiela oznámenia do vášho workflow v n8n, keď sa niečo stane (vytvorila sa úloha, zmenil sa stav, pridala sa správa, blíži sa termín atď.).
  2. Prichádzajúce API (n8n → Task Manager) - n8n môže volať aplikáciu, aby vytváral úlohy, pridával správy alebo získaval dáta.

Zapnutie integrácie

Kliknite na ikonu ozubeného kolesa (⚙) → záložka n8n. Záložka sa delí na dve časti: „Osobné automatizácie" - konfigurácia týkajúca sa iba vás, a „Globálne automatizácie" - systémové nastavenia spoločné pre všetkých používateľov, viditeľné iba pre administrátora. Aby sa udalosti odosielali, administrátor musí zapnúť prepínač „Zapnúť integráciu n8n" v globálnej časti.

A. Odchádzajúce webhooky - oznámenia z aplikácie do n8n

Konfigurácia

  1. Na karte n8n kliknite na „Nový webhook“.
  2. Zadajte názov webhooku a URL adresu webhooku skopírovanú z n8n (node Webhook ako trigger, metóda POST).
  3. Označte udalosti, ktoré sa majú odosielať.
  4. (Voliteľne) nastavte tajný kľúč - aplikácia ním podpíše požiadavky (HMAC), aby n8n mohol overiť ich pravosť.
  5. Uložte. Môžete odoslať testovací ping, aby ste overili pripojenie.

Dostupné udalosti (výber)

  • Úlohy: task.created, task.updated, task.status_changed, task.completed, task.deleted, task.deadline_approaching, task.overdue
  • Chaty / správy: chat.message_sent, chat.mention, chat.file_uploaded
  • Používatelia / pracovný priestor: user.created, user.login, user.logout, workspace.created
  • Systémové: system.daily_summary, system.weekly_summary

Každá požiadavka na n8n obsahuje názov udalosti a dáta (data) s kontextom (napr. id úlohy, pracovný priestor, autor).

B. Prichádzajúce API - n8n riadi aplikáciu

Konfigurácia

  1. Na karte n8n kliknite na „Nový kľúč API“.
  2. Skopírujte vygenerovaný token (zobrazený iba raz).
  3. V n8n použite node HTTP Request s hlavičkou autorizácie:
    Authorization: Bearer TWÓJ_TOKEN
    Akcie sa vykonávajú v kontexte používateľa, ktorý vytvoril kľúč (jeho oprávnenia a prístup k pracovným priestorom).

Dostupné endpointy

  • GET /api/n8n/ping.php - test tokenu a healthcheck (vráti info o kľúči a používateľovi).
  • GET /api/n8n/workspaces.php - zoznam dostupných pracovných priestorov.
  • GET /api/n8n/users.php - zoznam používateľov (iba kľúče vytvorené globálnym administrátorom).
  • GET /api/n8n/tasks.php?workspace_id=&status=&limit= - zoznam úloh.
  • POST /api/n8n/tasks.php - vytvorenie úlohy. Telo JSON:
    {
    "workspace_id": 1,
    "subject": "Nowe zadanie z n8n",
    "description": "Opcjonalny opis",
    "priority": "high",
    "deadline_date": "2025-12-31",
    "status": "none",
    "assignees": [2, 5]
    }
    Popis sa čistí od nebezpečného HTML rovnako ako v aplikácii a má rovnaký limit veľkosti.
  • PATCH /api/n8n/tasks.php - aktualizácia existujúcej úlohy, okrem iného zmena stavu. Body JSON (task_id povinné, zvyšné polia voliteľné - zadávate iba to, čo chcete zmeniť):
    {
    "task_id": 42,
    "status": "in_progress",
    "priority": "high",
    "deadline_date": "2026-08-01",
    "subject": "Nowy temat",
    "description": "Nowy opis"
    }
    • status: none | in_progress | done | cancelled. Zmena stavu funguje presne rovnako ako v aplikácii: vo vlákne úlohy sa zobrazí záznam „zmenil(a) stav na…“, priradené osoby dostanú e-mailové oznámenie a do n8n sa odošle webhook task.status_changed (a pri done aj task.completed).
    • deadline_date: null vymaže termín. Zmena termínu presunie pripomienky pripnuté k nemu.
    • Ostatné polia odošlú webhook task.updated.
    • description sa ukladá rovnako ako pri úprave z okna úlohy: nebezpečný HTML sa odstráni, pri zapnutom šifrovaní sa popis uloží do databázy zašifrovaný a odfajknutia v kontrolnom zozname zostávajú pri svojich pozíciách, aj keď sa v novom popise poradie položiek zmenilo. Úloha dostane označenie „(upravené)” len vtedy, keď sa predmet alebo obsah popisu naozaj zmenili.
    • Keď nový popis odstraňuje kontrolný zoznam, do ktorého niekto doplnil vlastné položky, nič sa neuloží (vrátane stavu z tej istej požiadavky) a dostanete 409 s kódom DOPISKI_BEZ_LISTY a poľom indeksy. Ak chcete zoznam napriek tomu odstrániť spolu s doplnenými položkami, odošlite tú istú zmenu znova s poľom "usun_dopiski" rovným zoznamu z poľa indeksy.
    • Najprv sa ukladajú predmet, termín, priorita a popis, až potom stav - zamietnutie uloženia popisu neponechá zmenený stav.
    • Nastavenie rovnakého stavu znova nič neodošle (bezpečné pri opakovaniach v n8n).
    • Ak váš HTTP node nepodporuje metódu PATCH - pošlite to isté telo cez POST: prítomnosť task_id prepne endpoint do režimu aktualizácie.
    • Kódy chýb: 400 chýba task_id, chýbajú polia na zmenu alebo je príliš veľa položiek v kontrolnom zozname (TOO_MANY), 413 príliš veľký popis (PAYLOAD_TOO_LARGE, zvyčajne vložený obrázok), 422 neplatná hodnota (stav/priorita/formát dátumu), 404 úloha neexistuje alebo je mimo dosahu kľúča, 403 chýbajú oprávnenia na zmenu stavu/úpravu, 409 popis odstraňuje zoznam s cudzími doplnkami.
  • POST /api/n8n/messages.php - pridanie správy k úlohe alebo chatu. Telo JSON:
    {
    "entity_type": "task",
    "entity_id": 42,
    "content": "Treść wiadomości"
    }

Príklady scenárov automatizácie

  • Formulár Google → n8n → POST /api/n8n/tasks.php (nová úloha v Task Manager)
  • E-mail z Gmailu s určeným predmetom → n8n → úloha s popisom z obsahu e-mailu
  • Zmena stavu v Jire → n8n → správa/aktualizácia súvisiacej úlohy
  • Odchádzajúci webhook task.created → n8n → záznam v tabuľke Google / oznámenie na Slacku
  • task.deadline_approaching → n8n → pripomienka e-mailom/SMS o blížiacom sa termíne

Riešenie problémov

  • Chýbajúce oznámenia v n8n - skontrolujte, či je integrácia zapnutá, webhook aktívny a URL správna. Použite „testovací ping“ a diagnostiku na karte n8n: ukáže, či adresa webhooku odpovedá (kontroluje sa rovnako ako pri odosielaní - bez presmerovaní a s overením certifikátu, takže n8n so self-signed certifikátom vyjde ako nedostupné), koľko udalostí čaká vo fronte opakovaní a kedy sa posledné odoslanie podarilo.
  • Tajný kľúč webhooku sa v databáze uchováva zašifrovaný. Po zmene kľúča ENCRYPTION_KEY v config.php sa uložené tajné kľúče stanú nečitateľnými - aplikácia potom odosiela udalosti bez podpisu, takže vygenerujte nový tajný kľúč pri webhooku a zadajte ho v n8n.
  • Chýbajúca autorizácia (401) v prichádzajúcom API - token je neplatný alebo bol odstránený. Vytvorte nový API kľúč a aktualizujte hlavičku Authorization v n8n.
  • Úloha sa nevytvorí - uistite sa, že workspace_id existuje a že používateľ kľúča má k nemu prístup aj oprávnenie na pridávanie úloh.