2.9 KiB
2.9 KiB
n8n Workflows
Exported n8n workflow definitions stored as version-controlled JSON files.
Workflows
001 · Zendesk — Evaluation — Change Requests
Runs twice daily at 08:00 and 14:00 (Europe/Helsinki). Scans six Zendesk support groups for unsolved tickets created in the past 24 hours, uses an AI agent to identify ITIL 4 change requests, notifies via Telegram, and logs confirmed findings to a BookStack wiki page.
Flow
Schedule Trigger (cron 0 8,14 * * *)
│
├─ Get IT-Tukipalvelut ─┐
├─ Get IT-Change Control │
├─ Get Järjestelmähankintaryhmä ├─ Merge results (6-input)
├─ Get Turvatekniikka │
├─ Get Sovelluspaketointi │
└─ Get IT-Hankinnat ─┘
│
Aggregate the results (formats tickets as JSON)
│
AI Agent (Claude Haiku 4.5 via Anthropic)
│ │
│ Report potential change requests → Telegram (immediate notification)
│
Code - Parse Tickets (regex-parses structured AI output)
│
Code - Aggregate Entries (builds HTML blocks)
│
Get current content (BookStack page #46)
│
Code - Merge Results (prepends new entries to existing HTML)
│
Send a text message (Telegram approval request — double confirmation)
│
Update Approved? (if approved == true)
│
Update page contents (BookStack page #46)
Required credentials
| Credential name | Type | Used by |
|---|---|---|
Zendesk account |
Zendesk API | All six Zendesk fetch nodes |
Anthropic account |
Anthropic API | AI Agent (Claude Haiku 4.5) |
Telegram account |
Telegram Bot API | Immediate report + approval request |
BookStack account |
BookStack API | Get and update page #46 |
The
Azure OpenAInode exists in the canvas but is not connected to the AI Agent and is not part of the active execution path.
AI output contract
The AI agent must begin every response with CR report - and use exactly these field labels for each finding:
Ticket ID: <id>
Ticket URL: <url>
Subject: <text>
Short reason: <text>
The Code - Parse Tickets node uses a regex that matches this exact format. Changes to the system prompt must preserve these labels and order.
Repository conventions
- Naming:
NNN - <Integration> - <Category> - <Description>.json - Keep the
"name"field inside the JSON in sync with the filename. "connections"references node names, not IDs — update both when renaming a node.- Do not modify
"credentials"blocks; credential IDs and names must match the target n8n instance.
Importing a workflow
- Open your n8n instance.
- Go to Workflows → Import from file.
- Select the JSON file.
- Re-link any credentials that differ from the source instance before activating.